: passphrase\r
const keyData = utf8.toBytes(this.phrase)\r
const phraseKey = await crypto.subtle.importKey('raw', keyData, 'PBKDF2', false, ['deriveBits', 'deriveKey'])\r
- const derivedKeyType: HmacImportParams = {\r
- name: 'HMAC',\r
- hash: 'SHA-512',\r
- length: 512\r
- }\r
-\r
const algorithm: Pbkdf2Params = {\r
name: 'PBKDF2',\r
hash: 'SHA-512',\r
salt: utf8.toBytes(`mnemonic${salt.normalize('NFKD')}`),\r
iterations: BIP39_ITERATIONS\r
}\r
- const seedKey = await crypto.subtle.deriveKey(algorithm, phraseKey, derivedKeyType, true, ['sign'])\r
- const seedBuffer = await crypto.subtle.exportKey('raw', seedKey)\r
- this.#bip39Seed = new Uint8Array(seedBuffer)\r
+ const seed = await crypto.subtle.deriveBits(algorithm, phraseKey, 512)\r
+ this.#bip39Seed = new Uint8Array(seed)\r
}\r
return format === 'hex'\r
? bytes.toHex(this.#bip39Seed)\r