Package org.bouncycastle.asn1.crmf

## Class POPOSigningKey

- java.lang.Object
- - org.bouncycastle.asn1.ASN1Object
  - - org.bouncycastle.asn1.crmf.POPOSigningKey

- All Implemented Interfaces:
    `ASN1Encodable`, `Encodable`

      public class POPOSigningKey
      extends ASN1Object

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `POPOSigningKey​(POPOSigningKeyInput poposkIn, AlgorithmIdentifier aid, DERBitString signature)` | Creates a new Proof of Possession object for a signing key.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `AlgorithmIdentifier` | `getAlgorithmIdentifier()` |
    `static POPOSigningKey` | `getInstance​(java.lang.Object o)` |
    `static POPOSigningKey` | `getInstance​(ASN1TaggedObject obj, boolean explicit)` |
    `POPOSigningKeyInput` | `getPoposkInput()` |
    `DERBitString` | `getSignature()` |
    `ASN1Primitive` | `toASN1Primitive()` | POPOSigningKey ::= SEQUENCE { poposkInput [0] POPOSigningKeyInput OPTIONAL, algorithmIdentifier AlgorithmIdentifier, signature BIT STRING } -- The signature (using "algorithmIdentifier") is on the -- DER-encoded value of poposkInput.

    - ### Methods inherited from class org.bouncycastle.asn1.ASN1Object

      `encodeTo, encodeTo, equals, getEncoded, getEncoded, hasEncodedTagValue, hashCode`

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

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

- - ### Constructor Detail

    - #### POPOSigningKey

          public POPOSigningKey​(POPOSigningKeyInput poposkIn,
                                AlgorithmIdentifier aid,
                                DERBitString signature)

      Creates a new Proof of Possession object for a signing key.
      Parameters:
        `poposkIn` - the POPOSigningKeyInput structure, or null if the CertTemplate includes both subject and publicKey values.
        `aid` - the AlgorithmIdentifier used to sign the proof of possession.
        `signature` - a signature over the DER-encoded value of poposkIn, or the DER-encoded value of certReq if poposkIn is null.

  - ### Method Detail

    - #### getInstance

          public static POPOSigningKey getInstance​(java.lang.Object o)

    - #### getInstance

          public static POPOSigningKey getInstance​(ASN1TaggedObject obj,
                                                   boolean explicit)

    - #### getPoposkInput

          public POPOSigningKeyInput getPoposkInput()

    - #### getAlgorithmIdentifier

          public AlgorithmIdentifier getAlgorithmIdentifier()

    - #### getSignature

          public DERBitString getSignature()

    - #### toASN1Primitive

          public ASN1Primitive toASN1Primitive()

           POPOSigningKey ::= SEQUENCE {
                                poposkInput           [0] POPOSigningKeyInput OPTIONAL,
                                algorithmIdentifier   AlgorithmIdentifier,
                                signature             BIT STRING }
            -- The signature (using "algorithmIdentifier") is on the
            -- DER-encoded value of poposkInput.  NOTE: If the CertReqMsg
            -- certReq CertTemplate contains the subject and publicKey values,
            -- then poposkInput MUST be omitted and the signature MUST be
            -- computed on the DER-encoded value of CertReqMsg certReq.  If
            -- the CertReqMsg certReq CertTemplate does not contain the public
            -- key and subject values, then poposkInput MUST be present and
            -- MUST be signed.  This strategy ensures that the public key is
            -- not present in both the poposkInput and CertReqMsg certReq
            -- CertTemplate fields.

      Specified by:
        `toASN1Primitive` in interface `ASN1Encodable`
      Specified by:
        `toASN1Primitive` in class `ASN1Object`
      Returns:
        a basic ASN.1 object representation.