UNPKG

@credo-ts/core

Version:

<p align="center"> <br /> <img alt="Credo Logo" src="https://github.com/openwallet-foundation/credo-ts/blob/c7886cb8377ceb8ee4efe8d264211e561a75072d/images/credo-logo.png" height="250px" /> </p> <h1 align="center"><b>Credo - Core</b></h1

43 lines (42 loc) • 1.51 kB
import { KnownJwaKeyAgreementAlgorithms, KnownJwaSignatureAlgorithms } from "../../jwa.mjs"; import { ecPublicJwkToPublicKey, ecPublicKeyToPublicJwk } from "./ecPublicKey.mjs"; //#region src/modules/kms/jwk/kty/ec/P256PublicJwk.ts var P256PublicJwk = class P256PublicJwk { constructor(jwk) { this.jwk = jwk; this.supportedEncryptionKeyAgreementAlgorithms = P256PublicJwk.supportedEncryptionKeyAgreementAlgorithms; this.supportedSignatureAlgorithms = P256PublicJwk.supportedSignatureAlgorithms; this.multicodecPrefix = P256PublicJwk.multicodecPrefix; } get publicKey() { return { crv: this.jwk.crv, kty: this.jwk.kty, publicKey: ecPublicJwkToPublicKey(this.jwk) }; } get compressedPublicKey() { return { crv: this.jwk.crv, kty: this.jwk.kty, publicKey: ecPublicJwkToPublicKey(this.jwk, { compressed: true }) }; } get multicodec() { return ecPublicJwkToPublicKey(this.jwk, { compressed: true }); } static fromPublicKey(publicKey) { const jwk = ecPublicKeyToPublicJwk(publicKey, "P-256"); return new P256PublicJwk(jwk); } static fromMulticodec(multicodec) { const jwk = ecPublicKeyToPublicJwk(multicodec, "P-256"); return new P256PublicJwk(jwk); } }; P256PublicJwk.supportedSignatureAlgorithms = [KnownJwaSignatureAlgorithms.ES256]; P256PublicJwk.supportedEncryptionKeyAgreementAlgorithms = [KnownJwaKeyAgreementAlgorithms.ECDH_ES]; P256PublicJwk.multicodecPrefix = 4608; //#endregion export { P256PublicJwk }; //# sourceMappingURL=P256PublicJwk.mjs.map