Familiar hosted delivery.
Useful when a managed transfer service is the priority. Choose dove when the file should live in infrastructure you control and, in full mode, the serving system must never receive the decryption key.
dove is a small CLI for sharing files from your own cloud. Links expire. Access is limited. In full mode, the server serving the file cannot read it. Under 2 GB, the recipient needs only their browser.
$ dove share release.zip \
--expires 2d --downloads 3
encrypting •••••••••• 100%
uploaded 842 MB
https://share.example/d/k7mx2#key
expires in 2 days · 3 downloads
One command. No dashboard to babysit.
The model
A backup tool encrypts to you and locks everything down. dove turns that inside out: it encrypts to a link, grants exactly the access you allow, then cleans up.
Running the secure side from your own infrastructure should not turn every recipient into an operator.
For an encrypted dove share under 2 GB, the recipient needs no account, extension, CLI, or cloud login. They open the link, click once, and the browser decrypts the file locally before saving it.
Opening the page does not consume a one-time download.
The key stays in the URL fragment.
The explicit click starts the real download.
Decryption happens on the recipient’s device.
These products are reasonable choices in their lanes. dove is for the combination of your cloud, verifiable client-side encryption, enforceable access policy, and a recipient path that stays simple.
Useful when a managed transfer service is the priority. Choose dove when the file should live in infrastructure you control and, in full mode, the serving system must never receive the decryption key.
Recipients can download without an account, and eligible plans add passwords and longer expirations. dove adds client-side ciphertext, one/N download policy, and storage in your cloud.
Wormhole offers end-to-end encrypted, expiring transfers in the browser. dove is for teams that also want own-cloud deployment, CLI automation, PIN gates, download counts, and signed releases.
Both people run a client and enter the same short code. dove keeps the sender’s CLI workflow while letting recipients handle encrypted files under 2 GB with only a browser.
Product features and plans change. The names above link to each product’s current documentation or site; the comparison is about architecture, not a claim that one tool fits every transfer.
dove uploads to your S3 bucket and creates a presigned URL. The bucket lifecycle cleans up later.
dove provision simpleFiles are encrypted on your machine before upload. Your cloud enforces expiry and download counts without ever receiving the key.
dove provision fullIn a dove link, the decryption key lives in the URL fragment. Browsers never send that part to a server. The page reads it locally and decrypts the file on your device.
Your infrastructure sees the share ID and encrypted bytes. It can approve a download, count it, or expire it—but it never sees the key.
For credentials, recovery codes, or banking details, require a short PIN and send it separately by text or call. The gate rate-limits guesses and locks the share after repeated failures. The PIN controls access; the fragment secret stays on the recipient’s device and controls decryption. The server can’t read the file either way.
Trust starts with a precise claim. These boundaries are part of the design, not fine print.
Encryption happens before upload. Storage, CDN, and the access gate receive ciphertext, never the fragment key.
The bucket is private and the link expires, but your cloud provider can read the object. Use full mode when that matters.
An operator controls their page’s HTML. Treat dove.sh and the official GitHub repository as the only software sources.
The design and source are public. dove does not claim an independent security audit unless one is completed and published.
The useful details, without turning the security model into a slogan.
No account, extension, or dove install. Click once and your browser decrypts the file locally, then offers it to save.
2 GB or larger? The same page gives you an exact, pre-filled dove get <url> command to stream it to disk.
This is dove's official install page. Release binaries are checksummed, signed with Sigstore, recorded in a public transparency log, and notarized on macOS.
Verify a release on GitHubbrew install boomctl/tap/dovescoop bucket add boomctl https://github.com/boomctl/scoop-bucket
scoop install dovecargo install dove-clicurl -fsSL https://raw.githubusercontent.com/boomctl/dove/main/install.sh | shInspect install.sh on GitHub before running it.
Every release includes a checksum manifest, a Sigstore certificate, and a signature. The signer must be dove’s GitHub release workflow—not a private key or an unknown account.
Download the binary, SHA256SUMS, and matching .sig and .pem files from the same release.
Check the bytes.
sha256sum --check SHA256SUMS --ignore-missingVerify the GitHub Actions identity.
cosign verify-blob --certificate dove-…pem --signature dove-…sig
--certificate-oidc-issuer https://token.actions.githubusercontent.com
--certificate-identity-regexp 'github.com/boomctl/dove/.github/workflows/release.yml' dove-…