UNPKG

@gleif-it/did-webs-ts

Version:
15 lines (14 loc) 644 B
import { computeXAndYForSecp256k1 } from '../document/computeXAndYForSecp256k1.js'; import { decodeKey } from '../key/decodeKey.js'; import { generateIdTypeControllerBlock } from './generateIdTypeControllerBlock.js'; export const generateKeyBlock = (controllerDid, key) => ({ ...generateIdTypeControllerBlock(key, 'JsonWebKey2020', controllerDid), publicKeyJwk: { kid: key, kty: key.startsWith('1AAA') ? 'EC' : 'OKP', crv: key.startsWith('1AAA') ? 'secp256k1' : 'Ed25519', ...(key.startsWith('1AAA') ? computeXAndYForSecp256k1(decodeKey(key)) : { x: decodeKey(key) }), }, });