public class BcTlsMLKem extends java.lang.Object implements TlsAgreement
Modifier and Type | Field and Description |
---|---|
protected BcTlsMLKemDomain |
domain |
protected org.bouncycastle.pqc.crypto.mlkem.MLKEMPrivateKeyParameters |
privateKey |
protected org.bouncycastle.pqc.crypto.mlkem.MLKEMPublicKeyParameters |
publicKey |
protected TlsSecret |
secret |
Constructor and Description |
---|
BcTlsMLKem(BcTlsMLKemDomain domain) |
Modifier and Type | Method and 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.
|
protected final BcTlsMLKemDomain domain
protected org.bouncycastle.pqc.crypto.mlkem.MLKEMPrivateKeyParameters privateKey
protected org.bouncycastle.pqc.crypto.mlkem.MLKEMPublicKeyParameters publicKey
protected TlsSecret secret
public BcTlsMLKem(BcTlsMLKemDomain domain)
public byte[] generateEphemeral() throws java.io.IOException
TlsAgreement
generateEphemeral
in interface TlsAgreement
java.io.IOException
- in case of error.public void receivePeerValue(byte[] peerValue) throws java.io.IOException
TlsAgreement
receivePeerValue
in interface TlsAgreement
peerValue
- a byte encoding of the peer public key.java.io.IOException
- in case of error.public TlsSecret calculateSecret() throws java.io.IOException
TlsAgreement
calculateSecret
in interface TlsAgreement
java.io.IOException
- in case of error.