Skip to main content
Using Deno in production at your company? Earn free Deno merch.
Give us feedback
Module

x/hpke/src/kems/hybridkem.ts>Hybridkem

A Hybrid Public Key Encryption (HPKE) module built on top of Web Cryptography API.
Latest
class Hybridkem
implements KemInterface
import { Hybridkem } from "https://deno.land/x/hpke@1.2.7/src/kems/hybridkem.ts";

Properties

protected
_a: DhkemInterface
protected
_b: KemInterface
protected
_kdf: KdfInterface
readonly
encSize: number
readonly
id: KemId
readonly
name: string
readonly
privateKeySize: number
readonly
publicKeySize: number
readonly
secretSize: number

Methods

private
_deserializePrivateKey(k: ArrayBuffer): Promise<CryptoKey>
private
_deserializePublicKey(k: ArrayBuffer): Promise<CryptoKey>
private
_serializePrivateKey(k: XCryptoKey): Promise<ArrayBuffer>
private
_serializePublicKey(k: XCryptoKey): Promise<ArrayBuffer>
decap(params: RecipientContextParams): Promise<ArrayBuffer>
deriveKeyPair(ikm: ArrayBuffer): Promise<CryptoKeyPair>
deserializePrivateKey(key: ArrayBuffer): Promise<CryptoKey>
deserializePublicKey(key: ArrayBuffer): Promise<CryptoKey>
encap(params: SenderContextParams): Promise<{ sharedSecret: ArrayBuffer; enc: ArrayBuffer; }>
importKey(
format: "raw" | "jwk",
key: ArrayBuffer | JsonWebKey,
isPublic?,
): Promise<CryptoKey>
serializePrivateKey(key: CryptoKey): Promise<ArrayBuffer>
serializePublicKey(key: CryptoKey): Promise<ArrayBuffer>