Generator hash MD5

Tambahkan ke situs Metainformasi

Alat lainnya

Generator hash MD5

Generator hash MD5

MD5 adalah algoritme hash 128-bit yang dibuat oleh ilmuwan Ronald L. Rivest pada awal 1990-an. Singkatan MD5 adalah singkatan dari Message Digest Version 5.

Enkripsi MD5 didasarkan pada hashing, yang melibatkan pembentukan "sidik jari" atau "jumlah" untuk memverifikasi keasliannya lebih lanjut. Dengan menggunakan metode ini, Anda dapat memverifikasi integritas informasi, serta penyimpanan hash sandi.

Sejarah MD5

Sejarah Message Digest Algorithm (MD5) dimulai pada tahun 1991, ketika profesor MIT Ronald L. Rivest melaporkan pembuatan algoritme baru yang menggantikan MD4 yang sudah usang. Adapun MD4, sejumlah kekurangan memang ditemukan di dalamnya, seperti yang kemudian ditulis oleh kriptolog Jerman Hans Dobbertin.

Rivest menjelaskan algoritme MD5 baru di RFC 1321.

Pengerjaan algoritme dilanjutkan oleh peneliti Bert den Boer dan Anton Bosselars, yang pada tahun 1993 membuktikan kemungkinan tabrakan semu di MD5, ketika vektor inisialisasi yang berbeda dapat cocok dengan intisari pesan yang sama.

Selanjutnya, pada tahun 1996 Hans Dobbertin mengklaim telah menemukan tabrakan di MD5. Pada saat itu, algoritma hashing yang lebih disukai dikenal, seperti fungsi hash kriptografi RIPEMD-160 - dikembangkan oleh Hans Dobbertin, Anton Bosselars dan Bart Prenel, Whirlpool - dikembangkan oleh Vincent Raymen dan Paulo Barreto dan algoritma hashing kriptografi SHA-1.

Karena ukuran hash yang relatif kecil (128 bit) di MD5, ada pembicaraan tentang kemungkinan serangan ulang tahun. Proyek MD5CRK, diluncurkan oleh Jean-Luc Cook pada tahun 2004, bertujuan untuk mempelajari kerentanan algoritma menggunakan serangan ulang tahun. Namun, setelah lima bulan, pada 17 Agustus 2004, proyek tersebut dihentikan karena ditemukannya kerentanan dalam algoritme oleh sekelompok kriptografer China yang dipimpin oleh Lai Xuejia.

Pada bulan Maret 2005, ahli matematika dan kriptografer Benne de Weger, Arjen Lenstra, dan Wang Xiaoyun membuat dua dokumen X.509 dengan hash yang sama dan kunci publik yang berbeda.

Setahun kemudian, pada Maret 2006, sebuah algoritme diterbitkan oleh kriptografer Ceko Vlastimil Klima, yang memungkinkan Anda menentukan tabrakan pada komputer sederhana hanya dalam satu menit. Algoritme ini kemudian dikenal sebagai metode "tunneling".

Sebagai hasil dari analisis hasil kerja, pada tahun 2008, divisi Administrasi Keamanan Siber Nasional Departemen Keamanan Dalam Negeri AS (US-CERT) merekomendasikan agar setiap orang yang terlibat dalam pengembangan perangkat lunak, situs web, serta pengguna jaringan, berhenti menggunakan algoritma MD5 , terlepas dari tujuan penerapannya. Alasan untuk rekomendasi semacam itu adalah ketidakandalan yang dia tunjukkan dalam proses mempelajarinya.

Pada bulan Desember 2010, ahli kriptologi Tiongkok Tao Xie dan Feng Denguo menemukan tabrakan pesan 512 bit (satu blok). Sebelumnya, tabrakan hanya ditemukan pada pesan yang panjangnya dua blok atau lebih. Belakangan, Mark Stevens mencapai hasil serupa dengan menerbitkan blok dengan hash MD5 yang sama. Dia juga mengembangkan algoritme untuk mendapatkan tabrakan jenis ini.

Dokumen terakhir yang mengakhiri sejarah pengembangan algoritme MD5 adalah permintaan komentar - RFC 6151 (RFC adalah dokumen resmi yang dikembangkan oleh Internet Engineering Council (IETF), yang menjelaskan spesifikasi untuk teknologi), yang sebenarnya mengenali MD5 sebagai algoritma hashing yang tidak aman . Dokumen tersebut merekomendasikan untuk mengabaikannya, memilih kelompok algoritme kriptografi SHA-2 sebagai alternatif.

Algoritme MD5 yang dibahas dianggap sebagai salah satu standar algoritme pertama yang digunakan untuk memeriksa integritas file dan menyimpan sandi di database aplikasi web.

Namun, pada kenyataannya, fungsionalitas yang relatif sederhana, panjang keluaran yang pendek, dan kesederhanaan operasi yang dilakukan, menjadi keunggulan algoritme, juga menentukan kerugiannya - MD5 mengacu pada algoritme yang rentan terhadap peretasan dan memiliki tingkat peretasan yang rendah perlindungan terhadap serangan ulang tahun.

