type hash.Hash

198 uses

	hash (current package)
		hash.go#L26: type Hash interface {
		hash.go#L50: 	Hash
		hash.go#L56: 	Hash
		hash.go#L70: 	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/hpke
		kdf.go#L60: 	hash func() 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#L281: 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#L314: 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/pbkdf2
		pbkdf2.go#L23: func Key[Hash hash.Hash](h func() Hash, password string, salt []byte, iter, keyLength int) ([]byte, error) {

	crypto/internal/fips140/rsa
		pkcs1v22.go#L53: func mgf1XOR(out []byte, hash hash.Hash, seed []byte) {
		pkcs1v22.go#L72: func emsaPSSEncode(mHash []byte, emBits int, salt []byte, hash hash.Hash) ([]byte, error) {
		pkcs1v22.go#L149: func emsaPSSVerify(mHash, em []byte, emBits, sLen int, hash hash.Hash) error {
		pkcs1v22.go#L255: func PSSMaxSaltLength(pub *PublicKey, hash hash.Hash) (int, error) {
		pkcs1v22.go#L269: func SignPSS(rand io.Reader, priv *PrivateKey, hash hash.Hash, hashed []byte, saltLength int) ([]byte, error) {
		pkcs1v22.go#L316: func VerifyPSS(pub *PublicKey, hash hash.Hash, digest []byte, sig []byte) error {
		pkcs1v22.go#L321: func VerifyPSSWithSaltLength(pub *PublicKey, hash hash.Hash, digest []byte, sig []byte, saltLength int) error {
		pkcs1v22.go#L328: func verifyPSS(pub *PublicKey, hash hash.Hash, digest []byte, sig []byte, saltLength int) error {
		pkcs1v22.go#L364: func checkApprovedHash(hash hash.Hash) {
		pkcs1v22.go#L373: func EncryptOAEP(hash, mgfHash hash.Hash, random io.Reader, pub *PublicKey, msg []byte, label []byte) ([]byte, error) {
		pkcs1v22.go#L416: 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#L23: func ApprovedHash(h hash.Hash) bool {

	crypto/md5
		md5.go#L116: func New() hash.Hash {

	crypto/pbkdf2
		pbkdf2.go#L40: func Key[Hash hash.Hash](h func() Hash, password string, salt []byte, iter, keyLength int) ([]byte, error) {

	crypto/rsa
		fips.go#L194: func EncryptOAEP(hash hash.Hash, random io.Reader, pub *PublicKey, msg []byte, label []byte) ([]byte, error) {
		fips.go#L212: func encryptOAEP(hash hash.Hash, mgfHash hash.Hash, random io.Reader, pub *PublicKey, msg []byte, label []byte) ([]byte, error) {
		fips.go#L262: func DecryptOAEP(hash hash.Hash, random io.Reader, priv *PrivateKey, ciphertext []byte, label []byte) ([]byte, error) {
		fips.go#L267: 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#L112: func signedMessage(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#L214: 	innerTranscript hash.Hash
		handshake_client.go#L852: 	var clientHash, serverHash hash.Hash
		handshake_client.go#L1312: func computeAndUpdatePSK(m *clientHelloMsg, binderKey []byte, transcript hash.Hash, finishedHash func([]byte, hash.Hash) []byte) error {
		handshake_client_tls13.go#L37: 	transcript    hash.Hash
		handshake_server.go#L828: 	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#L444: func cloneHash(in hash.Hash, h crypto.Hash) hash.Hash {
		key_schedule.go#L38: func (c *cipherSuiteTLS13) finishedHash(baseKey []byte, transcript hash.Hash) []byte {
		key_schedule.go#L47: 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

	github.com/gotd/td/crypto
		sha256.go#L25: func getSHA256() hash.Hash {
		sha256.go#L26: 	h := sha256Pool.Get().(hash.Hash)

	github.com/refraction-networking/utls
		auth.go#L81: func signedMessage(sigHash crypto.Hash, context string, transcript hash.Hash) []byte {
		cipher_suites.go#L146: 	mac    func(key []byte) hash.Hash
		cipher_suites.go#L425: func macSHA1(key []byte) hash.Hash {
		cipher_suites.go#L437: func macSHA256(key []byte) hash.Hash {
		cipher_suites.go#L591: 	hash.Hash
		cipher_suites.go#L607: func newConstantTimeHash(h func() hash.Hash) func() hash.Hash {
		cipher_suites.go#L609: 	return func() hash.Hash {
		cipher_suites.go#L615: func tls10MAC(h hash.Hash, out, seq, header, data, extra []byte) []byte {
		conn.go#L178: 	mac     hash.Hash
		conn.go#L184: 	nextMac    hash.Hash // next MAC algorithm
		conn.go#L210: func (hc *halfConn) prepareCipherSpec(version uint16, cipher any, mac hash.Hash) {
		handshake_client.go#L263: 	innerTranscript hash.Hash
		handshake_client.go#L881: 	var clientHash, serverHash hash.Hash
		handshake_client.go#L1362: func computeAndUpdatePSK(m *clientHelloMsg, binderKey []byte, transcript hash.Hash, finishedHash func([]byte, hash.Hash) []byte) error {
		handshake_client_tls13.go#L41: 	transcript    hash.Hash
		handshake_server.go#L793: 	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#L473: func cloneHash(in hash.Hash, h crypto.Hash) hash.Hash {
		key_schedule.go#L37: func (c *cipherSuiteTLS13) finishedHash(baseKey []byte, transcript hash.Hash) []byte {
		key_schedule.go#L46: func (c *cipherSuiteTLS13) exportKeyingMaterial(s *tls13.MasterSecret, transcript hash.Hash) func(string, []byte, int) ([]byte, error) {
		prf.go#L31: func pHash(result, secret, seed []byte, hash func() hash.Hash) {
		prf.go#L74: func prf12(hashFunc func() hash.Hash) prfFunc {
		prf.go#L173: 	client hash.Hash
		prf.go#L174: 	server hash.Hash
		prf.go#L177: 	clientMD5 hash.Hash
		prf.go#L178: 	serverMD5 hash.Hash
		u_common.go#L733: func utlsMacSHA384(key []byte) hash.Hash {
		u_conn.go#L777: 		var clientHash, serverHash hash.Hash
		u_public.go#L57: 	Transcript    hash.Hash
		u_public.go#L509: 	Mac    func(macKey []byte) hash.Hash
		u_public.go#L552: 	Client hash.Hash
		u_public.go#L553: 	Server hash.Hash
		u_public.go#L556: 	ClientMD5 hash.Hash
		u_public.go#L557: 	ServerMD5 hash.Hash

	github.com/refraction-networking/utls/internal/hkdf
		hkdf.go#L8: func Extract[H hash.Hash](h func() H, secret, salt []byte) []byte {
		hkdf.go#L17: func Expand[H hash.Hash](h func() H, pseudorandomKey []byte, info string, keyLength int) []byte {

	github.com/refraction-networking/utls/internal/tls12
		tls12.go#L14: func PRF(hash func() hash.Hash, secret []byte, label string, seed []byte, keyLen int) []byte {
		tls12.go#L25: func pHash(hash func() hash.Hash, result, secret, seed []byte) {
		tls12.go#L49: func MasterSecret(hash func() hash.Hash, preMasterSecret, transcript []byte) []byte {

	github.com/refraction-networking/utls/internal/tls13
		tls13.go#L21: func ExpandLabel[H fips140.Hash](hash func() H, secret []byte, label string, context []byte, length int) []byte {
		tls13.go#L43: func extract[H fips140.Hash](hash func() H, newSecret, currentSecret []byte) []byte {
		tls13.go#L50: func deriveSecret[H fips140.Hash](hash func() H, secret []byte, label string, transcript fips140.Hash) []byte {
		tls13.go#L71: 	hash   func() fips140.Hash
		tls13.go#L74: func NewEarlySecret[H fips140.Hash](hash func() H, psk []byte) *EarlySecret {
		tls13.go#L77: 		hash:   func() fips140.Hash { return hash() },
		tls13.go#L87: func (s *EarlySecret) ClientEarlyTrafficSecret(transcript fips140.Hash) []byte {
		tls13.go#L93: 	hash   func() fips140.Hash
		tls13.go#L106: func (s *HandshakeSecret) ClientHandshakeTrafficSecret(transcript fips140.Hash) []byte {
		tls13.go#L112: func (s *HandshakeSecret) ServerHandshakeTrafficSecret(transcript fips140.Hash) []byte {
		tls13.go#L118: 	hash   func() fips140.Hash
		tls13.go#L131: func (s *MasterSecret) ClientApplicationTrafficSecret(transcript fips140.Hash) []byte {
		tls13.go#L137: func (s *MasterSecret) ServerApplicationTrafficSecret(transcript fips140.Hash) []byte {
		tls13.go#L143: func (s *MasterSecret) ResumptionMasterSecret(transcript fips140.Hash) []byte {
		tls13.go#L149: 	hash   func() fips140.Hash
		tls13.go#L154: func (s *MasterSecret) ExporterMasterSecret(transcript fips140.Hash) *ExporterMasterSecret {
		tls13.go#L163: func (s *EarlySecret) EarlyExporterMasterSecret(transcript fips140.Hash) *ExporterMasterSecret {
		u_tls13.go#L5: func NewEarlySecretFromSecret[H fips140.Hash](hash func() H, secret []byte) *EarlySecret {
		u_tls13.go#L8: 		hash:   func() fips140.Hash { return hash() },
		u_tls13.go#L19: func NewMasterSecretFromSecret[H fips140.Hash](hash func() H, secret []byte) *MasterSecret {
		u_tls13.go#L22: 		hash:   func() fips140.Hash { return hash() },

	golang.org/x/crypto/hkdf
		hkdf.go#L27: func Extract(hash func() hash.Hash, secret, salt []byte) []byte {
		hkdf.go#L41: 	expander hash.Hash
		hkdf.go#L90: func Expand(hash func() hash.Hash, pseudorandomKey, info []byte) io.Reader {
		hkdf.go#L97: func New(hash func() hash.Hash, secret, salt, info []byte) io.Reader {

	golang.org/x/crypto/pbkdf2
		pbkdf2.go#L23: func Key(password, salt []byte, iter, keyLen int, h func() hash.Hash) []byte {

	golang.org/x/crypto/sha3
		hashes.go#L24: func New224() hash.Hash {
		hashes.go#L35: func New256() hash.Hash {
		hashes.go#L46: func New384() hash.Hash {
		hashes.go#L57: func New512() hash.Hash {
		legacy_hash.go#L35: func NewLegacyKeccak256() hash.Hash {
		legacy_hash.go#L43: func NewLegacyKeccak512() hash.Hash {
		shake.go#L18: 	hash.Hash