Selling and licensing
Copyright exists from the moment you create something, in every country of the Berne Convention, without filing anything. That is generous until the day you try to sell. There is no certificate to hand over, no register to search, and — for a character in particular — not even an agreed object with edges. This page is about what a registry can make concrete, and which parts of a sale get cheaper once it has.
The gap
Copyright needs no formalities. Under the Berne Convention, protection is automatic and cannot be made conditional on registration. The United States kept a registration system, but it registers works, and its role is procedural: for US works it is a prerequisite to filing suit, and it gates statutory damages. Taiwan abolished copyright registration outright in 1998 — there is no official register left to search.
A character is not a work. Copyright attaches to the images, the model, the drawings a character appears in. A character in itself is protected only where it is distinctive enough — one prong of the test US courts apply asks whether it is “sufficiently delineated to be recognizable as the same character whenever it appears”. That is a legal restatement of the exact problem every creator already has: keeping one character recognisably itself across platforms, versions and years.
AI makes the authorship question louder. Purely machine-generated output is not protected. What is protected is the human contribution — the choices, the iterations, the rejections — and the person claiming the right is the one who has to show it.
None of this prevents a sale. It makes every sale expensive, because each buyer has to rebuild the same four missing facts from scratch: what exactly is being sold, since when, who held it, and whether any of it was rewritten yesterday.
Layer 01–03
The specification is extracted from the images you already have, then confirmed by you: silhouette, structure, surface, palette, identity markers, and the never-list. Once it is finalised the character receives a registry number of the form AVL-XXXXXX and the specification is hashed. Every later revision is registered as a new version with its own fingerprint, so the definition as it stood on any date is provable rather than remembered.
That is what turns “my character” into something with edges — the thing a contract can point at in one line instead of describing in three paragraphs that the other side will later dispute.
The public page carries identity, visible markers and the certified record. The full specification text and the per-platform prompts stay private — they are deliverables, and they transfer with the pack when a deal completes.
Layer 04
A registry that fingerprints a file proves the file existed. It does not connect that file to the character being sold — that connection sits in the registry’s own database, which is precisely the part a buyer cannot check. Half of a provenance claim is missing, and it is the half that matters in a sale.
So the anchored leaf is not the file hash. It is the hash of a small record that names both sides of the relationship:
{
"v": 1,
"type": "work_binding",
"avl_id": "AVL-2BC8GS",
"spec_hash": "2784f56b25d2ec81…",
"holder": "u_60a1771e8eeb",
"work_id": "a30615fb",
"work_sha256": "a30615fb…089374",
"media": "image",
"kind": "upload",
"rights": "own",
"claimed_created_at": "2026-03-11",
"registered_at": "2026-09-04T04:41:12Z"
}
Anyone holding that record can recompute its hash, walk the Merkle path and read the root back off the chain. What that establishes is one sentence long and worth having: this file, bound to this character at this specification version, was registered by this holder on this date.
The records are kept in an append-only registry that is not attached to any account folder. Delete the work, delete the character, close the account — the public check still answers honestly, because an on-chain record cannot be recalled and a registry that pretends otherwise is worth nothing.
Every work on a character page carries its own fingerprint. Clicking it opens the public check — no account, no sign-in.
Evidence
A binding record fixes who said what, and when. It does not, on its own, say why anyone should believe it. So each registered work carries a set of checks that are run separately, recorded separately, and shown separately — because they are not interchangeable and pretending they are is how registries end up meaning nothing.
| Check | What it establishes | Where it applies |
|---|---|---|
| Timing | The work is later than a specific version of the character’s specification. Derivation has to run in that direction. | Everything |
| Attribution | How the work was presented when it was published — title, channel, date — read out of the snapshot frozen at registration. | Links |
| Rights | What the holder declared: own work or licensed. Music is asked twice, once for the composition and once for the recording. | Everything |
| Public | How long the work has been visible on the character’s public page without anyone objecting. | Listed characters |
| Markers | Whether the identity markers written into the specification can actually be detected in the image. | Images with a detector set |
| Palette | Whether the subject’s colours match the reference set once the background is removed. The only machine check that works for every kind of character. | Images |
| Visual match | Embedding comparison against the reference set. The strongest signal and the narrowest: it needs a detectable face. | Faces only |
Each result is one of four states, and the difference between the last two is the whole point: pass, partial, not met, not applicable. A missing marker in a photo and a video with no face in it are not the same finding. Neither is a track with no picture to measure at all.
There is deliberately no total, no score out of ten, and no single green tick. Independent claims cannot be averaged; averaging them is just a way of hiding which one failed.
One work, seven separate answers. Dashed outlines are checks that have not been run; the dash before “Markers” means the check does not apply to this character, not that it failed.
Each check is its own record with its own fingerprint, anchored in the same nightly batch. That is what makes the ladder usable over time: a channel can be re-verified next quarter, a marker check re-run after the specification changes, an older work topped up later — and none of it touches the binding record that was already frozen. Evidence added afterwards is stamped with the date it was actually collected, not backdated to the registration.
Channels
Measurement is useless for the things most character creators actually publish: a music release, a video the character does not appear in, an Instagram post. For those, the strongest available evidence is not what is in the frame, it is who published it.
So control of a channel is verified at the character level. Declare the account or the domain, take the one-time code, put it in the bio, the channel description or any post; a domain can serve it at /.well-known/openstela.txt. The platform fetches the page once, compares, and records the result. Only the code counts. It contains a random part, so placing it proves control of the page — a plain link back to the character page does not, because a fan page can do that too.
Works published on a verified channel then carry that evidence automatically. The wording on the record is deliberately narrow: it proves the marker was present on that page at that time, not permanent ownership of the account, which is why it expires and is worth re-running before a sale. Some platforms block anonymous fetching; those are reported as unverifiable rather than quietly passed.
Verified and unverified look different on purpose. A channel that could not be checked says so.
The contract
Opening a deal creates a private room with a draft in it: an assignment or an exclusive licence, in English, from a template written for this kind of asset. Fill in the parameters, switch optional clauses on or off, rewrite any clause you disagree with. Three things then behave differently from a document passed back and forth by email.
Parameters on the left, the contract on the right, updating as you type. Fields the platform fills are shown but locked.
The same draft as a redline. Every value either party filled in, and every clause either party rewrote, is marked.
The standard templates (v1.0) are drafted in English and are the governing text; the Chinese versions are provided for understanding only. They are written for creator-to-creator deals with United States law in mind — the writing requirement of 17 U.S.C. § 204(a), electronic signature under E-SIGN and UETA, a VARA waiver, a right-of-publicity warranty, mutual indemnities, and New York law by default, all editable in the builder. They are templates, not legal advice. Whatever the two parties end up signing is their agreement, not ours — the platform is not a party to it.
Delivery
The moment both signatures land, two things are frozen: the text, and the file list. The character pack is snapshotted — every path, every file hash — and locked. Until the deal completes or is cancelled the seller cannot edit the specification, delete a work, remove an image or re-list the character. Not by convention: those requests are refused.
When the seller confirms the money has arrived, the platform moves the pack. In an assignment it is a move, not a copy: the specification, the reference set, the source images, the registered works and the registry record leave the seller’s account and arrive in the buyer’s, with the transfer appended to the character’s history. The file list is compared before and after, and against the snapshot taken at signature, so “complete delivery” is a comparison rather than an opinion. An exclusive licence instead delivers a copy with no registry number of its own, and marks the original as licensed so it cannot be sold or licensed again while that lasts.
The buyer then has an acceptance window — its length is one of the negotiated parameters — to check what arrived. Silence at the end of it counts as acceptance. A dispute inside it freezes the deal for review, and a review can reverse the transfer: the pack goes back, and the reversal is written into the history rather than erased from it.
After signature the room stops being an editor and becomes a record: agreed terms, the contract fingerprint, the anchoring status, and one clear next action.
The check
Every fingerprint on this platform — a specification version, a work binding, a signed contract, a transfer event — can be pasted into a public page that answers in three separate layers, because they are worth different amounts.
Collapsing those three into one green tick would be easier to design and worse to rely on. The check runs without an account, and it keeps working if this company does not.
A real record, checked live. Paste any fingerprint at app.openstela.io/verify.
Boundaries
Nothing on this page is legal advice, and it describes mechanisms rather than outcomes. The economics of the same design — which costs actually fall, and which stubbornly do not — are set out in what a character sale actually costs.
Start
A registration is useful long before a sale: it dates the specification, accumulates a version history, and gives every work you publish something to be bound to. Listing is a switch you flip afterwards, per character, and it is off by default.