Package org.bouncycastle.crypto.fips
Class FipsDH.MQVAgreementParameters
- java.lang.Object
-
- org.bouncycastle.crypto.fips.FipsParameters
-
- org.bouncycastle.crypto.fips.FipsAgreementParameters
-
- org.bouncycastle.crypto.fips.FipsDH.MQVAgreementParameters
-
- All Implemented Interfaces:
Parameters
- Enclosing class:
- FipsDH
public static final class FipsDH.MQVAgreementParameters extends FipsAgreementParameters
Parameters for Diffie-Hellman based key agreement using MQV.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AsymmetricDHPrivateKey
getEphemeralPrivateKey()
Return our ephemeral private key.AsymmetricDHPublicKey
getEphemeralPublicKey()
Return our ephemeral public key, if present.AsymmetricDHPublicKey
getOtherPartyEphemeralKey()
Return the other party's ephemeral public key.FipsDH.MQVAgreementParameters
withDigest(FipsAlgorithm digestAlgorithm)
Add a digest algorithm to process the Z value with.FipsDH.MQVAgreementParameters
withKDF(FipsKDF.AgreementKDFParametersBuilder kdfType, byte[] iv, int outputSize)
Add a KDF to process the Z value with.FipsDH.MQVAgreementParameters
withPRF(FipsKDF.PRF prfAlgorithm, byte[] salt)
Add a PRF algorithm and salt to process the Z value with (as in SP 800-56C)-
Methods inherited from class org.bouncycastle.crypto.fips.FipsAgreementParameters
getDigestAlgorithm, getPrfAlgorithm, getSalt
-
Methods inherited from class org.bouncycastle.crypto.fips.FipsParameters
getAlgorithm
-
-
-
-
Method Detail
-
getEphemeralPublicKey
public AsymmetricDHPublicKey getEphemeralPublicKey()
Return our ephemeral public key, if present.- Returns:
- our ephemeral public key, or null.
-
getEphemeralPrivateKey
public AsymmetricDHPrivateKey getEphemeralPrivateKey()
Return our ephemeral private key.- Returns:
- our ephemeral private key.
-
getOtherPartyEphemeralKey
public AsymmetricDHPublicKey getOtherPartyEphemeralKey()
Return the other party's ephemeral public key.- Returns:
- the other party's ephemeral public key.
-
withDigest
public FipsDH.MQVAgreementParameters withDigest(FipsAlgorithm digestAlgorithm)
Add a digest algorithm to process the Z value with.- Parameters:
digestAlgorithm
- digest algorithm to use.- Returns:
- a new parameter set, including the digest algorithm
-
withPRF
public FipsDH.MQVAgreementParameters withPRF(FipsKDF.PRF prfAlgorithm, byte[] salt)
Add a PRF algorithm and salt to process the Z value with (as in SP 800-56C)- Parameters:
prfAlgorithm
- PRF represent the MAC/HMAC algorithm to use.salt
- the salt to use to initialise the PRF- Returns:
- a new parameter set, including the digest algorithm
-
withKDF
public FipsDH.MQVAgreementParameters withKDF(FipsKDF.AgreementKDFParametersBuilder kdfType, byte[] iv, int outputSize)
Add a KDF to process the Z value with. The outputSize parameter determines how many bytes will be generated.- Parameters:
kdfType
- KDF algorithm type to use for parameter creation.iv
- the iv parameter for KDF initialization.outputSize
- the size of the output to be generated from the KDF.- Returns:
- a new parameter set, the KDF definition.
-
-