

The developer mentions that croc is the only command line file transfer tool that has all the features mentioned above.Ĭroc also supports starting your own relay ( croc relay you can easily self-host a relay using Docker), setting a custom (non-croc generated) code phrase ( croc send -code), automatic agreeing to all prompts ( -yes), and there are various other options like forcing the use of local connections ( -local), specify the relay address ( -relay / -relay6), use a Socks 5 proxy ( -socks5), etc. local server or port-forwarding not needed.allows resuming transfers that are interrupted.enables easy cross-platform file and folder transfers (Windows, Linux, Mac and *BSD).provides end-to-end encryption (using PAKE).

allows any two computers to transfer data (using a relay).For this, croc uses code phrases, a combination of three random words. By default, a code phrase can only be used once between two parties, so an attacker would have a chance of less than 1 in 4 billion to guess the code phrase correctly to steal the data. The data going through the relay is encrypted using a PAKE-generated session key.

Thanks to this, croc can send files between computers in the same LAN, or over the Internet, without having port-forwarding enabled. When the sender and the receiver are on the same LAN, croc uses a local relay, otherwise a public relay is used. The data transfer is done using a relay, either using raw TCP sockets or websockets. As a bonus feature, croc is also able to securely transfer a short text or URL directly. With support for resumable, peer-to-peer transfers. The idea behind croc is being able to transfer files and folders between cross-platform computers securely, fast and easy. The program is written in Go and is available for Microsoft Windows, macOS, Linux and *BSD. It uses relay-assisted peer-to-peer transactions and end-to-end encryption via password-authenticated key exchange. Croc is a free and open source command line tool for secure file transfers between computers.
