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-0921-HL75AX7R
Content hash
da0b5be4112316f477fb2e50c01df87ff1a5d8269ee13ca4510bb9969801e366
Day recorded
2026-09-22
Articles recorded that day
17
Attestation UID
0x1f213f55bd670a855ae8b0870fc67759ee11c02ef4667cb86d3970e0edbd0eb8
View on EAS
Transaction
0xe4d0221e56b55109b987db243cd4023fc0a1f16f550d08d3f92dcde459962b57
View on Basescan
Stamped
22 Sept 2026

Recorded on Base using canonicalization v2 and record format v1.

How this article reaches the blockchain

It was combined with the other 16 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
0xaf6297f0ddbf7329fd41cef27c2c687e738d678c21ed982dc78d287c387eb9db

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
    0x0c09f2920af412c98c80d7cecfea4c7beb701a973a06bf1a3cde29ef9303206f
    0x22663f62e389db617f47b38632d27a9bbc81ac46ad773c3c90623d757c28310b
  2. Step 2, combined with the value before it
    0x2241db38656cebcf79333311158a0685367df4274778fc286a3c092a4cd2cea0
    0x94d78ad379bd8b1407d52d61869fb53b8d34c3df57a04026e13aa7ee3277301d
  3. Step 3, combined with the value before it
    0xd843ea74735d9aa6b2442489d7db588630224b860a750321b1bad81ffc3696b7
    0x0eca22b26d0db70c42dae0cb682df52b3837567a10d18bbf2462382e322043e2
  4. Step 4, combined with the value after it
    0xaa31964092c5a622211e75a067e0a32f54c3b3084584ac01ae79b4d7e82943db
    0xecd2ef55fbb24edea8bd5bc2eb5728a495d728bc26b616121ed7132f32678248
  5. Step 5, combined with the value after it
    0xc7e683881a4958e97b0fb8413d4370ce39396ec6307425e2078cc2e56c2cdcc8
    0xf36382898b35edd4c52ff783e6706cfa388193f7a151e26f06bb88aef136e7ae

    This is the value for the whole day.

Value these steps arrive at
0xf36382898b35edd4c52ff783e6706cfa388193f7a151e26f06bb88aef136e7ae

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
0xf36382898b35edd4c52ff783e6706cfa388193f7a151e26f06bb88aef136e7ae
Read from Base
0xf36382898b35edd4c52ff783e6706cfa388193f7a151e26f06bb88aef136e7ae
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":"Did you know some frogs can freeze solid during winter and thaw out in spring—then …

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-0921-HL75AX7R/canonical" | shasum -a 256

    Should print da0b5be4112316f477fb2e50c01df87ff1a5d8269ee13ca4510bb9969801e366

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

    Should print af6297f0ddbf7329fd41cef27c2c687e738d678c21ed982dc78d287c387eb9db

  3. 3. Combine step 1

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

    printf '01%s%s' "af6297f0ddbf7329fd41cef27c2c687e738d678c21ed982dc78d287c387eb9db" "0c09f2920af412c98c80d7cecfea4c7beb701a973a06bf1a3cde29ef9303206f" | xxd -r -p | shasum -a 256

    Should print 22663f62e389db617f47b38632d27a9bbc81ac46ad773c3c90623d757c28310b

  4. 4. Combine step 2

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

    printf '01%s%s' "2241db38656cebcf79333311158a0685367df4274778fc286a3c092a4cd2cea0" "22663f62e389db617f47b38632d27a9bbc81ac46ad773c3c90623d757c28310b" | xxd -r -p | shasum -a 256

    Should print 94d78ad379bd8b1407d52d61869fb53b8d34c3df57a04026e13aa7ee3277301d

  5. 5. Combine step 3

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

    printf '01%s%s' "d843ea74735d9aa6b2442489d7db588630224b860a750321b1bad81ffc3696b7" "94d78ad379bd8b1407d52d61869fb53b8d34c3df57a04026e13aa7ee3277301d" | xxd -r -p | shasum -a 256

    Should print 0eca22b26d0db70c42dae0cb682df52b3837567a10d18bbf2462382e322043e2

  6. 6. Combine step 4

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

    printf '01%s%s' "0eca22b26d0db70c42dae0cb682df52b3837567a10d18bbf2462382e322043e2" "aa31964092c5a622211e75a067e0a32f54c3b3084584ac01ae79b4d7e82943db" | xxd -r -p | shasum -a 256

    Should print ecd2ef55fbb24edea8bd5bc2eb5728a495d728bc26b616121ed7132f32678248

  7. 7. Combine step 5

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

    printf '01%s%s' "ecd2ef55fbb24edea8bd5bc2eb5728a495d728bc26b616121ed7132f32678248" "c7e683881a4958e97b0fb8413d4370ce39396ec6307425e2078cc2e56c2cdcc8" | xxd -r -p | shasum -a 256

    Should print f36382898b35edd4c52ff783e6706cfa388193f7a151e26f06bb88aef136e7ae

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

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

Read the specification