public class org.bouncycastle.jce.provider.JCESecretKeyFactory extends javax.crypto.SecretKeyFactorySpi implements org.bouncycastle.jce.provider.PBE
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.jce.provider.JCESecretKeyFactory
super_class: javax.crypto.SecretKeyFactorySpi
{
protected java.lang.String algName;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
protected org.bouncycastle.asn1.DERObjectIdentifier algOid;
descriptor: Lorg/bouncycastle/asn1/DERObjectIdentifier;
flags: (0x0004) ACC_PROTECTED
protected void <init>(java.lang.String, org.bouncycastle.asn1.DERObjectIdentifier);
descriptor: (Ljava/lang/String;Lorg/bouncycastle/asn1/DERObjectIdentifier;)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 javax.crypto.SecretKeyFactorySpi.<init>:()V
1: aload 0
aload 1
putfield org.bouncycastle.jce.provider.JCESecretKeyFactory.algName:Ljava/lang/String;
2: aload 0
aload 2
putfield org.bouncycastle.jce.provider.JCESecretKeyFactory.algOid:Lorg/bouncycastle/asn1/DERObjectIdentifier;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/bouncycastle/jce/provider/JCESecretKeyFactory;
0 4 1 algName Ljava/lang/String;
0 4 2 algOid Lorg/bouncycastle/asn1/DERObjectIdentifier;
MethodParameters:
Name Flags
algName
algOid
protected javax.crypto.SecretKey engineGenerateSecret(java.security.spec.KeySpec);
descriptor: (Ljava/security/spec/KeySpec;)Ljavax/crypto/SecretKey;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof javax.crypto.spec.SecretKeySpec
ifeq 2
1: aload 1
checkcast javax.crypto.SecretKey
areturn
2: StackMap locals:
StackMap stack:
new java.security.spec.InvalidKeySpecException
dup
ldc "Invalid KeySpec"
invokespecial java.security.spec.InvalidKeySpecException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/jce/provider/JCESecretKeyFactory;
0 3 1 keySpec Ljava/security/spec/KeySpec;
Exceptions:
throws java.security.spec.InvalidKeySpecException
MethodParameters:
Name Flags
keySpec
protected java.security.spec.KeySpec engineGetKeySpec(javax.crypto.SecretKey, java.lang.Class);
descriptor: (Ljavax/crypto/SecretKey;Ljava/lang/Class;)Ljava/security/spec/KeySpec;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: new java.security.spec.InvalidKeySpecException
dup
ldc "keySpec parameter is null"
invokespecial java.security.spec.InvalidKeySpecException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 4
3: new java.security.spec.InvalidKeySpecException
dup
ldc "key parameter is null"
invokespecial java.security.spec.InvalidKeySpecException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
ldc Ljavax/crypto/spec/SecretKeySpec;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 6
5: new javax.crypto.spec.SecretKeySpec
dup
aload 1
invokeinterface javax.crypto.SecretKey.getEncoded:()[B
aload 0
getfield org.bouncycastle.jce.provider.JCESecretKeyFactory.algName:Ljava/lang/String;
invokespecial javax.crypto.spec.SecretKeySpec.<init>:([BLjava/lang/String;)V
areturn
6: StackMap locals:
StackMap stack:
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc [B
aastore
astore 3
start local 3 7: aload 2
aload 3
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 4
start local 4 8: iconst_1
anewarray java.lang.Object
astore 5
start local 5 9: aload 5
iconst_0
aload 1
invokeinterface javax.crypto.SecretKey.getEncoded:()[B
aastore
10: aload 4
aload 5
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.security.spec.KeySpec
11: areturn
end local 5 end local 4 end local 3 12: StackMap locals:
StackMap stack: java.lang.Exception
astore 3
start local 3 13: new java.security.spec.InvalidKeySpecException
dup
aload 3
invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
invokespecial java.security.spec.InvalidKeySpecException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/bouncycastle/jce/provider/JCESecretKeyFactory;
0 14 1 key Ljavax/crypto/SecretKey;
0 14 2 keySpec Ljava/lang/Class;
7 12 3 parameters [Ljava/lang/Class;
8 12 4 c Ljava/lang/reflect/Constructor;
9 12 5 p [Ljava/lang/Object;
13 14 3 e Ljava/lang/Exception;
Exception table:
from to target type
6 11 12 Class java.lang.Exception
Exceptions:
throws java.security.spec.InvalidKeySpecException
MethodParameters:
Name Flags
key
keySpec
protected javax.crypto.SecretKey engineTranslateKey(javax.crypto.SecretKey);
descriptor: (Ljavax/crypto/SecretKey;)Ljavax/crypto/SecretKey;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.security.InvalidKeyException
dup
ldc "key parameter is null"
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface javax.crypto.SecretKey.getAlgorithm:()Ljava/lang/String;
aload 0
getfield org.bouncycastle.jce.provider.JCESecretKeyFactory.algName:Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 4
3: new java.security.InvalidKeyException
dup
new java.lang.StringBuilder
dup
ldc "Key not of type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.bouncycastle.jce.provider.JCESecretKeyFactory.algName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
new javax.crypto.spec.SecretKeySpec
dup
aload 1
invokeinterface javax.crypto.SecretKey.getEncoded:()[B
aload 0
getfield org.bouncycastle.jce.provider.JCESecretKeyFactory.algName:Ljava/lang/String;
invokespecial javax.crypto.spec.SecretKeySpec.<init>:([BLjava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/bouncycastle/jce/provider/JCESecretKeyFactory;
0 5 1 key Ljavax/crypto/SecretKey;
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
key
}
SourceFile: "JCESecretKeyFactory.java"
NestMembers:
org.bouncycastle.jce.provider.JCESecretKeyFactory$DES org.bouncycastle.jce.provider.JCESecretKeyFactory$DESPBEKeyFactory org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEKeyFactory org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD2AndDES org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD2AndRC2 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5And128BitAESCBCOpenSSL org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5And192BitAESCBCOpenSSL org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5And256BitAESCBCOpenSSL org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5AndDES org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5AndRC2 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithRIPEMD160 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA1AndDES org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA1AndRC2 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA256And128BitAESBC org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA256And192BitAESBC org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA256And256BitAESBC org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd128BitAESBC org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd128BitRC2 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd128BitRC4 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd192BitAESBC org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd256BitAESBC org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd40BitRC2 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd40BitRC4 org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAndDES2Key org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAndDES3Key org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAndTwofish org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithTiger
InnerClasses:
public DES = org.bouncycastle.jce.provider.JCESecretKeyFactory$DES of org.bouncycastle.jce.provider.JCESecretKeyFactory
public DESPBEKeyFactory = org.bouncycastle.jce.provider.JCESecretKeyFactory$DESPBEKeyFactory of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEKeyFactory = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEKeyFactory of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithMD2AndDES = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD2AndDES of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithMD2AndRC2 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD2AndRC2 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithMD5And128BitAESCBCOpenSSL = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5And128BitAESCBCOpenSSL of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithMD5And192BitAESCBCOpenSSL = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5And192BitAESCBCOpenSSL of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithMD5And256BitAESCBCOpenSSL = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5And256BitAESCBCOpenSSL of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithMD5AndDES = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5AndDES of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithMD5AndRC2 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithMD5AndRC2 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithRIPEMD160 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithRIPEMD160 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHA = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHA1AndDES = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA1AndDES of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHA1AndRC2 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA1AndRC2 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHA256And128BitAESBC = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA256And128BitAESBC of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHA256And192BitAESBC = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA256And192BitAESBC of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHA256And256BitAESBC = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHA256And256BitAESBC of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAnd128BitAESBC = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd128BitAESBC of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAnd128BitRC2 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd128BitRC2 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAnd128BitRC4 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd128BitRC4 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAnd192BitAESBC = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd192BitAESBC of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAnd256BitAESBC = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd256BitAESBC of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAnd40BitRC2 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd40BitRC2 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAnd40BitRC4 = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAnd40BitRC4 of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAndDES2Key = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAndDES2Key of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAndDES3Key = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAndDES3Key of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithSHAAndTwofish = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithSHAAndTwofish of org.bouncycastle.jce.provider.JCESecretKeyFactory
public PBEWithTiger = org.bouncycastle.jce.provider.JCESecretKeyFactory$PBEWithTiger of org.bouncycastle.jce.provider.JCESecretKeyFactory