Langsung ke konten utama

Perbandingan MD5 dan SHA

Nah, pada penulisan saya yang sekarang ini akan membahas dan membandingkan MD5 dengan SHA-1, tapi sebelumnya kita kenalan dulu sama krptografi... hehe..
Kriptografi (cryptography) berasal dari bahasa Yunani yaitu cryptos artinya rahasia (secret) dan graphein artinya tulisan (writing). Jadi kriptografi berarti tulisan rahasia (secret writing). Kriptografi tidak hanya ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, nirpenyangkalan, otentikasi tetapi juga sekumpulan teknik yang berguna.
Berdasarkan kunci yang digunakan untuk enkripsi dan dekripsi, kriptografi dapat dibedakan lagi menjadi kriptografi kunci simetri dan kriptografi kunci asimetri. Pada sistem kriptografi kunci simetri, kunci untuk enkripsi sama dengan kunci untuk dekripsi. Jika kunci untuk enkripsi tidak sama dengan kunci untuk dekripsi, maka dinamakan sistem kriptografi asimetri.
Nah, didalam kriptografi ini, terdapat fungsi Hash yaitu suatu cara menciptakan “fingerprint” dari berbagai data masukan. Fungsi Hash akan mengganti atau mentranspose-kan data tersebut untuk menciptakan fingerprint, yang biasa disebut hash value. Hash value biasanya digambarkan sebagai suatu string pendek yang terdiri atas huruf dan angka yang terlihat random (data biner yang ditulis dalam notasi heksadesimal). Hash juga merupakan suatu metode yang secara langsung mengakses record-record dalam suatu tabel dengan melakukan transformasi aritmatik pada key yang menjadi alamat dalam tabel tersebut. Key merupakan suatu input dari pemakai di mana pada umumnya berupa nilai atau string karakter.

