Tampilan Halaman Depan Tampilan Bangkitkan Kunci Skenario Pembangkitan Kunci dengan menggunakan algoritma ECDSA dan RSA yang dimodifikasi

BAB IV IMPLEMENTASI DAN PENGUJIAN Bab ini berisi pembuatan sesuai dengan analisis dan perancangan dan kemudian melakukan pengujian sistem.

4.1. Implementasi Sistem

Sistem dibangun dengan menggunakan bahasa pemrograman Java dengan JavaFX sebagai library antarmuka. Program ini terdiri dari 4 tampilan yaitu tampilan halaman utama, tampilan bangkitkan kunci, tampilan sembunyikan berkas, tampilan baca berkas dan verifikasi tanda tangan.

4.1.1. Tampilan Halaman Depan

Tampilan halaman depan berisi nama judul skripsi dan data tentang peneliti. Gambar 4.1. Tampilan halaman utama Universitas Sumatera Utara

4.1.2. Tampilan Bangkitkan Kunci

Tampilan bangkitkan kunci digunakan untuk menghasilkan kunci pada algoritma RSA yang dimodifikasi dan ECDSA. Pada form pengirim dan penerima pesan memasukkan digit kunci. Tampilan bangkitkan kunci dapat dilihat pada gambar 4.2. Gambar 4.2. Tampilan bangkitkan kunci 4.1.3. Tampilan Bangkitkan Tanda Tangan Digital dan Enkripsi Pesan Tampilan sembunyikan bangkitkan tanda tangan digital dan enkripsi pesan digunakan untuk menghasilkan ciphertext yang berasal dari plaintext dan tanda tangan digital. Pada form ini pengirim memasukkan digit kunci privat ECDSA dan kunci publik RSA yang dimodifikasi penerima serta memilih plaintext. Tampilan sembunyikan kunci dapat dilihat pada gambar 4.3. Gambar 4.3. Tampilan Bangkitkan Tanda Tangan Digitasl dan Enkripsi Pesan Universitas Sumatera Utara

4.1.4. Tampilan Enkripsi Pesan dan Verifikasi Tanda Tangan Digital

Tampilan enkripsi pesan dan verifikasi tanda tangan digunakan untuk mendekripsi plaintext yang berasal dari ciphertext dan tanda tangan digital. Pada form ini penerima memasukkan kunci publik ECDSA pengirim dan kunci privat RSA yang dimodifikasi penerima serta memilih ciphertext. Tampilan baca berkas dan verifikasi tanda tangan dapat dilihat pada gambar 4.3. Gambar 4.4. Tampilan Enkripsi Pesan dan Verifikasi Tanda Tangan Digital 4.1.5. Tampilan Pilihan Tampilan pilihan berisi pilihan untuk menampilkan hasil perhitungan dalam bentuk desimal dan pilihan untuk keluar. Tampilan pilihan dapat dilihat pada gambar 4.5. Gambar 4.5. Tampilan Pilihan Universitas Sumatera Utara

4.2. Pengujian Sistem

Pengujian sistem yang digunakan pada penelitian dilakukan dengan menggunakan metode Black Box. Pengujian sistem dilakukan menggunakan paramater yang dimasukkan kedalam sistem dilakukan untuk melihat keberhasilan dan ketepatan sistem dalam proses sembunyikan, baca berkas dan verifikasi tanda tangan digital menggunakan algoritma ECDSA dan algoritma RSA yang dimodifikasi. Pada pengujian ini, nilai yang digunakan pada digit kunci ECDSA = 1, digit kunci RSA yang dimodifikasi p = 2, q = 2 dan r = 2 dengan plaintext “Plaintext”.

4.2.1. Skenario Pembangkitan Kunci dengan menggunakan algoritma ECDSA dan RSA yang dimodifikasi

