public class sun.security.ec.ECDSAOperations
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.security.ec.ECDSAOperations
super_class: java.lang.Object
{
private final sun.security.ec.ECOperations ecOps;
descriptor: Lsun/security/ec/ECOperations;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final sun.security.ec.point.AffinePoint basePoint;
descriptor: Lsun/security/ec/point/AffinePoint;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(sun.security.ec.ECOperations, java.security.spec.ECPoint);
descriptor: (Lsun/security/ec/ECOperations;Ljava/security/spec/ECPoint;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
2: aload 0
aload 2
aload 1
invokevirtual sun.security.ec.ECOperations.getField:()Lsun/security/util/math/IntegerFieldModuloP;
invokestatic sun.security.ec.ECDSAOperations.toAffinePoint:(Ljava/security/spec/ECPoint;Lsun/security/util/math/IntegerFieldModuloP;)Lsun/security/ec/point/AffinePoint;
putfield sun.security.ec.ECDSAOperations.basePoint:Lsun/security/ec/point/AffinePoint;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/security/ec/ECDSAOperations;
0 4 1 ecOps Lsun/security/ec/ECOperations;
0 4 2 basePoint Ljava/security/spec/ECPoint;
MethodParameters:
Name Flags
ecOps
basePoint
public sun.security.ec.ECOperations getEcOperations();
descriptor: ()Lsun/security/ec/ECOperations;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ec/ECDSAOperations;
public sun.security.ec.point.AffinePoint basePointMultiply(byte[]);
descriptor: ([B)Lsun/security/ec/point/AffinePoint;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
aload 0
getfield sun.security.ec.ECDSAOperations.basePoint:Lsun/security/ec/point/AffinePoint;
aload 1
invokevirtual sun.security.ec.ECOperations.multiply:(Lsun/security/ec/point/AffinePoint;[B)Lsun/security/ec/point/MutablePoint;
invokeinterface sun.security.ec.point.MutablePoint.asAffine:()Lsun/security/ec/point/AffinePoint;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ec/ECDSAOperations;
0 1 1 scalar [B
MethodParameters:
Name Flags
scalar
public static sun.security.ec.point.AffinePoint toAffinePoint(java.security.spec.ECPoint, sun.security.util.math.IntegerFieldModuloP);
descriptor: (Ljava/security/spec/ECPoint;Lsun/security/util/math/IntegerFieldModuloP;)Lsun/security/ec/point/AffinePoint;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual java.security.spec.ECPoint.getAffineX:()Ljava/math/BigInteger;
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:(Ljava/math/BigInteger;)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 2
start local 2 1: aload 1
aload 0
invokevirtual java.security.spec.ECPoint.getAffineY:()Ljava/math/BigInteger;
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:(Ljava/math/BigInteger;)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 3
start local 3 2: new sun.security.ec.point.AffinePoint
dup
aload 2
aload 3
invokespecial sun.security.ec.point.AffinePoint.<init>:(Lsun/security/util/math/ImmutableIntegerModuloP;Lsun/security/util/math/ImmutableIntegerModuloP;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 point Ljava/security/spec/ECPoint;
0 3 1 field Lsun/security/util/math/IntegerFieldModuloP;
1 3 2 affineX Lsun/security/util/math/ImmutableIntegerModuloP;
2 3 3 affineY Lsun/security/util/math/ImmutableIntegerModuloP;
MethodParameters:
Name Flags
point
field
public static java.util.Optional<sun.security.ec.ECDSAOperations> forParameters(java.security.spec.ECParameterSpec);
descriptor: (Ljava/security/spec/ECParameterSpec;)Ljava/util/Optional;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokestatic sun.security.ec.ECOperations.forParameters:(Ljava/security/spec/ECParameterSpec;)Ljava/util/Optional;
1: astore 1
start local 1 2: aload 1
3: aload 0
invokedynamic apply(Ljava/security/spec/ECParameterSpec;)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;
sun/security/ec/ECDSAOperations.lambda$0(Ljava/security/spec/ECParameterSpec;Lsun/security/ec/ECOperations;)Lsun/security/ec/ECDSAOperations; (6)
(Lsun/security/ec/ECOperations;)Lsun/security/ec/ECDSAOperations;
4: invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 ecParams Ljava/security/spec/ECParameterSpec;
2 5 1 curveOps Ljava/util/Optional<Lsun/security/ec/ECOperations;>;
Signature: (Ljava/security/spec/ECParameterSpec;)Ljava/util/Optional<Lsun/security/ec/ECDSAOperations;>;
MethodParameters:
Name Flags
ecParams
public byte[] signDigest(byte[], byte[], sun.security.ec.ECDSAOperations$Seed);
descriptor: ([B[BLsun/security/ec/ECDSAOperations$Seed;)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
aload 3
invokevirtual sun.security.ec.ECDSAOperations$Seed.getSeedValue:()[B
invokevirtual sun.security.ec.ECOperations.seedToScalar:([B)[B
astore 4
start local 4 1: new sun.security.ec.ECDSAOperations$Nonce
dup
aload 4
invokespecial sun.security.ec.ECDSAOperations$Nonce.<init>:([B)V
astore 5
start local 5 2: aload 0
aload 1
aload 2
aload 5
invokevirtual sun.security.ec.ECDSAOperations.signDigest:([B[BLsun/security/ec/ECDSAOperations$Nonce;)[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 3 0 this Lsun/security/ec/ECDSAOperations;
0 3 1 privateKey [B
0 3 2 digest [B
0 3 3 seed Lsun/security/ec/ECDSAOperations$Seed;
1 3 4 nonceArr [B
2 3 5 nonce Lsun/security/ec/ECDSAOperations$Nonce;
Exceptions:
throws sun.security.ec.ECOperations$IntermediateValueException
MethodParameters:
Name Flags
privateKey
digest
seed
public byte[] signDigest(byte[], byte[], sun.security.ec.ECDSAOperations$Nonce);
descriptor: ([B[BLsun/security/ec/ECDSAOperations$Nonce;)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=19, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
invokevirtual sun.security.ec.ECOperations.getOrderField:()Lsun/security/util/math/IntegerFieldModuloP;
astore 4
start local 4 1: aload 4
invokeinterface sun.security.util.math.IntegerFieldModuloP.getSize:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.bitLength:()I
istore 5
start local 5 2: iload 5
bipush 8
irem
ifeq 4
iload 5
aload 2
arraylength
bipush 8
imul
if_icmpge 4
3: new java.security.ProviderException
dup
ldc "Invalid digest length"
invokespecial java.security.ProviderException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: sun.security.util.math.IntegerFieldModuloP int
StackMap stack:
aload 3
invokevirtual sun.security.ec.ECDSAOperations$Nonce.getNonceValue:()[B
astore 6
start local 6 5: aload 4
invokeinterface sun.security.util.math.IntegerFieldModuloP.getSize:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.bitLength:()I
bipush 7
iadd
bipush 8
idiv
istore 7
start local 7 6: aload 6
arraylength
iload 7
if_icmpeq 8
7: new java.security.ProviderException
dup
ldc "Incorrect nonce length"
invokespecial java.security.ProviderException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: byte[] int
StackMap stack:
aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
aload 0
getfield sun.security.ec.ECDSAOperations.basePoint:Lsun/security/ec/point/AffinePoint;
aload 6
invokevirtual sun.security.ec.ECOperations.multiply:(Lsun/security/ec/point/AffinePoint;[B)Lsun/security/ec/point/MutablePoint;
astore 8
start local 8 9: aload 8
invokeinterface sun.security.ec.point.MutablePoint.asAffine:()Lsun/security/ec/point/AffinePoint;
invokevirtual sun.security.ec.point.AffinePoint.getX:()Lsun/security/util/math/ImmutableIntegerModuloP;
astore 9
start local 9 10: iload 7
newarray 8
astore 10
start local 10 11: aload 9
aload 4
aload 10
invokestatic sun.security.ec.ECDSAOperations.b2a:(Lsun/security/util/math/IntegerModuloP;Lsun/security/util/math/IntegerFieldModuloP;[B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 9
12: iconst_2
iload 7
imul
newarray 8
astore 11
start local 11 13: aload 10
invokestatic sun.security.util.ArrayUtil.reverse:([B)V
14: aload 10
iconst_0
aload 11
iconst_0
iload 7
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
15: aload 10
invokestatic sun.security.ec.ECOperations.allZero:([B)Z
ifeq 17
16: new sun.security.ec.ECOperations$IntermediateValueException
dup
invokespecial sun.security.ec.ECOperations$IntermediateValueException.<init>:()V
athrow
17: StackMap locals: sun.security.ec.ECDSAOperations byte[] byte[] sun.security.ec.ECDSAOperations$Nonce sun.security.util.math.IntegerFieldModuloP int byte[] int sun.security.ec.point.MutablePoint sun.security.util.math.IntegerModuloP byte[] byte[]
StackMap stack:
aload 4
aload 1
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:([B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 12
start local 12 18: iload 7
aload 2
arraylength
invokestatic java.lang.Math.min:(II)I
istore 13
start local 13 19: iload 13
newarray 8
astore 14
start local 14 20: aload 2
iconst_0
aload 14
iconst_0
iload 13
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
21: aload 14
invokestatic sun.security.util.ArrayUtil.reverse:([B)V
22: aload 4
aload 14
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:([B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 15
start local 15 23: aload 4
aload 6
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:([B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 16
start local 16 24: aload 16
invokeinterface sun.security.util.math.IntegerModuloP.multiplicativeInverse:()Lsun/security/util/math/ImmutableIntegerModuloP;
astore 17
start local 17 25: aload 9
invokeinterface sun.security.util.math.IntegerModuloP.mutable:()Lsun/security/util/math/MutableIntegerModuloP;
astore 18
start local 18 26: aload 18
aload 12
invokeinterface sun.security.util.math.MutableIntegerModuloP.setProduct:(Lsun/security/util/math/IntegerModuloP;)Lsun/security/util/math/MutableIntegerModuloP;
aload 15
invokeinterface sun.security.util.math.MutableIntegerModuloP.setSum:(Lsun/security/util/math/IntegerModuloP;)Lsun/security/util/math/MutableIntegerModuloP;
aload 17
invokeinterface sun.security.util.math.MutableIntegerModuloP.setProduct:(Lsun/security/util/math/IntegerModuloP;)Lsun/security/util/math/MutableIntegerModuloP;
pop
27: aload 18
aload 10
invokeinterface sun.security.util.math.MutableIntegerModuloP.asByteArray:([B)V
28: aload 10
invokestatic sun.security.util.ArrayUtil.reverse:([B)V
29: aload 10
iconst_0
aload 11
iload 7
iload 7
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
30: aload 10
invokestatic sun.security.ec.ECOperations.allZero:([B)Z
ifeq 32
31: new sun.security.ec.ECOperations$IntermediateValueException
dup
invokespecial sun.security.ec.ECOperations$IntermediateValueException.<init>:()V
athrow
32: StackMap locals: sun.security.ec.ECDSAOperations byte[] byte[] sun.security.ec.ECDSAOperations$Nonce sun.security.util.math.IntegerFieldModuloP int byte[] int sun.security.ec.point.MutablePoint sun.security.util.math.IntegerModuloP byte[] byte[] sun.security.util.math.IntegerModuloP int byte[] sun.security.util.math.IntegerModuloP sun.security.util.math.IntegerModuloP sun.security.util.math.IntegerModuloP sun.security.util.math.MutableIntegerModuloP
StackMap stack:
aload 11
areturn
end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 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 33 0 this Lsun/security/ec/ECDSAOperations;
0 33 1 privateKey [B
0 33 2 digest [B
0 33 3 nonce Lsun/security/ec/ECDSAOperations$Nonce;
1 33 4 orderField Lsun/security/util/math/IntegerFieldModuloP;
2 33 5 orderBits I
5 33 6 k [B
6 33 7 length I
9 33 8 R Lsun/security/ec/point/MutablePoint;
10 33 9 r Lsun/security/util/math/IntegerModuloP;
11 33 10 temp [B
13 33 11 result [B
18 33 12 dU Lsun/security/util/math/IntegerModuloP;
19 33 13 lengthE I
20 33 14 E [B
23 33 15 e Lsun/security/util/math/IntegerModuloP;
24 33 16 kElem Lsun/security/util/math/IntegerModuloP;
25 33 17 kInv Lsun/security/util/math/IntegerModuloP;
26 33 18 s Lsun/security/util/math/MutableIntegerModuloP;
Exceptions:
throws sun.security.ec.ECOperations$IntermediateValueException
MethodParameters:
Name Flags
privateKey
digest
nonce
public boolean verifySignedDigest(byte[], byte[], java.security.spec.ECPoint);
descriptor: ([B[BLjava/security/spec/ECPoint;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=24, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
invokevirtual sun.security.ec.ECOperations.getField:()Lsun/security/util/math/IntegerFieldModuloP;
astore 4
start local 4 1: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
invokevirtual sun.security.ec.ECOperations.getOrderField:()Lsun/security/util/math/IntegerFieldModuloP;
astore 5
start local 5 2: aload 5
invokeinterface sun.security.util.math.IntegerFieldModuloP.getSize:()Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.bitLength:()I
bipush 7
iadd
bipush 8
idiv
istore 6
start local 6 3: aload 2
arraylength
iconst_2
idiv
istore 9
start local 9 4: aload 2
arraylength
iconst_2
irem
ifne 5
iload 9
iload 6
if_icmple 6
5: StackMap locals: sun.security.ec.ECDSAOperations byte[] byte[] java.security.spec.ECPoint sun.security.util.math.IntegerFieldModuloP sun.security.util.math.IntegerFieldModuloP int top top int
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iload 9
iload 6
if_icmpne 10
7: aload 2
iload 6
invokestatic java.util.Arrays.copyOf:([BI)[B
astore 7
start local 7 8: aload 2
iload 6
iload 6
iconst_2
imul
invokestatic java.util.Arrays.copyOfRange:([BII)[B
astore 8
start local 8 9: goto 14
end local 8 end local 7 10: StackMap locals:
StackMap stack:
iload 6
newarray 8
astore 7
start local 7 11: iload 6
newarray 8
astore 8
start local 8 12: aload 2
iconst_0
aload 7
iload 6
iload 9
isub
iload 9
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
13: aload 2
iload 9
aload 8
iload 6
iload 9
isub
iload 9
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
14: StackMap locals: sun.security.ec.ECDSAOperations byte[] byte[] java.security.spec.ECPoint sun.security.util.math.IntegerFieldModuloP sun.security.util.math.IntegerFieldModuloP int byte[] byte[] int
StackMap stack:
aload 7
invokestatic sun.security.util.ArrayUtil.reverse:([B)V
15: aload 8
invokestatic sun.security.util.ArrayUtil.reverse:([B)V
16: aload 5
aload 7
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:([B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 10
start local 10 17: aload 5
aload 8
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:([B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 11
start local 11 18: iload 6
aload 1
arraylength
invokestatic java.lang.Math.min:(II)I
istore 12
start local 12 19: iload 12
newarray 8
astore 13
start local 13 20: aload 1
iconst_0
aload 13
iconst_0
iload 12
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
21: aload 13
invokestatic sun.security.util.ArrayUtil.reverse:([B)V
22: aload 5
aload 13
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:([B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 14
start local 14 23: aload 11
invokeinterface sun.security.util.math.IntegerModuloP.multiplicativeInverse:()Lsun/security/util/math/ImmutableIntegerModuloP;
astore 15
start local 15 24: aload 14
aload 15
invokeinterface sun.security.util.math.IntegerModuloP.multiply:(Lsun/security/util/math/IntegerModuloP;)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 16
start local 16 25: aload 10
aload 15
invokeinterface sun.security.util.math.IntegerModuloP.multiply:(Lsun/security/util/math/IntegerModuloP;)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 17
start local 17 26: new sun.security.ec.point.AffinePoint
dup
aload 4
aload 3
invokevirtual java.security.spec.ECPoint.getAffineX:()Ljava/math/BigInteger;
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:(Ljava/math/BigInteger;)Lsun/security/util/math/ImmutableIntegerModuloP;
27: aload 4
aload 3
invokevirtual java.security.spec.ECPoint.getAffineY:()Ljava/math/BigInteger;
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:(Ljava/math/BigInteger;)Lsun/security/util/math/ImmutableIntegerModuloP;
28: invokespecial sun.security.ec.point.AffinePoint.<init>:(Lsun/security/util/math/ImmutableIntegerModuloP;Lsun/security/util/math/ImmutableIntegerModuloP;)V
astore 18
start local 18 29: iload 6
newarray 8
astore 19
start local 19 30: aload 16
aload 5
aload 19
invokestatic sun.security.ec.ECDSAOperations.b2a:(Lsun/security/util/math/IntegerModuloP;Lsun/security/util/math/IntegerFieldModuloP;[B)Lsun/security/util/math/ImmutableIntegerModuloP;
pop
31: iload 6
newarray 8
astore 20
start local 20 32: aload 17
aload 5
aload 20
invokestatic sun.security.ec.ECDSAOperations.b2a:(Lsun/security/util/math/IntegerModuloP;Lsun/security/util/math/IntegerFieldModuloP;[B)Lsun/security/util/math/ImmutableIntegerModuloP;
pop
33: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
aload 0
getfield sun.security.ec.ECDSAOperations.basePoint:Lsun/security/ec/point/AffinePoint;
aload 19
invokevirtual sun.security.ec.ECOperations.multiply:(Lsun/security/ec/point/AffinePoint;[B)Lsun/security/ec/point/MutablePoint;
astore 21
start local 21 34: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
aload 18
aload 20
invokevirtual sun.security.ec.ECOperations.multiply:(Lsun/security/ec/point/AffinePoint;[B)Lsun/security/ec/point/MutablePoint;
astore 22
start local 22 35: aload 0
getfield sun.security.ec.ECDSAOperations.ecOps:Lsun/security/ec/ECOperations;
aload 21
aload 22
invokeinterface sun.security.ec.point.MutablePoint.asAffine:()Lsun/security/ec/point/AffinePoint;
invokevirtual sun.security.ec.ECOperations.setSum:(Lsun/security/ec/point/MutablePoint;Lsun/security/ec/point/AffinePoint;)V
36: aload 21
invokeinterface sun.security.ec.point.MutablePoint.asAffine:()Lsun/security/ec/point/AffinePoint;
invokevirtual sun.security.ec.point.AffinePoint.getX:()Lsun/security/util/math/ImmutableIntegerModuloP;
astore 23
start local 23 37: aload 23
invokeinterface sun.security.util.math.IntegerModuloP.additiveInverse:()Lsun/security/util/math/ImmutableIntegerModuloP;
aload 10
invokeinterface sun.security.util.math.ImmutableIntegerModuloP.add:(Lsun/security/util/math/IntegerModuloP;)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 23
38: aload 23
aload 5
aload 19
invokestatic sun.security.ec.ECDSAOperations.b2a:(Lsun/security/util/math/IntegerModuloP;Lsun/security/util/math/IntegerFieldModuloP;[B)Lsun/security/util/math/ImmutableIntegerModuloP;
pop
39: aload 19
invokestatic sun.security.ec.ECOperations.allZero:([B)Z
ireturn
end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 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 40 0 this Lsun/security/ec/ECDSAOperations;
0 40 1 digest [B
0 40 2 sig [B
0 40 3 pp Ljava/security/spec/ECPoint;
1 40 4 field Lsun/security/util/math/IntegerFieldModuloP;
2 40 5 orderField Lsun/security/util/math/IntegerFieldModuloP;
3 40 6 length I
8 10 7 r [B
11 40 7 r [B
9 10 8 s [B
12 40 8 s [B
4 40 9 encodeLength I
17 40 10 ri Lsun/security/util/math/IntegerModuloP;
18 40 11 si Lsun/security/util/math/IntegerModuloP;
19 40 12 lengthE I
20 40 13 E [B
23 40 14 e Lsun/security/util/math/IntegerModuloP;
24 40 15 sInv Lsun/security/util/math/IntegerModuloP;
25 40 16 u1 Lsun/security/util/math/ImmutableIntegerModuloP;
26 40 17 u2 Lsun/security/util/math/ImmutableIntegerModuloP;
29 40 18 pub Lsun/security/ec/point/AffinePoint;
30 40 19 temp1 [B
32 40 20 temp2 [B
34 40 21 p1 Lsun/security/ec/point/MutablePoint;
35 40 22 p2 Lsun/security/ec/point/MutablePoint;
37 40 23 result Lsun/security/util/math/IntegerModuloP;
MethodParameters:
Name Flags
digest
sig
pp
public static sun.security.util.math.ImmutableIntegerModuloP b2a(sun.security.util.math.IntegerModuloP, sun.security.util.math.IntegerFieldModuloP, byte[]);
descriptor: (Lsun/security/util/math/IntegerModuloP;Lsun/security/util/math/IntegerFieldModuloP;[B)Lsun/security/util/math/ImmutableIntegerModuloP;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokeinterface sun.security.util.math.IntegerModuloP.asByteArray:([B)V
1: aload 1
aload 2
invokeinterface sun.security.util.math.IntegerFieldModuloP.getElement:([B)Lsun/security/util/math/ImmutableIntegerModuloP;
astore 3
start local 3 2: aload 3
aload 2
invokeinterface sun.security.util.math.ImmutableIntegerModuloP.asByteArray:([B)V
3: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 b Lsun/security/util/math/IntegerModuloP;
0 4 1 orderField Lsun/security/util/math/IntegerFieldModuloP;
0 4 2 temp1 [B
2 4 3 b2 Lsun/security/util/math/ImmutableIntegerModuloP;
MethodParameters:
Name Flags
b
orderField
temp1
private static sun.security.ec.ECDSAOperations lambda$0(java.security.spec.ECParameterSpec, sun.security.ec.ECOperations);
descriptor: (Ljava/security/spec/ECParameterSpec;Lsun/security/ec/ECOperations;)Lsun/security/ec/ECDSAOperations;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=2, args_size=2
start local 1 0: new sun.security.ec.ECDSAOperations
dup
aload 1
aload 0
invokevirtual java.security.spec.ECParameterSpec.getGenerator:()Ljava/security/spec/ECPoint;
invokespecial sun.security.ec.ECDSAOperations.<init>:(Lsun/security/ec/ECOperations;Ljava/security/spec/ECPoint;)V
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 ops Lsun/security/ec/ECOperations;
}
SourceFile: "ECDSAOperations.java"
NestMembers:
sun.security.ec.ECDSAOperations$Nonce sun.security.ec.ECDSAOperations$Seed
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public Nonce = sun.security.ec.ECDSAOperations$Nonce of sun.security.ec.ECDSAOperations
public Seed = sun.security.ec.ECDSAOperations$Seed of sun.security.ec.ECDSAOperations
IntermediateValueException = sun.security.ec.ECOperations$IntermediateValueException of sun.security.ec.ECOperations