Versions in this module Expand all Collapse all v0 v0.3.0 Oct 17, 2022 Changes in this version + const RFC5054Group1024 + const RFC5054Group1536 + const RFC5054Group2048 + const RFC5054Group3072 + const RFC5054Group4096 + const RFC5054Group6144 + const RFC5054Group8192 + var Hash = srpHash + var KnownGroups = make(map[int]*Group) + var MinExponentSize = 32 + var MinGroupSize = 2048 + func KDF256(salt []byte, UUID string, OS string, clientID string, clientSecret string) (x *big.Int) + func KDFRFC5054(salt []byte, username string, password string) (x *big.Int) + func NumberFromString(s string) *big.Int + func PreparePassword(s string) string + type Group struct + ExponentSize int + Label string + func (g *Group) Generator() *big.Int + func (g *Group) IsZero(x *big.Int) bool + func (g *Group) LittleK(hashName string) *big.Int + func (g *Group) MarshalBinary() (_ []byte, err error) + func (g *Group) N() *big.Int + func (g *Group) PaddedBytes(x *big.Int) []byte + func (g *Group) Reduce(x *big.Int) *big.Int + func (g *Group) UnmarshalBinary(data []byte) (err error) + type SRP struct + func NewClientStd(group *Group, x *big.Int) *SRP + func NewSRPClient(group *Group, x, k *big.Int) *SRP + func NewSRPServer(group *Group, v, k *big.Int) *SRP + func NewServerStd(group *Group, v *big.Int) *SRP + func (s *SRP) ClientProof() ([]byte, error) + func (s *SRP) EphemeralPublic() *big.Int + func (s *SRP) GoodClientProof(proof []byte) bool + func (s *SRP) GoodServerProof(salt []byte, uname string, proof []byte) bool + func (s *SRP) IsPublicValid(AorB *big.Int) bool + func (s *SRP) Key() ([]byte, error) + func (s *SRP) M(salt []byte, uname string) ([]byte, error) + func (s *SRP) MarshalBinary() (binaryEncoding []byte, err error) + func (s *SRP) SetOthersPublic(AorB *big.Int) error + func (s *SRP) UnmarshalBinary(data []byte) (err error) + func (s *SRP) Verifier() (*big.Int, error)