func HashToCurve(t []byte) (Tx *big.Int, Ty *big.Int) {
	hash := sha256.Sum256(t)
	Tx = new(big.Int).SetBytes(hash[:])
	Ty = new(big.Int).ModSqrt(polynomial(params.B, params.P, Tx), params.P)
	return
}
HashToCurve hash t to a curve point T.
If T is not valid, then Ty = nil.
package main
import (
	"crypto/rand"
	"crypto/sha256"
	"math/big"
)
func RandomBytes() []byte {
	r := make([]byte, B)
	rand.Read(r)
	return r
}