Steganografi adalah praktik menyembunyikan pesan sehingga tidak ada yang curiga bahwa pesan itu ada. Enkripsi mengacak pesan agar tidak bisa dibaca; steganografi menyelipkannya ke dalam sesuatu yang biasa, seperti foto liburan atau memo suara, sehingga tidak ada yang terpikir untuk memeriksa. Kata ini berasal dari bahasa Yunani untuk "tulisan tertutup".
Steganografi digital sebagian besar tentang gambar, karena sebuah foto memuat jutaan angka yang bisa digeser sedikit tanpa ada yang melihat bedanya. Panduan ini menjelaskan metode yang benar-benar ada, dari mengubah bit terakhir sebuah piksel sampai bekerja di dalam kompresi JPEG, mengapa kebanyakan trik "file disembunyikan di dalam gambar" adalah sesuatu yang lebih sederhana daripada steganografi sejati, mengapa mengirim foto lewat aplikasi pesan sering menghapus bagian tersembunyinya, dan apa yang dilakukan orang yang mencari data tersembunyi, yang disebut steganalis.
Apa itu steganografi
Setiap sistem steganografi punya tiga bagian yang sama. Muatan (payload) adalah rahasianya: pesan, file, folder. Pembawa (carrier), disebut juga sampul, adalah file tak berdosa yang memuatnya: PNG, JPEG, rekaman WAV. Hasilnya, pembawa dengan muatan di dalamnya, disebut file stego atau paket. Artikel Wikipedia tentang topik ini menambahkan istilah keempat yang berguna, kepadatan penyandian (encoding density): bagian pembawa yang diubah. Makin rendah kepadatannya, makin sulit perubahannya disadari, dan makin sedikit data yang muat.
Keunggulannya dibanding enkripsi, dalam kata-kata Wikipedia, adalah bahwa rahasia itu "does not attract attention to itself as an object of scrutiny". File terenkripsi mengumumkan bahwa ada yang dilindungi. Foto seekor anjing tidak mengumumkan apa-apa. Itu juga kelemahannya: begitu seseorang curiga pada foto itu, steganografi saja tidak melindungi apa pun, itulah mengapa alat yang serius mengenkripsi muatan dulu dan menyembunyikannya kemudian. Menyembunyikan memberi kesamaran. Enkripsi yang menjaga isi tetap aman saat kesamaran itu gagal.
Gagasan ini 2.500 tahun lebih tua daripada komputer
Kisah tertuanya bersifat fisik. Herodotus menggambarkan pesan yang ditato di kepala gundul seorang kurir, dikirim setelah rambutnya tumbuh kembali. Abad-abad berikutnya memakai tinta tak terlihat yang muncul dengan panas, dan di abad kedua puluh mikrodot mengecilkan satu halaman teks sampai seukuran titik cetak. Kata itu sendiri pertama muncul pada 1499, dalam Steganographia karya Johannes Trithemius, risalah tentang kriptografi dan steganografi yang menyamar sebagai buku sihir.
Versi digitalnya mempertahankan logika yang sama dan menukar kulit kepala dengan format file. Pembawa hanya butuh dua sifat: ada bagian yang bisa berubah tanpa disadari manusia, dan program yang tahu di mana mencari bisa membaca perubahan itu kembali. Gambar punya keduanya dengan berlimpah.
Steganografi LSB mengubah bit terakhir setiap warna
Metode buku teks adalah penyisipan bit paling tidak signifikan (least significant bit, LSB). Sebuah piksel pada gambar biasa menyimpan merah, hijau, dan biru sebagai angka 0 sampai 255, masing-masing ditulis sebagai delapan bit. Bit terakhir bernilai persis satu langkah. Balikkan dan nilai merah 200 menjadi 201. Tidak ada layar atau mata yang bisa menunjukkan perbedaan itu.
Ulangi di setiap nilai dalam gambar dan kapasitasnya bertambah. Foto 12 megapiksel punya 36 juta nilai warna, jadi satu bit tiap nilai adalah 36 juta bit, sekitar 4,5 MB secara teori. Alat nyata memakai jauh lebih sedikit, baik agar tetap senyap maupun karena menyebar bit dalam urutan pseudo-acak yang diturunkan dari kata sandi, sehingga muatan bukan blok rapi di bagian atas gambar.
LSB hanya berfungsi di format lossless seperti PNG dan BMP, tempat setiap nilai piksel disimpan persis. Simpan gambar yang sama sebagai JPEG dan kompresor membulatkan nilainya, mengacak bit terakhir dan pesannya bersamanya.
Ini juga metode yang paling dipahami steganalis. Foto alami punya pola derau khas di bit rendahnya, dan menimpa bit-bit itu dengan data terenkripsi, yang tampak acak sempurna, mengubah polanya. Westfeld dan Pfitzmann menerbitkan serangan statistik terhadap penyisipan LSB pada 2000, dan Fridrich, Goljan, dan Du menunjukkan pada 2001 bahwa, pada gambar berwarna, penyisipan menambah jumlah pasangan warna yang "sangat dekat". Wikipedia melaporkan bahwa perubahan hanya-LSB bisa terdeteksi "in some cases detecting encoding densities as low as 1% with reasonable reliability", walau angka itu tanpa rujukan di sana. Di Hacker News, seorang komentator mengatakannya lebih lugas: derau yang ditimbulkan penggantian LSB naif "VERY easy to detect".
Steganografi JPEG bekerja di dalam kompresi
Kebanyakan foto di ponsel dan web adalah JPEG, jadi alat harus menemukan cara bertahan dari pembulatan JPEG. Jawabannya adalah menyembunyikan data setelah pembulatan, bukan sebelumnya.
Encoder JPEG memotong gambar menjadi blok 8 kali 8 piksel dan mengubah tiap blok menjadi 64 koefisien frekuensi dengan transformasi yang disebut transformasi kosinus diskret (DCT): satu angka untuk kecerahan rata-rata blok, yang lain untuk detail kasar dan halus. Ia lalu membagi koefisien itu dengan tabel kualitas dan membulatkannya, di situlah kehilangan terjadi. Steganografi JPEG mengedit koefisien yang sudah dibulatkan itu sendiri, jadi tidak ada yang dilakukan encoder sesudahnya yang membulatkan pesan hingga hilang.
Alat awal melakukannya dengan naif. JSteg dan JPHide, dua dari program yang diuji Provos dan Honeyman pada 2001, mengubah bit rendah koefisien dengan cara yang menggeser histogram keseluruhannya, yang tertangkap uji statistik. OutGuess, ditulis Niels Provos pada 1999, menyisipkan bit di koefisien pseudo-acak lalu menyesuaikan yang lain agar histogram global cocok dengan aslinya, khusus untuk mengalahkan serangan chi-kuadrat.
Itu tidak bertahan: serangan 2002 oleh Fridrich, Goljan, dan Hogea mengukur "blockiness" di tepi blok JPEG dan menembus OutGuess, bahkan memperkirakan panjang pesan tersembunyi. steghide, alat baris perintah paling terkenal, mengambil jalur berbeda untuk JPEG dan audio: ia menukar pasangan nilai yang dipilih dengan frasa sandi, sehingga jumlah tiap warna atau sampel tetap sama, yang menurut penulisnya tahan terhadap "first-order statistical tests".
Perlombaan senjata itu masih menjadi bentuk bidang ini. Fridrich, Pevny, dan Kodovsky menyebut steganografi JPEG yang tak terdeteksi secara statistik sebagai masalah riset penuh "dead ends" pada 2007, dan pada 2012 steganalisis telah beralih ke pengklasifikasi pembelajaran mesin yang dilatih pada ribuan fitur gambar. Kedua pernyataan yang akan ditemukan pembaca di internet, bahwa steganografi "mudah terdeteksi" dan bahwa "sulit terdeteksi", benar. Garis pemisahnya adalah algoritmanya, bukan gagasannya.
Kebanyakan "file disembunyikan di dalam gambar" adalah data yang ditempelkan, bukan steganografi sejati
Cari di YouTube cara menyembunyikan file di dalam gambar dan demonstrasi yang paling umum bukan LSB sama sekali. Itu perintah satu baris di Windows:
- Taruh foto dan arsip zip di folder yang sama.
- Jalankan
copy /b photo.jpg + archive.zip combined.jpgdi Command Prompt. Di macOS atau Linux,cat photo.jpg archive.zip > combined.jpgmelakukan hal yang sama. - Buka
combined.jpg: yang tampil adalah foto. Ganti namanya jadi.zipdan banyak alat arsip membuka filenya.
Ini berhasil karena cara format berakhir. JPEG berakhir dengan penanda akhir gambar dan PNG dengan chunk bernama IEND, yang didefinisikan spesifikasi PNG sebagai "the last chunk in a PNG datastream". Penampil gambar berhenti membaca di sana dan mengabaikan apa pun sesudahnya. Pembaca zip, sebaliknya, mencari direktori arsip di akhir file dan bekerja mundur. File yang dibaca dua program berbeda sebagai valid disebut polyglot, dan "old RAR trick", seperti disebut seorang pengguna Reddit di r/Steganography, adalah contoh yang paling umum.
Keluarga ketiga berada di antara keduanya. Kebanyakan format adalah kontainer berisi blok berlabel dan mendefinisikan cara menambah blok khusus: PNG punya chunk tambahan, JPEG punya segmen aplikasi, MP4 punya kotak buatan pengguna, PDF mengizinkan komentar. Penampil yang tidak mengenali sebuah blok melewatinya, jadi file tetap sepenuhnya valid dan terbuka normal di mana-mana. Kapasitasnya besar, gigabita di dalam video, dan tidak ada yang berubah pada gambar.
Dua yang terakhir itu bukan steganografi dalam arti yang ketat, karena tidak ada yang menyentuh piksel atau berusaha tampak normal secara statistik. File itu hanya membawa lebih banyak daripada yang dibutuhkan gambarnya. Posting yang paling banyak di-upvote dalam sampel terbaru r/Steganography menyembunyikan data di byte padding baris pindai BMP, dan komentatornya sendiri melihat tandanya: satu orang menghitung kapasitasnya, yang lain berkata ia akan "be immediately suspicious if someone sent me an image that's not png or jpg". Data yang ditempelkan dan disisipkan bersembunyi dari orang yang melihat gambar. Ia tidak bersembunyi dari program yang membaca seluruh file, dan file itu tampak lebih besar daripada foto biasa dengan ukuran yang sama.
Membagikan foto sering menghancurkan muatannya
Data tersembunyi hanya bertahan kalau byte persisnya bertahan, dan banyak cara orang membagikan foto tidak mempertahankannya.
Saat aplikasi pesan, media sosial, atau layanan hosting gambar menerima foto, sering kali ia tidak menyimpan file yang Anda kirim. Ia mendekode gambar menjadi piksel, sering mengubah ukurannya, dan menulis file terkompresi yang benar-benar baru untuk menghemat bandwidth. Bit LSB di piksel diacak oleh kompresi baru. Muatan JPEG tingkat koefisien dibulatkan hingga hilang saat kualitas berubah. Byte yang ditempelkan dan rekaman format tambahan umumnya tidak disalin, karena aplikasi menulis file baru dari piksel saja.
Tidak ada uji publik yang solid tentang aplikasi mana yang melakukan ini sekarang, dan perilakunya berubah antar versi dan antara mode kirim "foto" dan "dokumen", jadi anggap setiap pembagian lossy sampai terbukti sebaliknya. Semua anekdot menunjuk ke arah yang sama. Seorang pengguna Reddit di r/Steganography menemukan bahwa muatan sebuah alat hanya selamat di unduhan PNG dari Reddit, bukan di versi WebP yang disajikan Reddit. Seorang komentator Hacker News mengingat upaya sebelumnya ketika "most image hosts were smart enough to detect the sub-optimal encoding and 'helpfully' fix it". Kebiasaan aman itu sederhana: kirim file sebagai file, lalu periksa bahwa salinan yang tiba masih terbuka sebelum menghapus aslinya.
Steganalisis adalah keahlian menemukan data tersembunyi
Wikipedia mendefinisikan steganalisis sebagai "the study of detecting messages hidden using steganography", lawan dari kriptanalisis. Tujuannya terdiri dari tiga langkah: mengenali file mencurigakan, memutuskan apakah membawa muatan, dan memulihkannya jika mungkin. Dua yang pertama adalah statistik dan pemeriksaan file. Yang ketiga biasanya butuh kata sandi, itulah mengapa enkripsi penting bahkan setelah penyembunyiannya terbongkar.
Studi lapangan paling terkenal menunjukkan betapa sulitnya langkah ketiga dalam praktik. Pada 2001 Niels Provos dan Peter Honeyman memindai dua juta gambar dari lelang eBay. Detektor mereka menandai sekitar 17.000, dan serangan kamus pada gambar-gambar itu tidak menemukan satu pun pesan tersembunyi. Artikel Wikipedia memperingatkan bahwa bertindak berdasarkan steganalisis saja adalah "a very dicey proposition unless a payload has been completely recovered and decrypted", karena kalau tidak analis hanya punya "a statistic indicating that a file may have been modified". Kisah lengkap tentang seperti apa deteksi dan batasnya ada di bisakah foto tersembunyi terdeteksi. Alat di kedua sisi, dengan usia dan titik lemahnya, dibandingkan di alat steganografi.
Bagaimana HideFile bisa membantu
Kebanyakan orang yang mencari steganografi tidak butuh saluran rahasia. Mereka ingin beberapa foto atau file pribadi berhenti mencolok di ponsel atau laptop yang diambil orang lain. Untuk tugas itu, alat klasik canggung: steghide memuat muatan kecil di JPEG dan WAV, alat LSB butuh PNG, dan tidak satu pun memberi galeri yang bisa Anda telusuri.
HideFile mengambil pendekatan ketiga dari diagram di atas. Di hidefile.app, di browser modern mana pun, Anda memilih foto, video, atau PDF biasa sebagai sampul, menambahkan file pribadi, dan mengatur kata sandi. HideFile mengenkripsi file di browser dan menyimpannya sebagai rekaman yang diizinkan format file, sehingga sampul tetap terbuka sebagai gambar, video, atau dokumen biasa di tempat lain. Buka di hidefile.app dengan kata sandi dan filenya muncul. Tidak ada yang diunggah ke server HideFile, dan tidak ada yang perlu diinstal.
Ini adalah penyamaran plus enkripsi, dan jujur tentang bagian mana yang bekerja. HideFile tidak mengubah piksel atau berusaha mengelabui uji statistik. Alat khusus bisa tahu bahwa ada data yang ditambahkan ke sampul; yang tidak bisa dilakukannya adalah membaca isinya tanpa kata sandi. Itu membuatnya cocok untuk menjauhkan sesuatu dari orang yang menelusuri perangkat Anda, dan alat yang salah untuk pemeriksa terlatih, pemeriksaan di perbatasan, atau tekanan hukum.
Tidak ada pemulihan kata sandi, dan aplikasi yang mengenkode ulang foto bisa menghapus bagian tersembunyinya, jadi simpan dan bagikan sampul sebagai file. Untuk gambaran lengkap tentang apa yang dikelabui berbagai trik menyembunyikan, lihat cara menyembunyikan file di depan mata, dan untuk perbandingan aplikasi brankas foto, apakah aplikasi brankas foto aman.
Sumber
- Wikipedia: Steganography (revisi 2026-10-13, diperiksa 2026-10-14)
- Wikipedia: Steganalysis (diperiksa 2026-10-14)
- Wikipedia: OutGuess (diperiksa 2026-10-14)
- Provos and Honeyman, Detecting Steganographic Content on the Internet, CITI Technical Report 01-11, 2001
- Westfeld and Pfitzmann, "Attacks on Steganographic Systems", Information Hiding (LNCS), 2000, doi:10.1007/10719724_5
- Fridrich, Goljan and Du, "Detecting LSB steganography in color and gray-scale images", IEEE Multimedia, 2001, doi:10.1109/93.959097
- Fridrich, Pevny and Kodovsky, "Statistically undetectable JPEG steganography: dead ends, challenges, and opportunities", ACM MM&Sec 2007, doi:10.1145/1288869.1288872
- Fridrich and Kodovsky, "Rich Models for Steganalysis of Digital Images", IEEE TIFS, 2012, doi:10.1109/tifs.2012.2190402
- W3C: PNG Specification (Third Edition), IEND chunk
- steghide: project home
- Microsoft Learn: copy command
- Reddit, r/Steganography: hiding .txt files in images?
- Reddit, r/Steganography: BMP scan-line padding post
- Reddit, r/Steganography: PNG download keeps the data, WebP does not
- Hacker News: comment on naive LSB detection
- Hacker News: comment on image hosts re-encoding