XML signing and encryption use Node's native crypto
plus xml-crypto and
xml-encryption. Both run in the main process. Private keys are loaded from disk into memory on demand, used for the single operation, and zeroed when the request completes.
JWT verification runs against an HS / RS / ES algorithm catalogue inside the same main process — there is no helper service, no online verification step, no shared secret pool.
Stored secrets — basic-auth passwords, bearer tokens, OAuth refresh tokens, certificate passphrases — pass through Electron's safeStorage API. On macOS that delegates to Keychain. On Windows, DPAPI. On Linux, libsecret. The raw plaintext never writes to your project's SQLite database; only the OS-encrypted blob does.
Master password gating is opt-in. When enabled, the app derives a key with PBKDF2-SHA256 (120,000 iterations) and uses it to envelope-encrypt the entire SQLite database before save.