MENGUNGKAP LINEAR CRYPTANALYSIS PADA DES

dokumen-dokumen yang mirip
Data Encryption Standard (DES)

STUDI MENGENAI KRIPTANALISIS UNTUK BLOCK CIPHER DES DENGAN TEKNIK DIFFERENTIAL DAN LINEAR CRYPTANALYSIS

ANALISA PROSES ENKRIPSI DAN DESKRIPSI DENGAN METODE DES

DATA ENCRYPTION STANDARD (DES) STANDAR ENKRIPSI DATA. Algoritma Kriptografi Modern

Kriptanalisis Linear Menggunakan Aproksimasi Ganda


STUDI MENGENAI SERANGAN DIFFERENT CRYPTANALYSIS PADA ALGORITMA SUBSTITUTION PERMUATION NETWORK

Outline. Sejarah DES Enkripsi DES Implementasi Hardware dan Software DES Keamanan DES

Teknik Kriptanalisis Linier

Studi dan Analisis Dua Jenis Algoritma Block Cipher: DES dan RC5

STUDI, IMPLEMENTASI DAN PERBANDINGAN ALGORITMA KUNCI SIMETRI TRIPLE DATA ENCRYPTION STANDARD DAN TWOFISH

STUDI MENGENAI JARINGAN FEISTEL TAK SEIMBANG DAN CONTOH IMPLEMENTASINYA PADA SKIPJACK CIPHER

Studi dan Analisis Keamanan Data Encryption Standard Dengan Menggunakan Teknik Differential Cryptanalysis

Modul Praktikum Keamanan Sistem

Algoritma SAFER K-64 dan Keamanannya

Data Encryption Standard (DES)

STUDI MENGENAI CUBE ATTACK

STUDI PERBANDINGAN ALGORITMA SIMETRI BLOWFISH DAN ADVANCED ENCRYPTION STANDARD

Ada 4 mode operasi cipher blok: 1. Electronic Code Book (ECB) 2. Cipher Block Chaining (CBC) 3. Cipher Feedback (CFB) 4. Output Feedback (OFB)

ANALISA ALGORITMA BLOCK CIPHER DALAM PENYANDIAN DES DAN PENGEMBANGANNYA

Analisis AES Rijndael terhadap DES

KOMPLEKSITAS DAN ANALISIS SANDI LINEAR ALGORITMA ENKRIPSI SUBTITUSI PERMUTASI SEDERHANA 128 BIT

BAB III ANALISA DAN DESAIN SISTEM

Analisis Keamanan Algoritma Kriptografi DES, Double DES, dan Triple DES

Studi Mengenai Algoritma Skipjack dan Penerapannya

Algoritma Spiral shifting

STUDI ALGORITMA CIPHER BLOK KUNCI SIMETRI BLOWFISH CIPHER

ANALISIS KELEMAHAN ALGORITMA CIPHER BLOK DES DAN KEKUATAN TRIPLE DES SEBAGAI VARIAN PENGGANTI DES

BAB III ANALISIS DAN PERANCANGAN SISTEM. permasalahan-permasalahan dan kebutuhan-kebutuhan yang diharapkan sehingga dapat

Studi Perbandingan ORYX Cipher dengan Stream Cipher Standard

CARA KERJA SERANGAN XSL

Studi Perbandingan International Data Encryption Algorithm (IDEA) dan The Fast Data Encipherment Algorithm (FEAL)

KOMBINASI ALGORITMA TRIPLE DES DAN ALGORITMA AES DALAM PENGAMANAN FILE

RC4 Stream Cipher. Endang, Vantonny, dan Reza. Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 Bandung 40132

STUDI PERBANDINGAN CIPHER BLOK ALGORITMA BLOWFISH DAN ALGORITMA CAMELLIA

H-Playfair Cipher. Kata Kunci: H-Playfair cipher, playfair cipher, polygram cipher, kriptanalisis, kriptografi.

