package crypto

import "github.com/gohugoio/hugo/tpl/crypto"

Package crypto provides template functions for cryptographic operations.

Index

Types

type Namespace

type Namespace struct{}

Namespace provides template functions for the "crypto" namespace.

func New

func New() *Namespace

New returns a new instance of the crypto-namespaced template functions.

func (*Namespace) HMAC

func (ns *Namespace) HMAC(h any, k any, m any, e ...any) (string, error)

HMAC returns a cryptographic hash that uses a key to sign a message.

func (*Namespace) Hash

func (ns *Namespace) Hash(args ...any) (string, error)

Hash returns the hex-encoded checksum of v using the given algorithm; one of md5, sha1, sha256 (the default), sha384 or sha512.

The supported algorithms match those used for the Subresource Integrity (SRI) hash in .Data.Integrity on fingerprinted resources, so an SRI hash can be constructed by combining this with encoding.HexDecode and encoding.Base64Encode.

func (*Namespace) MD5

func (ns *Namespace) MD5(v any) (string, error)

MD5 hashes the v and returns its MD5 checksum.

func (*Namespace) SHA1

func (ns *Namespace) SHA1(v any) (string, error)

SHA1 hashes v and returns its SHA1 checksum.

func (*Namespace) SHA256

func (ns *Namespace) SHA256(v any) (string, error)

SHA256 hashes v and returns its SHA256 checksum.

Source Files

crypto.go init.go

Version
v0.165.0 (latest)
Published
Aug 12, 2026
Platform
linux/amd64
Imports
12 packages
Last checked
3 hours ago

Tools for package owners.