Tugas Sistem Keamanan Teknologi Informasi
Review Jurnal Penggabungan
Algoritma
Chaos
dan Rivers Shamir Adleman (RSA)
untuk
Peningkatan Keamanan Citra
Kelompok 2
Disusun Oleh :
-
Chintia Christmast Tanelaph (16117625)
-
Dendi Setiadi (16117627)
-
Nurul Aini Fauziah (14117613)
Kelas 4KA34
Keamanan
dan kerahasiaan data atau informasi pada masa sekarang ini telah menjadi
perhatian penting. Penggunaan data citra semakin luas dalam berbagai bidang. Oleh
karena itu, pengamanan data citra dari akses yang tidak berhak menjadi hal yang
penting. Berbagai macam teknik untuk meningkatkan keamanan data atau informasi
telah dikembangkan, salah satunya yaitu dengan teknik Kriptografi atau biasa
disebut teknik enkripsi / dekripsi Untuk mengimbangi kecepatan komputasi yang
semakin meningkat, dibutuhkan lebih dari satu algorimta enkripsi untuk meningkatkan
keamanan pada citra. Salah satu caranya adalah dengan menggunakan algoritma
kriptorafi ganda untuk melakukan enrkripsi dan dekripsi. Algoritma kriptografi
yang sering digunakan saat ini dan terbukti kekuatannya terhusus pada citra
digital adalah Algoritma dengan sistem Chaos. Untuk meningkatkan keamanan pada
citra maka digunakan algoritma tambahan yaitu algoritma Rivers Shamir Adleman
(RSA) yang dikenal sebagai algorima standart dalam bidang kriptografi.
Penelitian ini bertujuan untuk mengoptimalkan keamanan citra format bitmap dengan cara menggabungkan dua algoritma kriptografi yaitu algoritma Chaos dan algoritma RSA pada satu aplikasi sehingga diharapkan kekuatan dari ciphertext yang dihasilkan sulit untuk dipecahkan.
A. Chaos dan Logistic Map
Logistic
map adalah sistem chaos yang paling sederhanayang
berbentuk
persamaan iteratif sebagai berikut:
xi
+ 1 = r xi (1 – xi) (1)
Nilai
xi yaitu antara 0 ≤ xi ≤ 1, i = 0, 1, 2, .... dan 0 ≤ r ≤ 4. Nilai awal (seed)
persamaan iterasi adalah x0. Persamaan (1) bersifat deterministik sebab jika
dimasukkan nilai x0 yang sama maka dihasilkan barisan nilai chaotik (xi) yang
sama pula. Oleh karena itu, pembangkit bilangan acak dengan sistem chaos disebut
pseudo-random generator. Sifat algritma Chaos yang paling penting adalah
sensitivitasnya pada perubahan kecil nilai awal. Artinya jika tejadi perubahan
nilai kunci yang digunakan, maka hasil yang didapatkan tidak akan sama.
Di
dalam makalah ini, konversi nilai chaos ke integer dilakukan dengan menggunakan
fungsi pemotongan yang diusulkan di dalam [3]. Caranya adalah dengan mengalikan
nilai chaos (x) dengan 10 berulangkali sampai ia mencapai panjang angka (size)
yang diinginkan, selanjutnya potong hasil perkalian tersebut untuk mengambil
bagian integer-nya saja. Secara matematis fungsi konversi tersebut adalah:
T(x,
size)=|| x*10count ||, x ≠ 0 (2)
Dalam
hal ini count dimulai dari 1 dan bertambah 1 hingga x 10count> 10size – 1 .
Hasilnya kemudian diambil bagian integer saja. Sebagai contoh, misalkan x =
0.004276501 dan size = 4, maka dimulai dari count = 1 sampai count = 6
diperoleh 0.004276501 x 106 = 4276.501 > 103 Dari hasil diatas ambil bagian
integer-nya, hasilnya yaitu :
||
4276.501 || = 4276
B. Chaos dan Arnold
Cat Map
Arnold
Cat Map (ACM) ditemukan oleh Vladimir Arnold pada tahun 1960. Ketika melakukan
penelitan, Arnold menggunakan sebuah gambar kucing dalam melakukan percobaan,
sehingga algoritma hasil penelitian yang dilakukan dinamakan dengan Arnold Cat
Map (ACM) [6]. ACM mentransformasikan koordinat (x, y) di dalam citra yang berukuran
N × N kekoordinat baru (x’, y’) menggunakan persamaan iterasinya sebagai
berikut :
Penggunaan
modulo dengan nilai N pada operasi ACM dimaksudkan agar nilai posisi pixel yang
dilakukan pengacakan tetap pada area gambar yang ada. Karena itu, maka algoritma
ACM pada dasarnya hanya dapat digunakan pada gambar dengan panjang dan lebar
yang sama.
Seperti
umumnya fungsi chaos yang bersifat deterministik, citra yang sudah teracak
olehACM dapat direkonstruksi menjadi citra semula dengan menggunakan kunci yang
sama (a, b, dan m). Persamaan iterasinya adalah
C. Rivers Shamir
Adleman (RSA)
Dari
sekian banyak algoritma kriptografi kunci-publik yang pernah dibuat, algoritma
yang paling popular adalah algoritma RSA. Algoritma ini melakukan pemfaktoran
bilangan yang sangat besar. Oleh karena alasan tersebut RSA dianggap aman.
Untuk
pembangkitan pasangan kunci RSA, digunakan
algoritma
sebagai berikut :
1)
Pilih dua buah bilangan prima sembarang yang besar, p dan q. Nilai p dan q
harus dirahasiakan.
2)
Hitung nilai n dari rumus, n = p x q. Besaran n tidak perlu dirahasiakan.
3)
Hitung nilai n menggunakan teorema euler dengan rumus,n = (p – 1)(q – 1)
4)
Pilih sebuah bilangan bulat sebagai kunci publik (e), yang relatif prima
terhadap n. e relatif prima terhadap n artinya faktor pembagi terbesar keduanya
adalah 1, secara matematis disebut gcd (e,n) = 1. Untuk mencarinya dapat digunakan
algoritma Euclid
5)
Hitung kunci privat yang disebut d sedemikian hingga agar (d * e) mod n = 1.
Untuk mencari nilai d yang sesuai dapat juga digunakan algoritma Extended
Euclid. Maka hasil dari algoritma tersebut diperoleh :
kunci publik = (e,n)
kunci privat = (d,n)
Nilai
dari n bersifat publik, dan diperlukan pada perhitungan enkripsi/dekripsi.
Fungsi enkripsi dan dekripsinya dijabarkan dalam fungsi berikut :
C = M e mod n ( fungsi enkripsi ) (5)
M = C d mod n (fungsi dekripsi) (6)
Dimana
:
C = Cipherteks
d =Kunci privat
M = Message / Plainteks
n = Modulo pembagi
e = Kunci public
METODOLOGI
Rancangan
yang akan digunakan dalam penelitian ini digambarkan pada Gambar 1
Skema
di atas diuraikan kembali pada gambar 3.2
A.
Rancangan Algorima Enkripsi
Algoritma
enkripsi ganda yang diusulkan adalah sebagai berikut:
1)
Pilih citra yang akan dienkripsi (Plain image).
2)
Input nilai awal yang merupakan variable x0.
3)
Bangkitkan kunci enkripsi menggunakan persamaan (1).
4) Lakukan proses enkripsi dengan
menggunakan skema XOR untuk masing – masing komponen warna citra dengan kunci
yang telah dibuat sebelumnya.
5)
Lakukan pengacakan pixel menggunakan persamaan (3)
6)
Hasil enkripsi dari algoritma yang pertama yaitu berupa chiperimage.
7) Selanjutnya pada cipherimage
dilakukan ekstraksi untuk mengambil seluruh bit pixel yang ada untuk kemudian dilakukan
enkripsi tahap kedua algortima RSA.
8) Untuk algotima RSA langkah
pertama yang dilakukan adalah memasukkan tiga buah nilai variable yaitu p, q
dan e yang merupakan pembentuk kunci untuk melakukan enkripsi.
9) Kemudian dilanjutkan dengan
proses enkripsi pada seluruh bit pixel citra yang telah diekstraksi sebelumnya menggunakan
persamaan (5).
10)
Hasil ahir dari seluruh proses ini adalah berupa ciphertextdari nilai pixel.
Proses
enkripsi digambarkan pada Gambar 3.3
B.
Rancangan Algorima Dekripsi
Algoritma dekripsi citra adalah
sebagai berikut:
1) Pilih ciphertext.
2) Masukkan kunci
private (n, d) untuk melakukan operasi dekripsi tahap pertama yang menggunakan
algoritma RSA menggunakan persamaan (6).
3) Dari langkah kedua
didapatkan nilai pixel citra yang tidak terenkripsi yang kemudian akan disatukan
kembali menjadi cipherimage.
4) Selanjutnaya
masukkan kunci dekripsi Chaosyang telah digunakan sebelumnya untuk proses
enkripsi.
5) Langkah terahiradalah
melakukan operasi XOR dan proses pengembalian posisi pixel ke posisi awal menggunakan
persamaan (4) kemudian dihasilkan plain image atau gambar semula.
Proses
dekripsi lebih jelas digambarkan pada Gambar 3.4
Pengujian
Algoritma enkripsi dibagi menjadi dua tahap secara paralel yaitu:
1)
Pengujian Enkripsi Berbasis Chaos
Pada
pengujian enkripsi berbasis Chaos dilakukan dengan menganalisa beberapa
parameter yang menjadi acuan untuk mengetahui keamanan enkripsi citra.
Parameter yang digunakan antara lain Analisis Korelasi Analisa Entropi, Analisa
Histogram dan analisis sensitivitas kunci.
2)
Pengujian Enkripsi Berbasis Chaos dan RSA
Hasil ahir dari algoritma yang akan digunakan adalah berupa cihpertex yang kemungkinan serangan yang paling efektif digunakan yaitu serangan brute-force. Percobaan dilakukan dengan melihat lebar kunci yang ada setelah terjadi proses enkripsi dua tahap. Jika kunci yang digunakan cupuk lebar, maka tentunya citra yang terenkripsi dapat dikatakan aman.
A. Hasil Enkripsi dan Dekripsi
Hasil
enkripsi dari alogitma yang digunakan berupa ciphertext, tetapi untuk
memperjelas proses yang terjadi, maka penulis menampilkan hasil enkripsi pada
masing – masing algoritma. Citra hasil enkripsi menggunakan algoritma chaos yaitu
berupa cipherimage diperlihatkan pada Gambar 5(2) dan 5(3). Citra hasil
enkripsi terlihat sudah tidak dapat dikenali lagi. Sedangkan hasil ahir yaitu
berupa ciphertext diperlihatkan pada gambar 5(5) dan 5(6). Untuk hasil dekripsi
diperlihatkan pada gambar 5(7) dan 5(8).
B. Analisis Histogram
Analisis
histgram dilakukan untuk melihat kekuatan dari cipherimage yang dihasilkan dari
serangan analisis statistik. Serangan ini menggunakan histogram untuk menganalisa
kemunculan
pixel dalam sebuah citra, dengan cara mendedukasi kunci atau pixel dalam citra
[6]. Untuk menghindari serangan semacam ini, maka histogram cipherimageharus
berbeda atau tidak memiliki kemiripan secara statistik dengan histogram
plainimage. Pada gambar 6(1) diperlihatkan histgoram dari citra ‘mandril’
sedangkan gambar 6(2) memperlihatkan histgram dari cipherimagedari citra
‘mandril’. Gambar 6(3) merupakan histgram plainimage dari gambar ‘cameraman’
dan gambar 6(4) merupakan histogram dari cipherimage yang dihasilkan.
Dari
Gambar 6, terlihat bahwa histogram cipher-image yang berbeda signifikan dengan
histogram plain-image. Hal ini tentunya menyulitkan kriptanalisuntuk melakukan
serangan
dengan
menggunakan analisis frekuensi kemunculan nilai-nilai pixel, sebab secara
statistik keduanya tidak memiliki hubungan.
C. Analisis sensitivitas kunci
Sensitivitas kunci merupakan hal yang sangat penting dalam system kriptografi. Pada enkripsi berbasis chaos perubahan kecil pada kunci mengakibatkan hasil dekripsi yang berbeda jauh dari gambar asli. Pengujian pengaruh perubahan kunci dimaksudkan untuk melihat hasil dekripsi jika menggunakan kunci yang salah. Pengujian ini bertujuan untuk melihat kekuatan cipherimage jika dilakukan percobaan dekripsi menggunakan kunci yang berbeda. Tabel 4.1 menunjukkan pengujian yang dilakukan terhadap perubahan nilai awal (x0). Nilai x0awal yang digunakan adalah 0,05678912
D. Analisis Statistik
Untuk
melakukan analisis statistik digunakan dua parameter pengujian yaitu analisis
korelasi dan analisis nilai entropi.Penghitungan korelasi dan entropi
dilakukanuntuk menilai kualitas citra hasil enkripsi.Semakin rendah korelasi antar
pixel dansemakin tinggi entropinya, maka sistemenkripsi dapat dikatakan aman
dari serangan entropi (younes 2008). Sedangkan untuk statistik dari ukuran
ciphertext yang dihasilkan, maka disertakan hasil perubahan ukuran plainimage
setelah dilakukan enkripsi. Analisis korelasi bertujuan untuk melihat adanya keterkaitan
antara dua objek, dalam hal ini antara plainimage dengan cipherimage. Nilai
korelasi berada dalam rentan 0 sampai 1, jika bernilai 1 maka kedua objek
memiliki kesamaan, sedangkan jika nilai korelasi mendekati 0, maka tidak ada kesamaan
antara kedua objek [9]. Untuk menghitung korelasi digunakan rumus [10] :
KESIMPULAN
Penelitian
dan percobaan yang telah dilakukan menghasilkan kesimpulan sebagai berikut:
1)
Proses enkripsi dan dekripsi dapat dilakukan dengan menggunakan dua algoritma
enrkipsi berbeda yaitu menggunakan algoritma kriptografi simetris(Chaos) dan asimetris
(RSA).
2)
Penggabungan dua algoritma kriptografi akan menghasilkan ciphertext yang sulit
untuk dipecahkan, karena kriptanalis harus menggunakan dua tahap pencarian
untuk memecahkan ciphertext.
3)
Dari hasil analisis serangan yang dilakukan pada kedua algoritma enrkispsi yang
digunakan. Faktor keamanan pada algoritma enkripsi pertama ditunjukkan oleh
hasil analisis statistik yang menunjukkan bahwa rata-rata nilai entropi yang
mendekati sempurna yaitu 7,849 dan nilai korelasi antara plainimage dengan
cipherimage rata-rata bernilai 0,0479355 atau mendekati 0 sehingga diketahui tidak
ada keterkaitan antara cipherimage dengan plainimage. Hasil pengujian juga
membuktikan sensitivitas dari perubahan nilai awal chaos (X0) yang memberikan
keamanan dari serangan exhaustive attack sedangkan histogram yang dihasilkan
dari cipherimage berbeda jauh dari histogram plainimage sehingga aman dari
serangan yang bersifat statistik. Hasil analisa panjang kunci juga menunjukkan
besarnya rentan kunci yang digunakan sehingga akan menyulitkan dalam melakukan serangan
brute-force.
Komentar
Posting Komentar