class java.security.Signature$Delegate extends java.security.Signature
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.security.Signature$Delegate
super_class: java.security.Signature
{
private java.security.SignatureSpi sigSpi;
descriptor: Ljava/security/SignatureSpi;
flags: (0x0002) ACC_PRIVATE
private final java.lang.Object lock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.security.Provider$Service firstService;
descriptor: Ljava/security/Provider$Service;
flags: (0x0002) ACC_PRIVATE
private java.util.Iterator<java.security.Provider$Service> serviceIterator;
descriptor: Ljava/util/Iterator;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Iterator<Ljava/security/Provider$Service;>;
private static int warnCount;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final int I_PUB;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int I_PRIV;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int I_PRIV_SR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int I_PUB_PARAM;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int I_PRIV_PARAM_SR;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int S_PARAM;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: bipush 10
putstatic java.security.Signature$Delegate.warnCount:I
1: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.security.SignatureSpi, java.lang.String);
descriptor: (Ljava/security/SignatureSpi;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokespecial java.security.Signature.<init>:(Ljava/lang/String;)V
1: aload 0
aload 1
putfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
2: aload 0
aconst_null
putfield java.security.Signature$Delegate.lock:Ljava/lang/Object;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/security/Signature$Delegate;
0 4 1 sigSpi Ljava/security/SignatureSpi;
0 4 2 algorithm Ljava/lang/String;
MethodParameters:
Name Flags
sigSpi
algorithm
void <init>(java.security.Provider$Service, java.util.Iterator<java.security.Provider$Service>, java.lang.String);
descriptor: (Ljava/security/Provider$Service;Ljava/util/Iterator;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 3
invokespecial java.security.Signature.<init>:(Ljava/lang/String;)V
1: aload 0
aload 1
putfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
2: aload 0
aload 2
putfield java.security.Signature$Delegate.serviceIterator:Ljava/util/Iterator;
3: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield java.security.Signature$Delegate.lock:Ljava/lang/Object;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/security/Signature$Delegate;
0 5 1 service Ljava/security/Provider$Service;
0 5 2 iterator Ljava/util/Iterator<Ljava/security/Provider$Service;>;
0 5 3 algorithm Ljava/lang/String;
Signature: (Ljava/security/Provider$Service;Ljava/util/Iterator<Ljava/security/Provider$Service;>;Ljava/lang/String;)V
MethodParameters:
Name Flags
service
iterator
algorithm
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
instanceof java.lang.Cloneable
ifeq 7
2: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
invokevirtual java.security.SignatureSpi.clone:()Ljava/lang/Object;
checkcast java.security.SignatureSpi
astore 1
start local 1 3: new java.security.Signature$Delegate
dup
aload 1
aload 0
getfield java.security.Signature.algorithm:Ljava/lang/String;
invokespecial java.security.Signature$Delegate.<init>:(Ljava/security/SignatureSpi;Ljava/lang/String;)V
4: astore 2
start local 2 5: aload 2
aload 0
getfield java.security.Signature.provider:Ljava/security/Provider;
putfield java.security.Signature.provider:Ljava/security/Provider;
6: aload 2
areturn
end local 2 end local 1 7: StackMap locals:
StackMap stack:
new java.lang.CloneNotSupportedException
dup
invokespecial java.lang.CloneNotSupportedException.<init>:()V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/security/Signature$Delegate;
3 7 1 sigSpiClone Ljava/security/SignatureSpi;
5 7 2 that Ljava/security/Signature;
Exceptions:
throws java.lang.CloneNotSupportedException
private static java.security.SignatureSpi newInstance(java.security.Provider$Service);
descriptor: (Ljava/security/Provider$Service;)Ljava/security/SignatureSpi;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.security.Provider$Service.getType:()Ljava/lang/String;
ldc "Cipher"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
1: ldc "RSA/ECB/PKCS1Padding"
aload 0
invokevirtual java.security.Provider$Service.getProvider:()Ljava/security/Provider;
invokestatic javax.crypto.Cipher.getInstance:(Ljava/lang/String;Ljava/security/Provider;)Ljavax/crypto/Cipher;
astore 1
start local 1 2: new java.security.Signature$CipherAdapter
dup
aload 1
invokespecial java.security.Signature$CipherAdapter.<init>:(Ljavax/crypto/Cipher;)V
3: areturn
end local 1 4: StackMap locals:
StackMap stack: javax.crypto.NoSuchPaddingException
astore 1
start local 1 5: new java.security.NoSuchAlgorithmException
dup
aload 1
invokespecial java.security.NoSuchAlgorithmException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 6: StackMap locals:
StackMap stack:
aload 0
aconst_null
invokevirtual java.security.Provider$Service.newInstance:(Ljava/lang/Object;)Ljava/lang/Object;
astore 1
start local 1 7: aload 1
instanceof java.security.SignatureSpi
ifne 11
8: new java.security.NoSuchAlgorithmException
dup
9: new java.lang.StringBuilder
dup
ldc "Not a SignatureSpi: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokespecial java.security.NoSuchAlgorithmException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: java.lang.Object
StackMap stack:
aload 1
checkcast java.security.SignatureSpi
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 s Ljava/security/Provider$Service;
2 4 1 c Ljavax/crypto/Cipher;
5 6 1 e Ljavax/crypto/NoSuchPaddingException;
7 12 1 o Ljava/lang/Object;
Exception table:
from to target type
1 3 4 Class javax.crypto.NoSuchPaddingException
Exceptions:
throws java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
s
void chooseFirstProvider();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield java.security.Signature$Delegate.lock:Ljava/lang/Object;
dup
astore 1
monitorenter
3: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 6
4: aload 1
monitorexit
5: return
6: StackMap locals: java.lang.Object
StackMap stack:
getstatic java.security.Signature.debug:Lsun/security/util/Debug;
ifnull 13
7: getstatic java.security.Signature$Delegate.warnCount:I
iconst_1
isub
dup
putstatic java.security.Signature$Delegate.warnCount:I
istore 2
start local 2 8: iload 2
iflt 13
9: getstatic java.security.Signature.debug:Lsun/security/util/Debug;
ldc "Signature.init() not first method called, disabling delayed provider selection"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
10: iload 2
ifne 12
11: getstatic java.security.Signature.debug:Lsun/security/util/Debug;
ldc "Further warnings of this type will be suppressed"
invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
12: StackMap locals: int
StackMap stack:
new java.lang.Exception
dup
ldc "Debug call trace"
invokespecial java.lang.Exception.<init>:(Ljava/lang/String;)V
invokevirtual java.lang.Exception.printStackTrace:()V
end local 2 13: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 14: goto 30
15: StackMap locals: java.lang.Exception
StackMap stack:
aload 0
getfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
ifnull 19
16: aload 0
getfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
astore 3
start local 3 17: aload 0
aconst_null
putfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
18: goto 20
end local 3 19: StackMap locals:
StackMap stack:
aload 0
getfield java.security.Signature$Delegate.serviceIterator:Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.Provider$Service
astore 3
start local 3 20: StackMap locals: java.security.Provider$Service
StackMap stack:
aload 3
invokestatic java.security.Signature.isSpi:(Ljava/security/Provider$Service;)Z
ifne 22
21: goto 30
22: StackMap locals:
StackMap stack:
aload 0
aload 3
invokestatic java.security.Signature$Delegate.newInstance:(Ljava/security/Provider$Service;)Ljava/security/SignatureSpi;
putfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
23: aload 0
aload 3
invokevirtual java.security.Provider$Service.getProvider:()Ljava/security/Provider;
putfield java.security.Signature$Delegate.provider:Ljava/security/Provider;
24: aload 0
aconst_null
putfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
25: aload 0
aconst_null
putfield java.security.Signature$Delegate.serviceIterator:Ljava/util/Iterator;
26: aload 1
monitorexit
27: return
28: StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
astore 4
start local 4 29: aload 4
astore 2
end local 4 end local 3 30: StackMap locals:
StackMap stack:
aload 0
getfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
ifnonnull 15
aload 0
getfield java.security.Signature$Delegate.serviceIterator:Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
31: new java.security.ProviderException
dup
32: ldc "Could not construct SignatureSpi instance"
33: invokespecial java.security.ProviderException.<init>:(Ljava/lang/String;)V
astore 3
start local 3 34: aload 2
ifnull 36
35: aload 3
aload 2
invokevirtual java.security.ProviderException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
36: StackMap locals: java.security.ProviderException
StackMap stack:
aload 3
athrow
end local 3 end local 2 37: StackMap locals: java.security.Signature$Delegate java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
38: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 39 0 this Ljava/security/Signature$Delegate;
8 13 2 w I
14 37 2 lastException Ljava/lang/Exception;
17 19 3 s Ljava/security/Provider$Service;
20 30 3 s Ljava/security/Provider$Service;
29 30 4 e Ljava/security/NoSuchAlgorithmException;
34 37 3 e Ljava/security/ProviderException;
Exception table:
from to target type
22 26 28 Class java.security.NoSuchAlgorithmException
3 5 37 any
6 27 37 any
28 38 37 any
private void chooseProvider(int, java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom);
descriptor: (ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield java.security.Signature$Delegate.lock:Ljava/lang/Object;
dup
astore 5
monitorenter
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 4
2: aload 5
monitorexit
3: return
4: StackMap locals: java.lang.Object
StackMap stack:
aconst_null
astore 6
start local 6 5: goto 26
6: StackMap locals: java.lang.Exception
StackMap stack:
aload 0
getfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
ifnull 10
7: aload 0
getfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
astore 7
start local 7 8: aload 0
aconst_null
putfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
9: goto 11
end local 7 10: StackMap locals:
StackMap stack:
aload 0
getfield java.security.Signature$Delegate.serviceIterator:Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.security.Provider$Service
astore 7
start local 7 11: StackMap locals: java.security.Provider$Service
StackMap stack:
aload 2
ifnull 13
aload 7
aload 2
invokevirtual java.security.Provider$Service.supportsParameter:(Ljava/lang/Object;)Z
ifne 13
12: goto 26
13: StackMap locals:
StackMap stack:
aload 7
invokestatic java.security.Signature.isSpi:(Ljava/security/Provider$Service;)Z
ifne 15
14: goto 26
15: StackMap locals:
StackMap stack:
aload 7
invokestatic java.security.Signature$Delegate.newInstance:(Ljava/security/Provider$Service;)Ljava/security/SignatureSpi;
astore 8
start local 8 16: aload 0
aload 8
iload 1
aload 2
aload 3
aload 4
invokevirtual java.security.Signature$Delegate.tryOperation:(Ljava/security/SignatureSpi;ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
17: aload 0
aload 7
invokevirtual java.security.Provider$Service.getProvider:()Ljava/security/Provider;
putfield java.security.Signature$Delegate.provider:Ljava/security/Provider;
18: aload 0
aload 8
putfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
19: aload 0
aconst_null
putfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
20: aload 0
aconst_null
putfield java.security.Signature$Delegate.serviceIterator:Ljava/util/Iterator;
21: aload 5
monitorexit
22: return
end local 8 23: StackMap locals:
StackMap stack: java.lang.Exception
astore 8
start local 8 24: aload 6
ifnonnull 26
25: aload 8
astore 6
end local 8 end local 7 26: StackMap locals:
StackMap stack:
aload 0
getfield java.security.Signature$Delegate.firstService:Ljava/security/Provider$Service;
ifnonnull 6
aload 0
getfield java.security.Signature$Delegate.serviceIterator:Ljava/util/Iterator;
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
27: aload 6
instanceof java.security.InvalidKeyException
ifeq 29
28: aload 6
checkcast java.security.InvalidKeyException
athrow
29: StackMap locals:
StackMap stack:
aload 6
instanceof java.lang.RuntimeException
ifeq 31
30: aload 6
checkcast java.lang.RuntimeException
athrow
31: StackMap locals:
StackMap stack:
aload 6
instanceof java.security.InvalidAlgorithmParameterException
ifeq 33
32: aload 6
checkcast java.security.InvalidAlgorithmParameterException
athrow
33: StackMap locals:
StackMap stack:
aload 2
ifnull 34
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
goto 35
StackMap locals:
StackMap stack:
34: ldc "(null)"
StackMap locals:
StackMap stack: java.lang.String
35: astore 7
start local 7 36: new java.security.InvalidKeyException
dup
37: new java.lang.StringBuilder
dup
ldc "No installed provider supports this key: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
38: aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
39: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
40: aload 6
41: invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 7 end local 6 42: StackMap locals: java.security.Signature$Delegate int java.security.Key java.security.spec.AlgorithmParameterSpec java.security.SecureRandom java.lang.Object
StackMap stack: java.lang.Throwable
aload 5
monitorexit
43: athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Ljava/security/Signature$Delegate;
0 44 1 type I
0 44 2 key Ljava/security/Key;
0 44 3 params Ljava/security/spec/AlgorithmParameterSpec;
0 44 4 random Ljava/security/SecureRandom;
5 42 6 lastException Ljava/lang/Exception;
8 10 7 s Ljava/security/Provider$Service;
11 26 7 s Ljava/security/Provider$Service;
16 23 8 spi Ljava/security/SignatureSpi;
24 26 8 e Ljava/lang/Exception;
36 42 7 k Ljava/lang/String;
Exception table:
from to target type
15 21 23 Class java.lang.Exception
1 3 42 any
4 22 42 any
23 43 42 any
Exceptions:
throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
type
key
params
random
private void tryOperation(java.security.SignatureSpi, int, java.security.Key, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom);
descriptor: (Ljava/security/SignatureSpi;ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 2
tableswitch { // 1 - 6
1: 1
2: 5
3: 7
4: 3
5: 9
6: 11
default: 13
}
1: StackMap locals:
StackMap stack:
aload 1
aload 3
checkcast java.security.PublicKey
invokevirtual java.security.SignatureSpi.engineInitVerify:(Ljava/security/PublicKey;)V
2: goto 14
3: StackMap locals:
StackMap stack:
aload 1
aload 3
checkcast java.security.PublicKey
aload 4
invokevirtual java.security.SignatureSpi.engineInitVerify:(Ljava/security/PublicKey;Ljava/security/spec/AlgorithmParameterSpec;)V
4: goto 14
5: StackMap locals:
StackMap stack:
aload 1
aload 3
checkcast java.security.PrivateKey
invokevirtual java.security.SignatureSpi.engineInitSign:(Ljava/security/PrivateKey;)V
6: goto 14
7: StackMap locals:
StackMap stack:
aload 1
aload 3
checkcast java.security.PrivateKey
aload 5
invokevirtual java.security.SignatureSpi.engineInitSign:(Ljava/security/PrivateKey;Ljava/security/SecureRandom;)V
8: goto 14
9: StackMap locals:
StackMap stack:
aload 1
aload 3
checkcast java.security.PrivateKey
aload 4
aload 5
invokevirtual java.security.SignatureSpi.engineInitSign:(Ljava/security/PrivateKey;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
10: goto 14
11: StackMap locals:
StackMap stack:
aload 1
aload 4
invokevirtual java.security.SignatureSpi.engineSetParameter:(Ljava/security/spec/AlgorithmParameterSpec;)V
12: goto 14
13: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Internal error: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
14: 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 15 0 this Ljava/security/Signature$Delegate;
0 15 1 spi Ljava/security/SignatureSpi;
0 15 2 type I
0 15 3 key Ljava/security/Key;
0 15 4 params Ljava/security/spec/AlgorithmParameterSpec;
0 15 5 random Ljava/security/SecureRandom;
Exceptions:
throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
spi
type
key
params
random
protected void engineInitVerify(java.security.PublicKey);
descriptor: (Ljava/security/PublicKey;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 3
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
invokevirtual java.security.SignatureSpi.engineInitVerify:(Ljava/security/PublicKey;)V
2: goto 7
3: StackMap locals:
StackMap stack:
aload 0
iconst_1
aload 1
aconst_null
aconst_null
invokevirtual java.security.Signature$Delegate.chooseProvider:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
4: goto 7
StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
5: astore 2
start local 2 6: new java.security.InvalidKeyException
dup
aload 2
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/security/Signature$Delegate;
0 8 1 publicKey Ljava/security/PublicKey;
6 7 2 iape Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
3 4 5 Class java.security.InvalidAlgorithmParameterException
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
publicKey
void engineInitVerify(java.security.PublicKey, java.security.spec.AlgorithmParameterSpec);
descriptor: (Ljava/security/PublicKey;Ljava/security/spec/AlgorithmParameterSpec;)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 3
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
aload 2
invokevirtual java.security.SignatureSpi.engineInitVerify:(Ljava/security/PublicKey;Ljava/security/spec/AlgorithmParameterSpec;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
iconst_4
aload 1
aload 2
aconst_null
invokevirtual java.security.Signature$Delegate.chooseProvider:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/security/Signature$Delegate;
0 5 1 publicKey Ljava/security/PublicKey;
0 5 2 params Ljava/security/spec/AlgorithmParameterSpec;
Exceptions:
throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
publicKey
params
protected void engineInitSign(java.security.PrivateKey);
descriptor: (Ljava/security/PrivateKey;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 3
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
invokevirtual java.security.SignatureSpi.engineInitSign:(Ljava/security/PrivateKey;)V
2: goto 7
3: StackMap locals:
StackMap stack:
aload 0
iconst_2
aload 1
aconst_null
aconst_null
invokevirtual java.security.Signature$Delegate.chooseProvider:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
4: goto 7
StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
5: astore 2
start local 2 6: new java.security.InvalidKeyException
dup
aload 2
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/security/Signature$Delegate;
0 8 1 privateKey Ljava/security/PrivateKey;
6 7 2 iape Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
3 4 5 Class java.security.InvalidAlgorithmParameterException
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
privateKey
protected void engineInitSign(java.security.PrivateKey, java.security.SecureRandom);
descriptor: (Ljava/security/PrivateKey;Ljava/security/SecureRandom;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 3
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
aload 2
invokevirtual java.security.SignatureSpi.engineInitSign:(Ljava/security/PrivateKey;Ljava/security/SecureRandom;)V
2: goto 7
3: StackMap locals:
StackMap stack:
aload 0
iconst_3
aload 1
aconst_null
aload 2
invokevirtual java.security.Signature$Delegate.chooseProvider:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
4: goto 7
StackMap locals:
StackMap stack: java.security.InvalidAlgorithmParameterException
5: astore 3
start local 3 6: new java.security.InvalidKeyException
dup
aload 3
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/security/Signature$Delegate;
0 8 1 privateKey Ljava/security/PrivateKey;
0 8 2 sr Ljava/security/SecureRandom;
6 7 3 iape Ljava/security/InvalidAlgorithmParameterException;
Exception table:
from to target type
3 4 5 Class java.security.InvalidAlgorithmParameterException
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
privateKey
sr
void engineInitSign(java.security.PrivateKey, java.security.spec.AlgorithmParameterSpec, java.security.SecureRandom);
descriptor: (Ljava/security/PrivateKey;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 3
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
aload 2
aload 3
invokevirtual java.security.SignatureSpi.engineInitSign:(Ljava/security/PrivateKey;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
iconst_5
aload 1
aload 2
aload 3
invokevirtual java.security.Signature$Delegate.chooseProvider:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
4: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/security/Signature$Delegate;
0 5 1 privateKey Ljava/security/PrivateKey;
0 5 2 params Ljava/security/spec/AlgorithmParameterSpec;
0 5 3 sr Ljava/security/SecureRandom;
Exceptions:
throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
privateKey
params
sr
protected void engineUpdate(byte);
descriptor: (B)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
iload 1
invokevirtual java.security.SignatureSpi.engineUpdate:(B)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/security/Signature$Delegate;
0 3 1 b B
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
b
protected void engineUpdate(byte[], int, int);
descriptor: ([BII)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
iload 2
iload 3
invokevirtual java.security.SignatureSpi.engineUpdate:([BII)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/security/Signature$Delegate;
0 3 1 b [B
0 3 2 off I
0 3 3 len I
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
b
off
len
protected void engineUpdate(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
invokevirtual java.security.SignatureSpi.engineUpdate:(Ljava/nio/ByteBuffer;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/security/Signature$Delegate;
0 3 1 data Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
data
protected byte[] engineSign();
descriptor: ()[B
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
invokevirtual java.security.SignatureSpi.engineSign:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/security/Signature$Delegate;
Exceptions:
throws java.security.SignatureException
protected int engineSign(byte[], int, int);
descriptor: ([BII)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
iload 2
iload 3
invokevirtual java.security.SignatureSpi.engineSign:([BII)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/security/Signature$Delegate;
0 2 1 outbuf [B
0 2 2 offset I
0 2 3 len I
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
outbuf
offset
len
protected boolean engineVerify(byte[]);
descriptor: ([B)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
invokevirtual java.security.SignatureSpi.engineVerify:([B)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/security/Signature$Delegate;
0 2 1 sigBytes [B
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
sigBytes
protected boolean engineVerify(byte[], int, int);
descriptor: ([BII)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
iload 2
iload 3
invokevirtual java.security.SignatureSpi.engineVerify:([BII)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/security/Signature$Delegate;
0 2 1 sigBytes [B
0 2 2 offset I
0 2 3 length I
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
sigBytes
offset
length
protected void engineSetParameter(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
aload 2
invokevirtual java.security.SignatureSpi.engineSetParameter:(Ljava/lang/String;Ljava/lang/Object;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/security/Signature$Delegate;
0 3 1 param Ljava/lang/String;
0 3 2 value Ljava/lang/Object;
Exceptions:
throws java.security.InvalidParameterException
MethodParameters:
Name Flags
param
value
protected void engineSetParameter(java.security.spec.AlgorithmParameterSpec);
descriptor: (Ljava/security/spec/AlgorithmParameterSpec;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
ifnull 3
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
invokevirtual java.security.SignatureSpi.engineSetParameter:(Ljava/security/spec/AlgorithmParameterSpec;)V
2: goto 7
3: StackMap locals:
StackMap stack:
aload 0
bipush 6
aconst_null
aload 1
aconst_null
invokevirtual java.security.Signature$Delegate.chooseProvider:(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;Ljava/security/SecureRandom;)V
4: goto 7
StackMap locals:
StackMap stack: java.security.InvalidKeyException
5: astore 2
start local 2 6: new java.security.InvalidAlgorithmParameterException
dup
aload 2
invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/security/Signature$Delegate;
0 8 1 params Ljava/security/spec/AlgorithmParameterSpec;
6 7 2 ike Ljava/security/InvalidKeyException;
Exception table:
from to target type
3 4 5 Class java.security.InvalidKeyException
Exceptions:
throws java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
params
protected java.lang.Object engineGetParameter(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
aload 1
invokevirtual java.security.SignatureSpi.engineGetParameter:(Ljava/lang/String;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/security/Signature$Delegate;
0 2 1 param Ljava/lang/String;
Exceptions:
throws java.security.InvalidParameterException
MethodParameters:
Name Flags
param
protected java.security.AlgorithmParameters engineGetParameters();
descriptor: ()Ljava/security/AlgorithmParameters;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.security.Signature$Delegate.chooseFirstProvider:()V
1: aload 0
getfield java.security.Signature$Delegate.sigSpi:Ljava/security/SignatureSpi;
invokevirtual java.security.SignatureSpi.engineGetParameters:()Ljava/security/AlgorithmParameters;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/security/Signature$Delegate;
}
SourceFile: "Signature.java"
NestHost: java.security.Signature
InnerClasses:
public Service = java.security.Provider$Service of java.security.Provider
private CipherAdapter = java.security.Signature$CipherAdapter of java.security.Signature
private Delegate = java.security.Signature$Delegate of java.security.Signature