• Tidak ada hasil yang ditemukan

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

N/A
N/A
Protected

Academic year: 2022

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

Copied!
8
0
0

Teks penuh

(1)

Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit 1

KOMPLEKSITAS DAN ANALISIS SANDI LINEAR ALGORITMA ENKRIPSI

SUBTITUSI PERMUTASI SEDERHANA 128 BIT

Yusuf Kurniawan

Teknik Informatika Universitas Pasundan Jl Setiabudi 193 Bandung 40153 Telp. (022) 2019371 Fax. (022)2019352

ysfk2002@yahoo.com Abstrak

Penelitian di bidang pemeriksaan keamanan teknik enkripsi belum banyak di tanah air.

Dalam makalah ini, teknik untuk meningkatkan keamanan algoritma enkripsi diperiksa. Peningkatan kompleksitas algoritma diharapkan dapat meningkatkan keamanan algoritma. Namun ternyata, dapat ditunjukkan bahwa peningkatan kompleksitas algoritma, tidak otomatis meningkatkan pula keamanan algoritma. Dalam penelitian ini digunakan algoritma subtitusi-permutasi 7 ronde sederhana dengan kunci 128 bit. Dengan brute force attack, kunci ini dapat ditemukan setelah 1700 trilyun tahun dengan komputer berkemampuan 1015 enkripsi per detik. Analisis sandi yang digunakan adalah analisis sandi linear. Teknik ini berusaha mencari hubungan linear antara masukan dan keluaran algoritma. Dalam penelitian ini akan dibandingkan antara algoritma yang menggunakan kotak subtitusi yang sama dengan yang menggunakan kotak subtitusi berbeda-beda untuk seluruh kotak subtitusinya. Dalam kasus ini, ternyata bahwa keamanan tidak meningkat dan seluruh kunci 128 bit dapat dipecahkan dalam waktu kurang dari satu hari dengan 215 known plaintex dengan analisis sandi linear. Namun, algoritma dengan kotak subtitusi yang berbeda, akan lebih memakan memori pada implementasi, khususnya di perangkat keras. Sehingga, semakin rumit algoritma enkripsi, belum tentu keamanan meningkat. Namun, hampir dapat dipastikan bahwa implementasinya semakin rumit atau bertambah lambat.

Kata kunci : enkripsi, kompleksitas, analisis sandi linear, kotak subtitusi, known plaintext attack 1. Pendahuluan

Primitif komponen algoritma enkripsi adalah subtitusi dan permutasi[6]. Permutasi dianggap tidak memberikan keamanan terhadap algoritma[1], kecuali bila detil algoritmanya tersembunyi. Oleh karena itu, penekanan penelitian di dunia kriptografi terletak pada kotak subtitusinya (kotak-S). Dalam DES (Data Encryption Standard) misalnya, satu-satunya komponen yang dianggap tidak linear adalah kotak-S. Permutasi, ekspansi dan operasi XOR yang digunakan dalam DES dianggap tidak linear.

Operasi permutasi[2] bertujuan agar setiap bit masukan mempengaruhi setiap bit keluaran secara acak, serta menghilangkan redundansi plaintext yang dapat dieksploitasi analis sandi. Operasi subtitusi bertujuan menghilangkan hubungan antara plaintext dan ciphertext, sehingga tidak ada sebarang korelasi antara bit-bit masukan dengan bit-bit keluaran, yang dapat dieksploitasi analis sandi.

Dalam penelitian ini, penulis memeriksa algoritma subtitusi permutasi sederhana 128 bit seperti pada gambar 1. Algoritma semacam ini sering disebut juga sebagai Subtitusion-Permutation Network (SPN). Algoritma terdiri dari 7 ronde. Setiap ronde (selain ronde 7) terdiri dari pencampuran kunci (subkey mixing) berupa operasi XOR, diikuti operasi subtitusi dan kemudian permutasi. Pada setiap ronde terdapat 16 bit kunci, sehingga total kunci menjadi 128 bit. Pertama-tama akan diperiksa keamanan algoritma bila digunakan kotak-S yang sama untuk ke-28 kotak-S yang ada. Dan berikutnya akan digunakan kotak-S yang tidak sama untuk seluruh 28 kotak-S-nya. Di sini akan diperlihatkan cara mendapatkan kunci enkripsi 128 bit yang dibangkitkan secara acak.

Untuk penelitian awal akan digunakan kotak-S yang menghasilkan kotak-S aktif yang banyak.

