Use crypto/rand for token string generation

Signed-off-by: Sean Du <do4suki@gmail.com>
This commit is contained in:
2026-04-28 11:44:56 +08:00
parent 150ce674ad
commit 666388a5ed
+10 -8
View File
@@ -4,14 +4,13 @@
package utils
import (
"crypto/rand"
"encoding/hex"
"encoding/json"
"fmt"
"log"
"math/rand"
"os"
"sync"
"time"
)
var (
@@ -51,13 +50,16 @@ func XOR(s1, s2 []byte) []byte {
return res
}
func RandomStr(len int) string {
rand.Seed(time.Now().UnixNano())
mRand := make([]byte, len)
rand.Read(mRand)
mRandStr := hex.EncodeToString(mRand)[0:len]
func RandomStr(length int) string {
if length <= 0 {
return ""
}
return mRandStr
mRand := make([]byte, length)
if _, err := rand.Read(mRand); err != nil {
return ""
}
return hex.EncodeToString(mRand)[:length]
}
func ToJSON(data any) string {