blob: a0d5aa4cd5e6aff3144a002dacab54ebc5a529c9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
package auth
import (
"crypto/rand"
"crypto/sha256"
"encoding/hex"
"fmt"
)
func GenerateSessionID() (string, error) {
b := make([]byte, 32)
if _, err := rand.Read(b); err != nil {
return "", fmt.Errorf("generate session ID: %w", err)
}
return hex.EncodeToString(b), nil
}
func HashSessionID(raw string) string {
h := sha256.Sum256([]byte(raw))
return hex.EncodeToString(h[:])
}
|