Read the record
The player checks the testnet identity and reads the video’s size, format, chunk count, and file fingerprint from its smart contract.
A working blockchain experiment
The video itself lives in a Koinos smart contract. Load its pieces directly from testnet, verify the file, and watch it here.
Ready to read from testnet
0 / 61Each segment lights up after its chunk passes verification.
Download verified MP4Your browser will assemble this video from the blockchain.
61 pieces. One complete video.01 / THE PROCESS
A video file is a sequence of bytes. This example stores those bytes in numbered chunks, then lets your browser put them back together.
The player checks the testnet identity and reads the video’s size, format, chunk count, and file fingerprint from its smart contract.
The browser requests all 61 chunks from a Koinos node. Each chunk is checked against its expected SHA-256 fingerprint.
The chunks are joined in order. The complete file is checked again before the browser creates a local video URL and enables playback.
The complete MP4, including audio, the file metadata and hashes, and the storage contract’s code. There is no external MP4 URL in this player.
This HTML page, the explanation, and the playback interface. A node’s RPC service supplies blockchain data; your device reconstructs and decodes the video.
02 / WHY IT MATTERS
The same stored file can be retrieved by another compatible viewer using the network identity and contract address below.
If this website disappears, someone can build another reader or run this HTML elsewhere. Recovery still needs access to a node that preserves and serves the contract’s data.
The expected hash is included in this page and committed by the contract. The player refuses bytes that do not match. This verifies file integrity; the browser does not independently validate blockchain consensus.
Chunks are accepted only when their content matches the contract’s committed hashes. Stored chunks cannot be replaced, and the contract rejects code upgrades. The final seal closes uploads.
Writing the video consumed testnet Mana for storage, bandwidth, and computation. Reading uses a node’s infrastructure and can be rate limited. Larger videos increase both upload and retrieval demands.
03 / INSPECT THE EXAMPLE
The file has 994,458 bytes: 60 full 16 KiB chunks and one final 11,418-byte chunk. The browser checks the exact byte count and hash before playback.
15fEBCFEY3z7koxR1kPPCdnFdQC1mKBeVn3f8dcd5f00aab2df944f9f7cec60c7759bcf9e79048f977a574c270a381cfdb3EiAIKVvm6-V2qmsmUvPJy09vCCLbtn9lHFpwrJbcTIEWRQ==get_manifest: 0x21f169eb
get_chunk: 0x92b1fc90chain.read_contract0x1220ceb11e95bda8f31dc11c0f692817d01b252c684d72cb51ffcbf51098c4cc1477You can use another HTTPS endpoint for this same testnet. It must allow browser requests. The player always checks the pinned chain identity and file hash.