argon2.ts

428 B · raw

1import { argon2id } from "hash-wasm";23export async function deriveKey(4  password: string,5  salt: Uint8Array6): Promise<Uint8Array> {7  const result = await argon2id({8    password,9    salt,10    parallelism: 4,11    iterations: 3,12    memorySize: 65536,13    hashLength: 32,14    outputType: "binary",15  });16  return result;17}1819export function generateSalt(): Uint8Array {20  return crypto.getRandomValues(new Uint8Array(16));21}