Algoritma RC Ron’s Code Algoritma Block Cipher RC2 Algoritma Stream Cipher RC4

Sedangkan contoh – contoh algoritma block cipher diantaranya : Lucifer, DES, Triple DES, NewDES, TEA, XTEA, RC2, RC5, RC6, LOK1899197, MARS, Twofish, Blowfish, GOST, 3-way, CAST, FEAL, IDEA, MISTY, DEAL, dan lain – lain.

b. Kunci Asimetris

Kunci Asimetris adalah pasangan kunci kriptografi yang salah satunya digunakan untuk proses enskripsi dan yang satu lagi untuk deskripsi. Semua orang yang mendapatkan kunci public dapat menggunakannya untuk menenkripsikan suatu pesan, data ataupun informasi, sedangkan hanya satu orang saja yang memiliki rahasia tertentu dalam hal ini kunci private untuk melakukan pembongkaran terhadap sandi yang dikirim untuk penerimanya. Contoh algoritma terkenal yang menggunakan kunci simetris adalah RSA. Proses enkripsi-deskripsi algoritma kunci asimetris dapat dilihat pada Gambar 2.2. Gambar 2.2 Proses Enkripsi-Deskripsi Kunci Asimetris Pada algorithm public key ini, semua orang dapat mengenkripsi data dengan memakai public key penerima yang telah diketahui secara umum. Akan tetapi data yang telah terenkripsi tersebut hanya dapat didekripsi dengan menggunakan private key yang hanya dapat diketahui oleh penerima. Contoh-contoh algoritma asimetris ini adalah RSA, EI Gamal, Diffie Hellman, DSA, dan lain-lain.

2.1.2. Algoritma RC Ron’s Code

RC merupakan singkatan dari Ron’s Code ataupun Rivest Cipher. Yang termasuk ke dalam keluarga algoritma RC ini mencakup RC2, RC4, RC5, dan RC6. Khusus RC1 dan RC3 tidak pernah dipublikasikan dan tidak terdapat informasi mengenai kedua Encryption Decryption plaintext Original Plaintext chipertext Encryption key Descrytion key Universitas Sumatera Utara algoritma tersebut. RC2, RC5, dan RC6 termasuk ke dalam block cipher sedangkan RC4 termasuk algoritma stream chiper.

2.1.3. Algoritma Block Cipher RC2

RC2 merupakan blok cipher didesain oleh Ron Rivest pada tahun 1987. Pengembangan RC2 disponsori oleh Lotus yang sedang mencari suatu cipher tertentu setelah evaluasi oleh NSA untuk diekspor sebagai bagian dari software Lotus Notes. Setelah negosiasi lanjut, cipher ini disetujui dan diekspor pada tahun 1989. Seperti diketahui pembatasan kunci untik ekspor kriptografi oleh pemerintah AS hanya sebesar 40 bit saja. Semua ini termuat dalam export regulation for cryptography. Detail dari algoritma ini dijaga kerahasiaannya dan sebagai property dari RSA Security. Tetapi pada tanggal 29 Januari 1996, source code atau kode sumber dari RC2 telah dipublikasikan ke Internet oleh orang tanpa nama melalui forum Usenet yaitu Sci.crypt. RC2 merupakan block cipher 64 bit dengan variable key size. Terdiri atas 18 round yang diatur dengan feistel network yang sulit. Dengan 16 round Mixing yang disambung dengan dua round Mashing. Mixing round terdiri atas empat aplikasi dari Mix transformation seperti ditunjukkan pada Gambar 2.3 berikut ini : NOT s subkey Gambar 2.3 Mix Transformation dari RC2 Subkey Universitas Sumatera Utara

2.1.4. Algoritma Stream Cipher RC4

