Perancangan Antarmuka Penggambaran Metode Tanda Tangan Digital Ong-Schnorr-

4.2.2 Perancangan Antarmuka

Perancangan antar muka yang dibuat penulis pada aplikasi ini terdiri dari beberapa halama, antara lain : 1. Menu Halaman Utama Menu ini merupakan tampilan awal ketika menjalankan aplikasi tanda tangan digital ini. Pada halaman ini menampilkan judul aplikasi serta beberapa menu yang dapat dipilih pengguna. Adapun menu yang terdapat pada halaman utama ini adalah skema Ong-Schnorr-Shamir dan Aplikasi Tanda Tangan Digital Ong-Schnorr-Shamir Ske ma Tanda Ta ngan Digital Aplikasi Tanda Ta ngan Digital Judul Aplikasi Gambar 4.5 Rancangan Menu Halaman Utama Aplikasi 2. Menu Skema Tanda Tangan Digital Menu ini merupakan simulasi dari penghitungan tanda tangan digital dengan metode Ong-Schnorr-Shamir. Dimuali dengan sebuah alur cerita, dilanjutkan dengan perhitungan matematik dari tanda tangan digital. 65 Contoh cerita Back Ne xt Gambar 4.6 Rancangan Menu Pembuka Langkah 1 : n = k = langkah 2 : h = teks teks Ba ck Next Gambar 4.7 Rancangan Menu langkah matematik Ong-Schnorr-Shamir Langkah 3 : r = teks Langkah 4 : Hash File Label Digital signature Perhitungan Label Label Ba ck Next Gambar 4.8 Rancang Menu Hash File 66 Langkah 5 : Pesan Perhitungan : Label Label Digital Signature Label Verifikasi Ba ck Next Gambar 4.9 Rancangan Menu Verifikasi File Edit Tanda tangan Digital Keluar Label Label Reverse Tanda Tan agan Digital Gambar 4.10 Rancangan Menu Aplikasi 67

4.2.3 Penggambaran Metode Tanda Tangan Digital Ong-Schnorr-

Shamir 4.2.3.1 Skema Tanda Tangan Digital Ong-Schnorr-Shamir Skema tanda tangan digital dengan metode Ong- Schnorr-Shamir terbagi menjadi: a. Algoritma Pembuatan Tanda Tangan Digital. b. Algoritma Verifikasi Tanda Tangan Digital. c. Algoritma Menyimpan File Digital Signature pada Aplikasi. d. Algoritma Membuka File Digital Signature pada Aplikasi.

4.2.3.1.1 Algoritma Pembuatan Tanda Tangan Digital

Algoritma yang digunakan untuk membuat tanda tangan digital pada skema ini adalah: 1. Input nilai n dan nilai k. a. Apabila nilai n = 0, maka munculkan pesan kesalahan. b. Periksa bahwa n harus minimal 8 digit. Apabila tidak maka munculkan pesan kesalahan. c. Apabila nilai k = 0, maka munculkan pesan kesalahan. 68 d. Periksa bahwa gcdn, k harus bernilai 1. Apabila tidak, maka munculkan pesan kesalahan. 2. Hitung nilai h. H = - RoundFModulus1 K2, N, 12. a. Roundx, 12 adalah pembulatan nilai x sebanyak 12 desimal di belakang koma. b. FModulusa, b adalah fungsi yang dibuat sendiri untuk menghasilkan nilai modulus antara a dan b. 3. Ambil input nilai r. a. Apabila nilai r = 0, maka munculkan pesan kesalahan. b. Periksa bahwa gcdn, r harus bernilai 1. Apabila tidak, maka munculkan pesan kesalahan. 4. Ambil input pesan dan hitung S 1 dan S 2 . a. Apabila pesan kosong, maka muculkan pesan kesalahan. b. Untuk i = 1 sampai panjang karakter dari pesan, hitung S 1 dan S 2 . i. Set cTemp1 = karakter ke-i dari pesan. ii. Set M = AsccTemp1. M adalah nilai ascii dari karakter ke-i. 69 iii. Hitung S 1 = RoundFModulus0.5 M R + R, N, 12. iv. Hitung S 2 = RoundFModulusK 2 M R - R, N, 12. v. Tampilkan S 1 dan S 2 sebagai digital signature dengan format “S 1 |S 2 ”.

4.2.3.1.2 Algoritma Verifikasi Tanda Tangan Digital

