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-0922-FBEXGMPJ
Content hash
17455a7cf7d85d16b669cd0839b2fec52d9796977b4604450797e5d1ac9cfdd9
Day recorded
2026-09-23
Articles recorded that day
19
Attestation UID
0x312f5bdaee9c1cd4c9c9e451ce2d932f82aa65985854eb05f9075f80314e1b63
View on EAS
Transaction
0x54b4b79e498e2ec45d4be92b4c1c5b8f94b2c646cefaf982166895ba22ef85c1
View on Basescan
Stamped
23 Sept 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
0x0925e65574a4af9f166bb2b71d044fc007c4a606d497e823db56f7e93d626792

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 before it
    0xcb4320988300d52011a2287a051fbe137d99c87c4db53fb23a3dca376fcac6ab
    0x1f1065d26345a458bbb410407d1f6f7a782d253587da4ebb2f973ec126c54a59
  2. Step 2, combined with the value before it
    0x945df52d6e1e555b5564a37a87554ac276b2ac98127b9eaacaff26f74d57c36c
    0x5ab3ad9ad20d8452ad1e5c597bfd6bccb3211f321fdd780431011cbfc90f1194
  3. Step 3, combined with the value before it
    0xee984bb7ff48aefe9c7e7da82ba0b8ae598afa7819c7fa982c47be37f5613bd4
    0x4be71e2b9fb83530c4a209f1bd3a792d9708748cfb7d4c6d07cad2bb9b0f9854
  4. Step 4, combined with the value after it
    0x3faa6df09366d7ee5ff95f70459f23ca502d10650176da7c4b4541197f2214d3
    0xe63d808641c9100111b6b6585a9ed386e34c5f36ce79c50f14b6aaf0618b12fe
  5. Step 5, combined with the value after it
    0x7a88f62292afb2658d20a5063a2b18d13343fa8e26ae33cb4daa3b0a0c688944
    0x08de2d0ad5fb90d3e053eb878d60fbda4d2fb97afd72ecdf81de0214801fd41d

    This is the value for the whole day.

Value these steps arrive at
0x08de2d0ad5fb90d3e053eb878d60fbda4d2fb97afd72ecdf81de0214801fd41d

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
0x08de2d0ad5fb90d3e053eb878d60fbda4d2fb97afd72ecdf81de0214801fd41d
Read from Base
0x08de2d0ad5fb90d3e053eb878d60fbda4d2fb97afd72ecdf81de0214801fd41d
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":"simple_recipes_daily","position":1,"role":"solo","weight":1.0000}],"body":{"content":[{"content":[{"marks":[{"type":"bold"}],"text":"Ingredients","type":"text"}],"type":"paragraph"}…

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

    Should print 17455a7cf7d85d16b669cd0839b2fec52d9796977b4604450797e5d1ac9cfdd9

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

    Should print 0925e65574a4af9f166bb2b71d044fc007c4a606d497e823db56f7e93d626792

  3. 3. Combine step 1

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

    printf '01%s%s' "cb4320988300d52011a2287a051fbe137d99c87c4db53fb23a3dca376fcac6ab" "0925e65574a4af9f166bb2b71d044fc007c4a606d497e823db56f7e93d626792" | xxd -r -p | shasum -a 256

    Should print 1f1065d26345a458bbb410407d1f6f7a782d253587da4ebb2f973ec126c54a59

  4. 4. Combine step 2

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

    printf '01%s%s' "945df52d6e1e555b5564a37a87554ac276b2ac98127b9eaacaff26f74d57c36c" "1f1065d26345a458bbb410407d1f6f7a782d253587da4ebb2f973ec126c54a59" | xxd -r -p | shasum -a 256

    Should print 5ab3ad9ad20d8452ad1e5c597bfd6bccb3211f321fdd780431011cbfc90f1194

  5. 5. Combine step 3

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

    printf '01%s%s' "ee984bb7ff48aefe9c7e7da82ba0b8ae598afa7819c7fa982c47be37f5613bd4" "5ab3ad9ad20d8452ad1e5c597bfd6bccb3211f321fdd780431011cbfc90f1194" | xxd -r -p | shasum -a 256

    Should print 4be71e2b9fb83530c4a209f1bd3a792d9708748cfb7d4c6d07cad2bb9b0f9854

  6. 6. Combine step 4

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

    printf '01%s%s' "4be71e2b9fb83530c4a209f1bd3a792d9708748cfb7d4c6d07cad2bb9b0f9854" "3faa6df09366d7ee5ff95f70459f23ca502d10650176da7c4b4541197f2214d3" | xxd -r -p | shasum -a 256

    Should print e63d808641c9100111b6b6585a9ed386e34c5f36ce79c50f14b6aaf0618b12fe

  7. 7. Combine step 5

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

    printf '01%s%s' "e63d808641c9100111b6b6585a9ed386e34c5f36ce79c50f14b6aaf0618b12fe" "7a88f62292afb2658d20a5063a2b18d13343fa8e26ae33cb4daa3b0a0c688944" | xxd -r -p | shasum -a 256

    Should print 08de2d0ad5fb90d3e053eb878d60fbda4d2fb97afd72ecdf81de0214801fd41d

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

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

Read the specification