public final class sun.security.ec.ECParameters extends java.security.AlgorithmParametersSpi
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.security.ec.ECParameters
super_class: java.security.AlgorithmParametersSpi
{
private sun.security.ec.NamedCurve namedCurve;
descriptor: Lsun/security/ec/NamedCurve;
flags: (0x0002) ACC_PRIVATE
static java.security.AlgorithmParameters getAlgorithmParameters(java.security.spec.ECParameterSpec);
descriptor: (Ljava/security/spec/ECParameterSpec;)Ljava/security/AlgorithmParameters;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: ldc "EC"
ldc "SunEC"
invokestatic java.security.AlgorithmParameters.getInstance:(Ljava/lang/String;Ljava/lang/String;)Ljava/security/AlgorithmParameters;
1: astore 1
start local 1 2: aload 1
aload 0
invokevirtual java.security.AlgorithmParameters.init:(Ljava/security/spec/AlgorithmParameterSpec;)V
3: aload 1
4: areturn
end local 1 5: StackMap locals:
StackMap stack: java.security.GeneralSecurityException
astore 1
start local 1 6: new java.security.InvalidKeyException
dup
ldc "EC parameters error"
aload 1
invokespecial java.security.InvalidKeyException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 spec Ljava/security/spec/ECParameterSpec;
2 5 1 params Ljava/security/AlgorithmParameters;
6 7 1 e Ljava/security/GeneralSecurityException;
Exception table:
from to target type
0 4 5 Class java.security.GeneralSecurityException
Exceptions:
throws java.security.InvalidKeyException
MethodParameters:
Name Flags
spec
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.security.AlgorithmParametersSpi.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/ec/ECParameters;
protected void engineInit(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 1
ifnonnull 4
1: new java.security.spec.InvalidParameterSpecException
dup
2: ldc "paramSpec must not be null"
3: invokespecial java.security.spec.InvalidParameterSpecException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 1
instanceof sun.security.ec.NamedCurve
ifeq 7
5: aload 0
aload 1
checkcast sun.security.ec.NamedCurve
putfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
6: return
7: StackMap locals:
StackMap stack:
aload 1
instanceof java.security.spec.ECParameterSpec
ifeq 10
8: aload 0
aload 1
checkcast java.security.spec.ECParameterSpec
invokestatic sun.security.ec.CurveDB.lookup:(Ljava/security/spec/ECParameterSpec;)Lsun/security/ec/NamedCurve;
putfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
9: goto 21
StackMap locals:
StackMap stack:
10: aload 1
instanceof java.security.spec.ECGenParameterSpec
ifeq 14
11: aload 1
checkcast java.security.spec.ECGenParameterSpec
invokevirtual java.security.spec.ECGenParameterSpec.getName:()Ljava/lang/String;
astore 2
start local 2 12: aload 0
aload 2
invokestatic sun.security.ec.CurveDB.lookup:(Ljava/lang/String;)Lsun/security/ec/NamedCurve;
putfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
end local 2 13: goto 21
StackMap locals:
StackMap stack:
14: aload 1
instanceof sun.security.util.ECKeySizeParameterSpec
ifeq 18
15: aload 1
checkcast sun.security.util.ECKeySizeParameterSpec
invokevirtual sun.security.util.ECKeySizeParameterSpec.getKeySize:()I
istore 2
start local 2 16: aload 0
iload 2
invokestatic sun.security.ec.CurveDB.lookup:(I)Lsun/security/ec/NamedCurve;
putfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
end local 2 17: goto 21
18: StackMap locals:
StackMap stack:
new java.security.spec.InvalidParameterSpecException
dup
19: ldc "Only ECParameterSpec and ECGenParameterSpec supported"
20: invokespecial java.security.spec.InvalidParameterSpecException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
ifnonnull 25
22: new java.security.spec.InvalidParameterSpecException
dup
23: new java.lang.StringBuilder
dup
ldc "Not a supported curve: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
24: invokespecial java.security.spec.InvalidParameterSpecException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lsun/security/ec/ECParameters;
0 26 1 paramSpec Ljava/security/spec/AlgorithmParameterSpec;
12 13 2 name Ljava/lang/String;
16 17 2 keySize I
Exceptions:
throws java.security.spec.InvalidParameterSpecException
MethodParameters:
Name Flags
paramSpec
protected void engineInit(byte[]);
descriptor: ([B)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: new sun.security.util.DerValue
dup
aload 1
invokespecial sun.security.util.DerValue.<init>:([B)V
astore 2
start local 2 1: aload 2
getfield sun.security.util.DerValue.tag:B
bipush 6
if_icmpne 8
2: aload 2
invokevirtual sun.security.util.DerValue.getOID:()Lsun/security/util/ObjectIdentifier;
astore 3
start local 3 3: aload 3
invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
invokestatic sun.security.ec.CurveDB.lookup:(Ljava/lang/String;)Lsun/security/ec/NamedCurve;
astore 4
start local 4 4: aload 4
ifnonnull 6
5: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "Unknown named curve: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.ec.NamedCurve
StackMap stack:
aload 0
aload 4
putfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
7: return
end local 4 end local 3 8: StackMap locals:
StackMap stack:
new java.io.IOException
dup
ldc "Only named ECParameters supported"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/security/ec/ECParameters;
0 9 1 params [B
1 9 2 encodedParams Lsun/security/util/DerValue;
3 8 3 oid Lsun/security/util/ObjectIdentifier;
4 8 4 spec Lsun/security/ec/NamedCurve;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
params
protected void engineInit(byte[], java.lang.String);
descriptor: ([BLjava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual sun.security.ec.ECParameters.engineInit:([B)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/ec/ECParameters;
0 2 1 params [B
0 2 2 decodingMethod Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
params
decodingMethod
protected <T extends java.security.spec.AlgorithmParameterSpec> T engineGetParameterSpec(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/security/spec/AlgorithmParameterSpec;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc Ljava/security/spec/ECParameterSpec;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 2
1: aload 1
aload 0
getfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.security.spec.AlgorithmParameterSpec
areturn
2: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/security/spec/ECGenParameterSpec;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 5
3: aload 0
getfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
invokevirtual sun.security.ec.NamedCurve.getObjectId:()Ljava/lang/String;
astore 2
start local 2 4: aload 1
new java.security.spec.ECGenParameterSpec
dup
aload 2
invokespecial java.security.spec.ECGenParameterSpec.<init>:(Ljava/lang/String;)V
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.security.spec.AlgorithmParameterSpec
areturn
end local 2 5: StackMap locals:
StackMap stack:
aload 1
ldc Lsun/security/util/ECKeySizeParameterSpec;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 8
6: aload 0
getfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
invokevirtual sun.security.ec.NamedCurve.getCurve:()Ljava/security/spec/EllipticCurve;
invokevirtual java.security.spec.EllipticCurve.getField:()Ljava/security/spec/ECField;
invokeinterface java.security.spec.ECField.getFieldSize:()I
istore 2
start local 2 7: aload 1
new sun.security.util.ECKeySizeParameterSpec
dup
iload 2
invokespecial sun.security.util.ECKeySizeParameterSpec.<init>:(I)V
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.security.spec.AlgorithmParameterSpec
areturn
end local 2 8: StackMap locals:
StackMap stack:
new java.security.spec.InvalidParameterSpecException
dup
9: ldc "Only ECParameterSpec and ECGenParameterSpec supported"
10: invokespecial java.security.spec.InvalidParameterSpecException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/security/ec/ECParameters;
0 11 1 spec Ljava/lang/Class<TT;>;
4 5 2 name Ljava/lang/String;
7 8 2 keySize I
Exceptions:
throws java.security.spec.InvalidParameterSpecException
Signature: <T::Ljava/security/spec/AlgorithmParameterSpec;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
spec
protected byte[] engineGetEncoded();
descriptor: ()[B
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
invokevirtual sun.security.ec.NamedCurve.getEncoded:()[B
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ec/ECParameters;
Exceptions:
throws java.io.IOException
protected byte[] engineGetEncoded(java.lang.String);
descriptor: (Ljava/lang/String;)[B
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.security.ec.ECParameters.engineGetEncoded:()[B
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/ec/ECParameters;
0 1 1 encodingMethod Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
encodingMethod
protected java.lang.String engineToString();
descriptor: ()Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
ifnonnull 2
1: ldc "Not initialized"
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.security.ec.ECParameters.namedCurve:Lsun/security/ec/NamedCurve;
invokevirtual sun.security.ec.NamedCurve.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/ec/ECParameters;
}
SourceFile: "ECParameters.java"