Nothing runs until you pair.
A node only accepts bridges it has paired with, and every connection after that is mutually authenticated and encrypted. This page explains how, and what Jump does not do yet.
Pairing
You pair a node once, with a one-time code shown on the node. The code is single use, lasts 5 minutes and is spent after 3 wrong attempts.
- The code is never sent over the network. Both sides prove they know it with a password-authenticated key exchange (SPAKE2).
- Pairing is bound to both machines' keys. Someone who intercepts the connection is detected, even if they have seen the code.
- Each machine has its own key. Every node and every bridge creates an Ed25519 key on first run and is identified by its fingerprint. To check you paired the machine you meant to, compare the fingerprint
jump nodes addprints withjump-agent identityon the node.
Every connection
- Mutual TLS 1.3. Both ends authenticate with the keys they exchanged at pairing.
- Pinned keys. Your bridge accepts only the key it paired with. If a node's key changes, the connection is refused with "the node's identity has changed".
- Trust is checked first. A node rejects any bridge that is not on its trust list before it runs anything.
On the node
- Commands run as the user who started the agent, with that user's permissions. Nothing runs as administrator unless you start the agent that way.
- The agent logs every request with the bridge's name and fingerprint. Text your AI types into apps is logged as its length only.
- Stop trusting a bridge with
jump-agent bridges revoke. It applies from the bridge's next connection; restart the agent to end one that is already open. - Keys and trust lists are files readable only by their owner.
What the preview does not do yet
- No limits on a paired bridge. It can do anything the node's user can, including taking screenshots and typing into apps without the node's user being told. Approvals and an audit log arrive in Phase 2. Until then, pair only nodes whose screens and files that bridge's users may see.
- Keys are files, not in the OS keychain. Keychain storage comes in Phase 2.
- Builds are not signed. Signed installers and auto-update come in Phase 2.
- Your network only. Nodes must be reachable from your machine. Jump Relay, for machines elsewhere, comes in Phase 3.
Reporting a vulnerability
Email security@getjump.dev with what you found and how to reproduce it. Please give us a chance to fix it before you publish. The same address is in security.txt.
The technical details, including the files Jump keeps on each machine, are in the security docs and configuration docs.