This guide shows how to prove you authored any digital file—PDF, code, manuscript—without publicly releasing its contents.
We use SHA‑256 checksums and a simple smart contract to create an immutable, timestamped record of your work.
sha256sum myfile.pdf
Copy the 64‑hex output and prefix with 0x
.
registerWork(checksum)
.
This stores your address and block.timestamp
.
// SPDX-License-Identifier: MIT pragma solidity ^0.8.2; contract AuthorshipClaim { /// @notice Publish only an event: off‑chain you read block.timestamp event WorkRegistered( bytes32 indexed checksum, address indexed author ); /// @notice Stamp a hash to chain in the cheapest way possible function registerWork(bytes32 checksum) external { emit WorkRegistered(checksum, msg.sender); } }
Later, recompute the checksum and call getWork(checksum)
or isRegistered(checksum)
.
You’ll see the original registrant and timestamp.
This method provides a tamper‑proof, timestamped proof of authorship without exposing your file’s contents.