Versions in this module Expand all Collapse all v1 v1.0.0 Jun 16, 2026 Changes in this version + func CalcHash(input []*big.Int) []byte + func FastHash(x *big.Int, y *big.Int) []byte + func GetMsgHash(instuctType, vault0, vault1, amount0, amount1 *big.Int, ...) []byte + func InitHashParams() + func InitStarkCurveParams() + func Sign(privkey []byte, hash []byte) (*big.Int, *big.Int, error) + func Sign2(privkey []byte, hash []byte) (*big.Int, *big.Int, error) + func SignV3(privkey []byte, hash []byte) (*big.Int, *big.Int, error) + func Verify(hash []byte, pubkeyX, pubkeyY, r, s *big.Int) bool + func VerifyPubKey(pubkey []byte) bool + func VerifyV3(hash []byte, pubkeyX, pubkeyY, r, s *big.Int) bool + type CurvePoint struct + X *big.Int + Y *big.Int + type HashPoint struct + X *big.Int + Y *big.Int + type StarkCfg struct + Alpha *big.Int + Beta *big.Int + Comment string + ConstantPoints [][]*big.Int + EcOrder *big.Int + FieldGen *big.Int + FieldPrime *big.Int + License []string + type StarkCurve struct + B *big.Int + BitSize int + Gx *big.Int + Gy *big.Int + N *big.Int + P *big.Int + func NewStarkCurve() *StarkCurve + func (StarkCurve *StarkCurve) Params() *elliptic.CurveParams + func (starkCurve *StarkCurve) Add(x1, y1, x2, y2 *big.Int) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) Add1(x1, y1, x2, y2 *big.Int) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) Double(x1, y1 *big.Int) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) Double1(x1, y1 *big.Int) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) GenerateKey(rand io.Reader) (priv []byte, x, y *big.Int, err error) + func (starkCurve *StarkCurve) GenerateKeyV3(rand io.Reader) (priv []byte, x, y *big.Int, err error) + func (starkCurve *StarkCurve) GetYCoordinate(x *big.Int) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) IsOnCurve(x, y *big.Int) bool + func (starkCurve *StarkCurve) Marshal(x, y *big.Int) []byte + func (starkCurve *StarkCurve) ScalarBaseMult(k []byte) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) ScalarBaseMultV2(k []byte) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) ScalarBaseMultV3(k []byte) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) ScalarMult(Bx, By *big.Int, k []byte) (*big.Int, *big.Int) + func (starkCurve *StarkCurve) Unmarshal(data []byte) (x, y *big.Int) + type StarkPoints struct + ConstantPoints [][]*big.Int