Rainbow table adalah lookup
table yang digunakan untuk mendapatkan plain text dari password yang telah
dirubah menggunakan fungsi hash. Rainbow table berawal dari ide Martin Edward
Hellman pada tahun 1982. Kemudian dikembangkan oleh Philippe Oechslin dengan
metode Faster Time Memory Trade Off pada tahun 2003. Pada penelitian
yang dilakukan Philippe Oechslin, penggunaan rainbow table dapat mempersingkat
waktu penyerangan terhadap Microsoft's LAN Manager passwords sampai 99,9%,
yaitu dari 101 detik hanya menjadi 13,6 detik.
Cracking password menggunakan
rainbow table tidak sesulit cracking dengan cara brute force. Rainbow table
membuat pssword cracking lebih cepat dibandingkan dengan metode sebelumnya,
seperti brute force attack dan dictionary attack. Berdasarkan pada software
password cracking yang menggunakan metode rainbow table mampu memecahkan
password 14 karakter alfanumerik sekitar 160 detik.
Rainbow table dibentuk oleh
fungsi hash dan fungsi reduksi. Fungsi hash merubah plaintext enjadi hash,
sedangkan fungsi reduksi merubah hash menjadi plain text. Tetapi, perlu diingat
bahwa fungsi reduksi bukan merupakan kebalikan dari fungsi hash. Fungsi hash
dan fungsi reduksi bersifat irreversible. Jadi, apabila kita merubah
sebuah hash dengan menggunakan fungsi reduksi, maka plain text yang didapat
bukanlah plain text aslinya, melainkan plain text lain.
Konsep dasar pambangunan
rainbow table sebagai berikut
Gambar 2
Gambar 1
Kererangan gambar :
Gambar 1
Pembentukan hash kode dari
suatu plain text dengan menggunakan fungsi hash, misalnya MD5.
Gambar 2
Setelah plain text dirubah menjadi hash, akan dibentuk suatu palin text dengan proses reduce. Reduce merupakan suatu fungsi yang akan mereduksi hash kode menurut algoritma tertentu, fungsi reduksi ini bukan merupakan kebalikan dari fungsi hash, karena hash sendiri merupakan fungsi satu arah. Jadi ketika suatu pain text sudah di-generate hash kodenya, maka tidak bisa dikembalikan menjadi plain text dengan fungsi yang sama.
Setelah plain text dirubah menjadi hash, akan dibentuk suatu palin text dengan proses reduce. Reduce merupakan suatu fungsi yang akan mereduksi hash kode menurut algoritma tertentu, fungsi reduksi ini bukan merupakan kebalikan dari fungsi hash, karena hash sendiri merupakan fungsi satu arah. Jadi ketika suatu pain text sudah di-generate hash kodenya, maka tidak bisa dikembalikan menjadi plain text dengan fungsi yang sama.
Gambar 3
Proses yang terjadi dalam
pembangunan rainbow table adalah proses hashing
dan reducing berulang dan
nantinya yang akan disimpan di dalam
rainbow table hanya berupa start
plain text sample dan hash kode terakhir yang di-generate.
Sebagai contoh dari proses di
atas disajikan dalam tabel berikut,
Starting
Point
|
End Point
|
Makalah
|
kriptografi
|
Keamanan
|
informasi
|
Informatika
|
telematika
|
Untuk proses peretasan password dapat dapat
dilakukan sebagai berikut,
Misal diketahui suatu hash
code f1e2d3c4 dan akan dicari plaintext-nya. Langkah pencarian tersebut dapat
dilihat pada diagram di bawah ini,
Penjelasan gambar :
1. Dengan menggunakan fungsi reduksi
terakhir hash code f1e2d3c4, diubah menjadi plaintext. Kemudian
dicek apakah password hasil fungsi reduksi terdapat pada kolom endpoint pada
tabel.
2. Jika langkah 1 gagal, artinya indonesia
tidak terdapat pada tabel, maka dengan menggunakan dua fungsi reduksi terakhir
dibuat rantai hash. Apabila tidak terdapat password pada tahap ini, dilakukan
pembuatan rantai dengan menggunakan tiga reduksi, empat reduksi, dan seterusnya
sampai password ditemukan. Jika tidak terdapat password pada rantai, maka
password gagal didapat.
3. Jika langkah 2 berhasil (terdapat
password pada rantai), maka password didapat dengan cara membentuk rantai
dimulai dari starting point dari end point yang bersangkutan. Dalam contoh ini,
starting point yang dimaksud adalah telematika.
4. Pada langkah ini, dimulai dari starting
point, dalam hal ini informatika,
dibuat rantai. Pembuatan rantai dilakukan dengan cara membandingkan nilai hash
dari starting point dengan nilai hash yang dimaksud (f1e2d3c4). Jika
tidak sesuai, lakukan fungsi reduksi dari nilai hash ini. Begitu seterusnya
sampai didapat nilai hash yang dimaksud. Password yang bersesuaian adalah
password sebelum dilakukan hash sehingga menghasilkan nilai hash yang dimaksud.
Dalam contoh ini password dari nilai hash code f1e2d3c4 adalah kuliah.
Tidak
berbeda dengan metode-metode cracking password sebelumnya, metode rainbow table
juga memiliki kelebihan dan kekurangan. Kelebihan dari metode ini adalah waktu
yang dibutuhkan untuk meretas password relatif cepat, adapun kekurangannya
antara lain, membutuhkan komputasi dan memori yang besar, ada kemungkinan
terjadi looping (kembali ke start plaintext lagi), kemungkinan terdapat dua
atau lebih plaintext atau hases yang berujung sama.
Rainbow Table >>>>> Download Now
BalasHapus>>>>> Download Full
Rainbow Table >>>>> Download LINK
>>>>> Download Now
Rainbow Table >>>>> Download Full
>>>>> Download LINK