public class org.hsqldb.persist.Crypto
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hsqldb.persist.Crypto
super_class: java.lang.Object
{
final javax.crypto.spec.SecretKeySpec key;
descriptor: Ljavax/crypto/spec/SecretKeySpec;
flags: (0x0010) ACC_FINAL
final javax.crypto.Cipher outCipher;
descriptor: Ljavax/crypto/Cipher;
flags: (0x0010) ACC_FINAL
final javax.crypto.Cipher inCipher;
descriptor: Ljavax/crypto/Cipher;
flags: (0x0010) ACC_FINAL
final javax.crypto.Cipher inStreamCipher;
descriptor: Ljavax/crypto/Cipher;
flags: (0x0010) ACC_FINAL
final javax.crypto.Cipher outStreamCipher;
descriptor: Ljavax/crypto/Cipher;
flags: (0x0010) ACC_FINAL
final javax.crypto.spec.IvParameterSpec ivSpec;
descriptor: Ljavax/crypto/spec/IvParameterSpec;
flags: (0x0010) ACC_FINAL
public void <init>(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 3
ldc "/"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 6
2: aload 3
iconst_0
3: aload 3
ldc "/"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
4: invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
5: goto 7
6: StackMap locals: org.hsqldb.persist.Crypto java.lang.String java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 3
7: StackMap locals:
StackMap stack: java.lang.String
astore 5
start local 5 8: aload 1
invokestatic org.hsqldb.lib.StringConverter.hexStringToByteArray:(Ljava/lang/String;)[B
9: astore 6
start local 6 10: aload 2
ifnull 15
aload 2
invokevirtual java.lang.String.isEmpty:()Z
ifne 15
11: aload 2
invokestatic org.hsqldb.lib.StringConverter.hexStringToByteArray:(Ljava/lang/String;)[B
12: astore 7
start local 7 13: aload 0
new javax.crypto.spec.IvParameterSpec
dup
aload 7
invokespecial javax.crypto.spec.IvParameterSpec.<init>:([B)V
putfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
end local 7 14: goto 16
15: StackMap locals: java.lang.String byte[]
StackMap stack:
aload 0
aconst_null
putfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
16: StackMap locals:
StackMap stack:
aload 0
new javax.crypto.spec.SecretKeySpec
dup
aload 6
aload 5
invokespecial javax.crypto.spec.SecretKeySpec.<init>:([BLjava/lang/String;)V
putfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
17: aload 0
aload 4
ifnonnull 18
aload 3
invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;)Ljavax/crypto/Cipher;
goto 21
18: StackMap locals:
StackMap stack: org.hsqldb.persist.Crypto
aload 3
19: aload 4
20: invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljavax/crypto/Cipher;
21: StackMap locals: org.hsqldb.persist.Crypto java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String byte[]
StackMap stack: org.hsqldb.persist.Crypto javax.crypto.Cipher
putfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
22: aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 25
23: aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
24: goto 26
25: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
26: StackMap locals:
StackMap stack:
aload 0
aload 4
ifnonnull 27
aload 3
invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;)Ljavax/crypto/Cipher;
goto 30
27: StackMap locals:
StackMap stack: org.hsqldb.persist.Crypto
aload 3
28: aload 4
29: invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljavax/crypto/Cipher;
30: StackMap locals: org.hsqldb.persist.Crypto java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String byte[]
StackMap stack: org.hsqldb.persist.Crypto javax.crypto.Cipher
putfield org.hsqldb.persist.Crypto.outStreamCipher:Ljavax/crypto/Cipher;
31: aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 34
32: aload 0
getfield org.hsqldb.persist.Crypto.outStreamCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
33: goto 35
34: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.outStreamCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
35: StackMap locals:
StackMap stack:
aload 0
aload 4
ifnonnull 36
aload 3
invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;)Ljavax/crypto/Cipher;
goto 39
36: StackMap locals:
StackMap stack: org.hsqldb.persist.Crypto
aload 3
37: aload 4
38: invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljavax/crypto/Cipher;
39: StackMap locals: org.hsqldb.persist.Crypto java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String byte[]
StackMap stack: org.hsqldb.persist.Crypto javax.crypto.Cipher
putfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
40: aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 43
41: aload 0
getfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
42: goto 44
43: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
44: StackMap locals:
StackMap stack:
aload 0
aload 4
ifnonnull 45
aload 3
invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;)Ljavax/crypto/Cipher;
goto 48
45: StackMap locals:
StackMap stack: org.hsqldb.persist.Crypto
aload 3
46: aload 4
47: invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljavax/crypto/Cipher;
48: StackMap locals: org.hsqldb.persist.Crypto java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String byte[]
StackMap stack: org.hsqldb.persist.Crypto javax.crypto.Cipher
putfield org.hsqldb.persist.Crypto.inStreamCipher:Ljavax/crypto/Cipher;
49: aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 52
50: aload 0
getfield org.hsqldb.persist.Crypto.inStreamCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
51: goto 66
52: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.inStreamCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
end local 6 53: goto 66
StackMap locals: org.hsqldb.persist.Crypto java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
StackMap stack: javax.crypto.NoSuchPaddingException
54: astore 6
start local 6 55: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 56: StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
astore 6
start local 6 57: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 58: StackMap locals:
StackMap stack: java.security.InvalidKeyException
astore 6
start local 6 59: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 60: StackMap locals:
StackMap stack: java.security.NoSuchProviderException
astore 6
start local 6 61: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 62: StackMap locals:
StackMap stack: java.io.IOException
astore 6
start local 6 63: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 64: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 6
start local 6 65: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 66: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 67 0 this Lorg/hsqldb/persist/Crypto;
0 67 1 keyString Ljava/lang/String;
0 67 2 ivString Ljava/lang/String;
0 67 3 cipherName Ljava/lang/String;
0 67 4 provider Ljava/lang/String;
8 67 5 keyAlgorithm Ljava/lang/String;
10 53 6 encodedKey [B
13 14 7 encodedIv [B
55 56 6 e Ljavax/crypto/NoSuchPaddingException;
57 58 6 e Ljava/security/NoSuchAlgorithmException;
59 60 6 e Ljava/security/InvalidKeyException;
61 62 6 e Ljava/security/NoSuchProviderException;
63 64 6 e Ljava/io/IOException;
65 66 6 e Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
8 53 54 Class javax.crypto.NoSuchPaddingException
8 53 56 Class java.security.NoSuchAlgorithmException
8 53 58 Class java.security.InvalidKeyException
8 53 60 Class java.security.NoSuchProviderException
8 53 62 Class java.io.IOException
8 53 64 Class java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
keyString
ivString
cipherName
provider
public synchronized java.io.InputStream getInputStream(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Ljava/io/InputStream;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
ifnonnull 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 5
3: aload 0
getfield org.hsqldb.persist.Crypto.inStreamCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.inStreamCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
6: StackMap locals:
StackMap stack:
new javax.crypto.CipherInputStream
dup
aload 1
aload 0
getfield org.hsqldb.persist.Crypto.inStreamCipher:Ljavax/crypto/Cipher;
invokespecial javax.crypto.CipherInputStream.<init>:(Ljava/io/InputStream;Ljavax/crypto/Cipher;)V
7: areturn
8: StackMap locals:
StackMap stack: java.security.InvalidKeyException
astore 2
start local 2 9: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 10: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 2
start local 2 11: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/hsqldb/persist/Crypto;
0 12 1 in Ljava/io/InputStream;
9 10 2 e Ljava/security/InvalidKeyException;
11 12 2 e Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
2 7 8 Class java.security.InvalidKeyException
2 7 10 Class java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
in
public synchronized java.io.OutputStream getOutputStream(java.io.OutputStream);
descriptor: (Ljava/io/OutputStream;)Ljava/io/OutputStream;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
ifnonnull 2
1: aload 1
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 5
3: aload 0
getfield org.hsqldb.persist.Crypto.outStreamCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.outStreamCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
6: StackMap locals:
StackMap stack:
new javax.crypto.CipherOutputStream
dup
aload 1
aload 0
getfield org.hsqldb.persist.Crypto.outStreamCipher:Ljavax/crypto/Cipher;
invokespecial javax.crypto.CipherOutputStream.<init>:(Ljava/io/OutputStream;Ljavax/crypto/Cipher;)V
7: areturn
8: StackMap locals:
StackMap stack: java.security.InvalidKeyException
astore 2
start local 2 9: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 10: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 2
start local 2 11: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/hsqldb/persist/Crypto;
0 12 1 out Ljava/io/OutputStream;
9 10 2 e Ljava/security/InvalidKeyException;
11 12 2 e Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
2 7 8 Class java.security.InvalidKeyException
2 7 10 Class java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
out
public synchronized int decode(byte[], int, int, byte[], int);
descriptor: ([BII[BI)I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
ifnonnull 2
1: iload 3
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 5
3: aload 0
getfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
iconst_2
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
6: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.inCipher:Ljavax/crypto/Cipher;
aload 1
iload 2
iload 3
aload 4
7: iload 5
8: invokevirtual javax.crypto.Cipher.doFinal:([BII[BI)I
9: ireturn
10: StackMap locals:
StackMap stack: java.security.InvalidKeyException
astore 6
start local 6 11: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 12: StackMap locals:
StackMap stack: javax.crypto.BadPaddingException
astore 6
start local 6 13: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 14: StackMap locals:
StackMap stack: javax.crypto.IllegalBlockSizeException
astore 6
start local 6 15: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 16: StackMap locals:
StackMap stack: javax.crypto.ShortBufferException
astore 6
start local 6 17: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 18: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 6
start local 6 19: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/hsqldb/persist/Crypto;
0 20 1 source [B
0 20 2 sourceOffset I
0 20 3 length I
0 20 4 dest [B
0 20 5 destOffset I
11 12 6 e Ljava/security/InvalidKeyException;
13 14 6 e Ljavax/crypto/BadPaddingException;
15 16 6 e Ljavax/crypto/IllegalBlockSizeException;
17 18 6 e Ljavax/crypto/ShortBufferException;
19 20 6 e Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
2 9 10 Class java.security.InvalidKeyException
2 9 12 Class javax.crypto.BadPaddingException
2 9 14 Class javax.crypto.IllegalBlockSizeException
2 9 16 Class javax.crypto.ShortBufferException
2 9 18 Class java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
source
sourceOffset
length
dest
destOffset
public synchronized int encode(byte[], int, int, byte[], int);
descriptor: ([BII[BI)I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
ifnonnull 2
1: iload 3
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 5
3: aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
6: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
aload 1
iload 2
iload 3
aload 4
7: iload 5
8: invokevirtual javax.crypto.Cipher.doFinal:([BII[BI)I
9: ireturn
10: StackMap locals:
StackMap stack: java.security.InvalidKeyException
astore 6
start local 6 11: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 12: StackMap locals:
StackMap stack: javax.crypto.BadPaddingException
astore 6
start local 6 13: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 14: StackMap locals:
StackMap stack: javax.crypto.IllegalBlockSizeException
astore 6
start local 6 15: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 16: StackMap locals:
StackMap stack: javax.crypto.ShortBufferException
astore 6
start local 6 17: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 18: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 6
start local 6 19: sipush 331
aload 6
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/hsqldb/persist/Crypto;
0 20 1 source [B
0 20 2 sourceOffset I
0 20 3 length I
0 20 4 dest [B
0 20 5 destOffset I
11 12 6 e Ljava/security/InvalidKeyException;
13 14 6 e Ljavax/crypto/BadPaddingException;
15 16 6 e Ljavax/crypto/IllegalBlockSizeException;
17 18 6 e Ljavax/crypto/ShortBufferException;
19 20 6 e Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
2 9 10 Class java.security.InvalidKeyException
2 9 12 Class javax.crypto.BadPaddingException
2 9 14 Class javax.crypto.IllegalBlockSizeException
2 9 16 Class javax.crypto.ShortBufferException
2 9 18 Class java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
source
sourceOffset
length
dest
destOffset
public static byte[] getNewKey(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aload 0
invokestatic javax.crypto.KeyGenerator.getInstance:(Ljava/lang/String;)Ljavax/crypto/KeyGenerator;
goto 5
2: StackMap locals:
StackMap stack:
aload 0
3: aload 1
4: invokestatic javax.crypto.KeyGenerator.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljavax/crypto/KeyGenerator;
5: StackMap locals:
StackMap stack: javax.crypto.KeyGenerator
astore 2
start local 2 6: aload 2
invokevirtual javax.crypto.KeyGenerator.generateKey:()Ljavax/crypto/SecretKey;
astore 3
start local 3 7: aload 3
invokeinterface javax.crypto.SecretKey.getEncoded:()[B
astore 4
start local 4 8: aload 4
9: areturn
end local 4 end local 3 end local 2 10: StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
astore 2
start local 2 11: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 12: StackMap locals:
StackMap stack: java.security.NoSuchProviderException
astore 2
start local 2 13: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 cipherName Ljava/lang/String;
0 14 1 provider Ljava/lang/String;
6 10 2 generator Ljavax/crypto/KeyGenerator;
7 10 3 key Ljavax/crypto/SecretKey;
8 10 4 raw [B
11 12 2 e Ljava/security/NoSuchAlgorithmException;
13 14 2 e Ljava/security/NoSuchProviderException;
Exception table:
from to target type
0 9 10 Class java.security.NoSuchAlgorithmException
0 9 12 Class java.security.NoSuchProviderException
MethodParameters:
Name Flags
cipherName
provider
public synchronized int getEncodedSize(int);
descriptor: (I)I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iload 1
invokevirtual javax.crypto.Cipher.getOutputSize:(I)I
1: ireturn
2: StackMap locals:
StackMap stack: java.lang.IllegalStateException
pop
3: aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
ifnonnull 6
4: aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;)V
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iconst_1
aload 0
getfield org.hsqldb.persist.Crypto.key:Ljavax/crypto/spec/SecretKeySpec;
aload 0
getfield org.hsqldb.persist.Crypto.ivSpec:Ljavax/crypto/spec/IvParameterSpec;
invokevirtual javax.crypto.Cipher.init:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
7: StackMap locals:
StackMap stack:
aload 0
getfield org.hsqldb.persist.Crypto.outCipher:Ljavax/crypto/Cipher;
iload 1
invokevirtual javax.crypto.Cipher.getOutputSize:(I)I
8: ireturn
9: StackMap locals:
StackMap stack: java.security.InvalidKeyException
astore 2
start local 2 10: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 11: StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
astore 2
start local 2 12: sipush 331
aload 2
invokestatic org.hsqldb.error.Error.error:(ILjava/lang/Throwable;)Lorg/hsqldb/HsqlException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/hsqldb/persist/Crypto;
0 13 1 size I
10 11 2 e Ljava/security/InvalidKeyException;
12 13 2 e Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
0 1 2 Class java.lang.IllegalStateException
3 8 9 Class java.security.InvalidKeyException
3 8 11 Class java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
size
}
SourceFile: "Crypto.java"