Time slots app prototype
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
718 B

import { inherits as inherits$0 } from "util";
import MD5 from "./md5.js";
import RIPEMD160 from "../ripemd160";
import sha from "../sha/index.js";
import Base from "../cipher-base";
var inherits = { inherits: inherits$0 }.inherits;
function Hash(hash) {
Base.call(this, 'digest');
this._hash = hash;
}
inherits(Hash, Base);
Hash.prototype._update = function (data) {
this._hash.update(data);
};
Hash.prototype._final = function () {
return this._hash.digest();
};
export default (function createHash(alg) {
alg = alg.toLowerCase();
if (alg === 'md5')
return new MD5();
if (alg === 'rmd160' || alg === 'ripemd160')
return new RIPEMD160();
return new Hash(sha(alg));
});