Kotak S diambil secara acak dan kemudian dianalisis untuk mendapat bias linear yang cukup kecil.

Kotak-S diperlihatkan pada tabel 1.

(2)

2 Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit Tabel 1

0 1 2 3 4 5 6 7 8 9 A B C D E F

3 4 6 C F B 0 9 A E D 5 2 1 7 8

Kotak-S tabel 1 menghasilkan tabel bias linear seperti yang ditunjukkan pada tabel 2

Gambar 1. Jaringan subtitusi permutasi sederhana 128 bit

2. Prinsip Analisis Sandi Linear (ASL)

Analisis sandi linear merupakan known-plaintext attack yang termasuk paling sering digunakan untuk memeriksa keamanan algoritma enkripsi block cipher. Jadi, sebelum sebuah algoritma dapat dipecahkan, diperlukan pengetahuan pasangan plaintext/ciphertext yang jumlahnya tergantung pada kekuatan algoritma. Semakin banyak pasangan yang diperlukan, semakin kuat algoritma, dan sebaliknya. Untuk penelitian di sini, jumlah kemungkinan masukan plaintext adalah 216. Bila untuk memecahkan algoritma ini dibutuhkan 217, maka algoritma dianggap aman menghadapi analisis sandi ini. Namun tidak ada jaminan bahwa algoritma ini akan sanggup menahan serangan analisis sandi lainnya.

Prinsip utama analisis sandi linear adalah untuk memperoleh taksiran linear block cipher. Persamaan linear dapat dituliskan sebagai berikut [3] :

1 u

Xiα α=

⊕ 

 

 ⊕

1 v

Yjβ β=

⊕ 

 

 =

1 w

Kkγ γ=

⊕ 

 

  (1)

di mana X menyatakan bit-bit plaintext, y menyatakan bit-bit ciphertext dan K menyatakan bit-bit kunci. Indeks u,v,w menyatakan lokasi-lokasi bit tertentu.

(3)

Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit 3

Persamaan tersebut menyatakan bahwa XOR sekumpulan bit masukan dan keluaran akan sama dengan XOR sekumpulan bit keluaran. Posisi bit-bit masukan, keluaran dan kunci dapat sebarang. Bila persamaan (1) dipenuhi dengan peluang p = ½, maka dapat diartikan bahwa cipher memiliki keacakan yang baik dan tidak memiliki sifat linear. Dan bila peluang p

= ½ + ε di mana bias ε ≠ 0, maka cipher memiliki sifat linear atau tidak acak dan dapat dieksploitasi. Untuk memeriksa kelinearan kotak-S, bias linear kotak-S diperiksa.

Untuk mendapatkan taksiran linear dengan besaran bias tertinggi, kita ikuti notasi Matsui[5]. Untuk kotak-S Sa (kotak S ke a), 1 ≤ α ≤ p dan 1 ≤ β ≤ q, kita definisikan NSa(α,β) sebagai jumlah terjadinya pola masukan p dari Sa, sedemikian sehingga nilai bit-bit masukan yang di-XOR yang di-mask oleh α sesuai dengan nilai bit-bit keluaran yang di- XOR-kan yang di-mask dengan β.

NSa(α,β) def #

{

1 1

}

0 0

x 0 x p, y ( [ ] [ ]) z ( ( )[ ]a [ ])

s x s α s t s x t β t

= =

   

≤ ≤ ⊕ •  = ⊕ • 

di mana y adalah nomor bit masukan dan z nomor bit keluaran kotak-S.

3. Pencarian Kunci 128 bit dengan kotak-S sama dengan Analisis Sandi Linear Tabel 2

