@hpke/common
Version:
A Hybrid Public Key Encryption (HPKE) internal-use common module for @hpke family modules.
30 lines • 1.37 kB
TypeScript
import type { DhkemPrimitives } from "../../interfaces/dhkemPrimitives.js";
import type { KdfInterface } from "../../interfaces/kdfInterface.js";
import { NativeAlgorithm } from "../../algorithm.js";
import { KemId } from "../../identifiers.js";
export declare class Ec extends NativeAlgorithm implements DhkemPrimitives {
private _hkdf;
private _alg;
private _nPk;
private _nSk;
private _nDh;
private _order;
private _bitmask;
private _pkcs8AlgId;
private _curveParams;
constructor(kem: KemId, hkdf: KdfInterface);
serializePublicKey(key: CryptoKey): Promise<ArrayBuffer>;
deserializePublicKey(key: ArrayBufferLike | ArrayBufferView): Promise<CryptoKey>;
serializePrivateKey(key: CryptoKey): Promise<ArrayBuffer>;
deserializePrivateKey(key: ArrayBufferLike | ArrayBufferView): Promise<CryptoKey>;
importKey(format: "raw" | "jwk", key: ArrayBuffer | JsonWebKey, isPublic: boolean): Promise<CryptoKey>;
generateKeyPair(): Promise<CryptoKeyPair>;
deriveKeyPair(ikm: ArrayBufferLike | ArrayBufferView): Promise<CryptoKeyPair>;
derivePublicKey(key: CryptoKey): Promise<CryptoKey>;
dh(sk: CryptoKey, pk: CryptoKey): Promise<ArrayBuffer>;
private _importRawKey;
private _importJWK;
private _deserializePkcs8Key;
private _derivePublicKeyWithoutJwkExport;
}
//# sourceMappingURL=ec.d.ts.map