Byte evidence laboratory · tools, not magic
The digest begins before the algorithm.
A hash consumes bytes. If a checksum does not match, first prove that both systems hashed the same encoding, normalization, newline sequence, and file contents—then compare algorithms and output notation.
Characters are encoded into bytes
The selected ArrayBuffer is transferred directly
Visually similar text can have different Unicode normalization or invisible trailing bytes. The receipt records the source, not just the result.
Two instruments
Digest and HMAC answer different questions.
PLAIN DIGEST
message → H(message)Anyone with the message can reproduce it.
Integrity comparison only
KEYED HMAC
secret + message → HMACOnly parties sharing the secret can reproduce it.
Integrity + shared-secret authentication
Algorithm status rack
Output width is not the whole security story.
SHA-256256 bitsCURRENTGeneral integrity and content-addressing
SHA-384384 bitsCURRENTProtocol or policy compatibility
SHA-512512 bitsCURRENTWide SHA-2 output
SHA-1160 bitsLEGACYCompatibility checks only; collision-vulnerable
MD5128 bitsLEGACYOld checksum compatibility; collision-vulnerable
Mismatch autopsy
Same-looking input, different evidence.
Newline
LF 0ACRLF 0D 0AUnicode
é · U+00E9e + ◌́ · U+0065 U+0301Text encoding
UTF-8UTF-16LERepresentation
hex lowercaseBase64 with paddingFile handling
raw bytestext-mode conversionDigest
complete valuetruncated prefixVerification receipt
Compare the complete normalized representation.
A match ties the local bytes to the expected value you supplied. Publisher identity still depends on how that expected value was authenticated.