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-4AVWLQLI
Content hash
61b27a5a29c475f762e949978496108812f07f3152bec86e3bd68cca7e4cc81f
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
0x631d05a546095cbe70b3a09afbf05cde9251746789d84caeedfdf7d04f01c78b

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
    0x2b1f248f9abe30bd307bf1b0204b33fe81874e0d64833b5f6fd9448e6abe239c
    0xb244badd5cbb05038be33080b41601fe1b8069907a641ea3313ba5c14e1a7ac6
  2. Step 2, combined with the value before it
    0x1f031fb8dc59ef06cd83add63bf7d1adc761507bed317582f1a1938dceb60a1e
    0xd843ea74735d9aa6b2442489d7db588630224b860a750321b1bad81ffc3696b7
  3. Step 3, combined with the value after it
    0x94d78ad379bd8b1407d52d61869fb53b8d34c3df57a04026e13aa7ee3277301d
    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":"financeguy","position":1,"role":"solo","weight":1.0000}],"body":{"content":[{"content":[{"text":"๐Ÿš€ The next crypto bull market may be getting started.","type":"text"}],"type":"paragโ€ฆ

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-4AVWLQLI/canonical" | shasum -a 256

    Should print 61b27a5a29c475f762e949978496108812f07f3152bec86e3bd68cca7e4cc81f

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

    Should print 631d05a546095cbe70b3a09afbf05cde9251746789d84caeedfdf7d04f01c78b

  3. 3. Combine step 1

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

    printf '01%s%s' "631d05a546095cbe70b3a09afbf05cde9251746789d84caeedfdf7d04f01c78b" "2b1f248f9abe30bd307bf1b0204b33fe81874e0d64833b5f6fd9448e6abe239c" | xxd -r -p | shasum -a 256

    Should print b244badd5cbb05038be33080b41601fe1b8069907a641ea3313ba5c14e1a7ac6

  4. 4. Combine step 2

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

    printf '01%s%s' "1f031fb8dc59ef06cd83add63bf7d1adc761507bed317582f1a1938dceb60a1e" "b244badd5cbb05038be33080b41601fe1b8069907a641ea3313ba5c14e1a7ac6" | xxd -r -p | shasum -a 256

    Should print d843ea74735d9aa6b2442489d7db588630224b860a750321b1bad81ffc3696b7

  5. 5. Combine step 3

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

    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