Download docx - Dokumen Hash

Transcript
Page 1: Dokumen Hash

Iqna Kondias

Krisna Aditya

7F pagi

HASH

Page 2: Dokumen 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...

Page 3: Dokumen Hash

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 oleh Mark

Adler.Algoritmainimampumenjalankantesredundansisiklik sepanjang 32 bit

untukmenjagadarimodifikasimendadakterhadapdata ,sepertidistorsi yang

terjadipadasaattransmisi 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

Page 4: Dokumen Hash

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 Cyclic Redundancy Check ,

merupakanfungshi hash yang digunakanuntukmenghasilkan checksum dari 1

blok data, sepertipaketpadalalulintasjaringanataublokpada file komputer,

Checksum

digunakanuntukmengidentifikasikerusakanpadasaatpenyimpanandansetelahtrans

misi data dilakukan. CRC

dikalkulasidandigabungkansebelumtransmisiataupenyimpanandandiverifikasioleh

penerimauntukmenyatakanbahwatidakadaperubahan yang terjadipada proses

pengiriman. CRC

lebihpopularkarenakesederhanaanuntukmengimplementasikandalamperangkatker

asbinarudanmudahdianalisissecaramatematik.Selainitu, CRC

jugabekerjabaikdalammendekteksikerusakanumum yang

disebabkanolehkebisinganpadasaluranpengiriman.Checksum dari CRC

adalahsisapembagianbinertanpa bit carry darisebuah stream 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

Page 5: Dokumen Hash

GOST merupakanblokchipperdaribekasUni Soviet, yang

merupakansingkatandariGosudarstvennyi Standard atau "StandarPemerintah".

Standarinibernomor 28147-89, olehsebabitumetodeiniseringdisebutsebagai GOST

28147-89.GOST secarastructuralmiripdengan DES.GOST merupakanblokchiper

64 bit denganpanjangkunci 256 bit.

Algoritmainimengiterasialgoritmaenkripsisederhanasebanyak 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 f mula-mulabagiankanan data

ditambahdengansubkuncike-i modulus

232.Hasilnyadipecahmenjadidelapanbagian 4 bit dansetiapbagianmenjadi input s-

box 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 s-

box kemudiandikombinasikanmenjadibilangan 32 bit

kemudianbilanganinidirotasi 11 bit kekiri.Akhirnyahasiloperasiini di-xordengan

data bagiankiri yang

kemudianmenjadibagiankanandanbagiankananmenjadibagiankiri

(swap).Padaimplementasinyanantirotasipadafungsi f

dilakukanpadaawalsaatinisialisasisekaligusmembentuk s-box 32 bit

dandilakukansatu kali

sajasehinggalebihmenghematoperasidandengandemikianmempercepat proses

enkripsi/dekripsi.Subkuncidihasilkansecarasederhanayaitudari 256 bit kunci yang

dibagimenjadidelapan 32 bit blok : k1, k2, …, k8.

Setiapputaranmenggunakansubkunci yang

berbeda.Dekripsisamadenganenkripsidenganurutank1 dibalik. Standar GOST

tidakmenentukanbagaimanamenghasilkan s-box

sehinggaadaspekulasibahwasebagianorganisasi di (eks) Sovyetmempunyai s-box

yang baikdansebagiandiberi s-box yang buruksehinggamudahdiawasi/dimata-

Page 6: Dokumen Hash

matai.Kelemahan GOST yang diketahuisampaisaatiniadalahkarena key schedule-

nya yang sederhana,

sehinggapadakeadaantertentumenjadititiklemahnyaterhadapmetode

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. Mode

lainyaadalah CBC (Cipher Block Chaining)

dimanaplainteksdikaitkanolehoperasixordenganciphertekssebelumnya,

metodainidapatdijelaskansepertipadaGambar 1.Untuk mode inidiperlukansebuah

Initialization Vector (IV) yang akan di-xordenganplainteks yang paling awal. IV

initidakperludirahasiakankarenabilakitaperhatikanjikaterdapat n

blokmakaakanterdapat n-1 IV yang diketahui. Metodalain yang dikenaladalah

CFB (Chiper Feedback), OFB (Output Feedback), Counter Mode,

dll.Kebanyakan data tidakbulatdibagikedalam 64 bit (8 byte),

olehsebabitudalamblok cipher diperlukan data

tambahanpadablokterakhiruntukmenggenapiblokmenjadi 64 bit,

halinibiasanyadisebut padding. Ada beberapacarauntukmelakukan padding,

salahsatucaranyaadalah yang disebutCiphertext Stealing

yangakandigunakandalamaplikasi

Page 7: Dokumen Hash

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 bit. Message digest yang

dihasilkanadalahangka-angkadalam format 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

Page 8: Dokumen Hash

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:

Page 9: Dokumen Hash

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

Page 10: Dokumen Hash

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.RIPEMD-

160 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

Page 11: Dokumen Hash

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 valuedi-

feedforwarduntuk 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 :

Page 12: Dokumen Hash

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] ;

Page 13: Dokumen Hash

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

Page 14: Dokumen Hash

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

Page 15: Dokumen Hash

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

Page 16: Dokumen Hash

2.Hash Text ( MD5 Algoritma )

Gambar 2 : Hash Text

3.Hash File ( Snefru Algoritma )

Gambar 3 : Hash File

Page 17: Dokumen Hash

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.