Skip to content
Direct
How it works
Appearance
Accent

Kept on this device. The accent is the only colour the interface spends, so changing it changes nothing else.

Threat model

Security

How a transfer is protected, and — more usefully — what it does not protect you from.

#The connection is encrypted

Transfers run over WebRTC, which encrypts every data channel with DTLS. This is not optional and cannot be turned off. Both sides verify each other’s certificate fingerprint during the handshake, so a third party cannot quietly insert themselves between you.

#The file is verified

The sender hashes the file with SHA-256 as it reads, and the recipient hashes it as it writes. The two are compared when the transfer ends.

A mismatch fails the transfer and discards the partial file. A file that arrives corrupted is never presented as complete — an honest failure is worth more than a quiet one, particularly at these sizes.

#What the server enforces

  • Exactly two participants per session — a third cannot join.
  • Access keys are checked before any connection is established.
  • Signaling messages are size-capped and must be well-formed.
  • Session creation is rate-limited per address.
  • Sessions expire on a timer and are deleted automatically.

#What this does not protect you from

  • A recipient you did not intend, if your link is shared or intercepted.
  • Malware in a file you accept. Nothing here scans file contents — we cannot, we never see them.
  • A compromised device on either end. Encryption in transit does not help if the disk it lands on is already someone else's.