Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 1x 1x 1x 2x 1x 1x 1x 1x 1x 1x 1x 1x 2x 2x 2x 2x 2x 2x 2x 2x 2x 1x 1x 2x | import { createHash, randomBytes } from 'crypto'; export const generateSalt = (length: number): string => { if (length <= 0) { return ''; } const saltBytes = randomBytes(length); const salt = saltBytes.toString('hex'); return salt.substring(0, length); }; export const digest = ( data: string, algorithm: string = 'SHA-256', ): Uint8Array => { const nodeAlg = toNodeCryptoAlg(algorithm); const hash = createHash(nodeAlg); hash.update(data); const hashBuffer = hash.digest(); return new Uint8Array(hashBuffer); }; const toNodeCryptoAlg = (hashAlg: string): string => hashAlg.replace('-', '').toLowerCase(); |