diff --git a/apps/web/src/app/key-management/key-rotation/user-key-rotation.service.ts b/apps/web/src/app/key-management/key-rotation/user-key-rotation.service.ts index 7310e555cbc..1f087ced84d 100644 --- a/apps/web/src/app/key-management/key-rotation/user-key-rotation.service.ts +++ b/apps/web/src/app/key-management/key-rotation/user-key-rotation.service.ts @@ -215,9 +215,8 @@ export class UserKeyRotationService { verifyingKey: verifyingKeyString, signedPublicKeyOwnershipClaim, signingKey: signingKeyEncString, - signingKeyType, } = noSigningKeySdkClient.crypto().make_signing_keys(); - const verifyingKey = new VerifyingKey(verifyingKeyString, signingKeyType); + const verifyingKey = new VerifyingKey(verifyingKeyString); const signingKey = new UserSigningKey(signingKeyEncString); return { userKey: newUserKey, diff --git a/libs/common/src/key-management/keys/response/public-account-keys.response.ts b/libs/common/src/key-management/keys/response/public-account-keys.response.ts index 79087910d16..50b484ec8b0 100644 --- a/libs/common/src/key-management/keys/response/public-account-keys.response.ts +++ b/libs/common/src/key-management/keys/response/public-account-keys.response.ts @@ -8,7 +8,7 @@ export class PublicAccountKeysResponseModel { readonly SignedPublicKeyOwnershipClaim: SignedPublicKeyOwnershipClaim; constructor(response: any) { - this.VerifyingKey = new VerifyingKey(response.verifyingKey, response.verifyingKeyAlgorithm); + this.VerifyingKey = new VerifyingKey(response.verifyingKey); this.PublicKey = response.publicKey; this.SignedPublicKeyOwnershipClaim = response.signedPublicKeyOwnershipClaim; } diff --git a/libs/common/src/key-management/keys/response/signing-keys.response.ts b/libs/common/src/key-management/keys/response/signing-keys.response.ts index 403b320cb16..cd3b1a350a5 100644 --- a/libs/common/src/key-management/keys/response/signing-keys.response.ts +++ b/libs/common/src/key-management/keys/response/signing-keys.response.ts @@ -1,9 +1,4 @@ -import { - parseSigningKeyTypeFromString, - SigningKeyType, - UserSigningKey, - VerifyingKey, -} from "@bitwarden/key-management"; +import { SigningKeyType, UserSigningKey, VerifyingKey } from "@bitwarden/key-management"; export class UserSigningKeyData { readonly keyAlgorithm: SigningKeyType; @@ -13,9 +8,6 @@ export class UserSigningKeyData { constructor(response: any) { this.keyAlgorithm = response.keyAlgorithm; this.wrappedSigningKey = new UserSigningKey(response.wrappedSigningKey); - this.verifyingKey = new VerifyingKey( - response.verifyingKey, - parseSigningKeyTypeFromString(this.keyAlgorithm), - ); + this.verifyingKey = new VerifyingKey(response.verifyingKey); } } diff --git a/libs/key-management/src/models/verifying-key.ts b/libs/key-management/src/models/verifying-key.ts index 305e0605e10..8be09b03295 100644 --- a/libs/key-management/src/models/verifying-key.ts +++ b/libs/key-management/src/models/verifying-key.ts @@ -1,12 +1,13 @@ +import { Utils } from "@bitwarden/common/platform/misc/utils"; +import { PureCrypto } from "@bitwarden/sdk-internal"; + import { SigningKeyType } from "../enums/signing-key-type.enum"; export class VerifyingKey { private innerKey: string; - private keyType: SigningKeyType; - constructor(verifyingKey: string, keyType: SigningKeyType) { + constructor(verifyingKey: string) { this.innerKey = verifyingKey; - this.keyType = keyType; } toString(): string { @@ -14,6 +15,6 @@ export class VerifyingKey { } algorithm(): SigningKeyType { - return this.keyType; + return PureCrypto.key_algorithm_for_verifying_key(Utils.fromB64ToArray(this.innerKey)); } }