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-0916-E4Y6236Y
Content hash
d7e1a78c6d309fcad346d87902585b6320e69dc7b341254cac7e6231f0108b14
Day recorded
2026-09-17
Articles recorded that day
13
Attestation UID
0xc7ecca8e299e46ef24d229b828425ddc4df5cbe7be90f2ed4da17d210ba98dcf
View on EAS
Transaction
0x802c4a507338c8f50008399b88a0a1cfc21449223c52c9d2999e95302a297901
View on Basescan
Stamped
18 Sept 2026

Recorded on Base using canonicalization v2 and record format v1.

How this article reaches the blockchain

It was combined with the other 12 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
0x0992d42f966846ce0180d45792d83cb78844d10587c2abd4feb08ad9ba423cee

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
    0x2026b488cbebb2f7d2e1448250f108e727653ec3868c945d526a1c21bc1649c7
    0x074694eb6f4fbad6905e118e605c690d3e3b4fbea04cd632d09629c8ae6007e9
  2. Step 2, combined with the value before it
    0x9a96b57e4c98bd03fdd781bc90d9fc9f5dae589f184f76b340febd3dea9ee453
    0xf612cc59b603b3a44071947e49f33f4163aff83b1907fbbe17e5ccd425e3bc49
  3. Step 3, combined with the value after it
    0x9360338929dedbb755b0137f2a649b65925e9a026ac11b48ace3bd09ccb54a6c
    0xf079b4aa3e8888febddac6d9c23b9a16ae9e54868fbc4964eabfcd6436ae4c94
  4. Step 4, combined with the value after it
    0x40674564e68436514f46820464afde1a925674aeae1efdd0e824500181a7c576
    0x6ef23690eec11fc122bc0db55911f59a66b93a26e4d8ba1b56f0d9067846e996

    This is the value for the whole day.

Value these steps arrive at
0x6ef23690eec11fc122bc0db55911f59a66b93a26e4d8ba1b56f0d9067846e996

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
0x6ef23690eec11fc122bc0db55911f59a66b93a26e4d8ba1b56f0d9067846e996
Read from Base
0x6ef23690eec11fc122bc0db55911f59a66b93a26e4d8ba1b56f0d9067846e996
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":"Québec City feels like stepping into another world — from the charming cobbleston…

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-0916-E4Y6236Y/canonical" | shasum -a 256

    Should print d7e1a78c6d309fcad346d87902585b6320e69dc7b341254cac7e6231f0108b14

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

    Should print 0992d42f966846ce0180d45792d83cb78844d10587c2abd4feb08ad9ba423cee

  3. 3. Combine step 1

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

    printf '01%s%s' "0992d42f966846ce0180d45792d83cb78844d10587c2abd4feb08ad9ba423cee" "2026b488cbebb2f7d2e1448250f108e727653ec3868c945d526a1c21bc1649c7" | xxd -r -p | shasum -a 256

    Should print 074694eb6f4fbad6905e118e605c690d3e3b4fbea04cd632d09629c8ae6007e9

  4. 4. Combine step 2

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

    printf '01%s%s' "9a96b57e4c98bd03fdd781bc90d9fc9f5dae589f184f76b340febd3dea9ee453" "074694eb6f4fbad6905e118e605c690d3e3b4fbea04cd632d09629c8ae6007e9" | xxd -r -p | shasum -a 256

    Should print f612cc59b603b3a44071947e49f33f4163aff83b1907fbbe17e5ccd425e3bc49

  5. 5. Combine step 3

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

    printf '01%s%s' "f612cc59b603b3a44071947e49f33f4163aff83b1907fbbe17e5ccd425e3bc49" "9360338929dedbb755b0137f2a649b65925e9a026ac11b48ace3bd09ccb54a6c" | xxd -r -p | shasum -a 256

    Should print f079b4aa3e8888febddac6d9c23b9a16ae9e54868fbc4964eabfcd6436ae4c94

  6. 6. Combine step 4

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

    printf '01%s%s' "f079b4aa3e8888febddac6d9c23b9a16ae9e54868fbc4964eabfcd6436ae4c94" "40674564e68436514f46820464afde1a925674aeae1efdd0e824500181a7c576" | xxd -r -p | shasum -a 256

    Should print 6ef23690eec11fc122bc0db55911f59a66b93a26e4d8ba1b56f0d9067846e996

  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/0xc7ecca8e299e46ef24d229b828425ddc4df5cbe7be90f2ed4da17d210ba98dcf

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

Read the specification