Fungsi Hash Aritmatika Modular Polinomial

2.9 Fungsi Hash

Fungsi hash adalah sebuah fungsi yang masukannya adalah sebuah pesan dan keluaran sebuah sidik pesan message fingerprint. Sidik pesan sering juga disebut message digest. Fungsi hash dapat digunakan untuk mewujudkan beberapa layanan keamanan jaringan misalnya untuk keutuhan data dan otentikasi pesan. Fungsi hash yang dipakai dalam sistem kriptografi harus memenuhi beberapa syarat sehingga dapat dianggap aman, yaitu ketahanan terhadap serangan preimage, ketahanan terhadap serangan second preimage, dan ketahanan terhadap serangan collision. Ketahanan terhadap serangan preimage adalah jika diberikan pesan M, maka dapat dihitung dengan mudah y = h M, namun jika diberikan y dan fungsi hash h maka sulit bagi penyerang menemukan M. Ketahanan terhadap serangan second preimage adalah jika diberikan sebuah pesan M dan fungsi hash h maka temukan hM = h M’. Sebuah fungsi hash untuk sistem kriptografi harus tahan terhadap serangan second preimage atau dalam kata lain sulit bagi penyerang untuk menyelesaikan persoalan second preimage. Ketahanan terhadap serangan collision adalah jika diberikan sebuah fungsi hash h lalu penyerang berusaha menemukan sepasang M dan M’ dengan M ≠ M’ sehingga hM = hM’. Fungsi hash menerima masukan sebuah pesan dengan panjang sembarang dan membuat digest dengan panjang tetap. Salah satu cara untuk membuat digest adalah membagi pesan menjadi beberapa blok dengan ukuran n bit menghitung digest dengan ukuran m m ≤n bit secara berulang dari blok awal sampai blok akhir pesan dengan menggunakan fungsi kompresi. Cara seperti ini disebut dengan fungsi hash dengan iterasi. Merkle dan Damgard membuktikan fungsi hash dengan iterasi tahan terhadap serangan collision jika fungsi kompresi juga tahan terhadap serangan collision. Fungsi hash dengan iterasi disebut juga dengan skema Merkle dan Damgard Menezes et al., Universitas Sumatera Utara 1996. Banyak fungsi hash yang berdasarkan skema Merkle dan Damgard diantaranya adalah fungsi hash MD5 dan SHA. Fungsi hash MD5 menghasilkan digest dengan ukuran 128 bit yang ternyata terlalu pendek sehingga bisa diserang dengan collision, sedangkan fungsi hash SHA Secure Hash Algorithm terdiri dari beberapa versi dan yang paling panjang memeliki digest berukuran 512 bit. Fungsi Hash SHA-512 Fungsi hash SHA-512 merupakan versi SHA dengan ukuran digest 512 bit dan berbasis pada skema Merkle dan Damgard. SHA merupakan singkatan dari Secure Hash Algorithm merupakan fungsi hash standar yang dipublikasi oleh NIST National Institute of Standard and Technology. SHA diterbitkan dengan beberapa versi diantaranya SHA-1 dengan ukuran digest 160 bit, SHA-256 dengan ukuran digest 256 bit dan SHA-512. Meskipun SHA terdiri dari beberapa versi, secara prinsip cara kerja fungsi hash SHA adalah sama, yaitu menggunakan skema Merkle-Damgard.

2.10 Kriptografi Kurva Eliptik