CrypTool-Buch

Neues Kapitel 13: Lightweight Introduction to Lattices, Juni 2020

Dieses 90-seitige Kapitel (momentan nur in Englisch) behandelt die Theorie von Gittern in einer leicht verst├Ąndlichen Weise. Die Theorie wird begleitet von vielen praktischen Beispielen, SageMath-Code und kryptografischen Challenges. Die Eingabedaten der Challenges sind in Textdateien in chal_i_helper.zip geb├╝ndelt.

Neues Kapitel 14: CUDA Tutorial ÔÇô Cryptanalysis of Classical Ciphers Using Modern GPUs and CUDA, April 2021

Dieses 90-seitige Kapitel (momentan nur in Englisch) enth├Ąlt eine praktische Einf├╝hrung in das Schreiben von CUDA-Programmen unter Linux und Windows. Es erl├Ąutert die Konzepte, die ├ťberwindung von Problemen (Threads, Shared Memory, Debugging) und den Umgang mit Kompromissen. Die Theorie wird von praktischen Beispielen begleitet und es werden zwei komplette eigenst├Ąndige GPU-Tools zur automatischen Entschl├╝sselung von Geheimtexten (Ciphertext-Only-Angriff) implementiert. Diese Tools zielen auf Geheimtexte, die durch monoalphabetische Substitution oder durch einfache Spalten-Transposition verschl├╝sselt sind.

Aktuelle Buch-Version: 12. Auflage, Mai 2018

In diesem kostenlosen, ├╝ber 500 Seiten umfassenden Buch, das mit den CT-Programmen ausgeliefert wird, finden Sie eher mathematisch orientierte Informationen ├╝ber das Lernen, Experimentieren und Nutzen von kryptografischen Verfahren. Die 12. Auflage ist ein umfangreiches Update des Buches.

Die Hauptkapitel wurden von verschiedenen Autoren verfasst und sind in sich abgeschlossen.

  • Das erste Kapitel beschreibt die Prinzipien der symmetrischen und asymmetrischen Verschl├╝sselung und erl├Ąutert kurz die aktuellen Entschl├╝sselungs-Rekorde bei modernen symmetrischen Verfahren. Es stellt Definitionen f├╝r die Widerstandsf├Ąhigkeit von Verfahren vor und erkl├Ąrt kurz die Bedeutung der Kryptologie.

  • Im zweiten Kapitel wird ÔÇô aus didaktischen Gr├╝nden ÔÇô eine ausf├╝hrliche ├ťbersicht ├╝ber Papier- und Bleistiftverfahren gegeben.

  • Kapitel 3 widmet sich ausf├╝hrlich dem faszinierenden Thema der Primzahlen.

  • In Kapitel 4wird anhand vieler Beispiele bis hin zum RSA-Verfahren in die modulare Arithmetik und die elementare Zahlentheorie eingef├╝hrt.

  • Kapitel 5 liefert Einblicke in die mathematischen Konzepte und Ideen hinter der modernen Kryptografie.

  • Kapitel 6 gibt einen ├ťberblick zum Stand der Attacken gegen moderne Hash-Algorithmen und widmet sich dann kurz den digitalen Signaturen: Sie sind unverzichtbarer Bestandteil von E-Business-Anwendungen.

  • Kapitel 7 stellt Elliptische Kurven vor: Insbesondere bei der Implementierung in Hardware bietet Elliptische-Kurven-Kryptografie eine sehr effiziente Alternative zur RSA-basierten Signatur-Generierung.

  • Kapitel 8 f├╝hrt in die Boolesche Algebra ein. Diese ist Grundlage der meisten modernen, symmetrischen Verschl├╝sselungsverfahren, die auf Bitstr├Âmen und Bitbl├Âcken operieren. Prinzipielle Konstruktionsmethoden dieser Verfahren werden beschrieben und in SageMath implementiert.

  • Kapitel 9 stellt homomorphe Kryptofunktionen vor, die insbesondere im Cloud-Umfeld an Bedeutung gewinnen.

  • Kapitel 10 gibt einen breiten ├ťberblick und Vergleich ├╝ber die zur Zeit besten Algorithmen f├╝r (a) das Berechnen diskreter Logarithmen in verschiedenen Gruppen, f├╝r (b) das Faktorisierungsproblem und f├╝r (c) Elliptische Kurven. Dieser ├ťberblick wurde zusammengestellt, nachdem ein provozierender Vortrag auf der Black Hat-Konferenz 2013 f├╝r Verunsicherung sorgte, weil er die Fortschritte bei endlichen K├Ârpern mit kleiner Charakteristik f├Ąlschlicherweise auf K├Ârper extrapolierte, die in der Realit├Ąt verwendet werden.

  • Kapitel 11 diskutiert die Gefahren f├╝r bestehende kryptografische Verfahren und stellt alternative Forschungsans├Ątze (Post-Quantum-Kryptografie) f├╝r eine langfristige kryptografische Sicherheit vor.

Au├čerdem befindet sich im Anhang eine Auflistung zu Filmen und B├╝chern, in denen Kryptografie explizit eine Rolle spielt.

Viele Algorithmen sind anhand kleiner lauff├Ąhiger Codebeispiele in Python, SageMath, OpenSSL oder anhand einer der CrypTool-Versionen erl├Ąutert. Den Code der SageMath-Skripte finden Sie hier. Den Code von OpenSSL finden Sie hier.

Zum Erstellen des CrypTool-Buchs wurden SageTeX und PythonTeX verwendet. SageTeX ist im CTB selbst im Anhang zu SageMath kurz beschrieben. Zu PythonTeX haben wir unsere Erfahrungen anhand vieler Beispiele in ff. Dokument PythonTex-by-Examples.pdf beschrieben (rund 60 Seiten, Dokument nur in englisch). Mit beiden Tools lassen sich Berechnungen in LaTeX-Dokumenten sch├Ân automatisieren.