Tahan tumbukan Collision-resistant: sulit mencari dua input berbeda m1 dan Algoritma GOST Digital Signature

Saat ini sudah terdapat tiga generasi dari SHA dimana dari generasi tersebut juga terdapat beberapa varian lagi berdasarkan panjang bit yang dihasilkan. Ketiga varian itu adalah SHA-0 atau yang biasa disebut SHA saja, SHA-1, dan SHA-2. Algoritma SHA-2 merupakan pengembangan dari algoritma SHA-1 yang memuat banyak perubahan. Algoritma ini didesain oleh National Security Agency NSA of United States dan dipublikasikan pada tahun 2001 oleh NIST sebagai standar bagi pemrosesan informasi federal bagi Amerika Serikat atau yang biasa disebut Federal Information Processing Standard FIPS. Algoritma SHA-2 ini terdiri dari beberapa algoritma berdasarkan panjang bit yang digunakan dihasilkan sebagai nilainya yaitu SHA-224, SHA-256, SHA-384, SHA-512. Algoritma SHA-2 ini menggunakan beberapa operasi dasar dalam teknik kriptografi, yaitu fungsi AND, OR, XOR, SHIFT right, dan ROTATE right. Sifat-Sifat Fungsi Hash Kriptografi: a. Tahan preimej Preimage resistant: bila diketahui nilai hash h maka sulit secara komputasi tidak layak untuk mendapatkan m dimana h = hashm. b. Tahan preimej kedua Second preimage resistant: bila diketahui input m1 maka sulit mencari input m2 tidak sama dengan m1 yang menyebabkan hashm1 = hashm2.

c. Tahan tumbukan Collision-resistant: sulit mencari dua input berbeda m1 dan

m2 yang menyebabkan hashm1 = hashm2

2.4. Algoritma GOST Digital Signature

GOST atau Gosudarstvenny Standard yang artinya standard pemerintah, adalah algoritma kriptografi dari negara Uni Soviet dahulu sekarang sudah terpecah menjadi sejumlah negara dengan Rusia sebagai negara terbesar Munir, 2004. Algoritma ini dikembangkan pada tahun 1970 yang merupakan sebuah algoritma block chiper dengan panjang 64 bit, sedangkan panjang kuncinya 256 bit. GOST dibuat oleh Soviet sebagai alternatif terhadap algoritma enkripsi standard Amerika Serikat, DES. GOST secara struktural mirip dengan DES. Masyarakat perbankan Prancis telah menstadardisasi RSA. National Institute of Standardization Technology NIST mengusulkan suatu modifikasi ElGamal dan Schnorr sebagai standar tanda tangan digital Digital Signature Standard [DSS] Universitas Sumatera Utara mereka dan skema tanda tangan didasarkan pada kurva elips yang sampai saat ini menjadi standar IEEE. Pada tahun 1999 federasi Rusia mengeluarkan standar tanda tangan digital GOST Digital Signature atau sering disebut GOST 34,10-94. Algoritma ini sangat mirip dengan Digital Signature Algorithm DSA. GOST Digital Signature dan algoritma tanda tangan digital lainnya memiliki tiga proses utama yaitu: 1. Pembentukan sepasang kunci Key Pair Generation 2. Pembentukan tanda-tangan digital Digital Signature Generation 3. Verifikasi tanda-tangan digital Digital Signature Verification 2.4.1. Parameter GOST digital signature GOST Digital Signature merupakan sebuah standar Russia digital signature yang dikembangkan dari DSA yang telah dimodifikasi dimana menggunakan parameter dibawah ini Schneier, 1996: 1. p , adalah bilangan prima dengan panjang antara 509 ≤ p ≥ 512 bit, atau 1020 ≤ p ≥ 1024 bit. Parameter p bersifat publik. 2. q, adalah bilangan prima dengan panjang 254 ≤ q ≥ 256 bit, dan q merupakan faktor dari p - 1. Parameter q bersifat publik. 3. a, merupakan bilangan yang lebih kecil dari p - 1 dimana mod p = 1. Parameter a bersifat publik. 4. x, adalah bilangan acak yang lebih kecil dari q. Parameter x adalah kunci privat. 5. y = mod p, adalah kunci publik. 6. m, pesan yang akan diberi tanda tangan. 2.4.2. Pembentukan sepasang kunci Proses pembentukan kunci pada GOST Digital Signature adalah sebagai berikut Schneier, 1996: 1. Pilih bilangan prima p dan q dimana p –1 mod q = 0. 2. Hitung a dimana a q mod p = 1 dan a p-1. 3. Tentukan kunci privat x dimana x q. 4. Hitung kunci publik y, dengan rumus: Universitas Sumatera Utara y = mod p 2.1 5. Kunci publik p, q, a, y dan kunci privat p, q, a, x. 2.4.3. Pembentukan tanda tangan digital Diketahui kunci publik p, q, a, y dan kunci privat p, q, a, x Schneier, 1996: 1. Ubah pesan m menjadi message digest dengan fungsi Hash SHA menghasilkan SHA M. 2. Tentukan bilangan acak k dimana k q. 3. Hitung tanda tangan r, dengan rumus: r = a k mod p mod q 2.2 1. Hitung tanda tangan s, dengan rumus: s = xr + kHm mod q 2.3 4. Kirim pesan beserta tanda tangan r dan s. 2.4.4. Verifikasi tanda tangan digital Sebelum diverifikasi, harus dipastikan tersedia kunci publik pengirim y, nilai p, q dan a beserta pesan yang bertandatangan r dan s. Penerima memeriksa terlebih dahulu apakah 0 r q dan 0 s q, kemudian hitung: 1. Hitung nilai v, dengan rumus: v = Hm q-2 mod q 2.4 2. Hitung nilai Z 1 , dengan rumus: Z 1 = sv mod q 2.5 3. Hitung nilai Z 2 , dengan rumus: Z 2 = q – r v mod q 2.6 4. Hitung nilai u, dengan rumus: Universitas Sumatera Utara u = a z1 y z2 mod p mod q 2.7 5. Jika u = r, maka proses verifikasi berhasil.

2.5. Penelitian Sebelumnya