Dieses kostenlose CLI-Tool schlägt jede kostenpflichtige Dateiübertragungs-App (croc)
BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술
스크립트
00:00:00Das ist Croc und es ist eines der coolsten Tools, auf die ich kürzlich gestoßen bin.
00:00:04Ich sage es einfach mal so direkt: Ich glaube, das ist das beste Dateiübertragungs-Tool, das ich je
00:00:10verwendet habe. Da habt ihr es. Ich habe es gesagt. Croc ist nicht nur ein Tool zur Dateiübertragung. Es ist grundlegend anders
00:00:17in seiner Bauweise und Funktionsweise. In diesem Video schauen wir uns also Croc an,
00:00:22sehen, wie es funktioniert, und ich zeige euch, wie extrem einfach es zu bedienen ist. Es wird eine Menge
00:00:28Spaß machen. Also legen wir los. Hier ist eine Frage, die man sich stellen sollte: Wie viele Möglichkeiten fallen euch jetzt gerade
00:00:38ein, eine große Datei auf den Computer einer anderen Person zu senden? Es gibt AirDrop, WeTransfer, Dropbox,
00:00:46Google Drive, SCP, Discord, wenn man verzweifelt ist, einen USB-Stick, wenn man wirklich verzweifelt ist, und jemandem einen USB-Stick
00:00:56zuzuschicken, wenn man absolut verrückt ist. Es gibt also Dutzende von Tools dafür. Und doch hat fast
00:01:02jeder eine Geschichte über Dateiübertragungen, die 30 Sekunden hätten dauern sollen und stattdessen den
00:01:08ganzen Nachmittag in Anspruch genommen haben. Zum Beispiel: Dein Kollege versucht, dir etwas per AirDrop zu senden, aber leider bist du
00:01:15auf Windows. In einem anderen Szenario lief der WeTransfer-Link ab, bevor die andere Person dazu kam.
00:01:21Die Datei war zu groß für E-Mail. Die andere Person hat kein Dropbox-Konto und möchte auch kein
00:01:27erstellen. Und ehrlich gesagt, verurteile ich sie nicht. Hier ist also die eigentliche Frage: Bei so vielen Tools,
00:01:32warum passiert das immer wieder? Die Antwort ist: Weil ehrlich gesagt keine dieser Lösungen die
00:01:38Drei-Säulen-Strategie nutzt, die eine großartige Dateiübertragungslösung ausmacht. Croc wurde von Zach Scholl entwickelt,
00:01:45und auf seiner Website erklärt er detailliert, wie die Architektur einer guten Dateiübertragungslösung
00:01:51aussehen sollte. Und das ergibt wirklich viel Sinn. Ein gutes System zur Dateiübertragung braucht drei
00:01:57Säulen: Es muss schnell, sicher und einfach sein. Alle drei gleichzeitig, ohne bei einem davon Abstriche zu machen.
00:02:05Die meisten Tools wählen zwei davon und treffen einfach nicht den richtigen Punkt in diesem Venn-Diagramm.
00:02:11Schauen wir uns also jede Säule einzeln an. Die meisten linkbasierten Tools funktionieren so, dass man die Datei
00:02:18auf einen Server hochlädt und die andere Person sie dann herunterlädt. Klingt gut, aber das ist mathematisch
00:02:23eigentlich langsamer, als es sein müsste. Wenn du mit 5 Megabit pro Sekunde hochlädst und mit 8 Megabit
00:02:30pro Sekunde herunterlädst, ergibt ein sequenzieller Upload und anschließender Download eine effektive Rate von etwa 3,1 Megabit pro Sekunde.
00:02:37Das ist langsamer als jede Geschwindigkeit für sich genommen. Das passiert eben, wenn man Dinge nacheinander
00:02:43statt gleichzeitig erledigt. Reden wir über Sicherheit. Viele sichere Übertragungstools verlassen sich darauf, dass man
00:02:50ein gemeinsam genutztes Passwort zur Verschlüsselung der Datei festlegt. Das ist okay, außer dass Passwörter nur so stark sind
00:02:57wie das Passwort, das man tatsächlich wählt. Und wenn das Passwort erraten oder geleakt wird, nun, dann war es das. Spiel vorbei.
00:03:04Und drittens: Es muss einfach sein. Momentan haben wir fantastische Tools wie SSH oder FTP,
00:03:11die wirklich schnell und sehr sicher sind. Aber sie erfordern, dass ein Computer als Server läuft, bei dem
00:03:18Port-Weiterleitung aktiviert ist. Was eine völlig vernünftige Einrichtung für ein Rechenzentrum oder eine technisch versierte
00:03:24Person ist, aber eine völlig unzumutbare Forderung für zwei Laptops in einem Café. Schaut euch also das Muster an.
00:03:30WeTransfer ist einfach, aber langsam und nur so sicher wie sein Link. SCP ist schnell und sicher,
00:03:37aber kein technisch unversierter Freund wird wissen, wie man SCP sofort verwendet. Fast nichts
00:03:43erfüllt also alle drei Säulen. Aber wie unterscheidet sich Croc? Nun, Croc ist ein Open-Source Go-basiertes CLI-Tool,
00:03:51das speziell dafür entwickelt wurde, bei keiner dieser drei Säulen Kompromisse einzugehen. Zuerst einmal: schnell. Anstatt des
00:03:57Modells “Hochladen, dann Herunterladen” nutzt Croc einen Relay-Server, um eine Vollduplex-Konversation zwischen beiden
00:04:04Computern aufzubauen. Beide Seiten senden und empfangen gleichzeitig Daten, sodass man nicht durch die
00:04:10sequenzielle Upload-Download-Mathematik von vorhin ausgebremst wird. Und wenn sich beide Geräte zufällig im selben lokalen
00:04:17Netzwerk befinden, wird Croc dies erkennen und stattdessen lokal übertragen, was noch schneller ist.
00:04:23Als Nächstes: sicher. Anstatt eines statischen gemeinsam genutzten Passworts verwendet Croc etwas namens PAKE, “password
00:04:30authenticated key exchange”. Es verwendet eine einmalige Code-Phrase, aber es ist an sich kein Verschlüsselungsschlüssel.
00:04:38Beide Seiten nutzen diese Phrase in einem kryptografischen Hin- und Her-Austausch, um im laufenden Betrieb einen viel stärkeren Schlüssel
00:04:44zu generieren. Wenn jemand versucht, diesen Austausch mit der falschen Phrase abzufangen, schlägt die ganze Sache
00:04:50einfach fehl. Es werden also keine Daten übertragen und jeder weiß, dass etwas nicht stimmt. Und schließlich: es ist einfach. Ein einzelnes
00:04:57Binary, kein Server zum Konfigurieren, keine Port-Weiterleitung, funktioniert direkt durch NATs und Firewalls über den Relay-
00:05:04Server. Und beim Empfang muss man nur “Croc” eingeben, gefolgt von der Code-Phrase, wenn danach gefragt wird,
00:05:10und dann die Übertragung akzeptieren, und fertig. Aber Moment, wer betreibt eigentlich dieses Relay? Nun,
00:05:16standardmäßig leitet Croc Ihre Übertragung über ein öffentliches Relay, das vom Schöpfer des Tools selbst,
00:05:22Zach, betrieben wird. Da die Datei selbst per PAKE Ende-zu-Ende verschlüsselt ist, bevor sie überhaupt
00:05:27Ihren Computer verlässt, sieht das Relay nur verschlüsselte Bytes und Verbindungs-Metadaten. Es kann physisch nicht
00:05:34Ihre Dateiinhalte lesen. Aber es ist standardmäßig immer noch ein Drittanbieter-Server, der mitten in einer Übertragung sitzt.
00:05:40Und wenn Sie in einem Unternehmen mit Datenresidenzregeln arbeiten oder eine Richtlinie gegen das Routing von Datenverkehr
00:05:45über Infrastrukturen haben, die Sie nicht kontrollieren, wird das ein Hindernis sein. Aber die gute Nachricht ist,
00:05:50dass Croc das berücksichtigt. Es gibt einen integrierten “Croc-Relay”-Befehl, der mit einem Docker-Image ein eigenes Relay
00:05:57startet. Und dann leiten Sie Ihre Übertragungen einfach mit dem Relay-Befehl und dem Relay-Flag an dieses,
00:06:03statt an das Standard-Relay. Das öffentliche Relay ist also der bequeme Standard für den persönlichen Gebrauch. Aber für alles
00:06:10in einer Unternehmensumgebung ist das Selbsthosten des Relays in fünf Minuten erledigt und kein K.-o.-Kriterium. Aber jetzt
00:06:16möchte ich euch zeigen, wie extrem einfach und bequem die Nutzung von Croc ist. Ich persönlich habe Croc in den
00:06:23letzten Tagen viel benutzt und es ist so praktisch, da ich hier zwei Arbeitsstationen habe. Eine ist ein Windows-Rechner
00:06:29und die andere ein MacBook. Und seht euch an, wie einfach es ist, große Dateien von einem zum anderen
00:06:35mit Croc zu senden. Die Installation von Croc ist super einfach. Es ist nur ein Ein-Zeilen-Befehl für Windows und Mac.
00:06:41Und die GitHub-Seite hat Anweisungen für alle möglichen Setups. Und sobald wir es auf der
00:06:47Senderseite installiert haben, muss man “Croc send” gefolgt von der Datei eingeben und es spuckt eine zufällig generierte
00:06:54Code-Phrase aus. Auf der Empfängerseite führt man “Croc” aus, gibt bei Aufforderung die Code-Phrase ein, tippt Y zum Akzeptieren,
00:07:01und boom. Magie. So einfach, so schnell ist das. Und hier ist noch etwas: Es hat auch die Fähigkeit, Übertragungen
00:07:08wieder aufzunehmen, wenn die Verbindung abbricht. Unterbrechen wir die Verbindung mitten in der Übertragung und nehmen sie dann von der
00:07:14Senderseite aus wieder auf. Und wie ihr seht, macht es dort weiter, wo es aufgehört hat, statt von vorne zu beginnen. Das war's also.
00:07:19Das ist das gesamte Nutzererlebnis. Ein Befehl zum Senden, eine Code-Phrase zum Empfangen, kein Konto,
00:07:27kein Browser-Tab, kein Server, den man starten muss. Wie cool ist das denn? Da habt ihr es also Leute. Das ist Croc kurz zusammengefasst.
00:07:34Es ist schnell dank Vollduplex-Relay-Übertragung. Es ist sicher dank PAKE statt statischer
00:07:40Passwörter. Und es ist super einfach zu bedienen. Und wenn man es erst einmal gegen die Alternative ausprobiert hat, wie
00:07:46jemandem einen WeTransfer-Link zu schicken und zu hoffen, dass er nicht abläuft, ist es ehrlich gesagt schwer, davon wegzukommen,
00:07:52sobald man es benutzt hat. Was denkt ihr also über Croc? Gefällt es euch? Wird es in eurem Toolkit landen?
00:07:57Lasst es uns in den Kommentaren unten wissen. Und Leute, wenn ihr diese Art von technischen Erklärungen mögt,
00:08:02lasst es mich bitte wissen, indem ihr diesen Like-Button unter dem Video zertrümmert.
00:08:06Und vergesst auch nicht, unseren Kanal zu abonnieren.
00:08:09Das war Andres von BetterStack und wir sehen uns in den nächsten Videos.