package utils import ( "crypto/md5" "crypto/sha1" "encoding/hex" "fmt" ) func GetSHA1Encode(data string) string { h := sha1.New() h.Write([]byte(data)) return hex.EncodeToString(h.Sum(nil)) } func GetMD5Encode(data string) string { h := md5.New() h.Write([]byte(data)) return hex.EncodeToString(h.Sum(nil)) } func Get16MD5Encode(data string) string { return GetMD5Encode(data)[8:24] } func SignWithPassword(name, password string) string { return Get16MD5Encode(fmt.Sprintf("alist-%s-%s", password, name)) } func SignWithToken(name, token string) string { return Get16MD5Encode(fmt.Sprintf("alist-%s-%s", token, name)) }