PERBANDINGAN ALGORITMA KRIPTOGRAFI DES DENGAN ICE

Penerapan Enkripsi Dan Dekripsi File Menggunakan Algoritma Data Encryption Standard (DES) ABSTRAK

ARDES : Sebuah Algortima Block Cipher Modifikasi Data Encryption Standard

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

Teknik-teknik Kriptanalisis

ANALISIS SANDI DIFERENSIAL TERHADAP FULL DATA ENCRYPTION STANDARD

SKK: ENKRIPSI KLASIK - SUBSTITUSI

Algoritma Rubik Cipher

BAB I PENDAHULUAN. diperhatikan, yaitu : kerahasiaan, integritas data, autentikasi dan non repudiasi.

Analisis Perbandingan Algoritma LOKI 91 dan International Data Encryption Algorithm(IDEA)

ENKRIPSI DAN DEKRIPSI DATA DENGAN ALGORITMA 3 DES (TRIPLE DATA ENCRYPTION STANDARD)

BAB 2 LANDASAN TEORI

PERBANDINGAN ALGORITMA

PENERAPAN METODA FILE COMPRESSION PADA KRIPTOGRAFI KUNCI SIMETRI

Blok Cipher JUMT I. PENDAHULUAN

Perancangan Kriptografi Block Cipher 256 Bit Berbasis Pola Tarian Liong (Naga) Artikel Ilmiah

Algoritma Kriptografi Kunci Publik. Dengan Menggunakan Prinsip Binary tree. Dan Implementasinya

KOMBINASI ALGORITMA DES DAN ALGORITMA RSA PADA SISTEM LISTRIK PRABAYAR

BAB IV HASIL DAN PEMBAHASAN

Distribusi Difference dari S-Box Berbasis Fungsi Balikan Pada GF(2 8 )

RANCANGAN,IMPLEMENTASI DAN PENGUJIAN ZENARC SUPER CIPHER SEBAGAI IMPLEMENTASI ALGORITMA KUNCI SIMETRI

STUDI DAN PERBANDINGAN PERFORMANSI ALGORITMA SIMETRI VIGENERE CHIPPER BINNER DAN HILL CHIPPER BINNER Ivan Nugraha NIM :

ANALISIS FEISTEL CIPHER SEBAGAI DASAR BERBAGAI ALGORITMA BLOCK CIPHER

Algoritma Kriptografi Modern (Bagian 2)

Pendahuluan Tinjauan Pustaka

BAB III ANALISIS DAN PERANCANGAN

Implementasi Algoritma DES Menggunakan MATLAB

Advanced Encryption Standard (AES) Rifqi Azhar Nugraha IF 6 A.

BAB II TINJAUAN PUSTAKA. Bab II ini berisi tentang pembahasan teori-teori tentang kriptografi, algoritma Vigenere dan Data Encrytpion Standard.

SIMULASI KERAHASIAAN / KEAMANAN INFORMASI DENGAN MENGGUNAKAN ALGORITMA DES (DATA ENCRYPTION STANDARD) SKRIPSI INDRA SYAHPUTRA

Jurnal Coding, Sistem Komputer Untan Volume 04, No.2 (2016), hal ISSN : X

PERANCANGAN ALGORITMA KRIPTOGRAFI KUNCI SIMETRI DENGAN MENGGUNAKAN JARINGAN SARAF TIRUAN

Blox: Algoritma Block Cipher

Cipher Blok JAFT. Ahmad ( ) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika.

BAB III ANALISIS DAN DESAIN SISTEM

Penggabungan Algoritma Kriptografi Simetris dan Kriptografi Asimetris untuk Pengamanan Pesan

ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI

Tipe dan Mode Algoritma Simetri (Bagian 2)

Algoritma Enkripsi Baku Tingkat Lanjut

IMPLEMENTASI ENKRIPSI DATA BERBASIS ALGORITMA DES