Algoritma yang digunakan untuk melakukan verifikasi pesan dan tanda tangan digital pada skema ini adalah: 1. Periksa bahwa jumlah digital signature harus sama dengan jumlah karakter pada pesan. a. Ambil format digital signature “S 1 |S 2 ”, penggal dengan pemisah spasi dan masukkan ke variabel array DS. b. Jika indeks array tertinggi dari DS dikurangi satu digital signature diawali dengan string “begin_of_signature “ dan diakhiri dengan string “ end_of_signature“ tidak sama dengan panjang pesan maka verifikasi gagal dan keluar dari algoritma verifikasi. 70 2. Set nilai nAkhir = posisi huruf spasi pertama pada digital signature. 3. Lakukan verifikasi untuk setiap karakter pesan dengan digital signature. Untuk nTemp = 1 sampai panjang pesan, a. Set cTemp1 = karakter ke-nTemp dari pesan. b. Set M = AsccTemp1. M adalah nilai ascii dari cTemp1. c. Set nAwal = nAkhir + 1. d. Untuk nTemp2 = nAwal sampai panjang dari digital signature , lakukan pemeriksaan jika karakter ke-nTemp2 dari digital signature adalah huruf spasi, maka set nAkhir = nTemp2 dan keluar dari looping. e. Set cTemp1 = string dimulai dari posisi nAwal sepanjang nAkhir – nAwal karakter dari digital signature. f. Penggal cTemp1 dengan pemisah “|” dan masukkan ke variabel array DS. g. Jika indeks tertinggi array DS tidak sama dengan satu maka verifikasi gagal dan keluar dari algoritma. 71 h. Set S1 = DS0. Ini adalah nilai digital signature S 1 . i. Set S2 = DS1. Ini adalah nilai digital signature S 2 . j. Set nTemp3 = RoundFModulusS 1 2 + S 2 2 h, n. k. Jika nTemp3 M maka verifikasi gagal dan keluar dari algoritma. 4. Pesan dan digital signature telah melewati pemeriksaan, sehingga verifikasi digital signature sukses.

4.2.3.1.3 Algoritma Menyimpan File Digital Signature

pada Aplikasi Algoritma yang digunakan untuk menyimpan file digital signature pada aplikasi Ong- Schnorr-Shamir Digital Signature Scheme adalah: 1. Periksa bahwa pesan tidak boleh kosong. 2. Periksa bahwa digital signature sudah harus dibentuk. 3. Buka sebuah file baru .dsg dengan nama file di-input oleh user. 4. Isi baris pertama pada file dengan string “Ong- Schnorr-Shamir Digital Signature|” digabungkan 72 dengan waktu sekarang dalam format dd- MMM-yyyy hh:nn:ss digabungkan dengan huruf “|” dan nama user yang telah di-input pada form pembuatan digital signature. 5. Isi baris berikutnya pada file dengan nilai variabel n digabungkan dengan huruf “|” dan nilai variabel h digabungkan dengan huruf “|” dan nilai variabel r. 6. Isi baris berikutnya pada file dengan string “begin_of_message”. 7. Isi baris berikutnya pada file dengan pesan. 8. Isi baris berikutnya pada file dengan string “end_of_message”. 9. Isi baris berikutnya pada file dengan string “begin_of_signature”. 10. Isi baris berikutnya pada file dengan digital signature . 11. Isi baris berikutnya pada file dengan string “end_of_signature”. 12. Tutup file. 73

4.2.3.1.4 Algoritma Membuka File Digital Signature pada Aplikasi

Algoritma yang digunakan untuk membuka file digital signature pada aplikasi Ong-Schnorr- Shamir Digital Signature Scheme adalah: 1. Buka file .dsg yang dipilih oleh user. 2. Ambil isi file baris pertama dan simpan ke variabel cTemp1. Periksa jika LeftcTemp1, 36 tidak sama dengan “Ong-Schnorr-Shamir Digital Signature” maka munculkan pesan kesalahan “Invalid file ”, tutup file dan keluar dari algoritma. 3. Penggal cTemp1 dengan pemisah “|” dan simpan ke dalam variabel array strT. Jika indeks tertinggi array strT tidak sama dengan dua, maka munculkan pesan kesalahan “Invalid file ”, tutup file dan keluar dari algoritma. 4. Set strWaktu = strT1. 5. Set strNama = strT2. 6. Ambil isi file pada baris berikutnya dan simpan ke variabel cTemp1. 7. Penggal cTemp1 dengan pemisah “|” dan simpan ke dalam variabel array strT. Jika indeks tertinggi array strT tidak sama dengan dua, maka 74 munculkan pesan kesalahan “Invalid file ”, tutup file dan keluar dari algoritma. 8. Set N = strT0. 9. Set H = strT1. 10. Set R = strT2. 11. Set K = 0. 12. Ambil isi file pada baris berikutnya dan simpan ke variabel cTemp1. Periksa apabila cTemp1 tidak sama dengan “begin_of_message”, maka munculkan pesan kesalahan “Invalid file ”, tutup file dan keluar dari algoritma. 13. Set strMsg = “” dan cTemp1 = “”. 14. Ambil isi pesan. Selama cTemp1 tidak sama dengan “end_of_message”, lakukan algoritma berikut: a. Set strMsg = strMsg IIfstrMsg “”, karakter ENTER, “” cTemp1. b. Ambil isi file pada baris berikutnya dan simpan ke variabel cTemp1. 15. Ambil isi file pada baris berikutnya dan simpan ke variabel cTemp1. Periksa apabila cTemp1 tidak sama dengan “begin_of_signature”, maka munculkan pesan kesalahan “Invalid file ”, tutup file dan keluar dari algoritma. 75 16. Ambil isi file pada baris berikutnya dan simpan ke variabel strDS. Ini adalah digital signature dari pesan. 17. Ambil isi file pada baris berikutnya dan simpan ke variabel cTemp1. Periksa apabila cTemp1 tidak sama dengan “end_of_signature”, maka munculkan pesan kesalahan “Invalid file ”, tutup file dan keluar dari algoritma. 18. Tutup file. 19. Tampilkan isi variabel strMsg pada textbox pesan. 20. Tampilkan isi variabel strDS pada textbox digital signature .

4.3 Fase Konstruksi