EllipticCurve
EllipticCurve (타원곡선)
타원곡선을 나타내는 데 필요한 값들을 담는 불변(immutable) 클래스입니다.
본문
EllipticCurve는 타원곡선을 정의하는 데 필요한 값을 담는 불변 클래스입니다. 타원곡선은 유한체 F 위에서 방정식 y^2 = x^3 + ax + b 형태로 표현됩니다.
생성자 EllipticCurve(ECField field, BigInteger a, BigInteger b)와 선택적으로 시드를 받는 EllipticCurve(ECField field, BigInteger a, BigInteger b, byte[] seed)가 있습니다.
EllipticCurve이 제공하는 주요 메서드는 다음과 같습니다.
public ECField getField()— 이 곡선이 정의된 유한체를 반환합니다.public BigInteger getA()— 곡선 방정식의 계수 a를 반환합니다.public BigInteger getB()— 곡선 방정식의 계수 b를 반환합니다.public byte[] getSeed()— 곡선 생성에 사용된 시드를 반환합니다. 시드가 없으면null입니다.public boolean equals(Object obj)— 이 곡선과 다른 객체의 동등성을 비교합니다. 유한체와 계수 a, b가 같고 시드가 같으면 같습니다.public int hashCode()— 이 곡선의 해시 코드를 반환합니다.
ECParameterSpec이 곡선을 도메인 매개변수의 일부로 사용합니다.