Bouncy Castle Cryptography Library 1.85

org.bouncycastle.crypto.hpke
Class KEM

java.lang.Object
  extended byorg.bouncycastle.crypto.hpke.KEM

public abstract class KEM
extends java.lang.Object

Abstract base for HPKE Key Encapsulation Mechanisms per RFC 9180 §4.

Concrete subclass DHKEM implements the five DHKEM variants registered by RFC 9180 (P-256/P-384/P-521/X25519/X448). External implementations — e.g. post-quantum KEMs such as ML-KEM or the hybrid X25519+Kyber768 used by MLS — can be plugged in by subclassing this class and passing the instance to the constructor; the framework only requires: / — the basic KEM encapsulate / decapsulate pair returning . — a sender-supplied-ephemeral variant used by the OHTTP test vectors and any deterministic KAT. / — the authenticated variant used by / . / — fresh and deterministic key generation respectively. / / / — the KEM-specific wire encoding. — the byte-length of the output, used by the facade to allocate space.


Constructor Summary
KEM()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

KEM

public KEM()

Bouncy Castle Cryptography Library 1.85