NHOtherInfoGenerator (Bouncy Castle Library 1.85 API Specification)
Date: 2026-07-12

org.bouncycastle.pqc.crypto.newhope

## Class NHOtherInfoGenerator

- java.lang.Object
- - org.bouncycastle.pqc.crypto.newhope.NHOtherInfoGenerator

- Direct Known Subclasses:
    NHOtherInfoGenerator.PartyU, NHOtherInfoGenerator.PartyV

      public class NHOtherInfoGenerator
      extends java.lang.Object

  OtherInfo Generator for which can be used for populating the SuppPrivInfo field used to provide shared secret data used with NIST SP 800-56A agreement algorithms.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `NHOtherInfoGenerator.PartyU` Party U (initiator) generation.
    `static class` | `NHOtherInfoGenerator.PartyV` Party V (responder) generation.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected DEROtherInfo.Builder` | `otherInfoBuilder`
    `protected java.security.SecureRandom` | `random`
    `protected boolean` | `used`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NHOtherInfoGenerator(AlgorithmIdentifier algorithmID, byte[] partyUInfo, byte[] partyVInfo, java.security.SecureRandom random)` Create a basic builder with just the compulsory fields.

  - ### Method Summary

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### otherInfoBuilder

          protected final DEROtherInfo.Builder otherInfoBuilder

    - #### random

          protected final java.security.SecureRandom random

    - #### used

          protected boolean used

  - ### Constructor Detail

    - #### NHOtherInfoGenerator

          public NHOtherInfoGenerator(AlgorithmIdentifier algorithmID,
                                      byte[] partyUInfo,
                                      byte[] partyVInfo,
                                      java.security.SecureRandom random)

      Create a basic builder with just the compulsory fields.
      Parameters:
        `algorithmID` - the algorithm associated with this invocation of the KDF.
        `partyUInfo` - sender party info.
        `partyVInfo` - receiver party info.
        `random` - a source of randomness.