Informatik Security
Topic 1 Intro and Definition of Terms
Topic 1 Intro and Definition of Terms
-
- 1 / 29
-
Cartes-fiches
Erklären Sie den Unterschied zwischen Steganographie und Cryptographie
Beir der Steganographie geht es darum ein Bild oder Text in einem bestehenden Bild oder Text zu "verstecken": z.B ein Bild über ein anderes Legen. Der Empfänger kann dann die entsprechenden Pixel ausblenden und das hintere Bild erkennen
Bei der Kryptographie geht es darum, ein Bild oder Text unmkenntlich zu kachen. Man sieht also, dass zB ein Text verschlüselt wurde, kann ihn aber nicht entziffern oder entschlüssen.
Wie unterscheiden sich Codesysteme und Kryptosysteme?
Codesysteme können nur bestimmte Sätze oder Wörter anhand eines "Wörterbuches/Duden" transfortmieren. Zum "entschlüsseln" braucht man das Wörterbuch
Mit Kryptosystemen ist es möglich jeglichen Text bzw. jeden Buchstaben so zu tranformieren, dass er unkenntlich ist. Es gibt also für jedes Zeichen "eine Übersetzung"
Was sind Krypto Primitiven und was bringen sie?
Ein kryptographisches Primitiv ist in der Kryptographie ein einfacher Baustein, der zum Aufbau von komplexeren kryptographischen Systemen dient. Solche Bausteine sind beispielsweise Blockchiffren, Kryptologische Hashfunktionen, Stromchiffren und kryptographisch sichere Zufallszahlengeneratoren.
Dabei sind oft Sicherheitsreduktionen möglich: Man beweist, dass ein kryptographisches System/Verfahren, welches aus diesen kryptographischen Primitiven aufgebaut ist, sicher ist, wenn die zu Grunde liegenden Primitive sicher sind.
Auf welche zwei Komponenten basiert ein Kryptosystem
Algorithms: Der Algorithmus muss sicher sein, bzw. man soll ihn nicht brechen können
Key: Jedes Mal wenn man den Algorithmus nutzt, sollte man einen neuen Key/Schlüssel verwenden
Welches ist das beste Verfahren um ein Cypher-Algorithmus zu testen?
Indem man den Algorithmus der Öffentlichkeit publiziert und von anderen Krytpologen verifizieren lässt.
Cypher-Algorithmen welche nicht öffentlich gemacht wurden, sind indem Sinne auch nicht sicher da sie noch nicht getestet werden konnten.
Wie lautet das Kerckhoffs’sche Prinzip?
Die Sicherheit eines Kryptosystems beruht darauf, dass der Schlüssel geheim bleibt und nicht der Algorithmus
No Security by Obscurity
Wann ist ein Kryptographishces System sicher?
Wenn es nicht wesentlich schneller als durch einen Bruteforce Attacke entschlüsselt werden kann
Kryptoverfahren haben drei wesentliche Qualitätskriterien. Welche sind diese und was bedeuten sie?
Keyspace: Der Keyspace sollte so kein wie möglich (Rechenaufwand) und so gross wie nötig (ausgewählt werden): Der Raum aus welchem die Keys generiert werden können.: 2^32 Anzahl Zahlen in diesem Raum
Keylength: Die länge welches ein Key haben muss aus dem Keyspace: zB 32 bits länge des Keys
Complexity: Kryptographische Verfahren sollten so effizient wie möglich sein. zb Binary XOR
Was ist Entropy ?
Die Zufälligkeit welche ein System oder Applikation nutzt
Wie wird die Entropy bei einem Passwort definiert?
Wenn ein Passwort der länge k zufällig ausgewählt wird, hat es 2^k Möglichkeiten. Das Passwort hat dann k bits Entropy
Wie lautet die allgmeine Formel um die Passwortentropy definieren zu können?
lb(b^n) = H
lb = log basis 2
b= Anzahl mögliche Charakter z.b 95 bei ISO Charakter
n = bitlänge des Passworts
H=Entropy des Passworts
Welche Eigenschaften sollte ein Schlüssel/Key in einem Kryptosystem besitzen?
frisch erstellt (freshness)
zufällig erstellt (Zufälligkeit)
nur für eine bestimmte zeit gültig(zeitlich beschränkt, läuft ab)
Es gibt zwei Sicherheits Kategorien von Cryptosystemen. Wie lauten diese und wie sind deren Eigenschaften?
unconditional secure (perfectly secure): Angreifer hat mit unendlicher Power den Schlüssel nicht finden. Er hat zu wenig Informationen um damit was anfangen zu kömnnen
computational secure: ein System ist "computationally secure" wenn der beste algorithmus braucht eine grosse Menge an Operationen. Auch mit der ganzen Power der Welt braucht er Jahre um es zu bruteforcen
Es gibt zwei Quantum Algorithmen welche für aktuelle Kryptographiesysteme gefährlich werden können. WIe heissen sie? und welche Laufzeit haben sie?
Shor: asymetrische Kryptographie -> löst Problem in Polynomialer Zeit
Grover: symetrishce Kryptographie -> reduziert komplexität auf sqrt(n)
In der Cryptanalyse gibt es drei Untergruppen. Wie heissen sie und was beinhalten sie?
Classical Cryptonalysis: Die Forsschung ein Pleintext aus einem Cyphertext zu wiederherstellen oder alternativ den key von c zu generieren.
Implementation Attack: Seiteneffekte wie stromimpulse bei der Schlüsselgenerierung abhören und so Rückschlüsse auf den Schlüssel ziehen können. Oder software basierte Angriffe wie zb buffer-overflow attacken (programmierfehler ausnützen)
Social Engineering Attacks: Personen austricksen (zb mit phishing mail) um an den Key zu kommen
in der klassischen Cryptoanalyse können zwei Dinge angegriffen werden
-Algorithmus -> Fehler im Verschlüsselungsalgorithmus finden
-Key -> diverse Möglichkeiten, am einfachsten Bruteforce
Es gibt 6 Möglichkeiten ein Key anzugreifen. Nennen sie diese
nach Schwierigkeit sortiert: einfach-->schwer
Cyphertext Only Attack COA
Known-Plaintext-Attack KPA
Chosen Plaintext Attack CPA
Adaptive Chosen Plaintext Attack
Chosen-Cipherthext Attack CCA
Adaptive Chosen Ciphertext attack
Ciphertext Only Attack (COA), eklären sie
Angreifer hat nur die Möglichkeit zuzuhören und cyphertext abzuhören. Er kann weder m->c noch c->m.
Einzige Möglichkeit ist hier zb anhand der Häufigkeit von Buchstaben im englischen text herauszufinden um welches cyphertext es sich hierbei handelt
Known Plaintext Attack (KPA): erklären sie
Der Angreifer hat eine zufällige Liste von Plaintext und Cypherpaaren und versucht anhand dieser Informationen was aus dem Schlüssel herauszufinden. Gut für Transposition und substitution Probleme zu lösen.
Chosen Plaintext Attack (CPA): erkläre
Der Angreifer hat die Möglichkeit aus gewollten Plaintexts die Schifrierung zu sehen. Daraus soll er etwas von Key herausfinden
Chosen-ciphertext attack (CCA): erklären
In CCA kann der Angreifer encrypt und decrypt. damit soll etwas aus dem Key gefunden werden
Was sind passive Attacken?
Packet sniffing oder eavesdropping -> Pakete mitschneiden im Netzwerk. Könnten wichtige Informationen darin sein.
Keylogger-> software die die Tastenschläge aufnimmt. Daraus können User und Passwörter herausgefunden werden
Was sind aktive Attaken`?
Meist Angriffe wo man mithilfe von Informationen eines passiven Angriffs gesammelt hat.
Z.B man in the middle, Denial of Service usw
Um was geht es bei einer Man in the middle Attacke?
Bei der Man in the middle geht es darum eine end to end verbindung zu übernehmen. Damit kann die Kommunikation zwischen A und B mitgelesen werden