pomerium/pkg/cryptutil/pseudonymize.go
Caleb Doxsey 146efc1b13
core/zero: add usage reporter (#5281)
* wip

* add response

* handle empty email

* use set, update log

* add test

* add coalesce, comments, test

* add test, fix bug

* use builtin cmp.Or

* remove wait ready call

* use api error
2024-09-12 15:45:54 -06:00

16 lines
377 B
Go

package cryptutil
import (
"crypto/hmac"
"crypto/sha256"
"encoding/base64"
"io"
)
// Pseudonymize pseudonymizes data by computing the HMAC-SHA256 of the data.
func Pseudonymize(organizationID string, data string) string {
h := hmac.New(sha256.New, []byte(organizationID))
_, _ = io.WriteString(h, data)
bs := h.Sum(nil)
return base64.StdEncoding.EncodeToString(bs)
}