Croc ist ein extrem minimalistisches, trotzdem sicheres, terminalbasiertes, quelloffenes (LGPLv3), gutgeschmiertes, in Go geschriebenes und plattformunabhängiges Next-Level Filesharing-Programm, mit dem beliebige Daten rasch und mit extrem wenig Aufwand, verschlüsselt (End-to-End Encryption) zwischen zwei Computern transferiert werden können.
Bei der gängigsten Methode zur Übertragung der Files werden die Daten zuerst auf einen Server hochgeladen, um sie von dort dann herunterholen zu können. Bei Don Croc findet das Hoch- und Herunterladen der Daten zwischen den beiden Computern gleichzeitig (Echtzeit Full-Duplex-Übertragung) statt, was die Übertragungsrate effektiv erhöht und nur durch die lahmere Arschgeige 😘 der beiden Übertragungspartner begrenzt wird.
Das ganze Spektakel läuft in etwa folgendermaßen ab:
- Croc wird auf der Senderseite mit der zu teilenden Datei(en) oder einem Ordner aufgerufen (nicht schreien).
- Es wird automatisch ein einmaliges, schnuckeliges und leicht zu merkendes, natürlich genderloses 😅 Passwort generiert.
- Der bevorstehende Datenaustausch wird Default-mäßig über einen Public-Croc-Relay initialisiert.
- Auf Empfängerseite wird Croc mit dem zuvor generierten Passwort aufgerufen und zack, bumm batsch beginnt auch schon der verschlüsselte Datentransfer.
Einige Oscarverdächtige Eigenschaften von Croc:
- Support von Tor-Proxies für mehr Anonymität
- IPv6-Übertragung mit IPv4-Fallback-Funktion
- Bärenstarke Ende-zu-Ende-Verschlüsselung mit PAKE
- Übertragung mehrerer Dateien oder reinem Text möglich
- Support für die Wiederaufnahme unterbrochener Übertragungen
- Kein lokaler Server oder Rumgefummel mit Port-Weiterleitung erforderlich
- Verschiedene Verschlüsselungskurven möglich (P-256, P-348, P-521, SIEC)
- Einfache plattformübergreifende Datenübertragungen (Windows, Linux, Android, Mac)
- Ermöglicht Datenübertragung zwischen zwei beliebigen Computern (unter Verwendung eines Public-/Private-Relais)
Croc installieren
Croc kann man sich auf folgenden Wegen auf das System beamen:
- Man verselbstkompiliert es sich hochprofessionell aus dem freien Programmquellcode
- Als schon vorkompiliertes und portables Programm (https://github.com/schollz/croc/releases)
- Über einen OS-Paketmanager oder Bash-Script (Win – Scoop, Win – Chocolatey, MacOS, Android, usw.)
Installationanleitung
# Linux curl https://getcroc.schollz.com | bash # Windows - Über den Scoop-/Chocolatey-Paketmanager oder das Standalone-File - scoop install croc (https://scoop.sh/) - choco install croc (https://chocolatey.org/) # Vorkompiliertes Programm - Standalone-File: https://github.com/schollz/croc/releases # MacOS brew install croc (https://brew.sh/)
Croc auf Sender-Seite benutzen
# Stoff senden croc send [datei(en)-oder-Ordner] # Beispielübertragung eines Ubuntu-ISO-Files croc send ubuntu-18.04.6-live-server-amd64.iso # Output Sending 'ubuntu-18.04.6-live-server-amd64.iso' (969.0 MB) Code is: 5308-double-cobra-garcia On the other computer run croc 5308-double-cobra-garcia # Möchte man zur erweiterten Sicherheit noch ein eigenes Passwort mitgeben croc send --code '$PASSWORD' ubuntu-18.04.6-live-server-amd64.iso
Croc auf Empfänger-Seite benutzen
# Auf dem Empfänger-System wird das ISO-File folgend in Empfang genommen: croc 5308-double-cobra-garcia # Wird vom Sender ein eigenes Passwort gesetzt muss das --pass-Flag mit dem Extra-Passwort gesetzt werden croc --pass '$PASSWORD' 5308-double-cobra-garcia
Eigenen privaten Croc-Relay mit Docker realisieren
Um die Sicherheit und eventuell (je nach Netzdurchsatz) auch die Performance zu steigen, kann man (feste IP-/DynDNS-Adresse vorausgesetzt) sich einen eigenen Croc-Relay-Server mit einem einfachen Docker-Container gönnen.
# Privaten Croc-Relay mit Docker auf einem eigenen Server an den Start bringen docker run -d -p 9009-9013:9009-9013 -e CROC_PASS='$PASSWORD' schollz/croc # Datei als Sender über einen Privaten Relay versenden croc --pass '$PASSWORD' --relay 'du-kleiner-schlingel-du.de:9009:9009' send ubuntu-18.04.6-live-server-amd64.iso Sending 'ubuntu-18.04.6-live-server-amd64.iso' (969.0 MB) Code is: 5308-double-cobra-garcia On the other computer run croc --relay du-kleiner-schlingel-du.de:9009 --pass $PASSWORD 5308-double-cobra-garcia # Datei als Empfänger über einen Privaten Relay herunterholen croc --relay du-kleiner-schlingel-du.de:9009 --pass $PASSWORD 5308-double-cobra-garcia
Ansicht Datentransfer zwischen Linux (links) und Windows (rechts)