server/pkg/tool/cipher.go
Chang lue Tsen 8addcc584b init: 1.0.0
2025-04-25 12:08:29 +09:00

20 lines
394 B
Go

package tool
import (
"crypto/hmac"
"crypto/sha256"
"encoding/hex"
)
// GenerateCipher 根据公钥生成固定长度密文
func GenerateCipher(serverKey string, length int) string {
h := hmac.New(sha256.New, []byte(serverKey))
hash := h.Sum(nil)
hashStr := hex.EncodeToString(hash)
// Prevent overflow
if length > len(hashStr) {
length = len(hashStr)
}
return hashStr[:length]
}