Skip to content

A language spoken in bytes

Let one stranger ask another, and nobody in between.

Two programs that never met can speak, each deciding for itself whom it lets in. No server sits between them, there is no account to open, and a stranger at the door learns nothing. Quo is what the bytes mean: a few JSON shapes and six algorithms, and nothing else.

  1. They invite you. The card goes by any channel.
  2. You knock. They let you in once, the first key dies, and nobody who saw the card can speak there.
  3. You ask. Sealed, under a key that keeps moving.
  4. A stranger tries. One blank sheet comes back, whatever was sent.
any channel2a strangeryouthem

Reading the picture

  • A house. The gap in its ring is the porter, its one door.
  • A red booth. This house holds the key, and steps in to ask.
  • A purple booth. The house built it and gave its key away.
  • The grey booth. Anyone may step in, signing with a key of their own.
  • A stranger. Whatever it sends, it gets the same blank sheet.
01

What Quo is

Quo is what a door's bytes mean: the JSON shapes it reads and writes, and six algorithms. A sentence belongs to it for one of two reasons.

in · out

A door is one function

Bytes in, bytes or nothing out. Quo is what those bytes mean, and nothing that stands behind the door.

Two strangers must agree

Two kits that never met could not exchange bytes correctly unless both read the sentence the same way.

≤ 1,048,576

No kit can provide it

No kit could provide it for itself. No kit can decide alone what somebody else's seed means, so the ward key's derivation is Quo's.

What fails both is not Quo's. It is neither asked nor forbidden.

The model is JSON: a grammar anyone reads, with no opinion about what is written in it. Anything a kit could decide is left out, however sensible.

Every rule says what bytes mean. No rule says anyone must speak.

02

What Quo is not

Quo is the gap in the wall and what crosses it, and nothing else.

not QuoQuo is the door

Only the door

What lives inside the wall, and whatever carries the bytes outside it, are not Quo's.

No runtime

What stands behind a door, who owns it and how it stores, are each kit's.

{ ward, heir, secret, lock }

No account

A relation begins with an invitation that goes by any channel, and nothing is registered.

not Quo's

No directory

Discovery and identity are outside Quo. An invitation may say where its ward is reached, a reply may say where it is reached now, and Quo lists no ward.

?

No advice

Quo offers a checker, and never a way to build a kit.

Quo hosts nothing, registers nothing, lists nothing and directs nothing. The day it runs a service, it is a product.

03

What the bytes promise

Authenticity

Every ask and reply is signed and checked against the bytes as received. More

lidheadbody: payloadsignature

Confidentiality

Every ask is sealed to the ward's padlock under a fresh key, every reply to that key alone. The method, the arguments and the answer all travel inside the box. More

{"silence":true}

No oracle

Every stranger's case comes back as one reply of one length, so the bytes tell nothing apart. More

next

Ownership at a choice on the knock

Once a door makes a choice on the knock, the relation belongs to the key the knocker minted, and nobody who saw the invitation can speak on it. More

04

Five kits, and none a reference

Go, Zig, Python, JavaScript, Rust. Each was written cold, by an agent holding only the published documents and the verifier, and never another kit.

GoZigPythonJavaScriptRust
fiveThe wall and its gap are the same in every kit, because that is all Quo says. What lives inside is each kit's own.

Every kit passes the verifier alone, and every pair passes in both directions.

AI is the method, and completeness is the proof: kits written blind agree.

Quo is developed, audited and implemented by AI under one human's decision.

05

Where it stands

A working language before 1.0.0, with no production deployment.

Held by Razvan Gherghina under Apache-2.0, and audited by nobody outside.

The spec is frozen once, at 1.0.0.

A flaw is reported to spec@quo.systems