Files
2026-09-29 10:47:38 +08:00

26 lines
479 B
Go

package api_security
import (
"crypto/sha256"
"math/rand"
)
func GenerateKey(secret string) []byte {
key := sha256.Sum256([]byte(secret))
return key[:]
}
func GenerateIV(secret, salt string) []byte {
return GenerateKey(secret + salt)[:16]
}
const strPool = "012345679qwertyuioplkjhgfdsazxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM"
func GenerateIVSalt() string {
var n [16]byte
for i := 0; i < 16; i++ {
n[i] = byte(strPool[rand.Intn(len(strPool))])
}
return string(n[:])
}