a. Pembangkitan kunci publik dan privat pengirim dengan menggunakan algoritma ECDSA  Menentukan domain kurva elips yang digunakan Dalam tugas akhir ini menggunakan kurva elips sesuai dengan standar FIPS.186-2 untuk kurva elips berukuran 256 bit DSS, 2010 yaitu : Persamaan kurva : y 2 x 3 +ax+b mod p a = -3 b = 410583637251521421293261297800472684091144410159937255548352 56314039467401291 p ECDSA = 11579208921035624876269744694940757353008614341529031419 553363130886097853951 G x = 6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945 d898c 296 16 = 4843956129390645175905258525279791420276294952604174799584 4080717082404635286 G y = 4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb64068 37bf51 f5 16 = 361342509567497957985851279195878819566111066729850150718 798253568414405109 n ECDSA = ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2 fc632551 16 = 1157920892103562487626974469494075735299969552241357603 Universitas Sumatera Utara 42422259061068512044369  Pembangkitan kunci privat dan kunci publik ECDSA Digit untuk kunci d ECDSA adalah 1 akan menghasilkan bilangan acak yang berada diantara 1 sampai dengan n ECDSA . d ECDSA = 6 = 0000000000000000000000000000000000000000000000000000000000 00006 16 G x = 48439561293906451759052585252797914202762949526041747995844 080717082404635286 G y = 3613425095674979579858512791958788195661110667298501507187 98253568414405109 Q = d ECDSA . G Pertama kita untuk menghitung 6.G dekomposisi 6.G menjadi G. 6.G = 2.3.G = 2.2.G + G 2.G = G + G. Untuk menghitung 2.G menggunakan rumus 14, 15 dan 16. Sehingga hasil untuk 2.G adalah : ECDSA = 734049636630043118808829443727489891620846779348529637874525047 80932599885725 ECDSA = 565152197906911714131090579040116886954248101558029299735264 81321309856242040 ECDSA = 3377031843712258259223711451491452598088675519751548567112458 094635497583569 Setelah diperoleh hasil Q 1 = 2.G, Hasil dari 3.G dapat diperoleh dari menjumlahkan hasil titik Q 1 dengan G dengan menggunakan rumus 14, 15, 17. Sehingga hasil untuk 3.G adalah : ECDSA Universitas Sumatera Utara =1845593915758897044678456556999029476868085846314898548620313214 42355214091582 ECDSA = 4287765697127581131026256489449021002475928718217719616242534 9131675946712428 ECDSA = 611548011120142145041782814619925700172471720047042770416810 93927569603776562 Setelah diperoleh Q 2 = 3.G. Maka dapat dihitung 6.G dengan menghitung 2.Q 2 menggunakan rumus 14, 15, dan 16 : ECDSA x x ECDSA = 79653159259317329199152975905021693207262715618295428672027 927511489832980905 = b01a172a 76a4602c 92d3242c b897dde3 024c740d ebb215b4 c6b0aae9 3c2291a9 16 ECDSA = 105099244361861367422779349381909628134794498213392835359532 911141293690159074 = e85c1074 3237dad5 6fec0e2d fba70379 1c00f770 1c7e16bd fd7c4853 8fc77fe2 16 Sehingga 6.G = Q = Q x3 , Q y3 Kunci privat ECDSA pengirim pesan adalah d ECDSA, sedangkan kunci publiknya adalah Q. b. Pembangkitan kunci publik dan privat penerima dengan menggunakan algoritma RSA yang dimodifikasi  Penerima pesan memilih nilai bilangan prima p, q, r, dimana p ≠ q ≠ r dengan memasukkan jumlah digit untuk setiap bilangan prima. Pada implementasi ini digit kunci yang digunakan adalah 2 untuk setiap bilangan prima. p = 31 Universitas Sumatera Utara = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000001f 16 q = 43 = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000002b 16 r = 47 = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000002f 16  Menghitung n RSA dapat menggunakan rumus SA n RSA = 62651 = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000f4bb 16  Menghitung nilai ϕn SA dapat menggunakan rumus ϕn SA - - - ϕn RSA = 57960 = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000e268 16  Memilih nilai e RSA bilangan acak ganjil dalam rentang SA ϕ SA dan SA ϕ SA . e RSA = 11 = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000000b 16  Menghitung d RSA menggunakan rumus SA SA ϕ SA . d RSA = 52691 = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000cdd3 16

4.2.2. Skenario Pembangkitkan Tanda Tangan Digital dan Enkripsi Pesan