Anda di halaman 1dari 17

Iqna Kondias

Krisna Aditya
7F pagi
HASH

A. HASH
Hash merupakan sebuah Metode yang mengubah text atau message menjadi
sederetan karakter acak yang memiliki jumlah karakter yang sama. Hash juga
termasuk salah satu bentuk teknik kriptografi dan dikategorikan sebagai kriptografi
tanpa key (unkeyed cryptosystem). Selain itu hash memiliki nama lain yang juga
dikenal luas yaitu one-way function.

Sebuah fungsi hash yang baik akan menimalisir terjadinya hash collisionspada input
dengan domain yang sama. Karena , hash collision memegang peranan penting dalam
mempertahankan integritas informasi dan data menghadapi saluran dengan kebisingan
tinggi dan media penyimpanan yang tidak selalu bias diandalkan. Pada table hash dan
pemrosesan data, kolisi akan mengakibtakan perbedaan pada data , dan akan membuat
pencarian record akan menghabiskan cost yang lebihSifat yang sangat fundamental
bagi semua fungsi hash adalah apabila 2 hashberbeda,yang diproses menggunakan
fungsi hash tertentu, makan input dari hash merupakan hal yang berbeda. Oleh karena
itu , maka fungsi hash merupakan fungsi deterministik. Begitu pun sebaliknya, sebuah
fungsi hashtidak bersifat injektif, yaitu apabila 2 nilai hash bernilai sama, tidak akan
menjamin sepenuhnya bahwa inputnya bernilai sama. Bila sebuah nilai hashdihitung
dari sekumpulan data, maka perubahan pada 1 bit data akan menghasilkan nilai hash
yang jauh berbeda karena fungsi

hashsemestinya mempunyai property yang

bercampur.Fungsi hashseharusnya mempunyai...

a. Domain yang tidak terbatas , seperti jumlah byte kumpulan karakter dengan panjang
sembarang
b. Range yang terbatas, yaitu bit sekuensial dengan panjang yang sama Dalam beberapa
kasus , fungsi hash bisa diatur sedemikian rupa sehingga akan menciptakan fungsi
satu-satu yang memetakan domaindan rangedengan ukuran indentik. Fungsi Hashini
juga disebut dengan permutasi dimana reversibilityditerapkan pada input dengan
menerapkan serangkaian operasi campuran
B. ALGORITMA HASH
1. Adler32
Merupakanalgoritma

checksum

yang

ditemukan

Adler.Algoritmainimampumenjalankantesredundansisiklik
untukmenjagadarimodifikasimendadakterhadapdata

oleh

sepanjang

,sepertidistorsi

terjadipadasaattransmisi

Mark
32

bit
yang
data.

Algoritmainimemegangperananpentingdalamperhitungandalamperangkatlunakkar
enakecepatannya.NilaiAlgoritma

Adler32

yang

berjumlah

32bit

didapatkandenganmenggabungkan 2 buah 16 bit checksum ; A dan B


denganaturansebagaiberikut :
A Merupakanjumlahdarisemua bytes dalamstring .Diinisialisasidengan1 .
BMerupakanjumlah

individual

darimasing-masinglangkah.

Nilai

Bdiinisialisasidengan 0
Algoritmainibiasdisederhanakandalamnotasi :

Dimana :
D : byte string yang akandikalkulasi checksum
N :panjangdari D
Dapatdilihatbahwatiapjumlahpada

Adler32

selaludikenaioperasi

modulus

terhadapangka 65521, karenaangkainimerupakanbilangan prima terbesar yang


lebihkecildari 216

Adler32

mempunyaikelebihandibandingkan

CRC

karenalebihcepatbekerjapadaperangkatlunak.Walaupun,
untukpesanberukurankecilalgoritmainitidakbiasmenangani 32 bit kosong yang
tersisa.
2. CRC32 dan CRC32B
CRC

merupakansingkatandari

merupakanfungshi hash
blok

data,

Cyclic

Redundancy

Check

yang digunakanuntukmenghasilkan checksum dari 1