BAB 2 LANDASAN TEORI

TRIPLE VIGENÈRE CIPHER

BAB III ANALISIS DAN PERANCANGAN

ANALISIS KEMUNGKINAN PENGGUNAAN PERSAMAAN LINEAR MATEMATIKA SEBAGAI KUNCI PADA MONOALPHABETIC CIPHER

Studi dan Analisis Mengenai Aplikasi Matriks dalam Kriptografi Hill Cipher

PENGGUNAAN KRIPTOGRAFI DAN STEGANOGRAFI BERDASARKAN KEBUTUHAN DAN KARAKTERISTIK KEDUANYA

Seminar Nasional Informatika 2015 (semnasif 2015) ISSN: UPN Veteran Yogyakarta, 14 November 2015

Serangan (Attack) Terhadap Kriptografi

Perbandingan Algoritma RC6 dengan Rijndael pada AES

PERANCANGAN APLIKASI KEAMANAN DATA MENGGUNAKAN ALGORITMA ENKRIPSI RC6 BERBASIS ANDROID

STUDI DAN MODIFIKASI ALGORITMA BLOCK CHIPER MODE ECB DALAM PENGAMANAN SISTEM BASIS DATA. Arief Latu Suseno NIM:

BAB 1 PENDAHULUAN 1.1. Latar belakang

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

Implementasi Sistem Keamanan File Menggunakan Algoritma Blowfish pada Jaringan LAN

KRITERIA KEAMANAN BLOK CIPHER DAN ANALISIS SANDI DIFERENSIAL

APLIKASI KRIPTOGRAFI ENKRIPSI DEKRIPSI FILE TEKS MENGGUNAKAN METODE MCRYPT BLOWFISH

BAB I PENDAHULUAN 1.1 Latar Belakang

IMPLEMENTASI ALGORITMA DATA ENCRYPTION STANDARD UNTUK PENGAMANAN TEKS DATA ENCRYPTION STANDARD ALGORITHM IMPLEMENTATION FOR TEXT SECURITY

Implementasi Algoritma DES Menggunakan MATLAB

BAB 2 LANDASAN TEORI. 2.1 Pengertian Kriptografi

PENGGUNAAN KRIPTOGRAFI DAN STEGANOGRAFI BERDASARKAN KEBUTUHAN DAN KARAKTERISTIK KEDUANYA

Percobaan Perancangan Fungsi Pembangkit Bilangan Acak Semu serta Analisisnya

STUDI & IMPLEMENTASI ALGORITMA TRIPLE DES

BAB II TINJAUAN PUSTAKA

Transkripsi:

