Kamis, 15 Oktober 2015

FUNGSI HASH 
Fungsi HASH
Sebuah fungsi hash adalah fungsi yang dapat digunakan untuk memetakan data ukuran sewenang-wenang untuk data ukuran tetap. Nilai-nilai yang dikembalikan oleh fungsi hash disebut nilai hash, kode hash, jumlah hash, atau hanya hash. Salah satu penggunaan adalah struktur data yang disebut tabel hash, banyak digunakan dalam perangkat lunak komputer untuk cepat lookup data. Fungsi hash table mempercepat atau database lookup dengan mendeteksi catatan digandakan dalam file besar. Contoh adalah menemukan membentang serupa di urutan DNA. Mereka juga berguna dalam kriptografi. Sebuah fungsi hash kriptografi memungkinkan seseorang untuk dengan mudah memverifikasi bahwa beberapa data masukan peta dengan nilai hash yang diberikan, tetapi jika input data tidak diketahui, itu adalah sengaja sulit untuk merekonstruksi (atau alternatif setara) dengan mengetahui nilai hash yang tersimpan. Ini digunakan untuk menjamin integritas data yang ditransmisikan, dan merupakan blok bangunan untuk HMACs, yang menyediakan otentikasi pesan.
Dalam Kriptografi, MD5 (Message-Digest algorithm 5) adalah banyak digunakan fungsi hash kriptografi dengan nilai hash 128-bit. Sebagai standar Internet (RFC 1321), MD5 telah digunakan dalam berbagai macam aplikasi keamanan, dan juga biasa digunakan untuk memeriksa integritas file. MD5 dirancang oleh Ronald Rivest pada tahun 1991 untuk menggantikan fungsi hash sebelumnya, MD4. Pada tahun 1996, sebuah cacat telah ditemukan dengan desain; sementara itu tidak kelemahan jelas fatal, pengguna kriptografi mulai menganjurkan menggunakan algoritma lain, seperti SHA-1 (klaim terbaru menunjukkan bahwa SHA-1 rusak, namun). Pada tahun 2004, kelemahan yang lebih serius ditemukan menyebabkan penggunaan algoritma untuk tujuan keamanan dipertanyakan. Hal ini sekarang dikenal bagaimana, dengan bekerja beberapa jam ', menghasilkan tabrakan MD5. Artinya, untuk menghasilkan dua string byte dengan hash yang sama. Karena ada jumlah terbatas output MD5 (2128), tetapi jumlah tak terbatas masukan mungkin, telah lama diketahui bahwa tabrakan tersebut harus ada, tetapi itu telah sebelumnya diyakini impractically sulit untuk menemukan satu. Hasilnya adalah bahwa hash MD5 dari yang beberapa informasi tidak lagi unik mengidentifikasi itu. Jika saya hadir Anda dengan informasi seperti kunci publik, hash MD5 yang tidak mungkin secara unik mengidentifikasi itu; Saya mungkin memiliki kunci publik kedua dengan hash MD5 yang sama. Namun, serangan ini membutuhkan kemampuan untuk memilih kedua pesan tumbukan. Mereka tidak membuatnya mudah untuk melakukan serangan preimage, menemukan pesan dengan hash MD5 yang ditentukan, atau serangan preimage kedua, menemukan pesan dengan hash MD5 yang sama sebagai pesan yang diberikan. Dengan demikian, hash MD5 lama, dibuat sebelum serangan ini dikenal, aman untuk saat ini. Secara khusus, tanda tangan digital lama masih dapat dianggap handal. Seorang pengguna mungkin tidak ingin menghasilkan atau percaya apapun tanda tangan baru menggunakan MD5 jika ada kemungkinan bahwa perubahan kecil untuk teks (tabrakan sedang dibangun melibatkan membalik beberapa bit di bagian 128-byte input hash) akan merupakan bermakna berubah. Jaminan ini didasarkan pada kondisi saat pembacaan sandi. Situasi dapat berubah tiba-tiba, tetapi menemukan tabrakan dengan beberapa data yang sudah ada adalah masalah yang jauh lebih sulit, dan harus ada waktu untuk transisi yang tertib.


SHA
Secure Hash Algorithm (SHA), algoritma yang dispesifikasikan dalam Secure Hash Standard (SHS, FIPS 180), dikembangkan oleh NIST dan digunakan bersama DSS (Digital Signature Standart). SHA-1 adalah revisi terhadap SHA yang dipublikasikan pada tahun 1994. SHA disebut aman (secure) karena ia dirancang sedemikian rupa sehingga secara komputasi tidak mungkin menemukan pesan yang berkoresponden denganmessage digest yang diberikan.
Algoritma SHA mengambil pesan yang panjangnya kurang dari 264 bit dan menghasilkan message digest 160-bit . Algoritma ini lebih lambat daripada MD5, namun message digest yang lebih besar membuatnya semakin aman dari bruteforce collision dan serangan inversi.
Karena SHA-1 dan MD5 dikembangkan atau diturunkan dari MD4 maka keduanya mempunyai kemiripan satu sama lain, baik kekuatan dan karakteristiknya.

Berikut perbedaan dari SHA-1 dan MD5 :
  • Keamanan terhadap serangan brute-force. Hal yang paling penting adalah bahwa SHA-1 menghasilkan diggest 32-bit lebih panjang dari MD5. Dengan brute-force maka SHA-1 lebih kuat dibanding MD5.
  • Keamanan terhadap kriptanalisis. Kelemahan MD5 ada pada design sehingga lebih mudah dilakukan kriptanalisis dibandingkan SHA-1
  • Kecepatan. Kedua algoritma bekerja pada modulo 232 sehingga keduanya bekerja baik pada arsitektur 32 bit. SHA-1 mempunyai langkah lebih banyak dibandingkan MD5 ( 80 dibanding MD5 64 ) dan harus memproses 160 bit buffer dibanding DM5 128 bit buffer, sehingga SHA-1 bekerja lebih lambat dibanding MD5 pada perangkat keras yang sama.
  • Simplicity. Kedua algoritma simple untuk dijelaskan dan mudah untuk diiemplementasikan karena tidak membutuhkan program yang besar atau tabel subtitusi yang besar pula.







Referensi



Tidak ada komentar:

Posting Komentar