Skip to main content

Fingerprint

Usage​

Fingerprinting and SRI can be applied to any asset file using resources.Fingerprint which takes two arguments, the resource object and an optional hash algorithm.

The default hash algorithm is sha256. Other available algorithms are sha384 and (as of Hugo 0.55) sha512 and md5.

Any so processed asset will bear a .Data.Integrity property containing an integrity string, which is made up of the name of the hash algorithm, one hyphen and the base64-encoded hash sum.

{{ $js := resources.Get "js/global.js" }}
{{ $secureJS := $js | resources.Fingerprint "sha512" }}
<script src="{{ $secureJS.Permalink }}" integrity="{{ $secureJS.Data.Integrity }}"></script>