sepertipaketpadalalulintasjaringanataublokpada

file

komputer,

Checksum
digunakanuntukmengidentifikasikerusakanpadasaatpenyimpanandansetelahtrans
misi

data

dilakukan.

CRC

dikalkulasidandigabungkansebelumtransmisiataupenyimpanandandiverifikasioleh
penerimauntukmenyatakanbahwatidakadaperubahan yang terjadipada proses
pengiriman.

CRC

lebihpopularkarenakesederhanaanuntukmengimplementasikandalamperangkatker
asbinarudanmudahdianalisissecaramatematik.Selainitu,

CRC

jugabekerjabaikdalammendekteksikerusakanumum

yang

disebabkanolehkebisinganpadasaluranpengiriman.Checksum
adalahsisapembagianbinertanpa

bit

carry

dari

darisebuah

stream

CRC
bit

pesandenganstrean bit yang sudahditentukandenganpanjang n bit, dimana n


merepresentasikankoefisiendarisebuahpolinom.

Secaraumum

,fungsi

CRC

biasdisederhanakandalamnotasi :

Dimana :
M(x) adalahpolinompesanasli
G(x) merupakanpolinompembangkit n derajat
3. GOST
GOST

merupakanblokchipperdaribekasUni

Soviet,

yang

merupakansingkatandariGosudarstvennyi Standard atau "StandarPemerintah".


Standarinibernomor 28147-89, olehsebabitumetodeiniseringdisebutsebagai GOST

28147-89.GOST secarastructuralmiripdengan DES.GOST merupakanblokchiper


64

bit

denganpanjangkunci

256

Algoritmainimengiterasialgoritmaenkripsisederhanasebanyak

bit.
32

putaran

(round).Untukmengenkripsipertama-tama plainteks 64 bit dipecahmenjadi 32 bit


bagiankiri, L dan 32 bit bagiankanan, R. Subkunci (subkey) untukputaran i adalah
Ki. Padasatuputaranke-i operasinyaadalahsebagaiberikut:
Li = Ri-1
Ri = Li-1 xorf(Ri-1,Ki)
Sedangkanpadafungsi

mula-mulabagiankanan

ditambahdengansubkuncike-i

data
modulus

232.Hasilnyadipecahmenjadidelapanbagian 4 bit dansetiapbagianmenjadi input sbox yang berbeda. Di dalam GOST terdapat 8 buah s-box, 4 bit pertamamenjadi
s-box pertama, 4 bit keduamenjadi s-box kedua, danseterusnya. Output dari 8 sbox

kemudiandikombinasikanmenjadibilangan

32

bit

kemudianbilanganinidirotasi 11 bit kekiri.Akhirnyahasiloperasiini di-xordengan


data

bagiankiri

yang

kemudianmenjadibagiankanandanbagiankananmenjadibagiankiri
(swap).Padaimplementasinyanantirotasipadafungsi

dilakukanpadaawalsaatinisialisasisekaligusmembentuk

s-box

32

dandilakukansatu

bit
kali

sajasehinggalebihmenghematoperasidandengandemikianmempercepat

proses

enkripsi/dekripsi.Subkuncidihasilkansecarasederhanayaitudari 256 bit kunci yang


dibagimenjadidelapan

32

bit

blok

k1,

k2,

Setiapputaranmenggunakansubkunci

k8.
yang

berbeda.Dekripsisamadenganenkripsidenganurutank1 dibalik. Standar GOST


tidakmenentukanbagaimanamenghasilkan

s-box

sehinggaadaspekulasibahwasebagianorganisasi di (eks) Sovyetmempunyai s-box


yang baikdansebagiandiberi s-box yang buruksehinggamudahdiawasi/dimatamatai.Kelemahan GOST yang diketahuisampaisaatiniadalahkarena key schedulenya

yang

sehinggapadakeadaantertentumenjadititiklemahnyaterhadapmetode

sederhana,

kriptanalisisseperti

Related-key

Cryptanalysis.Tetapihalinidapat

di

atasidenganmelewatkankuncikepadafungsi hash yang kuatsecarakriptografiseperti


