UNPKG

576 BJavaScriptView Raw
1'use strict';
2
3var crypto = require('crypto');
4
5function md5(bytes) {
6 if (typeof Buffer.from === 'function') {
7 // Modern Buffer API
8 if (Array.isArray(bytes)) {
9 bytes = Buffer.from(bytes);
10 } else if (typeof bytes === 'string') {
11 bytes = Buffer.from(bytes, 'utf8');
12 }
13 } else {
14 // Pre-v4 Buffer API
15 if (Array.isArray(bytes)) {
16 bytes = new Buffer(bytes);
17 } else if (typeof bytes === 'string') {
18 bytes = new Buffer(bytes, 'utf8');
19 }
20 }
21
22 return crypto.createHash('md5').update(bytes).digest();
23}
24
25module.exports = md5;