public class sun.security.ec.ed.EdDSASignature extends java.security.SignatureSpi
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.security.ec.ed.EdDSASignature
super_class: java.security.SignatureSpi
{
private byte[] privateKey;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private sun.security.ec.point.AffinePoint publicKeyPoint;
descriptor: Lsun/security/ec/point/AffinePoint;
flags: (0x0002) ACC_PRIVATE
private byte[] publicKeyBytes;
descriptor: [B
flags: (0x0002) ACC_PRIVATE
private sun.security.ec.ed.EdDSAOperations ops;
descriptor: Lsun/security/ec/ed/EdDSAOperations;
flags: (0x0002) ACC_PRIVATE
private sun.security.ec.ed.EdDSAParameters lockedParams;
descriptor: Lsun/security/ec/ed/EdDSAParameters;
flags: (0x0002) ACC_PRIVATE
private sun.security.ec.ed.EdDSASignature$MessageAccumulator message;
descriptor: Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
flags: (0x0002) ACC_PRIVATE
private java.security.spec.EdDSAParameterSpec sigParams;
descriptor: Ljava/security/spec/EdDSAParameterSpec;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.security.SignatureSpi.<init>:()V
1: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.lockedParams:Lsun/security/ec/ed/EdDSAParameters;
2: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
3: aload 0
new java.security.spec.EdDSAParameterSpec
dup
iconst_0
invokespecial java.security.spec.EdDSAParameterSpec.<init>:(Z)V
putfield sun.security.ec.ed.EdDSASignature.sigParams:Ljava/security/spec/EdDSAParameterSpec;
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/ec/ed/EdDSASignature;
void <init>(java.security.spec.NamedParameterSpec);
descriptor: (Ljava/security/spec/NamedParameterSpec;)V
flags: (0x0000)
Code:
stack=4, 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.ed.EdDSASignature.lockedParams:Lsun/security/ec/ed/EdDSAParameters;
2: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
3: aload 0
new java.security.spec.EdDSAParameterSpec
dup
iconst_0
invokespecial java.security.spec.EdDSAParameterSpec.<init>:(Z)V
putfield sun.security.ec.ed.EdDSASignature.sigParams:Ljava/security/spec/EdDSAParameterSpec;
4: aload 0
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/security/ProviderException.<init>(Ljava/lang/String;)V (8)
(Ljava/lang/String;)Ljava/security/ProviderException;
aload 1
invokestatic sun.security.ec.ed.EdDSAParameters.get:(Ljava/util/function/Function;Ljava/security/spec/AlgorithmParameterSpec;)Lsun/security/ec/ed/EdDSAParameters;
putfield sun.security.ec.ed.EdDSASignature.lockedParams:Lsun/security/ec/ed/EdDSAParameters;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/ec/ed/EdDSASignature;
0 6 1 paramSpec Ljava/security/spec/NamedParameterSpec;
MethodParameters:
Name Flags
paramSpec
protected void engineInitVerify(java.security.PublicKey);
descriptor: (Ljava/security/PublicKey;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.security.interfaces.EdECPublicKey
ifne 2
1: new java.security.InvalidKeyException
dup
ldc "Unsupported key type"
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
checkcast java.security.interfaces.EdECPublicKey
astore 2
start local 2 3: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/security/InvalidKeyException.<init>(Ljava/lang/String;)V (8)
(Ljava/lang/String;)Ljava/security/InvalidKeyException;
aload 2
invokeinterface java.security.interfaces.EdECPublicKey.getParams:()Ljava/security/spec/NamedParameterSpec;
4: invokestatic sun.security.ec.ed.EdDSAParameters.get:(Ljava/util/function/Function;Ljava/security/spec/AlgorithmParameterSpec;)Lsun/security/ec/ed/EdDSAParameters;
astore 3
start local 3 5: aload 0
aload 3
invokevirtual sun.security.ec.ed.EdDSASignature.initImpl:(Lsun/security/ec/ed/EdDSAParameters;)V
6: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.privateKey:[B
7: aload 0
aload 0
getfield sun.security.ec.ed.EdDSASignature.ops:Lsun/security/ec/ed/EdDSAOperations;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/security/InvalidKeyException.<init>(Ljava/lang/String;)V (8)
(Ljava/lang/String;)Ljava/security/InvalidKeyException;
8: aload 2
invokeinterface java.security.interfaces.EdECPublicKey.getPoint:()Ljava/security/spec/EdECPoint;
9: invokevirtual sun.security.ec.ed.EdDSAOperations.decodeAffinePoint:(Ljava/util/function/Function;Ljava/security/spec/EdECPoint;)Lsun/security/ec/point/AffinePoint;
putfield sun.security.ec.ed.EdDSASignature.publicKeyPoint:Lsun/security/ec/point/AffinePoint;
10: new sun.security.ec.ed.EdDSAPublicKeyImpl
dup
aload 3
11: aload 2
invokeinterface java.security.interfaces.EdECPublicKey.getPoint:()Ljava/security/spec/EdECPoint;
12: invokespecial sun.security.ec.ed.EdDSAPublicKeyImpl.<init>:(Lsun/security/ec/ed/EdDSAParameters;Ljava/security/spec/EdECPoint;)V
astore 4
start local 4 13: aload 0
aload 4
invokevirtual sun.security.ec.ed.EdDSAPublicKeyImpl.getEncodedPoint:()[B
putfield sun.security.ec.ed.EdDSASignature.publicKeyBytes:[B
14: return
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 Lsun/security/ec/ed/EdDSASignature;
0 15 1 publicKey Ljava/security/PublicKey;
3 15 2 edKey Ljava/security/interfaces/EdECPublicKey;
5 15 3 params Lsun/security/ec/ed/EdDSAParameters;
13 15 4 pubKeyImpl Lsun/security/ec/ed/EdDSAPublicKeyImpl;
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.ed.EdDSASignature.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/ed/EdDSASignature;
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
instanceof java.security.interfaces.EdECPrivateKey
ifne 2
1: new java.security.InvalidKeyException
dup
ldc "Unsupported key type"
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
checkcast java.security.interfaces.EdECPrivateKey
astore 3
start local 3 3: aload 0
aload 3
invokeinterface java.security.interfaces.EdECPrivateKey.getParams:()Ljava/security/spec/NamedParameterSpec;
invokevirtual sun.security.ec.ed.EdDSASignature.initImpl:(Ljava/security/spec/NamedParameterSpec;)V
4: aload 0
aload 3
invokeinterface java.security.interfaces.EdECPrivateKey.getBytes:()Ljava/util/Optional;
5: invokedynamic get()Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
sun/security/ec/ed/EdDSASignature.lambda$3()Ljava/security/InvalidKeyException; (6)
()Ljava/security/InvalidKeyException;
6: invokevirtual java.util.Optional.orElseThrow:(Ljava/util/function/Supplier;)Ljava/lang/Object;
checkcast byte[]
putfield sun.security.ec.ed.EdDSASignature.privateKey:[B
7: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.publicKeyPoint:Lsun/security/ec/point/AffinePoint;
8: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.publicKeyBytes:[B
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/security/ec/ed/EdDSASignature;
0 10 1 privateKey Ljava/security/PrivateKey;
0 10 2 random Ljava/security/SecureRandom;
3 10 3 edKey Ljava/security/interfaces/EdECPrivateKey;
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
privateKey
random
private <T extends java.lang.Throwable> void checkLockedParams(java.util.function.Function<java.lang.String, T>, sun.security.ec.ed.EdDSAParameters) throws T;
descriptor: (Ljava/util/function/Function;Lsun/security/ec/ed/EdDSAParameters;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.security.ec.ed.EdDSASignature.lockedParams:Lsun/security/ec/ed/EdDSAParameters;
ifnull 4
aload 0
getfield sun.security.ec.ed.EdDSASignature.lockedParams:Lsun/security/ec/ed/EdDSAParameters;
aload 2
if_acmpeq 4
1: aload 1
new java.lang.StringBuilder
dup
ldc "Parameters must be "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: aload 0
getfield sun.security.ec.ed.EdDSASignature.lockedParams:Lsun/security/ec/ed/EdDSAParameters;
invokevirtual sun.security.ec.ed.EdDSAParameters.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Throwable
athrow
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 Lsun/security/ec/ed/EdDSASignature;
0 5 1 exception Ljava/util/function/Function<Ljava/lang/String;TT;>;
0 5 2 params Lsun/security/ec/ed/EdDSAParameters;
Exceptions:
throws java.lang.Throwable
Signature: <T:Ljava/lang/Throwable;>(Ljava/util/function/Function<Ljava/lang/String;TT;>;Lsun/security/ec/ed/EdDSAParameters;)V^TT;
MethodParameters:
Name Flags
exception
params
private void ensureMessageInit();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
ifnonnull 2
1: aload 0
invokevirtual sun.security.ec.ed.EdDSASignature.initMessage:()V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ec/ed/EdDSASignature;
Exceptions:
throws java.security.SignatureException
private void initMessage();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ed.EdDSASignature.ops:Lsun/security/ec/ed/EdDSAOperations;
ifnonnull 2
1: new java.security.SignatureException
dup
ldc "not initialized"
invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ec.ed.EdDSASignature.ops:Lsun/security/ec/ed/EdDSAOperations;
invokevirtual sun.security.ec.ed.EdDSAOperations.getParameters:()Lsun/security/ec/ed/EdDSAParameters;
astore 1
start local 1 3: aload 0
getfield sun.security.ec.ed.EdDSASignature.sigParams:Ljava/security/spec/EdDSAParameterSpec;
invokevirtual java.security.spec.EdDSAParameterSpec.isPrehash:()Z
ifeq 6
4: aload 0
new sun.security.ec.ed.EdDSASignature$DigestAccumulator
dup
aload 1
bipush 64
invokevirtual sun.security.ec.ed.EdDSAParameters.createDigester:(I)Lsun/security/ec/ed/EdDSAParameters$Digester;
invokespecial sun.security.ec.ed.EdDSASignature$DigestAccumulator.<init>:(Lsun/security/ec/ed/EdDSAParameters$Digester;)V
putfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
5: goto 7
6: StackMap locals: sun.security.ec.ed.EdDSAParameters
StackMap stack:
aload 0
new sun.security.ec.ed.EdDSASignature$MemoryAccumulator
dup
invokespecial sun.security.ec.ed.EdDSASignature$MemoryAccumulator.<init>:()V
putfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/security/ec/ed/EdDSASignature;
3 8 1 params Lsun/security/ec/ed/EdDSAParameters;
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
invokevirtual sun.security.ec.ed.EdDSASignature.ensureMessageInit:()V
1: aload 0
getfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
iload 1
invokeinterface sun.security.ec.ed.EdDSASignature$MessageAccumulator.add:(B)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ec/ed/EdDSASignature;
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 sun.security.ec.ed.EdDSASignature.ensureMessageInit:()V
1: aload 0
getfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
aload 1
iload 2
iload 3
invokeinterface sun.security.ec.ed.EdDSASignature$MessageAccumulator.add:([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 Lsun/security/ec/ed/EdDSASignature;
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 byte[] engineSign();
descriptor: ()[B
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ed.EdDSASignature.privateKey:[B
ifnonnull 2
1: new java.security.SignatureException
dup
ldc "Missing private key"
invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.security.ec.ed.EdDSASignature.ensureMessageInit:()V
3: aload 0
getfield sun.security.ec.ed.EdDSASignature.ops:Lsun/security/ec/ed/EdDSAOperations;
aload 0
getfield sun.security.ec.ed.EdDSASignature.sigParams:Ljava/security/spec/EdDSAParameterSpec;
aload 0
getfield sun.security.ec.ed.EdDSASignature.privateKey:[B
4: aload 0
getfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
invokeinterface sun.security.ec.ed.EdDSASignature$MessageAccumulator.getMessage:()[B
5: invokevirtual sun.security.ec.ed.EdDSAOperations.sign:(Ljava/security/spec/EdDSAParameterSpec;[B[B)[B
astore 1
start local 1 6: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
7: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/security/ec/ed/EdDSASignature;
6 8 1 result [B
Exceptions:
throws java.security.SignatureException
protected boolean engineVerify(byte[]);
descriptor: ([B)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.ec.ed.EdDSASignature.publicKeyBytes:[B
ifnonnull 2
1: new java.security.SignatureException
dup
ldc "Missing publicKey"
invokespecial java.security.SignatureException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
ifnonnull 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ec.ed.EdDSASignature.ops:Lsun/security/ec/ed/EdDSAOperations;
aload 0
getfield sun.security.ec.ed.EdDSASignature.sigParams:Ljava/security/spec/EdDSAParameterSpec;
aload 0
getfield sun.security.ec.ed.EdDSASignature.publicKeyPoint:Lsun/security/ec/point/AffinePoint;
5: aload 0
getfield sun.security.ec.ed.EdDSASignature.publicKeyBytes:[B
aload 0
getfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
invokeinterface sun.security.ec.ed.EdDSASignature$MessageAccumulator.getMessage:()[B
aload 1
6: invokevirtual sun.security.ec.ed.EdDSAOperations.verify:(Ljava/security/spec/EdDSAParameterSpec;Lsun/security/ec/point/AffinePoint;[B[B[B)Z
istore 2
start local 2 7: aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
8: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/ec/ed/EdDSASignature;
0 9 1 sigBytes [B
7 9 2 result Z
Exceptions:
throws java.security.SignatureException
MethodParameters:
Name Flags
sigBytes
private void initImpl(sun.security.ec.ed.EdDSAParameters);
descriptor: (Lsun/security/ec/ed/EdDSAParameters;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/security/InvalidKeyException.<init>(Ljava/lang/String;)V (8)
(Ljava/lang/String;)Ljava/security/InvalidKeyException;
aload 1
invokevirtual sun.security.ec.ed.EdDSASignature.checkLockedParams:(Ljava/util/function/Function;Lsun/security/ec/ed/EdDSAParameters;)V
1: aload 0
new sun.security.ec.ed.EdDSAOperations
dup
aload 1
invokespecial sun.security.ec.ed.EdDSAOperations.<init>:(Lsun/security/ec/ed/EdDSAParameters;)V
putfield sun.security.ec.ed.EdDSASignature.ops:Lsun/security/ec/ed/EdDSAOperations;
2: goto 5
StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
3: astore 2
start local 2 4: new java.security.ProviderException
dup
aload 2
invokespecial java.security.ProviderException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 5: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/ec/ed/EdDSASignature;
0 7 1 params Lsun/security/ec/ed/EdDSAParameters;
4 5 2 ex Ljava/security/NoSuchAlgorithmException;
Exception table:
from to target type
1 2 3 Class java.security.NoSuchAlgorithmException
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
params
private void initImpl(java.security.spec.NamedParameterSpec);
descriptor: (Ljava/security/spec/NamedParameterSpec;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/security/InvalidKeyException.<init>(Ljava/lang/String;)V (8)
(Ljava/lang/String;)Ljava/security/InvalidKeyException;
aload 1
1: invokestatic sun.security.ec.ed.EdDSAParameters.get:(Ljava/util/function/Function;Ljava/security/spec/AlgorithmParameterSpec;)Lsun/security/ec/ed/EdDSAParameters;
astore 2
start local 2 2: aload 0
aload 2
invokevirtual sun.security.ec.ed.EdDSASignature.initImpl:(Lsun/security/ec/ed/EdDSAParameters;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/ec/ed/EdDSASignature;
0 4 1 paramSpec Ljava/security/spec/NamedParameterSpec;
2 4 2 params Lsun/security/ec/ed/EdDSAParameters;
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
paramSpec
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/ed/EdDSASignature;
0 1 1 param Ljava/lang/String;
Exceptions:
throws java.security.InvalidParameterException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
param
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/ed/EdDSASignature;
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
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
instanceof java.security.spec.EdDSAParameterSpec
ifeq 9
3: aload 0
getfield sun.security.ec.ed.EdDSASignature.message:Lsun/security/ec/ed/EdDSASignature$MessageAccumulator;
ifnull 5
4: new java.security.InvalidParameterException
dup
ldc "Cannot change signature parameters during operation"
invokespecial java.security.InvalidParameterException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 1
checkcast java.security.spec.EdDSAParameterSpec
astore 2
start local 2 6: aload 2
invokestatic sun.security.ec.ed.EdDSASignature.checkContextLength:(Ljava/security/spec/EdDSAParameterSpec;)V
7: aload 0
aload 2
putfield sun.security.ec.ed.EdDSASignature.sigParams:Ljava/security/spec/EdDSAParameterSpec;
end local 2 8: goto 12
9: StackMap locals:
StackMap stack:
new java.security.InvalidAlgorithmParameterException
dup
10: ldc "Only EdDSAParameterSpec supported"
11: invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/security/ec/ed/EdDSASignature;
0 13 1 params Ljava/security/spec/AlgorithmParameterSpec;
6 8 2 edDsaParams Ljava/security/spec/EdDSAParameterSpec;
Exceptions:
throws java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
params
private static void checkContextLength(java.security.spec.EdDSAParameterSpec);
descriptor: (Ljava/security/spec/EdDSAParameterSpec;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.security.spec.EdDSAParameterSpec.getContext:()Ljava/util/Optional;
invokevirtual java.util.Optional.isPresent:()Z
ifeq 6
1: aload 0
invokevirtual java.security.spec.EdDSAParameterSpec.getContext:()Ljava/util/Optional;
invokevirtual java.util.Optional.get:()Ljava/lang/Object;
checkcast byte[]
astore 1
start local 1 2: aload 1
arraylength
sipush 255
if_icmple 6
3: new java.security.InvalidAlgorithmParameterException
dup
4: ldc "Context is longer than 255 bytes"
5: invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
athrow
end local 1 6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 edDsaParams Ljava/security/spec/EdDSAParameterSpec;
2 6 1 context [B
Exceptions:
throws java.security.InvalidAlgorithmParameterException
MethodParameters:
Name Flags
edDsaParams
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: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ec/ed/EdDSASignature;
private static java.security.InvalidKeyException lambda$3();
descriptor: ()Ljava/security/InvalidKeyException;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=0, args_size=0
0: new java.security.InvalidKeyException
dup
ldc "No private key value"
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;)V
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "EdDSASignature.java"
NestMembers:
sun.security.ec.ed.EdDSASignature$DigestAccumulator sun.security.ec.ed.EdDSASignature$Ed25519 sun.security.ec.ed.EdDSASignature$Ed448 sun.security.ec.ed.EdDSASignature$MemoryAccumulator sun.security.ec.ed.EdDSASignature$MessageAccumulator
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Digester = sun.security.ec.ed.EdDSAParameters$Digester of sun.security.ec.ed.EdDSAParameters
private DigestAccumulator = sun.security.ec.ed.EdDSASignature$DigestAccumulator of sun.security.ec.ed.EdDSASignature
public Ed25519 = sun.security.ec.ed.EdDSASignature$Ed25519 of sun.security.ec.ed.EdDSASignature
public Ed448 = sun.security.ec.ed.EdDSASignature$Ed448 of sun.security.ec.ed.EdDSASignature
private MemoryAccumulator = sun.security.ec.ed.EdDSASignature$MemoryAccumulator of sun.security.ec.ed.EdDSASignature
private abstract MessageAccumulator = sun.security.ec.ed.EdDSASignature$MessageAccumulator of sun.security.ec.ed.EdDSASignature