SHA-1,

kemudianmenggunakanhasil

hash

untuk

input

inisialisasikunci.

Kecepatandarimetode inicukupbaik, tidaksecepat Blowfish tetapilebihcepatdari


Idea.Untukkecepatanenkripsi di memorisebesar 5MB data adalah : 3.492,620
Kbyte/detikpada Pentium Pro 200 MHz dan 2.466,700 Kbyte/detikpada Pentium
MMX 200 MHz.
Padametodablok cipher ada yang dikenalsebagai mode operasi. Mode
operasibiasanyamengkombinasikan

cipher

dasar,

feedback

danbeberapaoperasisederhana.
Operasicukupsederhanasajakarenakeamananmerupakanfungsidarimetode

cipher

yang mendasarinyabukanpadamodenya. Mode pertamaadalah ECB (Electronic


Codebook)

dimanasetiapblokdienkripsecaraindependenterhadapbloklainnya.

Denganmetodaoperasiinidapatsajasebuahpesandisisipkan

di

antarabloktanpadiketahuiuntuktujuantertentu,
misalnyauntukmengubahpesansehinggamenguntungkansipembobol.
lainyaadalah

CBC

(Cipher

Mode

Block

Chaining)

dimanaplainteksdikaitkanolehoperasixordenganciphertekssebelumnya,
metodainidapatdijelaskansepertipadaGambar 1.Untuk mode inidiperlukansebuah
Initialization Vector (IV) yang akan di-xordenganplainteks yang paling awal. IV
initidakperludirahasiakankarenabilakitaperhatikanjikaterdapat

blokmakaakanterdapat n-1 IV yang diketahui. Metodalain yang dikenaladalah


CFB

(Chiper

dll.Kebanyakan

Feedback),
data

OFB

(Output

Feedback),

tidakbulatdibagikedalam

olehsebabitudalamblok

cipher

64

Counter
bit

(8

diperlukan

tambahanpadablokterakhiruntukmenggenapiblokmenjadi

Mode,
byte),
data

64

bit,

halinibiasanyadisebut padding. Ada beberapacarauntukmelakukan padding,


salahsatucaranyaadalah

yang

disebutCiphertext

Stealing

yangakandigunakandalamaplikasi
4. WHIRLPOOL
Whirlpool adalahfungsi hash satu-arah yang dirancangoleh Vincent
Rijmendan Paulo S. L. M. Barreto. Whirlpool beroperasipada message

sembarangdenganpanjangkurangdari 2256 bit, danmenghasilkankeluaran message


digest

denganpanjangtetap,

yaitu

512

dihasilkanadalahangka-angkadalam

bit.
format

Message

digest

yang

heksadesimal.

Karenasatuangkaheksadesimalmempunyaipanjang 4 bit, panjang message digest


yang dihasilkan 512 / 4 = 128 angka.

Whirlpool adalahfungsi hash yang

berbasispada block cipher (penjelasantentang block cipher terdapatpadasubbab 2.


2).

Whirlpool

menggunakankonstruksiMerkle-

Damgardsehinggafungsiinidapatmengubahpesanmasukandenganpanjangsembaran
gdanmenghasilkan message digest denganpanjangtetap.

5. Kriptografi
Kriptografi berasak dari bahasa Yunani, crypto dan graphia.Crypto berarti
secret (rahasia) dan graphia berarti writing (tulisan). Menurut terminologinya,
kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan
dikirim dari suatu tempat ke tempat lain. Cukup banyak algoritma yang sering
dipakai untuk meng-enkripsikan suatu informasi atau data.Untuk kesempatan ini,
mungkin hanya menjelaskan tentang Hash function.Data yang disimpan di dalam
memori komputer perlu ditempatkan dalam suatu cara sedemikian sehingga
pencariannya dapat dilakukan dengan cepat. Setiap data yang berupa record
mempunyai field kunci yang unik yang membedakan suatu record dengan record
yang lainnya. Fungsi Hash digunakan untuk menempatkan suatu record yang
mempunyai nilai kunci k. fungsi hash yang paling umum berbentuk.h(k) = k mod
myang dalam hal ini m adalah jumlah lokasi memori yang tersedia (misalkan
memori bebentuk sel-sel yang diberi indeks 0 sampai m -1). Fungsi h diatas
menempatkan record dengan kunci k pada suatu lokasi memori yang berlamat
h(k).
6. MD-5
Merupakan fungsi Hash yang sering digunakan untuk mengamankan suatu
jaringan komputer dan internet yang sengaja dirancang untuk tujuan sebagai
berikut:

