Class KEMGenerateSpec.Builder

  • Enclosing class:
    KEMGenerateSpec

    public static final class KEMGenerateSpec.Builder
    extends java.lang.Object
    Builder class for creating a KEMGenerateSpec.
    • Constructor Detail

      • Builder

        public Builder​(java.security.PublicKey publicKey,
                       java.lang.String keyAlgorithmName,
                       int keySizeInBits)
        Basic builder.
        Parameters:
        publicKey - the public key to use for encapsulation/secret generation.
        keyAlgorithmName - the algorithm name for the secret key we want to generate.
        keySizeInBits - the size of the wrapping key we want to produce in bits.
    • Method Detail

      • withNoKdf

        public KEMGenerateSpec.Builder withNoKdf()
        Use the shared secret directly for key wrap generation.
        Returns:
        the current Builder instance.
      • withKdfAlgorithm

        public KEMGenerateSpec.Builder withKdfAlgorithm​(AlgorithmIdentifier kdfAlgorithm)
        Set the KDF algorithm and digest algorithm for wrap key generation. The default KDF is X9.44 KDF-3, also known as the NIST concatenation KDF.
        Parameters:
        kdfAlgorithm - the KDF algorithm to apply.
        Returns:
        the current Builder instance.
      • withOtherInfo

        public KEMGenerateSpec.Builder withOtherInfo​(byte[] otherInfo)
        Set the OtherInfo to use with the KDF. The default OtherInfo is a zero length byte[].
        Parameters:
        otherInfo - the other info to use.
        Returns:
        the current Builder instance.
      • build

        public KEMGenerateSpec build()
        Build the new parameter spec.
        Returns:
        a new parameter spec configured according to the builder state.