MENGUNGKAP LINEAR CRYPTANALYSIS PADA DES Ginanjar Pramadita NIM 350604 Teknik Informatika Institut Teknologi Bandung Jalan Ganesha0, Bandung 008 e-mail: if604@students.if.itb.ac.id ABSTRAK Makalah ini memfokuskan pembahasan mengenai bagaimana konsep linear cryptanalysis digunakan dalam men-kriptanalisis DES menggunakan known plaintext attack. Dalam pembahasannya, dijelaskan bagaimana menemukan satu atau lebih bit-bit kunci yang didapat melalui berbagai perhitungan probabilistik antara pasangan plaintext-ciphertext. Setelah didapat teknik menentukan bit-bit kunci, selanjutnya dijelaskan algoritma untuk memecahkan keseluruhan ciphertext. Kata Kunci: DES, linear cryptanalysis, differential cryptanalysis, known plaintext attack, kunci simetri, enkripsi, dekripsi, kriptografi. Pahuluan Salah satu contoh block cipher yang sempat menjadi standar enkripsi yang sangat powerfull adalah DES (Data EncryptionAlgorithm). Block cipher ini dikembangkan oleh IBM pada tahun 97 yang berdasarkan pada algoritma Lucifer yang dibuat oleh Horst Feistel. Namun demikian, sekuat apa pun algoritma enkripsi, selalu ada yang dapat mengkriptanalisisnya. Salah satu metode yang dapat digunakan untuk mengkriptanalisis DES, adalah dengan menggunakan Linear Cryptanalysis. Linear Cryptanalysis adalah metode yang kriptanalisis yang powerfull yang diperkenalkan oleh Matsui pada tahun 993. Sekilas, metode ini mirip dengan differential cryptanalysis. Metode ini dikategorikan sebagai known plaintext attack. Secara umum, metode ini menggunakan aproksimasi linear terhadap bit-bit pariti dari plaintext, ciphertext, dan secret key. Berdasarkan percobaan yang Matsui lakukan (lihat [5]), didapatkan hasil sebagai berikut: 8 putaran DES dapat dipecahkan dengan known-plaintext putaran DES dapat dipecahkan dengan 33 known-plaintext 6 putaran DES dapat dipecahkan dengan 47 known-plaintext Berikut ini notasi yang akan digunakan (berdasarkan notasi Matsui) Tabel. notasi Matsui Notasi P C P H P L C H C L X i K i F i (X i, K i ) A[i] A[i, j,...,k] Keterangan 64 bit plaintext 64 bit chipertext yang berkoresponden 3 bit P bagian kanan 3 bit P bagian kiri 3 bit C bagian kanan 3 bit C bagian kiri 3 bit nilai intermediate pada putaran ke-i 48 bit upa kunci pada putaran ke-i Fungsi f pada putaran ke-i Bit ke-i dari A. DES (Data Encryption Standard) DES (lihat detailnya pada []) adalah suatu standar encripsi yang digolongkan ke dalam kriptografi kunci simetri dan termasuk block cipher dengan panjang blok 64 bit. Ada tiga langkah umum pada DES, yaitu Initial Permutation yitu proses pengacakan urutan bit-bit

pada plaintext, 6 putaran enciphering, dan _inverse Initial Permutation. (lihat Gambar.) Tabel. Pergeseran Bit Pada Pembangkitan Kunci Internal 6 kali Plaintext IP Enciphering IP - Putaran ke-i Jumlah Pergeseran Bit Putaran ke-i Jumlah Pergeseran Bit 9 0 3 4 5 3 6 4 7 5 8 6 Ciphertext Kunci eksternal Permutasi PC- Gambar. Skema Global DES C 0 D 0. Initial Permutation Initial Permutation (IP) digunakan untuk mengacak urutan bit-bit plaintext sesuai dengn matriks permutasi (lihat Apiks A.) Caranya adalah dengan memindahkan bit sesuai dengan angka pada tiap elemen matriks ke posisi urutan elemen matriks. Contohnya pada elmen ke- (tertulis 50) artinya memindahkan bit ke-50 ke posisi bit ke-.. Pembangkitan Kunci Internal Kunci internal adalah kunci-kunci yang digunakan pada setiap putaran enciphering sehingga akan terdapat 6 kunci internal: K, K,..., K 3. Mula-mula, kunci eksternal (64 bit) diacak dengan matriks permutasi kompresi PC- (lihat Apiks A.) menghasilkan 56 bit. Teknik pengacakan sama dengan initial permutation. Setelah diacak, selanjutnya kunci dibagi dua yang masing-masing panjangnya 8 bit. Setiap bagian, dilakukan left shift dengan aturan pada Tabel.. C D M Gambar. Pembangkitan Kunci Internal.3 Eniphering C j D j Permutasi PC- M M M Permutasi PC- K C 6 D 6 Permutasi PC- K 6 Setiap blok mengalami 6 putaran enciphering dan setiap putaran merupakan jaringan Feistel (Lihat Gambar.) yang secara matematis dinyatakan sebagai,, L i - R i K j Setelah itu, setiap bagian di acak kembali dengan matriks permutasi kompresi PC- (lihat Apiks A.3). Total langkah pembangkitan kunci internal dapat dilihat pada Gambar.. L i f R i K i Gambar. Jaringan Feistel

