Fungsi hash biasa digunakan untuk menghasilkan output data dengan panjang yang tetap yang berfungsi sebagai referensi versi singkat dari data asli. Hash sangat banyak digunakan sebagai bagian dari kriptografi. Tipe fungsi hash sangat beragam, dengan sifat keamanan yang bervariasi juga.
Fungsi hash dapat digunakan untuk menentukan kesamaan dua objek. Penggunaan umum lainnya dari fungsi hash adalah checksum terhadap sejumlah besar data (misalnya, cyclic redundancy check [CRC]) dan menemukan entri dalam database dengan nilai kunci. The UNIX c-shell (csh) menggunakan tabel hash untuk menyimpan lokasi program-program yang bisa dieksekusi.
Fungsi Hash sering juga disebut fungsi enkripsi satu arah. Hash bisa digunakan untuk menjamin otentikasi dan integritas suatu teks atau file. Suatu fungsi hash h memetakan bit-bit string dengan panjang sembarang ke sebuah string dengan panjang tertentu misal n.
Prinsip utama dari hash adalah bahwa suatu nilai hash berlaku sebagai representasi dari data secara sederhana (juga message-diggest, imprint, digital finger-print) dari suatu input string, dan dapat digunakan hanya jika nilai hash tersebut dapat diidentifikasi secara unik dengan input string tersebut. Fungsi hash many-to-one memungkinkan terjadinya pasangan input dengan output sama : collision (tabrakan).
Fungsi hash yang banyak dipakai di dalam kriptografi adalah MD5 dan SHA. MD5 dan SHA1 adalah dua algoritma yang dipakai untuk mengenkripsi data, biasanya dua algoritma ini digunakan untuk mengacak password menjadi barisan code-code acak yang tidak dapat dibaca.
MD5 (Message-Digest algortihm 5)
MD5 ini merupakan kriptografik yang digunakan secara luas dengan hash value 128-bit. Maksudnya adalah Input algoritma ini adalah sebuah berita dengan panjang yang bervariasi dan menghasilkan output sebuah 128-bit message digest. MD5 ini telah digunakan pada berbagai macam aplikasi keamanan.
MD5 mengambil pesan dengan panjang sembarang dan menghasilkan message digest yang panjangnya 128 bit dimana waktu pemrosesan lebih cepat dibandingkan performance SHA tetapi lebih lemah dibandingkan SHA. Pada MD5 pesan diproses dalam blok 512 bit dengan empat round berbeda. Masing-masing round terdiri dari 16 operasi. F merupakan fungsi nonlinear, satu fungsi digunakan pada setiap ronde. MI menunjukkan blok data input 32 bit dan Ki menunjukkan konstanta 32 bit yang berbeda setiap operasi.
SHA (Secure Hash Algorithm)
SHA merupakan salah satu hash function yang cukup banyak digunakan. Keluarga SHA yang paling banyak digunakan adalah SHA-1. SHA-1 memetakan inputan string dengan panjang sembarang menjadi suatu nilai hash dengan panjang tetap yaitu 160 bit. Ukuran internal state pada SHA-1 adalah 160 bit, sedangkan ukuran bloknya adalah 64 bytes.
Algoritma SHA mengambil pesan yang panjangnya kurang dari 264 bit dan menghasilkan message digest 160-bit . Algoritma ini lebih lambat daripada MD5, namun message digest yang lebih besar membuatnya semakin aman dari bruteforce collision dan serangan inversi.
SHA-1 merupakan hasil rekonstruksi dari MD4 dan memperbaiki kekurangann yang ada di MD4 itu sendiri. SHA-1 merupakan algoritma hash yang banyak diaplikasikan dalam keamanan protokol menggunakan SSL (Secure Sockets Layer), PGP (Pretty Good Privacy), XML Signature, dan beberapa aplikasi lainnya.
Referensi:
No comments:
Post a Comment