@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
1 lines • 2.47 kB
Source Map (JSON)
{"version":3,"file":"EcdsaSecp256k1VerificationKey2019.mjs","names":[],"sources":["../../../../../src/modules/dids/domain/verificationMethod/EcdsaSecp256k1VerificationKey2019.ts"],"sourcesContent":["import { CredoError } from '../../../../error'\nimport { TypedArrayEncoder } from '../../../../utils'\nimport { PublicJwk, Secp256k1PublicJwk } from '../../../kms'\n\nimport { VerificationMethod } from './VerificationMethod'\n\nexport const VERIFICATION_METHOD_TYPE_ECDSA_SECP256K1_VERIFICATION_KEY_2019 = 'EcdsaSecp256k1VerificationKey2019'\n\ntype EcdsaSecp256k1VerificationKey2019 = VerificationMethod & {\n type: typeof VERIFICATION_METHOD_TYPE_ECDSA_SECP256K1_VERIFICATION_KEY_2019\n}\n\n/**\n * Get a EcdsaSecp256k1VerificationKey2019 verification method.\n */\nexport function getEcdsaSecp256k1VerificationKey2019({\n publicJwk,\n id,\n controller,\n}: {\n id: string\n publicJwk: PublicJwk<Secp256k1PublicJwk>\n controller: string\n}) {\n return new VerificationMethod({\n id,\n type: VERIFICATION_METHOD_TYPE_ECDSA_SECP256K1_VERIFICATION_KEY_2019,\n controller,\n publicKeyBase58: TypedArrayEncoder.toBase58(publicJwk.publicKey.publicKey),\n })\n}\n\n/**\n * Check whether a verification method is a EcdsaSecp256k1VerificationKey2019 verification method.\n */\nexport function isEcdsaSecp256k1VerificationKey2019(\n verificationMethod: VerificationMethod\n): verificationMethod is EcdsaSecp256k1VerificationKey2019 {\n return verificationMethod.type === VERIFICATION_METHOD_TYPE_ECDSA_SECP256K1_VERIFICATION_KEY_2019\n}\n\n/**\n * Get a public jwk from a EcdsaSecp256k1VerificationKey2019 verification method.\n */\nexport function getPublicJwkFromEcdsaSecp256k1VerificationKey2019(\n verificationMethod: EcdsaSecp256k1VerificationKey2019\n) {\n if (!verificationMethod.publicKeyBase58) {\n throw new CredoError('verification method is missing publicKeyBase58')\n }\n\n return PublicJwk.fromPublicKey({\n kty: 'EC',\n crv: 'secp256k1',\n publicKey: TypedArrayEncoder.fromBase58(verificationMethod.publicKeyBase58),\n })\n}\n"],"mappings":";;;;;;;;;;;AAMA,MAAa,iEAAiE;;;;AAS9E,SAAgB,qCAAqC,EACnD,WACA,IACA,cAKC;AACD,QAAO,IAAI,mBAAmB;EAC5B;EACA,MAAM;EACN;EACA,iBAAiB,kBAAkB,SAAS,UAAU,UAAU,UAAU;EAC3E,CAAC;;;;;AAMJ,SAAgB,oCACd,oBACyD;AACzD,QAAO,mBAAmB,SAAS;;;;;AAMrC,SAAgB,kDACd,oBACA;AACA,KAAI,CAAC,mBAAmB,gBACtB,OAAM,IAAI,WAAW,iDAAiD;AAGxE,QAAO,UAAU,cAAc;EAC7B,KAAK;EACL,KAAK;EACL,WAAW,kBAAkB,WAAW,mBAAmB,gBAAgB;EAC5E,CAAC"}