github.com/shogo82148/std@v1.22.1-0.20240327122250-4e474527810c/crypto/internal/boring/hmac.go (about)

     1  // Copyright 2017 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  //go:build boringcrypto && linux && (amd64 || arm64) && !android && !msan
     6  
     7  package boring
     8  
     9  import (
    10  	"github.com/shogo82148/std/hash"
    11  )
    12  
    13  // NewHMAC returns a new HMAC using BoringCrypto.
    14  // The function h must return a hash implemented by
    15  // BoringCrypto (for example, h could be boring.NewSHA256).
    16  // If h is not recognized, NewHMAC returns nil.
    17  func NewHMAC(h func() hash.Hash, key []byte) hash.Hash