Komputasi funcsi f dapat dilihat pada Gambar.3 48 bit 48 bit 3 bit R i- E(R i- ) E( Ri ) Ki = A S... S 8 3 bit 3 bit B P(B) Ekspansi menjadi 48 bit 48 bit Matriks substitusi Gambar.3 Komputasi Fungsi f Fungsi espansi E digunakan untuk memperluas blok R i 3 bit menjadi 48 bit dan dilakukan melalui matriks permutasi pada Apiks A.4 Setelah melalui expansi, selanjutnya masuk ke tahapan delapan S-box, yaitu proses subtitusi menggunakan delapan S-box S...8 yang menerima masukan 6 bit dan menghasilkan keluaran 4 bit. Subtitusi dilakukan beruntun: 6 bit pertama dengan S, 6 bit kedua dengan S, dan seterusnya. Adapun kedelapan S-box dapat dilihat pada [] halaman 8. Keluaran proses subtitusi adalah 48 bit yang selanjutnya menjadi masukan untuk proses permutasi dengan matriks permutasi pada Apiks A.5.4 Inverse Initial Permutation Permutasi terakhir yang dilakukan terhadap gabungan blok kiri dan kanan. Permutasi dilakukan dengan menggunakan matriks permutasi IP - pada Apiks A.6. 3. Perbandingan Linear Cryptanalysis dengan Differential Cryptanalysis Linear cryptanalysis memiliki metodologi yang serupa dengan differential cryptanalysis. Sebelum melanjutkan ke pembahasan mengenai linear K i cryptanalysis, ada baiknya kita tinjau terlebih dahulu perbandingannya dengan differential cryptanalysis. Pada Tabel 3. terlihat kemiripan tersebut (lihat [6] dan [7]) Tabel 3. Perbandingan Differential dan Linear Cryptanalysis Differential Karakteristik diferensial Aturan karakteristik diferensial: Match the differences, multiply the probabilities Algoritma mencari karakteristik terbaik Linear Approksimasi linear Aturan aproksimasi linear: Match the mask, multiply the imbalance Algoritma mencari approksimasi linear terbaik Disamping memiliki kemiripan metodologi, keduanya memiliki dualitas operasi percabangan XOR Perbedaan masar dari keduanya adalah bahwa differential cryptanalysis bekerja dengan blok-blok bit sedangkan linear cryptanalysis bekerja hanya terhadap bit-bit tunggal. 4. Linear Cryptanalysis Pada linear cryptanalysis dibutuhkan akses terhadap sepasang (P i, C i ), i =,...N dari known plaintext dan ciphertext yang berkoresponden. Berikut ini adalah langkah umum untuk mengeksploitasi korelasi diantara bit-bit pada P, C, dan kunci: Cari persamaan biner dari bit-bit P i, C i, dan kunci (aproksimasi linear) yang menunjukan hubungan non-trivial di antara mereka (bias). Kumpulkan sejumlah besar sampel P i dan C i Mencoba semua nilai dari koleksi P i dan C i pada persasman. Ambil kunci yang memaksimumkan bias sebagai kunci yang benar. Misalkan A adalah tabel exhaustive conversion antara cara standar dan cara Matsui untuk menotasikan bit-bit setiap kata. Prinsip linear cryptanalysis adalah dengan aproksimasi non-linear 3

