JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6 1 Abstrak - Jaringan syaraf tiruan perceptron diterapkan untuk mendapatkan plainteks dari cipherteks yang sudah dienkripsi melalui proses RSA. Algoritma RSA didesain dan di implementasikan pada sistem untuk mendapatkan sampel cipherteks yang akan diuji. Jaringan syaraf tiruan didesain menjadi tiga arsitektur yang berbeda. Dalam mendekripsikan cipherteks RSA jaringan syaraf tiruan yang didesain pada sistem hanya membutuhkan informasi kunci publik yang dimiliki cipherteks. Kunci publik tersebut diperlukan pada proses pembelajaran data pada algoritma perceptron. Cipherteks yang didapatkan dari hasil enkripsi algoritma kriptografi RSA dimanfaatkan sebagai data pembelajaran pada jaringan syaraf tiruan. Kemudian dengan melakukan simulasi pembelajaran data cipherteks dari algoritma Riverst Shamir Adleman (RSA), maka dapat dibangun jaringan syaraf tiruan untuk mencari pola keterkaitan antara plainteks dengan cipherteks supaya mendapatkan plainteksnya kembali. Prilaku Jaringan Syaraf Tiruan dengan arsitektur perceptron yang berbeda dalam training data cipherteks merupakan analisis yang dilakukan pada penelitian ini. Berdasarkan hasil pengujian yang telah dicapai, didapatkan bahwa hasil pendeskripsian dengan jaringan syaraf tiruan berhasil menditeksi cipherteks RSA menjadi huruf plainteks awalnya. Kata Kunci - Asimetris, Jaringan Syaraf Tiruan Perceptron, Kriptanalisis, Kriptografi , RSA. I. PENDAHULUAN SA adalah algoritma kriptografi kunci publik paling populer yang digunakan saat ini. Algoritma ini diciptakan pada tahun 1976 oleh Rivest, Shamir, dan Adleman[1]. Popularitas dari algoritma ini bersumber pada tingkat keamanannya yang sangat baik, bersumber dari sulitnya pemfaktoran terhadap sebuah bilangan integer besar[2]. Jaringan syaraf tiruan, seperti manusia, belajar dari suatu contoh karena mempunya karakteristik yang adaptif, yaitu dapat belajar dari data-data sebelumnya dan mengenal pola data yang selalu berubah. Hal yang ingin dicapai dengan melatih jaringan saraf tiruan adalah untuk mencapai keseimbangan antara kemampuan memorisasi dan generalisasi, yang dimaksud kemampuan memorisasi adalah kemampuan jaringan saraf tiruan untuk mengambil kembali secara sempurna sebuah pola yang telah dipelajari. Kemampuan generalisasi adalah kemampuan jaringan saraf tiruan untuk menghasilkan respons yang bisa diterima terhadap pola-pola input yang serupa (namun tidak identik) dengan pola-pola yang sebelumnya telah dipelajari. Hal ini sangat bermanfaat bila pada suatu saat ke dalam jaringan saraf tiruan diinputkan informasi baru yang belum pernah dipelajari, maka jaringan saraf tiruan masih akan tetap dapat memberikan tanggapan yang baik, memberikan keluaran yang paling mendekati[3]. Sampai saat ini, berbagai pendekatan telah diusulkan sebagai metode kriptanalisis terhadap RSA. Beberapa macam serangan terhadap RSA antara lain Serangan GCD (Greatest Common Divisor), Serangan Common Modulus, Serangan Faktorisasi, Serangan Brute-Force dan Timming, Implementation Attack. Namun dari pendekatan-pendekatan tersebut masih membutuhkan waktu yang cukup lama[4]. Oleh karena itu peneliti mencoba memecahkan(cipherteks RSA) dengan cara memprediksi plainteks dengan bantuan Jaringan Syaraf Tiruan Perceptron. Tujuan dari penelitian ini yaitu mendapatkan proses pembelajaran cipherteks RSA dengan Jaringan Syaraf Tiruan yang tepat sehingga cipherteks tersebut dapat kembali ke plainteks awalnya. Kemudian membuktikan apakah jaringan syaraf tiruan mampu untuk melakukan kriptamalisis RSA sekaligus membandingkan hasil dari kinerja masing-masing neuron Perceptron yang berbeda. II. METODE PENELITIAN A. Alat Penelitian Kebutuhan hardware dalam aplikasi perancangan system kriptanalisis RSA menggunakan jaringan syaraf tiruan Perceptron mulai dari tahap desain, perancangan, dan implementasinya menggunakan sebuah perangkat komputer dengan spesifikasi Processor Intel(R) Core(TM)2 Duo CPU T6500 2.10GHz, RAM 2,00 GB, VGA Memory Intel GMA 4500MHD, Harddisk 320GB. Adapun untuk kebutuhan software dalam aplikasi perancangan system kriptanalisis RSA menggunakan jaringan syaraf tiruan Perceptron mulai dari tahap desain, perancangan, dan implementasinya menggunakan sebuah perangkat komputer dengan spesifikasi Sistem Operasi Windows 8, Netbeans IDE 7.2.1 B. Perancangann Arsitektur Perceptron Jaringan syaraf tiruan pada tugas akhir ini memiliki 3 arsitektur berbeda, yaitu : klasifikasi 8 kategori, klasifikasi 27 kategori dan klasifikasi 53 kategori. Tujuan dibedakanya setiap kategori supaya mendapatkan arsitektur yang optimal dalam mendapatkan plainteks kembali. Berikut penjelasan setiap arsitektur tersebut. Perancangan Sistem Kriptanalisis RSA Menggunakan Jaringan Syaraf Tiruan Perceptron Rimico Adyaksyah dan M Isa Irawan Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Teknologi Sepuluh Nopember Surabaya E-mail: [email protected]R
6
Embed
Perancangan Sistem Kriptanalisis RSA Menggunakan Jaringan ...
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6
1
Abstrak - Jaringan syaraf tiruan perceptron diterapkan untuk
mendapatkan plainteks dari cipherteks yang sudah dienkripsi
melalui proses RSA. Algoritma RSA didesain dan di
implementasikan pada sistem untuk mendapatkan sampel
cipherteks yang akan diuji. Jaringan syaraf tiruan didesain
menjadi tiga arsitektur yang berbeda. Dalam mendekripsikan
cipherteks RSA jaringan syaraf tiruan yang didesain pada sistem
hanya membutuhkan informasi kunci publik yang dimiliki
cipherteks. Kunci publik tersebut diperlukan pada proses
pembelajaran data pada algoritma perceptron. Cipherteks yang
didapatkan dari hasil enkripsi algoritma kriptografi RSA
dimanfaatkan sebagai data pembelajaran pada jaringan syaraf
tiruan. Kemudian dengan melakukan simulasi pembelajaran
data cipherteks dari algoritma Riverst Shamir Adleman (RSA),
maka dapat dibangun jaringan syaraf tiruan untuk mencari pola
keterkaitan antara plainteks dengan cipherteks supaya
mendapatkan plainteksnya kembali. Prilaku Jaringan Syaraf
Tiruan dengan arsitektur perceptron yang berbeda dalam
training data cipherteks merupakan analisis yang dilakukan
pada penelitian ini. Berdasarkan hasil pengujian yang telah
dicapai, didapatkan bahwa hasil pendeskripsian dengan jaringan
syaraf tiruan berhasil menditeksi cipherteks RSA menjadi huruf
plainteks awalnya.
Kata Kunci - Asimetris, Jaringan Syaraf Tiruan Perceptron,
Kriptanalisis, Kriptografi , RSA.
I. PENDAHULUAN
SA adalah algoritma kriptografi kunci publik paling
populer yang digunakan saat ini. Algoritma ini diciptakan
pada tahun 1976 oleh Rivest, Shamir, dan Adleman[1].
Popularitas dari algoritma ini bersumber pada tingkat
keamanannya yang sangat baik, bersumber dari sulitnya
pemfaktoran terhadap sebuah bilangan integer besar[2].
Jaringan syaraf tiruan, seperti manusia, belajar dari suatu
contoh karena mempunya karakteristik yang adaptif, yaitu
dapat belajar dari data-data sebelumnya dan mengenal pola
data yang selalu berubah. Hal yang ingin dicapai dengan
melatih jaringan saraf tiruan adalah untuk mencapai
keseimbangan antara kemampuan memorisasi dan
generalisasi, yang dimaksud kemampuan memorisasi adalah
kemampuan jaringan saraf tiruan untuk mengambil kembali
secara sempurna sebuah pola yang telah dipelajari.
Kemampuan generalisasi adalah kemampuan jaringan saraf
tiruan untuk menghasilkan respons yang bisa diterima
terhadap pola-pola input yang serupa (namun tidak identik)
dengan pola-pola yang sebelumnya telah dipelajari. Hal ini
sangat bermanfaat bila pada suatu saat ke dalam jaringan saraf
tiruan diinputkan informasi baru yang belum pernah
dipelajari, maka jaringan saraf tiruan masih akan tetap dapat
memberikan tanggapan yang baik, memberikan keluaran yang
paling mendekati[3].
Sampai saat ini, berbagai pendekatan telah diusulkan
sebagai metode kriptanalisis terhadap RSA. Beberapa macam
serangan terhadap RSA antara lain Serangan GCD (Greatest
Common Divisor), Serangan Common Modulus, Serangan
Faktorisasi, Serangan Brute-Force dan Timming,
Implementation Attack. Namun dari pendekatan-pendekatan
tersebut masih membutuhkan waktu yang cukup lama[4]. Oleh
karena itu peneliti mencoba memecahkan(cipherteks RSA)
dengan cara memprediksi plainteks dengan bantuan Jaringan
Syaraf Tiruan Perceptron.
Tujuan dari penelitian ini yaitu mendapatkan proses
pembelajaran cipherteks RSA dengan Jaringan Syaraf Tiruan
yang tepat sehingga cipherteks tersebut dapat kembali ke
plainteks awalnya. Kemudian membuktikan apakah jaringan
syaraf tiruan mampu untuk melakukan kriptamalisis RSA
sekaligus membandingkan hasil dari kinerja masing-masing
neuron Perceptron yang berbeda.
II. METODE PENELITIAN
A. Alat Penelitian
Kebutuhan hardware dalam aplikasi perancangan system
kriptanalisis RSA menggunakan jaringan syaraf tiruan
Perceptron mulai dari tahap desain, perancangan, dan
implementasinya menggunakan sebuah perangkat komputer
dengan spesifikasi Processor Intel(R) Core(TM)2 Duo CPU
T6500 2.10GHz, RAM 2,00 GB, VGA Memory Intel GMA
4500MHD, Harddisk 320GB.
Adapun untuk kebutuhan software dalam aplikasi
perancangan system kriptanalisis RSA menggunakan jaringan
syaraf tiruan Perceptron mulai dari tahap desain, perancangan,
dan implementasinya menggunakan sebuah perangkat
komputer dengan spesifikasi Sistem Operasi Windows 8,
Netbeans IDE 7.2.1
B. Perancangann Arsitektur Perceptron
Jaringan syaraf tiruan pada tugas akhir ini memiliki 3
arsitektur berbeda, yaitu : klasifikasi 8 kategori, klasifikasi 27
kategori dan klasifikasi 53 kategori. Tujuan dibedakanya
setiap kategori supaya mendapatkan arsitektur yang optimal
dalam mendapatkan plainteks kembali. Berikut penjelasan
Sistem pendekripsian cipherteks menggunakan neuron 8
cukup berhasil dengan keakuratan mendekripsi cipherteks
dengan public key yang sudah di training sebesar 95,2%.
Namun kekurangan pada neuron ini tidak bisa mendekripsikan
cipherteks menjadi huruf besar, bahkan plainteks yang
seharusnya dihasilkan menjadi huruf besar dianggap dengan
huruf kecil yang lain. Hal ini disebabkan jumlah data
pembelajaran pada neuron ini terbatas, sebanyak 26 data huruf
dan “ spasi” sehingga jika data huruf diperbanyak lagi neuron
ini tidak menghasilkan nilai eror yang ditargetkan dan
berdampak pada pendekripsian yang salah total seperti yang
ditampilkan pada Gambar 3.1.
Keberhasilan sistem pendekripsian cipherteks yang sudah di
training menggunakan neuron 27 sama dengan neuron 8
sebanyak 95,2%. Bedanya disini dalam kasus mendekripsikan
huruf besar sudah cukup teratasi dengan mengembalikan ke
plainteks yang sama namun masih dianggap sebagai huruf
kecil, seperti kesalahan neuron 8 yang terjadi pada karakter
“K,R,S,A”, karakter tersebut dalam neuron ini dianggap
sebagai “k,r,s,a” dan untuk simbol “-” masih belum bisa
didekripsikan dengan baik. Selanjutnya sama dengan neuron
8, keakuratan neuron ini dalam menguji cipherteks yang kunci
publiknya belum di training sebesar 0% atau bisa dikatakan
proses pengujian gagal total. Hal ini disebabkan oleh nilai
bobot keluaran dari sample uji yang dihasilkan mendekati
dengan nilai target untuk data yang sudah di training.
Keberhasilan sistem pendekripsian cipherteks yang sudah di
training neuron 53 sama dengan neuron 27, namun untuk
mendekripsikan huruf disini lebih tepat dan perbedaan
pengembalian huruf besar dan huruf kecil disini menjadi lebih
berhasil. Masalah pada neuron 27 yang menganggap karakter
“K,R,S,A” sebagai karakter “k,r,s,a” sudah dapat teratasi pada
neuron ini. Namun simbol ”-” masih belum bisa didapatkan
dengan baik. Hal ini dikarenakan proses pembelajaran neuron
53 hanya bisa membaca [(spasi),huruf besar, dan huruf kecil]
jadi jika terdapat sebuah angka/simbol selain itu didalam
plainteks masih belum bisa didekripsikan secara tepat. Nilai
keberhasilan pada pendekripsian cipherteks yang sudah di
training neuron 53 sebesar 99%. Dimana hanya terdapat satu
saja kesalahan yaitu pada pendekripsian untuk mendapatkan
simbol ”-”.
Dari 3 pengujian neuron yang dilakukan didapat hasil
keakuratan dari sistem jaringan syaraf tiruan yang ditunjukkan
pada Tabel 5.1Berikut ini.
VI. KESIMPULAN/RINGKASAN
Berdasarkan analisis terhadap hasil pengujian sistem
kriptanalisis RSA menggunakan algoritma Jaringan Syaraf
Tiruan Perceptron, maka dapat diambil beberapa kesimpulan
sebagai berikut:
1. Besarnya epoch berpengaruh terhadap lamanya waktu
yang diperlukan untuk proses training. Kesalahan dalam
proses training akan berpengaruh pada nilai eror yang
didapat. Nilai eror yang ditampilkan pada grafik eror
tergantung pada settingan learning rate pada setiap neuron
yang berbeda. Semakin besar neuron yang di desain, nilai
eror proses pembelajaran semakin kecil.
2. Faktor pemilihan jenis neuron pada proses pembelajaran
berpengaruh pada hasil kriptanalisis. Dengan neuron 8
keberhasilan data yang di training 95,2% dan data yang
tidak di training 0%. Dengan neuron 27 keberhasilan data
yang di training 95,2% dan data yang tidak di training 0%.
Dengan neuron 53 keberhasilan data yang di training 99%
dan data yang tidak di training 0%.
3. Dalam pendekripsian cipherteks, jika kunci publik RSA di
pelajari terlebih dahulu dengan jaringan syaraf tiruan.
Neuron 53 memperoleh hasil yang lebih baik untuk
mendapatkan plainteks awalnya. Jika kunci publik RSA
tidak di training terlebih dahulu dengan jaringan syaraf
tiruan, tidak ada satupun Neuron yang memperoleh hasil
yang diharapkan untuk mendapatkan plainteks awalnya.
Hal ini disebabkan karena konteks jaringan syaraf tiruan
pada sistem yang memahami jenis data yang sudah di
simpan/training.
DAFTAR PUSTAKA
[1] A.Shamir. 1995. RSA For Paranoids. RSA Laboratories
Volume 1, Number 3 – Autumn.
[2] R.Statica. 2003. New Approach To Cryptanalysis of RSA.
New Jersey Institute of Technology.
[3] Puspitaningrum, Diyah. 2006. Pengantar Jaringan Saraf
Tiruan. Yogyakarta : Penerbit Andi.
[4] Ariyunus, Dony. 2005. Kriptografi Keamanan Data dan
Komunikasi. Yogyakarta : Andi Offset
[5] Fausett, Laurence. 1994. Fundamentals of Neural Networks.
New Jersey : Printice-Hall Inc.
Tabel 4.3 Hasil Uji Coba Neuron 53 No Kriteria Hasil data
Sample 1 Sample 2
1 Waktu enkripsi RSA(detik) 0,026 0,020 2 Waktu dekripsi RSA(detik) 67,566 172,988 3 Waktu testing JST(detik) 0.0050 0,0041 4 Plainteks berhasil dikenali 105 0 5 Plainteks gagal dikenali 1 106 6 Panjang cipherteks(karakter) 322 322 7 Akurasi (%) 99 0
Tabel 5.1 Perbandingan Persentase Keberhasilan Hasil Pembelajaran