CrypTool ist ein Open-Source-Projekt.[1] Hauptresultat ist die freie Lern-Software CrypTool, die die Konzepte der Kryptographie und der Kryptoanalyse erfahrbar macht. Laut Hakin9[2] ist CrypTool weltweit die am meisten verbreitete Lern-Software im Bereich Kryptologie.

CrypTool

Logo
Screenshot
Screenshot

E-Learning-Programm für Kryptologie
Basisdaten

Hauptentwickler Bernhard Esslinger
Entwickler TU Darmstadt, Uni Duisburg-Essen, BW-Universität München, Professur Datenschutz und Compliance, Uni Siegen
Erscheinungsjahr 1998
Betriebssystem CT1: Windows und Linux (über Wine);
CT2: nur Windows;
JCT: Windows, Linux und macOS
Programmiersprache C++, C#, Java
Kategorie E-Learning, Kryptologie, Verschlüsselungssoftware
Lizenz Apache License v2.0
deutschsprachig ja
www.cryptool.org

Funktionen Bearbeiten

Es sind über 400 Algorithmen implementiert.[3] Diese können mit eigenen Daten und Parametern effizient ausgeführt werden.

Die grafische Benutzeroberfläche und die umfangreiche Online-Hilfe machen es dem Nutzer (auch „Anfängern“) leicht, kryptologische Verfahren kennenzulernen und zu verstehen. Enthalten sind sowohl die meisten klassischen Verfahren (siehe Geschichte der Kryptographie) als auch moderne Verfahren wie asymmetrische Kryptographie (RSA, ECC), digitale Signaturen, Hybrid-Verschlüsselung, homomorphe Verschlüsselung oder das Diffie-Hellman-Schlüsselaustauschverfahren. Auch Verfahren aus dem Bereich der Quantenkryptographie (BB84-Schlüsselaustausch-Protokoll) und der Post-Quanten-Kryptographie (McEliece, WOTS, Merkle-Signaturen MSS, eXtended Merkle Signature Scheme XMSS und SPHINCS) sind enthalten. Viele Verfahren (bspw. Huffman-Code, AES, Keccak, MSS) sind visualisiert.

Zusätzlich sind darin integriert: didaktische Spiele (wie der Zahlenhai, das Teilerspiel oder Zudo-Ku) und interaktive Anleitungen (die bspw. in die Primzahlen, in die elementare Zahlentheorie und Gitter-basierte Kryptographie einführen).

Verwendung Bearbeiten

Verwendung findet CrypTool sowohl in der Lehre an Hochschulen, im Unterricht an Schulen als auch in der Ausbildung in Firmen und Behörden oder in Fortbildungskursen wie TISP oder CISSP.

Die CrypTool-Software wird in einem Open-Source-Projekt entwickelt. Ursprünglich wurde sie von deutschen Firmen und Hochschulen entwickelt, inzwischen kommen die rund 70 Mitwirkenden aus der ganzen Welt. Zuwendungen in Form von Software-Plugins kamen z. B. von Universitäten oder Schulen aus den folgenden Städten: Belgrad, Berlin, Bochum, Brisbane, Darmstadt, Dubai, Duisburg-Essen, Eindhoven, Hagenberg, Jena, Kassel, Klagenfurt, Koblenz, London, Madrid, Mannheim, San Jose, Siegen, Utrecht, Warschau.[4]

Das Ziel von CrypTool ist, das Verständnis der Benutzer für Kryptologie zu erhöhen, die darunterliegenden Konzepte zu erläutern und die Benutzer für IT-Bedrohungen zu sensibilisieren.[5]

Sprachen und Auszeichnungen Bearbeiten

Das Programm CrypTool 1 ist in Deutsch, Englisch, Polnisch, Spanisch, Serbisch und Französisch verfügbar. CrypTool 2 ist in Deutsch, Englisch und Russisch verfügbar. Alle anderen Programme im CrypTool-Projekt (JCrypTool und CrypTool-Online) sind nur in Deutsch und Englisch verfügbar.