Rc4 adalah jenis kriptografi symmetric key, secret key, dan stream cipher yang didesain oleh Ron Rivest. RC merupakan singkatan dari “Ron’s Code”. Dikenal secara umum sebagai block cipher RC2 dan RC5, dan block cipher RC6 yang didesain oleh Ron Rivest bersama orang lain. RC4 didesain sekitar tahun 1990-an. RC4 adalah inisial rahasia perdagangan, tetapi pada September 1994 implementasi RC4 dipublikasikan tanpa nama pada Cypherpunks mailing list. Berita tersebut dengan cepat menyebar pada Usenet pada sci.crypt newsgroup dan pada beberapa site di Internet. Karena algoritmanya telah diketahui maka RC4 tidak lagi merupakan rahasia perdagangan. Nama dari RC4 adalah merupakan sebuah merek dagang, RC4 sering disebut sebagai “ARCFOUR” untuk menghindari kemungkinan dalam masalah merek dagang. RC4 merupakan bagian dari protocol standar enkripsi yang umum digunakan termasuk dalam SSL Security Socket Layer yang dipakai untuk mengamankan jaringan web browser. RC4 diinisialisasi dari sebuah kunci rahasia. Kemudian di-generate sebuah “keystream” yang disederhanakan dengan XOR dengan plaintext untuk menghasilkan ciphertext. Proses deskkripsi sama dengan proses enkripsi. Salah satu alasan untuk kepopuleran RC4 adalah kesederhanaannya. Algoritma RC4 dapat diingat dan mudah diimplementasikan. Algoritma RC4 menggunakan 256 byte dari memori, S[0] hingga S[255], dan menggunakan variable integer i, j, dan k. Crytanalysis dari RC berada pada tahap yang tidak tentu. Secara teoritis RC4 dapat dipecahkan jika stream ciphertext yang dihasilkan berjumlah giga byte, tetapi ini tidak merupakan masalah utama dalam penerapannya. Pada tahun 2001 sebuah penemuan baru yang mengejutkan terjadi, semua kemungkinan kunci RC4, statistic dari byte pertama dari output keystream tidak dalam keadaan acak. Hal ini berefek ketika digunakan untuk memecahkan enkripsi WEP wired Equivalent Privacy yang dipakai pada 802.11 jaringan tanpa kabel. WEP menerapkan RC4 dengan banyak kunci yang mirip, sehingga memungkinkan jaringan ini terbuka untuk diserang. Implementasi RC4 saat ini sering mengabaikan 256 byte pertama atau lebih dari stream untuk mengatasi masalah tersebut. Universitas Sumatera Utara Seperti halnya dengan cipher stream, RC4 mudah dipecahkan jika yang sama dipakai dua kali. Masalah ini biasanya diatasi dengan melakukan hashing kunci dengan vector inisialisasi unik unique initialization vector setiap kali kunci ini dipakai dan vector inisialisasi ini dikirim bersamaan dengan pesan. RC4 merupakan stream cipher yang sangat cepat dan aman dari RSA. Data Security, Inc. RC4 digunakan dalam lingkungan dengan sumber daya yang kecil dengan resiko yang tinggi. RC4 tidak dipatenkan meskipun untuk tujuan komersial sekalipun. RC 4 menggunakan panjang kursi variable dari 1-256 byte mempunyai kemampuan antara 1 – 2048 bit untuk menginisialisasi 256 – byte state table. Algoritma RC4 dibagi menjadi dua tahap, yaitu membentuk kunci dan ciphering enskripsideskripsi. Pembentukan kunci merupakan tahap pertama dan tersulit. Selama pembentukan kunci, kunci enkripsi digunakan untuk menghasilkan sebuah variable enkripsi menggunakan 2 array state array key array dan sejumlah operasi penjumlahan. Berikut ini penjelasan algoritma tahap – tahap dalam proses ciphering RC4:

1. Pembentukan Kunci Key Scheduling

For 1 = 0 ……255 S i = i Next i J = 0 For I = 0……255 J = j + Si + key [ I mod key_length] mod 256 Swap S [i] , S [ j ]

2. Proses Enkripsi

For i = 0 to Len Plaintext – 1 i = i + 1 mod 256 j = j + S [ i ] mod 256 swap S [ i ] , S [ j ] k = S [ S [ i ] + S [ j ] mod 256 ] Ciphertext i = k XOR Plaintext i Next i Universitas Sumatera Utara