Verified on Base

This 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-1106-R5EVDY2Y
Content hash
1b2f4abbb98c40c3b8f4fea1c444db643816640abb996beb6353a9da4cd38839
Day recorded
2026-11-07
Articles recorded that day
15
Attestation UID
0xd9793b77ba6b93783bcd5b0a359aaf1a7dee2e68a083fadff2ae4ee8a5871e4c
View on EAS
Transaction
0x35ed9a40d9a3b461b78b4731280547047519bbb2a3e24003beb379fc5ef38813
View on Basescan
Stamped
7 Nov 2026

Recorded on Base using canonicalization v2 and record format v1.

How this article reaches the blockchain

It was combined with the other 14 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
0xc0325663780e689dc45915a6036a96fa475801f8159c944827bc065f6cd535d4

Built from this article's content hash and its stamp ID, as sha256(0x00 || sha256(utf8(stampId)) || contentHash).

  1. Step 1, combined with the value after it
    0x8824848f5184e172519837e271bd74caf06d3deac025b447610ad5f0f399ec56
    0x51734c387e4dc1a023e9f29ccf914856313bbba295cee3d5a4ab004c66d9643b
  2. Step 2, combined with the value after it
    0x76a7f14d5c1852f06ccbec0cb5920a251625932235dc2a67099b80eb743dd09a
    0x0d850f446699081cf7cedce7029f3db0558a4cfe2c36aa42e78c07790eba7f2c
  3. Step 3, combined with the value before it
    0x9a59921f2e27b79985e3cf66d61fcf491537a99066a6e8e28d82b45ef008d866
    0x3a1f5efbf571f237939e6f56cf06693a664dfee09c4563ab88af10d1650a51ae
  4. Step 4, combined with the value before it
    0x5d636f88f0b1927ea271d4422d94dd394c2b112107a20025f4b5399f89482ee5
    0x48f47fdbe0ece678c7d5078af9cd7e1430e1b809937216598ff09da61fbe69df

    This is the value for the whole day.

Value these steps arrive at
0x48f47fdbe0ece678c7d5078af9cd7e1430e1b809937216598ff09da61fbe69df

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
0x48f47fdbe0ece678c7d5078af9cd7e1430e1b809937216598ff09da61fbe69df
Read from Base
0x48f47fdbe0ece678c7d5078af9cd7e1430e1b809937216598ff09da61fbe69df
Read it yourself on EAS

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":[{"content":[{"text":"Here's a fascinating fact about dogs. Some dogs can detect distant thunderstorms be…

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 route
  1. 1. 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-1106-R5EVDY2Y/canonical" | shasum -a 256

    Should print 1b2f4abbb98c40c3b8f4fea1c444db643816640abb996beb6353a9da4cd38839

  2. 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-1106-R5EVDY2Y CONTENT=1b2f4abbb98c40c3b8f4fea1c444db643816640abb996beb6353a9da4cd38839 DIGEST=$(printf '%s' "$STAMP" | shasum -a 256 | cut -d' ' -f1) printf '00%s%s' "$DIGEST" "$CONTENT" | xxd -r -p | shasum -a 256

    Should print c0325663780e689dc45915a6036a96fa475801f8159c944827bc065f6cd535d4

  3. 3. Combine step 1

    The value you have goes first, then the published value.

    printf '01%s%s' "c0325663780e689dc45915a6036a96fa475801f8159c944827bc065f6cd535d4" "8824848f5184e172519837e271bd74caf06d3deac025b447610ad5f0f399ec56" | xxd -r -p | shasum -a 256

    Should print 51734c387e4dc1a023e9f29ccf914856313bbba295cee3d5a4ab004c66d9643b

  4. 4. Combine step 2

    The value you have goes first, then the published value.

    printf '01%s%s' "51734c387e4dc1a023e9f29ccf914856313bbba295cee3d5a4ab004c66d9643b" "76a7f14d5c1852f06ccbec0cb5920a251625932235dc2a67099b80eb743dd09a" | xxd -r -p | shasum -a 256

    Should print 0d850f446699081cf7cedce7029f3db0558a4cfe2c36aa42e78c07790eba7f2c

  5. 5. Combine step 3

    The published value goes first, then the value you have.

    printf '01%s%s' "9a59921f2e27b79985e3cf66d61fcf491537a99066a6e8e28d82b45ef008d866" "0d850f446699081cf7cedce7029f3db0558a4cfe2c36aa42e78c07790eba7f2c" | xxd -r -p | shasum -a 256

    Should print 3a1f5efbf571f237939e6f56cf06693a664dfee09c4563ab88af10d1650a51ae

  6. 6. Combine step 4

    The published value goes first, then the value you have.

    printf '01%s%s' "5d636f88f0b1927ea271d4422d94dd394c2b112107a20025f4b5399f89482ee5" "3a1f5efbf571f237939e6f56cf06693a664dfee09c4563ab88af10d1650a51ae" | xxd -r -p | shasum -a 256

    Should print 48f47fdbe0ece678c7d5078af9cd7e1430e1b809937216598ff09da61fbe69df

  7. 7. 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/0xd9793b77ba6b93783bcd5b0a359aaf1a7dee2e68a083fadff2ae4ee8a5871e4c

The rules these commands follow are written down in full, so anyone can reimplement them.

Read the specification