1. Keamanan

: Hal ini tidak bisa dielakkan karena tidak satupun sistem

algoritma yang tidak dapat bisa dipecahkan. Serangan yang sering digunakan
untuk menjebol algoritma Hash adalah dengan menggunakan serangan brute
force
2. Kecepatan : Software yang digunakan mempunyai kecepatan yang tinggi
karena didasarkan sekumpulan manipulasi operan 32 bit.
3. Simple : Tanpa menggunakan struktur data yang kompleks
MD5 digunakan untuk pengkodean password pada sistem operasi. MD5
mengolah masukan yang berbentuk blok 512 bit yang dibagi dalam 16 bentuk
subblok yang masing-masing berukuran 32 bit, sedangkan keluaran terdiri dari 4
blok berukuran 32 bit, dari 4 blok keluaran digabungkan menjadi 128 bit.
MD-5 adalah salah satu aplikasi yang digunakan untuk mengetahui bahwa pesan
yang dikirim tidak ada perubahan sewaktu berada di jaringan. Algoritma MD-5
secara garis besar adalah mengambil pesan yang mempunyai panjang variable
diubah menjadi sidik jari atau intisari pesan yang mempunyai panjang tetap
yaitu 128 bit. Sidik jari ini tidak dapat dibalik untuk mendapatkan pesan, dengan
kata lain tidak ada orang yang dapat melihat pesan dari sidik jari MD-5
Langkah-langkah pembuatan message digest secara garis besar:
1. Penambahan bit-bit pengganjal (padding bits).
2. Penambahan nilai panjang pesan semula.
3. Inisialisasi penyangga (buffer) MD.
4. Pengolahan pesan dalam blok berukuran 512 bit.
berikut contoh hasil MD5 :
Plain teks:
ini merupakan contoh hash MD5
Cipher teksnya menjadi :
13 D6 8B 6C EC 35 8D AE D8 29 21 64 BC 38 C5 8F

7. SHA
SHA adalah serangkaian fungsi cryptographic hash yang dirancang oleh
National Security Agency (NSA) dan diterbitkan oleh NIST sebagai US Federal
Information Processing Standard.SHA adalah Secure Hash Algoritma. Jenis-jenis
SHA yaitu SHA-0, SHA-1, dan SHA-2.Untuk SHA-2 menggunakan algoritma
yang identik dengan ringkasan ukuran variabel yang terkenal sebagai SHA-224,
SHA-256, SHA-384, dan SHA-512.SHA-1 merupakan yang sering digunakan
dalam mengamankan protokol pengiriman.Berikut kelebihan dari SHA 1:
a. validate a password (memvalidasi password); nilai hash dari password akan
disimpan, kemudian ketika password diotentikasi, maka password yang
dimasukkan oleh user akan dihitung hashnya dan jika hashnya sesuai maka
password dinyatakan valid. Namun untuk mendapatkan password yang asli
tidak dapat diperoleh dari hash yang telah disimpan.
b. Challenge

handshake

authentication;

untuk

menghindari

kesalahan

