예제 #1
0
 protected bool Equals(F2MFieldElement other)
 {
     return(_m == other._m &&
            _k1 == other._k1 &&
            _k2 == other._k2 &&
            _k3 == other._k3 &&
            _representation == other._representation &&
            base.Equals(other));
 }
예제 #2
0
        /**
         * @param curve base curve
         * @param x x point
         * @param y y point
         * @param withCompression true if encode with point compression.
         */
        public F2MPoint(ECCurve curve, ECFieldElement x, ECFieldElement y, bool withCompression)
            : base(curve, x, y, withCompression)
        {
            if ((x != null && y == null) || (x == null && y != null))
            {
                throw new ArgumentException("Exactly one of the field elements is null");
            }

            if (x == null)
            {
                return;
            }

            // Check if x and y are elements of the same field
            F2MFieldElement.CheckFieldElements(this.X, this.Y);

            // Check if x and a are elements of the same field
            F2MFieldElement.CheckFieldElements(this.X, this.Curve.A);
        }
 protected bool Equals(F2MFieldElement other)
 {
     return _m == other._m
            && _k1 == other._k1
            && _k2 == other._k2
            && _k3 == other._k3
            && _representation == other._representation
            && base.Equals(other);
 }