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>