Apa itu MD5?

Apa itu MD5?

Algoritme hashing MD5 dapat digunakan di berbagai area yang terkait dengan pembuatan tanda tangan digital elektronik, kata sandi aman, kunci online kriptografis. Itu memungkinkan untuk memeriksa integritas informasi pada PC.

Awalnya, MD5 dianggap sebagai algoritme enkripsi yang relatif kuat, tetapi karena kekurangan yang teridentifikasi selama penelitian, saat ini disarankan untuk menggantinya dengan algoritme hashing lain yang lebih aman.

Contoh penggunaan

Keunggulan utama algoritme MD5 adalah cakupan aplikasinya yang luas.

Algoritme memungkinkan Anda memeriksa keaslian dan integritas informasi yang diunduh

Misalnya, bersama dengan paket untuk menginstal software, ada nilai checksum untuk verifikasi.

Penggunaan algoritme MD5 untuk hashing kata sandi juga dipraktikkan

Misalnya, sistem operasi Unix secara aktif menggunakan algoritme ini sebagai alat hashing. Perlu dicatat bahwa di beberapa sistem Linux, metode MD5 juga digunakan secara aktif untuk menyimpan kata sandi.

Cara menyimpan kata sandi berikut diketahui:

  • Penyimpanan standar tanpa hashing. Kelemahan dari metode ini adalah tingginya risiko kebocoran informasi saat database diretas.
  • Hanya hash sandi yang disimpan. Data tersebut mudah ditemukan menggunakan tabel hash yang telah disiapkan sebelumnya. Untuk mengisi tabel tersebut, kata sandi umum dengan kerumitan rendah digunakan.
  • Menambahkan beberapa karakter ke kata sandi yang disebut "salt". Setelah itu, hasilnya di-hash. Kata sandi yang diperoleh sebagai hasil dari tindakan tersebut harus disimpan dalam teks yang jelas. Saat mencari kata sandi yang dibuat dengan cara ini, tabel tidak akan membantu.

Algoritme hashing MD5 dapat digunakan untuk memverifikasi file yang diunduh dari web

Ini menjadi mungkin saat menggunakan utilitas khusus yang dapat mengubah properti file dan mengaktifkan penggunaan algoritme enkode hash.

MD5 digunakan saat membuat aplikasi web

Dalam proses mengembangkan dan mengonfigurasi sistem autentikasi, skrip, atau panel, Anda dapat membuat kode hash untuk setiap baris.

Keandalan algoritme MD5

Teknologi hashing yang kami kenal sebagai algoritme MD5 telah lama dianggap cukup andal. Pada saat yang sama, tidak ada yang berbicara tentang idealitasnya. Tidak ada jaminan bahwa algoritme akan kebal dan memberikan informasi yang seratus persen tidak dapat diganggu gugat.

Sebagai hasil kerja sejumlah ilmuwan, kekurangan tertentu dari teknologi ini teridentifikasi. Yang utama adalah kerentanan akibat deteksi tabrakan selama enkripsi.

Tabrakan adalah probabilitas mencapai hasil keluaran yang sama ketika data masukan yang berbeda dimasukkan. Semakin tinggi probabilitas ini, semakin rendah tingkat perlindungan algoritme yang digunakan.

Para peneliti melakukan kriptanalisis dan mengidentifikasi beberapa cara untuk memecahkan hash MD5:

  • Serangan brute-force dapat dianggap sebagai metode peretasan universal. Tapi, ada juga kekurangannya - metodenya sangat panjang. Untuk menangkalnya, digunakan teknik menambah jumlah tuts. Metode ini sering digunakan untuk menilai tingkat kekuatan dan kekuatan enkripsi sandi.
  • RainbowCrack adalah program khusus yang memungkinkan Anda membuat basis hash, yang menjadi dasar pemecahan kata sandi huruf dan angka yang hampir instan.
  • Untuk memilih kata sandi menggunakan kamus, database kamus dan program siap pakai digunakan.
  • Saat menggunakan metode deteksi tabrakan, mereka mengambil nilai fungsi serupa untuk pesan berbeda yang memiliki awal yang sama. Metode ini digunakan secara aktif pada akhir abad ke-20.

Rumus untuk mendapatkan kode hash yang identik adalah: MD5(4L1) = MD5(4L2).

Pada tahun 2004, ilmuwan China menemukan kerentanan dalam sistem yang memungkinkan untuk mendeteksi tabrakan dalam waktu singkat.

Pada tahun 2006, ditemukan metode yang memungkinkan Anda mendeteksi file berbahaya di komputer biasa menggunakan apa yang disebut "terowongan".

Terlepas dari masalah tertentu yang terkait terutama dengan kerentanan MD5, algoritme ini masih diminati karena penggunaan aktifnya dalam pengembangan independen aplikasi web, serta dalam kasus lain yang diperlukan.