Verified on BaseThis article has not changed since Vitahash recorded it on the Base blockchain. Everything below can be checked without taking our word for any of it.
Stamp ID STAMP-2026-0925-3IYT42VQ Content hash 9859ec8bf9f355f91ec5d59f8a66a01cd34702efe722e54098680263cf48509e Articles recorded that day 20 Attestation UID 0xeca6201b1118aac08c5e90852685560efcd865d7b92d8dd755536bd900121d44 View on EAS Transaction 0x8773b62d3c7fe3c39180795fdbf303e39a988305339fd36d0f85017972c0bcd5 View on Basescan Recorded on Base using canonicalization v2 and record format v1.
How this article reaches the blockchain It was combined with the other 19 articles published that day, one step at a time, until the whole day became a single value. That one value is what Vitahash wrote to the blockchain. Change a single character of this article and the starting value below changes, so none of the steps would land on the recorded one.
Starting value for this article 0xb70f198d43e94b590fae2e4ffc2305f54ca48a72f79f59fdcb22b186b0871147 Built from this article's content hash and its stamp ID, as sha256(0x00 || sha256(utf8(stampId)) || contentHash).
Step 1, combined with the value after it 0x554f81f0b4c08b6e7550297057b2cb95b8f1867ca94f3ba47930555d3f68e611 0x7df4fdde79c643bd212c9692f79e04b0d28a0007a8db33908f67bfa6f9d88f6f Step 2, combined with the value before it 0xa54266c0d76afb9792c321c511e86ea6e111f012921efaa60fabd6950094e20c 0x1c5d1cde4ed9dea8d73f35b4cc2ee74b79eb30e07b51291d2e3481404139ab29 Step 3, combined with the value after it 0x05967956cb96f55c72efd784ed2ba4c9b76cbc3de44da55badc6e61268baf8ba 0x97c1335bc96ed40e4db026f00b899cdeec1bc932550d0e2bfbb6dc3f3ccb2bfb Step 4, combined with the value after it 0xeef2fc0c052d8690543265b12fc46b2f16349bfff03b4fc8e4347b463c876bba 0xc1d5d231b268f46906a4da83c556378223bf6096ded3827d3cd87ed49e6fd45c Step 5, combined with the value after it 0x338087d57076385362f8b946b1aeb173dce23ad0a0d0e2a793f84da82df6b81f 0x8b2476a9102c6f8fddeaea8b440d390005d5d4f4ebd31a5e0f185dd330f209ab This is the value for the whole day.
Value these steps arrive at 0x8b2476a9102c6f8fddeaea8b440d390005d5d4f4ebd31a5e0f185dd330f209ab What the blockchain says Two values, reached two different ways. The one above was worked out from this article. The one below was read back from the record on Base.
Worked out from this article 0x8b2476a9102c6f8fddeaea8b440d390005d5d4f4ebd31a5e0f185dd330f209ab They are the same value, so this article was published that day with exactly the text above.
Check it yourself Every number on this page came from Vitahash. Copy the article's exact text below and check it against the hash above, using any SHA-256 tool.
{"abstract":null,"agreement":false,"authors":[{"identity":"ThePetTales","position":1,"role":"solo","weight":1.0000}],"body":{"content":[{"attrs":{"alt":"cats","src":"https://media.vitahash.org/articles/e4f0ce3f-dc5a-4c22-92e9-4ce0a2d638b2/3…Copy this text, paste it into any SHA-256 tool, and compare the result with the hash shown above. If the two match, this is exactly what Vitahash recorded.
For a technical reader: the terminal route1. Hash the article yourself This downloads the exact text Vitahash hashed, in the exact form it hashed it, and hashes it again on your machine. Nothing Vitahash wrote runs here.
curl -s "https://api.vitahash.org/api/verify/STAMP-2026-0925-3IYT42VQ/canonical" | shasum -a 256Should print 9859ec8bf9f355f91ec5d59f8a66a01cd34702efe722e54098680263cf48509e
2. Build this article's starting value The stamp ID is folded in with the hash, so one article's record can never stand in for another's.
STAMP=STAMP-2026-0925-3IYT42VQ
CONTENT=9859ec8bf9f355f91ec5d59f8a66a01cd34702efe722e54098680263cf48509e
DIGEST=$(printf '%s' "$STAMP" | shasum -a 256 | cut -d' ' -f1)
printf '00%s%s' "$DIGEST" "$CONTENT" | xxd -r -p | shasum -a 256Should print b70f198d43e94b590fae2e4ffc2305f54ca48a72f79f59fdcb22b186b0871147
3. Combine step 1 The value you have goes first, then the published value.
printf '01%s%s' "b70f198d43e94b590fae2e4ffc2305f54ca48a72f79f59fdcb22b186b0871147" "554f81f0b4c08b6e7550297057b2cb95b8f1867ca94f3ba47930555d3f68e611" | xxd -r -p | shasum -a 256Should print 7df4fdde79c643bd212c9692f79e04b0d28a0007a8db33908f67bfa6f9d88f6f
4. Combine step 2 The published value goes first, then the value you have.
printf '01%s%s' "a54266c0d76afb9792c321c511e86ea6e111f012921efaa60fabd6950094e20c" "7df4fdde79c643bd212c9692f79e04b0d28a0007a8db33908f67bfa6f9d88f6f" | xxd -r -p | shasum -a 256Should print 1c5d1cde4ed9dea8d73f35b4cc2ee74b79eb30e07b51291d2e3481404139ab29
5. Combine step 3 The value you have goes first, then the published value.
printf '01%s%s' "1c5d1cde4ed9dea8d73f35b4cc2ee74b79eb30e07b51291d2e3481404139ab29" "05967956cb96f55c72efd784ed2ba4c9b76cbc3de44da55badc6e61268baf8ba" | xxd -r -p | shasum -a 256Should print 97c1335bc96ed40e4db026f00b899cdeec1bc932550d0e2bfbb6dc3f3ccb2bfb
6. Combine step 4 The value you have goes first, then the published value.
printf '01%s%s' "97c1335bc96ed40e4db026f00b899cdeec1bc932550d0e2bfbb6dc3f3ccb2bfb" "eef2fc0c052d8690543265b12fc46b2f16349bfff03b4fc8e4347b463c876bba" | xxd -r -p | shasum -a 256Should print c1d5d231b268f46906a4da83c556378223bf6096ded3827d3cd87ed49e6fd45c
7. Combine step 5 The value you have goes first, then the published value.
printf '01%s%s' "c1d5d231b268f46906a4da83c556378223bf6096ded3827d3cd87ed49e6fd45c" "338087d57076385362f8b946b1aeb173dce23ad0a0d0e2a793f84da82df6b81f" | xxd -r -p | shasum -a 256Should print 8b2476a9102c6f8fddeaea8b440d390005d5d4f4ebd31a5e0f185dd330f209ab
8. Compare with the blockchain The last value above is what the whole day came to. Read the record on Base and check its merkleRoot field is the same. Vitahash is not involved in this step at all.
https://base.easscan.org/attestation/view/0xeca6201b1118aac08c5e90852685560efcd865d7b92d8dd755536bd900121d44The rules these commands follow are written down in full, so anyone can reimplement them.
Read the specification