diff options
Diffstat (limited to 'packages/server/src')
6 files changed, 20 insertions, 20 deletions
diff --git a/packages/server/src/helpers/convertCOSEtoPKCS.ts b/packages/server/src/helpers/convertCOSEtoPKCS.ts index 0ee6a97..0db7853 100644 --- a/packages/server/src/helpers/convertCOSEtoPKCS.ts +++ b/packages/server/src/helpers/convertCOSEtoPKCS.ts @@ -8,9 +8,9 @@ import uint8Array from './uint8array'; export function convertCOSEtoPKCS(cosePublicKey: Uint8Array): Uint8Array { const struct: COSEPublicKey = decodeCborFirst(cosePublicKey); - const x = struct.get(COSEKEYS.x); - const y = struct.get(COSEKEYS.y); const tag = Uint8Array.from([0x04]); + const x = struct[COSEKEYS.x]; + const y = struct[COSEKEYS.y]; if (!x) { throw new Error('COSE public key was missing x'); @@ -23,7 +23,7 @@ export function convertCOSEtoPKCS(cosePublicKey: Uint8Array): Uint8Array { return uint8Array.concat([tag, x as Uint8Array]); } -export type COSEPublicKey = Map<COSEAlgorithmIdentifier, number | Buffer>; +export type COSEPublicKey = { [key: COSEAlgorithmIdentifier]: number | Uint8Array}; export enum COSEKEYS { kty = 1, diff --git a/packages/server/src/helpers/convertPublicKeyToPEM.ts b/packages/server/src/helpers/convertPublicKeyToPEM.ts index 0ba7d73..40c8c5f 100644 --- a/packages/server/src/helpers/convertPublicKeyToPEM.ts +++ b/packages/server/src/helpers/convertPublicKeyToPEM.ts @@ -12,16 +12,16 @@ export function convertPublicKeyToPEM(publicKey: Uint8Array): string { throw new Error(`Error decoding public key while converting to PEM: ${_err.message}`); } - const kty = struct.get(COSEKEYS.kty); + const kty = struct[COSEKEYS.kty]; if (!kty) { throw new Error('Public key was missing kty'); } if (kty === COSEKTY.EC2) { - const crv = struct.get(COSEKEYS.crv); - const x = struct.get(COSEKEYS.x); - const y = struct.get(COSEKEYS.y); + const crv = struct[COSEKEYS.crv]; + const x = struct[COSEKEYS.x]; + const y = struct[COSEKEYS.y]; if (!crv) { throw new Error('Public key was missing crv (EC2)'); @@ -45,8 +45,8 @@ export function convertPublicKeyToPEM(publicKey: Uint8Array): string { return ecPEM; } else if (kty === COSEKTY.RSA) { - const n = struct.get(COSEKEYS.n); - const e = struct.get(COSEKEYS.e); + const n = struct[COSEKEYS.n]; + const e = struct[COSEKEYS.e]; if (!n) { throw new Error('Public key was missing n (RSA)'); diff --git a/packages/server/src/helpers/verifySignature.ts b/packages/server/src/helpers/verifySignature.ts index 3401cf6..72e5688 100644 --- a/packages/server/src/helpers/verifySignature.ts +++ b/packages/server/src/helpers/verifySignature.ts @@ -57,7 +57,7 @@ export async function verifySignature( throw new Error(`Error decoding public key while converting to PEM: ${_err.message}`); } - const kty = struct.get(COSEKEYS.kty); + const kty = struct[COSEKEYS.kty]; if (!kty) { throw new Error('Public key was missing kty'); @@ -66,7 +66,7 @@ export async function verifySignature( // Check key type if (kty === COSEKTY.OKP) { // Verify Ed25519 slightly differently - const x = struct.get(COSEKEYS.x); + const x = struct[COSEKEYS.x]; if (!x) { throw new Error('Public key was missing x (OKP)'); diff --git a/packages/server/src/metadata/verifyAttestationWithMetadata.ts b/packages/server/src/metadata/verifyAttestationWithMetadata.ts index c779145..08cd8fe 100644 --- a/packages/server/src/metadata/verifyAttestationWithMetadata.ts +++ b/packages/server/src/metadata/verifyAttestationWithMetadata.ts @@ -43,9 +43,9 @@ export async function verifyAttestationWithMetadata({ const decodedPublicKey = decodeCredentialPublicKey(credentialPublicKey); // Assume everything is a number because these values should be const publicKeyCOSEInfo: COSEInfo = { - kty: decodedPublicKey.get(COSEKEYS.kty) as number, - alg: decodedPublicKey.get(COSEKEYS.alg) as number, - crv: decodedPublicKey.get(COSEKEYS.crv) as number, + kty: decodedPublicKey[COSEKEYS.kty] as number, + alg: decodedPublicKey[COSEKEYS.alg] as number, + crv: decodedPublicKey[COSEKEYS.crv] as number, }; if (!publicKeyCOSEInfo.crv) { delete publicKeyCOSEInfo.crv; diff --git a/packages/server/src/registration/verifications/tpm/verifyAttestationTPM.ts b/packages/server/src/registration/verifications/tpm/verifyAttestationTPM.ts index fd2375c..910e8f3 100644 --- a/packages/server/src/registration/verifications/tpm/verifyAttestationTPM.ts +++ b/packages/server/src/registration/verifications/tpm/verifyAttestationTPM.ts @@ -64,8 +64,8 @@ export async function verifyAttestationTPM(options: AttestationFormatVerifierOpt const cosePublicKey = decodeCredentialPublicKey(credentialPublicKey); if (pubType === 'TPM_ALG_RSA') { - const n = cosePublicKey.get(COSEKEYS.n); - const e = cosePublicKey.get(COSEKEYS.e); + const n = cosePublicKey[COSEKEYS.n]; + const e = cosePublicKey[COSEKEYS.e]; if (!n) { throw new Error('COSE public key missing n (TPM|RSA)'); @@ -93,9 +93,9 @@ export async function verifyAttestationTPM(options: AttestationFormatVerifierOpt throw new Error(`Unexpected public key exp ${eSum}, expected ${pubAreaExponent} (TPM|RSA)`); } } else if (pubType === 'TPM_ALG_ECC') { - const crv = cosePublicKey.get(COSEKEYS.crv); - const x = cosePublicKey.get(COSEKEYS.x); - const y = cosePublicKey.get(COSEKEYS.y); + const crv = cosePublicKey[COSEKEYS.crv]; + const x = cosePublicKey[COSEKEYS.x]; + const y = cosePublicKey[COSEKEYS.y]; if (!crv) { throw new Error('COSE public key missing crv (TPM|ECC)'); diff --git a/packages/server/src/registration/verifyRegistrationResponse.ts b/packages/server/src/registration/verifyRegistrationResponse.ts index 60140a4..42870d1 100644 --- a/packages/server/src/registration/verifyRegistrationResponse.ts +++ b/packages/server/src/registration/verifyRegistrationResponse.ts @@ -181,7 +181,7 @@ export async function verifyRegistrationResponse( } const decodedPublicKey = decodeCredentialPublicKey(credentialPublicKey); - const alg = decodedPublicKey.get(COSEKEYS.alg); + const alg = decodedPublicKey[COSEKEYS.alg]; if (typeof alg !== 'number') { throw new Error('Credential public key was missing numeric alg'); |