UNPKG

hash-wasm

Version:

Lightning fast hash functions for browsers and Node.js using hand-tuned WebAssembly binaries (MD4, MD5, SHA-1, SHA-2, SHA-3, Keccak, BLAKE2, BLAKE3, PBKDF2, Argon2, bcrypt, scrypt, Adler-32, CRC32, CRC32C, RIPEMD-160, HMAC, xxHash, SM3, Whirlpool)

15 lines (13 loc) 401 B
import { type IWASMInterface, WASMInterface } from "./WASMInterface"; import type Mutex from "./mutex"; import type { IEmbeddedWasm } from "./util"; export default async function lockedCreate( mutex: Mutex, binary: IEmbeddedWasm, hashLength: number, ): Promise<IWASMInterface> { const unlock = await mutex.lock(); const wasm = await WASMInterface(binary, hashLength); unlock(); return wasm; }