Wire bytes
Header offsets, footer fields, media codecs, index credentials, cryptographic construction, and limits.
Read the format specification →FOR DEVELOPERS / PROTOCOL
An illustrated map of the v1 document, media carriers, resource verification, and access paths. This page explains the system to humans; the full format specification defines the exact byte contract, field encodings, and limits.
The compiler starts with an ordinary site and an app. It places the app index in the site's discovery favicon by default, then assigns app resource parts to existing media files. The host serves ordinary pages, the favicon, media, and the site-owned runtime routes. A Reader or browser runtime uses the index to locate and check every part before exposing a reconstructed resource.
The /amoosed.com/app/* paths are virtual: the same-origin worker serves them from checked carrier bytes. A Node.js, .NET, or native Reader can fetch resources without installing the browser runtime. An overlay alone cannot install the browser route; the host must also serve the site-owned runtime. See the host contract.
An AMW payload starts with a 4,096-byte fixed header. Its manifest is UTF-8 JSON with exactly two contiguous v1 sections: bootstrap and document. The header supplies lengths, offsets, and SHA-256 digests for the manifest and bootstrap. The manifest supplies section digests. AMW integers are unsigned little endian; PNG and MP4 container fields keep their native big-endian encoding.
| Structure | Key fields | Why it matters |
|---|---|---|
| Header, 4,096 bytes | AMW1DOC\0, version 1, payload length, manifest and bootstrap offsets, SHA-256 digests | Gives a bounded, versioned way to find and validate the first sections. |
| Section manifest | amw.sections.v1; bootstrap then document; absolute payload offsets, lengths, SHA-256 | Separates a short intro from the complete document without guessing boundaries. |
| Universal footer, 128 bytes | AMW1TAIL, original length, payload offset and length, complete hashes; v2 also stores a truncated bootstrap-prefix digest | Allows suffix discovery and a checked progressive intro in v2. |
A footer v2 Reader may show the intro after validating its anchored prefix and section digests. Footer v1 and bare .amw readers wait for the complete document check first. The full payload digest remains mandatory before accepting the full document. See the exact header and footer tables.
The default app data carrier appends encoded parts and an AMW1DATA footer to an existing opaque file. PNG chunk and MP4 UUID modes place data inside a native container structure and retain a data footer. Pixel, tone, and frame modes encode data in image pixels or audio samples; their offsets refer to decoded payloads, so readers fetch and decode the complete media before checking shards.
| Mode | Placement | Reader behavior |
|---|---|---|
append | Original bytes + contiguous app data + 128-byte data footer | Read exact byte ranges; verify stored part hashes. |
png-chunk, mp4-uuid | PNG amWd chunk or MP4 top-level uuid box + data footer | Read byte-addressed parts inside the inserted container data. |
png-pixels | Low RGB bits of an opaque PNG; no data footer | Fetch whole lossless image; recover and hash pixel payload and shards. |
wav-tones | Repeated audible tones in a rewritten PCM WAV | Fetch whole WAV; demodulate, verify packets and shards. |
frame-luma | Repeated sparse red low bits in a lossless PNG frame | Fetch whole frame; majority vote and hash the recovered small shard. |
Serve carrier bytes unchanged. Image optimization, resizing, audio conversion, transcoding, or stripping a trailing footer can break recovery. The media profile does not grant access or prove publisher identity. For exact capacity limits, offsets, and legacy variants, use the full format specification and MEDIA-TRANSPORT.md.
For the default hosted profile, the favicon carries a public AMW index and an AES-CTR data key. The index maps each virtual resource to ordered carrier parts. The Reader checks stored bytes against the index before decoding, checks any member ciphertext before using its plaintext, then checks the assembled resource's length and SHA-256.
/favicon.ico; an explicit carrier URL can also be opened.SHA-256 detects mismatch against the fetched index; it is not a publisher signature if an attacker can replace both the index and the carriers. HTTPS authenticates transport. The Reader does not fetch an unrelated original media prefix just to check its footer hash during a range read. See browser runtime behavior and host byte and route requirements.
The hosted favicon profile makes the index and its AES-CTR key public. This transform obscures casual plaintext inspection of detached carrier parts; it is not secrecy. An external-index edition leaves the ordinary favicon unchanged and encrypts the complete index with AES-256-GCM in a byte-addressable first data carrier. The user receives a separate .amwkey, packed ICO, or equivalent AMQ1 token containing the index key and carrier locator.
A member edition may mix public and protected resources. Member parts use AES-256-GCM and a separate member key; the website CTR layer is applied afterward in the carrier. An external index credential is saved in origin-scoped IndexedDB only after the worker authenticates the current site's encrypted index and app identity. A member key is retained only in volatile worker memory after a protected chunk is authenticated; a worker restart may require entry again. A QR, URL token, or key file can be forwarded; old complete releases remain accessible to holders of matching old credentials. Read the access model and rotation limits before designing an entitlement flow.
Header offsets, footer fields, media codecs, index credentials, cryptographic construction, and limits.
Read the format specification →Same-origin boot and worker behavior, route mapping, HTTP ranges, and byte-preserving deployment.
Read the host contract →Reader methods, native public headers, and integration examples for products.
Choose an SDK →Public protocol specifications and developer examples are distributed under the protocol and developer examples license; package-specific terms control each package.