Class ProofOfPossession

  • All Implemented Interfaces:
    ASN1Value

    public class ProofOfPossession
    extends java.lang.Object
    implements ASN1Value
    CRMF ProofOfPossession:
     ProofOfPossession ::= CHOICE {
          raVerified          [0] NULL,
          signature           [1] POPOSigningKey,
          keyEncipherment     [2] POPOPrivKey,
          keyAgreement        [3] POPOPrivKey }
     
    • Method Detail

      • getType

        public ProofOfPossession.Type getType()
        Returns the type of ProofOfPossesion:
        • RA_VERIFIED
        • SIGNATURE
        • KEY_ENCIPHERMENT
        • KEY_AGREEMENT
      • getSignature

        public POPOSigningKey getSignature()
        If type == SIGNATURE, returns the signature field. Otherwise, returns null.
      • getKeyEncipherment

        public POPOPrivKey getKeyEncipherment()
        If type == KEY_ENCIPHERMENT, returns the keyEncipherment field. Otherwise, returns null.
      • getKeyAgreement

        public POPOPrivKey getKeyAgreement()
        If type == KEY_AGREEMENT, returns the keyAgreement field. Otherwise, returns null.
      • createRaVerified

        public static ProofOfPossession createRaVerified()
        Creates a new ProofOfPossesion with an raVerified field.
      • createSignature

        public static ProofOfPossession createSignature​(POPOSigningKey signature)
        Creates a new ProofOfPossesion with the given signature field.
      • createKeyEncipherment

        public static ProofOfPossession createKeyEncipherment​(POPOPrivKey keyEncipherment)
        Creates a new ProofOfPossesion with the given keyEncipherment field.
      • createKeyAgreement

        public static ProofOfPossession createKeyAgreement​(POPOPrivKey keyAgreement)
        Creates a new ProofOfPossesion with the given keyAgreement field.
      • getTag

        public Tag getTag()
        Description copied from interface: ASN1Value
        Returns the base tag for this type, not counting any tags that may be imposed on it by its context.
        Specified by:
        getTag in interface ASN1Value
        Returns:
        Base tag.
      • encode

        public void encode​(java.io.OutputStream ostream)
                    throws java.io.IOException
        Description copied from interface: ASN1Value
        Write this value's DER encoding to an output stream using its own base tag.
        Specified by:
        encode in interface ASN1Value
        Parameters:
        ostream - Output stream.
        Throws:
        java.io.IOException - If an error occurred.
      • encode

        public void encode​(Tag implicitTag,
                           java.io.OutputStream ostream)
                    throws java.io.IOException
        Description copied from interface: ASN1Value
        Write this value's DER encoding to an output stream using an implicit tag.
        Specified by:
        encode in interface ASN1Value
        Parameters:
        implicitTag - Implicit tag.
        ostream - Output stream.
        Throws:
        java.io.IOException - If an error occurred.