public static Point HashToPoint(byte[] toHash, EllipticCurve ec) { BigInt b = HashToField(toHash, ec.Field); Point P = ec.GetPoint(b); while (P == null) { b = b.Add(BigInt.ONE); P = ec.GetPoint(b); } return(P); }