我想获取密码并通过 PBKDF2 运行它来创建主密钥。然后我想通过 HKDF 运行它来创建多个密钥。好像crypto.subtle.deriveKey
不会接受 HKDF 作为derivedKeyAlgorithm
.
换句话说,我无法让这样的事情发挥作用
const kd_algo = { name: "PBKDF2", hash: "SHA-256", salt: pbkdf2_salt, iterations: 100000 }
const master_key = await crypto.subtle.deriveKey(kd_algo, password, { name: "HKDF" }, false, ["deriveKey"])
但这会
const kd_algo = { name: "PBKDF2", hash: "SHA-256", salt: pbkdf2_salt, iterations: 1000000 }
const master_key_material = await crypto.subtle.deriveBits(kd_algo, password, 256)
const master_key = await crypto.subtle.importKey("raw", master_key_material, "HKDF", false, ["deriveKey"])
这毫无意义。