Last updated: May 1, 2026
๐ Zero-Knowledge Encryption Summary
Your financial data (debts, balances, budgets, AI results) is encrypted in your browser before it is ever sent to our server. We store only the encrypted ciphertext. We cannot read your financial data. Your encryption phrase is never transmitted to or stored by us.
DebtExpeditor is a self-hosted debt consolidation and financial planning tool. "Self-hosted" means the operator (the person running the server) and the user (you) may be the same person, or the operator may be a third party providing you with access to their deployment. This policy covers all deployments.
We store the following categories of data on our servers:
Account & authentication data (plaintext):
Financial data (encrypted ciphertext only):
All items in the second category are encrypted with AES-256-GCM using a key that only you hold. The server receives and stores opaque ciphertext. We have no ability to decrypt this data.
When you set up your account, you choose a personal encryption phrase โ a memorable word or sentence. This phrase is combined with your account UUID using PBKDF2 (310,000 iterations, SHA-256) to derive a 256-bit AES-GCM key. Each piece of data is encrypted with a unique random IV before being sent to the server.
Your encryption phrase is never sent to the server. It lives only in your browser (in sessionStorage, or localStorage if you choose "remember on this browser"). When you close your browser tab, the in-memory key is discarded and you will be asked to re-enter your phrase on your next visit.
To access your account from a different browser, you simply log in normally and then enter your encryption phrase when prompted. Your encrypted data is fetched from the server and decrypted locally using the key derived from your phrase + UUID.
When you request AI-powered advice, the following happens:
โ ๏ธ When using AI features, your financial details are temporarily processed by OpenAI. If you are concerned about this, you may use DebtExpeditor without the AI features โ all calculations and projections run entirely in your browser and never leave your device.
There is no password reset for your encryption phrase. Because we do not store the phrase, we cannot recover it for you. If you forget your phrase:
You may, at any time:
We use a single session cookie (debtcon_session) to maintain your login state. This cookie is HttpOnly, SameSite=Lax, and Secure in production. It contains only your session credentials โ no financial data. It expires after 7 days of inactivity.
We do not use third-party tracking cookies, advertising cookies, or analytics services.
All connections use HTTPS/TLS. Passwords are hashed with bcrypt (cost factor 12). Financial data is encrypted with AES-256-GCM. We do not store credit card numbers or bank account credentials. DebtExpeditor only stores data you manually enter.
For privacy questions or data deletion requests, contact the operator of your DebtExpeditor deployment. If you are running a self-hosted instance, you are the operator.