class org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1 implements org.bouncycastle.cert.crmf.jcajce.CRMFHelper$JCECallback
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1
super_class: java.lang.Object
{
final org.bouncycastle.cert.crmf.jcajce.CRMFHelper this$0;
descriptor: Lorg/bouncycastle/cert/crmf/jcajce/CRMFHelper;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final org.bouncycastle.asn1.x509.AlgorithmIdentifier val$encryptionAlgID;
descriptor: Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.security.Key val$sKey;
descriptor: Ljava/security/Key;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.bouncycastle.cert.crmf.jcajce.CRMFHelper, org.bouncycastle.asn1.x509.AlgorithmIdentifier, java.security.Key);
descriptor: (Lorg/bouncycastle/cert/crmf/jcajce/CRMFHelper;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Ljava/security/Key;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.this$0:Lorg/bouncycastle/cert/crmf/jcajce/CRMFHelper;
aload 0
aload 2
putfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$encryptionAlgID:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
aload 0
aload 3
putfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$sKey:Ljava/security/Key;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/cert/crmf/jcajce/CRMFHelper$1;
MethodParameters:
Name Flags
this$0 final
val$encryptionAlgID final
val$sKey final
public java.lang.Object doInJCE();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=1
start local 0 0: aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.this$0:Lorg/bouncycastle/cert/crmf/jcajce/CRMFHelper;
aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$encryptionAlgID:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
invokevirtual org.bouncycastle.asn1.x509.AlgorithmIdentifier.getAlgorithm:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.cert.crmf.jcajce.CRMFHelper.createCipher:(Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;)Ljavax/crypto/Cipher;
astore 1
start local 1 1: aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$encryptionAlgID:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
invokevirtual org.bouncycastle.asn1.x509.AlgorithmIdentifier.getParameters:()Lorg/bouncycastle/asn1/ASN1Encodable;
checkcast org.bouncycastle.asn1.ASN1Primitive
astore 2
start local 2 2: aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$encryptionAlgID:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
invokevirtual org.bouncycastle.asn1.x509.AlgorithmIdentifier.getAlgorithm:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
astore 3
start local 3 3: aload 2
ifnull 22
aload 2
instanceof org.bouncycastle.asn1.ASN1Null
ifne 22
4: aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.this$0:Lorg/bouncycastle/cert/crmf/jcajce/CRMFHelper;
aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$encryptionAlgID:Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
invokevirtual org.bouncycastle.asn1.x509.AlgorithmIdentifier.getAlgorithm:()Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.cert.crmf.jcajce.CRMFHelper.createAlgorithmParameters:(Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;)Ljava/security/AlgorithmParameters;
astore 4
start local 4 5: aload 4
aload 2
invokestatic org.bouncycastle.jcajce.util.AlgorithmParametersUtils.loadParameters:(Ljava/security/AlgorithmParameters;Lorg/bouncycastle/asn1/ASN1Encodable;)V
6: goto 9
7: StackMap locals: org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1 javax.crypto.Cipher org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.asn1.ASN1ObjectIdentifier java.security.AlgorithmParameters
StackMap stack: java.io.IOException
astore 5
start local 5 8: new org.bouncycastle.cert.crmf.CRMFException
dup
ldc "error decoding algorithm parameters."
aload 5
invokespecial org.bouncycastle.cert.crmf.CRMFException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 9: StackMap locals:
StackMap stack:
aload 1
iconst_2
aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$sKey:Ljava/security/Key;
aload 4
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/AlgorithmParameters;)V
end local 4 10: goto 28
11: StackMap locals: org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1 javax.crypto.Cipher org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.asn1.ASN1ObjectIdentifier
StackMap stack: java.security.NoSuchAlgorithmException
astore 4
start local 4 12: aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.DES_EDE3_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifne 17
13: aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.IDEA_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifne 17
14: aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.AES128_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifne 17
15: aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.AES192_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifne 17
16: aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.AES256_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifeq 21
17: StackMap locals: java.security.NoSuchAlgorithmException
StackMap stack:
aload 1
iconst_2
aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$sKey:Ljava/security/Key;
new javax.crypto.spec.IvParameterSpec
dup
18: aload 2
invokestatic org.bouncycastle.asn1.ASN1OctetString.getInstance:(Ljava/lang/Object;)Lorg/bouncycastle/asn1/ASN1OctetString;
invokevirtual org.bouncycastle.asn1.ASN1OctetString.getOctets:()[B
invokespecial javax.crypto.spec.IvParameterSpec.<init>:([B)V
19: invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
20: goto 28
21: StackMap locals:
StackMap stack:
aload 4
athrow
end local 4 22: StackMap locals:
StackMap stack:
aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.DES_EDE3_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifne 25
23: aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.IDEA_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifne 25
24: aload 3
getstatic org.bouncycastle.cms.CMSAlgorithm.CAST5_CBC:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.equals:(Ljava/lang/Object;)Z
ifeq 27
25: StackMap locals:
StackMap stack:
aload 1
iconst_2
aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$sKey:Ljava/security/Key;
new javax.crypto.spec.IvParameterSpec
dup
bipush 8
newarray 8
invokespecial javax.crypto.spec.IvParameterSpec.<init>:([B)V
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
26: goto 28
27: StackMap locals:
StackMap stack:
aload 1
iconst_2
aload 0
getfield org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1.val$sKey:Ljava/security/Key;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
28: StackMap locals:
StackMap stack:
aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/bouncycastle/cert/crmf/jcajce/CRMFHelper$1;
1 29 1 cipher Ljavax/crypto/Cipher;
2 29 2 sParams Lorg/bouncycastle/asn1/ASN1Primitive;
3 29 3 encAlg Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
5 10 4 params Ljava/security/AlgorithmParameters;
8 9 5 e Ljava/io/IOException;
12 22 4 e Ljava/security/NoSuchAlgorithmException;
Exception table:
from to target type
5 6 7 Class java.io.IOException
4 10 11 Class java.security.NoSuchAlgorithmException
Exceptions:
throws org.bouncycastle.cert.crmf.CRMFException, java.security.InvalidAlgorithmParameterException, java.security.InvalidKeyException, java.security.spec.InvalidParameterSpecException, java.security.NoSuchAlgorithmException, javax.crypto.NoSuchPaddingException, java.security.NoSuchProviderException
}
SourceFile: "CRMFHelper.java"
EnclosingMethod: org.bouncycastle.cert.crmf.jcajce.CRMFHelper.createContentCipher:(Ljava/security/Key;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;)Ljavax/crypto/Cipher;
NestHost: org.bouncycastle.cert.crmf.jcajce.CRMFHelper
InnerClasses:
org.bouncycastle.cert.crmf.jcajce.CRMFHelper$1
abstract JCECallback = org.bouncycastle.cert.crmf.jcajce.CRMFHelper$JCECallback of org.bouncycastle.cert.crmf.jcajce.CRMFHelper