0 1 2 3 4 5 6 7 8 9 A B C D E F 0 +8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 -4 0 0 +4 0 0 +2 +2 -2 +2 +2 -2 +2 +2 2 0 0 -4 0 +2 -2 -2 -2 0 0 +4 0 +2 -2 -2 -2 3 0 0 0 0 +2 +2 -2 -2 -2 -2 -2 -2 0 0 -4 +4 4 0 +2 0 -2 -4 -2 -4 +2 0 -2 0 +2 0 -2 0 +2 5 0 -2 0 -2 +4 -2 0 +2 -2 0 -2 0 -2 -4 +2 0 6 0 +2 0 +2 +2 0 +2 0 0 -2 0 +6 -2 0 -2 0 7 0 -2 0 +2 +2 0 -2 0 +2 -4 +2 0 0 +2 +4 +2 8 0 0 0 +4 0 -4 0 0 0 +4 0 0 0 0 0 +4 9 0 0 0 0 0 0 +4 +4 +2 -2 +2 -2 +2 -2 -2 +2 A 0 -4 0 +4 -2 +2 -2 +2 0 0 0 0 -2 -2 -2 -2 B 0 -4 0 0 -2 -2 +2 -2 -2 -2 -2 +2 +4 0 0 0 C 0 +2 0 +2 0 -2 0 -2 +4 -2 -4 -2 0 -2 0 -2 D 0 -2 -4 -2 0 -2 0 +2 +2 0 -2 0 -2 +4 -2 0 E 0 -2 +4 -2 +2 0 -2 0 +4 +2 0 +2 +2 0 -2 0 F 0 +2 0 +2 +2 0 -2 +4 -2 0 -2 0 +4 +2 0 -2

Dari tabel 2, dapat dilihat bahwa bias linear tertinggi adalah 6, bila jumlah masukan masking kotak-S adalah 616 dan keluarannya B16. Bila kita mengambil nilai ini, maka akan memberikan kotak-S aktif keluaran sebanyak 3 buah, sehingga pada gilirannya akan memperkecil peluang taksiran linear. Inilah alasan pemilihan kotak-S yang digunakan dalam penelitian.

Nilai mutlak bias linear tertinggi berikutnya adalah 4. Kita dapat memilih beberapa alternatif. Di sini kita pilih jumlah masking masukan 2 dan jumlah masking keluaran 2 untuk ronde ganjil dan jumlah masking masukan dan keluaran 4 untuk ronde genap. Kecuali di ronde 6 kita gunakan jumlah masukan 4 dan keluaran 6. Hasilnya dapat dilihat pada gambar 2.

(4)

4 Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit

Gambar 2. Alur Taksiran Linear

Dari tabel 2 dan gambar 2, kita gunakan taksiran linear kotak-S sebagai berikut:

S12 : X3 = Y3 dengan p = -1/4 S23 : X2 = Y2 dengan p = -1/4 S32 : X3 = Y3 dengan p = -1/4 S43 : X2 = Y2 dengan p = -1/4 S52 : X3 = Y3 dengan p = -1/4 S63 : X2 = Y2 ⊕ Y3 dengan p = -1/4 Berdasar rumusan Matsui[3] P = ½ + 2n-1

1 n

i i

ε

= maka , diperoleh p = ½ + 26-1 (-1/4)6 = ½ + 0,0078125 = 0,5078125

(5)

Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit 5

Jadi peluang p bahwa P7 ⊕ i(7,7) ⊕ i(7,11) ⊕ ∑k = 0 adalah 0,5078125 di mana

k = K(1,7) ⊕ K(1,10) ⊕ K(3,7) ⊕ K(4,10)⊕ K(5,7) ⊕ K(6,10) ⊕ K(7,7)

dan P7 adalah bit plaintext ke-7 dihitung dari kiri, sedangkan i(7,7) adalah masukan bit ke-7 di ronde 7. Terdapat bias peluang sebesar ε = 0,0078125 yang berarti bahwa cipher cenderung untuk menuju 0 dengan peluang 0,0078125 bila dilakukan taksiran linear seperti di atas.

Yang perlu dicatat adalah, rumusan Matsui di atas hanya berlaku bila anggapan bahwa peluang setiap ronde adalah saling bebas terhadap peluang ronde yang lain juga berlaku.

Sehingga, peluang total sama dengan peluang setiap ronde dikalikan dengan peluang ronde yang lain. Bila tidak saling bebas, maka dapat terjadi bahwa peluang total tidak sama dengan hasil kali peluang setiap rondenya. Tabel 3 memperlihatkan sebagian hasil percobaan. Kunci yang benar (1C) = K(8,5)..K(8,12) memperlihatkan bias linear tertinggi (0,013062) yang lebih besar dari bias yang dihitung dengan rumus Matsui. Efek semacam ini disebut linear hull.

Dan bias yang sebenarnya adalah yang diperoleh dari percobaan.

Tabel 3

Kunci Bias ε 1C 0.013062 46 0.012299 6C 0.011963 6F 0.011902 27 0.010223 76 0.010223 26 0.009949

Percobaan yang dilakukan berupa mencoba ke-256 kunci K(8,5)..K(8,8) dan K(8,9)..

