diff options
Diffstat (limited to 'packages/server/src/helpers/iso/isoCrypto/digest.ts')
-rw-r--r-- | packages/server/src/helpers/iso/isoCrypto/digest.ts | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/packages/server/src/helpers/iso/isoCrypto/digest.ts b/packages/server/src/helpers/iso/isoCrypto/digest.ts index 3571086..9a5cfae 100644 --- a/packages/server/src/helpers/iso/isoCrypto/digest.ts +++ b/packages/server/src/helpers/iso/isoCrypto/digest.ts @@ -1,4 +1,4 @@ -import { webcrypto } from 'node:crypto'; +import WebCrypto from '@simplewebauthn/iso-webcrypto'; import { COSEALG } from '../../cose'; import { mapCoseAlgToWebCryptoAlg } from './mapCoseAlgToWebCryptoAlg'; @@ -9,17 +9,10 @@ import { mapCoseAlgToWebCryptoAlg } from './mapCoseAlgToWebCryptoAlg'; * @param data The data to generate a digest of * @param algorithm A COSE algorithm ID that maps to the SHA algorithm. Default: `-7` (for SHA-256) */ - export async function digest(data: Uint8Array, algorithm: COSEALG): Promise<Uint8Array> { +export async function digest(data: Uint8Array, algorithm: COSEALG): Promise<Uint8Array> { const subtleAlgorithm = mapCoseAlgToWebCryptoAlg(algorithm); - let hashed: ArrayBuffer - if (globalThis.crypto) { - // We're in a browser-like runtime, use global Crypto - hashed = await globalThis.crypto.subtle.digest(subtleAlgorithm, data); - } else { - // We're in Node, use Node's Crypto - hashed = await webcrypto.subtle.digest(subtleAlgorithm, data); - } + const hashed = await WebCrypto.subtle.digest(subtleAlgorithm, data); return new Uint8Array(hashed); } |