Teknologi merupakan salah satu bagian yang sangat penting dalam kehidupan manusia.
Dari zaman kuno, pesan rahasia telah dikirim. Kebutuhan ak an komunikasi rahasia melalui
pesan rahasia telah terjadi di dalam urusan diplomasi dan militer Perkembangan teknologi saat
ini memungkinkan pengiriman data dari satu pihak ke pihak lainnya menjadi lebih cepat dan
mudah. Namun, perkembangan teknologi ini juga membuka celah – celah keamanan pada
pengiriman data tersebut, sehingga memungkinkan terjadinya serangan terhadap data yang
dikirimkan. Pihak yang tidak berhak mungkin saja dapat membaca isi pesan yang seharusnya
bersifat rahasia. Untuk mengatasi hal ini banyak cara yang digunakan untuk mengamankan data,
salah satunya adalah dengan menggunakan kriptografi.
Kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan pesan. Kriptografi adalah
sebuah ilmu menyandikan dan mengacak suatu pesan untuk menjaga keamanan dari isi pesan
tersebut. Kriptografi diperlukan untuk menghindari pihak yang tidak berhak mengetahui isi dari
pesan yang dikirimkan tersebut. Dengan adanya kriptografi, isi dari pesan akan diacak
sedemikian rupa menggunakan algoritma kriptografi tertentu sehingga akan menghasilkan
sebuah pesan yang acak yang tidak dapat dibaca sebelum isi pesan yang sebenarnya kembali
dimunculkan menggunakan algoritma kriptografi tersebut. (Schneier, 1996)
Pesan asli sebelum dienkripsi disebut plain text. Sedangkan pesan yang sudah diacak
disebut chipper text. Proses pengubahan plain text menjadi chipper text disebut dengan enkripsi,
sedangkan proses pengubahan chipper text kembali menjadi plain text disebut dengan dekripsi.
Tujuan penggunaan kriptografi adalah dalam menjaga keamanan data dalam aspek- aspek
berikut :
1. Confidentiality (kerahasiaan) : Menjaga isi informasi agar hanya dapat dilihat oleh pihak
yang berhak.
2. Data integrity (integritas data) : Menjamin keaslian data selama pengiriman.
3. Authentication (otentikasi) : Mengidentifikasi kebenaran pihak-pihak yang
berkomunikasi (user authentication) dan mengidentifikasi kebenaran sumber pesan (data
origin authentication) (Tilborg, 2000).
4. Non-repudiation (penyangkalan): Mencegah entitas yang berkomunikasi melakukan
penyangkalan, sehingga pengirim pesan tidak dapat menyangkal telah melakukan
pengiriman pesan atau penerima pesan tidak dapat menyangkal telah menerima pesan.
(Hendarsyah dan Wardoyo 2011)
Jenis algoritma berdasarkan kuncinya dibagi atas : Algoritma simetri dan algoritma
asimetri. Algoritma simetri menggunakan satu kunci rahasia yang sama – sama digunakan untuk
proses enkripsi dan dekripsi. Sedangkan metode dengan kunci asimetris menggunakan dua kunci
yang berbeda yaitu public key yang digunakan oleh pengirim untuk melakukan enkripsi dan satu
private key yang digunakan untuk mendekripsikan pesan. Contoh algoritma simetris adalah DES,
AES, RC4, Blowfish, dan lain- lain, sedangkan algoritma asimetris contohnya RSA, Elgamal,
Diffie –Hellman, dan lain – lain (Stallings, 2005)
Kami akan mengawali untuk memperkenalkan beberapa metode untuk membuat pesan rahasia.
Diawali dengan metode yang digunakan Kekaisaran Roma 2000 tahun yang lalu. Dalam makalah
ini akan di bahas macam- macam karakter cipher, antara lain: Cipher Caesar, Transformasi
Affine, Cipher Vigenere, Cipher Hill, Cipher Stream.
A. Pembahasan
1. Karakter Cipher
Sebelum dibahas mengenai sistem sandi rahasia, akan dijelaskan terlebih dahulu
beberapa istilah dalam sistem sandi, yaitu :
a. Kriptologi adalah disiplin ilmu dalam sistem sandi.
b. Kriptografi adalah bagian dari kriptologi yang berhubungan dengan desain dan penerapan
sandi rahasia.
c. Kriptoanalisis dimaksudkan memecahkan sistem sandi.
d. Fungsi-fungsi yang mendasar dalam kriptografi adalah enkripsi dan dekripsi.
e. Metode Chiper atau enkripsi adalah metode prosedur untuk mengubah suatu pesan, data atau
informasi asli (Plaintexts) menjadi suatu pesan, data atau informasi dalam bahasa sandi
(chipertexts) melalui pengubahan huruf Plaintexts dengan menggunakan sebuah
transformasi.
f. Kunci, menentukan sebuah transformasi khusus dari sekumpulan transformasi yang
mungkin.
g. Dekripsi atau deciphering adalah proses mengubah pesan, data atau informasi dalam bahasa
sandi (Ciphertext) kembali ke suatu pesan, data atau informasi asli (Plaintext).
Kriptografi
Dekripsi Enkripsi
Dalam bab ini, akan dibahas sistem sandi rahasia berdasarkan aritmetika modular. Yang
pertama berasal dari Julius Caesar. Dalam sistem ini, kita mulai dengan menerjemahkan huruf
menjadi angka. Kita ambil huruf-huruf dalam alfabet standar dari huruf bahasa Inggris dan
menerjemahkannya ke dalam bilangan bulat dari 0 sampai ke 25, seperti yang ditunjukkan pada
Tabel 8.1.
Huruf A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
2
Angka
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 5
Tentu saja, jika kita mengirim pesan dalam bahasa Rusia, bahasa Yunani, bahasa Ibrani
atau bahasa dari negara yang lain, kita akan menggunakan berbagai bilangan bulat yang sesuai
abjad. Kita mungkin juga ingin memasukkan tanda baca, simbol untuk menunjukkan spasi dan
angka untuk melambangkan bilangan, dan mungkin untuk mewakili digit nomor sebagai bagian
dari pesan. Untuk mempermudah kita batasi hanya pada huruf-huruf dalam alfabet Inggris.
Merubah huruf ke dalam bentuk angka yang sesuai dapat dilakukan dalam banyak cara.
Pertama, kita bahas berdasarkan sistem rahasia yang dilakukan dengan mengubah setiap
huruf dari pesan plaintext menjadi huruf yang berbeda untuk menghasilkan ciphertext. Cipher
seperti ini disebut cipher karakter atau monografi, karena setiap huruf berubah secara individu
dengan huruf lain dengan cara substitusi. Secara keseluruhan, ada 26! cara yang mungkin untuk
menghasilkan transformasi monografi. Kita akan membahas yang didasarkan pada aritmetika
modular.
Sebuah cipher, yang digunakan oleh Julius Caesar, didasarkan pada substitusi di mana
setiap huruf digantikan dengan huruf tiga bagian bawah abjad, dengan tiga huruf terakhir
bergeser ke tiga huruf pertama dari alfabet. Untuk menggambarkan cipher ini menggunakan
aritmetika modular, misalkan P sebagai bilangan yang ekuivalen dengan huruf dalam plaintext
dan C sebagai bilangan yang ekuivalen dengan huruf pada ciphertext. Sehingga didapat :
C≡P+3 ( Mod26 ) , 0≤C≤25
Hubungan antara plaintext dan ciphertext diberikan dalam Tabel 8.2.
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Plaintext 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2
Ciphertex
3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2
t
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
Contoh:
1. (Rosen, K.H. 2011. Elementary Number Theory and Its Application Sixth Edition. Monmouth
University. Hal. 293)
Enkripsikan pesan : THIS MESSAGE IS TOP SECRET
Jawab :
Untuk mengenkripsikan pesan THIS MESSAGE IS TOP SECRET yang dilakukan :
Kita kelompokkan tiap blok berisi lima huruf, sehingga pesan akan berubah menjadi
THISM ESSAG EISTO PSECR ET
Mengubah huruf menjadi angka yang sesuai, kita peroleh
19 7 8 18 12 4 18 18 0 6 4 8 18 19 14
15 18 4 2 17 4 19
Menggunakan transformasi Caesar C ≡ P+ 3(mod 26), angka-angka di atas berubah menjadi
22 10 11 21 15 7 21 21 3 9 7 11 21 22 17
18 21 7 5 20 7 22
Menerjemahkan kembali ke huruf, kita diperoleh
WKLVP HVVDJ HLVWR SVHGU HW.
Ini adalah pesan yang dikirim yang telah di enkripsi.
b. Proses dekripsi
Setelah diperoleh hasil C, maka diterjemahkan kembali ke dalam bentuk huruf. Penerima pesan
mendekripsikan pesan dengan cara mengubah huruf tersebut ke dalam bentuk angka. Kemudian,
Contoh:
(Rosen, K.H. 2011. Elementary Number Theory and Its Application Sixth Edition. Monmouth
University. Hal. 294)
Deskripsikan pesan:
WKLVL VKPZZ HGHFL SKHU
Jawab :
Untuk mendekripsikan pesan : WKLVL VKPZZ HGHFL SKHU
Selanjutnya, melakukan transformasi P≡C−3 ( Mod 26 ) untuk mengubah menjadi plaintext, dan
diperoleh
19 7 8 18 8 18 7 14 22 22 4 3 4 2 8 15 7 4 17.
Lalu kita terjemahkan angka ini kembali ke huruf, dan diperoleh
THISI SHOWW EDECI PHER.
Dengan menggabungkan huruf-huruf menjadi kata yang sesuai, kita menemukan pesan yang
dibaca sebagai berikut :
THIS IS HOW WE DECIPHER
LATIHAN
1. Enkripsikan pesan “AKU CINTA INDONESIA”
2. Buatlah sebuah pesan lalu enkripsikan. Minta teman anda untuk mendeskripsikan pesan
tersebut.
2. Transformasi Affine
Cipher Caesar adalah salah satu dari keluarga cipher serupa yang digambarkan oleh sifat
transformasi pergeseran (shift transformation).
C≡P+k ( Mod 26 ) , 0≤C≤25
di mana k adalah kunci yang mewakili ukuran pergeseran huruf dalam alfabet. Ada 26
transformasi yang berbeda dari jenis ini, termasuk kasus k = 0 (mod 26), di mana huruf tidak
P berjalan melalui sistem residu lengkap modulo 26, demikian juga dengan C. Ada Φ ( 26 ) =12
pilihan untuk a, dan 26 pilihan untuk b, sehingga totalnya ada 12×26=312 transformasi jenis
ini.
a. Proses enkripsi Transformasi Affine
Langkah-langkah proses Transformasi Affine :
1. Mengelompokkan pesan menjadi 5 huruf.
2. Mengubah pesan menjadi bentuk angka dengan menggunakan tabel 8.1.
3. Menggunakan transformasi C≡aP+b ( Mod 26 ) , 0≤C≤25
4. Setelah diperoleh hasil C, maka diterjemahkan kembali ke dalam bentuk huruf.
Contoh:
(Rosen, K.H. 2011. Elementary Number Theory and Its Application Sixth Edition. Monmouth
University. Hal. 295)
Misalkan a=7 dan b=10 dalam suatu chiper affine dengan C≡aP+b ( Mod 26 ) , 0≤C≤25 ,
sehingga C≡7 P+10 ( Mod 26 ) Oleh karena itu, P≡15 ( C−10 )≡15 C +6 ( Mod 26 ) . 15 adalah
invers dari 7 modulo 26.
Ciph 1 1 2 1 1 1 2 1 2 1 1 2 1 2 1 2
ertex 0 7 4 5 2 9 0 7 4 1 2 9 6 3 4 1 8 5 6 3 0 1 8 5 2 3
t K R Y F M T A H O V C J Q X E L S Z G N U B I P W D
Table 8 .3. Hubungan huruf untuk Cipher dengan C≡7 P+10 ( Mod 26 )
Untuk menggambarkan bagaimana kita memperoleh hubungan tersebut, perhatikan
bahwa huruf L pada plaintext setara dengan angka 11 yang kemudian dihubungkan sesuai
dengan huruf J pada ciphertext, karena 7×11+10=87≡9 ( Mod 26 ) dan 9 adalah angka yang
setara dengan huruf J.
Langkah- langkah untuk mengenkripsi pesan dari transformasi affine sebagai berikut:
a. Kelompokkan pesan menjadi 5 huruf
b. Huruf diubah menjadi angka ( lihat tabel 8.1)
Contoh :
(Rosen, K.H. 2011. Elementary Number Theory and Its Application Sixth Edition. Monmouth
University. Hal. 295)
1. Enkripsikan pesan:
PLEASE SEND MONEY
Mengubah huruf menjadi angka, selanjutnya menggunakan transformasi C≡7 P+10 ( Mod 26 ) ,
sehingga diperoleh
P = 15 maka C = 7. 15 + 10 = 115 ¿ 11 ( mod 26 ), sehingga P menjadi L.
L = 11 maka C = 7. 11 + 10 = 87 ¿ 9 ( mod 26), sehingga L menjadi J.
.
.
dst.
Sehingga di peroleh
LJMKG MGMXF QEXMW.
2. Dekripsikan pesan:
FEXEN ZMBMK JNHMG MYZMN
Menggunakan rumus P
¿ 15 C + 6 (mod 26 ) di peroleh
Menjadi
DONOT REVEA LTHES ECRET
atau pada plaintext
DO NOT REVEAL THE SECRET.
Huruf A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Frekue
7 1 3 4 13 3 2 3 8 <1 <1 4 3 8 7 3 <1 8 6 9 3 1 1 <1 2 <1
nsi(%)
Contoh :
(Rosen, K.H. 2011. Elementary Number Theory and Its Application Sixth Edition. Monmouth
University. Hal. 296).
Misal telah kita ketahui sebuah pesan yang telah dienkripsikan. Tiap huruf telah
Pertama-tama kita menghitung seberapa banyak huruf yang muncul dalam chipertext, yaitu
Huruf A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Angka yang
1 0 4 5 1 3 0 0 0 1 0 1 1 1 0 7 2 2 2 3 0 0 1 2 3 2
muncul
Dari tabel terlihat bahwa huruf yang paling sering muncul dalam chipertext adalah : P, C, D, F, T
dan Y. P menggambarkan huruf E karena berdasarkan Tabel 8.4, E adalah huruf yang paling
sering muncul dalam teks English. Sehingga dapat ditulis :
P = 15 (ciphertext)
E=4 (plaintext)
C ≡ P + k ( mod 26 )
15 ≡ 4+k (mod 26)
k ≡11(mod 26).
C ≡ P+ 11(mod 26)
Dan P ≡C−11(mod 26), maka didapatkan kesamaan
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Chip
er text 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2
0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
1 1 1 1 1 2 2 2 2 2 2 1 1 1 1 1
0 1 2 3 4 5 6 7 8 9
plaintext
5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4
P Q R S T U V W X Y Z A B C D E F G H I J K L M N O
Jika kita telah mencoba transformasi, namun menghasilkan bukan plaintext dan teks kacau, maka
coba transformasi lain berdasarkan jumlah frekuensi huruf dalam ciphertext.
Transformasi affine dari bentuk C ≡ aP+b ( mod 26 ) , 0 ≤ C ≤ 25 digunakan dalam penerjemahan.
Contoh :
(Rosen, K.H. 2011. Elementary Number Theory and Its Application Sixth Edition. Monmouth
University. Hal. 297)
Misalkan diketahui bahwa sebuah transformasi affine C ≡ aP+b ( mod 26 ) , 0 ≤ C ≤ 25, sudah
digunakan untuk enkripsi. Misalnya kita ingin mengcryptanalize pesan yang dienkripsi.
USLEL JUTCC YRTPS URKLT YGGFV
ELYUS LRYXD JURTU ULVCU URJRK
QLLQL YXSRV LBRYZ CYREK LVEXB
RYZDG HRGUS LJLLM LYPDJ LJTJU
FALGU PTGVT JULYU SLDAL TJRWU
SLJFE OLPU
Yang pertama dilakukan adalah menghitung kejadian munculnya setiap huruf yang jumlahnya
disajikan dalam Tabel 8.7
Huruf A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Angka
1 2 1 1 1
yang 2 2 4 4 5 3 6 1 0 3 1 0 1 4 2 7 8 5 1 3 2
0 2 2 6 0
muncul
Tabel 8.
Dari tabel didapatkan huruf L adalah yang paling sering muncul dalam chipertext dan hal ini
sama dengan huruf E. Sedangkan huruf U dengan frekuensi tertinggi kedua sama dengan huruf
T. Sehingga
C ≡ 4 a+b ≡11(mod 26) (I)
C ≡ 19 a+b ≡20 (mod 26) (II)
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
chipertext
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
3 22 15 8 1 20 13 6 25 18 11 4 23 16 9 2 21 14 7 0 19 12 5 24 17 10
plaintext
D W P I B U N G Z S L E X Q J C V O H A T M P Y R K
Tabel 8.8
Dengan hubungan ini maka
USLEL JUTCC YRTPS URKLT YGGFV
ELYUS LRYXD JURTU ULVCU URJRK
QLLQL YXSRV LBRYZ CYREK LVEXB
RYZDG HRGUS LJLLM LYPDJ LJ
Sama dengan
THEBE STAPP ROACH TOLEA RNNUM
BERTH EORYI STOAT TEMPT TOSOL
VEEVE RYHOM EWORK PROBL EMBYW
ORKIN GONTH ESEEX ERCIS ES
atau
THE BEST APPROACH TO LEARN NUMBER THEORY IS TO ATTEMPT TO SOLVE
EVERY HOMEWORK PROBLEM BY WORKING ON THESE EXERCISES
Latihan:
a. Dekripsikan pesan ciphertext LFDPH LVDZL FRQTX HUHG yang telah dienkripsi
menggunakan cipher Caesar.
b. Dekripsikan pesan RTOLK TOIK dengan menggunakan rumus C ≡3P + 24 ( mod 26).