JavaScript MD5 Library

JavaScript MD5 Library

JavaScript MD5 Library

JavaScript MD5 Library sering dibutuhkan oleh pengembang JavaScript, baik pada sisi client atau server, untuk memverifikasi data. Yang paling popluar adalah Blueimp-md5 library.

Library ini mengimplementasi fungsi hashing dari MD5, yang pertama kali digunakan untuk menghitung checksum dari file data (atau data string lain) lalu kemudian untuk memvalidasi integritas file data dengan membanding checksum yang diketahui.

Dibawah ini kami akan menjelas apa itu JavaScript MD5 Library?

Apa itu JavaScript MD5 Library

JavaScript MD5 Library merupakan fungsi 1-arah untuk standarisasi yang memungkinkan data apa saja dipetakan untuk string output dengan ukuran yang sama, tidak peduli seberapa besar input string-nya.

Semua implementasi MD5 menghasilkan nilai hash 128-bit dari data string, yang biasanya dinyatakan dengan angka heksadesimal 32-bit. Misalnya, foo bar baz yang menjadi ab07acbb1e496801937adfa772424bf7.

Data input yang sama akan selalu dipetakan untuk output yang sama. Output yang sama dari input yang berbeda sangat jarang terjadi, tetapi dapat terjadi.

Pada sistem Linux, MD5Sum merupakan command line tool untuk MD5 hashing. Dan sistem operasi lain juga memiliki command yang sama.

Cara Pasang Pada Client-Side dan Kegunaannya

Pertama, download md5.min.js library dan masukan pada HTML kamu. Selanjutnya, pada JS appliacation code, kamu dapat mengkalkulasi hex-encoded MD5 hash dari string dengan memanggil metode md5 menggunakan string value sebagai Argument:

var hash = md5("value"); // "2063c1608d6e0baf80249c42e2be5804"

Cara Pasang Pada Server-Side dan Menggunakannya dengan NodeJS

Untuk menggunakan MD5 library pada server-side menggunakan NodeJS, pertama adalah mendownload dan pasang paket blueimp-md5:

npm install blueimp-md5

Contoh simpel yang menunjukan bagaimana paket MD5 dapat digunakan untuk MD5 hash dengan query URL string:

require("http").createServer(function (req, res) {
 
    var md5   = require("blueimp-md5"),
        url   = require("url"),
        query = url.parse(req.url).query;
 
    res.writeHead(200, {"Content-Type": "text/plain"});
 
    // compute and print the MD5 hash of the url query:
    res.end(md5(query));
 
}).listen(8080, "localhost");
console.log("Server running at http://localhost:8080/ open this URL in your browser to see its MD5 hash");

Lalu selanjutnya adalah menjalankan aplikasi Node JS:

node server.js

Contoh API

Library hanya mempunyai satu fungsi, md5(), yang dapat menggunakan hingga tiga arguments:

1. Required: Input string MD5 hash haru hadir
2. Opsional: HMAC Key digunakan untuk autentikasi pesan menggunakan fungsi kriptografi hash seperti MD5 dengan kombinasi secret shared key.
3. Opsional: Value Boolean, jika diset “True,” encode output sebagai raw string. Lainnya output menggunakan hex-encoded string. Hex-encoding lebih protabel, tetapi raw string dapat leboh simpel untuk digunakan pada kasus yang simpel.

Beberapa contoh kode dari API ini:

Menghitung hex-encoded MD5 hash dari string value:

var hash = md5("value"); // "2063c1608d6e0baf80249c42e2be5804"

Menghitung hex-encoded HMAC-MD5 dengan string value dan key:

var hash = md5("value", "key"); // '01433efd5f16327ea4b31144572c67f6'

Menghitung raw MD5 hash dari string value:

var hash = md5("value", null, true); // ' c\xc1`\x8dn\x0b\xaf\x80$\x9cB\xe2\xbeX\x04'

Menghitung raw HMAC-MD5 hash dari string value dan key:

var hash = md5("value", "key", true); // '\x01C>\xfd_\x162~\xa4\xb3\x11DW,g\xf6.'

Keamanan MD5 dan Alternatif

Meski keamanan fungsi MD5 hashing terbilang sangat lemah, fungsi Hash dari MD5 masih popular. Jika kamu menginginkan fungsi hash yang lebih aman dapat menggunakan SHA2 atau SHA3. Crypto.js merupakan implementasi JavaScript yang sangat baik untuk fungsi hash ini.

 

Jakartawebhosting Banner 468-60px