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

44 lines (43 loc) • 1.87 kB
import { CredoError } from "../../../../error/CredoError.mjs"; import "../../../../error/index.mjs"; import { TypedArrayEncoder } from "../../../../utils/TypedArrayEncoder.mjs"; import "../../../../utils/index.mjs"; import { PublicJwk } from "../../../kms/jwk/PublicJwk.mjs"; import "../../../kms/index.mjs"; import { VerificationMethod } from "./VerificationMethod.mjs"; //#region src/modules/dids/domain/verificationMethod/Ed25519VerificationKey2018.ts const VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2018 = "Ed25519VerificationKey2018"; /** * Get a Ed25519VerificationKey2018 verification method. */ function getEd25519VerificationKey2018({ publicJwk, id, controller }) { return new VerificationMethod({ id, type: VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2018, controller, publicKeyBase58: TypedArrayEncoder.toBase58(publicJwk.publicKey.publicKey) }); } /** * Check whether a verification method is a Ed25519VerificationKey2018 verification method. */ function isEd25519VerificationKey2018(verificationMethod) { return verificationMethod.type === VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2018; } /** * Get a key from a Ed25519VerificationKey2018 verification method. */ /** * Get a public jwk from a Ed25519VerificationKey2018 verification method. */ function getPublicJwkFromEd25519VerificationKey2018(verificationMethod) { if (!verificationMethod.publicKeyBase58) throw new CredoError("verification method is missing publicKeyBase58"); return PublicJwk.fromPublicKey({ kty: "OKP", crv: "Ed25519", publicKey: TypedArrayEncoder.fromBase58(verificationMethod.publicKeyBase58) }); } //#endregion export { VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2018, getEd25519VerificationKey2018, getPublicJwkFromEd25519VerificationKey2018, isEd25519VerificationKey2018 }; //# sourceMappingURL=Ed25519VerificationKey2018.mjs.map