Under The Hood

It's like scp without needing to know the IP address. Add some files to AltSendme, and it will give you a pastable ticket that you can give to anyone who needs your files. AltSendme will connect your devices directly & transfer the data without any accounts or configuration.

AltSendme hero graphic

AltSendme is built on iroh

AltSendme extends the open-source work being done by the amazing team behind iroh. AltSendme uses iroh to establish direct links between devices for data transfer, and iroh-blobs to send and verify your files.

Important concepts

1. Blobs

Content-addressed blob storage and transfer. iroh-blobs implements request/response and streaming transfers of arbitrary-sized byte blobs, using BLAKE3-verified streams and content-addressed links.

  • Blob: an opaque sequence of bytes (no embedded metadata).
  • Link: a 32-byte BLAKE3 hash that identifies a blob.
  • HashSeq: a blob that contains a sequence of links (useful for chunking/trees).
  • Provider / Requester: provider serves data; requester fetches it. An endpoint can be both.

2. Tickets

Tickets are a way to share dialing information between iroh endpoints. They're a single token that contains everything needed to connect to another endpoint, or to fetch a blob in this case. Contains Ed25519 NodeIds: Your device's cryptographic identity for authentication. They're also very powerful. It's worth pointing out this setup is considerably better than full peer-2-peer systems, which broadcast your IP to peers. Instead in iroh, tickets are used to form a "cozy network" between peers you explicitly want to connect with. It's possible to go "full p2p" & configure your app to broadcast dialing details, but tickets represent a better middle-ground default.

3. Peer Discovery, NAT Traversal & Hole Punching

Peers register with an open-source public relay servers at startup to help traverse firewalls and NATs, enabling connection setup. Once connected, iroh uses QUIC hole punching to try and establish a direct peer-to-peer connection, bypassing the relay. If direct connection is possible, communication happens directly between peers with end-to-end encryption; otherwise, the relay operates only temporarily as a fallback. This enables smooth reliable connections between peers within local-network and across the internet.

4. QUIC & Encryption

QUIC is a modern transport protocol built on UDP, designed to reduce latency and improve web performance over TCP. Developed originally by Google and now standardized by the IETF as HTTP/3's foundation, it integrates TLS 1.3 encryption directly into the protocol.

QUIC allows following super-powers:

  • encryption & authentication
  • stream multiplexing
  • no head-of-line blocking issues
  • stream priorities
  • one shared congestion controller
  • an encrypted, unreliable datagram transport
  • zero round trip time connection establishment if you've connected to another endpoint before

5. Relays

AltSendme uses open-source public relay servers to support establishing direct connections, to speed up initial connection times, and to provide a fallback should direct connections between two endpoints fail or be impossible otherwise. All connections are end-to-end encrypted. The relay is "just another UDP socket" for sending encrypted packets around. Read more.

Under The Hood