ario_server/pkg/tool/cipher.go
2025-10-10 07:13:36 -07: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]
}