public class org.bouncycastle.cms.KeyTransRecipientInformation extends org.bouncycastle.cms.RecipientInformation
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.cms.KeyTransRecipientInformation
super_class: org.bouncycastle.cms.RecipientInformation
{
private org.bouncycastle.asn1.cms.KeyTransRecipientInfo info;
descriptor: Lorg/bouncycastle/asn1/cms/KeyTransRecipientInfo;
flags: (0x0002) ACC_PRIVATE
void <init>(org.bouncycastle.asn1.cms.KeyTransRecipientInfo, org.bouncycastle.asn1.x509.AlgorithmIdentifier, org.bouncycastle.cms.CMSSecureReadable, org.bouncycastle.cms.AuthAttributesProvider);
descriptor: (Lorg/bouncycastle/asn1/cms/KeyTransRecipientInfo;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/cms/CMSSecureReadable;Lorg/bouncycastle/cms/AuthAttributesProvider;)V
flags: (0x0000)
Code:
stack=5, locals=7, args_size=5
start local 0 // org.bouncycastle.cms.KeyTransRecipientInformation this
start local 1 // org.bouncycastle.asn1.cms.KeyTransRecipientInfo info
start local 2 // org.bouncycastle.asn1.x509.AlgorithmIdentifier messageAlgorithm
start local 3 // org.bouncycastle.cms.CMSSecureReadable secureReadable
start local 4 // org.bouncycastle.cms.AuthAttributesProvider additionalData
0: .line 25
aload 0 /* this */
aload 1 /* info */
invokevirtual org.bouncycastle.asn1.cms.KeyTransRecipientInfo.getKeyEncryptionAlgorithm:()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
aload 2 /* messageAlgorithm */
aload 3 /* secureReadable */
aload 4 /* additionalData */
invokespecial org.bouncycastle.cms.RecipientInformation.<init>:(Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/cms/CMSSecureReadable;Lorg/bouncycastle/cms/AuthAttributesProvider;)V
1: .line 27
aload 0 /* this */
aload 1 /* info */
putfield org.bouncycastle.cms.KeyTransRecipientInformation.info:Lorg/bouncycastle/asn1/cms/KeyTransRecipientInfo;
2: .line 29
aload 1 /* info */
invokevirtual org.bouncycastle.asn1.cms.KeyTransRecipientInfo.getRecipientIdentifier:()Lorg/bouncycastle/asn1/cms/RecipientIdentifier;
astore 5 /* r */
start local 5 // org.bouncycastle.asn1.cms.RecipientIdentifier r
3: .line 31
aload 5 /* r */
invokevirtual org.bouncycastle.asn1.cms.RecipientIdentifier.isTagged:()Z
ifeq 7
4: .line 33
aload 5 /* r */
invokevirtual org.bouncycastle.asn1.cms.RecipientIdentifier.getId:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokestatic org.bouncycastle.asn1.ASN1OctetString.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/ASN1OctetString;
astore 6 /* octs */
start local 6 // org.bouncycastle.asn1.ASN1OctetString octs
5: .line 35
aload 0 /* this */
new org.bouncycastle.cms.KeyTransRecipientId
dup
aload 6 /* octs */
invokevirtual org.bouncycastle.asn1.ASN1OctetString.getOctets:()[B
invokespecial org.bouncycastle.cms.KeyTransRecipientId.<init>:([B)V
putfield org.bouncycastle.cms.KeyTransRecipientInformation.rid:Lorg/bouncycastle/cms/RecipientId;
end local 6 // org.bouncycastle.asn1.ASN1OctetString octs
6: .line 36
goto 9
7: .line 39
StackMap locals: org.bouncycastle.cms.KeyTransRecipientInformation org.bouncycastle.asn1.cms.KeyTransRecipientInfo org.bouncycastle.asn1.x509.AlgorithmIdentifier org.bouncycastle.cms.CMSSecureReadable org.bouncycastle.cms.AuthAttributesProvider org.bouncycastle.asn1.cms.RecipientIdentifier
StackMap stack:
aload 5 /* r */
invokevirtual org.bouncycastle.asn1.cms.RecipientIdentifier.getId:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokestatic org.bouncycastle.asn1.cms.IssuerAndSerialNumber.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;
astore 6 /* iAnds */
start local 6 // org.bouncycastle.asn1.cms.IssuerAndSerialNumber iAnds
8: .line 41
aload 0 /* this */
new org.bouncycastle.cms.KeyTransRecipientId
dup
aload 6 /* iAnds */
invokevirtual org.bouncycastle.asn1.cms.IssuerAndSerialNumber.getName:()Lorg/bouncycastle/asn1/x500/X500Name;
aload 6 /* iAnds */
invokevirtual org.bouncycastle.asn1.cms.IssuerAndSerialNumber.getSerialNumber:()Lorg/bouncycastle/asn1/ASN1Integer;
invokevirtual org.bouncycastle.asn1.ASN1Integer.getValue:()Ljava/math/BigInteger;
invokespecial org.bouncycastle.cms.KeyTransRecipientId.<init>:(Lorg/bouncycastle/asn1/x500/X500Name;Ljava/math/BigInteger;)V
putfield org.bouncycastle.cms.KeyTransRecipientInformation.rid:Lorg/bouncycastle/cms/RecipientId;
end local 6 // org.bouncycastle.asn1.cms.IssuerAndSerialNumber iAnds
9: .line 43
StackMap locals:
StackMap stack:
return
end local 5 // org.bouncycastle.asn1.cms.RecipientIdentifier r
end local 4 // org.bouncycastle.cms.AuthAttributesProvider additionalData
end local 3 // org.bouncycastle.cms.CMSSecureReadable secureReadable
end local 2 // org.bouncycastle.asn1.x509.AlgorithmIdentifier messageAlgorithm
end local 1 // org.bouncycastle.asn1.cms.KeyTransRecipientInfo info
end local 0 // org.bouncycastle.cms.KeyTransRecipientInformation this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/bouncycastle/cms/KeyTransRecipientInformation;
0 10 1 info Lorg/bouncycastle/asn1/cms/KeyTransRecipientInfo;
0 10 2 messageAlgorithm Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
0 10 3 secureReadable Lorg/bouncycastle/cms/CMSSecureReadable;
0 10 4 additionalData Lorg/bouncycastle/cms/AuthAttributesProvider;
3 10 5 r Lorg/bouncycastle/asn1/cms/RecipientIdentifier;
5 6 6 octs Lorg/bouncycastle/asn1/ASN1OctetString;
8 9 6 iAnds Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;
MethodParameters:
Name Flags
info
messageAlgorithm
secureReadable
additionalData
protected org.bouncycastle.cms.RecipientOperator getRecipientOperator(org.bouncycastle.cms.Recipient);
descriptor: (Lorg/bouncycastle/cms/Recipient;)Lorg/bouncycastle/cms/RecipientOperator;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 // org.bouncycastle.cms.KeyTransRecipientInformation this
start local 1 // org.bouncycastle.cms.Recipient recipient
0: .line 48
aload 1 /* recipient */
checkcast org.bouncycastle.cms.KeyTransRecipient
aload 0 /* this */
getfield org.bouncycastle.cms.KeyTransRecipientInformation.keyEncAlg:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
aload 0 /* this */
getfield org.bouncycastle.cms.KeyTransRecipientInformation.messageAlgorithm:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
aload 0 /* this */
getfield org.bouncycastle.cms.KeyTransRecipientInformation.info:Lorg/bouncycastle/asn1/cms/KeyTransRecipientInfo;
invokevirtual org.bouncycastle.asn1.cms.KeyTransRecipientInfo.getEncryptedKey:()Lorg/bouncycastle/asn1/ASN1OctetString;
invokevirtual org.bouncycastle.asn1.ASN1OctetString.getOctets:()[B
invokeinterface org.bouncycastle.cms.KeyTransRecipient.getRecipientOperator:(Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;[B)Lorg/bouncycastle/cms/RecipientOperator;
areturn
end local 1 // org.bouncycastle.cms.Recipient recipient
end local 0 // org.bouncycastle.cms.KeyTransRecipientInformation this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/cms/KeyTransRecipientInformation;
0 1 1 recipient Lorg/bouncycastle/cms/Recipient;
Exceptions:
throws org.bouncycastle.cms.CMSException
MethodParameters:
Name Flags
recipient
}
SourceFile: "KeyTransRecipientInformation.java"