public class org.bouncycastle.pkcs.PKCS12SafeBagFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.pkcs.PKCS12SafeBagFactory
super_class: java.lang.Object
{
private org.bouncycastle.asn1.ASN1Sequence safeBagSeq;
descriptor: Lorg/bouncycastle/asn1/ASN1Sequence;
flags: (0x0002) ACC_PRIVATE
public void <init>(org.bouncycastle.asn1.pkcs.ContentInfo);
descriptor: (Lorg/bouncycastle/asn1/pkcs/ContentInfo;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // org.bouncycastle.pkcs.PKCS12SafeBagFactory this
start local 1 // org.bouncycastle.asn1.pkcs.ContentInfo info
0: .line 16
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 18
aload 1 /* info */
invokevirtual org.bouncycastle.asn1.pkcs.ContentInfo.getContentType:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
getstatic org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.encryptedData:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifeq 3
2: .line 20
new java.lang.IllegalArgumentException
dup
ldc "encryptedData requires constructor with decryptor."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: .line 23
StackMap locals: org.bouncycastle.pkcs.PKCS12SafeBagFactory org.bouncycastle.asn1.pkcs.ContentInfo
StackMap stack:
aload 0 /* this */
aload 1 /* info */
invokevirtual org.bouncycastle.asn1.pkcs.ContentInfo.getContent:()Lorg/bouncycastle/asn1/ASN1Encodable;
invokestatic org.bouncycastle.asn1.ASN1OctetString.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/ASN1OctetString;
invokevirtual org.bouncycastle.asn1.ASN1OctetString.getOctets:()[B
invokestatic org.bouncycastle.asn1.ASN1Sequence.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/ASN1Sequence;
putfield org.bouncycastle.pkcs.PKCS12SafeBagFactory.safeBagSeq:Lorg/bouncycastle/asn1/ASN1Sequence;
4: .line 24
return
end local 1 // org.bouncycastle.asn1.pkcs.ContentInfo info
end local 0 // org.bouncycastle.pkcs.PKCS12SafeBagFactory this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/bouncycastle/pkcs/PKCS12SafeBagFactory;
0 5 1 info Lorg/bouncycastle/asn1/pkcs/ContentInfo;
MethodParameters:
Name Flags
info
public void <init>(org.bouncycastle.asn1.pkcs.ContentInfo, org.bouncycastle.operator.InputDecryptorProvider);
descriptor: (Lorg/bouncycastle/asn1/pkcs/ContentInfo;Lorg/bouncycastle/operator/InputDecryptorProvider;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 // org.bouncycastle.pkcs.PKCS12SafeBagFactory this
start local 1 // org.bouncycastle.asn1.pkcs.ContentInfo info
start local 2 // org.bouncycastle.operator.InputDecryptorProvider inputDecryptorProvider
0: .line 26
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 29
aload 1 /* info */
invokevirtual org.bouncycastle.asn1.pkcs.ContentInfo.getContentType:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
getstatic org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.encryptedData:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifeq 8
2: .line 31
new org.bouncycastle.cms.CMSEncryptedData
dup
aload 1 /* info */
invokestatic org.bouncycastle.asn1.cms.ContentInfo.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/cms/ContentInfo;
invokespecial org.bouncycastle.cms.CMSEncryptedData.<init>:(Lorg/bouncycastle/asn1/cms/ContentInfo;)V
astore 3 /* encData */
start local 3 // org.bouncycastle.cms.CMSEncryptedData encData
3: .line 35
aload 0 /* this */
aload 3 /* encData */
aload 2 /* inputDecryptorProvider */
invokevirtual org.bouncycastle.cms.CMSEncryptedData.getContent:(Lorg/bouncycastle/operator/InputDecryptorProvider;)[B
invokestatic org.bouncycastle.asn1.ASN1Sequence.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/ASN1Sequence;
putfield org.bouncycastle.pkcs.PKCS12SafeBagFactory.safeBagSeq:Lorg/bouncycastle/asn1/ASN1Sequence;
4: .line 36
goto 7
5: .line 37
StackMap locals: org.bouncycastle.pkcs.PKCS12SafeBagFactory org.bouncycastle.asn1.pkcs.ContentInfo org.bouncycastle.operator.InputDecryptorProvider org.bouncycastle.cms.CMSEncryptedData
StackMap stack: org.bouncycastle.cms.CMSException
astore 4 /* e */
start local 4 // org.bouncycastle.cms.CMSException e
6: .line 39
new org.bouncycastle.pkcs.PKCSException
dup
new java.lang.StringBuilder
dup
ldc "unable to extract data: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4 /* e */
invokevirtual org.bouncycastle.cms.CMSException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4 /* e */
invokespecial org.bouncycastle.pkcs.PKCSException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 // org.bouncycastle.cms.CMSException e
7: .line 41
StackMap locals:
StackMap stack:
return
end local 3 // org.bouncycastle.cms.CMSEncryptedData encData
8: .line 44
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "encryptedData requires constructor with decryptor."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 2 // org.bouncycastle.operator.InputDecryptorProvider inputDecryptorProvider
end local 1 // org.bouncycastle.asn1.pkcs.ContentInfo info
end local 0 // org.bouncycastle.pkcs.PKCS12SafeBagFactory this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/bouncycastle/pkcs/PKCS12SafeBagFactory;
0 9 1 info Lorg/bouncycastle/asn1/pkcs/ContentInfo;
0 9 2 inputDecryptorProvider Lorg/bouncycastle/operator/InputDecryptorProvider;
3 8 3 encData Lorg/bouncycastle/cms/CMSEncryptedData;
6 7 4 e Lorg/bouncycastle/cms/CMSException;
Exception table:
from to target type
3 4 5 Class org.bouncycastle.cms.CMSException
Exceptions:
throws org.bouncycastle.pkcs.PKCSException
MethodParameters:
Name Flags
info
inputDecryptorProvider
public org.bouncycastle.pkcs.PKCS12SafeBag[] getSafeBags();
descriptor: ()[Lorg/bouncycastle/pkcs/PKCS12SafeBag;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=1
start local 0 // org.bouncycastle.pkcs.PKCS12SafeBagFactory this
0: .line 49
aload 0 /* this */
getfield org.bouncycastle.pkcs.PKCS12SafeBagFactory.safeBagSeq:Lorg/bouncycastle/asn1/ASN1Sequence;
invokevirtual org.bouncycastle.asn1.ASN1Sequence.size:()I
anewarray org.bouncycastle.pkcs.PKCS12SafeBag
astore 1 /* safeBags */
start local 1 // org.bouncycastle.pkcs.PKCS12SafeBag[] safeBags
1: .line 51
iconst_0
istore 2 /* i */
start local 2 // int i
2: goto 5
3: .line 53
StackMap locals: org.bouncycastle.pkcs.PKCS12SafeBag[] int
StackMap stack:
aload 1 /* safeBags */
iload 2 /* i */
new org.bouncycastle.pkcs.PKCS12SafeBag
dup
aload 0 /* this */
getfield org.bouncycastle.pkcs.PKCS12SafeBagFactory.safeBagSeq:Lorg/bouncycastle/asn1/ASN1Sequence;
iload 2 /* i */
invokevirtual org.bouncycastle.asn1.ASN1Sequence.getObjectAt:(I)Lorg/bouncycastle/asn1/ASN1Encodable;
invokestatic org.bouncycastle.asn1.pkcs.SafeBag.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/pkcs/SafeBag;
invokespecial org.bouncycastle.pkcs.PKCS12SafeBag.<init>:(Lorg/bouncycastle/asn1/pkcs/SafeBag;)V
aastore
4: .line 51
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
5: iload 2 /* i */
aload 0 /* this */
getfield org.bouncycastle.pkcs.PKCS12SafeBagFactory.safeBagSeq:Lorg/bouncycastle/asn1/ASN1Sequence;
invokevirtual org.bouncycastle.asn1.ASN1Sequence.size:()I
if_icmpne 3
end local 2 // int i
6: .line 56
aload 1 /* safeBags */
areturn
end local 1 // org.bouncycastle.pkcs.PKCS12SafeBag[] safeBags
end local 0 // org.bouncycastle.pkcs.PKCS12SafeBagFactory this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/bouncycastle/pkcs/PKCS12SafeBagFactory;
1 7 1 safeBags [Lorg/bouncycastle/pkcs/PKCS12SafeBag;
2 6 2 i I
}
SourceFile: "PKCS12SafeBagFactory.java"