pengiriman pa
8. RIPEMD
RIPEMD-160 adalah salah satu contoh algoritma hash. Algoritma has
memiliki banyak nama: fungsi pembanding, fungsi penyusutan, intisari pesan,
sidik jari, message integrity check (MIC) atau pemeriksa keutuhan pesan dan
manipulation detection code (MDC) atau pendektesi penyelewengan kode.Fungsi
hash satu arah dibuat berdasarkan ide tentang fungsi pemampatan. Fungsi hash
adalah sebuah fungsi atau persamaan matematika yang mengambil input deng an
panjang variabel (preimage) dan merubahnya menjadi panjang yang tetap (biasa
nya lebih pendek), keluarannya biasa disebut nilai hash. Fungsi hash satu arah
adalah sebuah fungsi hash yang berjalan hanya satu arah. Adalah mudah untuk
menghitung nilai hash dari pre-image, tetapi sangat sulit untuk membangkitkan
pre-image dari nilai hash-nya.Metode fungsi hash satu arah adalah berfungsi
melindungi data dari modifkasi. Apabila ingin melindungi data dari modifkasi
yang tidak terdeteksi, dapat di hitung hasil fungsi hash dari data tersebut,
selanjutnya dapat menghitung hasil fungsi hash lagi dan membandingkannya
dengan hasil yang pertama apabila berbeda maka terjadi perubahan selama

pengiriman. Sebagai contohnya adalah bila si pengirim (A) akan mengirim pesan
kepada teman nya (B). Sebelum mengirim, A melakukan hash dari pesannya
untuk mendapatkan nilai hash kemudian dia mengirim pesan itu beserta nilai
hashnya, Lalu B melakukan hash untuk mencari nilai hash dari pesan itu bila
terjadi perbedaan maka sewaktu pengiriman telah terjadi perubahan dari pesan
tersebut. Masukan dari fungsi hash satu arah adalah blok pesan dan keluaran dari
blok text atau nilai hash sebelumnya ini dapat dilihat pada Gambar 9 sehingga
secara garis besar, hash dari blok Mi adalah:Nilai hash ini bersama blok pesan
berikutnya menjadi masukan berikutnya bagi fungsi pemampatan. Nilai hash
keseluruhan adalah nilai hash dari blok paling akhir. Preimage sedapatnya
mengandung beberapa binari yang menggambarkan panjang dari masukan pesan.
Teknik ini digunakan untuk mengatasi masalah yang dapat terjadi bila pesan yang
mempunyai pesan yang tidak samamempunyai nilai hash yang sama.RIPEMD160 adalah suatu fungsi hash kriptografi yang dirancang untuk implementasi pada
perangkat lunak dengan arsitektur 32 bit. Desain utama dari fungsi hash ini ada
dua proses komputasional yang berbeda dan saling independen, dimana hasil dari
kedua proses ini akan digabungkan pada akhir perhitungan dengan sebuah fungsi
kompresi. Sesuai dengan namanya RIPEMD-160 menghasilkan 160 bit. Hal ini
dimaksudkan untuk menyediakan level sekuritas yang lebih tinggi untuk 10 tahun
yang akan datang.Sama halnya dengan varian MD4 lainnya, RIPEMD-160
beroperasi pada prosesor 32-bit. Operasi dasar pada fungsi ini adalah sebagai
berikut:
- rotasi kiri (left-rotation atau left-spin) dari pesan masukan;
- operasi bitwise Boolean (AND, NOT, OR, exclusive-OR);
- penambahan dua buah string sepanjang modulo 232 pada nilai hash.
RIPEMD-160 melakukan kompresi terhadap pesan dengan membaginya ke dalam
blok data yang masing-masing panjangnya 512 bit. Setiap blok kemudian akan
dibagi lagi ke dalam 16 buah string dengan panjang 4-byte, dan setiap string ini
akan dikonversikan menjadi sebuah kata sepanjang 32-bit dengan menggunakan
konvensi little-endian. Untuk menjamin panjang total dari pesan masukan
merupakan kelipatan dari 512 bit, maka pesan masukan terlebih dahulu
ditambahkan (padding) sejumlah bit dengan panjang tertentu. Serupa dengan
varian MD4 lainnya, bit pengganjal (padding bits) ini berupa sebuah angka 1
yang diikuti oleh sejumlah angka 0 (dengan jumlah angka 0 lebih besar dari 0 dan

lebih kecil dari 511). 64 bit terakhir dari perpanjangan masukan ini merupakan
representasi bit dari ukuran panjang input, dengan least significant byte terletak di
awal.Hasil fungsi hash RIPEMD-160 terdapat dalam lima buah pesan yang
masing-masing panjangnya 32-bit, yang juga membentuk internal state dari
algoritma ini. Hasil akhir dari lima pesan ini diubah menjadi sebuah st
9. TIGER
Fungsi kompresi Tiger berdasarkan pada penerapan fungsi internal
block chipper, yang memerlukan 192 bit plaintext dan 512 bit key untuk

