Documentation ¶
Index ¶
- Constants
- func Blake2b(data, personal []byte, size int) []byte
- func Blake2b256(data []byte) []byte
- func CShake256(data, personal []byte, size int) []byte
- func Fnv1(u, v uint32) uint32
- func Fnv1Uint64(u, v uint64) uint64
- func Fnv1a(u, v uint32) uint32
- func FnvHash(mix []uint32, data []uint32)
- func Keccak256(b []byte) []byte
- func Keccak512(b []byte) []byte
- func KeccakF800(state *[25]uint32)
- func SipBlock48(siphashKeys [4]uint64, edge uint64) uint64
- func SipNode24(edgeMask uint64, siphashKeys [4]uint64, edge, uorv uint64) uint64
- func SipNode24Legacy(edgeMask uint64, siphashKeys [4]uint64, edge, uorv uint64) uint64
- type Hasher
- type SipBlockFunc
- type SipHasher
- type SipNodeFunc
- type Xoshiro256PlusPlusHasher
Constants ¶
View Source
const (
FnvPrime = 0x01000193
)
Variables ¶
This section is empty.
Functions ¶
func Blake2b256 ¶
func Fnv1 ¶
See https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function#FNV-1_hash.
func Fnv1Uint64 ¶ added in v0.3.2
func Fnv1a ¶
See https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function#FNV-1a_hash.
func KeccakF800 ¶
func KeccakF800(state *[25]uint32)
func SipBlock48 ¶ added in v0.4.1
Types ¶
type Hasher ¶
hasher is a repetitive hasher allowing the same hash data structures to be reused between hash runs instead of requiring new ones to be created.
func NewKeccak256Hasher ¶
func NewKeccak256Hasher() Hasher
func NewKeccak512Hasher ¶
func NewKeccak512Hasher() Hasher
type SipBlockFunc ¶ added in v0.4.1
type SipHasher ¶ added in v0.3.3
type SipHasher struct {
// contains filtered or unexported fields
}
func NewSipHasher ¶ added in v0.3.3
type Xoshiro256PlusPlusHasher ¶ added in v0.4.3
type Xoshiro256PlusPlusHasher struct {
// contains filtered or unexported fields
}
func NewXoshiro256PlusPlusHasher ¶ added in v0.4.3
func NewXoshiro256PlusPlusHasher(s0, s1, s2, s3 uint64) Xoshiro256PlusPlusHasher
func (*Xoshiro256PlusPlusHasher) Next ¶ added in v0.4.3
func (h *Xoshiro256PlusPlusHasher) Next() uint64
Click to show internal directories.
Click to hide internal directories.