Guide

Inscriptions

How your media is stored onchain, and what fits.

Supported media#

CategoryFile typesIn the app
Imageimage/png, image/jpeg, image/gif, image/webpCompressed to fit 2 chunks (46,000 bytes). GIFs are never re-encoded.
Videovideo/mp4, video/webmTrimmed to 3 seconds and compressed to fit 4 chunks (92,000 bytes).
Audioaudio/mpeg, audio/wav, audio/oggStored as is.
Websitetext/htmlOne self-contained HTML file. Stored as is.

Limits#

  • 1 to 4 files per token, and at most one file per category.
  • Each file can be up to 256,000 bytes onchain.
  • Each chunk holds up to 23,000 bytes. A staged file can use up to 12 chunks.
  • The app accepts images and videos up to 100 MB before compression. Audio and HTML must already be 256 KB or less.
  • A GIF over 46,000 bytes is rejected. Re-encoding would drop its animation, so attach a smaller GIF.

How the bytes are stored#

Scrible splits each file into chunks of up to 23,000 bytes. Each chunk becomes its own small contract. The contract code is a 0x00 (STOP) byte followed by your bytes. The STOP byte means the chunk can never run as code.

The token records, for each file:

  • the MIME type
  • the size in bytes
  • the list of chunk addresses
  • the Keccak-256 digest of the full file

At launch, the token rebuilds each file from its chunks and checks the digest. A mismatch reverts the launch.

Reading media back#

The app reads media straight from the chain. It concatenates the chunks, hashes the result, and compares it with the stored digest before it shows anything. The token page shows Verified against its onchain Keccak-256 fingerprint when the check passes.

To check a file yourself, see Verify an inscription.

Websites run isolated#

An inscribed website runs in a sandboxed frame with a strict content policy.

  • Inline scripts and inline styles run. External scripts and stylesheets do not load.
  • Images and media load only from data: and blob: URLs.
  • Network requests, forms, and navigation are blocked.
  • The page cannot read Scrible or talk to your wallet.

Build the page as one file. Inline your CSS, scripts, and images.

Permanence#

Inscriptions cannot be changed or removed

Once a chunk confirms, it stays onchain. Nobody can edit or delete it, including you and the Scrible team. Inscribed media is public. Do not upload anything you do not have the right to publish.

Wallets and explorers cannot read bytecode media. At review, Scrible makes a logo from your media and pins it to IPFS. The token stores the metadata link. See Token metadata.

The inscription stays the source of truth. The logo is a convenience copy.

esc