INNER CODE UNIT · TypeScript

deriveKey

backbone-hq/minibone · src/core.ts:79

async function deriveKey(key: Uint8Array, outputLength: number): Promise<Uint8Array> {
  const keyMaterial = await crypto.subtle.importKey('raw', key, KEY_DERIVATION_ALGORITHM, false, ['deriveBits'])

  const derivedBits = await crypto.subtle.deriveBits(
    {
      ...KEY_DERIVATION_ALGORITHM,
      ...HASH_ALGORITHM,
      info: new Uint8Array(),
      salt: new Uint8Array()
    },
    keyMaterial,
    outputLength * 8
  )

  return new Uint8Array(derivedBits)
}

export async function deriveMatryoshkaKeys(masterKey: Uint8Array, outputLengths: number[]): Promise<Uint8Array[]> {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…