Package org.bouncycastle.jce.provider

## Class JCEECPrivateKey

- java.lang.Object
- - org.bouncycastle.jce.provider.JCEECPrivateKey

- All Implemented Interfaces:
    `java.io.Serializable`, `java.security.interfaces.ECKey`, `java.security.interfaces.ECPrivateKey`, `java.security.Key`, `java.security.PrivateKey`, `javax.security.auth.Destroyable`, `ECKey`, `ECPointEncoder`, `ECPrivateKey`, `PKCS12BagAttributeCarrier`

      public class JCEECPrivateKey
      extends java.lang.Object
      implements java.security.interfaces.ECPrivateKey, ECPrivateKey, PKCS12BagAttributeCarrier, ECPointEncoder

  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from interface java.security.interfaces.ECPrivateKey

      `serialVersionUID`

    - ### Fields inherited from interface java.security.PrivateKey

      `serialVersionUID`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `JCEECPrivateKey()` |
    `` | `JCEECPrivateKey​(java.lang.String algorithm, java.security.spec.ECPrivateKeySpec spec)` |
    `` | `JCEECPrivateKey​(java.lang.String algorithm, ECPrivateKeyParameters params)` |
    `` | `JCEECPrivateKey​(java.lang.String algorithm, ECPrivateKeyParameters params, JCEECPublicKey pubKey, java.security.spec.ECParameterSpec spec)` |
    `` | `JCEECPrivateKey​(java.lang.String algorithm, ECPrivateKeyParameters params, JCEECPublicKey pubKey, ECParameterSpec spec)` |
    `` | `JCEECPrivateKey​(java.lang.String algorithm, JCEECPrivateKey key)` |
    `` | `JCEECPrivateKey​(java.lang.String algorithm, ECPrivateKeySpec spec)` |
    `` | `JCEECPrivateKey​(java.security.interfaces.ECPrivateKey key)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(java.lang.Object o)` |
    `java.lang.String` | `getAlgorithm()` |
    `ASN1Encodable` | `getBagAttribute​(ASN1ObjectIdentifier oid)` |
    `java.util.Enumeration` | `getBagAttributeKeys()` |
    `java.math.BigInteger` | `getD()` | return the private value D.
    `byte[]` | `getEncoded()` | Return a PKCS8 representation of the key.
    `java.lang.String` | `getFormat()` | return the encoding format we produce in getEncoded().
    `ECParameterSpec` | `getParameters()` | return a parameter specification representing the EC domain parameters for the key.
    `java.security.spec.ECParameterSpec` | `getParams()` |
    `java.math.BigInteger` | `getS()` |
    `int` | `hashCode()` |
    `void` | `setBagAttribute​(ASN1ObjectIdentifier oid, ASN1Encodable attribute)` |
    `void` | `setPointFormat​(java.lang.String style)` | Set the formatting for encoding of points.
    `java.lang.String` | `toString()` |

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

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

    - ### Methods inherited from interface javax.security.auth.Destroyable

      `destroy, isDestroyed`

- - ### Constructor Detail

    - #### JCEECPrivateKey

          protected JCEECPrivateKey()

    - #### JCEECPrivateKey

          public JCEECPrivateKey​(java.security.interfaces.ECPrivateKey key)

    - #### JCEECPrivateKey

          public JCEECPrivateKey​(java.lang.String algorithm,
                                 ECPrivateKeySpec spec)

    - #### JCEECPrivateKey

          public JCEECPrivateKey​(java.lang.String algorithm,
                                 java.security.spec.ECPrivateKeySpec spec)

    - #### JCEECPrivateKey

          public JCEECPrivateKey​(java.lang.String algorithm,
                                 JCEECPrivateKey key)

    - #### JCEECPrivateKey

          public JCEECPrivateKey​(java.lang.String algorithm,
                                 ECPrivateKeyParameters params,
                                 JCEECPublicKey pubKey,
                                 java.security.spec.ECParameterSpec spec)

    - #### JCEECPrivateKey

          public JCEECPrivateKey​(java.lang.String algorithm,
                                 ECPrivateKeyParameters params,
                                 JCEECPublicKey pubKey,
                                 ECParameterSpec spec)

    - #### JCEECPrivateKey

          public JCEECPrivateKey​(java.lang.String algorithm,
                                 ECPrivateKeyParameters params)

  - ### Method Detail

    - #### getAlgorithm

          public java.lang.String getAlgorithm()

      Specified by:
        `getAlgorithm` in interface `java.security.Key`

    - #### getFormat

          public java.lang.String getFormat()

      return the encoding format we produce in getEncoded().
      Specified by:
        `getFormat` in interface `java.security.Key`
      Returns:
        the string "PKCS#8"

    - #### getEncoded

          public byte[] getEncoded()

      Return a PKCS8 representation of the key. The sequence returned represents a full PrivateKeyInfo object.
      Specified by:
        `getEncoded` in interface `java.security.Key`
      Returns:
        a PKCS8 representation of the key.

    - #### getParams

          public java.security.spec.ECParameterSpec getParams()

      Specified by:
        `getParams` in interface `java.security.interfaces.ECKey`

    - #### getParameters

          public ECParameterSpec getParameters()

      Description copied from interface: `ECKey`
      return a parameter specification representing the EC domain parameters for the key.
      Specified by:
        `getParameters` in interface `ECKey`

    - #### getS

          public java.math.BigInteger getS()

      Specified by:
        `getS` in interface `java.security.interfaces.ECPrivateKey`

    - #### getD

          public java.math.BigInteger getD()

      Description copied from interface: `ECPrivateKey`
      return the private value D.
      Specified by:
        `getD` in interface `ECPrivateKey`

    - #### setBagAttribute

          public void setBagAttribute​(ASN1ObjectIdentifier oid,
                                      ASN1Encodable attribute)

      Specified by:
        `setBagAttribute` in interface `PKCS12BagAttributeCarrier`

    - #### getBagAttribute

          public ASN1Encodable getBagAttribute​(ASN1ObjectIdentifier oid)

      Specified by:
        `getBagAttribute` in interface `PKCS12BagAttributeCarrier`

    - #### getBagAttributeKeys

          public java.util.Enumeration getBagAttributeKeys()

      Specified by:
        `getBagAttributeKeys` in interface `PKCS12BagAttributeCarrier`

    - #### setPointFormat

          public void setPointFormat​(java.lang.String style)

      Description copied from interface: `ECPointEncoder`
      Set the formatting for encoding of points. If the String "UNCOMPRESSED" is passed in point compression will not be used. If the String "COMPRESSED" is passed point compression will be used. The default is "UNCOMPRESSED".
      Specified by:
        `setPointFormat` in interface `ECPointEncoder`
      Parameters:
        `style` - the style to use.

    - #### equals

          public boolean equals​(java.lang.Object o)

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

    - #### hashCode

          public int hashCode()

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

    - #### toString

          public java.lang.String toString()

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