public abstract class org.bouncycastle.cms.KeyTransRecipientInfoGenerator implements org.bouncycastle.cms.RecipientInfoGenerator
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.bouncycastle.cms.KeyTransRecipientInfoGenerator
super_class: java.lang.Object
{
protected final org.bouncycastle.operator.AsymmetricKeyWrapper wrapper;
descriptor: Lorg/bouncycastle/operator/AsymmetricKeyWrapper;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private org.bouncycastle.asn1.cms.IssuerAndSerialNumber issuerAndSerial;
descriptor: Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;
flags: (0x0002) ACC_PRIVATE
private byte[] subjectKeyIdentifier;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
protected void <init>(org.bouncycastle.asn1.cms.IssuerAndSerialNumber, org.bouncycastle.operator.AsymmetricKeyWrapper);
descriptor: (Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;Lorg/bouncycastle/operator/AsymmetricKeyWrapper;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.issuerAndSerial:Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;
2: aload 0
aload 2
putfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.wrapper:Lorg/bouncycastle/operator/AsymmetricKeyWrapper;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/bouncycastle/cms/KeyTransRecipientInfoGenerator;
0 4 1 issuerAndSerial Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;
0 4 2 wrapper Lorg/bouncycastle/operator/AsymmetricKeyWrapper;
MethodParameters:
Name Flags
issuerAndSerial
wrapper
protected void <init>(byte[], org.bouncycastle.operator.AsymmetricKeyWrapper);
descriptor: ([BLorg/bouncycastle/operator/AsymmetricKeyWrapper;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.subjectKeyIdentifier:[B
2: aload 0
aload 2
putfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.wrapper:Lorg/bouncycastle/operator/AsymmetricKeyWrapper;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/bouncycastle/cms/KeyTransRecipientInfoGenerator;
0 4 1 subjectKeyIdentifier [B
0 4 2 wrapper Lorg/bouncycastle/operator/AsymmetricKeyWrapper;
MethodParameters:
Name Flags
subjectKeyIdentifier
wrapper
public final org.bouncycastle.asn1.cms.RecipientInfo generate(org.bouncycastle.operator.GenericKey);
descriptor: (Lorg/bouncycastle/operator/GenericKey;)Lorg/bouncycastle/asn1/cms/RecipientInfo;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=9, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.wrapper:Lorg/bouncycastle/operator/AsymmetricKeyWrapper;
aload 1
invokevirtual org.bouncycastle.operator.AsymmetricKeyWrapper.generateWrappedKey:(Lorg/bouncycastle/operator/GenericKey;)[B
astore 2
start local 2 1: goto 4
end local 2 2: StackMap locals:
StackMap stack: org.bouncycastle.operator.OperatorException
astore 3
start local 3 3: new org.bouncycastle.cms.CMSException
dup
new java.lang.StringBuilder
dup
ldc "exception wrapping content key: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual org.bouncycastle.operator.OperatorException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokespecial org.bouncycastle.cms.CMSException.<init>:(Ljava/lang/String;Ljava/lang/Exception;)V
athrow
end local 3 start local 2 4: StackMap locals: byte[]
StackMap stack:
aload 0
getfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.issuerAndSerial:Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;
ifnull 7
5: new org.bouncycastle.asn1.cms.RecipientIdentifier
dup
aload 0
getfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.issuerAndSerial:Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;
invokespecial org.bouncycastle.asn1.cms.RecipientIdentifier.<init>:(Lorg/bouncycastle/asn1/cms/IssuerAndSerialNumber;)V
astore 3
start local 3 6: goto 8
end local 3 7: StackMap locals:
StackMap stack:
new org.bouncycastle.asn1.cms.RecipientIdentifier
dup
new org.bouncycastle.asn1.DEROctetString
dup
aload 0
getfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.subjectKeyIdentifier:[B
invokespecial org.bouncycastle.asn1.DEROctetString.<init>:([B)V
invokespecial org.bouncycastle.asn1.cms.RecipientIdentifier.<init>:(Lorg/bouncycastle/asn1/ASN1OctetString;)V
astore 3
start local 3 8: StackMap locals: org.bouncycastle.asn1.cms.RecipientIdentifier
StackMap stack:
new org.bouncycastle.asn1.cms.RecipientInfo
dup
new org.bouncycastle.asn1.cms.KeyTransRecipientInfo
dup
aload 3
aload 0
getfield org.bouncycastle.cms.KeyTransRecipientInfoGenerator.wrapper:Lorg/bouncycastle/operator/AsymmetricKeyWrapper;
invokevirtual org.bouncycastle.operator.AsymmetricKeyWrapper.getAlgorithmIdentifier:()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
9: new org.bouncycastle.asn1.DEROctetString
dup
aload 2
invokespecial org.bouncycastle.asn1.DEROctetString.<init>:([B)V
invokespecial org.bouncycastle.asn1.cms.KeyTransRecipientInfo.<init>:(Lorg/bouncycastle/asn1/cms/RecipientIdentifier;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/asn1/ASN1OctetString;)V
10: invokespecial org.bouncycastle.asn1.cms.RecipientInfo.<init>:(Lorg/bouncycastle/asn1/cms/KeyTransRecipientInfo;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/bouncycastle/cms/KeyTransRecipientInfoGenerator;
0 11 1 contentEncryptionKey Lorg/bouncycastle/operator/GenericKey;
1 2 2 encryptedKeyBytes [B
4 11 2 encryptedKeyBytes [B
3 4 3 e Lorg/bouncycastle/operator/OperatorException;
6 7 3 recipId Lorg/bouncycastle/asn1/cms/RecipientIdentifier;
8 11 3 recipId Lorg/bouncycastle/asn1/cms/RecipientIdentifier;
Exception table:
from to target type
0 1 2 Class org.bouncycastle.operator.OperatorException
Exceptions:
throws org.bouncycastle.cms.CMSException
MethodParameters:
Name Flags
contentEncryptionKey
}
SourceFile: "KeyTransRecipientInfoGenerator.java"