Class KeyAgreeRecipientInfo

  • All Implemented Interfaces:
    org.bouncycastle.asn1.ASN1Encodable, org.bouncycastle.util.Encodable

    public class KeyAgreeRecipientInfo
    extends org.bouncycastle.asn1.ASN1Object
    RFC 5652: Content encryption key delivery mechanisms.

     KeyAgreeRecipientInfo ::= SEQUENCE {
         version CMSVersion,  -- always set to 3
         originator [0] EXPLICIT OriginatorIdentifierOrKey,
         ukm [1] EXPLICIT UserKeyingMaterial OPTIONAL,
         keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier,
         recipientEncryptedKeys RecipientEncryptedKeys 
     }
    
     UserKeyingMaterial ::= OCTET STRING
     
    • Constructor Detail

      • KeyAgreeRecipientInfo

        public KeyAgreeRecipientInfo​(OriginatorIdentifierOrKey originator,
                                     org.bouncycastle.asn1.ASN1OctetString ukm,
                                     org.bouncycastle.asn1.x509.AlgorithmIdentifier keyEncryptionAlgorithm,
                                     org.bouncycastle.asn1.ASN1Sequence recipientEncryptedKeys)
    • Method Detail

      • getInstance

        public static KeyAgreeRecipientInfo getInstance​(org.bouncycastle.asn1.ASN1TaggedObject obj,
                                                        boolean explicit)
        Return a KeyAgreeRecipientInfo object from a tagged object.
        Parameters:
        obj - the tagged object holding the object we want.
        explicit - true if the object is meant to be explicitly tagged false otherwise.
        Throws:
        java.lang.IllegalArgumentException - if the object held by the tagged object cannot be converted.
      • getInstance

        public static KeyAgreeRecipientInfo getInstance​(java.lang.Object obj)
        Return a KeyAgreeRecipientInfo object from the given object.

        Accepted inputs:

        • null → null
        • KeyAgreeRecipientInfo object
        • ASN1Sequence input formats with KeyAgreeRecipientInfo structure inside
        Parameters:
        obj - the object we want converted.
        Throws:
        java.lang.IllegalArgumentException - if the object cannot be converted.
      • getVersion

        public org.bouncycastle.asn1.ASN1Integer getVersion()
      • getUserKeyingMaterial

        public org.bouncycastle.asn1.ASN1OctetString getUserKeyingMaterial()
      • getKeyEncryptionAlgorithm

        public org.bouncycastle.asn1.x509.AlgorithmIdentifier getKeyEncryptionAlgorithm()
      • getRecipientEncryptedKeys

        public org.bouncycastle.asn1.ASN1Sequence getRecipientEncryptedKeys()
      • toASN1Primitive

        public org.bouncycastle.asn1.ASN1Primitive toASN1Primitive()
        Produce an object suitable for an ASN1OutputStream.
        Specified by:
        toASN1Primitive in interface org.bouncycastle.asn1.ASN1Encodable
        Specified by:
        toASN1Primitive in class org.bouncycastle.asn1.ASN1Object