Skip to content
VoidNote

Encrypted on your device · Self-destructing

Notes that disappear.
Encrypted before they leave you.

Send a secret message, a password, a private thought — encrypted on your device, destroyed after reading. We store the ciphertext. The key lives in the link, after the #, and your browser never sends that part to us (details).

Free, no sign-up. Need a password or a longer life? More options

The cryptographic model

The key is in the link. The ciphertext is on our server.
Notes are stored without their keys.

// When you create a note:

secret = 16 random bytes → generated on your device

key = SHA-256( secret )

ciphertext = AES-256-GCM( content, key )

tokenId = 16 random bytes → assigned by our server

// With a password: key = PBKDF2-SHA256( password, salt = secret, 600,000 rounds )

// Server stores: tokenId + ciphertext

// Link: voidnote.net/n/tokenId#secret

// Browsers never send the part after # to the server.

You create

Browser encrypts. Secret stays in the URL. We get only a locked box.

You share

Send the link. The key travels inside it.

They reveal

One click. Their browser fetches the ciphertext and decrypts it on their device. View count decrements. Gone forever.

How it works

  1. 1

    Write your note

    Type anything — a password, an address, a confession. Set how many times it can be viewed: up to 10 without an account, up to 100 with a free one. Optionally add a password.

  2. 2

    Your browser encrypts it

    Before anything leaves your device, your browser generates a random encryption key and encrypts the note with AES-256-GCM. Only the ciphertext is uploaded.

  3. 3

    Share the link

    You get a unique URL. The decryption key sits after the # in the link itself. Send it over any channel you'd trust with the secret — and if you set a password, send that another way.

  4. 4

    It self-destructs

    After the view limit is reached — or after the expiry you set — the encrypted note is permanently deleted from our servers. There is no recovery. It goes into the void.

What people send

Passwords

Share a temporary credential without leaving it in chat logs.

API keys

Hand off a secret to a colleague, then know it's gone.

Private notes

Write something that should only be read once.

Recovery codes

Send 2FA backup codes that vanish after use.

Sensitive links

Share a private URL that expires after one click.

Anything private

If you'd regret it staying in someone's inbox, send it here.

Void Stream

Live encrypted channels

Open a real-time channel. Pipe secrets, deployment logs, or structured data into it. Messages are encrypted in the browser and our server relays only ciphertext. The stream link, key included, is sent to our server with each request; it is not saved with the stream. When the writer closes it, the channel is gone. Streams are free with an account.

Connecting…

For developers

Works from anywhere

Native SDKs for every language. A CLI for every shell. A plain JSON API for everything else. Encryption and decryption run on your machine. Links the SDKs and CLI create keep the key in the URL fragment, so neither the key nor the plaintext reaches our server.

TypeScript Node · Bun · Deno · Workers · Browser
GitHub →
npm install voidnote-sdk
Python 3.9+ · sync & async
GitHub →
pip install voidnote
Go 1.21+ · stdlib only
GitHub →
go get github.com/quantum-encoding/voidnote-go
Rust async + blocking · pure-Rust crypto
GitHub →
cargo add voidnote
Zig 0.13+ · stdlib only
GitHub →
zig fetch --save …/voidnote-zig
Java 17+ · java.net.http, Gson only
GitHub →
implementation("net.voidnote:voidnote-java:0.1.0")
CLI — shell, Dockerfile, GitHub Actions, CI runners GitHub →

# macOS / Linux via Homebrew

brew tap quantum-encoding/tap && brew install voidnote

# pipe secrets in, read them out

echo "db-pass" | voidnote create --api-key vn_... --quiet

https://voidnote.net/n/a1b2c3...#e5f6a7...

voidnote read "https://voidnote.net/n/a1b2c3...#e5f6a7..."

db-pass

# note destroyed

Human → Agent credential handoff

Most teams share secrets over Slack, email, or a `.env` file committed to a private repo. VoidNote makes single-use credential delivery as simple as pasting a link.

  1. 1 Generate an API key or database credential
  2. 2 Create a VoidNote with 1 view — takes 5 seconds
  3. 3 Paste the link into your AI coding assistant's context, your CI runner, or your colleague's terminal
  4. 4 The agent fetches the secret, uses it, and the note self-destructs — never in a config file, a chat log, or a commit

The secret existed in transit for seconds. No secrets manager to operate or pay for.
Just a URL that works once and then ceases to exist.

Free to use

There's nothing to buy. An account is optional, and free.

No account

Just write a note

  • ·Encrypted on your device with AES-256-GCM
  • ·Expires in up to 7 days
  • ·Up to 10 views
  • ·Optional password
  • ·No email, no sign-up

Free account

Everything else

  • ·Notes that last up to 30 days and 100 views
  • ·Streams — live encrypted channels, including chat
  • ·File vault
  • ·Teams
  • ·History of the notes you've sent
  • ·API keys for the SDKs and CLI

Apps for iPhone and Android are on their way to the App Store and Google Play — free, with no in-app purchases. About the apps →

What we can't do

  • ✓ Read your notes — the key stays in the link, after the #
  • ✓ Recover a destroyed note — deletion is permanent
  • ✓ Keep a note past its expiry — up to 7 days, or 30 with an account, enforced server-side
  • ✓ Access your account without your password — we don't store it in recoverable form
Don't trust us. Verify. →