K(8,12) yang mungkin dengan 32768 pasang plaintext/ciphertext. Setiap kunci digunakan untuk mencoba ke-32768 pasang plaintext/ciphertext. Bias tertinggi dianggap menunjukkan kunci yang benar. Jumlah pasangan ini diperoleh dari rumus pendekatan Matsui yang menyatakan bahwa jumlah pasangan ciphertext/plaintext yang diperlukan sebanyak kira-kira kelipatan ε-2.

4. Pencarian Kunci 128 bit dengan kotak-S berbeda dengan Analisis Sandi Linear Pada bagian ini akan diteliti kompleksitas menentukan kunci 128 bit dengan ASL, di mana digunakan kotak-S yang berbeda untuk keseluruh kotak-S yang ada. Penentuan kotak-S di sini dilakukan secara acak. Contoh kotak-S yang dipakai di sini adalah sebagai berikut:

Tabel 4

Kotak-S_11

0 1 2 3 4 5 6 7 8 9 A B C D E F E 4 D 1 2 F B 8 3 A 6 C 5 9 0 7

Kotak-S_12

0 1 2 3 4 5 6 7 8 9 A B C D E F 3 4 6 C F B 0 9 A E D 5 2 1 7 8 Kotak-S_13

0 1 2 3 4 5 6 7 8 9 A B C D E F 7 F 6 C B 9 A 0 D E 4 5 1 2 8 3

Kotak-S_14

0 1 2 3 4 5 6 7 8 9 A B C D E F C 6 4 0 8 2 E 1 F 5 B 3 A 9 D 7 Kotak-S_21 :

0 1 2 3 4 5 6 7 8 9 A B C D E F F 7 E 2 9 3 8 1 0 A D C 4 6 5 B

Kotak-S_22

0 1 2 3 4 5 6 7 8 9 A B C D E F 1 2 F B 8 3 A 6 C 5 9 0 7 E 4 D Kotak-S_23

0 1 2 3 4 5 6 7 8 9 A B C D E F 3 D 5 0 6 7 C 4 9 2 1 F A E 8 B

Kotak-S_24

0 1 2 3 4 5 6 7 8 9 A B C D E F 9 2 3 E 1 B 8 A C 7 F D 5 6 0 4

(6)

6 Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit

Gambar 3. ASL pada SPN dengan kotak-S berbeda

Dengan cara yang sama seperti sebelumnya dan dengan memperhatikan gambar 3, dapat dihitung peluang setiap ronde :

S11 : X1 ⊕ X3 ⊕ X4 = Y2 dengan p = +1/4 S22 : X1 = Y2 dengan p = +1/4

S32 : X2 = Y1 dengan p = -1/4 S41 : X2 = Y4 dengan p = +1/4 S54 : X1 = Y3 dengan p = -1/4 S63 : X4 = Y1 ⊕ Y2 dengan p = -1/4

Sehingga p total cipher = ½ + 26-1(+1/4)3(-1/4)3 = ½ - 0,0078125 = 0,4921875 Dan bias ε = 0,0078125 sama seperti pada kasus sebelumnya

Ini berarti bahwa penggunaan kotak-S yang berbeda tidak menjamin peningkatan keamanan. Namun jelas meningkatkan kerumitan analisis.

(7)

Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit 7

Tabel 5

Kunci Bias ε 49 0.015198 40 0.012543 89 0.011078 43 0.009827 4D 0.00946

Tabel 5 memperlihatkan sebagian hasil percobaan penemuan kunci. Kunci 49hex yang terletak tepat setelah S71 dan S72 ditemukan dalam waktu 15 detik dengan komputer Duron 1200 Mhz. Sehingga dapat diperkirakan dalam beberapa menit, seluruh kunci akan dapat dipecahkan dengan 32768 pasang plaintext/ciphertext yang telah diketahui sebelumnya.

5. Kesimpulan

Dari penelitian ini dapat disimpulkan hal-hal sebagai berikut:

a. Algoritma enkripsi SPN sederhana 128 bit yang dengan brute force attack dapat dipecahkan dalam waktu 1700 trilyun tahun dengan sebuah komputer berkemampuan 1015 enkripsi per detik, ternyata dapat dipecahkan dengan sebuah komputer berkemampuan sekitar 104 enkripsi per detik dengan 32768 pasang plaintext/ciphertext yang telah diketahui dengan analisis sandi linear

