feat: 从黄果 NET hgdjnet-server 9bfbafe 导入 HKDJ 官网后端
来源:hgdjnet-server 9bfbafe10d417deea959bd53117bc88a10e60a83 项目身份 HKDJ / JHA-216,独立官网仓库,Jenkins 守卫键 hkdjnet 测试目录 /server/hkdj_net,App/Web API 30331/30332 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
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[:])
|
||||
}
|
||||
Reference in New Issue
Block a user