ots/tplFuncs.go
Knut Ahlers 7aaf7a7f53
Generate SRI integrity hashes into html
to prevent loading of scripts which were modified on the network
transport

Signed-off-by: Knut Ahlers <knut@ahlers.me>
2018-05-05 19:08:02 +02:00

23 lines
366 B
Go

package main
import (
"crypto/sha512"
"encoding/base64"
"path"
"text/template"
)
var tplFuncs = template.FuncMap{
"SRIHash": assetSRIHash,
}
func assetSRIHash(assetName string) string {
data := MustAsset(path.Join("frontend", assetName))
h := sha512.New384()
h.Write(data)
sum := h.Sum(nil)
return "sha384-" + base64.StdEncoding.EncodeToString(sum)
}