Untitled Deck Flashcards
Warum ist der Standard Square & Multiply Algorithmus für RSA anfällig für Timing-Angriffe? (03_TPA_01)
Die Ausführungszeit hängt von der Anzahl der 1-Bits im privaten Schlüssel d ab. Die if-Anweisung erzeugt messbare Zeitunterschiede. Der Codepfad unterscheidet sich basierend auf geheimen Schlüsselbits. Die modulare Multiplikation hat variable Ausführungszeiten je nach Operanden.
Was ist Message Blinding in RSA und wie schützt es vor Timing-Angriffen? (03_TPA_01)
Statt M wird L^e * M signiert (L = zufällig). Die finale Signatur ist (L^e * M)^d * L^(-1) mod N = M^d mod N. Dies randomisiert die Eingabe der modularen Exponentiation, verhindert die gezielte Auswahl von Nachrichten und macht das Timing unabhängig von der Nachricht.
Erklären Sie das Exponent Blinding in RSA. (03_TPA_01)
Verwendet d’ = d + k * φ(N) statt d (k zufällig). Funktioniert wegen Eulers Theorem: M^(d + k*φ(N)) ≡ M^d mod N. Randomisiert den Exponenten bei jeder Ausführung und verhindert die Analyse von fixen Private-Key-Mustern.
Wie wird RSA mit einer Schlüssellänge von 3072 Bit in der Praxis implementiert? (03_TPA_01)
CPUs haben nur 8-64 Bit Register, daher wird spezielle Langzahlarithmetik benötigt für: Addition/Subtraktion, Multiplikation, Modulare Reduktion/Inverse und Potenzierung. Die Implementierung muss effizient und sicher gegen Timing-Angriffe sein.
Wie funktioniert der Binary Exponentiation Algorithmus und warum ist er wichtig für RSA? (03_TPA_01)
Der Exponent wird binär dargestellt, für jedes Bit wird quadriert und bei 1-Bits zusätzlich multipliziert. Dies reduziert die Anzahl der Multiplikationen von d auf log(d). Wichtig für effiziente RSA-Implementierung, aber anfällig für Timing-Angriffe.
Wie berechnet sich die Komplexität der RSA Operationen und warum ist sie O(n³)? (03_TPA_01)
Jede Multiplikation von n-Bit Zahlen benötigt O(n²) Operationen. Der Square & Multiply Algorithmus führt n Quadrierungen und durchschnittlich n/2 Multiplikationen durch. Gesamtkomplexität ist O(n) * O(n²) = O(n³).
Welche Optimierungen gibt es für RSA Implementierungen? (03_TPA_01)
Karatsuba-Multiplikation reduziert Komplexität auf O(n^1.58), Montgomery-Reduktion bringt Faktor 1.1-2 Beschleunigung, Chinesischer Restsatz (CRT) bringt Faktor 4. Diese Optimierungen sind kombinierbar.
Wie funktioniert der Timing-Angriff auf RSA grundsätzlich? (03_TPA_01)
Der Angreifer misst Ausführungszeiten für gewählte Nachrichten, analysiert statistische Muster in den Zeitmessungen und kann daraus Bits des privaten Schlüssels rekonstruieren. Die Varianz der Messungen gibt Aufschluss über die Bits.
Wie lässt sich eine konstante Ausführungszeit für RSA implementieren? (03_TPA_01)
Vermeidung von databhängigen Verzweigungen, Verwendung von Bitmasken statt if-Anweisungen, alle Ausführungspfade gleich lang gestalten, konstante Speicherzugriffsmuster, Montgomery-Multiplikation mit fixer Zeitdauer.
Welche Entwicklung gab es bei TLS/SSL bezüglich Timing-Angriffen? (03_TPA_01)
SSL 3.0: Keine Schutzmaßnahmen, TLS 1.0: Warnung vor Bleichenbacher, TLS 1.1: RSA Blinding empfohlen, TLS 1.2: Verbesserte Fehlerbehandlung, TLS 1.3: Grundlegende Überarbeitung mit eingebauter Timing-Resistenz.
Was sind die wichtigsten Gegenmaßnahmen gegen Timing-Angriffe bei RSA? (03_TPA_01)
Message Blinding, Exponent Blinding, konstante Ausführungszeit, einheitliche Fehlerbehandlung, reguläre Speicherzugriffsmuster, Side-Channel resistente Algorithmen.
Berechnen Sie die RSA-Signatur für N=187
e=3
Warum ist die Division bei der modularen Reduktion problematisch? (03_TPA_01)
Division ist auf CPUs 20-80 mal langsamer als Multiplikation, variable Ausführungszeit je nach Eingabe, schwer konstant-zeit zu implementieren, benötigt viele CPU-Zyklen.
Was sind die Vorteile der Montgomery-Multiplikation? (03_TPA_01)
Ersetzt teure Division durch effiziente Operationen, arbeitet in spezieller Zahlendarstellung, effizienter für mehrfache modulare Operationen, kann konstant-zeit implementiert werden.
Wie funktioniert das statistische Modell beim Timing-Angriff? (03_TPA_01)
Ausführungszeit = Basis + Summe(Operationszeiten) + Rauschen. Zeiten folgen Normalverteilung, Operationen sind unabhängig, Rauschen ist normalverteilt.