Class BcTlsMLKemDomain

java.lang.Object
org.bouncycastle.tls.crypto.impl.bc.BcTlsMLKemDomain
All Implemented Interfaces:
TlsKemDomain

public class BcTlsMLKemDomain extends Object implements TlsKemDomain
  • Field Details

    • crypto

      protected final BcTlsCrypto crypto
    • kyberParameters

      protected final org.bouncycastle.pqc.crypto.mlkem.MLKEMParameters kyberParameters
    • isServer

      protected final boolean isServer
  • Constructor Details

  • Method Details

    • getKyberParameters

      protected static org.bouncycastle.pqc.crypto.mlkem.MLKEMParameters getKyberParameters(int namedGroup)
    • adoptLocalSecret

      public BcTlsSecret adoptLocalSecret(byte[] secret)
    • createKem

      public TlsAgreement createKem()
      Specified by:
      createKem in interface TlsKemDomain
    • decapsulate

      public BcTlsSecret decapsulate(org.bouncycastle.pqc.crypto.mlkem.MLKEMPrivateKeyParameters privateKey, byte[] ciphertext)
    • decodePublicKey

      public org.bouncycastle.pqc.crypto.mlkem.MLKEMPublicKeyParameters decodePublicKey(byte[] encoding)
    • encapsulate

      public org.bouncycastle.crypto.SecretWithEncapsulation encapsulate(org.bouncycastle.pqc.crypto.mlkem.MLKEMPublicKeyParameters publicKey)
    • encodePublicKey

      public byte[] encodePublicKey(org.bouncycastle.pqc.crypto.mlkem.MLKEMPublicKeyParameters publicKey)
    • generateKeyPair

      public org.bouncycastle.crypto.AsymmetricCipherKeyPair generateKeyPair()
    • isServer

      public boolean isServer()