Cryptocat
Cryptocat war eine freie Software für Ende-zu-Ende-verschlüsselten Chat.[3][4] Nachrichten konnten damit auf dem gesamten Übertragungsweg nicht entschlüsselt werden. Die Arbeit an dem Projekt wurde von Nadim Kobeissi eingestellt[5] und die notwendigen Server abgeschaltet.
Cryptocat | |
---|---|
Cryptocat 2.1.5 | |
Basisdaten | |
Entwickler | Nadim Kobeissi[1] u. a. |
Erscheinungsjahr | 19. Mai 2011 |
Aktuelle Version | 3.2.08[2] (20. Februar 2017) |
Betriebssystem | Linux, Windows, macOS |
Programmiersprache | JavaScript |
Kategorie | abhörsichere Kommunikation |
Lizenz | AGPL/GPL (freie Software) |
deutschsprachig | ja |
crypto.cat |
Geschichte
Cryptocat wurde 2011 erstmals veröffentlicht. Cryptocat wurde zunächst als Webanwendung auf einer Website angeboten, wodurch die Auslieferung des Programmcodes bei jeder Anwendung erneut erfolgen musste und nur durch das System der TLS-Zertifizierungsstellen authentisiert ist, welches durch seine unüberschaubar große Angriffsfläche als anfällig für Mittelsmannangriffe gilt.[6] Nadim verteidigte diese Methode zunächst für über ein Jahr und behauptete, sie sei sicher, solange der ausliefernde Server nicht kompromittiert sei. Cryptocat wird stattdessen nunmehr als von den Browser-Herstellern signierte Browsererweiterungen angeboten, welche lokal vorgehalten werden.
Cryptocat-Entwickler Nadim Kobeissi sagte, dass er im Juni 2012 vom Ministerium für Innere Sicherheit der Vereinigten Staaten an der US-Grenze festgehalten und zur Zensurresistenz von Cryptocat verhört wurde. Er twitterte nachher über den Vorfall, was zu Medienecho und einem Anstieg der Popularität der Software führte.[7][8]
Im November 2012 wurde bekannt, dass Cryptocat Initialisierungs-Nonces für den Zählermodus der AES-Blockverschlüsselung mehrfach verwendete, da beide Gesprächspartner mit demselben Wert starteten. Cryptocat startet nun mit zufälligen Nonces und übermittelt und speichert verwendete Nonces, um bei einer Wiederverwendung Nachrichten zu verwerfen und Warnmeldungen auszugeben.
Im selben Monat wurden auch Ergebnisse einer unabhängigen Code-Prüfung durch Mario Heiderich et al. veröffentlicht, in der auf eine Schwäche für Cross-Site-Scripting aufmerksam gemacht wird.
Im Juni 2013 wurde Cryptocat von dem Journalisten Glenn Greenwald bei seinem Hongkong-Aufenthalt genutzt, um den NSA-Whistleblower Edward Snowden erstmals zu treffen, nachdem andere Verschlüsselungssoftware den Dienst versagt hatte.[9] Im November 2013 wurde Cryptocat im Iran verboten, kurz nachdem Irans neuer Präsident Hassan Rohani gewählt worden war, welcher eine offenere Internet-Gesetzgebung versprochen hatte.[10]
Seit 2013 kann Cryptocat mit dem Facebook Messenger verbinden, um darüber verschlüsselte Gesprächssitzungen mit anderen Cryptocat-Nutzern aufzubauen.[11]
Nachdem Apple am 27. Dezember 2013 die Aufnahme der iOS-App in seinen App Store aus geheimen Gründen zunächst abgelehnt hatte,[12] ist es dort mittlerweile auch erhältlich.[13]
2014 führte Cryptocat eine verbesserte Benutzerauthentifizierung ein, um das Erkennen von Mittelsmannangriffen zu erleichtern.[14] Die Verbesserungen wurden vorgenommen, nachdem eine Prüfung durch iSec Partners das vorherige Verfahren als unzureichend kritisiert hatte.
In einer von der deutschen PSW Group im Juni 2014 durchgeführten Untersuchung zur Datensicherheit und Benutzbarkeit von Sofortnachrichten-Verschlüsselungssoftware wurde Cryptocat neben Threema und Surespot am besten bewertet.[15] Im November 2014 erreichte Cryptocat 7 von 7 Punkten auf der Wertungsliste für sichere Textnachrichtendienste von der Electronic Frontier Foundation.[16] Im selben Jahr erhielt die Software den internationalen Elevate Award.
Am 19. Februar 2016 wurde Cryptocat aus dem Google Web Store, scheinbar vom Autor selbst, entfernt. Darauf hin meldete sich Nadim Kobeissi auf Twitter und wies auf einen Brief an die Benutzer auf der Cryptocat-Website hin, in dem es um die Zukunft von Cryptocat ginge. Das Schreiben erklärte, der Service würde temporär komplett eingestellt werden, bis eine komplette Neuprogrammierung des Codes fertig sei. Kobeissi begründete die vorübergehende Einstellung des Messengers damit, dass er veraltet sei. Auch schrieb er, die zukünftige Version sei nur noch als Desktop-Client verfügbar, und nicht mehr wie bisher als Erweiterung für den Browser, außerdem sollen viele interessante Technologien integriert werden, an denen er bei INRIA arbeitet. Aus weiteren Twitter-Posts ließ sich herauslesen, dass im neuen Cryptocat Funktionen wie Emoticons, das Senden von Dateien oder eine Freundesliste vorhanden sein werden, weiterhin werde es möglich sein, Accounts anzulegen.[17]
Die neue Version von CryptoCat wurde Ende Mai 2016 veröffentlicht und wurde, laut Aussage der Entwickler, innerhalb von 24 Stunden über 10.000 Mal heruntergeladen,[18] einen Monat danach verzeichnete die Software bereits über eine Million Downloads.[19]
Am 5. Februar 2019 gab das Team bekannt, CryptoCat nicht länger weiterzuentwickeln und man den Service mit dem kommenden Tag einstellt. Als Alternative empfiehlt man den Messenger Wire.[20]
Zweck
Cryptocat wird als eine Erweiterung für die meisten gebräuchlichen Webbrowser oder als Anwendungssoftware („App“) für GNU/Linux, Windows, macOS, iOS und Android[21] (Beta) angeboten. Es wird hauptsächlich von Nadim Kobeissi entwickelt und als freie Software auch im Quelltext veröffentlicht. Die Browsererweiterungen sind unter den Bedingungen von Version 3 der GNU Affero General Public License (AGPL) verfügbar, die eigenständigen Anwendungen unter Version 3 der GNU General Public License (GPL).
Cryptocats erklärtes Ziel ist es, sicher verschlüsselte Kommunikation zugänglicher für durchschnittliche Anwender zu machen.[22][23] Die Chat-Software soll Datensicherheit und einfache Nutzbarkeit in Einklang bringen und dabei mehr Vertraulichkeit als Dienste wie Google Talk oder Internet Relay Chat bieten, wobei ein höheres Niveau an Benutzerfreundlichkeit gewahrt werden soll als bei Pidgin.[24] Cryptocat war beteiligt an der Entwicklung von (standardisierter) Grundlagentechnik für kryptographische Webanwendungen allgemein und wird so auch als Vorreiter für eine neue Generation besonders benutzerfreundlicher, browserbasierter Verschlüsselungsanwendungen gesehen.[25]
Bis 2013 wurden mehrere schwerwiegende Fehler im Verschlüsselungssystem bekannt.[26] Nach mehreren professionellen Sicherheitsprüfungen wurden keine weiteren gravierenden Probleme bekannt, und Cryptocat schaffte es zu einer Empfehlung durch die Electronic Frontier Foundation (EFF).[27] Von Entwicklerseite wird es nach wie vor als unfertig bezeichnet und davor gewarnt, der Software sein Leben anzuvertrauen.
Merkmale
Cryptocat ermöglicht auf jedem Desktop-Rechner mit einem modernen Webbrowser die schnelle Einrichtung einer Ende-zu-Ende-verschlüsselten Chatumgebung. Cryptocat ist derzeit kompatibel mit Google Chrome,[28] Mozilla Firefox, Safari und Opera sowie iOS-Geräten und macOS.
Alle über Cryptocat versandten Nachrichten, einschließlich Gruppenchat-Nachrichten und Dateiübertragungen, sind Ende-zu-Ende-verschlüsselt, wodurch dem gesamten Übertragungssystem unterwegs nur verschlüsselte Daten anvertraut werden, zu denen nur die gewünschten Empfänger passende Entschlüsselungsschlüssel haben. Cryptocats Kryptographie gewährleistet Vertraulichkeit, Integrität, Authentifizierung und Folgenlosigkeit bei allen Unterhaltungen und bietet bei Dateiübertragungen und Zweiergesprächen mit OTR zusätzlich Abstreitbarkeit. Cryptocat bietet Ende-zu-Ende-Verschlüsselung mit Folgenlosigkeit bei Schlüsselverlust (englisch forward secrecy) und Abstreitbarkeit (deniability), sowohl für Einzel- wie auch für Gruppengespräche und Dateiübertragungen.
Cryptocat bietet selber keine Lösung für bleibende Kontaktlisten. Als Alternative wurde eine Funktion zur Integration des Facebook Messengers implementiert.[29][11]
Cryptocat bietet selber keine Lösung zur Anonymisierung der Verkehrsdaten. Das Projekt plant eine Version für gemeinnützige Organisationen zur eingebetteten Nutzung in Raspberry-Pi-Geräten.[30][31] Im Juli 2013 wurde auch mit der Entwicklung einer Commotion-Netzwerk-kompatiblen Version begonnen.
Architektur
Die Client-Software ist als Browsererweiterung implementiert oder für Mac OS X und iOS auch als native Anwendung. Die weite Verbreitung von Webbrowsern wird häufig als Grund für die Entscheidung für diese Plattform angeführt.[32]
Verschlüsselung
Cryptocat nutzt das Off-the-Record-Messaging-Protokoll (OTR), welches verschlüsselte Nachrichtenübermittlung zwischen jeweils zwei Beteiligten ermöglicht. Es nutzt weiterhin ein eigenes Protokoll zur Verschlüsselung von Gruppengesprächen, welches auf Curve25519, AES-256 und HMAC-SHA512 basiert, die allesamt Industriestandards für Kryptographieanwendungen darstellen. Da Cryptocat für jede Unterhaltung neue Schlüsselpaare erzeugt, setzt es eine Form von Folgenlosigkeit um.[33]
Die Verschlüsselung für Dateiübertragungen basiert auf herkömmlichem OTR. OTR liefert den Einmalschlüssel, aus dem dann mit SHA512 der eigentliche Verschlüsselungsschlüssel und Daten für die Authentisierung abgeleitet werden. Die Datei wird dann in 63-Kilobyte-Abschnitten per AES256 im Zählermodus verschlüsselt. Ein mittels HMAC gewonnener Authentisierungsprüfwert über die verschlüsselten Daten wird angefügt. Dann wird eine XMPP-Dateiübertragung eingeleitet (gemäß XEP-0096) und die verschlüsselte Datei mit XMPP als sogenannter „In Band Bytestream“ (gemäß XEP-0047) übertragen.
Netzwerk
Cryptocats Netzwerk basiert auf Extensible Messaging and Presence Protocol (XMPP) und Bidirectional-streams Over Synchronous HTTP (BOSH). Das System transportiert nur Daten und speichert den Datenschutzrichtlinien des Projektes zufolge nichts.[34] Das Projekt nutzt ejabberd und nginx für das XMPP-BOSH-Relais. Zusätzlich zur clientseitigen Ende-zu-Ende-Verschlüsselung wird Kommunikation zwischen Client und Server mit Transport Layer Security (TLS/SSL) abgesichert.
Cryptocat veröffentlicht seine Server-Konfigurationsdateien und Anweisungen für andere zur Einrichtung eigener Server für die Nutzung mit dem Cryptocat-Client.[35]
2013 wurde Cryptocats Server zu dem schwedischen Internet-Dienstleister Bahnhof migriert, der auch WikiLeaks und The Pirate Bay bediente. Die Server sind in Stockholm in einem Bunker aus Zeiten des Kalten Krieges untergebracht.[36]
Sicherheitsbelange
Manche Versionen von Cryptocat wurden beanstandet, da sie den Browser zur Verschlüsselung von Nachrichten nutzten,[37] was einige Forscher für weniger sicher halten als die Desktop-Umgebung.[38][39][40] Jüngere Versionen stützten sich auf browsereigene Zufallszahlenerzeugung.[41]
Nach Zweifeln an der Sicherheit von TLS insgesamt wurde das TLS-Zertifikat von Cryptocat in Google Chrome und Chromium gepinnt.[42]
Im Juli 2013 wurde von dem Sicherheitsforscher Steve Thomas ein Problem mit der Konvertierung von Werten aus dem eigentlich sicheren Pseudozufallszahlengenerator gemeldet.
Decryptocat
Steve Thomas machte im selben Monat auf eine weitere Sicherheitslücke aufmerksam, die zur Entschlüsselung beliebiger Gruppennachrichten genutzt werden kann, die mit Cryptocat zwischen September 2012 und dem 19. April 2013 verschlüsselt wurden.[43][44] Dieser bisher schwerwiegendste Fehler war durch die Nichtberücksichtigung der schwachen Typisierung von JavaScript entstanden. Bei der Schlüsselerzeugung wurden anstatt von 32 Bytes, die jeweils 256 Werte annehmen können, 32 Dezimalstellen erzeugt. Dies reduzierte die Schlüsselstärke von einer Komplexität von etwa 2250 auf etwa 254. Einzelgesprächsnachrichten waren nicht betroffen und der Fehler war einen Monat zuvor behoben worden. Zwei externe Code-Prüfungen, durch Cure53 und VeraCode, übersahen diesen Fehler. Nachdem Thomas’ Entdeckungen veröffentlicht wurden, gab Cryptocat eine Sicherheitsempfehlung aus, die alle Nutzer aufforderte die Aktualisierung ihrer Software sicherzustellen.[44] Seit 2011 findet sich auf der Startseite der Webpräsenz und in der Software selbst eine Warnung über die experimentelle Natur des Projektes. Auf dem Cryptocat-Blog wurde eine Warnung eingestellt, die Nutzern erklärt, dass über die Software geführte Gruppenunterhaltungen in der Vergangenheit gebrochen worden sein könnten.[44]
Weblinks
- Offizielle Website (englisch)
- Quellcode auf GitHub
Einzelnachweise
- Nadim Kobeissi. In: GitHub. Abgerufen am 4. Mai 2017 (englisch).
- Cryptocat 3.2.08 Release Notes. (Nicht mehr online verfügbar.) In: crypto.cat. Archiviert vom Original am 6. März 2019; abgerufen am 9. September 2019 (englisch).
- Adam Dachis: Cryptocat Creates an Encrypted, Disposable Chatroom on Any Computer with a Web Browser. In: Lifehacker, 9. August 2011. Abgerufen am 8. April 2012.
- Justin Giovannetti: Encrypted messages: chatting safely with Cryptocat. In: OpenFile, 4. Februar 2012. Archiviert vom Original am 6. Februar 2012 Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.. Abgerufen am 8. April 2012.
- Nadim Kobeissi: Erklärung zur Abschaltung der Website. Abgerufen am 13. März 2019.
- Jesse Burns (iSec Partners), Peter Eckersley (EFF); 28. Dezember 2010: Is the SSLiverse a safe place? An update on EFF’s SSL Observatory project.
- Jon Matonis: Detaining Developer At US Border Increases Cryptocat Popularity. Forbes. 18. April 2012. Abgerufen am 28. Juli 2012.
- Developer’s detention spikes interest in Montreal’s Cryptocat. Itbusiness.ca. 8. Juni 2012. Abgerufen am 28. Juli 2012.
- Glenn Greenwald: No Place to Hide: Edward Snowden, the NSA, and the U.S. Surveillance State. Metropolitan Books, 13. Mai 2014, ISBN 978-1-62779-073-4, S. 59 (Abgerufen am 22. Juni 2014).
- Lorenzo Franceschi-Bicchierai: Iran Blocks Encrypted Chat Service Despite Claims of Internet Freedom. In: Mashable, 21. November 2013. Abgerufen am 22. Juni 2014.
- Quinn Norton: Cryptocat Creates an Encrypted, Disposable Chatroom on Any Computer with a Web Browser. In: The Daily Beast, 12. Mai 2014. Abgerufen am 22. Juni 2014.
- Henning Steier: Verschlüsselte Chats: Cryptocat schafft es nicht in den App Store. Neue Zürcher Zeitung, 30. Dezember 2013
- itunes.apple.com
- Recent Audits and Coming Improvements. Cryptocat. Archiviert vom Original am 15. Oktober 2014. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. Abgerufen am 22. Juni 2014.
- Christian Heutger: Die Ergebnisse unseres großen Messenger-Tests. Abgerufen am 26. Juni 2014.
- Secure Messaging Scorecard. Which apps and tools actually keep your messages safe?. Electronic Frontier Foundation. 4. November 2014. Abgerufen am 4. Dezember 2014.
- crypto.cat: Dear Cryptocat users (Memento vom 19. Februar 2016 im Internet Archive)
- Cryptocat Twitter: New Cryptocat downloaded 10,000+ times in first 24 hours. 31. März 2016, abgerufen am 16. Mai 2019 (englisch).
- CryptoCat Twitter: Cryptocat statistics 1 million+ downloads. 6. Mai 2016, abgerufen am 16. Mai 2019 (englisch).
- Cryptocat Twitter: We are discontinuing the Cryptocat service starting tomorrow. 5. Februar 2019, abgerufen am 16. Mai 2019 (englisch).
- Gabriel-fm/cryptocat-android. In: GitHub. Abgerufen am 18. September 2016.
- Andy Greenberg: Crypto.cat Aims To Offer Super-Simple Encrypted Messaging. In: Forbes, 27. Mai 2011. Abgerufen am 8. April 2012.
- Christopher Curtis: Free encryption software Cryptocat protects right to privacy: inventor. In: Montréal Gazette, 17. Februar 2012. Archiviert vom Original am 19. Februar 2012. Abgerufen am 8. April 2012.
- Using His Software Skills With Freedom, Not a Big Payout, in Mind. In: New York Times, 18. April 2012.
- Erich Möchel: Browser als universale Verschlüsselungstools. FM4, 9. November 2014
- Hanno Böck: Cryptocat: Verschlüsseltes Chatsystem gebrochen. golem.de; 4. Juli 2013
- Hanno Böck: Verschlüsselung: EFF gibt Empfehlung für sichere Messenger. golem.de; 5. November 2014
- Cryptocat on the Chrome Web Store. Chrome.google.com. Archiviert vom Original am 15. Juni 2012. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. Abgerufen am 28. Juli 2012.
- Cryptocat, Now with Encrypted Facebook Chat. Cryptocat. Archiviert vom Original am 11. November 2014. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. Abgerufen am 22. Juni 2014.
- Jamillah Knowles: Raspberry Pi network plan for online free-speech role. In: BBC News, 3. März 2012. Abgerufen am 8. April 2012.
- Jeremy Kirk: Cryptocat Aims for Easy-to-use Encrypted IM Chat. In: PCWorld, 14. März 2012. Archiviert vom Original am 17. Dezember 2012 Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.. Abgerufen am 8. April 2012.
- Nadim: Documenting and Presenting Vulnerabilities in Cryptocat. (Nicht mehr online verfügbar.) Cryptocat Blog, 11. November 2013, archiviert vom Original am 23. Juni 2014; abgerufen am 5. Februar 2019 (englisch, Originalwebseite nicht mehr verfügbar).
- Cryptocat Multiparty Protocol Specification Abgerufen am 28. Dezember 2013
- Cryptocat Privacy Policy. Cryptocat. Abgerufen am 22. Juni 2014.
- Server Deployment Instructions. Cryptocat. Abgerufen am 22. Juni 2014.
- Nadim Kobeissi: Cryptocat Network Now in Swedish Nuclear Bunker. Archiviert vom Original am 7. April 2013. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. Abgerufen am 9. Februar 2013.
- „JavaScript crypto in the browser is pointless and insecure.“
- Matasano Web Security Assessments for Enterprises Matasano Security
- Thoughts on Critiques of JavaScript Cryptography. (Memento des Originals vom 21. September 2013 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. Nadim Kobeissi
- HOPE 9: Why Browser Cryptography Is Bad & How We Can Make It Great on Vimeo (Memento des Originals vom 21. September 2013 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- Crypto.getRandomValues() auf MDN Web Docs
- Google Chromium source code commits. Google. Abgerufen am 9. September 2013.
- Steve Thomas: DecryptoCat. Abgerufen am 10. Juli 2013.
- New Critical Vulnerability in Cryptocat: Details. Cryptocat Development Blog. Archiviert vom Original am 5. Juli 2013. Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. Abgerufen am 7. Juli 2013.