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

org.bouncycastle.crypto.params

## Class ECDomainParameters

- java.lang.Object
- - org.bouncycastle.crypto.params.ECDomainParameters

- All Implemented Interfaces:
    ECConstants
  Direct Known Subclasses:
    DSTU4145Parameters, ECNamedDomainParameters

      public class ECDomainParameters
      extends java.lang.Object
      implements ECConstants

- - ### Field Summary

    - ### Fields inherited from interface org.bouncycastle.math.ec.ECConstants

      `EIGHT, FOUR, ONE, THREE, TWO, ZERO`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ECDomainParameters(ECCurve curve, ECPoint G, java.math.BigInteger n)`
    `ECDomainParameters(ECCurve curve, ECPoint G, java.math.BigInteger n, java.math.BigInteger h)`
    `ECDomainParameters(ECCurve curve, ECPoint G, java.math.BigInteger n, java.math.BigInteger h, byte[] seed)`
    `ECDomainParameters(X9ECParameters x9)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(java.lang.Object obj)`
    `ECCurve` | `getCurve()`
    `ECPoint` | `getG()`
    `java.math.BigInteger` | `getH()`
    `java.math.BigInteger` | `getHInv()`
    `java.math.BigInteger` | `getN()`
    `byte[]` | `getSeed()`
    `int` | `hashCode()`
    `java.math.BigInteger` | `validatePrivateScalar(java.math.BigInteger d)`
    `ECPoint` | `validatePublicPoint(ECPoint q)`

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

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

- - ### Constructor Detail

    - #### ECDomainParameters

          public ECDomainParameters(X9ECParameters x9)

    - #### ECDomainParameters

          public ECDomainParameters(ECCurve curve,
                                    ECPoint G,
                                    java.math.BigInteger n)

    - #### ECDomainParameters

          public ECDomainParameters(ECCurve curve,
                                    ECPoint G,
                                    java.math.BigInteger n,
                                    java.math.BigInteger h)

    - #### ECDomainParameters

          public ECDomainParameters(ECCurve curve,
                                    ECPoint G,
                                    java.math.BigInteger n,
                                    java.math.BigInteger h,
                                    byte[] seed)

  - ### Method Detail

    - #### getCurve

          public ECCurve getCurve()

    - #### getG

          public ECPoint getG()

    - #### getN

          public java.math.BigInteger getN()

    - #### getH

          public java.math.BigInteger getH()

    - #### getHInv

          public java.math.BigInteger getHInv()

    - #### getSeed

          public byte[] getSeed()

    - #### equals

          public boolean equals(java.lang.Object obj)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### validatePrivateScalar

          public java.math.BigInteger validatePrivateScalar(java.math.BigInteger d)

    - #### validatePublicPoint

          public ECPoint validatePublicPoint(ECPoint q)