Frequently Asked Questions
Learn how our zero-knowledge end-to-end encryption, secure file drops, and billing systems operate.
Cryptographic Privacy & E2EE
What does "Client-Side End-to-End Encryption" (E2EE) mean?
It means your files are fully encrypted directly in your web browser before they ever leave your computer. By the time the files are sent to our servers and routed to AWS S3, they are already completely scrambled. Because we never receive your decryption keys, we cannot read your files, view your metadata, or inspect your documents. This is a "zero-knowledge" security architecture.
How can multiple staff members access the same encrypted document?
We solve this using a system called Envelope Encryption. When a file is uploaded, a random 256-bit symmetric session key ($K_{sym}$) is generated on-the-fly to encrypt the file buffer. To grant access to multiple users, we encrypt ("wrap") that single symmetric key multiple times using the public key ($K_{pub}$) of each authorized user. This wrapped key is saved in our database:
When you attempt to view the file, your browser retrieves your specific wrapped key block, unseals it using your decrypted private identity key ($K_{priv}$), extracts $K_{sym}$, and decrypts the file in-browser.
Secure Drops & Cloud Storage
What is a "Secure Drop"?
A Secure Drop allows external clients, patients, or partners to securely upload highly sensitive documents to your organization without needing to register or log in. When they visit your firm's custom drop link, their browser automatically fetches the public keys of your authorized staff, locally encrypts the selected files, and uploads them directly to S3.
Where are our documents actually stored?
Documents are stored as encrypted blobs directly in an AWS S3 (Simple Storage Service) container linked to your organization's subscription. Since S3 only holds the encrypted raw binary envelopes (.enc extensions), your files remain mathematically secure even if a malicious actor were to gain full access to your AWS console or database tables.
Invitations & Onboarding
What is a "Security Join Code" and how does the onboarding flow work?
To prevent malicious registration attempts, new users trying to join an existing organization must supply a valid Security Join Code. Entering this code places the user into a PENDING_APPROVAL state.
Once an administrator approves the pending user, an active staff browser executes a Key Sync Ceremony behind the scenes. This sync decrypts the historical document symmetric keys and re-wraps them using the new user's newly generated public key ($K_{pub\_new}$), instantly granting them access to past cases without the server ever touching the keys.
How long do secure invitation links remain active?
Any secure single-use invitation generated by an administrator is cryptographically bound to the invitee's email address and will automatically expire exactly 48 hours after creation. Administrators can easily renew, extend, or revoke outstanding invitation links from their Admin dashboard.
Subscriptions & Billing
How is billing managed for our organization?
We utilize Stripe Checkout and Stripe Billing to securely manage subscription plans. All card transactions, payment credentials, and recurring invoices are processed on Stripe's secure infrastructure. Organization administrators can access the self-service Stripe Customer Portal directly from their account dashboard to update billing profiles or cancel active subscriptions.
What happens to our documents if our subscription is suspended?
If a subscription payment fails or the subscription is cancelled, access to the workspace is temporarily locked. However, your documents and cryptographic keys remain safely saved on your cloud instance. Once your billing card details are successfully updated or reactivated, you will regain full access to decrypt your historical archives.