Class BcTlsMLKem

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected BcTlsMLKemDomain domain  
      protected org.bouncycastle.pqc.crypto.crystals.kyber.KyberPrivateKeyParameters privateKey  
      protected org.bouncycastle.pqc.crypto.crystals.kyber.KyberPublicKeyParameters publicKey  
      protected TlsSecret secret  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      TlsSecret calculateSecret()
      Calculate the agreed secret based on the calculator's current state.
      byte[] generateEphemeral()
      Generate an ephemeral key pair, returning the encoding of the public key.
      void receivePeerValue​(byte[] peerValue)
      Pass in the public key for the peer to the agreement calculator.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • privateKey

        protected org.bouncycastle.pqc.crypto.crystals.kyber.KyberPrivateKeyParameters privateKey
      • publicKey

        protected org.bouncycastle.pqc.crypto.crystals.kyber.KyberPublicKeyParameters publicKey
    • Method Detail

      • generateEphemeral

        public byte[] generateEphemeral()
                                 throws java.io.IOException
        Description copied from interface: TlsAgreement
        Generate an ephemeral key pair, returning the encoding of the public key.
        Specified by:
        generateEphemeral in interface TlsAgreement
        Returns:
        a byte encoding of the public key.
        Throws:
        java.io.IOException - in case of error.
      • receivePeerValue

        public void receivePeerValue​(byte[] peerValue)
                              throws java.io.IOException
        Description copied from interface: TlsAgreement
        Pass in the public key for the peer to the agreement calculator.
        Specified by:
        receivePeerValue in interface TlsAgreement
        Parameters:
        peerValue - a byte encoding of the peer public key.
        Throws:
        java.io.IOException - in case of error.
      • calculateSecret

        public TlsSecret calculateSecret()
                                  throws java.io.IOException
        Description copied from interface: TlsAgreement
        Calculate the agreed secret based on the calculator's current state.
        Specified by:
        calculateSecret in interface TlsAgreement
        Returns:
        the calculated secret.
        Throws:
        java.io.IOException - in case of error.