From: Chris Duncan Date: Thu, 3 Jul 2025 20:28:21 +0000 (-0700) Subject: Specify scope for crypto module. X-Git-Tag: v0.10.5~136^2~9 X-Git-Url: https://git.codecow.com/?a=commitdiff_plain;h=678252218fe67cbedc9879f11e4624de27899734;p=libnemo.git Specify scope for crypto module. --- diff --git a/src/lib/workers/safe.ts b/src/lib/workers/safe.ts index 0f0fed1..cdda119 100644 --- a/src/lib/workers/safe.ts +++ b/src/lib/workers/safe.ts @@ -105,7 +105,7 @@ export class Safe extends WorkerInterface { static async overwrite (name: string, password: Uint8Array, data: any): Promise { let passkey: CryptoKey try { - passkey = await crypto.subtle.importKey('raw', password, 'PBKDF2', false, ['deriveBits', 'deriveKey']) + passkey = await globalThis.crypto.subtle.importKey('raw', password, 'PBKDF2', false, ['deriveBits', 'deriveKey']) } catch { throw new Error(this.ERR_MSG) } finally { @@ -131,8 +131,8 @@ export class Safe extends WorkerInterface { name: 'AES-GCM', length: 256 } - passkey = await crypto.subtle.deriveKey(derivationAlgorithm, passkey, derivedKeyType, false, ['encrypt']) - const encrypted = await crypto.subtle.encrypt({ name: 'AES-GCM', iv: iv.buffer }, passkey, utf8.toBytes(data)) + passkey = await globalThis.crypto.subtle.deriveKey(derivationAlgorithm, passkey, derivedKeyType, false, ['encrypt']) + const encrypted = await globalThis.crypto.subtle.encrypt({ name: 'AES-GCM', iv: iv.buffer }, passkey, utf8.toBytes(data)) const record = { encrypted: buffer.toHex(encrypted), iv: iv.hex @@ -149,7 +149,7 @@ export class Safe extends WorkerInterface { static async get (name: string, password: Uint8Array): Promise { let passkey: CryptoKey try { - passkey = await crypto.subtle.importKey('raw', password, 'PBKDF2', false, ['deriveBits', 'deriveKey']) + passkey = await globalThis.crypto.subtle.importKey('raw', password, 'PBKDF2', false, ['deriveBits', 'deriveKey']) } catch { return null } finally { @@ -182,8 +182,8 @@ export class Safe extends WorkerInterface { name: 'AES-GCM', length: 256 } - passkey = await crypto.subtle.deriveKey(derivationAlgorithm, passkey, derivedKeyType, false, ['decrypt']) - const decrypted = await crypto.subtle.decrypt({ name: 'AES-GCM', iv: iv.buffer }, passkey, encrypted) + passkey = await globalThis.crypto.subtle.deriveKey(derivationAlgorithm, passkey, derivedKeyType, false, ['decrypt']) + const decrypted = await globalThis.crypto.subtle.decrypt({ name: 'AES-GCM', iv: iv.buffer }, passkey, encrypted) const decoded = buffer.toUtf8(decrypted) const data = JSON.parse(decoded) this.destroy(name)