1
0
mirror of https://github.com/mainflux/mainflux.git synced 2025-05-06 19:29:15 +08:00
Dušan Borovčanin 8b94199785
Update dependencies (#1564)
Signed-off-by: dusanb94 <dusan.borovcanin@mainflux.com>
2022-02-12 19:07:48 +01:00

30 lines
491 B
Go

package message
import (
"crypto/rand"
"encoding/hex"
"hash/crc64"
)
type Token []byte
func (t Token) String() string {
return hex.EncodeToString(t)
}
func (t Token) Hash() uint64 {
return crc64.Checksum(t, crc64.MakeTable(crc64.ISO))
}
// GetToken generates a random token by a given length
func GetToken() (Token, error) {
b := make(Token, 8)
_, err := rand.Read(b)
// Note that err == nil only if we read len(b) bytes.
if err != nil {
return nil, err
}
return b, nil
}