Wie können Sie eine Partei zwingen, ehrlich zu sein (Protokollregeln befolgen)?
Ich habe einige Mechanismen wie Verpflichtungen, Beweise usw. gesehen, aber sie scheinen einfach nicht das ganze Problem zu lösen. Es scheint mir, dass die Struktur des Protokolldesigns und solche Mechanismen die Aufgabe erfüllen müssen. Hat jemand eine gute Klassifizierung davon?
Bearbeiten
Wenn Sie beim Entwerfen sicherer Protokolle eine Partei zwingen, ehrlich zu sein, ist das Design viel einfacher, obwohl sich diese Durchsetzung auszahlt. Ich habe beim Entwerfen sicherer Protokolle gesehen, dass Designer etwas annehmen, das mir nicht realistisch erscheint, zum Beispiel, dass alle Parteien im schlimmsten Fall ehrlich sind oder dass der Server, der Benutzerdaten verwaltet, ehrlich ist. Aber wenn man sich das Design von Protokollen in strengeren Modellen ansieht, sieht man selten solche Annahmen (zumindest habe ich es nicht gesehen - ich studiere Protokolle meistens überUC-Framework von Canetti, das meiner Meinung nach noch nicht vollständig formalisiert ist). Ich habe mich gefragt, ob es eine gute Klassifizierung gibt, wie Sie eine Partei dazu zwingen können, ehrlich zu sein, oder ob es einen Compiler gibt, der das Eingabeprotokoll in ein Protokoll mit ehrlichen Parteien konvertieren kann.
Jetzt werde ich erklären, warum ich denke, dass dies nur nicht den Job macht, obwohl es irrelevant erscheinen mag. Beim Entwerfen von Protokollen im UC-Framework, das vom idealen / realen Paradigma profitiert, wird jede Kommunikationsverbindung im idealen Modell authentifiziert, was im realen Modell nicht der Fall ist. Daher suchen Protokolldesigner nach alternativen Methoden, um diesen Kanal mithilfe einer PKI-Annahme oder eines CRS (Common Reference String) zu implementieren. Beim Entwerfen von Authentifizierungsprotokollen ist es jedoch falsch, authentifizierte Kanäle anzunehmen. Angenommen, wir entwerfen ein Authentifizierungsprotokoll im UC-Framework. Es gibt einen Angriff, bei dem der Gegner die Identität einer Partei fälscht. Aufgrund der Annahme authentifizierter Links im idealen Modell wird dieser Angriff in diesem Framework jedoch nicht angenommen. Sie können sich beziehenModellierung von Insider-Angriffen auf Protokolle zum Austausch von Gruppenschlüsseln . Sie werden vielleicht bemerken, dass Canetti in seiner wegweisenden Arbeit Universell zusammensetzbare Begriffe von Schlüsselaustausch und sicheren Kanälen einen früheren Sicherheitsbegriff namens SK-Sicherheit erwähnt, der einfach ausreicht, um die Sicherheit von Authentifizierungsprotokollen zu gewährleisten. Er gesteht irgendwie (indem er erklärt, dass dies eine Frage der Technik ist), dass die UC-Definition in diesem Zusammenhang zu restriktiv ist und eine entspannte Variante namens Nicht-Informations-Orakel bietet (was mich verwirrte, weil ich dieses Sicherheitsmodell nirgendwo gesehen habe Ich kann dieses Sicherheitsmuster keinem anderen Sicherheitsmuster zuordnen, wahrscheinlich meinem Unwissen: D).
[Nebenbei bemerkt, Sie können fast jedes Sk-Secure-Protokoll unabhängig von der Simulatorzeit in ein UC-Secure-Protokoll konvertieren lassen. Zum Beispiel können Sie einfach die Signaturen der Nachrichten entfernen und den Simulator die gesamten Interaktionen auf Dummy-Weise simulieren lassen. Siehe Universell Composable Contributory Gruppe Key Exchange für Beweis! Angenommen, dies ist ein Gruppenschlüsselaustauschprotokoll mit polynomiell vielen Parteien. Was wäre die Effizienz des Simulators? Dies ist der Ursprung meiner anderen Frage in diesem Forum .]
Aufgrund des mangelnden Engagements im einfachen Modell (über UC) suchte ich nach anderen Mitteln, um das Protokoll sicher zu machen, indem ich die Notwendigkeit dieser Entspannung einfach umging. Diese Idee ist für mich sehr grundlegend und ist mir in den Sinn gekommen, weil ich gerade das neueste Verpflichtungsschema von Canetti im einfachen Modell studiert habe: Adaptive Härte und zusammensetzbare Sicherheit im einfachen Modell nach Standardannahmen .
Übrigens suche ich keine wissensfreien Beweise, weil aus anderen Gründen, die ich nicht kenne, wenn jemand einen von ihnen in einem gleichzeitigen Protokoll (über UC-Framework) verwendet hat, die anderen das Protokoll als ineffizient bezeichnet haben (möglicherweise) aufgrund des Zurückspulens des Simulators).
quelle
Antworten:
Leider können Sie die Leute nicht zwingen, das zu tun, was das Protokoll vorschreibt.
Selbst gut gemeinte Leute, die das Protokoll befolgen wollten, machen gelegentlich Fehler.
Es scheint mindestens drei Ansätze zu geben:
Mechanismusdesign In der Spieltheorie wird das Entwerfen einer Situation (z. B. das Aufstellen der Regeln einer Auktion), in der Menschen, die selbstsüchtig nur auf ihre eigenen individuellen Interessen achten, das tun, was der Designer von ihnen verlangt, als "Mechanismusdesign" bezeichnet. . Insbesondere unter Verwendung der Implementierungstheorie können Situationen so gestaltet werden, dass das Endergebnis den Gesamtnutzen für alle maximiert, wobei schlecht gestaltete Situationen wie die "Tragödie des Gemeinwesens" oder das "Gefangenendilemma" vermieden werden, in denen Dinge passieren, die niemandem gehören langfristiges Interesse.
Einige der robustesten derartigen Prozesse sind anreizkompatibel .
Die Spieltheorie geht typischerweise vereinfachend davon aus, dass alle relevanten Agenten "rational" sind. In der Spieltheorie bedeutet "rational", dass ein Agent einige Ergebnisse anderen Ergebnissen vorzieht, bereit und in der Lage ist, seine Handlungen so zu ändern, dass er erwartet (angesichts der ihm zur Verfügung stehenden Informationen), dass ein bevorzugteres Ergebnis (sein eigenes) erzielt wird enges Eigeninteresse), und er ist klug genug zu erkennen, dass andere rationale Agenten ähnlich handeln werden, um zu versuchen, das Ergebnis zu erzielen, das von allen möglichen Ergebnissen, die sich aus dieser Wahl der Aktion ergeben könnten, am meisten bevorzugt wird.
Ein Designer kann vorübergehend die vereinfachende Annahme treffen, dass alle Menschen nur nach ihrem eigenen engen Eigeninteresse handeln. Diese Annahme erleichtert es, eine Situation mithilfe der Implementierungstheorie zu entwerfen. Nach Abschluss des Entwurfs spielt es jedoch keine Rolle, ob die Menschen nach ihrem eigenen engen Eigeninteresse handeln (" Homo oeconomicus ") oder ob sie altruistisch sind und den gesamten Nettonutzen für alle maximieren möchten - in einem In einer richtig gestalteten Situation treffen beide Arten von Menschen genau die gleichen Entscheidungen und das Endergebnis maximiert den Gesamtnutzen für alle.
konvergente Protokolle
Beim Entwerfen eines Routing-Protokolls sendet jeder Knoten im Netzwerk Nachrichten an seine Nachbarn und gibt Informationen darüber weiter, welche anderen Knoten von diesem Knoten aus erreichbar sind.
Leider haben diese Nachrichten gelegentlich Fehler. Schlimmer noch, manchmal ist ein Knoten falsch konfiguriert und gibt viele irreführende und möglicherweise sogar böswillig gestaltete Nachrichten aus.
Obwohl wir Menschen wissen, dass die Nachricht möglicherweise falsch ist, entwerfen wir das Protokoll normalerweise so, dass ein ordnungsgemäß funktionierender Knoten jeder Nachricht vertraut und die Informationen in seiner Routing-Tabelle speichert und seine Entscheidungen so trifft, als ob er glaubt, dass diese Informationen vollständig wahr sind.
Sobald ein Mensch einen fehlerhaften Knoten ausschaltet (oder ihn vom Netzwerk trennt), entwerfen wir das Protokoll normalerweise so, dass gute Informationen schnell übergeben werden, um die beschädigten Informationen zu löschen, und so schnell zu einem nützlichen Zustand konvergieren.
kombinierte Ansätze
Das algorithmische Mechanismusdesign scheint zu versuchen, den fehlertoleranten Netzwerkansatz und den spieltheoretischen Mechanismusansatz zu kombinieren.
@ Yoichi Hirai und Aaron, vielen Dank, dass Sie auf einige interessante Versuche hingewiesen haben, Spieltheorie und Kryptographie zu kombinieren.
quelle
Joe Halpern hat eine Folie zu diesem Thema. http://games2009.dimi.uniud.it/Halpern.pdf
Hier geht es darum, den Parteien Anreize zu geben, damit sie einem Protokoll folgen. Diese Mechanismen erfordern Rationalität der Parteien und die Argumente basieren auf der Spieltheorie.
quelle