operasi XOR akan menghasilkan plaintext yang sama bila jumlah enkripsi dan dekripsi yang dilakukan jumlahnya sama dan menggunakan kunci yang bersesuaian.
Tabel 2.2 Sifat Commutative Encryption Pada XOR
D
k1
D
k2
E
k1
E
k2
D P
k2
E
k2
D
k1
E
k1
P P
: 10101110 C
1
= E
k2
C P : 11000111
2
= E
k1
C
1
C : 00101001
1
=D
k2
C
2
P =D : 01000000
k1
C
1
P : 10101110
: 10101110 C
1
= E
k1
P= D P : 01000000
k1
C
1
C : 10101110
2
=E
k2
P =D P : 11000111
k2
C
2
: 10101110
2.2 Pembangkit Bilangan Acak Semu Linear Congruential Generator LCG
Algoritma pembangkit bilangan bulat yang paling tua dan masih digunakan hingga saat ini adalah Linear Congruential Generator LCG. Algoritma ini disebut juga
pembangkit “Lehmer”, sebagai penghargaan bagi penciptanya D. H Lehmer, seorang perintis bidang teori bilangan komputasi elektronik [8]. Dalam sebuah tulisan P.
Hellekalek mengemukakan bahwa sangat tidak mudah untuk menemukan pembangkit bilangan acak yang baik aman [4]. Yang dapat dilakukan oleh para praktisi simulasi
maupun kriptografi adalah memilih algoritma mana yang paling baik meskipun algoritma tersebut tidaklah benar-benar menghasilkan bilangan acak.
Algoritma LCG didasarkan pada proses komputasi modulus bilangan bulat yang dilakukan secara rekursif sebanyak n tertentu. Persamaan komputasi modulus
yang digunakan adalah sebagai berikut [8, 13]. �
�
= �
�−1
× � + � ��� �
2.6
x
n
pada persamaan tersebut mendefinisikan serangkaian bilangan bulat hasil modulo terhadap m yang diawali dengan x
. Bilangan a disebut pengali multiplier dan b adalah konstanta penjumlahan additive constant.
Universitas Sumatera Utara
2.3 Three Pass Protocol
Algoritma kriptografi XOR sebagai kriptografi kunci simetris membutuhkan mekanisme pertukaran kunci rahasia untuk dapat melakukan enkripsi dan dekripsi
informasi.Dengan demikian, untuk menerapkanalgoritma kriptografi simetridiperlukan suatu media transmisi data yang benar-benar aman untuk mencegah
penyusup mendapatkan kunci rahasia.Untuk mencegah pencurian kunci ketika didistribusikan, berbagai pendekatan dikembangkan oleh para ahli, salah satunya
dengan menerapkan Three Pass Protocol.
Three Pass Protocol merupakan protokol yang menjamin tidak adanya
pertukaran kunci antara pihak-pihak yang melakukan enkripsi dan dekripsi.Protokol ini pertama kali dikembangkan oleh Adi Shamir, seorang ahli kriptografi
berkebangsaan Israel pada tahun 1980. Protokol yang dikembangkannya dikenal dengan namaShamir No-Key Exchange Protocol. Protokol ini kemudian dimodifikasi
oleh James Massey dan Jim K. Omura keduanya adalah pakar teori informasi berkebangsaan Amerika Serikat pada tahun 1982.
Proses pada Three Pass Protocoladalah sebagai berikut[6, 13]. 1.
Pengirim melakukan enkripsi terhadap plaintext dengan kunci rahasia miliknya K
sender
C
1
= E
k_sender
2. Penerima melakukan enkripsi terhadap cipher-1 dengan kunci rahasia miliknya
K P, kemudian mengirimkan cipher-1 ke penerima.
receiver
C
2
= E
k_receiver
C
1
3. Pengirim melakukan dekripsi terhadap cipher-2 dengan kunci rahasia miliknya P
, kemudianmengirimkan cipher-2 ke pengirim.
1
= D
k_sender
C
2
4. Penerima kemudian melakukan dekripsi terhadap P
, hasilnya dikirimkan kembali ke penerima.
1
dengan kunci rahasia miliknya dan akan menghasilkan plaintext semula P = D
k_recaiver
P
1
.
Gambar berikut memberikan gambaran mengenai proses enkripsi-dekripsi yang berlangsung pada implementasi Three Pass Protocol.
Universitas Sumatera Utara
Gambar 2.1 Three Pass Protocol
Tampak bahwa pada Three Pass Protocol terjadi tiga kali pass pengiriman informasi yang didalamnya dilakukan proses enkripsi ganda enkripsi dengan
k_sender diikuti dengan enkripsi dengan k_recaiver dan dekripsi ganda dekripsi
dengan k_sender
dan k_recaiver
. Dengan demikian berlaku proses, DDEEk_sender,P,k_recaiver ,k_sender ,k_recaiver =P
.
Pada penerapan Three Pass Protocolsebuah algoritma kriptografi harus memenuhi aturan commutative encryption.Dengan demikian algoritma kriptografi
XOR dapat diterapkan denganThree Pass Protocol.
2.4 Kompresi Data