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

1 lines • 2.24 kB
{"version":3,"file":"helpers.mjs","names":[],"sources":["../../../src/modules/dids/helpers.ts"],"sourcesContent":["import { CredoError } from '../../error'\nimport { isDid, TypedArrayEncoder } from '../../utils'\nimport { Ed25519PublicJwk, PublicJwk } from '../kms'\n\nimport { DidKey } from './methods/key/DidKey'\n\nexport function isDidKey(key: string) {\n return isDid(key, 'key')\n}\n\nexport function didKeyToVerkey(key: string) {\n if (isDidKey(key)) {\n const publicKey = DidKey.fromDid(key).publicJwk.publicKey\n if (publicKey.kty !== 'OKP' || publicKey.crv !== 'Ed25519') {\n throw new CredoError('Expected OKP key with crv Ed25519')\n }\n\n const publicKeyBase58 = TypedArrayEncoder.toBase58(publicKey.publicKey)\n return publicKeyBase58\n }\n\n return key\n}\n\nexport function verkeyToDidKey(verkey: string) {\n if (isDidKey(verkey)) return verkey\n\n const ed25519Key = verkeyToPublicJwk(verkey)\n const didKey = new DidKey(ed25519Key)\n return didKey.did\n}\n\nexport function didKeyToEd25519PublicJwk(key: string) {\n const didKey = DidKey.fromDid(key)\n if (didKey.publicJwk.is(Ed25519PublicJwk)) {\n return didKey.publicJwk as PublicJwk<Ed25519PublicJwk>\n }\n\n throw new CredoError(\n `Expected public jwk to have kty OKP with crv Ed25519, found ${didKey.publicJwk.jwkTypeHumanDescription}`\n )\n}\n\nexport function verkeyToPublicJwk(verkey: string) {\n const ed25519Key = PublicJwk.fromPublicKey({\n kty: 'OKP',\n crv: 'Ed25519',\n publicKey: TypedArrayEncoder.fromBase58(verkey),\n }) as PublicJwk<Ed25519PublicJwk>\n return ed25519Key\n}\n"],"mappings":";;;;;;;;;;;;;AAMA,SAAgB,SAAS,KAAa;AACpC,QAAO,MAAM,KAAK,MAAM;;AAG1B,SAAgB,eAAe,KAAa;AAC1C,KAAI,SAAS,IAAI,EAAE;EACjB,MAAM,YAAY,OAAO,QAAQ,IAAI,CAAC,UAAU;AAChD,MAAI,UAAU,QAAQ,SAAS,UAAU,QAAQ,UAC/C,OAAM,IAAI,WAAW,oCAAoC;AAI3D,SADwB,kBAAkB,SAAS,UAAU,UAAU;;AAIzE,QAAO;;AAGT,SAAgB,eAAe,QAAgB;AAC7C,KAAI,SAAS,OAAO,CAAE,QAAO;AAI7B,QADe,IAAI,OADA,kBAAkB,OAAO,CACP,CACvB;;AAGhB,SAAgB,yBAAyB,KAAa;CACpD,MAAM,SAAS,OAAO,QAAQ,IAAI;AAClC,KAAI,OAAO,UAAU,GAAG,iBAAiB,CACvC,QAAO,OAAO;AAGhB,OAAM,IAAI,WACR,+DAA+D,OAAO,UAAU,0BACjF;;AAGH,SAAgB,kBAAkB,QAAgB;AAMhD,QALmB,UAAU,cAAc;EACzC,KAAK;EACL,KAAK;EACL,WAAW,kBAAkB,WAAW,OAAO;EAChD,CAAC"}