menghitung 192 bit ciphertext. Fungsi block chiper diterapkan menurut


konstruksi Davies-Meyer : 512 bit blok message digunakan sebagai kunci
(key) untuk meng-encrypt 192 bit hash value, dan kemudian input hash valuedifeedforwarduntuk menjadikan seluruh fungsi non-invertible.
Tiger dirancang dengan arsitektur 64 bit. Untuk itu, akan dinotasikan sebuah
unsigned integer64 bit sebagai sebuah word.

Wordakan direpresentasikan

dalam bentuk heksadesimal. Tiger menggunakan operasi-operasi aritmetika,


bit-wise XOR, NOT, operasi logika shift, dan aplikasi S-Box. Operasi
aritmetika terhadap word adalah modulus 2^64. Hash value direpresentasikan
secara internal sebagai 3 buah register 64 bit a, b, dan c. Register-register ini
diinisialisasi dengan h0dimana :
a = 0x0123456789ABCDEF
b = 0xFEDCBA9876543210
c = 0xF096A5B4C3B2E187

Masing-masing suksesor 512 bit blok message dibagi kedalam delapan word 64
bit x0, x1, , x7, dan komputasi berikutnya dilakukan untuk meng-update
hihingga hi+1. Komputasi ini terdiri dari 3 laluan (passing), dan di antara
setiap laluan tersebut terdapat sebuah key schedule, yaitu suatu tranformasi
invertible dari data input yang mencegah penyerang memaksakan input di
ketiga round tersebut. Pada akhirnya terdapat suatu tahap feedforwardyang mana
nilai baru a, b dan c di kombinasikan dengan nilai awalnya untuk menghasilkan
hi+1
. save_abc
pass(a,b,c,5)
key_schedule
pass(c,a,b,7)
key_schedule
pass(b,c,a,9)
feedforward dengan
1. save_abcmenyimpan nilai hi
aa = a ;
bb = b ;
cc = c ;
2. pass(a,b,c,mul)adalah
round(a,b,c,x0,mul);
round(b,c,a,x1,mul);
round(c,a,b,x2,mul);
round(a,b,c,x3,mul);
round(b,c,a,x4,mul);
round(c,a,b,x5,mul);
round(a,b,c,x6,mul);
round(b,c,a,x7,mul);
dengan round(a,b,c,x,mul)adalah
c ^= x ;
a -= t1[c_0] ^ t2[c_2] ^ t3[c_4] ^ t4[c_6] ;
b += t4[c_1] ^ t3[c_3] ^ t2[c_5] ^ t1[c_7] ;
b *= mul;

dan c_i adalah byte ke-i dari c (0 i 7). Catatan, kita menggunakan notasi
pemrograman dengan bahasa C, dengan ^ melambangkan operator XOR, dan
notasi X op=Y berati X = X op Y untuk setiap operator op.
3. key_schedule adalah
x0 -= x7 ^ 0xA5A5A5A5A5A5A5A5;
x1 ^= x0;
x2 += x1;
x3 -= x2 ^ ((~x1)<<19);
x4 ^= x3;
x5 += x4;
x6 -= x5 ^ ((~x4)>>23);
x7 ^= x6;
x0 += x7;
x1 -= x0 ^ ((~x7)<<19);
x2 ^= x1;
x3 += x2;
x4 -= x3 ^ ((~x2)>>23);
x5 ^= x4;
x6 += x5;
x7 -= x6 ^ 0x0123456789ABCDEF;
dengan<< dan >> adalah operator logika shift leftdan shift right.
4. feedforwardadalah
a ^= aa ;
b -= bb ;
c += cc ;
Resultan register-register a, b, c adalah 192 bit untuk hash value hi+1.

