mirror of
https://github.com/TeaOSLab/EdgeAPI.git
synced 2026-01-03 22:06:36 +08:00
增加用户身份认证相关接口
This commit is contained in:
21
internal/utils/sha1.go
Normal file
21
internal/utils/sha1.go
Normal file
@@ -0,0 +1,21 @@
|
||||
// Copyright 2022 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
||||
|
||||
package utils
|
||||
|
||||
import (
|
||||
"crypto/sha1"
|
||||
"fmt"
|
||||
"github.com/iwind/TeaGo/rands"
|
||||
"github.com/iwind/TeaGo/types"
|
||||
"sync/atomic"
|
||||
"time"
|
||||
)
|
||||
|
||||
const sha1RandomPrefix = "SHA1_RANDOM"
|
||||
|
||||
var sha1Id int64 = 0
|
||||
|
||||
func Sha1RandomString() string {
|
||||
var s = sha1RandomPrefix + types.String(time.Now().UnixNano()) + "@" + types.String(rands.Int64()) + "@" + types.String(atomic.AddInt64(&sha1Id, 1))
|
||||
return fmt.Sprintf("%x", sha1.Sum([]byte(s)))
|
||||
}
|
||||
16
internal/utils/sha1_test.go
Normal file
16
internal/utils/sha1_test.go
Normal file
@@ -0,0 +1,16 @@
|
||||
// Copyright 2022 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
||||
|
||||
package utils_test
|
||||
|
||||
import (
|
||||
"github.com/TeaOSLab/EdgeAPI/internal/utils"
|
||||
"github.com/iwind/TeaGo/types"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestSha1Random(t *testing.T) {
|
||||
for i := 0; i < 10; i++ {
|
||||
var s = utils.Sha1RandomString()
|
||||
t.Log("["+types.String(len(s))+"]", s)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user