Modifikasi RC6 Pada Citra Digital

Pada algoritma RC6 operasi pada proses enkripsi telah dikembangkan seperti yang terlihat sebagai berikut. B= B + S[0] D= D + S[1] for i = 1 to r do p = B x 2B+15 q = D x 2D+15 A = A ⊕pq + S[2i] C = C ⊕q p + S[2i+1] A,B,C,D = B,C,D,A A = A + S[2r + 2] C = C + S[2r + 3] Pada kedua operasi enkripsi diatas terdapat beberapa perbedaan mendasar antara algoritma RC5 dan algoritma RC6. Salah satu perbedaan yang paling mencolok adalah penambahan operasi primitif perkalian pada algoritma RC6 yang mana tidak ditemukan pada algoritma RC5. Secara sederhana dapat dikatakan perbedaan yang besar pada operasi algoritma RC5 dengan algoritma RC6 dipengaruhi oleh penggunaan jumlah register. Namun pada algoritma RC6 telah diterapkan transformasi secara menyeluruh pada ke-empat register nya sehingga dapat mengatasi kelemahan yang dimiliki oleh algoritma RC5 dimana tidak seluruh bit dalam register yang berpengaruh dalam proses rotasi, sehingga pola hasil enkripsi dapat dipetakan dengan analisis yang mendalam.

3.2.2. Modifikasi RC6 Pada Citra Digital

RC6 merupakan metode chipper blok yang menggunakan blok register sebanyak empat buah blok dengan ukuran masing-masing sebesar 32 bit. Dengan kata lain setiap blok akan menyimpan empat karakter. Pada citra digital tiap pixel terdiri dari tiga komponen yaitu R, G, dan B. Jika tiga komponen tersebut digabungkan dalam sebuah blok maka blok tersebut akan memiliki data dengan ukuran 24 bit atau tiga karakter. Secara default kekurangan bit pada tiap Universitas Sumatera Utara blok akan diisi oleh bit dari pixel berikutnya sehingga tiap blok akan memiliki ukuran yang sesuai yaitu 32 bit. Permasalahan yang terjadi adalah jika jumlah pixel tidak sesuai dengan pembagian blok sehingga diperlukan adanya padding atau penambahan bit 0 pada blok register, jika padding terjadi maka ukuran data hasil enkripsi akan berubah yang berpengaruh pada ukuran citra yang akan berubah dan akan menjadi sulit sekali dalam penyusunan kembali data hasil enkripsi ke dalam bentuk citra. Untuk mengatasi permasalahan tersebut maka modifikasi algoritma RC6 dengan spesifikasi sebagai berikut. 1. Tiap blok register A, B, C, dan D memiliki ukuran 24bit. A B C D 2. Nilai konstanta p dan q untuk expansi kunci menggunakan nilai berikut: konstanta Pw dan Qw standart: Pw = b7e15163 Qw = 9e3779b9 Di modif menjadi: P 24 = b7e151 Q 24 = 9e3779 Dimana nilai konstanta Pw dan Qw standart memiliki nilai 32 bit, expansi kunci Pw dan Qw standart memiliki 8 digit, pada tiap digit mengandung 4 pixel, jadi jumlah dari 8 digit dikali 4 pixel sama dengan 32 bit total dari expansi kunci. Pada Pw dan Qw modif memiliki 24 bit karena ada 2 expansi kunci yang tidak digunakan artinya expansi kunci standart dikurangi dengan nilai 8 bit. xx xx xx xx xx xx xx xx xx xx xx xx Universitas Sumatera Utara Langkah-langkah untuk menyandikan citra dengan RC6 lebih jelasnya dapat dinyatakan dengan diagram seperti terlihat pada Gambar 3.5. berikut ini. tidak Gambar 3.5. Diagram Alir Proses Enkripsi Citra ya Mulai Input Citra Baca Nilai Pixel Citra dan Konversikan ke RGB Konversi ke ASCII Enkripsi dengan RC6 Konversikan ke Bentuk RGB Kembali Ubah Nilai RGB ke bentuk Pixel Kembali Data Terahir Citra Simpan Citra Hasil Selesai Input kunci Universitas Sumatera Utara Sedangkan langkah-langkah untuk mengembalikan citra ke bentuk asli deskripsi dengan RC6 dapat dilakukan sesuai dengan diagram seperti pada Gambar 3.6. berikut ini tidak Gambar 3.6. Diagram Alir Proses Deskripsi Citra ya Mulai Input Citra Citra Baca Nilai Pixel Citra dan Konversikan ke RGB Konversi ke ASCII Deskripsi dengan RC6 Konversikan ke Bentuk RGB Kembali Ubah Nilai RGB ke bentuk Pixel Kembali Data Terahir Citra Simpan Citra Hasil Selesai Input kunci Universitas Sumatera Utara

BAB 4 HASIL DAN PEMBAHASAN