OAuthProvider::generateToken
import (
"crypto/sha512"
"encoding/base64"
"strings"
)
func hashMiaoSpeed(token, request string) string {
buildTokens := append([]string{token}, strings.Split(strings.TrimSpace(BUILDTOKEN), "|")...)
hasher := sha512.New()
hasher.Write([]byte(request))
for _, t := range buildTokens {
if t == "" {
// unsafe, please make sure not to let token segment be empty
t = "SOME_TOKEN"
}
hasher.Write(hasher.Sum([]byte(t)))
}
return base64.URLEncoding.EncodeToString(hasher.Sum(nil))
|