Help us shape the future of Go! Take the 2026 Go Developer Survey

keedrop

command module
v0.0.0-...-832200f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2026 License: MIT Imports: 16 Imported by: 0

README

License Build Uptime Ratio Maintainability

KeeDrop - securely send passwords

Ever wanted to securely send a password to someone who didn't have GnuPG? Enter KeeDrop: each secret can only be retrieved once and only for 24h after it was stored. Additionally, it is encrypted in a way that ensures that the server operator will not be able to decrypt the password. The only way to be more secure is to use GnuPG or other end-to-end encryption with key verification.

Security features

  • State-of-the-art encryption technology: Curve25519-XSalsa20-Poly1305, courtesy of TweetNaCl.
  • The server never sees the unencrypted secret
  • Automatically expunge data after 24h
  • Alternatively, data is deleted on retrieval
  • Doesn't track you with analytics
  • The API rejects request bodies over 64 KB, which leaves room for about 46 KB of secret text
  • API requests are rate-limited per IP, and neither IPs nor secret IDs are written to the request log

What it cannot defend against:

  • Malicious software (browser extensions, keylogger etc) on the senders or recipients computer.
  • Someone intercepting the link and retrieving the secret. But at least you'll know about it.

Setup

Environment variables
name required value
KEEDROP_CONTACT_NAME yes Full name of site owner
KEEDROP_CONTACT_ADDRESS yes Quoted new-line delimited address info
KEEDROP_CONTACT_EMAIL yes Email for contact
KEEDROP_CONTACT_GPGKEY no GPG key

The API server reads these:

name required value
KEEDROP_REDIS no Redis connection string, defaults to redis://localhost:6379/0
KEEDROP_PORT no Listen address, defaults to :8080
KEEDROP_CORS_ORIGINS no Comma-separated origins allowed to call the API from another domain. CORS is off when unset, since the site calls the API on its own domain
KEEDROP_RATE_LIMIT no API requests per minute and client IP, defaults to 60, 0 disables it
KEEDROP_TRUSTED_PROXIES no Comma-separated IPs or CIDRs of reverse proxies allowed to set X-Forwarded-For, defaults to 127.0.0.1,::1

Documentation

Overview

main HTTP server component

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL