Kripto Hash
Kripto Hash
Pertemuan 6
1
Pengertian dasar dari hashing
• Secara gampang dan awam adalah kegiatan meringkas. Dalam konteks
pengindek teks, hashing merupakan pengubahan serangkaian karakter
menjadi nilai atau kode yang menjadi “wakil” dari rangkaian karakter
tersebut. Dengan kegiatan meringkas inilah, maka tercipta wakil-wakil
yang kita sebut sebagai indeks untuk digunakan dalam temu-kembali
informasi atau information retrieval . Berbeda dengan kegiatan
membuat indeks yang dilakukan secara hastawi (manual) oleh
manusia, kegiatan hashing dilakukan oleh mesin komputer berdasarkan
program.
2
Contoh hash
• Sebagai contoh, mari kita perhatikan sebuah pangkalan data yang
menyimpan informasi tentang mahasiswa. Nama mereka diurut
menurut abjad, katakanlah ada empat nama yang diurut menurut nama
belakang (nama keluarga):
• Abimanyu, Sarah
• Endrawan, Rudi
• Malik, Wandi
• Sutrisno, Dadi
3
Masing-masing nama di atas merupakan semacam kata-kunci untuk
informasi tentang kegiatan dan kinerja mereka sebagai mahasiswa. Jika
seseorang ingin mengambil data dari salah satu mahasiswa, maka
biasanya ada mekanisme bagi komputer untuk menelusur satu persatu
(karakter demi karakter) nama-nama tersebut sampai akhirnya bertemu
dengan nama yang dicari. Ini akan memakan waktu, terutama jika
jumlah nama yang harus ditelusur sangat banyak. Tetapi, kalau setiap
nama mengalami hashing, maka dapat dibuat sebuah kode bagi setiap
nama itu. Misalnya, dibuat kode 4 angka, sehingga:
• 7864 Abimanyu, Sarah
• 9802 Endrawan, Rudi
• 1990 Malik, Wandi
• 8822 Sutrisno, Dadi
4
Manfaat dari hash
• hashing Algoritme ini juga dapat dimanfaatkan untuk pembuatan
tandatangan digital (digital signatures) dan proses autentifikasi dalam
manajemen identifikasi digital.
5
Fungsi Hash
6
Pendahuluan
• Fungsi hash: fungsi yang
- menerima masukan string yang panjangnya
sembarang,
- lalu mentransformasikannya menjadi string
keluaran yang panjangnya tetap (fixed) (umumnya
berukuran jauh lebih kecil daripada ukuran string
semula).
7
Masukan Nilai hash
"Tsunami" menjadi
kata yang populer Fungsi hash a996de118c61eac49
di Indonesia saat ini 63989aa2d73e67e
8
• Persamaan fungsi hash:
h = H(M)
M = pesan ukuran sembarang
h = nilai hash atau pesan-ringkas (message-digest)
h <<<< M
9
Fungsi Hash Satu-Arah
• Fungsi hash satu-arah (one-way function):
– fungsi hash yang bekerja dalam satu arah.
– satu arah: pesan yang sudah diubah
menjadi message digest tidak dapat
dikembalikan lagi menjadi pesan semula
(irreversible).
10
Sifat-sifat fungsi hash satu-arah adalah sebagai berikut:
1. Fungsi H dapat diterapkan pada blok data berukuran berapa saja.
2. H menghasilkan nilai (h) dengan panjang tetap (fixed-length
output).
3. H(x) mudah dihitung untuk setiap nilai x yang diberikan.
4. Untuk setiap h yang dihasilkan, tidak mungkin dikembalikan nilai
x sedemikian sehingga H(x) = h. Itulah sebabnya fungsi H
dikatakan fungsi hash satu-arah (one-way hash function).
5. Untuk setiap x yang diberikan, tidak mungkin mencari y x
sedemikian sehingga H(y) = H(x).
6. Tidak mungkin mencari pasangan x dan y sedemikian sehingga
H(x) = H(y).
11
Sifat-sifat fungsi hash satu-arah adalah sebagai berikut:
1. Fungsi H dapat diterapkan pada blok data berukuran
berapa saja.
2. H menghasilkan nilai (h) dengan panjang tetap (fixed-
length output).
3. H(x) mudah dihitung untuk setiap nilai x yang diberikan.
4. Untuk setiap h yang dihasilkan, tidak mungkin
dikembalikan nilai x sedemikian sehingga H(x) = h. Itulah
sebabnya fungsi H dikatakan fungsi hash satu-arah (one-
way hash function).
5. Untuk setiap x yang diberikan, tidak mungkin mencari y
x sedemikian sehingga H(y) = H(x).
6. Tidak mungkin mencari pasangan x dan y sedemikian
sehingga H(x) = H(y).
12
Masukan fungsi hash adalah blok pesan (M) dan keluaran dari
hashing blok pesan sebelumnya,
hi = H(Mi, hi – 1)
Mi Fungsi hash hi
hi – 1 satu-arah
13
• Ada beberapa fungsi hash satu-arah yang sudah
dibuat orang, antara lain:
- MD2, MD4, MD5,
- Secure Hash Function (SHA),
- Snefru,
- N-hash,
- RIPE-MD, dan lain-lain
15
Aplikasi Fungsi Hash Satu-Arah
1. Menjaga integritas data
- Fungsi hash sangat peka terhadap perubahan 1
bit pada pesan
- Pesan berubah 1 bit, nilai hash berubah sangat
signifikan.
- Bandingkan nilai hash baru dengan nilai hash
lama. Jika sama, pesan masih asli. Jika tidak
sama, pesan sudah dimodifikasi
16
Contoh:
(i) Pesan (berupa file) asli
Pada bulan Oktober 2004 ini, suhu udara kota Bandung terasa
lebih panas dari hari-hari biasanya. Menurut laporan Dinas
Meteorologi Kota Bandung, suhu tertinggi kota Bandung
adalah 33 derajat Celcius pada Hari Rabu, 17 Oktober yang
lalu. Suhu terseut sudah menyamai suhu kota Jakarta pada
hari-hari biasa. Menurut Kepala Dinas Meteorologi,
peningkatan suhu tersebut terjadi karena posisi bumi
sekarang ini lebih dekat ke matahari daripada hari-hari
biasa.
18
• Program yang di-downlaod dari internet sering dilengkapi
dengan nilai hash untuk menjamin integritas file.
19
2. Menghemat waktu pengiriman.
- Misal untuk memverifikasi sebuah salinan arsip dengan
arsip asli.
- Salinan dokumen berada di tempat yang jauh dari
basisdata arsip asli
- Ketimbang mengirim salinan arsip tersebut secara
keseluruhan ke komputer pusat (yang membutuhkan
waktu transmisi lama), lebih mangkus mengirimkan
message digest-nya.
- Jika message digest salinan arsip sama dengan message
digest arsip asli, berarti salinan arsip tersebut sama
dengan arsip master.
20
3. Menormalkan panjang data yang beraneka ragam.
- Misalkan password panjangnya bebas (minimal
8 karakter)
- Password disimpan di komputer host (server)
untuk keperluan otentikasi pemakai komputer.
- Password disimpan di dalam basisdata.
- Untuk menyeragamkan panjang field password
di dalam basisdata, password disimpan dalam
bentuk nilai hash (panjang nilai hash tetap).
21
Bahan Ujian Tengah Semester
• Pengenalan keamanan jaringan.
• Arsitektur keamanan OSI.
• Serangan terhadap jaringan.
• Dasar-dasar Cryptography.
22
Penelitian Fungsi Hash
23
Penelitian Fungsi Hash
24
Terima Kasih
25