Transferring files between two computers on the Internet is as old of a problem as the Internet itself, and surprisingly hard. Sending an attachment over e-mail involves all kind of hassles and does not work for big files. Having both the sending and receiving part sign up for Dropbox or a similar service, or setting up your own Nextcloud server requires unreasonably much work if you simply want to transfer just one file from one computer to another. Luckily we live now in 2020, and there is a solution: the Magic Wormhole, an open source software in Python by Brian Warner.
All you need to do is install it on both computers (e.g. apt install magic-wormhole
) and run it. No user account or any other setup is required. It works across any networks, no need to have public IP addresses or anything.
To send a file, simply run wormhole send
and the file name. To receive a file, just run wormhole receive
, and enter the key phrase that given by the sending party.
Screenshot from sending party:
$ wormhole send Maperitive-1000.zip
Sending 3.7 MB file named 'Maperitive-1000.zip'
On the other computer, please run: wormhole receive
Wormhole code is: 7-virginia-drumbeat
Sending (->relay:tcp:magic-wormhole-transit.debian.net:4001)..
100%|████████████████████| 3.75M/3.75M [00:01<00:00, 2.74MB/s]
File sent.. waiting for confirmation
Confirmation received. Transfer complete.
Screenshot from receiving party:
$ wormhole receive
Enter receive wormhole code: 7-virginia-drumbeat
(note: you can use <Tab> to complete words)
Receiving file (3.7 MB) into: Maperitive-1000.zip
ok? (y/N): y
Receiving (->relay:tcp:magic-wormhole-transit.debian.net:4001)..
100%|████████████████████| 3.75M/3.75M [00:02<00:00, 1.81MB/s]
Received file written to Maperitive-1000.zip
Simple and brilliant!
2 thoughts on “Magic wormhole – easiest way to transfer a file across the Internet”