10. MD4
MD4 di desain untuk sebagai algoritma fungsi hash yang memiliki
kemangkusan dalam segi waktu. MD4 dibuat oleh Ronald Rivest pada Oktober
1990. Pertama-tama kita misalkan pesan memiliki sejumlah b-bit pesan sebagai
input, dan kita menginginkan untuk menghasilkan message digestdari pesan
tersebut. Dalam hal ini, b merupakan sebuah bilangan bulat positif, mungkin nol,

dan bilangan tersebut harus kelipatan dari 8. Kita membagi pesan tersebut sebagai
berikut :
m_0 m_1 . . . m_{b-1}
11. SNEFRU
Snefru adalah fungsi hash kriptografi yang diciptakan oleh Ralph Merkle pada
tahun 1990 yang mendukung keluaran 128 - bit dan 256 - bit . Hal ini dinamakan
Egyptian Pharaoh Sneferu, melanjutkan tradisi Khufu dan Khafre cipher blok
.Desain asli dari Snefru terbukti tidak aman oleh Eli Biham dan Adi Shamir yang
mampu menggunakan kriptanalisis diferensial untuk menemukan hash collisions.
Desain ini kemudian dimodifikasi dengan meningkatkan jumlah iterasi utama
algoritma 2-8 . Meskipun kriptanalisis diferensial dapat mematahkan versi revisi
dengan kompleksitas kurang dari pencarian brute force (certificational
weakness ), serangan membutuhkan 2 ^ { } 88,5 operasi dan dengan demikian
saat ini tidak layak dalam praktek .
12. HAVAL
HAVAL adalah fungsi hash kriptografi . Tidak seperti MD5 , tapi seperti kebanyakan fungsi
hash kriptografi modern, HAVAL dapat menghasilkan hash dengan panjang yang berbeda .
HAVAL dapat menghasilkan hash dalam panjang dari 128 bit , 160 bit , 192 bit , 224 bit , dan
256 bit . HAVAL juga memungkinkan pengguna untuk menentukan jumlah putaran ( 3 , 4 ,
atau 5 ) yang akan digunakan untuk menghasilkan hash .HAVAL diciptakan oleh Yuliang
Zheng , Josef Pieprzyk , dan Jennifer Seberry pada tahun 1992

C. IMPLEMENTASI APLIKASI
Berfungsi untuk meng enkrip sebuah kata menjadi susunan karakter dan angka secara
acak berdasarkan panjang dari hash tersebut, dan melihat hash pada sebuah file, hash
file bisa dapat membandingkan apakah file 1 dan file 2 memiliki hash yang sama.
Contoh program
1. Halaman ini berfungsi sebagai emkripsi sebuah kata atau untuk mengetahui sebuah
hash dari suatu file

Gambar 1 : Tampilan Awal Program


-

Hash Teks = Berfungsi sebagai meng enkrip sebuah kata menjadi deretan karakter
acak
- Algorithm = adalah algoritma yang ada pada metode hash

Raw = terdiri dari 2 yaitu True (20 character binary format) dan False (40
character hex number)

Hash File = Berfungsi untuk mengetahui , hash dari suatu file

Hash Compare = Berfungsi sebagai membandingkan file 1 dan file


2, berdasarkan hash masing-masing file tersebut
2.Hash Text ( MD5 Algoritma )

Gambar 2 : Hash Text


3.Hash File ( Snefru Algoritma )

Gambar 3 : Hash File

4.Hash Compare ( whirlpool/raw:true )

D. KESIMPULAN
Metode hash mampu mengenkripsi suatu kata berdasarkan algoritma yang di pakai,
metode ini juga sangat berguna jika di gunkana untuk mengenkripsi suatu password
pada suatu website yang kita buat, dan melihat hash pada suatu file dan mengcompare
(membandingkan) file tersebut.

Anda mungkin juga menyukai