Sicherheitseigenschaften kryptografischer Verfahren

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Sicherheitsbegriff)
Wechseln zu: Navigation, Suche

In der Kryptologie und Kryptoanalyse ist man an der Sicherheit kryptologischer Verfahren interessiert. Im Allgemeinen ist es sinnlos, ein Verfahren als „sicher“ zu bezeichnen, ohne den Begriff der Sicherheit genauer zu definieren. Ein Sicherheitsbegriff leistet genau das: Er gibt an, gegen welche Art von Angriff welche Art von Sicherheit erwartet werden kann. Auch für einen Sicherheitsbeweis ist es wichtig, eine genaue Definition der zu beweisenden Sicherheit zu haben.

Sicherheitsbegriffe für asymmetrische Verschlüsselungsverfahren[Bearbeiten]

Die meisten Sicherheitsbegriffe für Public-Key-Verschlüsselungsverfahren bestehen aus zwei Komponenten. Die erste bezeichnet das zu erreichende Angriffsziel, eine Sicherheitseigenschaft, die der Angreifer verletzen will (z.B. Ciphertext Indistinguishability), die zweite beschreibt die Fähigkeiten der betrachteten Angreiferklasse (z.B. Chosen-Plaintext-Angriffe). Wenn kein Angreifer aus der Klasse gegen ein bestimmtes Verfahren (z.B. das RSA-Verschlüsselungsverfahren) das Angriffsziel erreicht, so erfüllt das Verfahren den Sicherheitsbegriff (in diesem Fall Ciphertext Indistinguishability gegen Chosen-Plaintext-Angriffe, kurz IND-CPA).

Sicherheitsziele[Bearbeiten]

Zwei Sicherheitsziele für asymmetrische Verschlüsselungsverfahren sind recht naheliegend: Es soll nicht möglich sein, den geheimen Schlüssel aus dem öffentlichen zu berechnen (Asymmetrie), und niemand soll ohne den geheimen Schlüssel verschlüsselte Nachrichten lesen können (Einwegeigenschaft).

Unbreakability (UB)[Bearbeiten]

Ein Angreifer kann die Asymmetrie oder Public-Key-Eigenschaft eines asymmetrischen Verfahrens brechen, indem er den geheimen Schlüssel aus dem öffentlichen berechnet. Dieses Sicherheitsziel ist die definierende Eigenschaft für alle asymmetrischen Verfahren.

Bricht ein Angreifer die Asymmetrie des Verfahrens, so hat er damit auch alle anderen Sicherheitsziele gebrochen, denn er kann den geheimen Schlüssel zusammen mit dem Entschlüsselungsalgorithmus benutzen, um Chiffrate zu entschlüsseln, als wäre er der Empfänger. Aus diesem Grund wird Asymmetrie auch als Unbreakability und ihr Bruch auch als Vollständiger Bruch (Total Break) bezeichnet.

One-wayness (OW)[Bearbeiten]

Ein Angreifer bricht die Einwegeigenschaft eines Verschlüsselungsverfahrens, wenn er zu einem beliebigen Chiffrat den zugehörigen Klartext bestimmen kann.

Diese beiden Sicherheitsziele sind zwar notwendig, aber für ein reines Verschlüsselungssystem zu schwach. Ein Angreifer bricht die Einwegeigenschaft nämlich nur, wenn er den vollständigen Klartext berechnen kann. Eine wünschenswerte Eigenschaft ist es aber, dass kein Angreifer irgendwelche Informationen über den Klartext berechnen kann. Das ist nur möglich, wenn das Verschlüsselungsverfahren probabilistisch ist, weil der Angreifer sonst Nachrichten selbst verschlüsseln und so eine Chiffrat-Klartext-Tabelle anlegen kann, die ihm das Entschlüsseln häufiger Nachrichten ermöglicht. Für diese Eigenschaften gibt es drei im Wesentlichen äquivalente Formulierungen. Jeder Angreifer, der die Einwegeigenschaft bricht, bricht auch die folgenden Sicherheitsziele.

Semantische Sicherheit (SEM)[Bearbeiten]

Ein Verschlüsselungsverfahren ist semantisch sicher, wenn jeder Angreifer jede Information, die er aus einem Chiffrat über die Nachricht ableiten kann, bereits dann ableiten kann, wenn er nur die Länge des Chiffrats kennt.[1] Ein Chiffrat verrät also nichts über eine Nachricht als ihre Länge.

Real-Or-Random-Sicherheit (ROR)[Bearbeiten]

Ein Verschlüsselungsverfahren ist ROR-sicher, wenn kein Angreifer unterscheiden kann, ob ein Chiffrat einen von ihm selbst gewählten Klartext verschlüsselt oder eine zufällige Nachricht gleicher Länge.

Ciphertext Indistinguishability (IND)[Bearbeiten]

