• IT-Karriere:
  • Services:

Dan J. Bernstein: Krypto-Algorithmen sicher designen

Der Kryptograph Dan Bernstein fordert auf der Real World Crypto seine Kollegen auf, kryptographische Algorithmen so zu entwickeln, dass ein fehlerhafter Einsatz vermieden wird. Es sei keine gute Idee, immer den Programmierern die Schuld zu geben.

Artikel veröffentlicht am , Hanno Böck
Dan Bernstein fordert Algorithmen, bei denen man weniger falsch machen kann.
Dan Bernstein fordert Algorithmen, bei denen man weniger falsch machen kann. (Bild: Ordercrazy, Wikimedia Commons)

"Der arme Nutzer erhält ein Seil, mit dem er sich selbst erhängen kann - das ist etwas, was ein Standard nicht tun sollte" - dieses Zitat ist über zwanzig Jahre alt (1992) und stammt von Ron Rivest, einem der Erfinder des RSA-Standards. Dan Bernstein, bekannt unter seinem Kürzel DJB, nutzt es als Einleitung, um seinen Kollegen auf der Real-World-Krypto-Konferenz in London zu erläutern, wie seiner Ansicht nach Algorithmen oft falsch entwickelt werden. Rivests Zitat bezog sich auf die Standardisierung des DSA-Verfahrens (Digital Signature Algorithm) in den frühen 90er Jahren.

DSA und schlechte Zufallszahlen

Inhalt:
  1. Dan J. Bernstein: Krypto-Algorithmen sicher designen
  2. Seitenkanalangriffe auf AES

Der DSA-Algorithmus hat eine besonders problematische Eigenschaft: Zum Erzeugen einer Signatur benötigt man eine Zufallszahl k, die sich niemals wiederholen darf. Denn wennn für zwei unterschiedliche Signaturen dieselbe Zahl k verwendet wird, hat das katastrophale Folgen: Mit einigen sehr einfachen Rechenschritten kann ein Angreifer dann den privaten Schlüssel berechnen. Rivests Kommentar von 1992 bezog sich auf diese Eigenschaft von DSA. Auch das ECDSA-Verfahren hat diese Eigenschaft. ECDSA ist eine Weiterentwicklung von DSA und basiert auf elliptischen Kurven.

Die Konsequenz: Wer DSA verwendet, muss darauf achten, dass ein guter Zufallszahlengenerator verwendet wird. Doch die Erfahrung zeigt, dass Probleme in Zufallszahlengeneratoren häufig sind. Das ist kein rein theoretisches Problem. Sony ist dieser Fehler beim Code-Signing der Playstation 3 unterlaufen. Damit konnten Angreifer den privaten Schlüssel von Sony regenerieren, ein Angriff, der als Fail-Overflow-Exploit bekanntwurde. Auch Bitcoin hatte bereits Probleme mit dieser Eigenschaft des ECDSA-Algorithmus, etwa in einigen Android-Clients für Bitcoins. Da die Bitcoin-Signaturen in der Blockchain öffentlich sind, konnten Angreifer die fehlerhaften Signaturen aufspüren und die Bitcoin-Konten der Betroffenen leerräumen.

Laut Bernstein ist die übliche Reaktion auf derartige Fehler, den Programmierern die Schuld zu geben. Vertritt man aber die Ansicht von Rivest, ist das falsch: Vielmehr ist die Schuld Bernstein zufolge ein kryptographischer Standard, durch den Programmierern leicht solche Fehler unterlaufen. Für DSA und ECDSA gibt es inzwischen - fast 20 Jahre später - mit RFC 6979 eine Spezifikation, der für das k keinen Zufallswert, sondern einen aus der Nachricht und dem privaten Schlüssel berechneten Wert verwendet. Damit ist gewährleistet, dass bei unterschiedlichen Eingaben sich der k-Wert nie wiederholt. Auch der von Bernstein mitentwickelte Signaturalgorithmus Ed25519 verwendet ein derartiges Konzept zur Vermeidung des Zufallszahlenproblems.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Seitenkanalangriffe auf AES 
  1. 1
  2. 2
  3.  


Anzeige
Top-Angebote
  1. (u. a. FIFA 20 Xbox One 33,99€, Terminator Resistance 24,49€)
  2. (heute u. a. Philips Hue Topseller, Philips Wake-up Lights, Samsung Galaxy Tab S6)
  3. 0,00€
  4. 44,90€ (Bestpreis!)

__destruct() 13. Jan 2015

Der größte Angriffsvektor ist der Mensch, der keinen Bock darauf hat, Verschlüsselung...

hannob (golem.de) 12. Jan 2015

Danke für den Hinweis, das war tatsächlich ein Fehler im Artikel. Ich habe das jetzt...


Folgen Sie uns
       


Motorola Razr (2019) - Hands on

Das neue Motorola Razr lässt sich wie das alte Razr V3 zusammenklappen - das Display ist allerdings faltbar und geht über die gesamte Innenfläche des Smartphones.

Motorola Razr (2019) - Hands on Video aufrufen
Sendmail: Software aus der digitalen Steinzeit
Sendmail
Software aus der digitalen Steinzeit

Ein nichtöffentliches CVS-Repository, FTP-Downloads, defekte Links, Diskussionen übers Usenet: Der Mailserver Sendmail zeigt alle Anzeichen eines problematischen und in der Vergangenheit stehengebliebenen Softwareprojekts.
Eine Analyse von Hanno Böck

  1. Überwachung Tutanota musste E-Mails vor der Verschlüsselung ausleiten
  2. Buffer Overflow Exim-Sicherheitslücke beim Verarbeiten von TLS-Namen
  3. Sicherheitslücke Buffer Overflow in Dovecot-Mailserver

Echo Dot mit Uhr und Nest Mini im Test: Amazon hängt Google ab
Echo Dot mit Uhr und Nest Mini im Test
Amazon hängt Google ab

Amazon und Google haben ihre kompakten smarten Lautsprecher überarbeitet. Wir haben den Nest Mini mit dem neuen Echo Dot mit Uhr verglichen. Google hat es sichtlich schwer, konkurrenzfähig zu Amazon zu bleiben.
Ein Test von Ingo Pakalski

  1. Digitale Assistenten Amazon verkauft dreimal mehr smarte Lautsprecher als Google
  2. Googles Hardware-Chef Osterloh weist Besuch auf smarte Lautsprecher hin
  3. Telekom Smart Speaker im Test Der smarte Lautsprecher, der mit zwei Zungen spricht

Smarter Akku-Lautsprecher im Praxistest: Bose zeigt Sonos, wie es geht
Smarter Akku-Lautsprecher im Praxistest
Bose zeigt Sonos, wie es geht

Der Portable Home Speaker ist Boses erster smarter Lautsprecher mit Akkubetrieb. Aus dem kompakten Gehäuse wird ein toller Klang und eine lange Akkulaufzeit geholt. Er kann anders als der Sonos Move sinnvoll als smarter Lautsprecher verwendet werden. Ganz ohne Schwächen ist er aber nicht.
Ein Praxistest von Ingo Pakalski

  1. ANC-Kopfhörer Bose macht die Noise Cancelling Headphones 700 besser
  2. Anti-Schnarch-Kopfhörer Bose stellt Sleepbuds wegen Qualitätsmängeln ein
  3. Noise Cancelling Headphones 700 im Test Boses bester ANC-Kopfhörer sticht Sony vielfach aus

    •  /