Sebelum berlanjut kepada tahap pembuatan, saya akan menjelaskan terlebih dahulu mengenai metode hash MD5. Dalam kriptografi, MD5 (Message-Digest algortihm 5) ialah fungsi hash kriptografik yang digunakan secara luas dengan hash value 128-bit. Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan pengujian integritas sebuah berkas.
MD5 di desain oleh Ronald Rivest pada tahun 1991 untuk menggantikan hash function sebelumnya, MD4. Pada tahun 1996, sebuah kecacatan ditemukan dalam desainnya, walau bukan kelemahan fatal, pengguna kriptografi mulai menganjurkan menggunakan algoritma lain, seperti SHA-1 (klaim terbaru menyatakan bahwa SHA-1 juga cacat). Pada tahun 2004, kecacatan-kecacatan yang lebih serius ditemukan menyebabkan penggunaan algoritma tersebut dalam tujuan untuk keamanan jadi makin dipertanyakan.
Nah, dibawah ini saya akan memberikan kepada anda source code yang terdapat didalam aplikasi hash MD5 ini :
/**
*
* @author yoga
*/
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
*
* @author Jon
*/
public class SimpleMD5 {
private String convertToHex(byte[] data)
{
StringBuffer buf = new StringBuffer();
for (int i = 0; i < data.length; i++) {
int halfbyte = (data[i] >>> 4) & 0x0F;
int two_halfs = 0;
do {
if ((0 <= halfbyte) && (halfbyte <= 9)) {
buf.append((char) ('0' + halfbyte));
} else {
buf.append((char) ('a' + (halfbyte - 10)));
}
halfbyte = data[i] & 0x0F;
} while (two_halfs++ < 1);
}
return buf.toString();
}
public String MD5(String text)
throws NoSuchAlgorithmException, UnsupportedEncodingException {
MessageDigest md;
md = MessageDigest.getInstance("MD5");
byte[] md5hash = new byte[32];
md.update(text.getBytes("iso-8859-1"), 0, text.length());
md5hash = md.digest();
return convertToHex(md5hash);
}
public static void main(String[] args) throws NoSuchAlgorithmException, UnsupportedEncodingException {
SimpleMD5 mySimpleMD5 = new SimpleMD5();
String input = "yogapermana";
System.out.println("Input: " + input);
// Nge print value yg di hash .....
System.out.println("MD5 : " + mySimpleMD5.MD5(input));
}
}
Selamat mencoba. !
KW:
java, kripto, kriptografi, hash, metode MD5, MD5, Message-Digest Algortihm 5, membuat MD5, hash MD5, metode hash, MD5 hash, cara membuat MD5.
Agan,,maaf boleh ngobrol mengenai MD 5 via email? mohon dibalas disini dlu aja,, tiap hari saya buka blog agan...terima kasih
ReplyDeletemaaf nih baru nongol, cz lg sibuk mo ngurus skripsi ma KKN..
ReplyDeletemaklum mahasiswa tua..haha
boleh aj, mang mo ngobrol apaan mas.?
Hahaha...
DeleteGini mas,,saya dapat topik TA nih sama kepala Lab Nah topiknya "Digital Signature Menggunakan metode MD5...
Atau mas reply nya lgsung ke email saya aja ya mas :
ahmadgelar003@gmail.com