St
fi
St
fi
St
fi
St
fi
Steganografi
Steganografi
Steganografi
Steganografi
P
t
P i
’ P
bl
Pengantar:
Prisoner’s Problem
Alice Bob
Bagaimana Bob mengirim pesan rahasia
z
Bagaimana Bob mengirim pesan rahasia
kepada Alice tanpa diketahui oleh Fred?
z
Alternatif 1: mengenkripsinya
xjT#9uvmY!rc$
Fred pasti curiga!
3
z
Alternatif 2: menyembunyikannya di dalam
z
Alternatif 2: menyembunyikannya di dalam
pesan lain
L
upakan
a
sal
r
umor
i
tu,
j
aga
a
gar
m
atamu
s
ehat
a
ku
t
urunkan
u
banmu
Fred tidak akan curiga!
A
St
fi it ?
Apa Steganografi itu?
z
“steganos” (B Yunani)
Î
tulisan tersembunyi
zsteganos (B.Yunani)
Î
tulisan tersembunyi
(
covered writing
)
Steganography
: ilmu dan seni menyembunyikan
(
embedded
) informasi dengan cara menyisipkan
(
)
g
y p
pesan di dalam pesan lain [1].
Steganografi digital
: steganografi pada data digital
dengan menggunakan komputer digital
P
ti St
fi
Properti Steganografi
1
Embedded message
(
hiddentext)
: pesan yang
1.Embedded message
(
hiddentext)
: pesan yang
disembunyikan.
2.
Cover-object
(
covertext):
pesan yang digunakan untuk
menyembunyikan
embedded message
.
3.
Stego-object
(
stegotext):
pesan yang sudah berisi
pesan
embedded message
.
4.
Stego-key
: kunci yang digunakan untuk menyisipan
pesan dan mengekstraksi pesan dari stegotext.
7
covertext covertext
Encoding ( b ddi )
hiddentext Decoding
( t ti )
stegotext
hiddentext
(embeddin)
hiddentext
(extraction) hiddentext
C
t h
t h
Contoh-contoh:
L
upakan
a
sal
r
umor
i
tu
j
aga
a
ga
m
atamu
s
ehat
a
tau
t
urunkan
L
upakan
a
sal
r
umor
i
tu,
j
aga
a
ga
m
atamu
s
ehat
a
tau
t
urunkan
u
banmu
Covertext
:
Covertext
:
upakan sal umor tu aga aga atamu ehat tau turunkan banmu
Hiddentext
:
Hiddentext
:
Lari jam satu
Stegotext
:
L
upakan
a
sal
r
umor
i
tu,
j
aga
a
ga
m
atamu
s
ehat
a
tau
t
urunkan
G
erakan
o
rang-
o
rang
d
ari
y
ogya
e
nggan
a
mbil
r
esiko
Covertext
:
erakan rang-rang ari ogya nggan mbil esiko
erakan rang rang ari ogya nggan mbil esiko
Hiddentext
:
Good year
St
t
t
Stegotext
:
G
erakan
o
rang-
o
rang
d
ari
y
ogya
e
nggan
a
mbil
r
esiko
Istilah keilmuan serumpun terasa memberikan distorsi persepsi pada maksud
b P i sebenarnya. Persepsi yang segera terbentuk dengan istilah tesrebut adalah eprtumbuhan dari akar-akar ilmu
membentuk suatu rumpun, yang berarti bahwa nuansa historis organisasi/kelompok/unit yang mewadahinya.
yang mewadahinya.
Hiddentext Covertext Stegotext
z
Steganografi di dalam film
Mercury Rising
y
g
dan
S j
h St
fi
Sejarah Steganografi
z
Steganografi dengan media kepala budak
zSteganografi dengan media kepala budak
(Herodatus, penguasa Yunani).
Kepala budak dibotaki ditulisi pesan rambut
Kepala budak dibotaki, ditulisi pesan, rambut
budak dibiarkan tumbuh, budak dikirim.
z
Penggunaan tinta tak-tampak (
invisible ink
).
Tinta dibuat dari campuran sari buah susu dan
Tinta dibuat dari campuran sari buah, susu, dan
cuka. Tulisan di atas kertas dapat dibaca
dengan cara memanaskan kertas tersebut.
St
fi
K i t
fi
Steganografi vs Kriptografi
z
Steganografi dapat dianggap pelengkap kriptografi
zSteganografi dapat dianggap pelengkap kriptografi
(bukan pengganti).
z
Steganografi: menyembunyikan
keberadaan
(
existence
) pesan
Tujuan: untuk menghindari kecurigaan (
conspicuous
)
z
Kriptografi: menyembunyikan
isi
(
content
) pesan
Latihan: Buat pesan
stegotext
untuk
z
Latihan: Buat pesan
stegotext
untuk
menyembunyikan pesan rahasia:
“serbu nanti malam”
dengan ketentuan:
K it i St
fi
B
Kriteria Steganografi yang Bagus
1. Imperceptible
Keberadaan pesan rahasia tidak dapat dipersepsi.
2. Fidelity
.
Mutu
cover-object
tidak jauh berubah akibat
embedded.
3. Recovery
.
Data yang disembunyikan harus dapat diungkapkan kembali.
Kriteria
robustness
tidak terlalu penting karena yang utama
steganografi bertujuan untuk menghindari kecurigaan (lawan
tidak menyadari keberadaan pesan tersembunyi).
T k ik
Di
k
Teknik yang Digunakan
Spatial (time) domain
z
Spatial (time) domain
Memodifikasi langsung nilai
byte
dari
cover-object
(nilai
b t
d
t
t
ik
i t
it
/
i
l
byte
dapat merepresentasikan intensitas/warna
pixel
atau amplitudo
)
z
Tranform domain
M t d LSB (
ti l d
i )
Metode LSB (spatial domain)
Mengganti bit
LSB
dengan bit data
Mengganti bit
LSB
dengan bit data.
11010010
MSB
LSB
LSB = Least Significant Bit
MSB = Most Siginificant Bit
z
Mengubah bit
LSB
hanya mengubah nilai
byte
satu lebih
tinggi atau satu lebih rendah dari nilai sebelumnya
Æ
tidak
berpengaruh terhadap persepsi visual/auditori
21
M t d LSB
Metode LSB
z Misalkan penyisipan pada citra 24-bit.p y p p
z Setiap pixel panjangnya 24 bit (3 x 3 byte, masing-masing komponen R (1 byte), G (1 byte), dan B (1 byte))
00110011 10100010 11100010 00110011 10100010 11100010
(misal pixel berwarna merah)
z Misalkan embedded message: 010 z Misalkan embedded message: 010
z Encoding:
00110010 10100011 11100010
z Jika pesan = 10 bit maka jumlah byte yang digunakan = 10 byte z Jika pesan = 10 bit, maka jumlah byte yang digunakan = 10 byte
z Contoh susunan byte yang lebih panjang:
00110011 10100010 11100010 10101011 00100110 00110011 10100010 11100010 10101011 00100110 10010110 11001001 11111001 10001000 10100011
z Pesan: 1110010111
z Hasil penyisipan pada bit LSB: z Hasil penyisipan pada bit LSB:
00110011 10100011 11100011 10101010 00100110
10010111 11001000 11111001 10001001 10100011
M t d LSB
Metode LSB
z
Ukuran data yang akan disembunyikan bergantung
zUkuran data yang akan disembunyikan bergantung
pada ukuran
cover-object
.
Cit
24 bit k
256
256
i
l
65536
i
l
z
Citra 24-bit ukuran 256
×
256
pixel
= 65536
pixel.
z
Setiap
p
pixel
p
berukuran 3
byte
y
(komponen
(
p
RGB
),
),
berarti ada 65536
×
3 = 196608
byte
.
z
Setiap 1
byte
menyembunyikan satu bit di
LSB
nya
zSetiap 1
byte
menyembunyikan satu bit di
LSB
-nya,
LSB
LSB
z Untuk memperkuat teknik penyembunyian data, bit-bit data rahasia z Untuk memperkuat teknik penyembunyian data, bit bit data rahasia
tidak digunakan mengganti byte-byte yang berurutan, namun dipilih susunan byte secara acak.
z Pembangkit bilangan acak-semu (PRNG: pseudo-random number
generator) digunakan untuk membangkitkan bilangan acak.
z Umpan (seed) untuk bilangan acak berlaku sebagai kunci (
stego-key).
z Misalnya jika terdapat 50 byte dan 6 bit data yang akan
disembunyikan, maka maka byte yang diganti bit LSB-nya dipilih secara acak, misalkan byte nomor 36, 5, 21, 10, 18, 49.
Ekstraksi pesan dari
Stego object
Ekstraksi pesan dari
Stego-object
z Pesan yang disembunyikan di dalam citra dapat diungkap kembali dengan mengekstraksinya.
z Posisi byte yang menyimpan bit pesan dapat diketahui dari bilangan acak yang dibangkitkan oleh PRNG.
z Jika kunci yang digunakan pada waktu ekstraksi sama dengan kunci pada waktu penyisipan, maka bilangan acak yang dibangkitkan juga
p p y p g y g g j g
sama.
LSB
LSB
z
Keuntungan
zKeuntungan
Mudah diimplementasikan dan proses
encoding
cepat
cepat
z
Kelemahan
z
Kelemahan
Tidak tahan terhadap pengubahan (modifikasi)
terhadap
cover object
terhadap
cover object.
Mudah dihapus karena lokasi penyisipan
diketahui (bit LSB)
T
f
D
i
Tranform Domain
z
Sinyal dalam ranah spasial/waktu diubah ke ranah
z
Sinyal dalam ranah spasial/waktu diubah ke ranah
frekuensi dengan menggunakan transformasi seperti
-
DCT
(
Discrete Cosine Transform
),
-
DFT
(
Discrete Fourier Transform
), dan
-
DWT
(
Discrete Wavelet Trabform
)
z
Penyisipan pesan dilakukan pada koefisien tranformasi.
z
Keuntungan: kokoh (
robust
) terhadap manipulasi pada
z
DCT
:
z
Keterangan: Citra berukuran
M
x
N
z Penyisipan dilakukan pada koefisien DCT yaitu C(p q) z Penyisipan dilakukan pada koefisien DCT, yaitu C(p, q)
z Misalkan semua koefisien DCT disimpan di dalam vektor/larik
v[1 n]
v[1..n]
z Pesan yang akan disembunyikan (dalam biner) adalah
X = x1x2…xm
dikodekan sebagai barisan {–1, +1} dengan pemetaan:
z
Posisi penyisipan pesan dapat ditentukan secara acak
z
Posisi penyisipan pesan dapat ditentukan secara acak
atau pada posisi berurutan
z
Penyisipan pesan dengan formula:
v
ˆ
i=
v
i+
α
b
iz
α
dipilih sedemikian sehingga tidak merusak
content
sinyal semula. Nilai
α
antara 0 dan 1.
z
Selanjutnya dilakukan
IDCT
untuk mengembalikan sinyal
dalam ranah frekuensi ke ranah spasial/waktu.
z