mirror of
https://github.com/go-gitea/gitea.git
synced 2026-08-25 04:49:42 +09:00
Only made some necessary changes:
1. remove `GOEXPERIMENT`, only use jsonv2
1. `make fmt`
* `SigningKey` and `Signature` were affected due to some bugs in the
toolchain, so rewrote them
1. remove or fix fragile magic numbers and strings
* the outputs of image/gzip/zlib packages are different
1. update "nolint" comments for the changed lint behaviors
1. add `tls.MLKEM1024`
21 lines
599 B
Go
21 lines
599 B
Go
// Copyright 2023 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package avatar
|
|
|
|
import (
|
|
"crypto/sha256"
|
|
"encoding/hex"
|
|
"strconv"
|
|
)
|
|
|
|
// HashAvatar generates a unique string for input ID and data.
|
|
// Because avatar is per-user, one user deletes their avatar should not affect another user who uses the same avatar.
|
|
func HashAvatar(uniqueID int64, data []byte) string {
|
|
h := sha256.New()
|
|
h.Write([]byte(strconv.FormatInt(uniqueID, 10)))
|
|
h.Write([]byte{'-'}) // make sure the bytes in data won't conflict with ID
|
|
h.Write(data)
|
|
return hex.EncodeToString(h.Sum(nil))
|
|
}
|