Praesentation_Cryptography.pdf

Full Transcript

Departement Wirtschaft Cryptography 05.10.2024 Michael Zihlmann Dozent für Cryptography Version 1.2 Vorstellung Folie 2 Cryptography 05.10.2024 Michael Zihlmann ...

Departement Wirtschaft Cryptography 05.10.2024 Michael Zihlmann Dozent für Cryptography Version 1.2 Vorstellung Folie 2 Cryptography 05.10.2024 Michael Zihlmann Vorstellung Michael Zihlmann Dozent für Cryptography Dozent für Cyber Security Ausbildung: Berufserfahrung:  CAS Leadership & Management  SIX Group AG:  MAS Information & Cyber Security Senior Security Architect  BSc Computer Science Senior Security Officer  EFZ als Informatiker  Genesis Swiss Team AG: Security Consultant  Omnisec AG: Security Solutions Architect & Product Manager Folie 3 Cryptography 05.10.2024 Michael Zihlmann Umgangsform Ich bevorzuge:  Eine freundliche und respektvolle Du-Kultur – wie es in der Wirtschaft üblich ist. Auf den Folien werden Sie trotzdem mit «Sie» angesprochen.  Aktive Studierende: bringen Sie sich ein, stellen Sie Fragen! So profitieren Sie am meisten.  Zu manchen Übungsfragen gibt es die Lösung direkt auf der folgenden Slide. Bitte denken Sie aber zuerst selbst über die Aufgabenstellung nach, bevor Sie die Lösung anschauen!  Wird für eine Übung etwas mehr Zeit geben, wird auch ein grösserer Output erwartet!  Kamera ein: eine eingeschaltete Kamera hilft mir zu erkennen ob Sie sich gerade langweilen, Fragen haben oder Überfordert sind.  Mikrofon aus: bitte schalten Sie sich auf Stumm, falls sie nicht gerade etwas mitteilen möchten. Somit lenken Hintergrundgeräusche nicht vom Unterricht ab. Folie 4 Cryptography 05.10.2024 Michael Zihlmann Vorstellung Da wir nur eine kleine Gruppe sind, stellen Sie sich bitte kurz vor:  Name  Arbeitgeber  Berufserfahrung  Bezug zur Kryptographie (wenn vorhanden). Folie 5 Cryptography 05.10.2024 Michael Zihlmann Einleitung Folie 6 Cryptography 05.10.2024 Michael Zihlmann Historie der Verschlüsselung  Seit Menschen miteinander Kommunizieren, suchen sie nach Wegen für einen «geheimen» Austausch (Sprache, Schrift).  Beispiel Cäsar-Chiffre https://de.wikipedia.org/wiki/Caesar-Verschl%C3%BCsselung Folie 7 Cryptography 05.10.2024 Michael Zihlmann Cäsar-Chiffre  Verschiebung der Buchstaben um x-Zeichen im Alphabet.  Bei x=3 wird aus einem A ein D, aus B ein E, …  Eine klassische Substitution (Ersetzten) https://de.wikipedia.org/wiki/Caesar-Verschl%C3%BCsselung Folie 8 Cryptography 05.10.2024 Michael Zihlmann Cäsar-Chiffre  Warum ist die Cäsar-Chiffre leicht zu knacken? Folie 9 Cryptography 05.10.2024 Michael Zihlmann Cäsar-Chiffre  Schwäche im Algorithmus  durch ausprobieren einfach zu knacken.  Output der Verschlüsselung ist kein Zufälliges Muster sondern steht in direktem Zusammenhang mit dem Originaltext  diverse Cryptoanalysen möglich. Folie 10 Cryptography 05.10.2024 Michael Zihlmann Häufigkeitsanalyse https://upload.wikimedia.org/wikipedia/commons/0/0e/Alphabet_haufigkeit.svg Folie 11 Cryptography 05.10.2024 Michael Zihlmann Häufigkeitsanalyse  Wie würde die Häufigkeitsanalyse bei einer optimalen Verschlüsselung ausfallen? Folie 12 Cryptography 05.10.2024 Michael Zihlmann Häufigkeitsanalyse  Der Output einer optimalen Verschlüsselung erscheint einem völlig zufälligen Muster.  Jedes Zeichen müsste daher gleich oft Vorkommen.  Begrenzt man den Zeichenraum auf 26 (Buchstaben im Alphabet) müsste die Häufigkeit pro Zeichen bei 3.846% liegen. Folie 13 Cryptography 05.10.2024 Michael Zihlmann Steganographie  Verstecken von Informationen (Text, Bild,...) in einer Datei (Bild, Video, Audiofile).  Beispiel aus der Kindheit: Zitronensaft auf Papier.  Oft nur mit dem Fokus Informationen vor dem menschlichen Auge zu verstecken. Folie 14 Cryptography 05.10.2024 Michael Zihlmann Steganographie Anwendungsbeispiel:  Machine Identification Code (MIC): Druckerhersteller markieren (meist mit gelben Punkte) die Ausdrucke, damit der Abfluss von sensiblen Informationen zurückverfolgt werden kann. https://de.wikipedia.org/wiki/Machine_Identification_Code #/media/Datei:HP_Color_Laserjet_3700_schutz_g.jpg Folie 15 Cryptography 05.10.2024 Michael Zihlmann CIA Triangle  Confidentiality  Integrity  Availability  Was ist das Schutzziel der Verschlüsselung? Folie 16 Cryptography 05.10.2024 Michael Zihlmann Verschlüsselung  Klartext wird durch eine Verschlüsselungsfunktion mit Hilfe eines geheimen Schlüssels zum Geheimtext umgewandelt.  Hauptziel: Geheimhaltung von Informationen. Folie 17 Cryptography 05.10.2024 Michael Zihlmann Verschlüsselung Weitere Ziele der „modernen“ Verschlüsselung:  Schutz der Integrität (Unverfälschtheit der Nachricht )  Authentizität (Überprüfbarkeit des Urhebers - «Sigelwachs»)  Nichtabstreitbarkeit (Absender soll die Urheberschaft nicht abstreiten können.) Folie 18 Cryptography 05.10.2024 Michael Zihlmann Verschlüsselung  Was sind die negativen Einflüsse der Verschlüsselung?  Inwiefern kann eine Verschlüsselung ein System stören?  Warum verschlüsseln wir nicht einfach alles? Folie 19 Cryptography 05.10.2024 Michael Zihlmann Verschlüsselung Mögliche negative Einflüsse:  Ausfall eines Services aufgrund abgelaufener Zertifikate.  Verzögerungen aufgrund zusätzlicher Rechenzeit  Höhere Rechenlast, Ressourcenengpass Folie 20 Cryptography 05.10.2024 Michael Zihlmann Aspekte der Kryptographie  Militärisch: Sichern der Kommunikation, nachrichtendienstliche Aufklärung  Politisch: Sichern von Staatsgeheimnis  Wirtschaftlich: Business-Enabler ohne Verschlüsselung kein E-Banking  Sozial: Datenschutz, Vertrauenselement für technologischer Fortschritt Folie 21 Cryptography 05.10.2024 Michael Zihlmann CIA Triangle Ziel der Ziel der asymmetrischen symmetrischen Integrität Verschlüsselung Verschlüsselung Geheimhaltung Verfügbarkeit Negativer Einfluss Folie 22 Cryptography 05.10.2024 Michael Zihlmann One Time Pad  Die absolut sicherste Verschlüsselung welche es gibt! Folie 23 Cryptography 05.10.2024 Michael Zihlmann XOR Plain Key Cipher 0 0 0 0 1 1 1 0 1 1 1 0 Folie 24 Cryptography 05.10.2024 Michael Zihlmann One Time Pad  Schlüssel ist genau gleich lang wie der Originaltext.  Der Schlüssel muss absolut Zufällig sein und darf nur einmal (!) verwendet werden.  Originaltext wird mit dem Schlüssel XOR verrechnet.  Was macht dieses Verfahren komplex? Folie 25 Cryptography 05.10.2024 Michael Zihlmann One Time Pad  Schlüsselmaterial muss vorher generiert, kopiert und sicher transportiert werden.  Physischer Transport des Schlüsselmaterials (Festplatte) unumgänglich.  Wurde schon praktisch innerhalb von kommerziellen Lösungen umgesetzt, aber aufgrund der Umständlichkeit mit bescheidenem Erfolg.  Siehe Broschüre von Mils Electronic (Beilagen) – gefunden via https://www.cryptomuseum.com Folie 26 Cryptography 05.10.2024 Michael Zihlmann One Time Pad Typischer Fehler bei der Umsetzung:  Wiederverwendung des Schlüsselmaterials. (Ermöglicht diverse Kryptoanalysen.) Folie 27 Cryptography 05.10.2024 Michael Zihlmann One Time Pad Aufgabe: Implementieren Sie bis zur nächsten Vorlesung selbständig ein One-Time-Pad. Funktionalität:  Erzeugen von genügend Zufall.  Import / Export eines Schlüssels.  Möglichkeit eine Datei zu Verschlüsseln.  Möglichkeit eine Datei zu Entschlüsseln. Folie 28 Cryptography 05.10.2024 Michael Zihlmann One Time Pad Hilfestellung: https://en.wikipedia.org/wiki/XOR_cipher Folie 29 Cryptography 05.10.2024 Michael Zihlmann Verschlüsselung Aufgabe bis zur letzten Vorlesung:  Sammeln Sie sich einen Überblick darüber welche Art von Kryptographie bei Ihrem Arbeitgeber eingesetzt wird.  Gibt es Vorgaben / Richtlinien?  Wie werden Zertifikate verwaltet?  Wie wird ein Schlüsselmanagement gemacht?  Grobe Angaben genügen. Verstossen Sie nicht gegen Geheimhaltungspflichten! Folie 30 Cryptography 05.10.2024 Michael Zihlmann Kerckhoffs’ Prinzip  Ein System ist nur wirklich sicher, wenn «der Feind» es auch nicht knacken kann, auch wenn er die Funktionsweise kennt.  Daher: der kryptographische Algorithmus muss publiziert werden können.  Die Sicherheit basiert einzig auf der Geheimhaltung des Schlüssels. Folie 31 Cryptography 05.10.2024 Michael Zihlmann Security through obscurity  Verschleierung der Funktionsweise des Systems.  Hoffnung, dass «der Feind» aufgrund fehlendem Wissen Schwachstellen im Algorithmus nicht entdecken kann. Folie 32 Cryptography 05.10.2024 Michael Zihlmann Security through obscurity  Durch entsprechende Analyseverfahren kann herausgefunden werden wie ein Algorithmus funktioniert.  Informationen über die Funktionsweise gelangen auf verschiedene Wege an Drittparteien, z.B.:  Verlust von Dokumenten / Daten (liegen lassen im Zug)  Spione, Überläufer  Cyberangriff  Geschwätzige Mitarbeiter  «The enemy knows the system!» Claude Shannon Folie 33 Cryptography 05.10.2024 Michael Zihlmann Verschlüsselungsverfahren Folie 34 Cryptography 05.10.2024 Michael Zihlmann Verschlüsselungsverfahren Bei den Verschlüsselungsverfahren unterscheiden wir hauptsächlich zwischen zwei Methoden:  Symmetrische Verschlüsselung  Asymmetrische Verschlüsselung Folie 35 Cryptography 05.10.2024 Michael Zihlmann Symmetrische Kryptographie  Gleicher Schlüssel zum Verschlüsseln und Entschlüsseln  Schnell und Effizient  Schwierigkeit: Schlüsselverwaltung Folie 36 Cryptography 05.10.2024 Michael Zihlmann Symmetrisch: Keymanagement  Anzahl Schlüsselpaare: n*(n-1)/2  Wie wird der Schlüssel erzeugt?  Wie wird der Schlüssel sicher gespeichert?  Wie kommt der Schlüssel zum Kommunikationspartner?  Woher weiss der Kommunikationspartner, dass es sich um den korrekten Schlüssel handelt? Folie 37 Cryptography 05.10.2024 Michael Zihlmann Symmetrisch: Rechenaufgabe  Wie viele Schlüssel müssen in einem Netzwerk mit 30 Teilnehmer erzeugt werden, wenn alle miteinander kommunizieren sollen? Folie 38 Cryptography 05.10.2024 Michael Zihlmann Symmetrisch: Rechenaufgabe  Wie viele Schlüssel müssen in einem Netzwerk mit 30 Teilnehmer erzeugt werden, wenn alle miteinander kommunizieren sollen?  Anzahl Schlüsselpaare: n*(n-1)/2  30*(29) / 2 = 435 Schlüssel welche erzeugt werden müssen. Folie 39 Cryptography 05.10.2024 Michael Zihlmann Erzeugung von Schlüsseln  Quelle für Erzeugung von Schlüsselmaterial muss absolut zufällig sein, ansonsten kann der Schlüssel hergeleitet werden.  Häufige Fehlerquelle bei der Implementation von kryptographischen Verfahren.  Gibt es in der Informatik so etwas wie Zufall? https://xkcd.com/221/ Folie 40 Cryptography 05.10.2024 Michael Zihlmann Erzeugung von Schlüsseln: Beispiel  Ein Hersteller von Netzwerkgeräten (z.B. Home-Router) möchte die Kommunikation standardmässig mittels selbsterzeugter SSL-Zertifikate absichern.  Damit nicht alle Zertifikate gleich sind (z.B. Werkzertifikat), werden als Input für die Generierung Zufallszahlen benötigt.  Um an zufällige Zahlen zu gelangen, misst das System die Zustände der Hardware (z.B. Status der Netzwerkports, Übertragene Datenmenge, Übertragungsfehler, Übertragungsgeschwindigkeit,...) und füttert damit den Zufallszahlengenerator.  Welche mögliche Probleme identifizieren Sie? Folie 41 Cryptography 05.10.2024 Michael Zihlmann Erzeugung von Schlüsseln: Beispiel  Verschlüsselte Verbindung soll möglich sein, sobald die Geräte gestartet sind.  Erzeugung des Schlüsselmaterials erfolgt möglichst früh.  Am Anfang haben alle ausgelieferte Geräte beim booten die selben Hardwarezustände und liefern identische «Messwerte».  Resultat: Alle, oder zumindest einen grossen Teil der Geräte verfügt über die selben SSL-Zertifikate. Folie 42 Cryptography 05.10.2024 Michael Zihlmann Entropie  Beschreibt in der Informatik den mittleren Informationsgehalt einer Nachricht.  Ohne Information kein Zufallswerte.  Vereinfachung: hohe Entropie = hohe Zufälligkeit (keine Wiederholungen) Folie 43 Cryptography 05.10.2024 Michael Zihlmann Entropie – Indikator um Verschlüsselung zu detektieren Entropie: Berechnung des Informationsgehalt per Daten Volumen.  Low entropy: Textdatei  Medium entropy: Komprimierte Daten (z.b. ZIP-Archiv)  High entropy: Echter Zufall Anmerkung: Das Ergebnis einer guten Verschlüsselung lässt sich nicht von echtem Zufall unterscheiden. Folie 44 Cryptography 05.10.2024 Michael Zihlmann Entropie – Indikator um Verschlüsselung zu detektieren Entropie lässt sich auch zur Erkennung von ungewollter Verschlüsselung nutzen. Beispiel: Prüfen der Daten auf einem Netzwerkspeicher um Dateien zu erkennen welche durch eine Ransomware verschlüsselt wurden. Pro:  Zusätzlicher ergänzender Mechanismus zur Erkennung von Ransomware nebst zu allen anderen Mechanismen (Anti-Virus, EDR, SIEM). Con:  Neue Ransomware verschlüsseln nicht mehr ganze Dateien, sondern nur Teile davon.  Keine Erkennung von Schadsoftware oder verdächtigem (System-) Verhalten.  False-Positive: Verschlüsselung kann auch gewollt sein und muss nicht von einer Ransomware stammen. Folie 45 Cryptography 05.10.2024 Michael Zihlmann Pseudozufallsgenerator  PRNG – pseudo random generator  Auch: DRBG – deterministic random bit generator  Sind einfach zu implementieren.  Output sieht zufällig aus, ist aber berechenbar.  Output wiederholt sich meist.  Haben in der Regel einen Initialisierungsvektor als Starteingabe für einen deterministischen Algorithmus (definierte, reproduzierbare Zustände). Folie 46 Cryptography 05.10.2024 Michael Zihlmann Pseudozufallsgenerator  Für Computerspiele sind Pseudozufallsgeneratoren absolut OK.  Wie sieht es für die Kryptographie aus? Machen Sie eine kurze Recherche über die Sicherheit von PRNG aus dem Blickwinkel der Kryptographie. Beantworten Sie folgende Fragen:  Gibt es kryptographisch sichere PRNG?  Wie wird die Sicherheit von PRNG beurteilt?  Gibt es sowas wie eine Standardisierung? Folie 47 Cryptography 05.10.2024 Michael Zihlmann Pseudozufallsgenerator - Standardisierung  NIST SP 800-90A Rev. 1: Recommendation for Random Number Generation Using Deterministic Random Bit Generators Weitere:  BSI  FIPS … Folie 48 05.10.2024 NIST SP 800-90A Rev. 1 Cryptography Michael Zihlmann Pseudozufallsgenerator – Beurteilung der Sicherheit Die Sicherheit ist abhängig von:  Die verwendeten Funktionen (z.B. Hashfunktion)  Der Entropiequelle Testen des Outputs:  Diverse statistische Tests Achtung: kann trügerisch sein, auch schlechte PRNG können gute statistische Resultate erzielen. Folie 49 Cryptography 05.10.2024 Michael Zihlmann Pseudozufallsgenerator - Fazit  Es gibt sichere PRNG  Physikalische Zufallsgeneratoren sind allerdings Vertrauenswürdiger  Physikalische Zufallsgeneratoren sind schneller (können mehr Zufallszahlen in kürzerer Zeit liefern) Folie 50 Cryptography 05.10.2024 Michael Zihlmann Middle-square method  Eine Eingangszahl wird genommen und Quadriert.  Vom Produkt wird die mittlere Zahl als «Zufallszahl» genommen.  Die Zufallszahl wird wieder Quadriert. 62 * 62 = 3844 84 * 84 = 7056 5 * 5 = 0025 2 * 2 = 0004 0 * 0 = 0000  Der Output scheint für den Menschen zufällig zu sein.  Irgendwann (abhängig von der Länge der Eingangszahl) wiederholt sich die Reihenfolge. Folie 51 Cryptography 05.10.2024 Michael Zihlmann Middle-square method  Solche Methoden eigenen sich zur Erkennung von Flüchtigkeitsfehlern.  Sind für kryptographische Zwecke unbrauchbar (einfach zu knacken). Folie 52 Cryptography 05.10.2024 Michael Zihlmann Zufallszahlen durch Geräteinformationen  Betriebssysteme liefern oft eine Interface für Zufallszahlen. (/dev/random)  Der Zufall setzt sich zusammen aus Hardwareinformationen, respektive deren Aktivitäten und Zustände (Maus, Tastatur, Netzwerk, CPU,...)  Letzlich „nur“ ein PRNG, mit gutem Input / Seed Folie 53 Cryptography 05.10.2024 Michael Zihlmann Zufallszahlen durch Geräteinformationen https://www.blackhat.com/docs/us-15/materials/us-15- Potter-Understanding-And-Managing-Entropy-Usage- wp.pdf Folie 54 Cryptography 05.10.2024 Michael Zihlmann Zufallszahlen durch Geräteinformationen  Unter Umständen haben diese Interfaces zu geringe Entropie.  Wenn ein Gerät nicht viel macht, sind die Zufallswerte zu schwach sind.  Dies eröffnet zumindest hypothetische Angriffsvektoren. Folie 55 Cryptography 05.10.2024 Michael Zihlmann Weisses Rauschen  Elektronische Schaltung welches zufällige Signalschwankungen erzeugt.  Das Signal wird abgetastet und als 0 oder 1 interpretiert.  Wird oft genutzt wo eigene Elektronik hergestellt wird. Folie 56 Cryptography 05.10.2024 Michael Zihlmann Andere Random Number Generators  Radioaktiver Zerfall  Messung eines Quantenzustandes  Messung von Lavalampen  Was wäre sonst noch möglich? Digitec: Lavalampe Timmy Folie 57 Cryptography 05.10.2024 Michael Zihlmann Random Number Generation https://www.idquantique.com/random-number- generation/products/quantis-random-number-generator/ Folie 58 Cryptography 05.10.2024 Michael Zihlmann Symmetrisch: Stromchiffre Schlüssel Pseudozufall Schlüsselstrom Plaintext Ciphertext Folie 59 Cryptography 05.10.2024 Michael Zihlmann Symmetrisch: Stromchiffre  Fortlaufender Strom der Verschlüsselt wird.  Geeignet für etwas das fortlaufend generiert wird, z.B. analoge Sprachübertragung (Telefonie)  Früher die effizienteste und „ausgereifste“ Verschlüsselungsmethode.  Heute überholt und kaum mehr verwendet.  Beispiel: One-Time-Pad Unterschied von klassischer Stromchiffre zu One-Time-Pad:  Aus einem (relativ kurzen) Schlüssel wird ein Schlüsselstrom erzeugt. Folie 60 Cryptography 05.10.2024 Michael Zihlmann Symmetrisch: Blockchiffre  (digitale) Daten werden in Blöcke unterteilt.  Blöcke haben alle eine bestimmte Grösse (z.B. 256 Bit).  Unterschiedliche Betriebsmodi wie die Blöcke verarbeitet werden. Folie 61 Cryptography 05.10.2024 Michael Zihlmann Substitution  Bei einer Substitution wird ein bestimmtes Zeichen durch ein anderes Zeichen ersetzt.  Beispiel: Cäsar-Chiffre  Die Substitution muss nicht zwingend immer durch das selbe Zeichen erfolgen (Polyalphabetische Substituion, Vigenère-Chiffre) Folie 62 Cryptography 05.10.2024 Michael Zihlmann S-Box  Substiutions-Box  Es wird nicht ein einzelnes Zeichen ersetzt, sondern eine Gruppe von Zeichen.  Die Substitution erfolgt nach bestimmten Regeln.  Je nachdem wie die Substitution erfolgt ist eine Kryptoanalyse einfacher oder schwieriger. Folie 63 Cryptography 05.10.2024 Michael Zihlmann Transposition  Zeichen bleiben in ihrer Originalform erhalten, jedoch wird die Reihenfolge der Zeichen geändert.  Der Text wird quasi durchgemischt / durchgeschüttelt.  Teilweise auch Permutation genannt. Folie 64 Cryptography 05.10.2024 Michael Zihlmann Feistelnetzwerk  Kombination aus:  Substituion / S-Boxen  Transposition  XOR  Eine Kombination wird mehrfach wiederholt – sogenannte «Runde».  Aus dem Hauptschlüssel wird jeweils ein Rundenschlüssel abgeleitet. Folie 65 Cryptography 05.10.2024 Michael Zihlmann Feistelnetzwerk Legende: L / R: Linker Block / Rechter Block K: Rundenschlüssel F: Verschlüsselungsfunktion https://en.wikipedia.org/wiki/Feistel_cipher Folie 66 Cryptography 05.10.2024 Michael Zihlmann Feistelnetzwerk Anwendung des Feistelnetzwerkes in DES (Data Encryption Standard). E: Expansion des Blockes von 32 Bit auf 48 Bit S1 – S8: S-Box P: Permuation F-Box Folie 67 https://en.wikipedia.org/wiki/Data_Encryption_Standard Cryptography 05.10.2024 Michael Zihlmann Substitutions-Permutations-Netzwerk  Ähnlich wie ein Feistel-Netzwerk  Keine Aufteilung in zwei Blöcken; direkte Aufteilung in verschiedene kleine Blöcke für die S-Boxen  SP-Netzwerk ist besser parallelisierbar als ein Feistel-Netzwerk Folie 68 Cryptography 05.10.2024 Michael Zihlmann Substitutions-Permutations-Netzwerk https://de.wikipedia.org/wiki/Substitutions-Permutations-Netzwerk Folie 69 Cryptography 05.10.2024 Michael Zihlmann Advanced Encryption Standard  AES-256 ist der heute gängigste Verschlüsselungsalgorithmus.  Nach dem Prinzip der Substitutions-Permutations-Netzwerk aufgebaut.  Kein praktisch durchführbarer Angriff bekannt.  Schneller und sicherer als die bis dahin verfügbaren Algorithmen Folie 70 Cryptography 05.10.2024 Michael Zihlmann Advanced Encryption Standard «Kryptografie verständlich» von Ch. Paar & J. Pelzl, Springer-Verlag 2016 Folie 71 Cryptography 05.10.2024 Michael Zihlmann Advanced Encryption Standard Recherchieren Sie und diskutieren Sie in Gruppen:  Was ist die Blockgrösse bei AES-256?  Was wird gemacht, wenn ein Block kleiner ist, als definierte Blockgrösse?  Muss die Blockgrösse gleich gross sein wie der Schlüssel? Was sind die Abhängigkeiten?  Könnte man AES auch mit einer anderen Blockgrösse verwenden, etwa aus Effizientsgründen? Folie 72 Cryptography 05.10.2024 Michael Zihlmann Advanced Encryption Standard  Die Blockgrösse bei AES ist auf 128 Bit spezifiziert – unabhängig von der Grösse des Schlüssels.  Ist z.B. der letzte Block einer Datei kleiner, kann dieser mit Zufallsdaten aufgefüllt werden – sogenanntes «Padding».  Die Blockgrösse sollte mit der Schlüssellänge identisch sein. Bei AES-256 ist theoretisch eine «related key» Attacke möglich, praktisch gesehen kann dieser Angriffsvektor bei AES aber ignoriert werden.  Theoretisch könnte AES auch mit einer anderen Blockgrösse betrieben werden – jedoch müsste vorher sichergestellt werden, dass sich aus der Konstellation nicht allenfalls neue Angriffsvektoren ergeben. Folie 73 Cryptography 05.10.2024 Michael Zihlmann Padding  «Auffüllen» von Pseudodaten / Zufallszahlen um eine bestimmte Blockgrösse zu erreichen.  Wird allenfalls auch benutzt um den Klartext abzuändern um gewisse Analysen der Schlüsseltexte zu erschweren. Folie 74 Cryptography 05.10.2024 Michael Zihlmann Operation Mode Block-Chiffre Erarbeiten Sie in Gruppen die Funktionsweise der folgenden Operational Mode:  ECB, CBC, CFB, OFB, CTR Präsentieren Sie dazu:  Funktonsweise  Vorteile- Nachteile Zeit: 20 min  Verwendungsempfehlung Folie 75 Cryptography 05.10.2024 Michael Zihlmann ECB https://de.wikipedia.org/wiki/Electronic_Code_Book_Mode Folie 76 Cryptography 05.10.2024 Michael Zihlmann Asymmetrische Kryptographie  Unterschiedlicher Schlüssel zum Verschlüsseln und Entschlüsseln  Einfacheres Schlüsselmanagement  Sicherheit basiert auf einem «komplexen Mathematischen Problem» Folie 77 Cryptography 05.10.2024 Michael Zihlmann Public-Private-Key  Es gibt immer ein Schlüsselpaar bestehen aus einem privaten Schlüssel und einem öffentlichen Schlüssel.  Der private Schlüssel wird geheim gehalten.  Der öffentliche Schlüssel wird verteilt / veröffentlicht. Der Schlüssel kann z.B. auf einen Keyserver hochgeladen werden welche alle öffentlichen Schlüssel kennt. Folie 78 Cryptography 05.10.2024 Michael Zihlmann Asymmetrische Kryptographie  Vergleichbar mit einem Vorhängeschloss und einer Truhe: jeder kann ein Vorhängeschloss an eine Truhe anbringen und diese abschliessen. Nur wer den zum Schloss dazugehörenden Schlüssel besitzt kann diese wieder öffnen.  Wenn Alice eine Nachricht an Bob senden will, verschlüsselt Alice die Nachricht mit dem öffentlichen Schlüssel von Bob.  Nur Bob kann mit seinem privaten Schlüssel den Nachrichteninhalt entschlüsseln. Folie 79 Cryptography 05.10.2024 Michael Zihlmann Signierung  Optional kann Alice zusätzlich die Nachricht noch mit ihrem privaten Schlüssel signieren.  Jeder kann mit dem öffentlichen Schlüssel von Alice die Signatur von Alice überprüfen und somit verifizieren, dass die Nachricht tatsächlich von Alice stammt. Folie 80 Cryptography 05.10.2024 Michael Zihlmann Asymmetrische Kryptographie Keyserver 1 2 3. Alice Bob 1. Alice holt sich den öffentlichen Schlüssel von Bob vom Keyserver 2. Alice verschlüsselt die Nachricht mit dem öffentlichen Schlüssel von Bob. 3. Bob entschlüsselt die Nachricht mit seinem privaten Schlüssel. Folie 81 Cryptography 05.10.2024 Michael Zihlmann Asymmetrische Kryptographie  Zeichnen Sie den Ablauf für den Fall wenn Bob überprüfen will, dass die Nachricht tatsächlich von Alice stammt.  Wie können Sie sicher sein, dass der öffentliche Schlüssel auf dem Keyserver wirklich von der angegebenen Person stammt? Folie 82 Cryptography 05.10.2024 Michael Zihlmann Asymmetrische Kryptographie Keyserver 1 5 4 2&3 6&7 Alice Bob 1. Alice holt sich den öffentlichen Schlüssel von Bob vom Keyserver. 2. Alice Verschlüsselt die Nachricht mit dem öffentlichen Schlüssel von Bob. 3. Alice signiert die Nachricht mit ihrem privaten Schlüssel. 4. Alice versendet die verschlüsselte und signierte Nachricht an Bob. 5. Bob holt den öffentlichen Schlüssel von Alice vom Keyserver. 6. Bob überprüft die Signatur der Nachricht mit dem öffentlichen Schlüssel von Alice. 7. Bob entschlüsselt die Nachricht mit seinem privaten Schlüssel. Folie 83 Cryptography 05.10.2024 Michael Zihlmann Asymmetrische Kryptographie Wie können Sie sicher sein, dass der öffentliche Schlüssel auf dem Keyserver wirklich von der angegebenen Person stammt?  Gesprächsteilnehmer können die öffentlichen Schlüssel beim direkten Kontakt oder z.B. via Telefon überprüfen.  Der Schlüssel wird in ein Zertifikat eingebetet. Die Herausgabestelle des Zertifikats muss die Identität (mittels amtlichen Ausweises) überprüfen. Die Herausgabestelle signiert die ausgegebenen Zertifikate, was eine automatisierte Überprüfung ermöglicht. Folie 84 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Idee: über eine öffentliche (abhörbare) Leitung ein Geheimnis (Schlüssel) teilen, ohne dass Drittpersonen dieses Geheimnis erraten / errechnen können. Folie 85 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman 1. Eine gemeinsame Farbe (Gelb) wird gewählt und öffentlich ausgetauscht. 2. Beide Teilnehmer wählen für sich je eine geheime Farbe (Rot, Grün). 3. Beide Teilnehmer mischen die gemeinsame Farbe mit ihrer Geheimfarbe und senden das Ergebnis an den Kommunikationspartner. 4. Beide Kommunikationspartner mischen die erhaltene Farbmischung mit ihrer Geheimfarbe. Da nun jede Farbe einmal beigemischt wurde, erhalten beide eine gemeinsame Geheimfarbe. 5. Annahme: für die Farbmischung gibt es keine Umkehrfunktion. Daher kann eine Drittperson nicht einfach die bekannte Farbe Gelb von den übertragenen Mischfarben abziehen um so die Geheimfarben zu errechnen. Folie 86 Cryptography 05.10.2024 https://upload.wikimedia.org/wikipedia/commons/9/9d/Diffie-Hellman_Key_Exchange_%28de%29.svg Michael Zihlmann Diffie-Hellman Anstelle von Farben: 1. Rechnen mit Modulo p (Primzahl) und Basis g. Teilnehmer wählen ein Geheimnis (Zahl < p). Wir erinnern uns – Modulo ist wie das Rechnen mit Resten in der Primarschule: 10 modulo 3 → Wie viel Rest ergibt 10 geteilt durch 3? → 10 / 3 = 3 Rest 1. Wir interessieren uns nur für die Reste. 2. Gemeinsame Einigung p = 23, g = 5. 3. Alice wählt als Geheimnis Zahl 4 und rechnet g4 mod p. Daher 54 mod 23 = 4. Und sendet die 4 an Bob. 4. Bob wählt als Geheimnis Zahl 3 und rechnet 53 mod 23 = 10. Und sendet die 10 an Alice. 5. Alice rechnet 104 mod 23 = 18. 6. Bob rechnet 43 mod 23 = 18 7. Beide haben folgendes gerechnet: g(a*b) mod p 5(4*3) mod 23 = 18 8. (ga mod p)b mod p = (gb mod p)a mod p Folie 87 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Warum muss der Modulo eine Primazahl sein? Folie 88 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Es ist einfach Primzahlen zu multiplizieren.  Es ist sehr zeitaufwändig eine Primzahlenprodukt in seine Primzahlfaktoren zu zerlegen.  In der Praxis werden sehr grosse Primzahlen eingesetzt (mehrere Hundert Stellen). Folie 89 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Wahrscheinlich werden Quantencomputer viel schneller eine Primzahlenprodukt in seine Primzahlenfaktoren zerlegen können.  Daher wird dieses Vorgehen in Zukunft wohl nicht mehr sicher sein. Folie 90 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Schützt Diffie-Hellmann vor einem Man in the Middle Angriff? Folie 91 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Nein, Diffie-Hellmann schützt nicht vor einem Man in the Middle Angriff.  Wenn eine Drittperson sich zwischen die Kommunikation schalten kann, wird sie sich gegenüber Alice als Bob ausgeben und gegenüber Bob als Alice.  Die Drittperson kann mit beiden einen Schlüssel aushandeln.  Anschliessend kann sie Nachrichten entschlüsseln, lesen, manipulieren, wieder verschlüsseln und an den eigentlichen Empfänger weiterleiten. Folie 92 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Was müsste für eine sichere Kommunikation nebst der Verschlüsselung noch gemacht werden? Folie 93 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Die Kommunikationspartner müssen daher sicherstellen, dass sie mit der richtigen Person kommunizieren.  Z.B. mittels beglaubigten Zertifikaten. Folie 94 Cryptography 05.10.2024 Michael Zihlmann Diffie-Hellman  Beispiel Anwendung bei End-to-End encryption bei einem Messenger (Telegram): https://telegram.org/faq/de#f-wofur-ist-der-geheime-schlussel Folie 95 Cryptography 05.10.2024 Michael Zihlmann Elliptische Kurve  Basierend auf mathematischen Operationen innerhalb elliptischer Kurven anstelle von sehr grossen Primzahlen.  Grösserer Rechenaufwand, daher auch sicher mit kleinerer Schlüssellänge.  Basiert auf dem Konzept, dass der diskrete Logarithmus (momentan noch) aufwendig zu berechnen ist. Folie 96 05.10.2024 https://de.wikipedia.org/wiki/Elliptische_Kurve Cryptography Michael Zihlmann Elliptische Kurve  Siehe auch folgender Artikel: https://www.computerweekly.com/de/definition/Elliptische-Kurven- Kryptografie-Elliptic-Curve-Cryptography-ECC (Screenshot im Beilageordner) Folie 97 Cryptography 05.10.2024 Michael Zihlmann Elliptische Kurve  Lesen Sie den Auszug – Kapitel 9 «Kryptosysteme mit elliptischen Kurven» aus «Kryptografie verständlich» von Ch. Paar & J. Pelzl, Springer-Verlag 2016 Zeit: 15 min Folie 98 Cryptography 05.10.2024 Michael Zihlmann Data at rest & Data in transport  Eine Person stellt Ihnen ein Konzept zur Datensicherheit einer internen Applikation mit sensiblen Personendaten vor.  Für die Verschlüsselung möchte die Person ein SSL-Zertifikat von Let´s Encrypt verwenden.  Die Daten sollen für die Übertragung mit SSL verschlüsselt werden.  Die Daten sollen für die Speicherung (XML-Datei) mit SSL verschlüsselt werden.  Kommentieren Sie das Konzept. Folie 99 Cryptography 05.10.2024 Michael Zihlmann Data at rest & Data in transport  Die interne Applikation sollte nicht von einem externen Service abhängig sein und sollte je nachdem auch nicht für die Überprüfung der Zertifikatsgültigkeit auf das Internet zugreifen müssen. Daher eher interne PKI verwenden.  SSL ist ein asymmetrischer Algorithmus und für data at rest nicht sinnvoll.  Daten besser mit AES verschlüsseln.  Generell: Daten besser in einer Datenbank speichern, statt in einem XML. Folie 100 Cryptography 05.10.2024 Michael Zihlmann Fax  Sie gehen in ein Technikmuseum und sehen dort ein Gerät mit der Anschrift «Fax» und daneben ein «Faxverschlüsselungsgerät».  Mit welchem kryptographischen Verfahren wurde bei diesem altertümlichen Gerät die Verschlüsselung wohl umgesetzt? Folie 101 Cryptography 05.10.2024 Michael Zihlmann Fax  Fax ist wie Telefonie – Analoge fortlaufende Töne mit unklarer Länge.  In der Epoche der Faxgeräte wäre wohl eine Stromchiffre verwendet worden.  Wie würde dies in der heutigen Zeit umgesetzt? Folie 102 Cryptography 05.10.2024 Michael Zihlmann Fax  Mit den heutigen Erkenntnissen würde man wohl die Daten zuerst digitalisieren.  Anschlissend würde eine Blockchiffre verwendet werden.  Heute gibt es aber zum Glück ausgereiftere, digitale Kommunikationstechnologien. Folie 103 Cryptography 05.10.2024 Michael Zihlmann Cryptoanalyse Folie 104 Cryptography 05.10.2024 Michael Zihlmann Cryptoanalyse  Beschäftigt sich damit Verschlüsselte Texte zu entziffern.  Früher wurde vor allem versucht die Kryptoalgorithmen zu knacken.  Heute werden vorwiegend Fehler in der Implementierung gesucht. Folie 105 Cryptography 05.10.2024 Michael Zihlmann Prominente Angriffe auf die Kryptographie  Statistische Analyse  Kown / Choosen Plaintext  Durchprobieren: Bruteforce, Wörterbuchattacke  Related-Key Attack  Side-Channel  Angriff auf den Algorithmus (mathematisch) Folie 106 Cryptography 05.10.2024 Michael Zihlmann Statistische Analyse  Häufigkeitsanalyse  Siehe Cäsar-Chiffre Folie 107 Cryptography 05.10.2024 Michael Zihlmann Known Plaintext  Der Angreifer kennt Teile des Originaltextes und kann so den Cyphertext analysieren.  Beispiel: immer gleiche Grussformel / Signatur, Header im Übertragungsprotokoll (WLan WEP) Folie 108 Cryptography 05.10.2024 Michael Zihlmann Choosen Plaintext  Angreifer kann den Originaltext bestimmen.  Beispiel: asymmetrische Kryptographie – der Angreifer kann mit dem öffentlichen Schlüssel selbst Nachrichten chiffrieren und anschliessend den Cyphertext analysieren. Folie 109 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode  Durchprobieren aller möglicher Schlüsselkombinationen. Erfolgschancen abhängig:  Von der Länge des Schlüssels.  Von der Qualität des Schlüssels.  Was können Sie gegen diese Attacke tun? Folie 110 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode  Möglichst langen Schlüssel wählen. (2256 Kombinationsmöglichkeiten anstelle von 2126)  Schlüssel durch Zufall generieren lassen. Folie 111 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode  Wie lange würde ein Brute-Force-Angriff dauern?  Annahme: ein Text wurde mit AES-256 verschlüsselt. Folie 112 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode Folie 113 https://scrambox.com/article/brute-force-aes/ Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode  Die mittlere Zeit um eine «gute» Verschlüsselung zu knacken dauert ein Vielfaches der Lebenszeit von unserem Universum.  Wie lange müssen verschlüsselte Daten geschützt werden? Folie 114 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode Wie lange müssen verschlüsselte Daten geschützt werden?  Viele Sessions sind schon nach ein paar Minuten nicht mehr gültig und die übertragenen Daten sind nicht wirklich schützenswert.  Nach ca. 20 Jahren sind die meisten Entscheidungen und Ereignisse auf politischer Ebene nicht mehr von Bedeutung.  Das US Justizministerium deklassifiziert und veröffentlicht automatisch Akten «von Historischem Wert» nach 25 Jahren. (Ausser es gibt explizite Gründe diese länger geheimzuhalten.) Folie 115 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode  Wenn ein «guter» Verschlüsselungsalgorithmus in der Theorie mal etwas schlechter bewertet werden sollte, ist er somit in der Praxis meistens doch noch gut genug.  Dennoch lohnt es sich in der Regel auch hypothetische Risiken zu vermeiden. Folie 116 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode  Ist es sinnvoll für AES prophylaktisch einen grösseren Schlüssel als 256 Bit zu verwenden (z.B. 515 Bit)?  Erläutern Sie die verschiedenen Implikationen. Folie 117 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode Längerer Schlüssel bedeutet:  Grösserer Speicherbedarf (z.B. bei Smartcard begrenzt).  Längere Rechenzeit (relevant z.B. für IoT-Geräte).  Mehr Rechenpower nötig (daher auch grösserer Stromverbrauch).  Grössere Delays / Latenzen (relevant im Netzwerkbereich). Folie 118 Cryptography 05.10.2024 Michael Zihlmann Brute-Force-Methode  AES ist nicht für eine Schlüssellänge von 512 Bit zertifiziert / es gibt keine Implementation.  Es müsste sichergestellt werden, dass mit einer grösseren Schlüssellänge keine Konstellationen auftreten wo der Algorithmus geschwächt wäre. Allenfalls müsste das Design des Algorithmus leicht angepasst werden (z.B. andere Blockgrösse).  Mit aktueller verfügbarer Rechenleistung ist ein grösserer Schlüssel nicht notwendig. Folie 119 Cryptography 05.10.2024 Michael Zihlmann Related-Key Attack  Dem Angreifer ist bekannt, dass es einen Zusammenhang zwischen verschiedenen verwendeten Schlüssel (z.B. Rundenschlüssel) gibt. Beispiel WEP (früheres Verschlüsselungsprotokoll für WiFi):  Alle Clients benutzen den selben Key («WLan-Passwort»)  Der Schlüssel wird also mehrfach verwendet – was den Sicherheitsanforderungen widerspricht.  Um die damit verbundenen Risiken zu mitigieren wird der Schlüssel mit einem Initialisierungsvektor (IV) verknüpft.  Der IV wiederholt sich nach ein paar tausend Nachrichten. Folie 120 Cryptography 05.10.2024 Michael Zihlmann WEP https://de.wikipedia.org/wiki/Wired_Equivalent_Privacy#/media/Datei:WEP_Kodierung.JPG Folie 121 Cryptography 05.10.2024 Michael Zihlmann WEP Siehe folgende Beiträge zu WEP Cracking: https://www.javatpoint.com/wep-cracking https://beta.ivc.no/wiki/index.php/WEP_Cracking (Auch als Screenshot im Beilagenordner.) Folie 122 Cryptography 05.10.2024 Michael Zihlmann Related-Key Attack  Wie könnte ein Related-Key Angriff, so wie er bei WEP praktiziert wird, verhindert werden? Folie 123 Cryptography 05.10.2024 Michael Zihlmann Related-Key Attack Wie könnte ein Related-Key Angriff, so wie er bei WEP praktiziert wird, verhindert werden?  Benutzung eines Session-Keys für jede Verbindung / Paket. Folie 124 Cryptography 05.10.2024 Michael Zihlmann Wörterbuchattacke  Effizienter / Zielgerichteter als Brute-Force  Durchprobieren aller Wörter in einem Wörterbuch. Folie 125 Cryptography 05.10.2024 Michael Zihlmann Wörterbuchattacke  Können Wörterbuchattacken verhindert werden indem z.B. Leetspeak verwendet wird?  Daher «P455W0R7» anstelle von «Passwort»? Folie 126 Cryptography 05.10.2024 Michael Zihlmann Wörterbuchattacke  Manche Angriffswerkzeuge probieren auch Wortkombinationen und Wortabänderungen (Leetspeak) durch.  Immer vollständig zufällig generierte Schlüssel benutzen. https://xkcd.com/936/ Folie 127 Cryptography 05.10.2024 Michael Zihlmann Side-Channel  «Beobachten» eines Systems nach Auffälligkeiten um auf bestimmte kryptographische Operationen zu schliessen. Beispiel:  Elektromagnetische Abstrahlung von Hardware  Zeitverhalten  Stromverbrauch  Geräusche Folie 128 Cryptography 05.10.2024 Michael Zihlmann Side-Channel  Bei einem Webportal erscheint bei falscher Eingabe die Meldung «Benutzername oder Passwort ungültig».  Bei einem Login wird zuerst der Benutzername überprüft.  Ist der Name korrekt wird das Passwort geprüft.  Die Fehlermeldung erscheint schneller wenn es den Benutzer nicht gibt.  Dies ermöglicht ein User Account Guessing / Account Enumeration.  Wie können Sie das beheben? Folie 129 Cryptography 05.10.2024 Michael Zihlmann Side-Channel  Hash-Operation (für Passwort-Test) auch ausführen wenn der Benutzername falsch ist.  Ein zufälliges Delay einfügen bevor die Antwort gesendet wird. Folie 130 Cryptography 05.10.2024 Michael Zihlmann Side-Channel  Messen der elektromagnetischen Abstrahlung.  Israelischen Forschern ist es in verschiedenen Versuchen immer wieder gelungen, Schlüsselmaterial von Geräten im selben Raum zu extrahieren, ohne direkten Zugriff auf die Geräte zu haben.  Siehe: https://www.tau.ac.il/~tromer/radioexp/  Wie können solche Angriffe verhindert werden? Folie 131 Cryptography 05.10.2024 Michael Zihlmann Side-Channel Verhindern von Side-Channel Angriffen:  Allenfalls Anpassungen in der Implementierung des Algorithmus (Quellcode), damit verschiedene Operationen gleich lange dauern.  Schützen der Geräte mit einem Metallgehäuse (Faradayscher Käfig).  Spezielle Netzteile welche den Stromverbrauch mittels Kondensatoren «glätten».  Nutzen von speziell gesicherter Hardware für Kryptooperationen (z.B. HSM) Folie 132 Cryptography 05.10.2024 Michael Zihlmann Side-Channel Verhindern von Side-Channel Angriffen (erweitert):  Nutzen von abhörsicheren Räumen.  Nutzen von Rauschgeneratoren die ein Störsignale aussenden welche allfällige Abstrahlungsgeräusche überlagert.  Nutzen von Störsendern welche eine Signalübertragung blockieren (Funk, Mobilkommunikation, Satellitensignal...).  Achtung: die Störsendern stören das Mobilfunknetz womit auch keine Notfallnummern (Ambulanz, Feuerwehr, Polizei) mehr gewählt werden können! Daher ist schon der Besitz von solchen Störsendern verboten und wird mit hohen Strafen sanktioniert!  Eingesetzt werden solche Geräte vor allem im militärischen Bereich. Folie 133 Cryptography 05.10.2024 Michael Zihlmann Cold boot attack  Spezielle Form von Side-Channel Attack.  Unterbrechen der Stromversorgung.  Die Daten sind vorübergehend noch im Arbeitsspeicher vorhanden und benötigen eine Zeit bis sie sich verflüchtigen.  Werden die RAM-Riegel gekühlt (z.B. mittels Kältespray) bleiben die Daten noch länger erhalten. Folie 134 Cryptography 05.10.2024 Michael Zihlmann Cold boot attack Mögliche Ansätze:  Entfernen der RAM-Riegel um auf einem anderen Rechner zu lesen.  Benutzen eines Live-Boot Systems mit einer Memory-Dump Software.  Was könnte besonders interessantes im Arbeitsspeicher vorliegen? Folie 135 Cryptography 05.10.2024 Michael Zihlmann Cold boot attack  Besonders interessant um den Schlüssel von einem System auszulesen wo die Festplatte verschlüsselt ist.  Wird teilweise auch von Forensikern benutzt. Folie 136 Cryptography 05.10.2024 Michael Zihlmann Vertrauen  Bei Fehler in Kryptographischen Algorithmen oder Sicherheitslösungen gibt es immer die Unterstellung, dass die Fehler mit Absicht gemacht wurden.  Können wir den Verschlüsselungslösungen und Produkten auf dem Markt vertrauen? Folie 137 Cryptography 05.10.2024 Michael Zihlmann Fall Crypto AG  Unternehmen wurde im Jahr 1952 im Kanton Zug gegründet und produzierte Chiffriergeräte.  1992 wurde der Verkäufer Hans Bühler wegen Spionagevorwürfen im Iran verhaftet.  Seit diesem Zeitpunkt gab es Gerüchte über die Firma. Firmenlogo - Archivbild Folie 138 Cryptography 05.10.2024 Michael Zihlmann Fall Crypto AG  Im Februar 2020 wurde öffentlich bekannt, dass die Firma mit Absicht manipulierte Geräte verkaufte.  Die Algorithmen wurden so abgeschwächt, dass sie geknackt werden konnten.  Bereits seit 1970 waren die amerikanische CIA und der deutsche BND die heimlichen Besitzer der Crypto AG. Siehe auch:  https://www.srf.ch/news/schweiz/geheimdienstaffaere-cryptoleaks-weltweite-spionage-operation- mit-schweizer-firma-aufgedeckt Folie 139 Cryptography 05.10.2024 Michael Zihlmann Crypto AG  Für die Schweiz stellte sich die Frage, ob die Schweizer Behörden davon wussten.  Wenn ja, würde dies die Souveränität der Schweiz verletzten?  Haben die Schweizer Behörde korrekt gehandelt?  Ist eine Beteiligung an einer solchen Operation legitim?  Was ist Ihre Meinung dazu? Folie 140 Cryptography 05.10.2024 Michael Zihlmann Crypto AG Um die Fragen über die Beteilung der Schweiz zu klären wurde eine Untersuchung durch die Geschäftsprüfungsdelegation eingeleitet. Ergebnis der Untersuchung:  Der SND / NDB war involviert.  Der SND / NDB hat durch die Situation stark profitiert  Der SND / NDB hat korrekt innerhalb seines Ermächtigungsspielraum gehandelt.  Der SND / NDB wurde dennoch wegen mangelnder Aufsicht gerügt. Er hätte den Bundesrat besser informieren müssen.  Siehe Untersuchungsbericht: https://www.parlament.ch/centers/documents/de/bericht-gpdel-2020-11-10-d.pdf Folie 141 Cryptography 05.10.2024 Michael Zihlmann Crypto AG Fragen die offen bleiben:  Ist es moralisch vertretbar, dass das Leben von Mitarbeitern wie Hans Bühler ohne ihr Wissen gefährdet war?  Wie hoch ist die Wahrscheinlichkeit, dass «politische Gegner» die Schwachpunkte in den Algorithmen entdecken und ebenfalls ausnutzen?  Können die gewonnen Informationen überhaupt sinnvoll genutzt werden, ohne dass die abgehörte Organisation den Datenabfluss früher oder später bemerkt?  Was bedeutet die Crypto-Affäre für zukünftige Firmen in diesem Business. Ist ein nachhaltiger Vertrauensverlust entstanden?  Und letztlich: wem können wir noch trauen?  Oder: wie kann Vertrauen hergestellt werden? Folie 142 Cryptography 05.10.2024 Michael Zihlmann Omnisec AG  Die Omnisec AG war der grösste Konkurrenz der Crypto AG und hatte in etwa das gleiche Produktportfolio.  Mit den Untersuchungsergebnissen der Crypto AG wurde auch publik, dass die Omnisec AG im Jahr 2000 Geräte mit einem Fehler im Algorithmus an Firmen wie die UBS auslieferte. Firmenlogo - Archivbild Folie 143 Cryptography 05.10.2024 Michael Zihlmann Omnisec AG  Gemäss manchen Darstellungen war die Omnisec ebenfalls von der CIA unterwandert.  Dazu gibt es allerdings keine Beweise.  Die schwäche in den Geräten könnte auch auf das neue Wissen bezüglich Kryptografie in dieser Zeit zurückzuführen sein. (Siehe Thema Stromchiffre.)  Was meinen Sie dazu? Folie 144 Cryptography 05.10.2024 Michael Zihlmann Heartbleed  Ein Fehler in der Implementierung von OpenSSL.  Mittels modifizierte Heartbeat-Anfrage konnte der Speicher des Server ausgelesen werden.  Theoretisch war es möglich sensible Daten wie Schlüsselmaterial oder Benutzername & Passwort auszulesen.  Die Mehrheit der Systeme im Internet war davon betroffen. Folie 145 Cryptography 05.10.2024 Michael Zihlmann Heartbleed Folie 146 05.10.2024 https://de.wikipedia.org/wiki/Heartbleed Cryptography Michael Zihlmann Heartbleed  Auch hier gab es (ohne weitere Begründung) den Vorwurf, dass der Fehler mit Absicht eingebaut wurde.  OpenSSL ist OpenSource – jeder hätte den Fehler entdecken können.  Nützt aber nichts wenn niemand den Sourcecode anschaut.  Es gab anschliessend viele Diskussionen wie die Sicherheit in OpenSource gewährleistet werden kann. Dabei wurden auch Spendengelder gesammelt und Codereviews in Auftrag gegeben. Folie 147 Cryptography 05.10.2024 Michael Zihlmann Break Folie 148 Cryptography 05.10.2024 Michael Zihlmann Besprechung One-Time-Pad  Konnten Sie die Aufgabe mit dem One-Time-Pad umsetzten?  Welche Schwierigkeiten hatten Sie?  Wie haben Sie die Zufallszahlen generiert? Folie 149 Cryptography 05.10.2024 Michael Zihlmann Hybride Verschlüsselung Folie 150 Cryptography 05.10.2024 Michael Zihlmann Hybride Verschlüsselung  Kombination von symmetrischer & asymmetrischer Verschlüsselung.  Kommunikationsaufbau / Schlüsselaustausch erfolgt asymmetrisch.  Dokumente / Dateien werden symmetrisch Verschlüsselt.  Was ist der Grund für diese Kombination? Folie 151 Cryptography 05.10.2024 Michael Zihlmann Hybride Verschlüsselung Kombination der Vorteile von verschiedenen Verfahren:  Einfaches Schlüsselmanagement  Performante Verschlüsselung von grossen Dateien Folie 152 Cryptography 05.10.2024 Michael Zihlmann Session-Key  Immer wieder neu ausgehandelt, damit bei einer allfälligen Kompromittierung nicht die ganze Historie analysiert werden kann.  Für die hybride Verschlüsselung wird ebenfalls ein symmetrischer Session-Key erzeugt. Folie 153 Cryptography 05.10.2024 Michael Zihlmann Session-Key  Was ist, wenn der Langzeitschlüssel kompromittiert wird? Folie 154 Cryptography 05.10.2024 Michael Zihlmann PFS – Perfect Forward Secrecy  Ziel: Generierung von Session-Keys welche unabhängig vom Langzeitschlüssel sind.  Der Langzeitschlüssel wird nur zur Signierung des Session-Keys verwendet. Folie 155 Cryptography 05.10.2024 Michael Zihlmann Perfect Forward Secrecy  Es gibt Vermutungen, dass gewisse Nachrichtendienste sämtliche Kommunikation mitschneiden und aufbewahren – auch die verschlüsselte!  Verwendung von PFS gehört aber auch sonst zur good practice! Folie 156 Cryptography 05.10.2024 Michael Zihlmann Hybride Verschlüsselung Folie 157 https://de.wikipedia.org/wiki/Hybride_Verschl%C3%BCsselung Cryptography 05.10.2024 Michael Zihlmann Zertifikat  Herausgeber eines Zertifikates (CA) beglaubigt, dass der öffentliche Schlüssel zu einer bestimmten Identität gehört.  Das Zertifikat beinhaltet unter anderem Verwendungszweck und Gültigkeitsdauer.  Attribute sind automatisch verifizierbar. Folie 158 Cryptography 05.10.2024 Michael Zihlmann CA Übung: Erstellen sie Ihre eigene CA mit OpenSSL.  Erstellen Sie ein root Zertifikat.  Erstellen Sie ein Schlüsselpaar / Zertifikat.  Verschlüsseln Sie eine Datei.  Signieren Sie eine Datei. Zeit: 30 min Folie 159 Cryptography 05.10.2024 Michael Zihlmann CA Folie 160 Cryptography 05.10.2024 Michael Zihlmann CA  Warum sollten Sie ein selbstsigniertes Zertifikat nicht für ihre Website verwenden? Folie 161 Cryptography 05.10.2024 Michael Zihlmann CA  Drittparteien kennen Ihre private CA nicht und können die Zertifikate nicht überprüfen.  Entsprechend zeigen die Browser einen Warnhinweis an. Folie 162 Cryptography 05.10.2024 Michael Zihlmann CA  Sie können Ihre eigene CA auch Drittparteien bekannt machen. Warum sollten Sie dennoch ein selbstsignierte Zertifikat nicht für rechtlich relevante E-Mails verwenden? Folie 163 Cryptography 05.10.2024 Michael Zihlmann CA  Wenn die elektronische Signatur mit einer handschriftlichen Unterschrift gleichgestellt werden soll, muss das dazugehörende Zertifikat von einem akkreditierten Unternehmen herausgegeben werden (qualifizierte elektronische Signatur).  ZertES: https://www.fedlex.admin.ch/eli/cc/2016/752/de  Ohne qualifizierte elektronische Signatur kann eine E-Mail vor Gericht nur Verwendet werden, wenn beide Parteien die E-Mail annerkennen. Folie 164 Cryptography 05.10.2024 Michael Zihlmann E-Mail Verschlüsselung Informieren sie sich zum Thema E-Mail Verschlüsselung. Präsentieren sie in Gruppenarbeit die Funktionsweise von S/MIME und PGP. Beantworten Sie je folgende Fragen:  Wie funktioniert das Verfahren?  Woher stammt der Schlüssel?  Wie kann der Empfänger überprüfen ob der Absender derjenige ist für den er sich ausgibt?  Wie wird ein Schlüssel gehandhabt der vermutlich anderen zugänglich war?  Wie ist die Verbreitung des Verfahrens? Zeit: 20 min Folie 165 Cryptography 05.10.2024 Michael Zihlmann TLS  TLS – Transport Layer Security  Auch bekannt unter dem Vorgängername SSL (Secure Socket Layer)  Das S (Security) in HTTPS Folie 166 Cryptography 05.10.2024 Michael Zihlmann TLS  TLS ist ein Protokoll zum Schlüsselaustausch.  Für die Authentisierung wird ein Zertifikat benötigt.  Ab Version 1.3 mit PFS. Folie 167 Cryptography 05.10.2024 Michael Zihlmann TLS  Die Sicherheit steht und fällt mit der Vertrauenswürdigkeit der Zertifizierungsstelle.  Die Browserhersteller (Google Chrome, Mozilla Firefox) haben in den letzten Jahren die Anforderungen an CA stark erhöht. Folie 168 Cryptography 05.10.2024 Michael Zihlmann TLS Andere Anwendungsfälle für TLS (Auszug):  E-Mail Übertragung (POP3S, SMTPS, IMAPS)  LDAPS  FTPS (aber nicht SFTP!)  OpenVPN Folie 169 Cryptography 05.10.2024 Michael Zihlmann TLS https://www.techtarget.com/searchsecurity/definition/session-key Folie 170 Cryptography 05.10.2024 Michael Zihlmann TLS https://www.techtarget.com/searchsecurity/definition/session-key Folie 171 Cryptography 05.10.2024 Michael Zihlmann TLS  Wie lange darf ein Zertifikat maximal gültig sein?  Warum gibt es eine zeitliche Beschränkung?  Was bedeutet die zeitliche Beschränkung der Zertifikate für die Betreiber von Webserver? Folie 172 Cryptography 05.10.2024 Michael Zihlmann TLS  Seit dem 1. September 2020 akzeptieren die gängigsten Browser wie Chrome, Firefox und Safari nur noch Zertifikate mit einer Laufzeit von maximal 397 Tage (13 Monate).  Alte, noch gültige, aber nicht mehr benötigte, langültige Zertifikate wurden in der Vergangenheit immer wieder missbraucht.  Zertifikate wurden nicht rechtzeitig erneuert, oder beim manuellen Austausch wurde ein Fehler gemacht.  Die kurze Gültigkeitsdauer soll dazu motivieren, den Zertifikatserneuerungsprozess zu automatisieren. Folie 173 Cryptography 05.10.2024 Michael Zihlmann Netzwerkverschlüsselung Erarbeiten und präsentieren Sie in Decken Sie folgende Punkte ab: Gruppen wie die folgenden VPN- Verbindungsaufbau Protokolle funktionieren: Authentifizierung IPSec Schlüsselherstellung, OpenVPN Schlüsselaustausch SSH-Tunnel Verschlüsselungsverfahren WireGuard Konfigurationsoptionen bezüglich SSTP Verschlüsselung Vor- und Nachteile Einsatzgebiet / Verbreitung Zeit: 30 min Folie 174 Cryptography 05.10.2024 Michael Zihlmann PKI  Den Betrieb einer Zertifizierungsstelle nennt sich PKI (Public Key Infrastructure).  Die PKI stellt Zertifikate aus, verteilt und prüft sie.  Die PKI führt auch eine Liste mit zurückgezogenen Zertifikaten (revocation list).  Der Standard für eine PKI ist X.509. Siehe https://datatracker.ietf.org/doc/html/rfc5280 Folie 175 Cryptography 05.10.2024 Michael Zihlmann Hashfunktionen Folie 176 Cryptography 05.10.2024 Michael Zihlmann Hashfunktion  Vergleichbar mit einer Prüfsumme  Nicht umkehrbar  Braucht kein Passwort https://www.elektronik-kompendium.de/sites/net/1909041.htm Folie 177 Cryptography 05.10.2024 Michael Zihlmann Hashfunktion Eine Hashfunktion sollte Kollisionsresistent sein. Der Output der Funktion sollte Zufallsähnlich sein:  Nicht vorhersehbar  Wenn der Input sich um 1 Bit ändert sollte sich trotzdem der Output stark ändern (Richtwert >= 50%)  Jeder Hashwert sollte in etwa gleich oft vorkommen. Folie 178 Cryptography 05.10.2024 Michael Zihlmann Hashfunktion  Wird meist zur Prüfung der Integrität verwendet.  Wird benutzt zur «Speicherung» von Benutzerpasswörtern.  Wird verwendet für die Signierung von Zertifikaten. Folie 179 Cryptography 05.10.2024 Michael Zihlmann Hashfunktion https://computersciencewiki.org/index.php/One-way_function Folie 180 Cryptography 05.10.2024 Michael Zihlmann MAC  Message Authentification Code  Erstellt eine Art Prüfsumme.  Dient dazu die Integrität von Daten zu überprüfen.  Ähnlich wie eine Hashfunktion, benötigt aber ein gemeinsamer Schlüssel. Folie 181 Cryptography 05.10.2024 Michael Zihlmann MAC Folie 182 https://de.wikipedia.org/wiki/Message_Authentication_Code Cryptography 05.10.2024 Michael Zihlmann Passwort Hashes  Ein Passwort soll nicht einsehbar gespeichert werden.  Wer z.B. ein DB-Backup in die Finger bekommt soll nicht in der Lage sein sich als einen bestimmten Benutzer auszugeben. Folie 183 Cryptography 05.10.2024 Michael Zihlmann Passwortprüfung Ablauf 1. Benutzer gibt Password im Browser ein. 2. Browser überträgt Passwort verschlüsselt (SSL/ TLS) an Applikation / Webserver. 3. Applikation generiert aus dem Passwort einen Hash. 4. Applikation prüft den generierten Hash mit dem Hash in der Datenbank. Folie 184 Cryptography 05.10.2024 Michael Zihlmann Passwortprüfung Ablauf  Warum nicht gleich mit Javascript den Hash im Browser generieren und den Hashwert übertragen? Folie 185 Cryptography 05.10.2024 Michael Zihlmann Passwortprüfung Ablauf  Wenn die Applikation zur Authentifizierung nicht ein Passwort sondern ein Hash erwartet, wird der Hash zum eigentlichen Credential.  Wer den Hash aus der Datenbank auslesen kann, könnte in diesem Fall den Hash direkt zur Authentifizierung benutzen. Folie 186 Cryptography 05.10.2024 Michael Zihlmann Password Hashes MD5 $password = md5($password); $query = mysqli_query($db, "INSERT INTO users (name, username, password) VALUES ('$name', '$username','$password')");  Was ist das Problem dieses Codes? Folie 187 Cryptography 05.10.2024 Michael Zihlmann Password Hashes MD5  MD5 ist nicht kollisionsresistent  daher andere Hashfunktion verwenden.  Anfällig auf Angriff mit Rainbow-Table  Verwendung eines Salt  Allgemein: besser ein Framework verwenden als selbst etwas «basteln». (Ansonsten sind weitere applikationsbezogene Angriffe möglich wie z.B. SQL-Injection.) Folie 188 Cryptography 05.10.2024 Michael Zihlmann Password Hashes MD5  Was wäre ein empfehlenswerte Hashfunktion? Folie 189 Cryptography 05.10.2024 Michael Zihlmann Password Hashes  PBKDF2, bcrypt  SHA-256, SHA-512/256, SHA-384 und SHA-512  SHA3-256, SHA3-384, SHA3-512;  → besser $password = bcrypt($password + $salt); Quelle:  BSI TR-02102-1 https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/TechnischeRichtlinien/TR02 102/BSI-TR-02102.pdf  Empfehlung BSI «Sichere Passwörter in Embedded Devices https://www.allianz-fuer-cybersicherheit.de/SharedDocs/Downloads/Webs/ACS/DE/BSI-CS/BSI- CS_069.pdf Folie 190 Cryptography 05.10.2024 Michael Zihlmann Hash  Erstellen Sie den Hashwert einer beliebigen Datei.  Erstellen Sie den Hash eines Textes.  Welche Tools stehen Ihnen dabei auf Ihrem System zur Verfügung?  Welche Funktionen bieten die von Ihnen verwendeten Programmier- und Skriptsprachen an? Zeit: 15 min Folie 191 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table  Idee: Berechnung aller möglichen Hashes (z.B. auf Basis eines Wörterbuches) im Voraus.  Sollte man irgendwann an eine Datensammlung kommen welche Passwörtern als Hashwerten beinhaltet, kann das richtige Passwort nachgeschaut werden.  Was ist die Schwierigkeit dieser Idee? Folie 192 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table  Problematik: Zeichenlänge des Hashwertes addiert mit der Zeichenlänge des Inputs multipliziert mit allen möglichen Zeichenkombinationen ergibt eine riesige Datei.  Kompromisslösung: Hashwerte werden als Kette gespeichert.  Die Zwischenglieder der Kette werden nicht gespeichert, was eine Kompression ergibt. Folie 193 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table  Aus Input i1 wird Hash h1 berechnet.  Es wird eine Reduktion gemacht: von h1 wird nur die hintere Hälfte als zweiter Input i2 genommen.  Der Anfangswert i1 und der Schlusswert hx der Kette wird in der Tabelle gespeichert.  Die Zwischenglieder der Kette werden nicht gespeichert.  i1 → h1 → i2 → h2 → i3 → … → ix → hx  Je länger die Kette desto kleiner der Speicherbedarf.  In einer Tabelle hat es somit eine Liste mit möglichen Anfangswerten i1 und dem jeweiligen Resultat der Kettenbildung hx. Folie 194 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table  i1 = Kalaidos  h1 = echo «Kalaidos» | md5sum = 0dac17b8879953c2eb4746d22e3ce3cd  i2 = eb4746d22e3ce3cd  h2 = 7677bf056ceeb4d9feaef3b92ce82f16 ... Folie 195 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table Suche nach dem richtigen Passwort. Fall 1: Hash steht in Tabelle als hx:  Die richtige Kette ist somit bekannt.  i1 kann als Input genommen werden.  Berechnung bis ix gefunden ist. Folie 196 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table Falls 2: Hash steht nicht in Tabelle:  Die richtige Kette ist nicht bekannt.  Reduktion des Hashwertes und Berechnung bis sich ein Resultat in der Tabelle finden lässt.  Nun ist die richtige Kette bekannt, vorgehen wie in Fall 1. Allgemein gilt:  Je länger die Kette desto grösser der Rechenaufwand für einen Match. Folie 197 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table Verständnisfrage:  Niemand benutzt doch ein Passwort wie eb4746d22e3ce3cd (i2 aus unserem Beispiel) – was soll das ganze? Folie 198 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table  Ein Hash ist wie eine Prüfsumme.  Das heisst: mehrere verschiedene Inputs können (zufälligerweise) zum selben Ergebnis kommen.  Die Sicherheit ist nicht gefährdet, solange nicht gezielt ein bestimmter Hashwert erzeugt werden kann.  Siehe Thema Hashkollision. (folgend) Folie 199 Cryptography 05.10.2024 Michael Zihlmann Rainbow Table  Wie können Sie einem Hacker den Einsatz einer Rainbow Table vermasseln? Folie 200 Cryptography 05.10.2024 Michael Zihlmann Salz und Pfeffer  Zufälliger Wert (Salt) wird dem Input hinzugefügt. Der Salt wird zusammen mit dem Hash in der Datenbank gespeichert.  Zusätzlich kann dem Input noch ein geheimer zufälliger Wert (Pepper) hinzugefügt werden. Der Pepper wird separat und geschützt gespeichert.  h = Hf (i + s + p)  Eintrag in Datenbank:  Username, Hash, Salt Folie 201 Cryptography 05.10.2024 Michael Zihlmann Salz und Pfeffer  Muss für jeden Benutzer ein eigener Salt, respektive Pepper erstellt oder kann für alle Benutzer ein identischer Wert verwendet werden? Folie 202 Cryptography 05.10.2024 Michael Zihlmann Salz und Pfeffer  Ein Salt, respektive ein Pepper erhöht die Sicherheit wesentlich.  Einsatz von Rainbow Tables können praktisch ausgeschlossen werden.  Unterschiedliche Salt / Pepper sind nochmals eine massive Steigerung der Sicherheit.  Identische Passwörter führen somit zu unterschiedlichen Hashes.  Empfehlung: wo technisch möglich und mit verhältnismässigem Aufwand zu implementieren sollten unterschiedliche (zufällige) Werte verwendet werden. Folie 203 Cryptography 05.10.2024 Michael Zihlmann Hashkollisionen  Eine Hashfunktion gilt als Kollisionsresistent wenn es nicht möglich ist, einen Input zu finden welcher einen bestimmten Hash erzeugt.  Bei dem früher beliebten Hashalgorithmus MD5 ist es (zumindest für grössere Eingabegwerte wie PDF-Files) «einfach» Dateien soweit zu modifizieren, bis sie einen bestimmten Hash erzeugen.  Was wäre die Voraussetzung, dass es zu keiner Kollision kommen kann? Folie 204 Cryptography 05.10.2024 Michael Zihlmann Hashkollisionen  Für eine perfekte Kollisionsresistenz müsste der Hashwert mindestens so lang sein wie der Eingabewert.  Dies wäre aber für die meisten Anwendungsfälle nicht mehr praktikabel. Folie 205 Cryptography 05.10.2024 Michael Zihlmann Geburtstagsparadoxon  Wie hoch ist die Wahrscheinlichkeit, dass bei 23 Studenten in einem Raum mindestens zwei von ihnen am selben Tag im Jahr Geburtstag haben?  Wie hoch ist die Wahrscheinlichkeit bei 50 Personen? Folie 206 Cryptography 05.10.2024 Michael Zihlmann Geburtstagsparadoxon  Wahrscheinlichkeit p, Studenten s  p = 1 – 365! / ((365 – s)! * 365s)  Bei s = 23 ist p = 0.507  Bei s = 50 ist p = 0.970  Es ist unwahrscheinlich, dass ALLE Personen an einem unterschiedlichen Tag Geburtstag haben. Folie 207 Cryptography 05.10.2024 Michael Zihlmann Geburtstagsparadoxon  Es ist viel einfacher zwei zufällige Texte zu finden die denselben Hashwert haben, als zu einem vorgegebenen Text einen weiteren Text zu finden welcher ein identischer Hashwert hat. Folie 208 Cryptography 05.10.2024 Michael Zihlmann Hashchain  Eine Hashchain ist eine Verkettung von Hashes.  Das Ziel ist, die Integrität von Daten sicherzustellen. Insbesondere da wo fortlaufend Daten generiert werden. Folie 209 Cryptography 05.10.2024 Michael Zihlmann Hashchain Eine Hashchain kann auf verschiedene Arten implementiert werden: Variante 1:  Der Hashwert des vorgehenden Datenblock wird im nachfolgenden Datenblock miteinbezogen. Variante 2:  Über mehrere Hashwerte wird wieder ein Hash gebildet. Dies ergibt eine Art Baumstruktur. Folie 210 Cryptography 05.10.2024 Michael Zihlmann Hashchain Anwendungsbeispiel:  Die verschiedenen IT-Systeme eines Unternehmens erzeugen fortlaufend (sicherheitsrelevante) Logdaten.  Die Logdaten werden zentral in einem SIEM (Security Incident and Event Monitoring) ausgewertet.  Dank dem SIEM kann ein Hackerangriff rechtzeitig erkannt und im idealfall der Angreifer identifiziert werden.  Bei einem allfälligen Gerichtsprozess könnte die Beweismittelkette hinterfragt werden.  Daher muss bewiesen werden, dass die Logdaten nicht durch die Systeme oder von Menschen verändert wurden. Folie 211 Cryptography 05.10.2024 Michael Zihlmann Hashchain Lesen Sie den folgenden Artikel: https://logsentinel.com/blog/log-integrity-how-siems-address-the-issue-and-is-it-enough/ Erklären Sie die folgende Tabelle: Folie 212 Cryptography 05.10.2024 Michael Zihlmann Hash-Baum https://upload.wikimedia.org/wikipedia/commons/9/95/Hash_Tree.svg Folie 213 Cryptography 05.10.2024 Michael Zihlmann Blockchain  Praktische Anwendung einer Hashchain.  Mit Cryptocurrencies werden fortlaufend Transaktionen (Überweisungen) getätigt.  Zu jeder Transaktion wird ein Hash gebildet.  Über die Transaktionshashes wird ein Hashbaum gebildet.  Über den Root Hash und der Hash des vorgehenden Blockes wird wieder ein Hash gebildet. Dies bildet den Hash des aktuellen Transaktionsblockes. Folie 214 Cryptography 05.10.2024 Michael Zihlmann Blockchain https://www.researchgate.net/profile/Ajib-Susanto/publication/343529791_Implementation_of_Smart_Contracts_Ethereum_Blockchain_in_Web- Based_Electronic_Voting_e-voting/links/5f2eb755299bf13404af87bd/Implementation-of-Smart-Contracts-Ethereum-Blockchain-in-Web-Based-Electronic-Voting-e- voting.pdf Folie 215 Cryptography 05.10.2024 Michael Zihlmann Schutz von Schlüsselmaterial Folie 216 Cryptography 05.10.2024 Michael Zihlmann Schutz der Schlüssel  Wie verhindern Sie, dass ein Systemadministrator zur Herausgabe des Schlüsselmaterials gezwungen werden kann? https://xkcd.com/538/ Folie 217 Cryptography 05.10.2024 Michael Zihlmann HSM  Hardware Security Module  Ziel: Schlüsselmaterial soll möglichst nicht exponiert sein (z.B. im Memory, in einer Datei)  Systemadministratoren, Entwickler, …, sollen die Schlüssel selbst nie sehen. (Schutz vor Missbrauch des Schlüsselmaterials, Schutz vor Erpressung der Mitarbeiter). Folie 218 Cryptography 05.10.2024 Michael Zihlmann HSM Funktionalität:  Zufallszahlengenerator (Schlüsselerzeugung)  Durchführen einer kryptographischen Operation  Verschlüsseln  Signieren  Berechnung eines Hashes  Speichern von Schlüsselmaterial Folie 219 Cryptography 05.10.2024 Michael Zihlmann HSM  HSM gibt es in verschiedenen «Formen und Grössen»  Als Chip oder als eigenständiges Gerät https://www.securosys.com Folie 220 Cryptography 05.10.2024 Michael Zihlmann HSM Konzeptionelle Fragen bei der Verwendung eines HSM:  Wie sieht das Zugriffskonzept auf das HSM aus?  Wie authentifiziert sich ein Systemadministrator?  Gibt es ein Vieraugenprinzip?  Wie authentifiziert sich eine Applikation welche das HSM verwendet?  Gibt es Standardintegrationen in Businessapplikationen?  Wie funktioniert der Backup / Restore Prozess?  Welche weiteren Punkte sehen Sie? Folie 221 Cryptography 05.10.2024 Michael Zihlmann HSM https://www.thesslstore.com/blog/pki-architecture-fundamenta

Use Quizgecko on...
Browser
Browser