Thursday, April 2, 2015
md5
Algoritma hash MD5 sendiri menerima input
berupa data dengan panjang bebas, dan menghasilkan output heksadesimal
sepanjang 32 karakter. Jadi, seberapapun panjang data input, output yang
dihasilkan akan selalu sepanjang 32 karakter. Perubahan sedikit saja di input
akan mengubah output dengan drastis. Sebagai contoh:
Bayangkan
dalam satu pesawat umum terdapat dua kelas penumpang, yaitu kelas VIP dan kelas
ekonomi. Prosedur dan proses security harus menjamin agar penumpang menempati
tempat duduk sesuai haknya. Untuk itu penumpang harus menunjukkan bukti berupa
tiket yang di situ tertera namanya. Kemudian dari daftar penumpang pramugari
akan tahu bahwa anda berhak duduk di kelas VIP atau ekonomi. Bila anda memegang
tiket ekonomi mencoba duduk di kelas VIP maka pramugari akan menolak anda.
Apalagi bila anda tidak memegang tiket, mencoba naik pesawat itu, sudah pasti
anda akan ditendang.
Input
paragraf tersebut memiliki nilai hash:
Hexa:11ee98b599338ae66458f9b86ab4a6fb
Binary:00010001 11101110 10011000 10110101
10011001 00110011 10001010 11100110 01100100 01011000 11111001 10111000
01101010 10110100 10100110 11111011
Input di atas adalah teks sepanjang 578 karakter, sedangkan
outputnya hanya 32 karakter, sangat timpang bukan? Mari kita lihat kalau
inputnya hanya satu karakter saja, ‘X’, maka nilai hashnya adalah
02129bb861061d1a052c592e2dc6b383 atau dalam binary 00000010 00010010 10011011
10111000 01100001 00000110 00011101 00011010 00000101 00101100 01011001
00101110 00101101 11000110 10110011 10000011. Terlihat kan inputnya berapapun
panjangnya, nilai hashnya tetap 128 bit atau 32 karakter hexa. Bahkan string
kosong “” memiliki nilai hashnya sendiri sepanjang 32 karakter, yaitu
02129bb861061d1a052c592e2dc6b383.






0 comments:
Post a Comment