Spaces:
Configuration error
Configuration error
import native from './native.js'; | |
import { NodeHash } from '../node/hash-instance.js'; | |
import { NodeHashReader } from '../node/hash-reader.js'; | |
// A buffer we reuse for sending bigints. set_position is synchronous, so | |
// this just saves creating garbage. | |
const bigIntBuffer = Buffer.alloc(8); | |
const readerFactory = (r) => new NodeHashReader({ | |
fill: target => r.fill(target), | |
set_position: position => { | |
bigIntBuffer.writeBigUInt64BE(position); | |
r.set_position(bigIntBuffer); | |
}, | |
}); | |
/** | |
* A Node.js crypto-like createHash method. | |
*/ | |
export const createHash = () => new NodeHash(new native.Hasher(), readerFactory); | |
/** | |
* Construct a new Hasher for the keyed hash function. | |
*/ | |
export const createKeyed = (key) => new NodeHash(new native.Hasher(key), readerFactory); | |
/** | |
* Construct a new Hasher for the key derivation function. | |
*/ | |
export const createDeriveKey = (context) => new NodeHash(new native.Hasher(undefined, context), readerFactory); | |
//# sourceMappingURL=hash-instance.js.map |