Skip to content

Security

Lasbolt protects your secrets from a stolen disk, a network attacker and, for end-to-end folders, a hacked server. It does not protect server-readable data from the operator. This page is a short version of the threat model. The threat model has the full text, and Cryptography has the algorithms.

Lasbolt is in development and no third party has audited it. Do not store secrets that you cannot replace.

What the server sees

The client makes all keys on your device. The server gets a derived auth key and ciphertext. It never gets the master password or the encryption key.

    flowchart LR
  subgraph D["Your device"]
    P["Master password"] -->|"Argon2id"| M["Master key"]
    M -->|"HKDF"| K["Encryption key"]
    M -->|"HKDF"| A["Auth key"]
    K --> F["Folder and item keys"]
  end
  subgraph S["Server"]
    H[("Auth key hash")]
    C[("Ciphertext")]
  end
  A --> H
  F -->|"encrypt"| C
  
Items in a server-readable folder are encrypted at rest with a data key that the running server holds. Only end-to-end (E2E) folders stay secret from the server.

Two kinds of folder

Server-readableEnd-to-end
Server can search and serve agentsYesNo
Stolen database or backupSafeSafe
Hacked server, passiveData is lost, by designSafe
Hacked server, activeData is lostSafe with the CLI and native apps. Not safe in the web app.
Recovery without the master passwordOperator resetRecovery kit only

You choose for each folder. E2E is permanent for a folder.

Who can read what

AssetWhere it livesWho can read it
Master passwordYour head, and the client during loginYou only
Encryption keyClient memoryYour clients only
E2E values, names and metadataServer database, encrypted with item keysMembers of the folder, and keys with a grant
Server-readable valuesServer database, encrypted with the data keyThe running server, you, agents in scope
BackupsBackup folder, off-site copiesThe operator (the server key or the backup identity is needed)
Recovery codePaper or a file, offlineThe holder
Tree shape, sizes, times, names of E2E root foldersServer databaseThe running server

The server can also see metadata of the vault, such as how many items you have and when you change them.

Adversaries

AdversaryPromiseLimit
Network attackerCannot read or change trafficThe operator must set up TLS
Stolen server disk or backupAll data stays encryptedWith the passphrase provider, offline guessing runs at Argon2id cost. Use a long random passphrase.
Server compromised, passiveE2E data and the master password stay secretServer-readable data is lost, by design
Server compromised, activeThe CLI and native clients detect forged E2E operationsThe web client has no promise for E2E: the server sends its code
Online attacker at the loginRate limits, TOTP, and slow key derivation on the clientBehind a proxy, the operator must set --trusted-proxy
Stolen device or sessionRemove it in Settings > Devices. A device token has no E2E keys.A device that read a secret can keep a copy
Tricked AI agentScoped keys, expiry and per-use approval limit the damageThe MCP server has no tool that returns a secret value. Masking and “inject only” are a help, not a boundary.
Why the web client is weaker

The server sends the JavaScript and the WASM of the web app. A server that is under the control of an attacker can send code that reads E2E data after you unlock. This is true for every web-based E2E product. For the strongest promise, use the CLI or a native app and sign in with lasbolt login --password.

What E2E does not hide

The server sees the shape of your vault and when you use it. It can deny service. It can withhold changes from a new device. Clients write signed checkpoints, so a server that hides or changes older operations is found, and the client then refuses writes to that folder. A server that shows two devices two different histories is not found by a checkpoint alone.

More

Last updated on