abstract class sun.security.ec.ECDSASignature extends java.security.SignatureSpi
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: sun.security.ec.ECDSASignature
super_class: java.security.SignatureSpi
{
private final java.security.MessageDigest messageDigest;
descriptor: Ljava/security/MessageDigest;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.security.SecureRandom random;
descriptor: Ljava/security/SecureRandom;
flags: (0x0002) ACC_PRIVATE
private boolean needsReset;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.security.interfaces.ECPrivateKey privateKey;
descriptor: Ljava/security/interfaces/ECPrivateKey;
flags: (0x0002) ACC_PRIVATE
private java.security.interfaces.ECPublicKey publicKey;
descriptor: Ljava/security/interfaces/ECPublicKey;
flags: (0x0002) ACC_PRIVATE
private java.security.spec.ECParameterSpec sigParams;
descriptor: Ljava/security/spec/ECParameterSpec;
flags: (0x0002) ACC_PRIVATE
private final boolean p1363Format;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokespecial sun.security.ec.ECDSASignature.<init>:(Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/ec/ECDSASignature;
void <init>(boolean);
descriptor: (Z)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.security.SignatureSpi.<init>:()V
1: aload 0
aconst_null
putfield sun.security.ec.ECDSASignature.sigParams:Ljava/security/spec/ECParameterSpec;
2: aload 0
aconst_null
putfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
3: aload 0
iload 1
putfield sun.security.ec.ECDSASignature.p1363Format:Z
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/ec/ECDSASignature;
0 5 1 p1363Format Z
MethodParameters:
Name Flags
p1363Format
void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokespecial sun.security.ec.ECDSASignature.<init>:(Ljava/lang/String;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/ec/ECDSASignature;
0 2 1 digestName Ljava/lang/String;
MethodParameters:
Name Flags
digestName
void <init>(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.security.SignatureSpi.<init>:()V
1: aload 0
aconst_null
putfield sun.security.ec.ECDSASignature.sigParams:Ljava/security/spec/ECParameterSpec;
2: aload 0
aload 1
invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
putfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
3: goto 6
StackMap locals: sun.security.ec.ECDSASignature java.lang.String int
StackMap stack: java.security.NoSuchAlgorithmException
4: astore 3
start local 3 5: new java.security.ProviderException
dup
aload 3
invokespecial java.security.ProviderException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 6: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.security.ec.ECDSASignature.needsReset:Z
7: aload 0
iload 2
putfield sun.security.ec.ECDSASignature.p1363Format:Z
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/ec/ECDSASignature;
0 9 1 digestName Ljava/lang/String;
0 9 2 p1363Format Z
5 6 3 e Ljava/security/NoSuchAlgorithmException;
Exception table:
from to target type
2 3 4 Class java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
digestName
p1363Format
protected void engineInitVerify(java.security.PublicKey);
descriptor: (Ljava/security/PublicKey;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic sun.security.ec.ECKeyFactory.toECKey:(Ljava/security/Key;)Ljava/security/interfaces/ECKey;
checkcast java.security.interfaces.ECPublicKey
astore 2
start local 2 1: aload 0
getfield sun.security.ec.ECDSASignature.sigParams:Ljava/security/spec/ECParameterSpec;
aload 2
invokeinterface java.security.interfaces.ECPublicKey.getParams:()Ljava/security/spec/ECParameterSpec;
invokestatic sun.security.ec.ECDSASignature.isCompatible:(Ljava/security/spec/ECParameterSpec;Ljava/security/spec/ECParameterSpec;)Z
ifne 3
2: new java.security.InvalidKeyException
dup
ldc "Key params does not match signature params"
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.security.interfaces.ECPublicKey
StackMap stack:
aload 0
aload 2
putfield sun.security.ec.ECDSASignature.publicKey:Ljava/security/interfaces/ECPublicKey;
4: aload 0
aconst_null
putfield sun.security.ec.ECDSASignature.privateKey:Ljava/security/interfaces/ECPrivateKey;
5: aload 0
invokevirtual sun.security.ec.ECDSASignature.resetDigest:()V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/ec/ECDSASignature;
0 7 1 publicKey Ljava/security/PublicKey;
1 7 2 key Ljava/security/interfaces/ECPublicKey;
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
publicKey
protected void engineInitSign(java.security.PrivateKey);
descriptor: (Ljava/security/PrivateKey;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokevirtual sun.security.ec.ECDSASignature.engineInitSign:(Ljava/security/PrivateKey;Ljava/security/SecureRandom;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/ec/ECDSASignature;
0 2 1 privateKey Ljava/security/PrivateKey;
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=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic sun.security.ec.ECKeyFactory.toECKey:(Ljava/security/Key;)Ljava/security/interfaces/ECKey;
checkcast java.security.interfaces.ECPrivateKey
astore 3
start local 3 1: aload 0
getfield sun.security.ec.ECDSASignature.sigParams:Ljava/security/spec/ECParameterSpec;
aload 3
invokeinterface java.security.interfaces.ECPrivateKey.getParams:()Ljava/security/spec/ECParameterSpec;
invokestatic sun.security.ec.ECDSASignature.isCompatible:(Ljava/security/spec/ECParameterSpec;Ljava/security/spec/ECParameterSpec;)Z
ifne 3
2: new java.security.InvalidKeyException
dup
ldc "Key params does not match signature params"
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.security.interfaces.ECPrivateKey
StackMap stack:
aload 0
aload 3
putfield sun.security.ec.ECDSASignature.privateKey:Ljava/security/interfaces/ECPrivateKey;
4: aload 0
aconst_null
putfield sun.security.ec.ECDSASignature.publicKey:Ljava/security/interfaces/ECPublicKey;
5: aload 0
aload 2
putfield sun.security.ec.ECDSASignature.random:Ljava/security/SecureRandom;
6: aload 0
invokevirtual sun.security.ec.ECDSASignature.resetDigest:()V
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/security/ec/ECDSASignature;
0 8 1 privateKey Ljava/security/PrivateKey;
0 8 2 random Ljava/security/SecureRandom;
1 8 3 key Ljava/security/interfaces/ECPrivateKey;
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
privateKey
random
protected void resetDigest();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ECDSASignature.needsReset:Z
ifeq 4
1: aload 0
getfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
ifnull 3
2: aload 0
getfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
invokevirtual java.security.MessageDigest.reset:()V
3: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield sun.security.ec.ECDSASignature.needsReset:Z
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/ec/ECDSASignature;
protected byte[] getDigestValue();
descriptor: ()[B
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield sun.security.ec.ECDSASignature.needsReset:Z
1: aload 0
getfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
invokevirtual java.security.MessageDigest.digest:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/ec/ECDSASignature;
Exceptions:
throws java.security.SignatureException
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
getfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
iload 1
invokevirtual java.security.MessageDigest.update:(B)V
1: aload 0
iconst_1
putfield sun.security.ec.ECDSASignature.needsReset:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ec/ECDSASignature;
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
getfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
aload 1
iload 2
iload 3
invokevirtual java.security.MessageDigest.update:([BII)V
1: aload 0
iconst_1
putfield sun.security.ec.ECDSASignature.needsReset:Z
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ec/ECDSASignature;
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=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
istore 2
start local 2 1: iload 2
ifgt 3
2: return
3: StackMap locals: int
StackMap stack:
aload 0
getfield sun.security.ec.ECDSASignature.messageDigest:Ljava/security/MessageDigest;
aload 1
invokevirtual java.security.MessageDigest.update:(Ljava/nio/ByteBuffer;)V
4: aload 0
iconst_1
putfield sun.security.ec.ECDSASignature.needsReset:Z
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/ec/ECDSASignature;
0 6 1 byteBuffer Ljava/nio/ByteBuffer;
1 6 2 len I
MethodParameters:
Name Flags
byteBuffer
private static boolean isCompatible(java.security.spec.ECParameterSpec, java.security.spec.ECParameterSpec);
descriptor: (Ljava/security/spec/ECParameterSpec;Ljava/security/spec/ECParameterSpec;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokestatic sun.security.util.ECUtil.equals:(Ljava/security/spec/ECParameterSpec;Ljava/security/spec/ECParameterSpec;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 sigParams Ljava/security/spec/ECParameterSpec;
0 3 1 keyParams Ljava/security/spec/ECParameterSpec;
MethodParameters:
Name Flags
sigParams
keyParams
private byte[] signDigestImpl(sun.security.ec.ECDSAOperations, int, byte[], java.security.interfaces.ECPrivateKey, java.security.SecureRandom);
descriptor: (Lsun/security/ec/ECDSAOperations;I[BLjava/security/interfaces/ECPrivateKey;Ljava/security/SecureRandom;)[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=11, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iload 2
bipush 7
iadd
bipush 8
idiv
newarray 8
astore 6
start local 6 1: aload 4
instanceof sun.security.ec.ECPrivateKeyImpl
ifeq 3
2: aload 4
checkcast sun.security.ec.ECPrivateKeyImpl
invokevirtual sun.security.ec.ECPrivateKeyImpl.getArrayS:()[B
goto 4
3: StackMap locals: byte[]
StackMap stack:
aload 4
invokeinterface java.security.interfaces.ECPrivateKey.getS:()Ljava/math/BigInteger;
aload 4
invokeinterface java.security.interfaces.ECPrivateKey.getParams:()Ljava/security/spec/ECParameterSpec;
invokestatic sun.security.util.ECUtil.sArray:(Ljava/math/BigInteger;Ljava/security/spec/ECParameterSpec;)[B
4: StackMap locals:
StackMap stack: byte[]
astore 7
start local 7 5: sipush 128
istore 8
start local 8 6: iconst_0
istore 9
start local 9 7: goto 14
8: StackMap locals: byte[] int int
StackMap stack:
aload 5
aload 6
invokevirtual java.security.SecureRandom.nextBytes:([B)V
9: new sun.security.ec.ECDSAOperations$Seed
dup
aload 6
invokespecial sun.security.ec.ECDSAOperations$Seed.<init>:([B)V
astore 10
start local 10 10: aload 1
aload 7
aload 3
aload 10
invokevirtual sun.security.ec.ECDSAOperations.signDigest:([B[BLsun/security/ec/ECDSAOperations$Seed;)[B
11: areturn
12: StackMap locals: sun.security.ec.ECDSASignature sun.security.ec.ECDSAOperations int byte[] java.security.interfaces.ECPrivateKey java.security.SecureRandom byte[] byte[] int int sun.security.ec.ECDSAOperations$Seed
StackMap stack: sun.security.ec.ECOperations$IntermediateValueException
pop
end local 10 13: iinc 9 1
StackMap locals:
StackMap stack:
14: iload 9
iload 8
if_icmplt 8
end local 9 15: new java.security.SignatureException
dup
new java.lang.StringBuilder
dup
ldc "Unable to produce signature after "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
16: iload 8
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " attempts"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
17: invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
end local 8 end local 7 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 18 0 this Lsun/security/ec/ECDSASignature;
0 18 1 ops Lsun/security/ec/ECDSAOperations;
0 18 2 seedBits I
0 18 3 digest [B
0 18 4 priv Ljava/security/interfaces/ECPrivateKey;
0 18 5 random Ljava/security/SecureRandom;
1 18 6 seedBytes [B
5 18 7 s [B
6 18 8 numAttempts I
7 15 9 i I
10 13 10 seed Lsun/security/ec/ECDSAOperations$Seed;
Exception table:
from to target type
10 11 12 Class sun.security.ec.ECOperations$IntermediateValueException
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
ops
seedBits
digest
priv
random
protected byte[] engineSign();
descriptor: ()[B
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ECDSASignature.random:Ljava/security/SecureRandom;
ifnonnull 2
1: aload 0
invokestatic sun.security.jca.JCAUtil.getSecureRandom:()Ljava/security/SecureRandom;
putfield sun.security.ec.ECDSASignature.random:Ljava/security/SecureRandom;
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.security.ec.ECDSASignature.getDigestValue:()[B
astore 1
start local 1 3: aload 0
getfield sun.security.ec.ECDSASignature.privateKey:Ljava/security/interfaces/ECPrivateKey;
invokeinterface java.security.interfaces.ECPrivateKey.getParams:()Ljava/security/spec/ECParameterSpec;
astore 2
start local 2 4: aload 2
invokevirtual java.security.spec.ECParameterSpec.getOrder:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.bitLength:()I
bipush 64
iadd
istore 3
start local 3 5: aload 2
invokestatic sun.security.ec.ECDSAOperations.forParameters:(Ljava/security/spec/ECParameterSpec;)Ljava/util/Optional;
6: astore 4
start local 4 7: aload 4
invokevirtual java.util.Optional.isEmpty:()Z
ifeq 11
8: new java.security.SignatureException
dup
new java.lang.StringBuilder
dup
ldc "Curve not supported: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: aload 2
invokevirtual java.lang.Object.toString:()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.SignatureException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: sun.security.ec.ECDSASignature byte[] java.security.spec.ECParameterSpec int java.util.Optional
StackMap stack:
aload 0
aload 4
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast sun.security.ec.ECDSAOperations
iload 3
aload 1
aload 0
getfield sun.security.ec.ECDSASignature.privateKey:Ljava/security/interfaces/ECPrivateKey;
12: aload 0
getfield sun.security.ec.ECDSASignature.random:Ljava/security/SecureRandom;
13: invokevirtual sun.security.ec.ECDSASignature.signDigestImpl:(Lsun/security/ec/ECDSAOperations;I[BLjava/security/interfaces/ECPrivateKey;Ljava/security/SecureRandom;)[B
astore 5
start local 5 14: aload 0
getfield sun.security.ec.ECDSASignature.p1363Format:Z
ifeq 16
15: aload 5
areturn
16: StackMap locals: byte[]
StackMap stack:
aload 5
invokestatic sun.security.util.ECUtil.encodeSignature:([B)[B
areturn
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 17 0 this Lsun/security/ec/ECDSASignature;
3 17 1 digest [B
4 17 2 params Ljava/security/spec/ECParameterSpec;
5 17 3 seedBits I
7 17 4 opsOpt Ljava/util/Optional<Lsun/security/ec/ECDSAOperations;>;
14 17 5 sig [B
Exceptions:
throws java.security.SignatureException
protected boolean engineVerify(byte[]);
descriptor: ([B)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.ec.ECDSASignature.p1363Format:Z
ifeq 3
1: aload 1
astore 2
start local 2 2: goto 4
end local 2 3: StackMap locals:
StackMap stack:
aload 1
invokestatic sun.security.util.ECUtil.decodeSignature:([B)[B
astore 2
start local 2 4: StackMap locals: byte[]
StackMap stack:
aload 0
invokevirtual sun.security.ec.ECDSASignature.getDigestValue:()[B
astore 3
start local 3 5: aload 0
getfield sun.security.ec.ECDSASignature.publicKey:Ljava/security/interfaces/ECPublicKey;
invokeinterface java.security.interfaces.ECPublicKey.getParams:()Ljava/security/spec/ECParameterSpec;
invokestatic sun.security.ec.ECDSAOperations.forParameters:(Ljava/security/spec/ECParameterSpec;)Ljava/util/Optional;
6: astore 4
start local 4 7: aload 4
invokevirtual java.util.Optional.isEmpty:()Z
ifeq 11
8: new java.security.SignatureException
dup
new java.lang.StringBuilder
dup
ldc "Curve not supported: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: aload 0
getfield sun.security.ec.ECDSASignature.publicKey:Ljava/security/interfaces/ECPublicKey;
invokeinterface java.security.interfaces.ECPublicKey.getParams:()Ljava/security/spec/ECParameterSpec;
invokevirtual java.lang.Object.toString:()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.SignatureException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals: byte[] java.util.Optional
StackMap stack:
aload 4
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast sun.security.ec.ECDSAOperations
aload 3
aload 2
aload 0
getfield sun.security.ec.ECDSASignature.publicKey:Ljava/security/interfaces/ECPublicKey;
invokeinterface java.security.interfaces.ECPublicKey.getW:()Ljava/security/spec/ECPoint;
invokevirtual sun.security.ec.ECDSAOperations.verifySignedDigest:([B[BLjava/security/spec/ECPoint;)Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/security/ec/ECDSASignature;
0 12 1 signature [B
2 3 2 sig [B
4 12 2 sig [B
5 12 3 digest [B
7 12 4 opsOpt Ljava/util/Optional<Lsun/security/ec/ECDSAOperations;>;
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
signature
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: new java.lang.UnsupportedOperationException
dup
ldc "setParameter() not supported"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ec/ECDSASignature;
0 1 1 param Ljava/lang/String;
0 1 2 value Ljava/lang/Object;
Exceptions:
throws java.security.InvalidParameterException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
param
value
protected void engineSetParameter(java.security.spec.AlgorithmParameterSpec);
descriptor: (Ljava/security/spec/AlgorithmParameterSpec;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
aload 1
instanceof java.security.spec.ECParameterSpec
ifne 2
1: new java.security.InvalidAlgorithmParameterException
dup
ldc "No parameter accepted"
invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ec.ECDSASignature.privateKey:Ljava/security/interfaces/ECPrivateKey;
ifnonnull 3
aload 0
getfield sun.security.ec.ECDSASignature.publicKey:Ljava/security/interfaces/ECPublicKey;
goto 4
StackMap locals:
StackMap stack:
3: aload 0
getfield sun.security.ec.ECDSASignature.privateKey:Ljava/security/interfaces/ECPrivateKey;
StackMap locals:
StackMap stack: java.security.interfaces.ECKey
4: astore 2
start local 2 5: aload 2
ifnull 9
aload 1
checkcast java.security.spec.ECParameterSpec
aload 2
invokeinterface java.security.interfaces.ECKey.getParams:()Ljava/security/spec/ECParameterSpec;
invokestatic sun.security.ec.ECDSASignature.isCompatible:(Ljava/security/spec/ECParameterSpec;Ljava/security/spec/ECParameterSpec;)Z
ifne 9
6: new java.security.InvalidAlgorithmParameterException
dup
7: ldc "Signature params does not match key params"
8: invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: java.security.interfaces.ECKey
StackMap stack:
aload 0
aload 1
checkcast java.security.spec.ECParameterSpec
putfield sun.security.ec.ECDSASignature.sigParams:Ljava/security/spec/ECParameterSpec;
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/ec/ECDSASignature;
0 11 1 params Ljava/security/spec/AlgorithmParameterSpec;
5 11 2 key Ljava/security/interfaces/ECKey;
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=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.UnsupportedOperationException
dup
ldc "getParameter() not supported"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ec/ECDSASignature;
0 1 1 param Ljava/lang/String;
Exceptions:
throws java.security.InvalidParameterException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
param
protected java.security.AlgorithmParameters engineGetParameters();
descriptor: ()Ljava/security/AlgorithmParameters;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ECDSASignature.sigParams:Ljava/security/spec/ECParameterSpec;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
ldc "EC"
invokestatic java.security.AlgorithmParameters.getInstance:(Ljava/lang/String;)Ljava/security/AlgorithmParameters;
astore 1
start local 1 3: aload 1
aload 0
getfield sun.security.ec.ECDSASignature.sigParams:Ljava/security/spec/ECParameterSpec;
invokevirtual java.security.AlgorithmParameters.init:(Ljava/security/spec/AlgorithmParameterSpec;)V
4: aload 1
5: areturn
end local 1 6: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 7: new java.security.ProviderException
dup
ldc "Error retrieving EC parameters"
aload 1
invokespecial java.security.ProviderException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/security/ec/ECDSASignature;
3 6 1 ap Ljava/security/AlgorithmParameters;
7 8 1 e Ljava/lang/Exception;
Exception table:
from to target type
2 5 6 Class java.lang.Exception
}
SourceFile: "ECDSASignature.java"
NestMembers:
sun.security.ec.ECDSASignature$Raw sun.security.ec.ECDSASignature$RawECDSA sun.security.ec.ECDSASignature$RawinP1363Format sun.security.ec.ECDSASignature$SHA1 sun.security.ec.ECDSASignature$SHA1inP1363Format sun.security.ec.ECDSASignature$SHA224 sun.security.ec.ECDSASignature$SHA224inP1363Format sun.security.ec.ECDSASignature$SHA256 sun.security.ec.ECDSASignature$SHA256inP1363Format sun.security.ec.ECDSASignature$SHA384 sun.security.ec.ECDSASignature$SHA384inP1363Format sun.security.ec.ECDSASignature$SHA3_224 sun.security.ec.ECDSASignature$SHA3_224inP1363Format sun.security.ec.ECDSASignature$SHA3_256 sun.security.ec.ECDSASignature$SHA3_256inP1363Format sun.security.ec.ECDSASignature$SHA3_384 sun.security.ec.ECDSASignature$SHA3_384inP1363Format sun.security.ec.ECDSASignature$SHA3_512 sun.security.ec.ECDSASignature$SHA3_512inP1363Format sun.security.ec.ECDSASignature$SHA512 sun.security.ec.ECDSASignature$SHA512inP1363Format
InnerClasses:
public Seed = sun.security.ec.ECDSAOperations$Seed of sun.security.ec.ECDSAOperations
public final Raw = sun.security.ec.ECDSASignature$Raw of sun.security.ec.ECDSASignature
RawECDSA = sun.security.ec.ECDSASignature$RawECDSA of sun.security.ec.ECDSASignature
public final RawinP1363Format = sun.security.ec.ECDSASignature$RawinP1363Format of sun.security.ec.ECDSASignature
public final SHA1 = sun.security.ec.ECDSASignature$SHA1 of sun.security.ec.ECDSASignature
public final SHA1inP1363Format = sun.security.ec.ECDSASignature$SHA1inP1363Format of sun.security.ec.ECDSASignature
public final SHA224 = sun.security.ec.ECDSASignature$SHA224 of sun.security.ec.ECDSASignature
public final SHA224inP1363Format = sun.security.ec.ECDSASignature$SHA224inP1363Format of sun.security.ec.ECDSASignature
public final SHA256 = sun.security.ec.ECDSASignature$SHA256 of sun.security.ec.ECDSASignature
public final SHA256inP1363Format = sun.security.ec.ECDSASignature$SHA256inP1363Format of sun.security.ec.ECDSASignature
public final SHA384 = sun.security.ec.ECDSASignature$SHA384 of sun.security.ec.ECDSASignature
public final SHA384inP1363Format = sun.security.ec.ECDSASignature$SHA384inP1363Format of sun.security.ec.ECDSASignature
public final SHA3_224 = sun.security.ec.ECDSASignature$SHA3_224 of sun.security.ec.ECDSASignature
public final SHA3_224inP1363Format = sun.security.ec.ECDSASignature$SHA3_224inP1363Format of sun.security.ec.ECDSASignature
public final SHA3_256 = sun.security.ec.ECDSASignature$SHA3_256 of sun.security.ec.ECDSASignature
public final SHA3_256inP1363Format = sun.security.ec.ECDSASignature$SHA3_256inP1363Format of sun.security.ec.ECDSASignature
public final SHA3_384 = sun.security.ec.ECDSASignature$SHA3_384 of sun.security.ec.ECDSASignature
public final SHA3_384inP1363Format = sun.security.ec.ECDSASignature$SHA3_384inP1363Format of sun.security.ec.ECDSASignature
public final SHA3_512 = sun.security.ec.ECDSASignature$SHA3_512 of sun.security.ec.ECDSASignature
public final SHA3_512inP1363Format = sun.security.ec.ECDSASignature$SHA3_512inP1363Format of sun.security.ec.ECDSASignature
public final SHA512 = sun.security.ec.ECDSASignature$SHA512 of sun.security.ec.ECDSASignature
public final SHA512inP1363Format = sun.security.ec.ECDSASignature$SHA512inP1363Format of sun.security.ec.ECDSASignature
IntermediateValueException = sun.security.ec.ECOperations$IntermediateValueException of sun.security.ec.ECOperations