🌱 Everbloom

Privacy & Security

Last updated September 26, 2026. This page describes how Everbloom actually works today — including the limits. We'd rather tell you precisely what is protected than make broad promises.

Current protections at a glance

Who runs Everbloom

Everbloom is a private family app run by one household on a server we control. It is not a commercial service, we do not sell or share data for advertising, and new accounts are by invitation only.

Encryption in transit, including post-quantum protection

Every connection to everbloom.driftpoint.us uses TLS 1.2 or newer, and HTTPS is enforced. On current browsers (recent Chrome, Edge, Firefox and Safari), the key exchange is the hybrid post-quantum scheme X25519MLKEM768: it combines classic elliptic-curve X25519 with ML-KEM-768, the NIST-standardized (FIPS 203) post-quantum algorithm. If either one holds, an attacker can't recover the session keys. That protects today's traffic against "record now, decrypt later" attacks by future quantum computers. Older browsers fall back to standard TLS 1.3 key exchange.

ConnectionProtectionQuantum-resistant?
App pages, records, uploads, account & loginTLS 1.3, hybrid X25519 + ML-KEM-768 key exchangeYes (modern browsers)
Meeting sign-in and signaling (joining, chat, controls)Same TLS connection as above (secure WebSocket)Yes (modern browsers)
Live meeting audio & video (normal meeting)WebRTC DTLS-SRTP (AES) — encrypted to our meeting server, which can read/route/record itNot end-to-end
Live meeting audio & video (E2EE “secure link” meeting)WebRTC DTLS-SRTP plus end-to-end frame encryption; the key is in the link fragment and never reaches the server, so the server cannot read it (and cannot record)End-to-end
Administrator access to the serverSSH with hybrid sntrup761 + X25519 key exchange, with brute-force blockingYes

Live meeting media is encrypted between your browser and our meeting server, but it is not end-to-end encrypted. The meeting server (which we run ourselves) handles the media so it can route it between participants and, only when a meeting is being recorded, save it.

How we handle keys and credentials

Stored data is not yet encrypted with a post-quantum scheme at the application level; see "Data at rest" below.

Data at rest and integrity

Meetings

Outside services that may process data

Some features rely on outside providers. They get only the data needed for that feature — and external AI can be switched off entirely by the operator (a single kill-switch that disables all AI transcription/analysis; when off, meetings simply aren't transcribed rather than sent anywhere):

ProviderWhat forWhat they receive
Google (Gemini API)Transcribing and summarizing recorded meetingsRecorded audio of consenting participants
Anthropic (Claude API)Optional AI assistance on records the account owner chooses to analyzeThe text of those records
ResendSending invitation and alert emailsRecipient address and message content
OpenStreetMap / DuckDuckGo"Nearby" place lookupsApproximate location or search terms (no account details)
ARIN (internet registry)Identifying the network behind a meeting-link visitThe visitor's IP address
DigitalOceanHosting the serverStores the server's disks; does not access app data in normal operation

Retention and your choices

Planned — not yet implemented

These are designed but not built yet. Do not rely on them today. We list them so the roadmap is transparent.

Architecture (text diagram)

Browser ──hybrid PQ TLS──▶ Caddy edge ──▶ Everbloom app (127.0.0.1:3002)
   │                                          ├─ Postgres (loopback only)
   │                                          ├─ append-only audit log (SHA-256 chained)
   │                                          └─ scoped secrets file (caps dropped)
   └─WebRTC DTLS-SRTP──▶ LiveKit SFU (127.0.0.1:7880 signaling; media 7881/tcp,7882/udp)
        (mgmt API NOT internet-reachable; media is encrypted in transit, NOT end-to-end)
Outside providers (only when a feature needs them): Claude/Gemini (AI on chosen content),
   Resend (email), OpenStreetMap/DuckDuckGo (nearby lookups), ARIN (network of a visitor IP).

Security incident response

Honest limits