2
0
mirror of synced 2025-02-25 04:25:16 +00:00

25 lines
547 B
TypeScript
Raw Normal View History

2018-06-13 15:39:39 -04:00
'use strict';
import * as _hash from 'hash.js';
2018-06-17 16:47:28 -04:00
import { arrayify, Arrayish } from './bytes';
2018-06-13 15:39:39 -04:00
interface HashFunc {
(): HashFunc;
update(chunk: Uint8Array): HashFunc;
digest(encoding?: string): string;
}
const _sha256: HashFunc = _hash['sha256'];
const _sha512: HashFunc = _hash['sha512'];
2018-06-15 04:18:17 -04:00
export function sha256(data: Arrayish): string {
2018-06-13 15:39:39 -04:00
return '0x' + (_sha256().update(arrayify(data)).digest('hex'));
}
2018-06-15 04:18:17 -04:00
export function sha512(data: Arrayish): string {
2018-06-13 15:39:39 -04:00
return '0x' + (_sha512().update(arrayify(data)).digest('hex'));
}