1 Analisis Algoritma dan Keaman an pada Kriptografi Kurva EliptikJasson Prestiliano (972009005) Magister Sistem Informasi Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60 Salatiga 50711 [email protected]AbstrakAlgoritma kriptografi untuk mengamankan data masih terus dikembangkan, di mana salah satunya adalah Algoritma Kriptografi Kurva Eliptik. Algoritma ini termasuk ke dalam sistem sistem kriptografi kunci publik yang mendasarkan keamanannya pada permasalahan matematis kurva eliptik. Algoritma ini memiliki keuntungan jika dibandingkan dengan algoritma kriptografi kunci publik lainnya yaitu dalam hal ukuran panjang kunci yang lebih pendek tetapi memiliki tingkat keamanan yang sama. Ada dua protokol yang dibahas di dalam jurnal ini, yaitu ECDSA ( Elliptic Curve Digital Signature Algorithm)dan ECDH ( Elliptic Curve Diffie Hellman ). Jurnal ini membahas tentang analisis algoritmanya, bagaimana mempergunakan algoritma tersebut dan keamanan algoritma ini bila dibandingkan dengan RSA 1024. 1.Pendahuluan Sebuah data penting biasanya disimpan di dalam basis data bila telah dienkripsi, agar bila ada yang mencoba menyerang sistem, data tersebut tidak dapat diketahui begitu saja. Namun, sebaik apapun enkripsi dari data tersebut, selalu ada algoritma untuk memecahkannya, walaupun membutuhkan waktu yang tidak sedikit untuk memecahkannya. Apabila data yang telah dienkripsi tersebut berhasil dipecahkan oleh sang penyerang, maka keamanan data yang ada di dalam sistem berada dalam bahaya. Karena itu sampai saat ini masih terus dikembangkan sistem-sistem yang dapat dipakai untuk men gamankan data tersebut Ilmu kriptografi adalah ilmu yang mempelajari tentang penyembunyian huruf atau tulisan sehingga membuat tulisan tersebut tidak dapat dibaca oleh orang yang tidak berkepentingan[1]. Kriptografi sudah dipakai sejak jaman Julius Caesar dimana akan mengirimkan pesan kepada panglimanya tetapi tidak mempercayai kurir pembawa pesan tersebut. Kriptografi terus menerus dikembangkan dari sisi kerumitan algoritma dan pembentukan kunci. Dan di antara algoritma-algoritma tersebut ada yang mudah dipecahkan dan ada yang sulit untuk dipecahkan. Di dalam jurnal ini dibahas tentang sebuah algoritma yang disebut Kriptografi Kurva Eliptik.
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.
Algoritma kriptografi untuk mengamankan data masih terus dikembangkan, dimana salah satunya adalah Algoritma Kriptografi Kurva Eliptik. Algoritma ini
termasuk ke dalam sistem sistem kriptografi kunci publik yang mendasarkankeamanannya pada permasalahan matematis kurva eliptik. Algoritma ini memilikikeuntungan jika dibandingkan dengan algoritma kriptografi kunci publik lainnya
yaitu dalam hal ukuran panjang kunci yang lebih pendek tetapi memiliki tingkat
keamanan yang sama. Ada dua protokol yang dibahas di dalam jurnal ini, yaitu
ECDSA ( Elliptic Curve Digital Signature Algorithm) dan ECDH ( Elliptic Curve
Diffie Hellman). Jurnal ini membahas tentang analisis algoritmanya, bagaimana
mempergunakan algoritma tersebut dan keamanan algoritma ini bila dibandingkan
dengan RSA 1024.
1. Pendahuluan
Sebuah data penting biasanya disimpan di dalam basis data bila telah dienkripsi, agar bila
ada yang mencoba menyerang sistem, data tersebut tidak dapat diketahui begitu saja. Namun,sebaik apapun enkripsi dari data tersebut, selalu ada algoritma untuk memecahkannya, walaupun
membutuhkan waktu yang tidak sedikit untuk memecahkannya.
Apabila data yang telah dienkripsi tersebut berhasil dipecahkan oleh sang penyerang,maka keamanan data yang ada di dalam sistem berada dalam bahaya. Karena itu sampai saat ini
masih terus dikembangkan sistem-sistem yang dapat dipakai untuk mengamankan data tersebut
Ilmu kriptografi adalah ilmu yang mempelajari tentang penyembunyian huruf atau tulisan
sehingga membuat tulisan tersebut tidak dapat dibaca oleh orang yang tidak berkepentingan[1].Kriptografi sudah dipakai sejak jaman Julius Caesar dimana akan mengirimkan pesan kepada
panglimanya tetapi tidak mempercayai kurir pembawa pesan tersebut.Kriptografi terus menerus dikembangkan dari sisi kerumitan algoritma dan pembentukan
kunci. Dan di antara algoritma-algoritma tersebut ada yang mudah dipecahkan dan ada yang sulit
untuk dipecahkan. Di dalam jurnal ini dibahas tentang sebuah algoritma yang disebut Kriptografi
Kriptografi mempunyai 2 (dua) bagian yang penting, yaitu enkripsi dan dekripsi. Enkripsi
adalah proses dari penyandian pesan asli menjadi pesan yang tidak dapat diartikan sepertiAslinya. Dekripsi sendiri berarti merubah pesan yang sudah disandikan menjadi pesan aslinya.
Pesan asli biasanya disebut plaintext , sedangkan pesan yang sudah disandikan disebutciphertext [1].
Pada Gambar 1 dapat dilihat bahwa masukan berupa plaintext akan masuk ke dalam blok
enkripsi dan keluarannya akan berupa ciphertext , kemudian ciphertext akan masuk ke dalam
blok dekripsi dan keluarannya akan kembali menjadi plaintext semula.
Gambar 1 Enkripsi dan Dekripsi
Ada 2 (dua) model algoritma enkripsi yang menggunakan kunci, yaitu kunci simetrik dan
kunci asimetrik[2, 3]. Enkripsi kunci simetrik yang biasanya disebut enkripsi konvensionaladalah enkripsi yang menggunakan kunci yang sama untuk enkripsi maupun dekripsi, dari
Gambar 2 terlihat bahwa untuk mengenkripsi maupun mendekripsi pesan hanya menggunakan
satu buah kunci (K) saja.
Gambar 2 Enkripsi-dekripsi Kunci Simetrik
Penggunaan metode ini membutuhkan persetujuan antara pengirim dan penerima tentang
kunci sebelum mereka saling mengirim pesan. Keamanan dari kunci simetrik tergantung padakerahasiaan kunci, apabila seorang penyusup dapat menemukan kunci maka dengan mudah dapat
membaca pesan yang sudah dienkripsi.Enkripsi kunci simetrik dapat dibagi kedalam 2 (dua) kelompok yaitu metode stream
cipher dan metode block cipher . Enkripsi kunci asimetrik (biasa disebut enkripsi kunci publik)
dibuat sedemikian rupa sehingga kunci yang dipakai untuk enkripsi berbeda dengan kunci yang
dipakai untuk dekripsi. Enkripsi kunci public disebut demikian karena kunci untuk enkripsi boleh disebarluaskan kepada umum sedangkan kunci untuk mendekripsi hanya disimpan oleh
orang yang bersangkutan. Enkripsi asimetrik dapat ditulis seperti berikut:
Contohnya seperti pada Gambar 2.3 bila seseorang ingin mengirim pesan kepada oranglain maka orang tersebut menggunakan kunci public orang tersebut untuk mengenkripsi pesan
yang kita kirim kepadanya lalu orang tersebut akan mendekripsi pesan tersebut dengan kunci privatmiliknya.
Gambar 3 Enkripsi Kunci Asimetrik
Seperti juga perkembangan ilmu kriptografi, tujuan-tujuan dari kriptografi teruslah
berkembang. Bila pertama kali dibuat hanya untuk keamanan data saja, tetapi sekarang semakin banyak tujuan-tujuan yang ingin dicapai[1], yaitu:
1. Privasi, Musuh tidak dapat membongkar tulisan yang kita kirim.
2. Autentikasi, Penerima pesan dapat meyakinkan dirinya bahwa pesan yang diterima tidak terjadi perubahan dan berasal dari orang yang diinginkan.
3. Tanda tangan, penerima pesan dapat meyakinkan pihak ketiga bahwa pesan yang
diterima berasal dari orang yang diinginkan.4. Minimal , Tidak ada yang dapat berkomunikasi dengan pihak lain kecuali berkomunikasi
dengan pihak yang diinginkan.
5. Pertukaran bersama, suatu nilai (misalnya tanda tangan sebuah kontrak) tidak akandikeluarkan sebelum nilai lainnya (misalnya tanda tangan pihak lain) diterima.
6. Koordinasi, di dalam komunikasi dengan banyak pihak, setiap pihak dapat berkoordinasiuntuk tujuan yang sama walaupun terdapat kehadiran musuh.
3. Kriptografi Kurva Eliptik
Elliptic Curve Cryptography atau Kriptografi Kurva Eliptik adalah sebuah algoritmakriptografi kunci publik, yaitu algoritma di mana setiap pihaknya memiliki sepasang kunci privat
dan kunci publik. Kunci privat hanya dimiliki oleh pribadi-pribadi yang berkepentingan,
sedangkan kunci publik disebarluaskan ke semua pihak [2].Pendekatan yang dilakukan untuk menghasilkan algoritma Kriptografi Kurva Eliptik
adalah dengan menggunakan struktur matematika yang sangat unik yang memungkinkan
pemrosesan titik dengan memiliki dua buah titik dalam sebuah kurva eliptik dan menghasilkan
sebuah titik lain yang ada pada kurva tersebut. Struktur yang unik ini memberikan keuntungandalam kriptografi dikarenakan kesulitan untuk menemukan 2 buah titik yang menentukan sebuah
titik tertentu tersebut tidak dapat ditemukan dengan mudah.Tingkat kesulitan untuk menemukan
2 buah titik termasuk dalam golongan yang rumit sama seperti kesulitan untuk memperhitungkan
variasi eksponensial yang digunakan dalam algoritma RSA yang telah banyak
diimplementasikan. Untuk memecahkan Kriptografi Kurva Eliptik sendiri dibutuhkan
perhitungan matematis yang sangat tinggi.Kriptografi Kurva Eliptik terdiri dari beberapa operasi basic dan juga aturan yang
mendefinisikan penggunaan dari operasi operasi basic seperti penambahan, pengurangan,
perkalian dan perpangkatan yang didefinisikan sesuai dengan kurva-kurva yang ada.Operasi matematika yang digunakan pada Elliptic Curve Cryptography didefinisikan dengan
persamaan
y2 = x3 + ax + b dengan 4a3+27b2 ≠ 0 Setiap prubahan nilai dari ‘a’ dan’b’ akan menghasilkan elliptic curve yang berbeda. Contoh
Elliptic Curve bisa dilihat pada Gambar 4 di mana Gambar 4(a) merupakan representasi kurva
eliptik dari y2 = x3 -12x + 3 sedangkan Gambar 4(b) merupakan representasi kurva
eliptik dari y2 = x3 -2x + 1. [3]
(a) (b)
Gambar 4 Beberapa Representasi Kurva Eliptik [2, 3]
Setiap kurva eliptik akan mendefinisikan kumpulan titik pada bidang dan dapat
membentuk kumpulan albelian (kumpulan titik dangan titik tak hingga sebagai elemen identitas).Jika nilai x dan y yang dipilih adalah daerah terbatas (finit) yang besar, solusi akan menghasilkan
suatu albelian finite. Kurva ellips yang digunakan dalam Kriptografi Kurva Eliptik didefinisikan
dengan dua buah bidang terbatas.Kunci publik pada algoritma Kriptografi Kurva Eliptik adalah sebuah titik pada kurva
eliptik dan kunci privatnya adalah sebuah angka random. Kunci publik diperoleh dengan
melakukan operasi perkalian terhadap kunci privat dengan titik generator G pada kurva eliptik.Keamanan Kriptografi Kurva Eliptik bergantung pada masalah logaritma diskrit yang
sulit untuk dipecahkan. Misalnya P dan Q adalah dua titik pada suatu kurva eliptik, sedemikian
rupa sehingga kP = Q, di mana k adalah sebuah nilai skalar. Dengan mengetahui nilai P dan Q,
tidak mungkin bisa mendapatkan nilai k , jika k adalah nilai yang sangat besar. k adalah
logaritma diskrit basis P terhadap Q.
Ada tiga operasi yang perlu dijabarkan dalan Kriptografi Kurva Eliptik ini. Operasi-operasitersebut antara lain perkalian titik, pertambahan titik dan penggandaan titik. Namun semua
operasi tersebut berawal mula dari operasi Perkalian titik. Oleh karena itu, operasi utama pada
Kriptografi Kurva Eliptik adalah perkalian titik.[4]Pada operasi Perkalian Titik, sebuah titik P pada kurva eliptik dikalikan dengan bilangan
skalar k dengan menggunakan persamaan kurva eliptik untuk mendapatkan titik Q pada kurva
eliptik yang sama. Dengan demikian kP = Q. Perkalian titik didapatkan dengan melakukan dua
operasi dasar kurva eliptik sebagai berikut :a. Operasi pertambahan titik, yaitu menambahkan dua buah titik J dan K untuk
mendapatkan titik L. Dengan demikian L = 2J.
b. Operasi penggandaan titik, yaitu menambahkan titik J dengan dirinya sendiri untuk mendapatkan titik L. Dengan demikian L = 2J.
Pada operasi pertambahan titik, dua buah titik J dan K pada sebuah kurva eliptik
ditambahkan satu sama lain untuk mendapatkan titik L pada kurva eliptik yang sama. Perhatikan
Gambar 5 sebagai representasi Pertambahan titik pada Kurva Eliptik.
Gambar 5 Representasi Contoh Operasi Pertambahan Titik pada Kurva Eliptik [4]
Pada Gambar 5, titik J dan K adalah titik yang berada pada kurva eliptik. Jika K ≠ -J
maka sebuah garis yang melewati J dan K akan memotong kurva eliptik dan melewati sebuahtitik –L. Pencerminan dari –L terhadap sumbu X akan menghasilkan titik L, yang merupakan
hasil dari penambahan J dan K.
Penggandaan titik adalah penambahan titik J pada kurva eliptik dengan dirinya sendiriuntuk mendapatkan titik L pada kurva eliptik yang sama. Untuk mendapatkan L dengan
menggandakan titik J, sehingga L = 2J, misalkan ada sebuah titik J pada kurva eliptik. Jika
ordinat titik J tidak sama dengan nol, maka garis yang tangen pada J akan melalui –L. –L adalah
pencerminan L terhadap sumbu X, dengan demikian L = 2J. Perhatikan Gambar 6 sebagai
representasi operasi penggandaan titik.
Gambar 6 Representasi Contoh Operasi Penggandaan Titik pada Kurva Eliptik [4]
4. Jenis-jenis Kriptografi Kurva Eliptik
Ada dua jenis kriptografi kurva eliptik yang dibahas, yaitu algoritma penandatanganan pesan yang disebut dengan ECDSA ( Elliptic Curve Digital Signature Algorithm) dan ECDH
( Elliptic Curve Diffie Hellman).
4.1. ECDSA ( Elliptic Curve Digital Signature Algorithm)
Algoritma penandatanganan pesan menggunakan Kriptografi Kurva Eliptik yangdisebutkan sebagai ECDSA adalah salah satu variasi dari Digital Signature Algorithm yang
beroperasi dengan kelompok kurva eliptik sebagai basis perhitungan dari proses
penandatanganan. Agar dapat menyamakan suatu tanda tangan digital dari sebuah pesan yangdikirim oleh dua orang, maka kedua orang tersebut harus memiliki kurva elliptic yang sama.
Seorang pngirim pesan yang akan ditandatangani akan memiliki sebuah kunci pribadi
yang merupakan sbuah integer yang dipilih acak kurang dari n yang merupakan urutan kurva, pada meter kurva eliptik domain. Dan kunci publik yang merupakan titik yang dibangkitkan
dengan kurva eliptik domain dngan perhitungan sebagai berikut:
QA = dA * G
Pembangkitan Kunci:
1. Memilih sebuah bilangan bulat random dA, yang nilainya diantara [1,n-1]
1. Memilih sebuah bilangan bulat random k , yang nilainya diantara [1,n-1].
2. Menghitung QA = k * G = (x1,y1) dan r = x1 mod n, jika r = 0, maka kembali ke langkah 1.3. Menghitung k-1 mod n
4. Menghitung e = Hash(m)
5. Menghitung s = k-1 {e+dA * r} mod n tanda tangan si pengirim untuk message m adalah (r,s)
Verifikasi Tanda Tangan Digital:
1. Memverifikasi bahwa r dan s adalah bilangan bulat yang antara [1,n-1]
2. Menghitung e = Hash (m)
3. Menghitung w = s-1 mod n
4. Menghitung u1 = ew mod n dan u2 = rw mod n
5. Menghitung u1 * G + u2 * QA = (x1,y1)
6. Menghitung v = x1 mod n
7. Menerima tanda tangan jika dan hanya jika v = r
Seperti dengan kriptografi kurva eliptik pada umumnya, ukuran bit dari kunci publik diyakini diperlukan untuk ECDSA adalah sekitar dua kali ukuran tingkat keamanan, dalam bit.
Sebagai perbandingan, pada tingkat keamanan 80 bit, berarti penyerang membutuhkan sekitar
setara dengan sekitar 280 generasi tanda tangan untuk menemukan kunci pribadi, ukuran kunciDSA publik setidaknya 1024 bit, sedangkan ukuran sebuah kunci publik ECDSA akan menjadi
160 bit. Di sisi lain, ukuran tanda tangan adalah sama untuk kedua DSA dan ECDSA: 4t bit,
dimana t adalah tingkat keamanan yang diukur dalam bit, yaitu, sekitar 320 bit untuk tingkatkeamanan 80 bit[5].
4.2. ECDH (Elliptic Curve Diffie Hellman).
ECDH ( Elliptic Curve Diffie Hellman) adalah sebuah protokol perjanjian kunci yangmemungkinkan dua pihak pengirim dan penerima , yang pada awalnya masing-masing memiliki
kurva eliptik sepasang kunci publik-privat masing-masing, dan mengirimkan sebuah kunci
rahasia bersama melalui saluran yang tidak aman. Ini adalah varian dari protokol Diffie-Hellman
yang digunakan untuk menyamakan kunci untuk menggunakan kriptografi kurva eliptik.Misalkan Pengirim ingin menyepakati sebuah kunci bersama dengan Penerima, tapi
saluran hanya tersedia bagi mereka mungkin disadap oleh pihak ketiga. Awalnya, parameter
domain yaitu (p, a, b, G, n, h) dalam kasus perdana atau (m, f (x), a, b, G, n, h) dalam kasus biner) harus disepakati. Selain itu, masing-masing pihak harus memiliki sepasang kunci yang
cocok untuk kriptografi kurva eliptik, terdiri dari sebuah kunci pribadi d: (a integer yang dipilih
secara acak dalam interval [1n - 1]), dan kunci publik Q (mana Q = DG). sepasang kunci
Pengirim (dA, QA) dan sepasang kunci Penerima (dB,QB). Setiap pihak harus memiliki kunci publik pihak lain (pertukaran harus terjadi).
Pengirim menghitung (xk, yk) dAQB =. Penerima menghitung k = dBQA. Kunci berbagiadalah xk (koordinat x dari titik tersebut). Jumlah hasil penghitungan oleh kedua belah pihak
seharusnya menghasilkan jumlah yang sama, karena dAQB = dAdBG = dBdAG = dBQA.
Protokol aman karena tidak ada yang diungkapkan (kecuali untuk kunci publik, yang tidak
rahasia), dan tidak ada pihak yang dapat menurunkan kunci pribadi yang lain kecuali dapatmemecahkan prosesor aritmatika Kurva Logaritma Diskrit.
Kriptografi kurva eliptik dapat digunakan untuk mengenkripsi pesan ( plain text ), M,
menjadi chiper text s. Pesan M di enkripsi menjadi PM dari himpunan terbatas dari titik-titik dalam lingkup eliptik, Ep(a, b).
Langkah awal yang dilakukan yaitu memilih sebuah titik Generator atau G, di mana G ∈ Ep(a,
b), di mana nilai terkecil dari n di dalam nG = O adalah sebuah bilangan prima yang sangat
besar. Kurva eliptik Ep(a, b) dan titik Generator G dibuat menjadi kunci publik [3].Setiap pengguna memilih sebuah kunci privat, n A < n dan menghitung kunci publik P A
sebagai: P A = n AG. Untuk mengenkripsi pesan PM untuk user B, maka user A memilih sebuah
bilangan bulat (integer ) acak k dan menghitung chiper text yang merupakan pasangan titik PC
menggunakan kunci publik dari user B:
P C = [(kG ), (P M + kP B )]
Setelah menerima pasangan titik dari chiper text , P C , user B mengalikan titik pertama, (kG)
dengan kunci privat yang dimilikinya, nB, kemudian menambahkan hasilnya ke dalam titik
kedua di dalam pasangan titik dari chiper text , ( PM + kPB):
(P M + kP B ) − [n B (kG )] = (P M + kn B G ) − [n B (kG )] = P M
Yang mana merupakan titik dari pesan ( plain text ), berkorespondensi ke pesan M. Hanya
user B yang mengetahui kunci privat n B, yang dapat melepaskan nB(kG) dari titik kedua dari dari pasangan titik cipher text , misalnya ( P M + kP B), dan oleh karenanya mengambil informasi dari
pesan P M .
Contoh Enkripsi dengan menggunakan Kriptografi Kurva Eliptik. Diketahui terdapatkurva eliptik sebagai berikut:
y 2 = x 3 + ax + b mod p y 2 = x 3 − x + 188 mod 751
dari persamaan tersebut didapatkan a = −1, b = 188, and p = 751. Grup Kurva Eliptik kemudian
dibangkitkan oleh kurva eliptik yaitu Ep(a, b) = E 751(−1 , 188). Titik Generator point G = (0 ,
376). Kemudian perkalian kG dari titik Generator G adalah (untuk 1 ≤ k ≤ 751):
Jika user A ingin mengirim pesan M kepada user B yang telah dienkripsi menjadi titik
plain text PM = (443 , 253) ϵ E 751(−1 , 188). User A harus menggunakan kunci publik user B
untuk mengenkripsinya. Misalnya user B memiliki kunci rahasia atau kunci privat n B = 85, makakunci publiknya adalah:
P B = n B G = 85(0, 376)P B = (671, 558)
User A memilih angka acak, misalnya k = 113 dan menggunakan kunci publik user B P B = (671 ,558) untuk mengenkripsi titik pesan menjadi pasangan titik cipher text pair of points:
P C = [(kG ), (P M + kP B )]P C = [113 × (0, 376), (443, 253) + 113 × (671, 558)]P C = [(34, 633), (443, 253) + (47, 416)]P C = [(34, 633), (217, 606)]
Ketika menerima pasangan titik dari cipher text , P C = [(34 , 633) , (217 , 606)], user B
menggunakan kunci privatnya nB = 85, untuk menghitung titik pesan ( plain text ), P M , sebagai
Dan titik koordinat dari pesan ( plain text ) P M = (443 , 253) kembali menjadi pesan asli M .
6. Analisis Tingkat Keamanan Kriptografi Kurva Eliptik
Tingkat keamanan pada sistem kriptografi kunci publik adalah berapa waktu yang
diperlukan untuk memecahkan suatu kunci rahasia berdasarkan persamaan matematis yangdimiliki oleh algoritma kriptografinya. RSA ( Rivet Shamir Addleman) termasuk ke dalam
termasuk ke dalam ECDLP ( Elliptic Curve Discrete Logarithm Problem).
Tingkat keamanan dihitung berdasarkan panjang kunci dari masing-masing algoritmakriptografi, parameter kunci RSA yang digunakan adalah panjang bit n, yaitu perkalian antara
faktor prima P dan Q, sedangkan untuk Kriptografi Kurva Eliptik parameter kunci yang
digunakan juga panjang bit n, tetapi merupakan orde dari titik basis yang digunakan dalam persamaan kurva eliptik.
Untuk memecahkan persamaan matematis tersebut harus digunakan software danhardware yang terbaik. Algoritma terbaik yang diketahui untuk menyelesaikan IFP pada RSAadalah algoritma General Purposed Number Field Sieve yang memiliki kompleksitas algoritma
Ơ = exp [1,923 (ln n)1/3 (ln ln n)2/3], sedangkan untuk menyelesaikan ECDLP pada Kriptografi
Kurva Eliptik, terkhusus pada ECDSA adalah Pollard Rho Method Attacks yang memiliki Ơ = 2
n/2. Jika diasumsikan hardware yang digunakan mampu menjalankan 1000000 instruksi per
detik (1 MIPS (Million Instruction per Second )) maka akan dihitung tingkat keamanan kunci
ECDSA [5]. Misalkan untuk n = 149 bit , maka tingkat keamanan dihitung sebagai berikut :
MIPS = 2 149/2 / 1000000.3600.24.365 = 598981035 MIPS years
Dengan cara yang sama dihitung tingkat keamanan untuk kunci dengan panjang bit nyang berbedabeda sehingga diperoleh tabel hubungan panjang kunci kriptografi kurva eliptik yang lebih spesifik pada metode ECDSA dengan tingkat keamanannya dapat dilihat pada Tabel
1. Sedangkan untuk hubungan panjang kunci RSA dan tingkat keamanannya dapat dilihat dalam
Tabel 2.
Tabel 1 Hubungan Panjang Kunci dengan Tingkat keamanan pada Kriptografi Kurva Eliptik
Tabel 2 Hubungan Panjang Kunci dengan Tingkat keamanan pada RSA
Hubungan antara tingkat keamanan RSA dan Kriptografi Kurva Eliptik yang lebih
dikhususkan pada ECDSA dapat dilihat pada grafik yang terdapat di dalam Gambar 7.
Gambar 7 Perbandingan Tingkat Keamanan ECDSA dan RSA
7. Kesimpulan
Algoritma Kriptografi Kurva Eliptik dapat dijadikan sebagai sebuah algoritma kriptografi
pilihan di mana untuk memecahkannya diperlukan usaha untuk memecahkan persamaan
logaritma yang cukup rumit karena melibatkan titik, garis dan kurva.Oleh karena itulah,Kriptografi Kurva Eliptik termasuk ke dalam ECDLP ( Elliptic Curve Discrete Logarithm Problem).
Kriptografi Kurva Eliptik yang dalam hal lebih spesifik adalah ECDSA dengan panjang
kunci 160 bit mempunyai tingkat keamanan yang relatif sama dengan RSA dengan panjangkunci 1024 bit. Jadi algoritma kriptografi kurva eliptik mempunyai keuntungan berupa ukuran
panjang kunci yang lebih kecil jika dibandingkan dengan algoritma kunci publik lainnya (RSA)
tetapi sudah memiliki tingkat keamanan yang relatif sama sehingga algoritma kriptografi kurvaeliptik cocok untuk diimplementasikan pada peralatan perangkat keras yang memiliki daya dan
memori yang terbatas. Contoh nyata penggunaan algoritma kriptografi kurva eliptik ini adalah
pada pengamanan data smart card, pengamanan data mobile device dan pengamanan data game