|
|
|
|
 |
 |
  |
| · · · · · · · · · · · · · · · · · · · · · · · |
  |
| · · · · · · · · · · · · · · · · · · · · · · · |
  |
| · · · · · · · · · · · · · · · · · · · · · · · |
  |
| · · · · · · · · · · · · · · · · · · · · · · · |
  |
| · · · · · · · · · · · · · · · · · · · · · · · |
|
|
|
|
|
 |
|
|
|
 |
 |
|
Substitutions- und Permutationsmethoden
|
Merkmale guter Algorithmen |
| |
|
|
Voraussetzungen für sichere Algorithmen |
1. Der Algorithmus wurde gezielt zur Verschlüsselung entwickelt
Das Verfahren sollte von erfahrenen Kryptologen mit dem erklärten Ziel entwickelt worden sein einem kryptanalytischen Angriff standzuhalten - und nicht etwa einen Pseudozufallszahlengenerator oder Hash-Algorithmus zu missbrauchen, um einen Schlüsselstrom für eine Vernamverschlüsselung zu generieren.
2. Die Geheimhaltung des Verfahrens ist nicht entscheidend und es steht dauerhaft für Analysen zur Verfügung
Nach dem Prinzip von Kerckhoffs hängt die Datensicherheit bei guten Algorithmen nicht von der Geheimhaltung des Verfahrens ab, sondern ausschließlich von der Geheimhaltung von den Schlüsseln. Die Offenlegung des Algorithmus sollte den Erfolg eines Angreifers nicht beeinflussen.
3. Der Algorithmus wurde von Experten analysiert und zeigte keine Schwächen.
Das Verfahren sollte von anderen Experten durch und durch analysiert, diskutiert und deren Ergebnisse veröffentlicht worden sein, - und natürlich keine bekannten Schwächen als Ergebnis zeigen.
4. Der Algorithmus arbeitet effizient
Der Algorithmus sollte möglichst leicht zu implementieren sein und schnelle Ver- und Entschlüsselung ermöglichen. Zudem erzeugt er einen Chiffretext, der nicht länger ist als der Klartext.
Snake Oil
Für kryptographische Verfahren, die groß angepriesen werden, aber die obigen Punkte nicht erfüllen, gibt es den Begriff „Snake Oil“. Neue, angeblich 100% sichere, revolutionäre Verfahren entpuppen sich zumeist als „Schlangenöl“.
|
Kryptanalytik |
Über kryptanalytische Verfahren (Angriffe) kann die Güte bzw. Angriffsresistenz eines kryptographischen Algorithmus bestimmt werden. Kryptanalytische Angriffe sind:
- Ciphertext only - Known Plaintext und dazu "lineare Kryptanalyse und "Meet in the middle Attack" - Chosen Plaintext und dazu "differentielle Kryptanalyse" - Chosen Ciphertext
Neben der vollständigen Schlüsselsuche (exhaustive Key Search, Brute Force) sind in der Praxis auch schwache und halbschwache Schlüssel, kleine private Schlüssel oder niedrige Exponenten, Fehlerangriffe, und Side-Channel Angriffe relevant
|
|
|
"fehlerlose" Implementierung |
Ein guter Algorithmus nützt nichts, wenn: die Implementierung (ob in Soft- oder Hardware) fehlerhaft ist; bestimmte (negative) Eigenschaften des Algorithmus ausreichend nicht berücksichtigt werden; oder zu viele Informationen über Seitenkanäle (Side Channel Information) verfügbar sind und Side Channel Analysen (bzw. Side Channel Attacks) zulassen.
Dabei handelt sich dabei um eine Form der Schwachstellenanalyse, in der Systeme über die Auswertung der Informationen aus Seitenkanälen wie die Stromaufnahme, Zeitverhalten oder die Abstrahlung der Komponenten angegriffen werden, etwa um geheime Schlüssel zu kompromittieren. Derartige Attacken sind auch besonders bei Chipkarten von Bedeutung.
Um solche Side-Channel Attacken zu verhindern sollte die Implementierung schon unter Berücksichtigung dieser Aspekte geschehen, daraufhin überprüft und getestet und die Ergebnisse dieser Evaluierung öffentlich sein.
|
Linktipps |
|
|
 |
|
 |
|
|
|
|
|
|
|
|
|
|
|
|