Pelacakan dengan menggunakan Hash terdiri dari dua langkah utama, yaitu:
1. Menghitung Fungsi Hash.
Bila terjadi dua atau lebih key yang berbeda dipetakan ke alamat yang sama dalam tabel. Peristiwa ini disebut dengan collision (tabrakan). Karena itulah diperlukan langkah berikutnya, yaitu collision resolution (pemecahan tabrakan).
2. Collision Resolution.
Collision resolution merupakan proses untuk menangani kejadian dua atau lebih key di-hash ke alamat yang sama. Cara yang dilakukan jika terjadi collision adalah mencari lokasi yang kosong dalam tabel Hash secara terurut. Cara lainnya adalah dengan menggunakan fungsi Hash yang lain untuk mencari lokasi kosong tersebut. Algoritma fungsi hash yang baik adalah yang menghasilkan sedikit hash collision.
Sudah banyak algoritma fungsi hash yang diciptakan, namun fungsi hash yang umum digunakan saat ini adalah MD5 dan SHA (Secure Hash Algorithm). Ini loh yang akan kita cari tahu perbedaannya?! Pada kedua algoritma tersebut didesain untuk prosesor 32 bit, dan tidak dapat diimplementasikan untuk prosesor 64 bit.
MD5
Fungsi hash yang paling banyak digunakan dalam keamanan jaringan komputer dan internet adalah MD5 yang dirancang oleh Ron Rivest yang juga merupakan salah satu pengembang algoritma RSA pada tahun 1991. MD5 merupakan kelanjutan daru MD4 yang dirancang dengan tujuan keamanan. Secara perhitungan matetamatis tidak dimungkinkan untuk mendapatkan dua pesan yang memiliki hash yang sama. Tidak ada serangan yang lebih efisien untuk membongkar/mengetahui hash suatu pesan selain brute-force.
MD5
CARA KERJA MD5
MD5 mengolah blok 512 bit, dibagi kedalam 16 subblok berukuran 32 bit. Keluaran algoritma diset menjadi 4 blok yang masing-masing berukuran 32 bit yang setelah digabungkan akan membentuk nilai hash 128 bit. Pesan diberi tambahan sedemikian sehingga panjang menjadi k-bit, dimana k = 512n – 64 bit. n merupakan blok masukan. Tambahan ini diperlukan hingga pesan menjadi k bit. Kemudian 64 bit yang masing kosong, dibagian akhir, diisi panjang pesan. Inisiasi 4 variabel dengan panjang 32 bit yaitu a,b,c,d. Variabel a,b,c,d dikopikan ke variabel a,b,c,d yang kemudian diolah melalui 4 tahapan yang sangat serupa. Setiap tahapan menggunakan 16 kali operasi berbeda, menjalankan fungsi nonlinear pada tiga variabel a,b,c, atau d. Hasilnya ditambahkan ke variable keempat, subblok pesan dan suatu konstanta. Kemudian dirotasi kekiri beberapa bit yang kemudian ditambahkan ke salah satu dari a,b,c, atau d. Kemudian nilai a,b,c, dan d menggantikan nilai a,b,c, dan d. Kemudian dikeluarkan output yang merupakan gabungan dari a,b,c, dan d. Fungsi kompresi yang digunakan oleh algoritma md5 adalah sebagai berikut :
a ← b + (( a + g ( b,c,d) + X[k] + T[i] <<< s ), dimana g adalah salah fungsi primitif F,G,H,I
seperti dibawah ini :
operasi
dan operasi XOR, AND, OR, dan NOT adalah sebagai berikut :
operasi2
SHA
SHA dikembangkan oleh National Institute of Standards and Technology ( NIST ) dan National Security Agency ( NSA ) sebagai komponen Digital Signature Standart ( DSS ). Standart hash adalah Secure Hash Standart ( SHS ) dengan SHA sebagai algoritma yang digunakan. SHS menetapkan SHA yang diperlukan untuk menjamin keamanan Digital Signature Algorithm ( DSA ).
SHA-1
SHA – 1
Sebuah versi revisi dari SHA sebagai FIPS 180-1 pada tahun 1995 dan secara umum dikenal sebagai SHA-1.
CARA KERJA SHA – 1
Pesan diberi tambahan untuk membuat panjangnya menjadi kelipatan 512 bit ( l x 512 ). Jumlah bit asal adalah k bit. Tambahkan bit secukupnya sampai 64 bit kurangnya dari kelipatan 512 ( 512 – 64 = 448 ), yang disebut juga kongruen dengan 448 ( mod 512 ). Kemudian tambahkan 64 bit yang menyatakan panjang pesan. Inisiasi 5 md variabel dengan panjang 32 bit yaitu a,b,c,d,e. Pesan dibagi menjadi blok-blok berukuran 512 bit dan setiap blok diolah. Kemudian keluaran setiap blok digabungkan dengan keluaran blok berikutnya, sehingga diperoleh output ( diggest ). Fungsi kompresi yang digunakan oleh algoritma sha-1 adalah sebagai berikut :
A,b,c,d,e ← ( e + f(t,b,c,d) + s5(a) + wt + kt),a,s30(b),c,d.
PERBANDINGAN SHA-1 DAN MD5
Karena SHA-1 dan MD5 dikembangkan atau diturunkan dari MD4 maka keduanya mempunyai kemiripina satu sama lain, baik kekuatan dan karakteristiknya. Berikut ini perbedaannya :
1. 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.
2. Keamanan terhadap kriptanalisis. Kelemahan MD5 ada pada design sehingga lebih mudah dilakukan kriptanalisis dibandingkan SHA-1
3. 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.
4. Simplicity. Kedua algoritma simple untuk dijelaskan dan mudah untuk diiemplementasikan karena tidak membutuhkan program yang besar atau tabel subtitusi yang besar pula.

Komentar

Postingan populer dari blog ini

Perbedaan CHAP dan PAP

Pada saat kita membuka pengaturan pada modem mungkin menemukan CHAP dengan PAP, lalu apa perbedaannya? Apa CHAP dan PAP tersebut mempengaruhi koneksi kita? Apa kelebihan dan kekurangannya masing-masing. Berikut ini adalah penjelsannya tentang masing-masing tersebut 1. CHAP Challenge Handshake Authentication Protocol (CHAP) merupakan salah satu protokol Point -to-Point yang menyediakan layanan otentikasi dengan menggunakan suatu identifier yang berubah-ubah dan suatu variabel challenge. CHAP digunakan secara periodik untuk memverifikasi pengguna atau host network menggunakan suatu metode yang dinamakan 3-way handshake . Proses ini dilakukan selama inisialisasi link establishment. Dan sewaktu-waktu bisa saja diulang setelah hubungan telah terbentuk. Berikut di bawah ini proses yang terjadi pada protokol CHAP : Setelah fase link establishment selesai, otentikator mengirimkan sebuah pesan challenge ke peer atau pasangan usernya. Peer meresponnya dengan menghitung suatu

Mengenal PIN dan PUK 1 ataupun 2

  Mungkin diantara anda ada yang sudah mengenal apa yang dimaksud dengan PIN, PIN2, dan PUK. Ya, adalah berupa digit angka yang berhubungan dengan keamanan dalam hal ini berhubungan dengan ponsel.  Biasanya anda diminta konfirmasai untuk PIN yang anda buat dengan memasukkan kembali berikutnya untuk memastikan kebenarannya. Arti dari ketiga istilah tersebut adalah sbb: PIN (Personal Identity Number) adalah 4-8 digit kode akses yang dapat digunakan untuk mengamankan telepon Anda dari penggunaan. PIN2 (Personal Identity Number 2) adalah 4-8 digit kode akses yang dapat digunakan untuk mengakses memori prioritas nomor dan biaya panggilan. PUK (Personal Unblocking Key) dan PUK2 digunakan untuk membuka PIN dan PIN 2 kode masing-masing jika kartu SIM Anda diblokir. Ketika anda mengaktifkan PIN, maka ponsel anda aman dari tangan lain -selama hanya anda yang tahu nomor PIN anda. Ketika anda ingin mengaktifkan fitur layanan di ponsel anda, maka anda menggunakan PIN2 untuk

Kelebihan dan Kekurangan Bluetooth

  Bluetooth adalah spesifikasi industri untuk jaringan kawasan pribadi (personal area networks atau PAN) tanpa kabel. Bluetooth menghubungkan dan dapat dipakai untuk melakukan tukar-menukar informasi di antara peralatan-peralatan. Spesifiksi dari peralatan Bluetooth ini dikembangkan dan didistribusikan oleh kelompok Bluetooth Special Interest Group. Bluetooth beroperasi dalam pita frekuensi 2,4 Ghz dengan menggunakan sebuah frequency hopping traceiver yang mampu menyediakan layanan komunikasi data dan suara secara real time antara host-host bluetooth dengan jarak terbatas.Kelemahan teknologi ini adalah jangkauannya yang pendek dan kemampuan transfer data yang rendah. Kelebihan Bluetooth: -Bluetooth dapat menembus dinding, kotak, dan berbagai rintangan lain walaupun jarak transmisinya hanya sekitar 30 kaki atau 10 meter. -Bluetooth tidak memerlukan kabel ataupun kawat. -Bluetooth dapat mensinkronisasi basis data dari telepon genggam ke komputer. -Dapat digunakan sebaga