Files
2026-10-20 11:37:25 +08:00

21 lines
458 B
Go

package jwt
import (
"crypto/rand"
"encoding/hex"
)
// ============================== 令牌标识 ==============================
// newJTI 生成令牌唯一标识
//
// 生成 16 字节随机数并转为 32 位十六进制字符串,用作黑名单键;
// 随机源读取失败时返回固定兜底值
func newJTI() string {
b := make([]byte, 16)
if _, err := rand.Read(b); err != nil {
return "jti-fallback"
}
return hex.EncodeToString(b)
}