Class KyberKeyAgreement

java.lang.Object
com.ibm.crypto.hdwrCCA.provider.KyberKeyAgreement

@Deprecated(since="21.0.11.0", forRemoval=true) public class KyberKeyAgreement extends Object
Deprecated, for removal: This API element is subject to removal in a future version.
This KyberKeyAgreement implementation is deprecated and will be removed in a future release. This is in alignment with the latest NIST recommendations for post‑quantum cryptography modernization. Users should transition to the finalized ML-KEM standards.
This class is a concrete implementation of the Service Provider Interface (SPI) for key agreement using the CRYSTALS-Kyber key agreement algorithm.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Deprecated, for removal: This API element is subject to removal in a future version.
    Constructor for the Kyber key agreement functionality.
  • Method Summary

    Modifier and Type
    Method
    Description
    Deprecated, for removal: This API element is subject to removal in a future version.
    - Creates the shared secret and returns it as a SecretKey object of the specified algorithm.
    void
    init(Key hybridKey, ECPrivateHWKey ecPrivKey, ECPublicKey ecPubKey, byte[] encryptedValue, byte[] iv)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Initializes the KyberKeyAgreement object.
    void
    init(Key hybridKey, ECPrivateHWKey ecPrivKey, ECPublicKey ecPubKey, byte[] encryptedValue, byte[] iv, AlgorithmParameterSpec params)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Initializes the KyberKeyAgreement object.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • KyberKeyAgreement

      public KyberKeyAgreement()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Constructor for the Kyber key agreement functionality.
  • Method Details

    • init

      public void init(Key hybridKey, ECPrivateHWKey ecPrivKey, ECPublicKey ecPubKey, byte[] encryptedValue, byte[] iv, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Initializes the KyberKeyAgreement object.
      Parameters:
      hybridKey - A CCA AES CIPHER key or a Kyber private key
      ecPrivKey - An ECPrivateKey created by Bob.
      ecPubKey - An ECPublicKey created by Alice.
      iv - The AES encryption initialization vector
      params - The algorithm parameters for the key agreement operation
      aesEncryptedValue - The encrypted AES value generated by a KyberDerivationInput.encrypt() call.
      Throws:
      InvalidKeyException
      InvalidAlgorithmParameterException
    • init

      public void init(Key hybridKey, ECPrivateHWKey ecPrivKey, ECPublicKey ecPubKey, byte[] encryptedValue, byte[] iv) throws InvalidKeyException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Initializes the KyberKeyAgreement object.
      Parameters:
      hybridKey - A CCA AES CIPHER key or a Kyber private key
      ecPrivKey - An ECPrivateKey created by Bob.
      ecPubKey - An ECPublicKey created by Alice.
      iv - The AES encryption initialization vector
      aesEncryptedValue - The encrypted AES value generated by a KyberDerivationInput.encrypt() call.
      Throws:
      InvalidKeyException
    • generateSecret

      public SecretKey generateSecret(String algorithm) throws NoSuchAlgorithmException, InvalidKeyException
      Deprecated, for removal: This API element is subject to removal in a future version.
      - Creates the shared secret and returns it as a SecretKey object of the specified algorithm.
      Parameters:
      algorithm -
      keyBitLength -
      Returns:
      Throws:
      NoSuchAlgorithmException
      InvalidKeyException