Ein Verschlüsselungsverfahren besitzt Ununterscheidbarkeit von Chiffraten, wenn kein Angreifer entscheiden kann, welche von zwei gleich langen (von ihm selbst gewählten) Nachrichten ein Chiffrat verschlüsselt. Die Sicherheitsziele semantische Sicherheit, Real-Or-Random-Sicherheit und Ununterscheidbarkeit von Chiffraten sind äquivalent.

Für einige Anwendungen wird eine andere Eigenschaft benötigt. Ein Beispiel für eine solche Anwendung ist eine Auktion. Hier kann es einem Angreifer genügen, ein Gebot abzugeben, das höher ist als das eines Konkurrenten, selbst wenn er nichts über dessen Gebot weiß.

Non-Malleability (NM)[Bearbeiten]

Ein Verschlüsselungsverfahren ist nicht verformbar, wenn kein Angreifer ein Chiffrat so verändern kann, dass die zu den beiden Chiffraten gehörigen Klartexte in einer von ihm gewählten Relation stehen (zumindest nicht öfter, als das bei zufällig gewählten Klartexten der Fall wäre). Ein Angreifer bricht die NM-Sicherheit also, wenn er beispielsweise eine Nachricht m_1 verschlüsselt, aus dem dadurch entstandenen Chiffrat c_1 ein Chiffrat c_2 erzeugt und für dessen Entschlüsselung m_2 gilt m_1 < m_2. Jeder erfolgreiche IND-Angreifer bricht auch die Non-Malleability.

Angreifermodelle[Bearbeiten]

Angreifer können nach ihrer Stärke in drei Kategorien eingeordnet werden:

Adaptiver Chosen-Plaintext-Angriff (CPA)[Bearbeiten]

Bei einem asymmetrischen Verfahren hat der Angreifer immer Zugriff auf den öffentlichen Schlüssel. Er kann also selbst nach Belieben Nachrichten verschlüsseln. Dies wird als Angriff mit frei wählbarem Klartext bezeichnet.

Nichtadaptiver Chosen-Ciphertext-Angriff (CCA1)[Bearbeiten]

Der Angreifer hat Zugriff auf ein Entschlüsselungsorakel, das von ihm gewählte Chiffrate entschlüsselt. Dieses Orakel kann er benutzen, um sich auf die Entschlüsselung von Chiffraten vorzubereiten.

Adaptiver Chosen-Ciphertext-Angriff (CCA2)[Bearbeiten]

Der Angreifer hat Zugriff auf ein Entschlüsselungsorakel, und darf die Chiffrate sogar abhängig von dem zu entschlüsselnden Chiffrat wählen. Das Chiffrat selbst darf er allerdings nicht entschlüsseln. Diese theoretische Beschränkung ist notwendig, weil der Begriff sonst unerfüllbar wäre.

Die praktische Relevanz dieses Angreifermodells wurde durch den Angriff von Daniel Bleichenbacher gegen den Standard PKCS#1 demonstriert.[2]

Beziehungen zwischen Sicherheitsbegriffen[Bearbeiten]

Sicherheitsbegriffe setzen sich aus den Sicherheitszielen und den Angreiferstärken zusammen und werden üblicherweise als ein Experiment oder Spiel definiert. Beim IND-CCA2-Experiment erhält der Angreifer Zugriff auf den öffentlichen Schlüssel und ein Entschlüsselungsorakel (CCA2). Dann muss er zwei gleich lange Nachrichten m_0, m_1 finden, so dass er eine Verschlüsselung von m_0 von einer Verschlüsselung von m_1 unterscheiden kann. Je schwächer das Sicherheitsziel und je stärker der Angreifer, desto stärker der entstehende Sicherheitsbegriff. Sicherheit ist „besser“, wenn sie gegen stärkere Angreifer hält oder wenn der Angreifer selbst niedrig gesetzte Ziele nicht erreichen kann.

Daraus folgt, dass sowohl NM-CPA als auch IND-CCA1 stärker sind als IND-CPA. Die beiden Begriffe sind jedoch unabhängig voneinander, weder ist NM-CPA stärker als IND-CCA1, noch umgekehrt.[3] Der stärkste Begriff der sich bilden lässt ist NM-CCA2. NM-CCA2 ist äquivalent zu IND-CCA2 und ROR-CCA2.[3]

Transformationen[Bearbeiten]

Es gibt mehrere Transformationen im Random-Oracle-Modell, die aus einem IND-CPA-sicheren Verfahren ein IND-CCA2-sicheres Verfahren machen.[4][5]

Sicherheitsbegriffe für digitale Signaturen[Bearbeiten]

Die Sicherheitsbegriffe für digitale Signaturen sind analog zu denen für Verschlüsselungen aufgebaut und bestehen aus einem Teil, der das Sicherheitsziel beschreibt, und einer Beschreibung der Angreiferstärke.[6]