block cipher karena pada dasarnya setiap operasi pada DES bersifat linear kecuali S-box. Berikut ini expresi linea r yang akan digunakan:,,,,,,,,, (3) Dengan P, C, K adalah bit-bit dari plaintext, ciphertext, dan key. Sedangkan i, j, dan k adalah index bit dengan domain: 64, 64, 56 Persamaan (3) akan memenuhi probabilitas p (bias approximation) untuk menemukan pasangan antara random plaintext P dengan ciphertext C yang ber-koresponden. Oleh karena itu, efektivitas persamaan (3) adalah Jika, maka (4) 4. Mapatkan Informasi Satu Bit Kunci Misalnya N adalah random known plaintext, T adalah banyaknya plaintext sedemikian sehingga ruas kiri pada persamaan (3) bernilai nol, maka: Algoritma if (T > N/) then if (p > /) then K[k] = 0 else K[k] = else if (p > /) then K[k] = else K[k] = 0 Lemma Misalnya probabilitas expresi linear, dengan 0 dan K[k] = 0. X P x[x = x] 0 Jika random variable T adalah jumlah dari N yang tersebar dan mutual indepen terhadap variable X i, maka nilai ekspektasi E(T) dapat dihitung sebagai berikut: E( T ) = N xp( x) x= 0 = N(0( + ε ) + ( = N( ε ) ε )) (5) (4) Dengan menerapkan terema Chebyshev (lihat [3] hal. 3), probabilitas kesalahan dapat dihitung sebagai dengan p s adalah probabilitas kesuksesan sehingga didapatkan batas sebagai berikut: p p s s P T P T ( T E( T ) N ) ε Var( T ) N ε N 4ε ( T E( T ) N ) ε (6) Jadi dari ketaksamaan (6) dapat terlihat bahwa probabilitas sukses p s akan meningkat pada saat N dan atau ε meningkat. 4. Mapatkan Informasi Beberapa Bit Kunci Dalam praktiknya, known-plaintext attack DES memberikan lebih dari satu bit kunci. Matsui menggunakan n putaran aproksimasi linear yang lebih efektif. Dengan kata lain, putaran akhir menggunakan kandidat upa kunci K 6 (i), yang membangun aproksimasi linear yang menerima sabuah fungsi f sebagai intinya. Berikut ini adalah ekspresi yang sedikit berbeda dari (3) yang mena ngani putara n DES,,,,,,,,,,,,, (7) Jika sebuah subtitusi kandidat upa kunci K 6 salah, efektivitas dari ekspresi linear sebelumnya akan menurun. Algoritma di bawah ini menerima sejumlah probabilitas kesuksesan i bit yang berasal dari kandidat upa kunci yang benar dan satu bit 4

