Verify

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-0930-TF3JPLGW
Content hash
7090f2859e8c1fa2c7deacd7c8bc2c84583cd9f4d0925b2ad942bf65869b1ebd
Day recorded
2026-10-01
Articles recorded that day
19
Attestation UID
0x603b46532a7efbd9420f294207f0abcd39e475cccc5bcbbe0e361a4bb85dbbbe
View on EAS
Transaction
0x542521066dc4058a3602b27ff9baa48863be20de6eaa6baaadb6df2c602e64ab
View on Basescan
Stamped
2 Oct 2026

Recorded on Base using canonicalization v2 and record format v1.

How this article reaches the blockchain

It was combined with the other 18 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
0x0af37ac719cc1d52e8ddad9262ee5aa9d7a45a6de4acbb78ce082f06008ebc25

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
    0x070906ab5c359f3cbe442c030726c74926525a95f78d0a28d11e05922bfa5503
    0xcfcdb118b5b6a03136b2fa25d7473edf04d4234d31b6cc775240a378ade08aa6
  2. Step 2, combined with the value before it
    0x24c648d11003b55e4dcbc7aa666949eff562dff9c0598011cf68e21b0a6c8fd9
    0x2e082d1aa420cbd652c110cda0f521687c258392077db5dbf470140edb847c34
  3. Step 3, combined with the value before it
    0x0ab328c5b83176bf187c863d77c2c89688477cf558273880911733051b6287cc
    0xfb1af2902d2398d75ebcddae6fd629a2a64746c29c4a7449e07bad3292332261
  4. Step 4, combined with the value before it
    0x787621a4178b6e49933122f88a9ce82eac89c191e91b57f0fa099d31def8f00b
    0xa572e1caf0ceea7eeefbfdc95285c283f2e0c69a76251d97d02813de8af7832b
  5. Step 5, combined with the value after it
    0xcf24b85b1c54001ae98242451fdf6ac7d16199d8241d31c4592832adbcb4f53c
    0x20f71ac084da418fd1d5b2ebebba09656abbfd62201c9e167d4ca5a15ba514be

    This is the value for the whole day.

Value these steps arrive at
0x20f71ac084da418fd1d5b2ebebba09656abbfd62201c9e167d4ca5a15ba514be

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
0x20f71ac084da418fd1d5b2ebebba09656abbfd62201c9e167d4ca5a15ba514be
Read from Base
0x20f71ac084da418fd1d5b2ebebba09656abbfd62201c9e167d4ca5a15ba514be
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":"TheTravelEdit","position":1,"role":"solo","weight":1.0000}],"body":{"content":[{"content":[{"text":"Popular attractions are often quieter, temperatures may be more comfortable, and …

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-0930-TF3JPLGW/canonical" | shasum -a 256

    Should print 7090f2859e8c1fa2c7deacd7c8bc2c84583cd9f4d0925b2ad942bf65869b1ebd

  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-0930-TF3JPLGW CONTENT=7090f2859e8c1fa2c7deacd7c8bc2c84583cd9f4d0925b2ad942bf65869b1ebd DIGEST=$(printf '%s' "$STAMP" | shasum -a 256 | cut -d' ' -f1) printf '00%s%s' "$DIGEST" "$CONTENT" | xxd -r -p | shasum -a 256

    Should print 0af37ac719cc1d52e8ddad9262ee5aa9d7a45a6de4acbb78ce082f06008ebc25

  3. 3. Combine step 1

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

    printf '01%s%s' "0af37ac719cc1d52e8ddad9262ee5aa9d7a45a6de4acbb78ce082f06008ebc25" "070906ab5c359f3cbe442c030726c74926525a95f78d0a28d11e05922bfa5503" | xxd -r -p | shasum -a 256

    Should print cfcdb118b5b6a03136b2fa25d7473edf04d4234d31b6cc775240a378ade08aa6

  4. 4. Combine step 2

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

    printf '01%s%s' "24c648d11003b55e4dcbc7aa666949eff562dff9c0598011cf68e21b0a6c8fd9" "cfcdb118b5b6a03136b2fa25d7473edf04d4234d31b6cc775240a378ade08aa6" | xxd -r -p | shasum -a 256

    Should print 2e082d1aa420cbd652c110cda0f521687c258392077db5dbf470140edb847c34

  5. 5. Combine step 3

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

    printf '01%s%s' "0ab328c5b83176bf187c863d77c2c89688477cf558273880911733051b6287cc" "2e082d1aa420cbd652c110cda0f521687c258392077db5dbf470140edb847c34" | xxd -r -p | shasum -a 256

    Should print fb1af2902d2398d75ebcddae6fd629a2a64746c29c4a7449e07bad3292332261

  6. 6. Combine step 4

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

    printf '01%s%s' "787621a4178b6e49933122f88a9ce82eac89c191e91b57f0fa099d31def8f00b" "fb1af2902d2398d75ebcddae6fd629a2a64746c29c4a7449e07bad3292332261" | xxd -r -p | shasum -a 256

    Should print a572e1caf0ceea7eeefbfdc95285c283f2e0c69a76251d97d02813de8af7832b

  7. 7. Combine step 5

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

    printf '01%s%s' "a572e1caf0ceea7eeefbfdc95285c283f2e0c69a76251d97d02813de8af7832b" "cf24b85b1c54001ae98242451fdf6ac7d16199d8241d31c4592832adbcb4f53c" | xxd -r -p | shasum -a 256

    Should print 20f71ac084da418fd1d5b2ebebba09656abbfd62201c9e167d4ca5a15ba514be

  8. 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/0x603b46532a7efbd9420f294207f0abcd39e475cccc5bcbbe0e361a4bb85dbbbe

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

Read the specification