- java.lang.Object
-
- java.security.spec.EllipticCurve
-
public class EllipticCurve extends Object
这个不变的类保存代表椭圆曲线所需的必要值。- 从以下版本开始:
- 1.5
- 另请参见:
-
ECField,ECFieldFp,ECFieldF2m
-
-
构造方法摘要
构造方法 Constructor 描述 EllipticCurve(ECField field, BigInteger a, BigInteger b)创建具有指定的椭圆字段field和系数a和b的椭圆曲线。EllipticCurve(ECField field, BigInteger a, BigInteger b, byte[] seed)创建具有指定的椭圆场field,系数a和b以及用于曲线生成的seed的椭圆曲线。
-
-
-
构造方法详细信息
-
EllipticCurve
public EllipticCurve(ECField field, BigInteger a, BigInteger b)
创建具有指定的椭圆场field和系数a和b的椭圆曲线。- 参数
-
field- 这个椭圆曲线结束的有限域。 -
a- 这个椭圆曲线的第一个系数。 -
b- 这个椭圆曲线的第二个系数。 - 异常
-
NullPointerException-如果field,a,或b为null。 -
IllegalArgumentException- 如果a或b不为空且不在field。
-
EllipticCurve
public EllipticCurve(ECField field, BigInteger a, BigInteger b, byte[] seed)
创建具有指定的椭圆场field,系数a和b以及用于曲线生成的seed的椭圆曲线。- 参数
-
field- 这个椭圆曲线结束的有限域。 -
a- 这个椭圆曲线的第一个系数。 -
b- 这个椭圆曲线的第二个系数。 -
seed- 用于稍后验证的曲线生成期间使用的字节。 复制该数组的内容以防止后续修改。 - 异常
-
NullPointerException-如果field,a,或b为null。 -
IllegalArgumentException- 如果a或b不为空,而不在field。
-
-
方法详细信息
-
getField
public ECField getField()
返回这个椭圆曲线结束的有限域field。- 结果
-
该曲线结束的字段为
field。
-
getA
public BigInteger getA()
返回椭圆曲线的第一个系数a。- 结果
-
第一个系数
a。
-
getB
public BigInteger getB()
返回椭圆曲线的第二个系数b。- 结果
-
第二个系数
b。
-
getSeed
public byte[] getSeed()
返回在曲线生成期间使用的播种字节seed。 如果未指定,可能为null。- 结果
-
播种字节
seed。 每次调用此方法时,都会返回一个新数组。
-
equals
public boolean equals(Object obj)
将此椭圆曲线与指定对象进行比较。- 重写:
-
equals在Object - 参数
-
obj- 要比较的对象。 - 结果
-
如果
obj是EllipticCurve的实例,并且字段A和B匹配,objtrue,否则为false。 - 另请参见:
-
Object.hashCode(),HashMap
-
hashCode
public int hashCode()
返回此椭圆曲线的哈希码值。- 重写:
-
hashCode在Object - 结果
-
从字段A和B的哈希码计算的哈希码值如下:
(field.hashCode() << 6) + (a.hashCode() << 4) + (b.hashCode() << 2) - 另请参见:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
-