TINJAUAN PUSTAKA Kriptografi Kriptografi adalah studi teknik matematika yang berhubungan dengan aspek-aspek
pengamanan
informasi
seperti
kerahasiaan,
integritas
data,
autentikasi entitas, dan autentikasi data (Menezes,et al. 1997). Sistem kriptografi mentransformasikan sebuah berita (plainteks) menjadi siferteks melalui fungsi enkripsi sedemikian rupa sehingga hanya penerima yang sah yang dapat mengembalikan transformasi tersebut dan memperoleh beritanya. Proses mentransformasi plainteks menjadi siferteks dinamakan proses enkripsi dimana setiap fungsi enkripsi E ditentukan oleh sebuah algoritma enkripsi dan sebuah
kunci kc. Kunci adalah parameter khusus yang diperlukan dalam suatu transformasi. Kunci hanya diketahui oleh pengirim dan penerima berita yang sah saja. Untuk dapat memperoleh kembali plainteks, diperlukan suatu transformasi yang disebut proses deskripsi. Pada proses dekripsi, setiap fungsi dekripsi D diperoleh dari sebuah algoritma dekripsi dan sebuah kunci kd. Secara garis besar, sistem kriptografi terbagi menjadi tiga kelompok besar yaitu sistem kriptografi tak berkunci, sistem kriptografi simetrik dan sistem kriptografi asimetrik. Diagram pengelompokkan sistem kriptografi dapat dilihat
pada Gambar 1.
Gambar 1 Pengelompokkan sistem kriptografi.
Suatu proses enkripsi dikatakan menggunakan enkripsi kunci simetrik jika kunci yang digunakan untuk melakukan proses enkripsi dan dekripsi sama. Jika suatu skema enkripsi menggunakan kunci yang berbeda untuk enkripsi (kunci
= + 26
dengan ∈ "#$%&'(, * ∈ +%,-', ∈ ./&0%, " = + = . = ℤ2 0 ≤ ≤ 25 .
dan
Rantai Markov Rantai markov adalah suatu model stokastik yang diperkenalkan oleh matematikawan Rusia bernama A.A.Markov pada awal abad ke-20. Dengan menggunakan proses markov, pemodelan fenomena stokatik yang berkembang menurut waktu dapat dilakukan. Masalah dasar dari pemodelan stokastik dengan proses markov adalah menentukan deskripsi state (keadaan) yang sesuai sehingga proses stokastik yang berpadanan akan benar-benar memiliki sifat markov yaitu pengetahuan terhadap state saat ini cukup untuk memprediksi perilaku stokastik dari proses waktu yang akan datang (Mangku 2005). Proses markov diklasifikasikan berdasarkan parameter waktu dan sifat ruang state. Berdasarkan ruang state, proses markov dapat dibagi menjadi proses markov state diskrit dan proses markov state kontinu. Proses markov state diskrit dinamakan rantai markov. Berdasarkan waktu, proses markov dapat dibagi menjadi proses markov waktu diskrit dan proses markov waktu kontinu. Jadi terdapat 4 tipe proses markov, yaitu : 1. Rantai markov waktu diskrit (proses markov state diskrit waktu diskrit). 2. Rantai markov waktu kontinu (proses markov diskrit waktu kontinu). 3. Proses markov waktu diskrit(proses markov state kontinu waktu diskrit). 4. Proses markov waktu kontinu (proses markov state kontinu waktu kontinu).
Proses stokastik {Xn, n = 0,1,2,...} dengan ruang state 30,1,2, ⋯ 5 dinamakan
rantai markov waktu diskrit jika untuk setiap & = 30,1,2, ⋯ 5 berlaku : 6789:;< = =|9: = %, 9:< = %:< , ⋯ , 9< = %< , 9? = %? @ = 6789:;< = =|9: = %@ (1) untuk semua kemungkinan nilai dari %? , %< , ⋯ , %:< , %, = ∈ 30,1,2, ⋯ 5.
Suatu rantai markov dikatakan berorde satu jika nilai suatu state pada periode
tertentu hanya bergantung pada state satu periode sebelumnya, yang dirumuskan sebagai : 6789:;< = =|9: = %, 9:< = %:< , ⋯ , 9< = %< , 9? = %? @ = 6789:;< = =|9: = %@ (2) untuk semua n dan state %? , %< , ⋯ , %:< , %, =.
privat) dan dekripsi (kunci publik) maka skema tersebut dinamakan skema enkripsi kunci publik (Lidl dan Pilz 1997). Skema enkripsi kunci simetrik seperti yang diperlihatkan pada Gambar 2.
(Sumber : http://cisc.hk.linkage.net/ notes/english/note02.html) Gambar 2 Skema enkripsi kunci simetrik.
Dalam sistem kriptografi, kunci umumnya dihasilkan oleh PBAN atau PBAS. Output dari PBAN atau PBAS ini berupa barisan kunci berbentuk bit, yang selanjutnya akan diubah menjadi bentuk barisan lain atau tetap dalam bentuk barisan bit bergantung pada kebutuhan sistem kriptografi. Beberapa bentuk barisan kunci yang digunakan dalam sistem kriptografi adalah barisan digit (0-9), barisan bilangan heksadesimal (0-F), barisan karakter (0-255) dan barisan abjad (A-Z). Terdapat tiga tipe barisan yang dihasilkan oleh PBAN dan PBAS yaitu barisan acaksemu, barisan acaksemu yang aman secara kriptografis dan barisan yang acak nyata. Hanya barisan acaksemu yang aman secara kriptografis dan barisan acak nyata yang dapat digunakan dalam sistem kriptografi. Berikut ini adalah penjelasan secara mendetail mengenai kedua barisan tersebut. 1.
Barisan Acaksemu yang Aman Secara kriptogafis Menurut Schneier (1996), tidak semua barisan kunci yang dihasilkan oleh PBAN dan PBAS dapat digunakan dalam sistem kriptografi. Barisan kunci yang dapat digunakan dalam sistem kriptografi adalah barisan acaksemu yang aman secara kriptografis dan barisan yang acak nyata.
Suatu barisan dikatakan aman secara kriptografis bila barisan tersebut memenuhi dua syarat, yaitu : a.
Terlihat acak. Yang dimaksud dengan terlihat acak adalah bila barisan kunci tersebut lulus semua uji statistik mengenai keacakan. Atau dengan kata lain frekwensi kemunculan setiap kunci harus mendekati sama (berdistribusi seragam) dan saling bebas atau kemunculan suatu kunci tidak mempengaruhi terjadinya kunci lain sehingga kemunculan kunci selanjutnya tidak dapat diperkirakan tanpa memperhatikan berapa banyak kunci yang telah dihasilkannya (Stallings 1998).
b.
Ketidakterdugaan. Yang dimaksud dengan ketidakterdugaan adalah kemunculan kunci berikutnya tidak dapat diprediksi dengan menggunakan komputasi terbatas meskipun penyerang memiliki informasi mengenai barisan kunci sebelumnya dari barisan kunci tersebut.
2.
Barisan Acak nyata Suatu barisan dikatakan acak nyata bila memenuhi 3 syarat yaitu barisan tersebut terlihat acak, ketidakterdugaan dan barisan yang sama tidak dapat dihasilkan kembali.
Sistem One Time Key (OTK) Sistem One Time Key (OTK) merupakan salah satu contoh algoritma enkripsi simetrik. Sistem tersebut dinamakan OTK karena tiap kunci hanya tepat digunakan satu kali untuk satu berita sehingga setelah mengenkripsi berita, pengirim harus segera menghapus barisan kunci yang telah digunakannya. Untuk mendekripsi berita, penerima harus mempunyai barisan kunci yang sama dengan pengirim. Seperti pengirim berita, penerima juga harus menghapus barisan kunci yang telah digunakan untuk mendekripsi berita. Barisan kunci yang digunakan dalam sistem OTK dapat berupa barisan bit, digit atau abjad yang dihasilkan oleh suatu PBAS atau PBAN. Sistem OTK dengan barisan abjad menggunakan fungsi enkripsi sebagai berikut:
Jika nilai suatu state pada periode tertentu hanya bergantung pada state dua periode sebelumnya maka disebut rantai markov orde dua, yang dirumuskan sebagai : 6789:;< = =|9: = %, 9:< = %:< , ⋯ , 9< = %< , 9? = %? @ = 6789:;< = =|9: = %, 9:< = %:< @
untuk semua n dan state %? , %< , ⋯ , %:< , %, =.
(3)
Peluang bahwa 9:< berada pada state j jika 9: berada pada state i disebut
sebagai peluang transisi satu langkah, yang dirumuskan sebagai : :,:;< = 69:;< = =|9: = %. ABC
Jika peluang transisi tersebut bebas dari indeksnya maka disebut proses markov dengan peluang transisi stasioner dengan peluang transisinya dapat ditulis sebagai :,:;< ABC = ABC
Umumnya peluang transisi satu langkah ditampilkan sebagai matriks P berukuran
n x n dimana ABC adalah input pada baris ke-i dan kolom ke-j. state akhir
i0
i1
i2
...
i0 p0,0 p0,1 p0,2 ... P = state awal
i1 p1,0 p1,1 p1,2 ... i2 p2,0 p2,1 p2,2 ... ⋮
⋮
⋮
⋮
⋮
Mengingat nilai peluang adalah tidak negatif dan proses markov harus mengalami transisi ke suatu state maka :
1. ABC ≥ 0 untuk semua %, = ∈ 30,1,2, ⋯ 5.
2. ∑G CH? ABC = 1 untuk semua % ∈ 30,1,2, ⋯ 5. Pembangkit Teks dengan Rantai Markov Pembangkit teks dengan rantai markov pertama kali dikenalkan oleh Shannon (1948) dan dipopulerkan oleh Dewdney (1989). Berikut ini adalah proses pembangkitan teks dengan rantai markov : 1. Membaca data pelatihan untuk membentuk tabel atau matriks peluang transisi rantai markov pada orde tertentu.
2. Membangkitkan data selanjutnya berdasarkan matriks peluang transisi tersebut dengan cara memilih secara acak data selanjutnya berdasarkan data sebelumnya. Sumber Markov Homogen (Homogeneous) Menurut Konheim (2007), sumber markov untuk membangkitkan barisan teks ditentukan oleh 2 parameter yaitu : 1. Distribusi peluang πi 1-gram.
639J = i5 = K% ≥ 0,0 ≤ % < 1 = ∑M< BH? K%
2. Peluang transisi A=|% unuk pasangan 2-gram.
639J = =|9J< = %5 = 6=|% ≥ 0, 0 ≤ %, = < 1 = ∑M< CH? 6=|%, 0 ≤ % <
a.
(4)
(5)
Peluang dan Cara Menghitung Huruf dalam Barisan Karakteristik statistik suatu bahasa dapat dilihat melalui frekwensi terjadinya k-gram. Jumlah 1-gram i muncul dalam plainteks x dengan panjang n adalah peubah acak dihitung dengan menggunakan persamaan: dimana O39J = %5 = P
N: % = ∑:< BH? O39J = %5
1,jika3⋯ 5 adalah benar 8 0, untuk yang lain
(6)
dengan nilai harapan dan frekwensi terjadinya 1-gram adalah :<
Q3N: %5 = R 639J = 15 = & K% BH?
,: % =
Q3N: %5 = K% &
Jumlah 2-gram (i,j) terjadi pada huruf-huruf yang berdekatan dalam plainteks X adalah
:
N: %, = = R O39J = %, 9J;< = =5 BH?
dengan nilai harapan dan frekwensi terjadinya 2-gram adalah :
Q3N: %5 = R 639J = %, 9J;< = =5 = & − 1 K%6=|% BH?
,: %, = = b.
Menghitung k-Gram
Q3N: %, =5 = K%6=|% &−1
Sliding window counts merupakan salah satu metode yang digunakan untuk menghitung frekwensi dari suatu teks (Konheim 2007). Berikut adalah algoritma sliding windows count :
Inisialisasi : N% = N%, = = N%, =, = 0 untuk 0 ≤ %, =, < ; For t:= 0 to n-1 do
NJ = NJ + 1;
For t:= 0 to n-2 do
NJ , J;< = NJ , J;< + 1;
For t:= 0 to n-3 do
NJ , J;< , J; = NJ , J;< , J; + 1;
Hasil dari sliding window counts harus memenuhi :
UR N%, # − R N#, %U ≤ 1, 0 ≤ % < V
V
UR N%, =, # − R N#, %, =U ≤ 1, 0 ≤ %, = < V
V
Parameter-parameter rantai markov yang diperoleh dari sliding
window counts 2-gram {N(i,j)} pada sampel teks = ? , < , ⋯ , :< adalah sebagai berikut:
∑V N%, # ,0 ≤ % < &−1 ∑V N#, % KW % = ,0 ≤ % < &−1 N%, = 6=|% = , 0 ≤ %, = < ∑V N%, # KW< % =
Peluang transisi satu langkah 6=|% merupakan penduga yang berasal
dari metode kemungkinan maksimum. Penjelasan secara lengkap dapat
dilihat pada Lampiran 43.
Jika diasumsikan ukuran sampel n cukup besar sehingga KW< % =
KW% = KB %, 0 ≤ % < dan K memenuhi = = ∑M< BH? K% 6=|%, 0 ≤ =<.