Hash StringsΒΆ
Certain zb functions take a hash string argument. Hash strings are the result of a cryptographic hash function and are used to ensure integrity of an output.
Examples include:
sha256:ee4c78f4b1915c7dafb0d55e8cd6f20fe82396a21a6ab2add9bb879fb9301bc2
sha1:da39a3ee5e6b4b0d3255bfef95601890afd80709
sha256-7kx49LGRXH2vsNVejNbyD+gjlqIaarKt2buHn7kwG8I=
Syntax
The syntax of a hash string in Augmented Backus-Naur Form (as described in RFC 5234 and RFC 7405) is as follows:
hash-string = hash-algo ":" (base16-value / base32-value / base64-value)
/ sri
sri = hash-algo "-" base64-value
hash-algo = %s"md5" / %s"sha1" / %s"sha256" / %s"sha512"
base16-value = 1*(2HEXDIG)
base32-value = 2*base32-digit
base32-digit = DIGIT / %x61-64 / %x66-6E / %x70-73 / %x76-7A
; lowercase alphanumeric except "e", "o", "t", or "u".
base64-value = *(4base64-digit) 2base64-digit (2base64-digit / (base64-digit / "=") "=")
base64-digit = ALPHA / DIGIT / "+" / "/"
The sri
rule is a strict subset of a Subresource Integrity hash expression.