モジュール java.base
パッケージ java.security.spec

クラスEllipticCurve


  • public class EllipticCurve
    extends Object
    この不変なクラスは、楕円曲線の表現に必要となる値を保持します。
    導入されたバージョン:
    1.5
    関連項目:
    ECField, ECFieldFp, ECFieldF2m
    • コンストラクタの詳細

      • EllipticCurve

        public EllipticCurve​(ECField field,
                             BigInteger a,
                             BigInteger b)
        指定された楕円体fieldと係数abを使って楕円曲線を作成します。
        パラメータ:
        field - この楕円曲線の作成先の有限体。
        a - この楕円曲線の第1係数。
        b - この楕円曲線の第2係数。
        例外:
        NullPointerException - fielda、またはbがnullの場合。
        IllegalArgumentException - aまたはbがnull以外でかつfieldに含まれない場合。
      • EllipticCurve

        public EllipticCurve​(ECField field,
                             BigInteger a,
                             BigInteger b,
                             byte[] seed)
        指定された楕円体field、係数ab、および曲線生成用seedを使って楕円曲線を作成します。
        パラメータ:
        field - この楕円曲線の作成先の有限体。
        a - この楕円曲線の第1係数。
        b - この楕円曲線の第2係数。
        seed - 後続の検証用として曲線生成時に使用されるバイト。 この配列の内容は、後続の変更に影響されないようにコピーされる。
        例外:
        NullPointerException - fielda、またはbがnullの場合。
        IllegalArgumentException - aまたはbがnull以外でかつfieldに含まれない場合。
    • メソッドの詳細

      • getField

        public ECField getField()
        この楕円曲線の作成先の有限体fieldを返します。
        戻り値:
        この曲線の作成先の体field
      • getA

        public BigInteger getA()
        楕円曲線の第1係数aを返します。
        戻り値:
        第1係数a
      • getB

        public BigInteger getB()
        楕円曲線の第2係数bを返します。
        戻り値:
        第2係数b
      • getSeed

        public byte[] getSeed()
        曲線生成時に使用されるシード用バイトseedを返します。 指定されなかった場合はnullになります。
        戻り値:
        シード用バイトseed このメソッドが呼び出されるたびに新しい配列が返される。
      • equals

        public boolean equals​(Object obj)
        この楕円曲線と指定されたオブジェクトとを比較し、両者が等しいかどうかを判定します。
        オーバーライド:
        equals 、クラス:  Object
        パラメータ:
        obj - 比較対象のオブジェクト。
        戻り値:
        objがEllipticCurveのインスタンスであり、かつ両者の体、A、およびBが一致する場合はtrue、そうでない場合は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)