CrypTool wurde international als E-Learning-Software ausgezeichnet: TeleTrusT Special Award 2004, EISA 2004, IT Security Award NRW 2004 und Ausgewählter Ort 2008 in „Deutschland – Land der Ideen“ 2008.[6]

Weltweit wird das Paket zurzeit allein von der CrypTool-Seite rund 10.000-mal pro Monat heruntergeladen (knapp über 50 % laden die englische Version).

Entwicklung, History, Roadmap Bearbeiten

CrypTool wird seit 1998 entwickelt.

Als herunterladbare und offline ausführbare Programme sind verfügbar:

  • CrypTool 1[7] (entwickelt in C++ / MFC) (abgekürzt CT1)
    ist als typisch Menü-orientiertes Windows-Programm konzipiert, das auch externe (Java-)Programme hinzulädt. CT1 enthält über 100 Krypto-Funktionen.
  • CrypTool 2[8][9] (entwickelt in C# / .NET) (abgekürzt CT2)
    setzt das Konzept der visuellen Programmierung für kryptographische Prozesse um. Im Moment sind über 150 Krypto-Funktionen in CT2 enthalten. Ein Schwerpunkt ist die Kryptoanalyse klassischer Verfahren mit modernen Mitteln, bspw. mit den Verfahren von Lasry[10][11].
  • JCrypTool[12][13] (entwickelt mit Java / Eclipse / RCP) (abgekürzt JCT)
    läuft unter Windows, macOS und Linux, und hat sowohl eine Dokumenten- als auch eine Funktions-orientierte Perspektive. Im Moment sind über 100 Krypto-Funktionen in JCT enthalten. Ein Schwerpunkt sind moderne digitale Signaturen (wie Merkle-Bäume und SPHINCS).
 
Brute-Force-Angriff auf einen eingeschränkten AES in CrypTool 2

Neben den genannten produktiven CrypTool-Projekten gab es außerhalb des eigentlichen CrypTool-Projekts kurze Zeit das Projekt CrypTooLinux: Damit sollte CrypTool 1.x auf Linux portiert werden, aber den Entwicklern dieses Teilprojektes fehlte die dazu notwendige Zeit, und sie bezogen auch keine neuen Entwickler mit ein, so dass CrypTooLinux seit 2008 im Alpha-Stadium ruht.[14][15]

Die zwei Projekte CT2 und JCT sind seit 2007 die Nachfolger von CT1 und stellen als Pure-Plugin-Anwendungen regelmäßig neue stabile Versionen bereit.

Neben den offline ausführbaren Programmen werden im CrypTool-Projekt auch die beiden im Folgenden aufgeführten Webportale gepflegt.

CrypTool-Online (abgekürzt CTO) Bearbeiten

Zum CrypTool-Projekt gehört seit 2009 auch die Webseite CrypTool-Online[16], die Interessierten die Möglichkeit bietet, Verschlüsselungsverfahren gleich im Browser auf dem PC oder dem Smartphone (mittels JavaScript) auszuprobieren, ohne Software herunterzuladen und installieren zu müssen. Hier wird versucht, das Thema für Einsteiger und junge Leute ansprechend und einfach aufzubereiten. Eine große Nutzergruppe auf CTO sind Geocacher.

MysteryTwister (abgekürzt MTC3) Bearbeiten

Ebenfalls zum CrypTool-Projekt gehört der 2010 gestartete internationale Krypto-Wettbewerb MTC3[17], der aktuell über 200 Aufgaben rund um (alte und neue) Verschlüsselungsverfahren anbietet. Außerdem enthält die MTC3-Webseite ein moderiertes Forum, Benutzerstatistik und eine Hall-of-Fame. Die Aufgaben reichen von einfachen Rätseln für Einsteiger bis zu mathematischen Herausforderungen aus der modernen Kryptoanalyse für Forscher und Experten. Inzwischen engagieren sich über 9000 registrierte Benutzer an der Lösung der Aufgaben. Dabei wurden dort auch bisher ungelöste Rätsel wie das verschlüsselte Tagebuch des italienischen Partisanen Antonio Marzi[18] oder die Doppelwürfel-Challenge von Otto Leiberich[19] geknackt.

Awareness und Verwendung auf CryptoParties und in Schüler-Krypto-Veranstaltungen Bearbeiten

CrypTool wird ebenfalls eingesetzt, um Schüler für MINT-Fächer zu motivieren (Schülerkrypto[20]) als auch in Awareness-Veranstaltungen für jedermann (Anti-Prism-Party[21]).

Siehe auch Bearbeiten

Literatur Bearbeiten

  • Bernhard Esslinger und das CrypTool-Team: Kryptographie lernen und anwenden mit CrypTool und SageMath. 12. Auflage. CrypTool-Projekt, 2018 (cryptool.org [PDF]).
  • Nils Kopal, Bernhard Esslinger: CrypTool 2 – Ein Open-Source-Projekt zur Kryptologie. DACH Security 2018.
  • Nils Kopal, Olga Kieselmann, Arno Wacker, Bernhard Esslinger: CrypTool 2.0. 38(10) Auflage. Datenschutz und Datensicherheit-DuD, 2014, S. 701–708.

Weblinks Bearbeiten

Einzelnachweise Bearbeiten

  1. Einen Überblick in Englisch gibt die Präsentation auf dem GI-Kryptotag bei SAP 2016.
  2. Hackin9, IT Security Magazin, Januar 2011, Seite 30-37 "Das CrypTool-Projekt -- Der beste Weg, Kryptographie zu lernen und anzuwenden"
  3. Algorithmen: Funktionen in verschiedenen CrypTool-Versionen In einer Tabelle werden alle implementierten Verfahren aufgelistet. Die Liste kann anhand von Kategorien, Suchbegriffen und den CT-Versionen eingeschränkt werden.
  4. Präsentation auf Englisch auf einem Workshop in Norwegen listet die Contributors auf Seite 7 auf.
  5. CrypTool-Seite zu Awareness.
  6. CrypTool-Auszeichnungen
  7. CrypTool 1: Webseite für das CT1-Projekt
  8. CrypTool 2: Entwicklerseite des CrypTool 2-Projektes Zusätzlich zu den Release- und Betaversionen werden täglich sogenannte „Nightly Builds“ zum Download bereitgestellt.
  9. CrypTool 2: Facebook-Seite des CT2-Projekts
  10. George Lasry: A Methodology for the Cryptanalysis of Classical Ciphers with Search Metaheuristics PhD thesis 2017
  11. George Lasry et al.: Ciphertext-only cryptanalysis of short Hagelin M-209 ciphertexts Cryptologia 2018
  12. JCrypTool 1.0: GitHub-Projekt zu JCrypTool 1.0 Die Betaversion wird über Weekly Builds jedes Wochenende aktualisiert zum Download bereitgestellt.
  13. JCrypTool 1.0: Webseite des JCT-Projekts
  14. CryptooLinux auf Gna.org (Memento vom 17. Oktober 2016 im Internet Archive)
  15. Der Quelltext von CrypTooLinux war im Februar 2018 verfügbar von: Freshmeat.
  16. Onlineversion für Browser: CrypTool-Online.
  17. MysteryTwister (MTC3): Internationaler Krypto-Wettbewerb „MysteryTwister“ (MTC3)
  18. Lösung der Challenge "Aufzeichnungen eines italienischen Soldaten" aus MysteryTwister (MTC3)
  19. Lösung der Doppelwürfel-Challenge von Otto Leiberich
  20. Schülerkrypto: Schülerkrypto-Veranstaltungen in Kooperation von Unis und Schulen
  21. Anti-Prism-Party Karlsruhe: Ganz praktische Unterstützung gegen Überwachung und zum Selbstdatenschutz