The threat model, as a table
What it defends, and what it accepts
Every line on the left is paid for by the line on its right. A security page with only
a left column is hiding the right one.
Defends A crypto payment that arrives while nobody is watching. The escrow address is ours to sweep, so the money reaches the seller without the buyer waiting on us or the seller trusting a stranger
Accepts For those minutes we can move it. A break-in deep enough to reach the escrow seed could sweep every escrow in flight. Nothing in flight is insured, and a payment straight to a seller address never touches this rail at all
Defends A break-in on our servers. The keys are hashes, the wraps are ciphertext, and the master never came here
Accepts Your account rows and your history are readable to whoever got in. They are the audit trail, not the vault
Defends A phished password. There is no password to give away, and a passkey answers only to the site it was made on
Accepts A real sign-in challenge can be shown to you on a page that is not ours. A bound wallet gives up the door. A wallet that never bound a child key signs with the key that holds, and gives up more
Defends A phished payment. The transaction is shown to you in plain words before the sensor is touched. Nothing hides what you are authorising
Accepts Cryptography does not fix social engineering. A person can approve a transfer that looks legitimate and is not, and there is no clawing it back
Defends A lost phone. The twenty-four words bring the same addresses back on any device
Accepts Lose the paper and every device and the money is gone. No reset, no support line, no back door. That is the price of nobody being able to take it from you
Defends An agent that misbehaves. Its ceiling is the most it can cost, and the model never holds a signing key. It can propose. The limit decides
Accepts Inside its scope an agent can do things you did not anticipate. The scope is yours to set narrow
Defends A stranger calling our API with an invented token. The token decides nothing. The label on each door does, and a door that needs a member refuses a caller who is not one
Accepts A door with no label is open today. We publish which gate binds and which does not. Labelling every door is on the list below
Defends A model that is lied to. Prompt injection reaches a model that holds no key and no authority of its own. Its output is checked before anything moves
Accepts Injection that stays inside the tools an agent was given, and does something unhelpful with them, is not caught by a key it never had
Defends Our own infrastructure. We run on Cloudflare’s edge and keep the brain in TypeDB Cloud. Neither holds anything that opens your wallet
Accepts We do not own the metal. A stack on your own servers beats us on physical control, and we will say so to your face
Defends Nothing, in one case. Someone who has physical control of you and your device at the same time
Accepts Out of scope. We do not defend against coercion and we do not pretend to