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-FGZTULJF
Content hash
81e0896b2bc08fe0fbd085391e96fe2d5454de41dbb3321df8bc814072ac6ef1
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
0x0a1df534c465f09d9ca4703e2eef53add256375b8e3b39ab7848b08f135c3f5a

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
    0x5404be4be67e41a263912caf998114222d60ca95d170f9216a4cc4c6ef5dce28
    0xda8fc2402fd61a8ba00be6ff22cdca41b9c3906c15e7bff7f7e70ec27d467ade
  2. Step 2, combined with the value before it
    0x8592e803d59f457295504f2c8c572b9f4bee8621f89eb209aa75e701288a6fad
    0x40d6abd9880e85daf66fb10db9f264cd25bc42786f13e6c09e177a86e9d1ce55
  3. Step 3, combined with the value before it
    0x5f4c78878c433a20977edba36ce661e2bfc4a13b082d50cb735666d4d977c052
    0x5d636f88f0b1927ea271d4422d94dd394c2b112107a20025f4b5399f89482ee5
  4. Step 4, combined with the value after it
    0x3a1f5efbf571f237939e6f56cf06693a664dfee09c4563ab88af10d1650a51ae
    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":"RoboNextGen","position":1,"role":"solo","weight":1.0000}],"body":{"content":[{"content":[{"text":"A growing debate is happening in schools across the country as educators try to lim…

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

    Should print 81e0896b2bc08fe0fbd085391e96fe2d5454de41dbb3321df8bc814072ac6ef1

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

    Should print 0a1df534c465f09d9ca4703e2eef53add256375b8e3b39ab7848b08f135c3f5a

  3. 3. Combine step 1

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

    printf '01%s%s' "0a1df534c465f09d9ca4703e2eef53add256375b8e3b39ab7848b08f135c3f5a" "5404be4be67e41a263912caf998114222d60ca95d170f9216a4cc4c6ef5dce28" | xxd -r -p | shasum -a 256

    Should print da8fc2402fd61a8ba00be6ff22cdca41b9c3906c15e7bff7f7e70ec27d467ade

  4. 4. Combine step 2

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

    printf '01%s%s' "8592e803d59f457295504f2c8c572b9f4bee8621f89eb209aa75e701288a6fad" "da8fc2402fd61a8ba00be6ff22cdca41b9c3906c15e7bff7f7e70ec27d467ade" | xxd -r -p | shasum -a 256

    Should print 40d6abd9880e85daf66fb10db9f264cd25bc42786f13e6c09e177a86e9d1ce55

  5. 5. Combine step 3

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

    printf '01%s%s' "5f4c78878c433a20977edba36ce661e2bfc4a13b082d50cb735666d4d977c052" "40d6abd9880e85daf66fb10db9f264cd25bc42786f13e6c09e177a86e9d1ce55" | xxd -r -p | shasum -a 256

    Should print 5d636f88f0b1927ea271d4422d94dd394c2b112107a20025f4b5399f89482ee5

  6. 6. Combine step 4

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

    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