informasi mengenai jumlah beberapa bit-bit kunci yang membangun ruas kanan pada ekspresi linear. Algoritma foreach subkey candidate K[i] of K do T[i] := banyaknya plaintext sedemikian sehingga ruas kiri pada aproksimasi linear bernilai 0 Tmax := max{t} Tmin := min{t} if( Tmax N/ > Tmin N/ ) then ambil subkey candidate yang berkorespondensi dengan Tmax dan memenuhi K[k] = 0 pada saat p > / atau jika sebaliknya if( Tmax N/ < Tmin N/ ) then ambil subkey candidate yang berkorespondensi dengan Tmax dan memenuhi K[k] = pada saat p > / atau 0 jika sebaliknya Dengan 47 pasang known plaintext dan ciphertext, Matsui mengestimasi probabilitas kesuksesan serangan sebesar 97.7% dengan kompleksitas 4 evaluasi DES untuk bagian exhaustive key search. 5. Serangan Terhadap 6-Putaran DES Untuk dapat memecahkan 6-putaran DES, Matsui (lihat [5]) menunjukan bahwa sangatlah mungkin untuk meningkatkan serangan yang dijelaskan sebelumnya. Pertama-tama, ia menggunakan ekspresi linear pada 4-putaran DES. Setiap persamaan memiliki dua S-box (S-box dan S-box 5) yang aktif dan dapat menutupi 3 bit kunci atau total 6. 5. 4 Putaran Aproksimasi Linear Matsui telah menemukan dua 4-putaran ekspresi linear yang merupakan pusat dari serangan. 7,8,4 7,8,4,9 5 44 44 44 (8) dan 7,8,4 7,8,4,9 5 44 44 44 (9) Persamaan (8) dan (9) memiliki probabilitas aproksimasi sebesar.9. Apabila persamaan (8) dan (9) diimplementasikan pada 4 fungsi F berurutan dari putaran ke- hingga ke-5 pada DES, maka akan didapat dua linear aproksimasi ahir sebagai berikut: 7,8,4 5 7,8,4,9, 5, 7,8,4 44 44 44 44 (0) dan 7,8,4 5 7,8,4,9, 5, 7,8,4 44 44 44 5. Bit Bit Teks dan Kunci yang Efektif () Konsep dari bit-bit teks dan kunci yang efektif yaitu bit-bit yang mempengaruhi ruas kiri dari aproksimasi linear. Berikut ini perhitungan nilai Xor dari sejumlah bit-bit teks atau kunci yang efektif: P L [], P L [], P L [3], P L [4], P L [5], P L [6], C L [0], C L [7], C L [8], C L [9], C L [30], C L [3], P H [7,8,4], C L [7,8,4,9] C H [5], K [8], K [9], K [0], K [], K [], K [3], K 6 [4], K 6 [43], K 6 [44], K 6 [45], K 6 [46], K 6 [47] dan () C L [], C L [], C L [3], C L [4], C L [5], C L [6], P L [0], P L [7], P L [8], P L [9], P L [30], P L [3], C H [7,8,4], P L [7,8,4,9] P H [5], K 6 [8], K 6 [9], K 6 [0], K 6 [], K 6 [], K 6 [3], K 6 4], K [43], K [44], K [45], K [46], K [47] (3) 5

Perlu diperhatikan di sini bahwa 3 bit teks dapat digunakan untuk menurunkan bit kunci dari ruas kiri pada setiap persamaan. Oleh karena itu akan didapatkan 6 bit kunci rahasia dari kedua operasi menggunakan 6 bit teks. 5.3 Improvisasi Algoritma Berikut ini akan dijelaskan langkah-langkah selanjutnya untuk memecahkan DES berdasarkan ekspresi linear yang didapat dari 3.. Untuk setiap kandidat upa kunci dan untuk kedua aproksimasi linear, dihitung banyaknya ruas kiri dari ekspresi linear yang bernilai 0. Setelah mapat daftar kandidat upa kunci setiap ekspresi linear selanjutnya diurutkan secara descing berdasarkan nilai bias dalam aproksimasi linear. Selanjutnya adalah menggabungkan kedua daftar upa kunci untuk mapatkan 4 bit kandidat upa kunci terurut. Dengan cara ini akan mereduksi jumlah pasangan plaintext dan ciphertext dari 47 menjadi 43. Algoritma langkah-langkah di atas adalah sebagai berikut: Urutkan K dan K secara descing berdasarkan nilai Kx[y] - 4 dengan x ϵ {,} dan 0 y. Akan didapat dua list dengan counter yang dinotasikan dengna S[r] dan S[r] dengan 0 r. {Ambil informasi bit teraskhir dari setiap kandidat upa kunci} foreach Sx[r] do if ( Sx[r] 4 0) then tebak ruas kanan ekspresi linear dengan x adalah 0 if ( Sx[r] 4 > 0) then tebak ruas kanan ekspresi linear dengan x adalah {Menggabungkan dua list} F(r, r) := (r + ) * (r + ) {rx adalah index yang berkoresponden dengan list terurut x} L adalah gabungan kedua list S dan S sesuai dengan kenaikan nikai F() foreach kandidat upakunci pada L do cari 30 bit sisanya if (kunci benar ditemukan) then exit Algoritma 3 Sediakan 3 counter untuk setiap ekspresi linear C[i] dan C[i] dengan 0 i 3 dan inisialisasi dengan 0. {Setiap indeks i berkoresponden dengan state 3 efektif bit text} foreach 43 pasang plaintext-ciphertext do Hitung nilai i dan i penggunakan P dan C untuk ekspresi linear l dan l. C[i] = C[i] + C[i] = C[i] + Sediakan counter untuk setiap ekspresi linear K[k] dan K[k] dengan 0 k dan inisialisasi dengan 0. {Setiap indeks k berkoresponden dengan state efektif bit text} foreach k, k do K[k] := jumlah C[x] dimana l(px, cx, k) = 0 K[k] := jumlah C[x] dimana l(px, cx, k) = 0 6. Kesimpulan DES adalah salah satu standar enkripsi yang cukup baik karena memiliki beberapa parameter keamanan yang sulit ditembus diantaranya permutasi awal dan akhir, 6 putaran enciphering, dan 8 S-box. Kelemahan DES adalah terletak pada sifat kelinearannya sehingga dengan perhitungan probabilitas terhadap nilai bias dan pasangan plaintext-ciphertext yang diketahui, dapat dilakukan kriptanalisis Linear cryptanalysis merupakan algoritma yang jauh lebih mangkus dibanding brute force. Namun, untuk dapat melakukan kriptanalisis dengan lebih cepat, perlu didukung oleh hardware yang menunjang. 6

