# magic-wormhole/magic-wormhole

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/magic-wormhole-magic-wormhole).**

22,364 stars · 725 forks · Python · mit

## Links

- GitHub: https://github.com/magic-wormhole/magic-wormhole
- Homepage: https://magic-wormhole.readthedocs.io/en/latest/
- awesome-repositories: https://awesome-repositories.com/repository/magic-wormhole-magic-wormhole.md

## Description

Magic Wormhole is a command-line utility designed for the secure transfer of files and text between two computers. It establishes encrypted, peer-to-peer connections that allow users to move information directly without relying on permanent cloud storage or third-party hosting.

The system utilizes a password-authenticated key exchange to verify the identity of both endpoints, requiring only a short, human-readable code to initiate a session. By employing ephemeral key derivation and a relay server that cannot decrypt the transmitted content, the protocol ensures that data remains private and inaccessible to the intermediary infrastructure.

The tool supports both file transfers and the exchange of short text messages. All data is structured into verified, encrypted chunks, and the relay server automatically deletes all information once the transfer process is successfully completed.

## Tags

### Networking & Communication

- [File Transfer Utilities](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/file-transfer-utilities.md) — Provides a command-line utility for secure, code-verified file and text transfers between computers.
- [File Transfer Protocols](https://awesome-repositories.com/f/networking-communication/file-transfer-protocols.md) — Enables secure file transfers between computers using encrypted direct connections verified by human-readable codes. ([source](https://magic-wormhole.readthedocs.io))
- [Secure Messaging Protocols](https://awesome-repositories.com/f/networking-communication/secure-messaging-protocols.md) — Exchanging short text strings between two endpoints through a temporary password-protected relay that automatically deletes data after successful delivery.
- [Peer-to-Peer Data Exchange](https://awesome-repositories.com/f/networking-communication/peer-to-peer-data-exchange.md) — Establishes direct peer-to-peer connections to move information securely without relying on permanent cloud storage.
- [Peer-to-Peer Networking](https://awesome-repositories.com/f/networking-communication/peer-to-peer-networking.md) — Establishes direct, encrypted peer-to-peer tunnels between machines to bypass firewalls and facilitate secure data movement.
- [Secure Messaging Services](https://awesome-repositories.com/f/networking-communication/secure-messaging-services.md) — Transmits short text strings between endpoints using a temporary, password-protected relay that automatically deletes data after delivery. ([source](https://magic-wormhole.readthedocs.io))

### DevOps & Infrastructure

- [Secure File Transfer](https://awesome-repositories.com/f/devops-infrastructure/secure-file-transfer.md) — Facilitates secure file transfers between computers using encrypted direct connections and human-readable verification codes.

### Security & Cryptography

- [Key Exchange Protocols](https://awesome-repositories.com/f/security-cryptography/key-exchange-protocols.md) — Uses short, human-readable codes to perform password-authenticated key exchange for secure, decentralized endpoint verification.
- [Secure Communication Protocols](https://awesome-repositories.com/f/security-cryptography/secure-communication-protocols.md) — Implements a secure communication protocol using password-authenticated key exchange to verify endpoints and encrypt data transfers.
- [End-to-End Encryption](https://awesome-repositories.com/f/security-cryptography/end-to-end-encryption.md) — Creates temporary, secure channels for end-to-end encrypted communication and data sharing between two parties.
- [Relay Protocols](https://awesome-repositories.com/f/security-cryptography/data-encryption/relay-protocols.md) — Routes encrypted data through an intermediary relay server that cannot decrypt the content or identify the communicating parties.
- [Key Derivation Protocols](https://awesome-repositories.com/f/security-cryptography/key-derivation-protocols.md) — Generates temporary, session-specific cryptographic keys that are discarded immediately after successful data transfer.

### Part of an Awesome List

- [File Sharing Tools](https://awesome-repositories.com/f/awesome-lists/media/file-sharing-tools.md) — Securely transfer files between computers.