b. Dari hasil tersebut dapat diambil kesimpulan pula bahwa semakin lama kunci enkripsi dipergunakan, maka semakin terancam keamanannya.

c. Semakin rumit algoritma (dalam kasus ini adalah penggunaan kotak-S yang berbeda) tidak menjamin keamanan meningkat.

d. Semakin rumit algoritma, analisis sandi semakin rumit dan implementasinya membutuhkan ketelitian, dan sumber daya (bisa berupa memori atau ruangan, jika diimplementasikan pada perangkat keras) yang lebih banyak.

6. Saran

Beberapa saran yang dapat diberikan adalah :

a. Pengubahan kunci enkripsi sesering mungkin dalam setiap pemakaian untuk menghindari pemecahan sandi.

b. Meneliti teknik analisis sandi lainnya untuk memastikan tingkat keamanan algoritma enkripsi.

c. Meneliti sendiri untuk mendapatkan algoritma enkripsi yang cepat, fleksible dan aman, dan tidak bergantung kepada algoritma luar, karena dikuatirkan terdapat trapkdoor-nya[4].

7. Daftar Pustaka

[1] J. Daemen, Cipher and hash function design. Strategies based on linear and differential cryptanalysis, Doctoral Dissertation, KU Leuven. 1995.pp 17

[2] Shannon C. E. Communication Theory of Secrecy Systems, Bell system Technical Journal (1949)

[3] M Matsui, Linear Cryptanalysis Method for DES Cipher, Computer & Information System Lab.

Mitsubishi, 1998

(8)

8 Kompleksitas Dan Analisis Sandi Linear Algoritma Enkripsi Subtitusi Permutasi Sederhana 128 Bit [4] Hongjun W, Feng B,. Cryptanalysis of Rijmen Preneel Trapdoor Ciphers, Department of Electrical

Engineering, National University of Singapore, 1998

[5] K.S. Ooi, Brain C.V, Cryptanalysis of S-DES, University of Sheffield Centre, 2002 [6] Bruce Schneier, Applied Cryptography, 2nd edition, John Wiley & Sons, Inc., 1996

Gambar

Gambar 1.  Jaringan subtitusi permutasi sederhana 128 bit
Gambar 2.  Alur Taksiran Linear
Tabel  4  Kotak-S_11   0 1 2 3 4 5 6 7 8 9 A B C D E F  E 4 D 1 2 F B 8 3 A 6 C 5 9 0 7  Kotak-S_12  0 1 2 3 4 5 6 7 8 9 A B C D E F  3 4 6 C F B 0 9 A E D 5 2 1 7 8  Kotak-S_13   0 1 2 3 4 5 6 7 8 9 A B C D E F  7 F 6 C B 9 A 0 D E 4 5 1 2 8 3  Kotak-S_14
Gambar 3. ASL pada SPN dengan kotak-S berbeda

Referensi

Dokumen terkait

Berdasarkan hasil penelitian dan pembahasan dapat diambil simpulan terdapat perubahan yang bermakna pada tingkat skala nyeri pasien rematik (osteoartritis) sebelum

Adalah suatu teknik yang memungkinkan suatu titik Adalah suatu teknik yang memungkinkan suatu titik ( Base Station ) untuk dapat diakses oleh beberapa titik yang saling berjauhan

Kompetensi manajerial berpengaruh signifikan terhadap kualitas laporan keuangan hal ini membuktikan bahwa Kemampuan manajerial berperan dalam meminimalkan resiko

- Pelestarian budaya wayang Indonesia melalui media televisi saat ini seperti dalam bentuk format film, sinetron, animasi, siaran pagelaran wayang, acara lawak dan sebagainya

Bukit dan gunung merupakan daerah penyerap dan penyimpan cadangan air yang berasal dari air hujan.Cadangan air yang diserap tersebut masuk ke dalam tanah dan batuan.Karena volume

Hasil uji sifat fisis tanah asli dan tanah campuran semakin bertambahnya persentase gipsum nilai kadar air, batas cair, batas susut, indeks plastisitas dan lolos saringan

Sedangkan dalam bidang teologi, pemikiran Muh } ammad „Abduh didasari oleh tiga hal antara lain: kebebasan manusia dalam memilih perbuatan, kepercayaan yang kuat

Daerah Sejati, di bagian selatan Kabupaten Wonogiri, merupakan bagian Pegunungan Selatan yang tersusun oleh batugamping Formasi Wonosari dan terdapat