18 lines
369 B
JavaScript
18 lines
369 B
JavaScript
|
/* global Promise */
|
||
|
'use strict';
|
||
|
|
||
|
var sha2 = module.exports;
|
||
|
var crypto = require('crypto');
|
||
|
|
||
|
sha2.sum = function(alg, str) {
|
||
|
return Promise.resolve().then(function() {
|
||
|
var sha = 'sha' + String(alg).replace(/^sha-?/i, '');
|
||
|
// utf8 is the default for strings
|
||
|
var buf = Buffer.from(str);
|
||
|
return crypto
|
||
|
.createHash(sha)
|
||
|
.update(buf)
|
||
|
.digest();
|
||
|
});
|
||
|
};
|