public override ECFieldElement Invert() { //return new Curve25519FieldElement(ToBigInteger().ModInverse(Q)); uint[] z = Nat256.Create(); Curve25519Field.Inv(x, z); return(new Curve25519FieldElement(z)); }
public override ECFieldElement Divide(ECFieldElement b) { //return Multiply(b.Invert()); uint[] z = Nat256.Create(); Curve25519Field.Inv(((Curve25519FieldElement)b).x, z); Curve25519Field.Multiply(z, x, z); return(new Curve25519FieldElement(z)); }