Analisis Sistem ANALISIS DAN PERANCANGAN SISTEM

3.1 Pilih Dokumen Verifier 3.2 Verifikasi Dokumen Kunci_publik Status dokumen Digital_signature Gambar 3.5. Proses Verifikasi Dokumen Pada gambar 3.5. dapat dijelaskan bahwa user sebagai penerima dapat melakukan proses verifikasi dokumen dengan memasukkan file dokumen asli, file dokumen yang telah diberi tanda tangan digital, dan file kunci publik. Pada saat penerima melakukan verifikasi dokumen sistem akan membandingkan message digest yang dihasilkan pada file dokumen asli dengan message digest yang terdapat pada file dokumen yang telah diberi tanda tangan digital. Jika sama maka sistem akan menampilkan status dari hasil verifikasi dokumen apakah dokumen tersebut asli atau sudah diubah.

3.2. Analisis Sistem

Pada sistem ini akan dilakukan analisis terhadap sistem dalam melakukan proses pembentukan sepasang kunci, pembentukan tanda tangan digital dan verifikasi dokumen untuk membuktikan otentikasi sebuah dokumen dengan menggunakan algoritma GOST Digital Signature. 3.2.1. Cara kerja GOST Digital Signature Berikut ini adalah flowchart proses kerja dari algoritma GOST Digital Signature untuk otentikasi dan keamanan dari sebuah dokumen yang dapat dilihat pada gambar 3.6. Universitas Sumatera Utara Mulai Input Dokumen Pembentukan Sepasang Kunci Pembentukan Tanda Tangan Digital Verifikasi Tanda Tangan Digital Status Dokumen Selesai Gambar 3.6. Flowchart GOST Digital Signature Seperti yang terlihat pada gambar 3.6. menunjukkan bahwasanya cara kerja dari algoritma GOST Digital Signature terdiri dari 3 tahapan yaitu pembentukan sepasang kunci, pembentukan tanda tangan digital signing, dan verifikasi tanda tangan digital. Pada proses pembentukan sepasang kunci, sistem akan menghasilkan kunci privat yag akan digunakan untuk proses pembentukan tanda tangan digital dan kunci publik yang akan dibutuhkan pada saat verifikasi tanda tangan digital. Pada proses pembentukan tanda tangan digital, sistem pertama sekali akan melakukan proses hashing terhadap dokumen yang ingin diberi tanda tangan digital sehingga menghasilkan keluaran hash yang disebut message digest. Kemudian message digest dienkripsi menggunakan kunci privat dan menghasilkan tanda tangan digital. Kemudian pengirim mengirimkan dokumen yang telah diberi tanda tangan digital dan kunci publik kepada penerima. Pada proses verifikasi, penerima akan melakukan hashing dokumen kembali untuk mendapatkan message digest, maka secara paralel tanda tangan digital akan didekripsi menggunakan kunci publik. Message digest yang dihasilkan oleh penerima akan sama dengan message digest Universitas Sumatera Utara yang dikirimkan. Jika berbeda maka dipastikan bahwa dokumen telah diubah oleh pihak lain. Proses terakhir adalah sistem akan menampilkan status dari dokumen tersebut. 3.2.2. Pembentukan sepasang kunci Proses pembentukan sepasang kunci pada algoritma GOST Digital Signature ini dapat dilihat pada flowchart dari gambar 3.7. dimana proses ini akan menghasilkan sepasang kunci yang akan berguna utuk melakukan proses selanjutnya. Mulai p = bilangan prima q = bilangan sub prima Hitung a dimana mod p = 1 Hitung y = mod p Selesai q a x a Hitung x dimana x q Gambar 3.7. Flowchart Pembentukan Sepasang Kunci Berdasarkan gambar 3.7. pertama sekali sistem akan melakukan proses pembentukan sepasang kunci sebagai berikut: 1. Pilih dua bilangan prima sebagai nilai p dan q. Dalam hal ini bilangan prima p memilik panjang 1024-Bit dan bilang prima q memiliki panjang 256-Bit dimana q merupakan pengfaktoran dari p-1. 2. Misal nilai p = 509 dan q = 127, maka nilai q memenuhi pengfaktoran p-1 dimana 127 4 = 509 – 1. 3. Hitung nilai acak a dimana a p-1, sehingga mod p = 1. Universitas Sumatera Utara 4. Misal a = 23, memenuhi mod p = 1. 5. Tentukan nilai x, yang dalam hal ini x q. 6. Misal x = 89. 7. Kemudian hitung nilai y, dengan rumus seperti pada persamaan 2.1. 8. Y = 23 89 mod 509. 9. Y = 293. 10. Dalam hal ini parameter yang boleh diketahui secara umum adalah p, q, a. Kunci privatnya adalah x dan kunci publiknya adalah y. 3.2.3. Pembentukan tanda tangan digital Proses pembentukan tanda tangan digital merupakan proses hashing yang dilakukan pada dokumen untuk mendapatkan message digest yang nantinya akan di enkripsi oleh kunci privat sehingga menghasilkan tanda tangan digital. Proses ini dapat dilihat pada flowchart seperti yang terdapat dalam gambar 3.8. berikut. Mulai Pilih bilangan acak k, dimana kq Pembuatan message digest Hm Hitung tanda tangan r = mod p mod q k a Hitung tanda tangan s = xr + kHm mod q Selesai r = 0 Tidak Ya Gambar 3.8. Flowchart Pembentukan Tanda Tangan digital Universitas Sumatera Utara Berdasarkan gambar 3.8. sistem akan melakukan proses pembentukan tanda tangan digital seperti berikut: 2. Hitung nilai hash dari pesan dokumen. 3. Misal nilai hash yang didapat Hm = 4321. 4. Tentukan bilangan acak k dimana k q. 5. Pada proses sebelumnya diketahui nilai q = 127. Maka permisalan nilai k yang diambil adalah k = 121. 6. Hitung tanda tangan r, dengan rumus seperti pada persamaan 2.2. 7. Maka r = 23 121 mod 509 mod 127 = 103 8. Hitung tanda tangan s, dengan rumus seperti pada persamaan 2.3. 9. Maka s = 89 103 + 121 4321 mod 127 = 5 10. Kemudian kirim pesan m dan tanda tangan r dan s. 3.2.4. Verifikasi tanda tangan digital Proses verifikasi sebuah dokumen dan tanda tangan digital dibutuhkan untuk membuktikan keaslian dokumen yang secara langsung juga dapat membuktikan keaslian pengirim. Proses ini dapat dilihat pada flowchart seperti yang terdapat dalam gambar 3.9. berikut. Mulai Hitung nilai v = mod q Selesai 2  q m H Hitung nilai u = mod p mod q 2 1 z z y a u = r Dokumen tidak asli Dokumen asli Tidak Ya Gambar 3.9. Flowchart Verifikasi Tanda Tangan Digital Universitas Sumatera Utara Berdasarkan gambar 3.9. untuk melakukan keabsahan sebuah tanda tangan digital dan membuktikan bahwa dokumen otektik, maka dilakukan proses perhitungan seperti berikut: 6. Hitung nilai v, dengan rumus seperti pada persamaan 2.4. 7. Maka v = 4321 125 mod 127 = 85. 8. Hitung nilai Z 1 , dengan rumus seperti yang terdapat pada persamaan 2.5. 9. Maka z 1 = 5 85 mod 127 = 44 10. Hitung nilai Z 2 , dengan rumus seperti pada persamaan 2.6. 11. Maka z 2 = 127 - 103 85 mod 127 = 8. 12. Dengan diperolehnya nilai z 1 dan z 2 , selanjutnya selanjutnya bisa dilakukan perhitungan dari nilai u. 13. Hitung nilai u, dengan rumus seperti pada persamaan 2.7. 14. Maka u = 23 44 293 8 mod 509 mod 127 = 103. Dari hasil perhitungan tersebut diketahui bahwa nilai u = 103 dan r = 103, dimana u = r maka dapat disimpulkan bahwa tanda tangan sah yang berarti dokumen masih asli tidak berubah.

3.3. Perancangan Antar Muka interface