Secret Key Kriptosistem Muhammad Sholeh Teknik Informatika Institut Sains & Teknologi AKPRIND
o Secret key kriptosistem (kriptosistem kunci rahasia) sering juga disebut dengan Sistem kriptografi simetrik,karena kunci pada enkripsi harus sama dengan kunci yang digunakan dalam proses deskripsi. o Kunci yang digunakan dalam kriptografi ini harus benar-benar diamankan semaksimal mungkin. Jika kunci yang digunakan jatuh ke pihak lain, maka proses keamanan data sudah tidak menjamin lagi.
• Mekanisme kriptografi simetrik juga sering dinamakan kriptografi berbasis kunci. Dengan demikian kriptosistemnya akan terdiri atas algoritma dan kunci, beserta segala plaintext dan ciphertextnya. • Persamaan matematisnya menjadi seperti berikut, Eel (m) = c Did(c) = m Did (Eel (m)) = m Dengan, E = kunci enkripsi d = kunci dekripsi
1
Chiper Substitusi • Ini adalah algoritma kriptografi yang mula-mula digunakan oleh kaisar Romawi, Julius Caesar (sehingga dinamakan juga caesar chiper), untuk menyandikan pesan yang ia kirim kepada para gubernurnya. • Caranya adalah dengan mengganti (menyulih atau mensubstitusi) setiap karakter dengan karakter lain dalam susunan abjad (alfabet). • Misalnya, tiap huruf disubstitusi dengan huruf ketiga berikutnya dari susunan akjad. Dalam hal ini kuncinya adalah jumlah pergeseran huruf (yaitu k = 3).
Tabel substitusi: pi : 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 ci : 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. Pesan AWASI ASTERIX DAN TEMANNYA OBELIX disamarkan (enskripsi) menjadi DZDVL DVWHULA GDQ WHPDQQBA REHOLA Penerima pesan men-dekripsi chiperteks dengan menggunakan tabel substitusi, sehingga chiperteks DZDVL DVWHULA GDQ WHPDQQBA REHOLA dapat dikembalikan menjadi plainteks semula: AWASI ASTERIX DAN TEMANNYA OBELIX
Transposition Cipher (kriptosistem transposisi) • Transposition Cipher melakukan proses enkripsi dan deskripsi dengan cara mengganti urutan huruf pada plaintext (enkripsi) dan ciphertext (dekripsi) dengan aturan tertentu. Aturan ini membentuk kunci yang dipakai dalam enkripsi/ dekripsi. • Plaintext “gadjah” dan kunci “pakai blok berukuran tiga, tukar huruf pertama dengan huruf kedua, huruf ketiga tetap, tukarkan huruf ke empat dengan kelima. Plaintext dibagi ke beberapa blok dengan ukuran sesuai informasi kunci, kemudian penukaran kunci dipakai. Dengan demikian plaintext “gadjah”, ciphertextnya adalah “gadjah”.
Proses dekripsi dapat dilakukan dengan cara yang sama, hanya penukaran harus dibalik.
2
Substitution Cipher ( Kriptosistem substitusi)
• Dalam substitution Cipher satu huruf plaintext akan diganti (disubstitusi) dengan huruf lain. Cara ini mirip dengan cara Caesar cipher. • Contoh : • Dalam Caesar cipher memakai cara dengan menggeser suatu karakter menjadi urutan yang berbeda dengan urutan aslinya. • Misal plaintext “YOGYA” dengan kunci pengeseran sebanyak 6, maka posisi huruf akan dilakukan pengeseran sebanyak 6 ke posisi kanan. Sehingga akan didapat tabel :
• Proses enkripsi diatas, mempunyai kelemahan yang sangat besar. Cara lain untuk mengurangi kelemahan adalah dengan memperbanyak jumlah kemungkinan kunci. Contoh : • Cara yang dapat digunakan antara lain dengan melakukan pengeseran lain untuk huruf berikutnya, Misal plaintext “YOGYA” dengan kunci (6,2). • Kunci(6,2) ini mempunyai arti geser huruf pertama sebanyak 6 huruf, huruf kedua sebanyak 2 huruf, untuk huruf ketiga memakai geseran 6 huruf lagi, dan seterusnya. Dengan demikian, cara diatas meniru ide Caesar Cipher sebanyak dua kali dengan dua kunci yang berbeda.
Sehingga plaintext “YOGYA”, ciphertextnya menjadi “ SIASU”
• Kriptosistem ini menggunakan sebuah tabel yang berbentuk matriks alfabet (VIGENERE) proses enkripsi diatas, dilakukan dengan cara sebagai berikut : Untuk huruf pertama, ketiga, kelima (ganjil) menggunakan kunci yang digeser sebanyak 6 Untuk huruf kedua,keempat, keenam (genap) menggunakan kunci yang digeser sebanyak 2 Sehingga plaintext YOGYA akan menjadi ciphertext WMEWY
3
• Matriks diatas berisikan baris-baris alfabet yang telah digeser dari 1 sampai 25. Setiap baris dan setiap kolom mendapat indeks sebuah huruf alfabet. • Proses enkripsi dilakukan dengan cara mengambil karakter pertama kunci sebagai indes baris dan karakter pertama plaintext sebagai indeks kolom. Elemen matriks yang ditunjuk oleh baris kolom tersebut merupakan karakter pada ciphertext. Proses diulangi sampai plaintext habis. Jika kunci lebih pendek daripada plaintext, maka kunci dapat diulang.
Menerka Plainteks dari Chiperteks • Kadang-kadang kriptanalis melakukan terkaan untuk mengurangi jumlah kunci yang mungkin ada. • Terkaan juga dilakukan kriptanalis untuk memperoleh sebanyak mungkin plainteks dari potongan chiperteks yang disadap. Plainteks yang diperoleh dari hasil terkaan ini biasanya digunakan dalam knownplaintext attack.
• Contoh Misalkan kunci “gadjah”, plaintext “hello elephant”. Karena kunci lebih kecil dari plaintext, maka kunci akan diulang beberapa kali.
Proses dekripsi dilakukan dengan cara mendapatkan nilai kolom berdasarkan baris (kunci) dan isi matriks (ciphertext).
Asumsi yang digunakan: kriptanalis mengetahui bahwa pesan ditulis dalam Bahasa Inggris dan algoritma kriptografi yang digunakan adalah chiper abjadtunggal. Contoh kasus 1: Kriptanalis mempunyai potongan chiperteks G WR W RWL Karena hanya ada dua kata yang panjangnya satu huruf dalam Bahasa Inggris (yaitu I dan A), maka G mungkin menyatakan huruf A dan W menyatakan huruf I, atau sebaliknya.
4
• Kemungkinan G adalah huruf A dapat dieliminasi, maka diapstikan G = I, sehingga dengan cepat kriptanalis menyimpulkan bahwa potongan chiperteks tersebut adalah I AM A MA* • Dengan pengetahuan Bahasa Inggris, karakter terakhir (*) hampir dipastikan adalah huruf N, sehingga kalimatnya menjadi I AM A MAN • Hasil ini mengurangi jumlah kunci dari 26! menjadi 22!
Metode Statistik dalam Kriptanalisis
kasus 2 • Kriptanalis mempunyai potongan chiperteks HATTPT • Dalam hal ini, kriptanalis dapat membatasi jumlah kemungkinan huruf plainteks yang dipetakan menjadi T. • Kriptanalis mungkin mendeduksi bahwa salah satu dari T atau P merepresentasikan huruf vokal. Kemungkinan plainteksnya adalah CHEESE, MISSES, dan CANNON.
Tabel Frekunsi kemunculan (relatif) huruf-huruf dalam teks Bahasa Inggris
• Metode yang paling umum digunakan dalam memecahkan chiperteks adalah menggunakan statistik. • Dalam hal ini, kriptanalis menggunakan tabel frekuensi kemunculan huruf-huruf dalam teks bahasa Inggris. Tabel 2 memperlihatkan frekuensi kemunculan huruf-huruf abjad yang diambil dari sampel yang mencapai 300.000 karakter di dalam sejumlah novel dan suratkabar
5
• Tabel di atas pada mulanya dipublikasikan di dalam
• Misalnya terdapat chiperteks yang panjang sebagai berikut:
Chiper-Systems: The Protection of Communications
dan dikompilasi oleh H. J. Beker dan F.C. Piper • Terdapat sejumlah tabel frekuensi sejenis yang dipublikasikan oleh pengarang lain, namun secara umum persentase kemunculan tersebut konsisten pada sejumlah tabel. • Bila chiper abjad-tunggal digunakan untuk mengengkripsi pesan, maka kemunculan huruf-huruf di dalam plainteks tercermin pada tabel 2 di atas. Misalnya bila di dalam chiper abjad-tunggal huruf R menggantikan huruf E, maka frekuensi R di dalam chiperteks sama dengan frekuensi E di dalam plainteksnya.
Histogram yang menyatakan frekuensi kemunculan (relatif) huruf-huruf di dalam cipherteks di dalam Contoh diatas
DIX DR TZX KXCQDIQ RDK XIHPSZXKPIB TZPQ TXGT PQ TD QZDM TZX KXCJXK ZDM XCQPVN TZPX TNSX DR HPSZXK HCI LX LKDUXI. TZX MDKJ QTKFHTFKX DR TZX SVCPITXGT ZCQ LXXI SKXQXKWXJ TD OCUX TZX XGXKHPQX XCQPXK. PR MX ZCJ MKPTTXI TZX. HKNSTDBKCOPI BKDFSQ DR RPWX VXTTXKQ TZXI PT MDFVJ ZCWX LXXI ZCKJXK. TD HDIWPIHX NDFKQXVWXQ DR TZPQ SCPKQ SCPKQ DR KXCJXKQ HCI SKDWPJX XCHZ DTZXK MPTZ HKNSTDBKCOQ MPTZ TZPQ VXTTXK BKDFSIB
?????? Dari histogram pada Gambar diatas, karakter yang paling sering muncul di dalam cipherteks adalah H. Kita dapat menyimpulkan sementara bahwa H di dalam cipherteks menggantikan huruf E di dalam plainteks. Cara yang sama dicoba untuk karakter-karakter lain di dalam cipherteks. Tetapi kita belum dapat memastikannya. Masih diperlukan: - cara trial and error - pengetahuan tentang bahasa - konteks plainteks - intuisi
6
Blok Cipher Modern. • Kriptosistem yang diulas, merupakan proses kriptosistem yang tradisional, ada beberapa metode lain yang termasuk cipher modern, diantaranya : • Data Encryption Standard (DES), • IDEA, • RC5 dan RC6 • Rihndael (Advanced Encryption Standard, AES).
• Terima Kasih Referensi : Kriptografi
Ir. Rinaldi Munir,MT
7