Sharing & sending
Share links
Hand a single file to someone with a link. zcrypt puts the decryption key in the part of the URL that never reaches our servers, so the share stays zero-knowledge, and you stay in control with optional passwords, expiry, limits, and instant revocation.
Creating a share link
From any file in your vault, choose Share to mint a public link. zcrypt generates a random share token for the URL and wraps the file’s content-encryption key under a fresh share key so the recipient can decrypt without ever knowing your passphrase.
The resulting link has two parts that do very different jobs:
https://zcrypt.cloud/s/<token>#<decryption-key>
└── sent to server └── never sentNeed to hand over more than one file? See Share a folder for a single public link that covers a whole folder, the same zero-knowledge way.
The key lives in the link, not on our servers
Everything after the # is the URL fragment. Browsers never transmit the fragment to the server: it stays in the address bar and is only readable by JavaScript running on the page. zcrypt puts the share’s decryption key there, so our servers store only the token, the encrypted file, and a wrapped key they can never unwrap.
What this means for you
Anyone with the full link can open the file, because the link itself carries the key. Treat a share link like the file’s password: send it over a channel you trust, and add a separate password (below) when the link might travel over something you don’t.Password, expiry, and download limits
Each link can carry its own guardrails, all optional and all enforced on our side independently of the key in the fragment:
| Option | What it does |
|---|---|
| Password | A second secret the recipient must enter. It is hashed with bcrypt on the server and checked before any file metadata or chunks are released. Until the right password is provided, the link won’t even reveal the file name or size. |
| Expiry | Choose 1 hour, 24 hours, 7 days, 30 days, or never. After it lapses the link reports that it is no longer available. |
| Download limit | Cap the number of accesses. Once the count reaches the limit, the link stops working. |
What the recipient sees
Recipients need no zcrypt account. Opening the link loads a public page that fetches the encrypted chunks, verifies them, and decrypts the file entirely in their browser using the key from the fragment. The plaintext is reassembled on their device and never on our servers.
- •If you set a password, the page prompts for it first.
- •If the link has expired or hit its download limit, the page explains that it is no longer available.
Revoking a link
You can revoke any share link at any time from your list of shares. Revocation is immediate: the server refuses all further requests for that token, so even someone holding the full link (key and all) can no longer fetch the file.
About the download counter
Honest note on counting
The download counter increments when a recipient’s browser fetches the link’s file metadata: the step that precedes the actual chunk downloads. It is a close proxy for “times opened,” not a byte-exact count of completed downloads, so a page reload or an interrupted download can move the number. Keep that in mind if you set a tight download limit.