type hash.Hash
128 uses
hash (current package)
hash.go#L26: type Hash interface {
hash.go#L50: Hash
hash.go#L56: Hash
hash.go#L70: Hash
hash/fnv
fnv.go#L72: func New128() hash.Hash {
fnv.go#L81: func New128a() hash.Hash {
crypto
crypto.go#L123: var hashes = make([]func() hash.Hash, maxHash)
crypto.go#L127: func (h Hash) New() hash.Hash {
crypto.go#L145: func RegisterHash(h Hash, f func() hash.Hash) {
crypto/hkdf
hkdf.go#L27: func Extract[H hash.Hash](h func() H, secret, salt []byte) ([]byte, error) {
hkdf.go#L42: func Expand[H hash.Hash](h func() H, pseudorandomKey []byte, info string, keyLength int) ([]byte, error) {
hkdf.go#L59: func Key[Hash hash.Hash](h func() Hash, secret, salt []byte, info string, keyLength int) ([]byte, error) {
hkdf.go#L73: func checkFIPS140Only[Hash hash.Hash](h func() Hash, key []byte) error {
crypto/hmac
hmac.go#L39: func New(h func() hash.Hash, key []byte) hash.Hash {
crypto/internal/boring
notboring.go#L37: func NewSHA1() hash.Hash { panic("boringcrypto: not available") }
notboring.go#L38: func NewSHA224() hash.Hash { panic("boringcrypto: not available") }
notboring.go#L39: func NewSHA256() hash.Hash { panic("boringcrypto: not available") }
notboring.go#L40: func NewSHA384() hash.Hash { panic("boringcrypto: not available") }
notboring.go#L41: func NewSHA512() hash.Hash { panic("boringcrypto: not available") }
notboring.go#L49: func NewHMAC(h func() hash.Hash, key []byte) hash.Hash { panic("boringcrypto: not available") }
notboring.go#L77: func DecryptRSAOAEP(h, mgfHash hash.Hash, priv *PrivateKeyRSA, ciphertext, label []byte) ([]byte, error) {
notboring.go#L86: func EncryptRSAOAEP(h, mgfHash hash.Hash, pub *PublicKeyRSA, msg, label []byte) ([]byte, error) {
crypto/internal/fips140/ecdsa
ecdsa.go#L267: func Sign[P Point[P], H hash.Hash](c *Curve[P], h func() H, priv *PrivateKey, rand io.Reader, hash []byte) (*Signature, error) {
ecdsa.go#L300: func SignDeterministic[P Point[P], H hash.Hash](c *Curve[P], h func() H, priv *PrivateKey, hash []byte) (*Signature, error) {
hmacdrbg.go#L52: func newDRBG[H hash.Hash](hash func() H, entropy, nonce []byte, s personalizationString) *hmacDRBG {
hmacdrbg.go#L125: func TestingOnlyNewDRBG[H hash.Hash](hash func() H, entropy, nonce []byte, s []byte) *hmacDRBG {
crypto/internal/fips140/hkdf
hkdf.go#L13: func Extract[H hash.Hash](h func() H, secret, salt []byte) []byte {
hkdf.go#L27: func Expand[H hash.Hash](h func() H, pseudorandomKey []byte, info string, keyLen int) []byte {
hkdf.go#L54: func Key[H hash.Hash](h func() H, secret, salt []byte, info string, keyLen int) []byte {
crypto/internal/fips140/hmac
hmac.go#L35: outer, inner hash.Hash
hmac.go#L168: func New[H hash.Hash](h func() H, key []byte) *HMAC {
crypto/internal/fips140/rsa
pkcs1v22.go#L52: func mgf1XOR(out []byte, hash hash.Hash, seed []byte) {
pkcs1v22.go#L71: func emsaPSSEncode(mHash []byte, emBits int, salt []byte, hash hash.Hash) ([]byte, error) {
pkcs1v22.go#L148: func emsaPSSVerify(mHash, em []byte, emBits, sLen int, hash hash.Hash) error {
pkcs1v22.go#L254: func PSSMaxSaltLength(pub *PublicKey, hash hash.Hash) (int, error) {
pkcs1v22.go#L268: func SignPSS(rand io.Reader, priv *PrivateKey, hash hash.Hash, hashed []byte, saltLength int) ([]byte, error) {
pkcs1v22.go#L315: func VerifyPSS(pub *PublicKey, hash hash.Hash, digest []byte, sig []byte) error {
pkcs1v22.go#L320: func VerifyPSSWithSaltLength(pub *PublicKey, hash hash.Hash, digest []byte, sig []byte, saltLength int) error {
pkcs1v22.go#L327: func verifyPSS(pub *PublicKey, hash hash.Hash, digest []byte, sig []byte, saltLength int) error {
pkcs1v22.go#L363: func checkApprovedHash(hash hash.Hash) {
pkcs1v22.go#L372: func EncryptOAEP(hash, mgfHash hash.Hash, random io.Reader, pub *PublicKey, msg []byte, label []byte) ([]byte, error) {
pkcs1v22.go#L415: func DecryptOAEP(hash, mgfHash hash.Hash, priv *PrivateKey, ciphertext []byte, label []byte) ([]byte, error) {
crypto/internal/fips140/tls12
tls12.go#L17: func PRF[H hash.Hash](hash func() H, secret []byte, label string, seed []byte, keyLen int) []byte {
tls12.go#L28: func pHash[H hash.Hash](hash func() H, result, secret, seed []byte) {
tls12.go#L52: func MasterSecret[H hash.Hash](hash func() H, preMasterSecret, transcript []byte) []byte {
crypto/internal/fips140/tls13
tls13.go#L20: func ExpandLabel[H hash.Hash](hash func() H, secret []byte, label string, context []byte, length int) []byte {
tls13.go#L42: func extract[H hash.Hash](hash func() H, newSecret, currentSecret []byte) []byte {
tls13.go#L49: func deriveSecret[H hash.Hash](hash func() H, secret []byte, label string, transcript hash.Hash) []byte {
tls13.go#L70: hash func() hash.Hash
tls13.go#L73: func NewEarlySecret[H hash.Hash](h func() H, psk []byte) *EarlySecret {
tls13.go#L76: hash: func() hash.Hash { return h() },
tls13.go#L86: func (s *EarlySecret) ClientEarlyTrafficSecret(transcript hash.Hash) []byte {
tls13.go#L92: hash func() hash.Hash
tls13.go#L105: func (s *HandshakeSecret) ClientHandshakeTrafficSecret(transcript hash.Hash) []byte {
tls13.go#L111: func (s *HandshakeSecret) ServerHandshakeTrafficSecret(transcript hash.Hash) []byte {
tls13.go#L117: hash func() hash.Hash
tls13.go#L130: func (s *MasterSecret) ClientApplicationTrafficSecret(transcript hash.Hash) []byte {
tls13.go#L136: func (s *MasterSecret) ServerApplicationTrafficSecret(transcript hash.Hash) []byte {
tls13.go#L142: func (s *MasterSecret) ResumptionMasterSecret(transcript hash.Hash) []byte {
tls13.go#L148: hash func() hash.Hash
tls13.go#L153: func (s *MasterSecret) ExporterMasterSecret(transcript hash.Hash) *ExporterMasterSecret {
tls13.go#L162: func (s *EarlySecret) EarlyExporterMasterSecret(transcript hash.Hash) *ExporterMasterSecret {
crypto/internal/fips140hash
hash.go#L23: func Unwrap(h hash.Hash) hash.Hash {
hash.go#L32: func UnwrapNew[Hash hash.Hash](newHash func() Hash) func() hash.Hash {
hash.go#L33: return func() hash.Hash { return Unwrap(newHash()) }
crypto/internal/fips140only
fips140only.go#L21: func ApprovedHash(h hash.Hash) bool {
crypto/md5
md5.go#L116: func New() hash.Hash {
crypto/rsa
fips.go#L193: func EncryptOAEP(hash hash.Hash, random io.Reader, pub *PublicKey, msg []byte, label []byte) ([]byte, error) {
fips.go#L243: func DecryptOAEP(hash hash.Hash, random io.Reader, priv *PrivateKey, ciphertext []byte, label []byte) ([]byte, error) {
fips.go#L248: func decryptOAEP(hash, mgfHash hash.Hash, priv *PrivateKey, ciphertext []byte, label []byte) ([]byte, error) {
crypto/sha1
sha1.go#L115: func New() hash.Hash {
crypto/sha256
sha256.go#L34: func New() hash.Hash {
sha256.go#L45: func New224() hash.Hash {
crypto/sha3
sha3.go#L17: crypto.RegisterHash(crypto.SHA3_224, func() hash.Hash { return New224() })
sha3.go#L18: crypto.RegisterHash(crypto.SHA3_256, func() hash.Hash { return New256() })
sha3.go#L19: crypto.RegisterHash(crypto.SHA3_384, func() hash.Hash { return New384() })
sha3.go#L20: crypto.RegisterHash(crypto.SHA3_512, func() hash.Hash { return New512() })
crypto/sha512
sha512.go#L49: func New() hash.Hash {
sha512.go#L60: func New512_224() hash.Hash {
sha512.go#L68: func New512_256() hash.Hash {
sha512.go#L76: func New384() hash.Hash {
crypto/tls
auth.go#L82: func signedMessage(sigHash crypto.Hash, context string, transcript hash.Hash) []byte {
cipher_suites.go#L147: mac func(key []byte) hash.Hash
cipher_suites.go#L430: func macSHA1(key []byte) hash.Hash {
cipher_suites.go#L442: func macSHA256(key []byte) hash.Hash {
cipher_suites.go#L590: hash.Hash
cipher_suites.go#L606: func newConstantTimeHash(h func() hash.Hash) func() hash.Hash {
cipher_suites.go#L608: return func() hash.Hash {
cipher_suites.go#L614: func tls10MAC(h hash.Hash, out, seq, header, data, extra []byte) []byte {
conn.go#L175: mac hash.Hash
conn.go#L181: nextMac hash.Hash // next MAC algorithm
conn.go#L207: func (hc *halfConn) prepareCipherSpec(version uint16, cipher any, mac hash.Hash) {
handshake_client.go#L246: innerTranscript hash.Hash
handshake_client.go#L865: var clientHash, serverHash hash.Hash
handshake_client.go#L1325: func computeAndUpdatePSK(m *clientHelloMsg, binderKey []byte, transcript hash.Hash, finishedHash func([]byte, hash.Hash) []byte) error {
handshake_client_tls13.go#L38: transcript hash.Hash
handshake_server.go#L815: var clientHash, serverHash hash.Hash
handshake_server_tls13.go#L37: transcript hash.Hash
handshake_server_tls13.go#L61: transcript hash.Hash
handshake_server_tls13.go#L474: func cloneHash(in hash.Hash, h crypto.Hash) hash.Hash {
key_schedule.go#L36: func (c *cipherSuiteTLS13) finishedHash(baseKey []byte, transcript hash.Hash) []byte {
key_schedule.go#L45: func (c *cipherSuiteTLS13) exportKeyingMaterial(s *tls13.MasterSecret, transcript hash.Hash) func(string, []byte, int) ([]byte, error) {
prf.go#L30: func pHash(result, secret, seed []byte, hash func() hash.Hash) {
prf.go#L73: func prf12(hashFunc func() hash.Hash) prfFunc {
prf.go#L172: client hash.Hash
prf.go#L173: server hash.Hash
prf.go#L176: clientMD5 hash.Hash
prf.go#L177: serverMD5 hash.Hash
go.pact.im/x/extraio
hash.go#L11: h hash.Hash
hash.go#L19: func NewStrippedHashReader(h hash.Hash, n int64) io.Reader {
hash.go#L24: func NewHashReader(h hash.Hash) *HashReader {
hash.go#L33: func (r *HashReader) Hash() hash.Hash {
golang.org/x/crypto/argon2
blake2b.go#L17: var b2 hash.Hash
golang.org/x/crypto/blake2b
blake2b.go#L81: func New512(key []byte) (hash.Hash, error) { return newDigest(Size, key) }
blake2b.go#L85: func New384(key []byte) (hash.Hash, error) { return newDigest(Size384, key) }
blake2b.go#L89: func New256(key []byte) (hash.Hash, error) { return newDigest(Size256, key) }
blake2b.go#L99: func New(size int, key []byte) (hash.Hash, error) { return newDigest(size, key) }
register.go#L13: newHash256 := func() hash.Hash {
register.go#L17: newHash384 := func() hash.Hash {
register.go#L22: newHash512 := func() hash.Hash {