UNPKG

iso-signatures

Version:
64 lines 2.19 kB
/** * Create web crypto params for ECDSA. * * @param {Curves} curve * @returns {{name: 'ECDSA', namedCurve: 'P-256' | 'P-384' | 'P-521', hash: 'SHA-256' | 'SHA-384' | 'SHA-512'}} */ export function createEcdsaParams(curve: Curves): { name: "ECDSA"; namedCurve: "P-256" | "P-384" | "P-521"; hash: "SHA-256" | "SHA-384" | "SHA-512"; }; /** * ECDSA signer for ES256, ES384, and ES512 using WebCrypto * * @implements {ISigner} */ export class ECDSASigner extends DID implements ISigner { /** * Generate a new signer * * @param {Curves} curve */ static generate(curve: Curves): Promise<ECDSASigner>; /** * Import a signer from a JWK * * @param {import('iso-did/types').ECJWKPrivate} jwk * @param {import('iso-did/types').VerifiableDID} [did] */ static importJwk(jwk: import("iso-did/types").ECJWKPrivate, did?: import("iso-did/types").VerifiableDID): Promise<ECDSASigner>; /** * Import a signer from a CryptoKeyPair * * @param {CryptoKeyPair} key * @param {import('iso-did/types').VerifiableDID} [did] */ static import(key: CryptoKeyPair, did?: import("iso-did/types").VerifiableDID): Promise<ECDSASigner>; /** * @param {import('iso-did/types').VerifiableDID} did * @param {CryptoKeyPair} keypair */ constructor(did: import("iso-did/types").VerifiableDID, keypair: CryptoKeyPair); /** @type {import('../types.js').SignatureType} */ signatureType: import("../types.js").SignatureType; curve: "P-256" | "P-384" | "P-521"; /** * Sign a message * * @param {Uint8Array} message */ sign(message: Uint8Array): Promise<Uint8Array<ArrayBufferLike>>; /** * Export the signer as a CryptoKeyPair * * @returns {CryptoKeyPair} */ export(): CryptoKeyPair; #private; } export type ISigner = import("../types.js").ISigner<CryptoKeyPair>; export type Curves = Extract<import("iso-did/types").KeyType, "P-256" | "P-384" | "P-521">; export type SignatureTypes = Extract<import("../types.js").SignatureType, "ES256" | "ES384" | "ES512">; import { DID } from 'iso-did'; //# sourceMappingURL=ecdsa.d.ts.map