DAFTAR PUSTAKA [] Rinaldi Munir. Diktat Kuliah Kriptografi Program Studi Teknik Informatika Institut Teknologi Bandung. 006 [] Pascal Junod. Linear Cryptanalysis of DES [3] Walpole, Myers, Ye. Probability and Statistics,. 8th Ed. Pearson Prantice Hall. [4] E. Biham and A. Shamir. Differential Cryptanalysis of the Data Encryption [5] M. Matsui. Linear cryptanalysis method for DES cipher, in Advances in Cryptol-ogy EUROCRYPT 93 T. Helleseth, ed. 993. [6] Alex Biryukov, Christophe De Canni`ere. Linear Cryptanalysis. [7] Ali Aydin Selcuk, Differential & Linear Cryptanalysis. 7

APENDIKS A. Data Encryption Standard A. Matriks Permutasi Awal 58 50 4 34 6 8 0 60 5 44 36 8 0 4 6 54 46 38 30 4 6 64 56 48 40 3 4 6 8 57 49 4 33 5 7 9 59 5 43 35 7 9 3 6 53 45 37 9 3 5 63 55 47 39 3 3 5 7 A. Matriks Permutasi Kompresi PC- 57 49 4 33 5 7 9 58 50 4 34 6 8 0 59 5 43 35 7 9 3 60 5 44 36 63 55 47 39 3 3 5 7 6 54 46 38 30 4 6 6 53 45 37 9 3 5 8 0 4 A.3 Matriks Permutasi Kompresi PC- 4 7 4 5 3 8 5 6 0 4 7 3 9 4 6 8 6 7 7 0 3 3 9 4 5 3 37 47 55 30 40 5 45 33 48 4 5 44 49 39 56 34 53 46 4 50 36 9 3 44 49 A.4 Matriks Permutasi Expansi 3 3 4 5 4 5 6 7 8 9 8 9 0 3 3 4 5 6 7 6 7 8 9 0 0 3 4 5 4 5 6 7 8 9 8 9 30 3 3 A.5 Matriks Permutasi Pasca S-Box 6 7 0 9 8 7 5 3 6 5 8 3 0 8 4 4 3 7 3 9 9 3 30 6 4 5 A.6 Inverse Permutasi (IP - ) 40 8 48 6 56 4 64 3 39 7 47 5 55 3 63 3 38 6 46 4 54 6 30 37 5 45 3 53 6 9 36 4 44 5 0 60 8 35 3 43 5 9 59 7 34 4 0 50 8 58 6 33 4 9 49 7 57 5 8