Sicherheitsziele[Bearbeiten]

Ähnlich zu den Sicherheitszielen für Verschlüsselungen gibt es auch hier eine Hierarchie.

Unbreakability (UB)[Bearbeiten]

Ähnlich zu anderen Public-Key-Verfahren garantiert die Asymmetrie bei digitalen Signaturen, dass aus dem öffentlichen Verifikationsschlüssel nicht der geheime Signaturschlüssel berechnet werden kann. Ein Angreifer, der die Asymmetrie bricht, bricht auch alle anderen Sicherheitsziele.

Universal Unforgeability (UUF)[Bearbeiten]

Ein Angreifer bricht die allgemeine Unfälschbarkeit, wenn er zu einer vorgegebenen Nachricht eine gültige Signatur erzeugen kann.

Selective Unforgeability (SUF)[Bearbeiten]

Ein Angreifer bricht die selektive Unfälschbarkeit, wenn er zu einer Nachricht eine gültige Signatur erzeugen kann, die er ohne Kenntnis des Verifikationsschlüssels selbst gewählt hat. Jeder Angreifer, der die UUF bricht, bricht auch die SUF.

Existential Unforgeability (EUF)[Bearbeiten]

Ein Signaturverfahren ist existenziell unfälschbar, wenn kein Angreifer ein beliebiges Nachrichten-Signaturpaar erzeugen kann. Jeder Angreifer, der die SUF bricht, bricht auch die EUF.

Non-Malleability (NM)[Bearbeiten]

Ein Signaturverfahren ist nicht verformbar, wenn kein Angreifer zu einem gegebenen Nachrichten-Signaturpaar eine weitere gültige Signatur derselben Nachricht erzeugen kann.

Angreifermodelle[Bearbeiten]

Es gibt drei klassische Angreifermodelle, von denen aber Variationen existieren. In aufsteigender Stärke des Angreifers geordnet sind das:

Key-Only-Angriff (KOA)[Bearbeiten]

Der Angreifer besitzt nur den Verifikationsschlüssel. Das ist das minimale Angreifermodell für ein Public-Key-Verfahren.

Known-Message-Angriff (KMA)[Bearbeiten]

Der Angreifer kennt vorgegebene Klartext-Signaturpaare. Davon muss ausgegangen werden, wenn ein Signaturverfahren verwendet wird, schließlich sind Signaturen nicht geheim.

Adaptiver Chosen-Message-Angriff (CMA)[Bearbeiten]

Der Angreifer hat Zugriff auf ein Signaturorakel, mit dem er Nachrichten seiner Wahl signieren kann. Beim Begriff EUF-CMA führt dies zu einer Differenzierung. In der Standarddefinition muss der Angreifer eine Signatur zu einer Nachricht produzieren, zu der er noch keine Signatur vom Signaturorakel erhalten hat. In einer stärkeren Variante (sEUF-CMA) ist es bereits ausreichend, wenn er zu einer beliebigen Nachricht eine Signatur produziert, die er nicht bereits vom Signaturorakel erhalten hat. Hier ist ein Nachrichten-Signaturpaar also sogar dann gültig, wenn zu der Nachricht bereits eine andere Signatur bekannt ist.

Einzelnachweise[Bearbeiten]

  1.  Shafi Goldwasser, Silvio Micali: Probabilistic encryption. In: Journal of Computer and System Sciences. 28, Nr. 2, 1984, S. 270–299 (http://groups.csail.mit.edu/cis/pubs/shafi/1984-jcss.pdf).
  2.  Daniel Bleichenbacher: Chosen Ciphertext Attacks Against Protocols Based on the RSA Encryption Standard PKCS #1. In: CRYPTO '98. 1998, S. 1–12.
  3. a b  Mihir Bellare, Anand Desai, David Pointcheval, Phillip Rogaway: Relations Among Notions of Security for Public-Key Encryption Schemes. In: Advances in Cryptology - Proceedings of CRYPTO '98. 1998, S. 26–45 (http://www.di.ens.fr/~pointche/pub.php?reference=BeDePoRo98).
  4. Eiichiro Fujisaki und Tatsuako Okamoto: How to Enhance the Security of Public-Key Encryption at Minimum Cost (englisch). In: PKC 99, Springer Verlag, 1999, S. 53-68. 
  5. Pascal Paillier und David Pointcheval: Efficient Public-Key Cryptosystems Provably Secure Against Active Adversaries (englisch). In: ASIACRYPT 99, Springer Verlag, 1999, S. 165-179. 
  6.  Shafi Goldwasser, Silvio Micali, Ronald Rivest: A digital signature scheme secure against adaptive chosen-message attacks. In: SIAM Journal on Computing. 17, Nr. 2, 1988, S. 281–308.