public abstract class BaseAgreementSpi
extends javax.crypto.KeyAgreementSpi
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
kaAlgorithm |
protected DerivationFunction |
kdf |
protected byte[] |
ukmParameters |
protected byte[] |
ukmParametersSalt |
Constructor and Description |
---|
BaseAgreementSpi(java.lang.String kaAlgorithm,
DerivationFunction kdf) |
Modifier and Type | Method and Description |
---|---|
protected abstract byte[] |
doCalcSecret() |
protected abstract void |
doInitFromKey(java.security.Key key,
java.security.spec.AlgorithmParameterSpec parameterSpec,
java.security.SecureRandom random) |
protected byte[] |
engineGenerateSecret() |
protected int |
engineGenerateSecret(byte[] sharedSecret,
int offset) |
protected javax.crypto.SecretKey |
engineGenerateSecret(java.lang.String algorithm) |
protected void |
engineInit(java.security.Key key,
java.security.spec.AlgorithmParameterSpec params,
java.security.SecureRandom random) |
protected void |
engineInit(java.security.Key key,
java.security.SecureRandom random) |
protected static java.lang.String |
getAlgorithm(java.lang.String algDetails) |
protected static int |
getKeySize(java.lang.String algDetails) |
protected static byte[] |
trimZeroes(byte[] secret) |
protected final java.lang.String kaAlgorithm
protected final DerivationFunction kdf
protected byte[] ukmParameters
protected byte[] ukmParametersSalt
public BaseAgreementSpi(java.lang.String kaAlgorithm, DerivationFunction kdf)
protected static java.lang.String getAlgorithm(java.lang.String algDetails)
protected static int getKeySize(java.lang.String algDetails)
protected static byte[] trimZeroes(byte[] secret)
protected void engineInit(java.security.Key key, java.security.SecureRandom random) throws java.security.InvalidKeyException
engineInit
in class javax.crypto.KeyAgreementSpi
java.security.InvalidKeyException
protected void engineInit(java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom random) throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
engineInit
in class javax.crypto.KeyAgreementSpi
java.security.InvalidKeyException
java.security.InvalidAlgorithmParameterException
protected byte[] engineGenerateSecret() throws java.lang.IllegalStateException
engineGenerateSecret
in class javax.crypto.KeyAgreementSpi
java.lang.IllegalStateException
protected int engineGenerateSecret(byte[] sharedSecret, int offset) throws java.lang.IllegalStateException, javax.crypto.ShortBufferException
engineGenerateSecret
in class javax.crypto.KeyAgreementSpi
java.lang.IllegalStateException
javax.crypto.ShortBufferException
protected javax.crypto.SecretKey engineGenerateSecret(java.lang.String algorithm) throws java.security.NoSuchAlgorithmException
engineGenerateSecret
in class javax.crypto.KeyAgreementSpi
java.security.NoSuchAlgorithmException
protected abstract byte[] doCalcSecret()
protected abstract void doInitFromKey(java.security.Key key, java.security.spec.AlgorithmParameterSpec parameterSpec, java.security.SecureRandom random) throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
java.security.InvalidKeyException
java.security.InvalidAlgorithmParameterException