Why End-to-End Encryption Matters for SSH Tools
The Problem with Cloud-Synced Credentials
Most cloud-synced tools encrypt your data "at rest" on their servers and "in transit" over TLS. This sounds secure, but it means the service provider holds the decryption keys. They can read your data, their employees can access it, and a server breach exposes everything in plaintext.
For SSH credentials, this is particularly dangerous. A single leaked private key or password can give an attacker direct access to production servers, databases, and internal networks. The blast radius of a credential breach is enormous.
What E2EE Changes
End-to-end encryption moves the trust boundary from the server to your devices. Your data is encrypted before it leaves your machine and can only be decrypted on your other authorized devices. The server is reduced to a dumb storage layer that shuttles ciphertext between endpoints.
This means a server breach yields only encrypted blobs. A rogue employee sees only ciphertext. A government subpoena gets only data the provider cannot decrypt. The security of your credentials depends solely on the strength of your passphrase and the integrity of your devices.
Our Approach
JumpTerm uses XChaCha20-Poly1305 with keys derived from your passphrase via Argon2id. We chose this stack because XChaCha20 has a large nonce space (eliminating collision risks), Poly1305 provides authentication, and Argon2id is the current gold standard for memory-hard key derivation. Every vault item gets a unique nonce, and the key derivation parameters are tuned to make brute-force attacks impractical even with dedicated hardware.