DE68929263T2 - Blindunterschriftensysteme mit einer einzigen vorlage - Google Patents
Blindunterschriftensysteme mit einer einzigen vorlageInfo
- Publication number
- DE68929263T2 DE68929263T2 DE68929263T DE68929263T DE68929263T2 DE 68929263 T2 DE68929263 T2 DE 68929263T2 DE 68929263 T DE68929263 T DE 68929263T DE 68929263 T DE68929263 T DE 68929263T DE 68929263 T2 DE68929263 T2 DE 68929263T2
- Authority
- DE
- Germany
- Prior art keywords
- signatures
- signature
- party
- identification information
- issuing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1016—Devices or methods for securing the PIN and other transaction-data, e.g. by encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/302—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3257—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using blind signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Finance (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Collating Specific Patterns (AREA)
- Facsimile Transmission Control (AREA)
- Image Processing (AREA)
- Curtains And Furnishings For Windows Or Doors (AREA)
- Detergent Compositions (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
- Die Erfindung betrifft ein Digitalsignaturverfahren mit öffentlichen Schlüsselwörtern, bei dem private Schlüsselwörter von einer ausgebenden Seite erzeugt und geheim gehalten werden, öffentliche Schlüsselwörter von der ausgebenden Seite bekannt gemacht werden sowie Nachrichten von der ausgebenden Seite digital signiert und von der prüfenden Seite zur Feststellung ihrer Gültigkeit getestet werden, wobei das öffentliche Schlüsselwort der prüfenden Seite bekannt ist.
- Derartige Digitalsignaturverfahren sind im Stand der Technik auch als Blind- Signaturverfahren bekannt und sind in EP-A-0 139 313 und EP-A-0 218 305 beschrieben.
- Die Erfindung betrifft ferner ein Digitalsignatursystem mit öffentlichen Schlüsselwörtern, das eine ausgebende und eine prüfende Seite aufweist; die ausgebende Seite weist Einrichtungen zum Erzeugen von privaten Schlüsselwörtern, Einrichtungen zum Veröffentlichen öffentlicher Schlüsselwörter, Ausgabeeinrichtungen zum Ausgeben von Digitalsignaturen, und Einrichtungen zum Testen dieser Digitalsignaturen auf.
- Blindsignaturen können relativ direkt zum Aufbau eines Zahlungssystems verwendet werden, wie beispielsweise in D. Chaum: "Security without identification: Transaction systems to make Big Brother obsolete", Communications of the ACM, October 1985, S. 1030-1044, beschrieben. In solchen Systemen kann eine Bank beispielsweise einen Dollar für eine Blindsignatur berechnen. Kunden können derartige Signaturen von der Bank kaufen, wobei der Blinddruck verhindert, daß die Bank erfährt, welche Signaturen gekauft wurden, und die diese sodann beispielsweise in einem Geschäft nutzen. Das Geschäft kann in einer Online-Transaktion mit der Bank beim Erhalt einer bestimmten Signatur prüfen, ob diese Signatur nicht bereits an anderer Stelle aufgebraucht wurde. Führen Geschäfte eine derartige Prüfung nicht durch, könnte jemand dieselbe Nummer in mehr als einem Geschäft nutzen und die Blindsignatur würde die Person davor schützen, ausfindig gemacht zu werden. Jedoch ist die Online-Prüfung in vielen Fällen kostspielig oder gar unvorteilhaft.
- Eine andere Verwendung von Blindsignaturen findet sich in Kreditmechanismen. Diese wurden in dem genannten Artikel ebenfalls eingeführt und wurden seitdem detaillierter ausgeführt in "A secure and privacy-protecting protocol for transmitting personal informtaion between organizations", erschienen in Proceedings of Crypto 86, A. M. Odlyzko Ed., Springer-Verlag, 1987, von D. Chaum und J. -H. Evertse. Wenn "digitale Pseudonyme" beim Geltendmachen oder Empfangen von Krediten in derartigen Mechanismen erstellt werden, kann eine Online-Transaktion erforderlich sein, um sicherzustellen, daß dasselbe Pseudonym nicht bereits vorher benutzt wurde.
- US-A-4 393 269 beschreibt ein Verfahren und eine Vorrichtung zum eindeutigen Feststellen der Identität eines Benutzers und des Inhalts einer Nachricht in einem System mit mehreren Endgeräten, die über einen gemeinsame Übertragungskanal miteinander verbunden sind, wobei ein jeweiliges Paar von an verschiedenen Endgeräten im System befindlichen Benutzern einen Vertrag ausgetauscht haben, der mehrere Referenzsignaturen umfaßt, von denen jede das Endstück einer einseitig verschlüsselten Signatursequenz bildet und von denen jede eine Einwegfunktion des geheimen Verschlüsselungsschlüssels jedes Benutzers und eine beiden Seiten bekannte Zahl ist. Jedes mit dem System verbundene Endgerät weist Einrichtungen zum Erzeugen eines mehrstelligen Rangfolgevektors auf, der eine kryptographische Funktion der gesamten zu übermittelnden Nachricht ist.
- In sämtlichen Blindsignatursystemen gibt es im wesentlichen drei Seiten: (1) die Signaturausgabe Seite, (2) mehrere Seiten, an die Signaturen durch die erste Seite ausgegeben werden, und (3) mehrere Seiten, denen die Signaturen von der zweiten Seite vorgelegt werden. Ein Aspekt, der verbessert werden könnte - ohne die Nichtzuordnungsfähigkeit für "ehrliche" zweite Seiten zu verringern - ist, daß die dritten Seite untereinander oder bei einem Clearing Center nachfragen müssen, bevor sie eine Signatur annehmen; ansonsten hätten sie keine Handhabe, falls sich herausstellen sollte, daß dieselbe Signatur bereits mehr als einer dritten Seite präsentiert wurde.
- Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Digitalsignatursystem mit öffentlichen Schlüsselwörtern zu schaffen, das die Ausgabe von Signaturen von einer ersten Seite an eine zweite Seite und die Vorlage der Signatur durch die zweite Seite bei einer dritten Seite ermöglicht, wobei eine Zusammenarbeit zwischen der ersten und der dritten Seite nicht zum Auffinden von zweiten Seiten führt, die eine Signatur nicht mehr als einmal vorlegen.
- Eine andere Aufgabe der vorliegenden Erfindung ist es, zu ermöglichen, daß eine derartige Nichtauffindbarkeit in dem Sinn bedingungslos ist, daß (vorausgesetzt, die zweite Seite präsentiert eine Signatur nicht mehr als einmal) selbst wenn der ersten und der dritten Seite unbegrenzte Rechenkapazitäten zur Verfügung stünden, ein Auffinden unmöglich bleibt.
- Zur Lösung dieser Aufgaben schafft die Erfindung ein Verfahren des genannten Typs, gekennzeichnet durch die folgenden Schritte: Ausgeben digitaler Signaturen durch eine ausgebende Seite und Sicherstellen durch die ausgebende Seite, daß jede der ausgegebenen Signaturen in seiner Struktur Identifizierungsinformationen enthält; teilweise Vorlegen der Struktur einiger der ausgegebenen Signaturen vor wenigstens eine prüfende Seite, um es der prüfenden Seite zu ermöglichen, mit der ausgebenden Seite die Digitalsignatureigenschaft der vorgelegten Signaturen, während wenigstens ein Teil der in den höchstens einmal vorgelegten Signaturen enthaltenen Identifizierungsinformationen selbst vor einer Zusammenarbeit jeder prüfenden Seite und der ausgebenden Seite verborgen bleibt, so daß die Identifizierungsinformationen nicht aus den höchstens einmal vorgelegten Signaturen abgeleitet werden können; und Testen der vorgelegten Signaturen durch die ausgebende Seite, um die in den mehr als einmal vorgelegten Signaturen enthaltenen Identifizierungs- Informationen zu erhalten, wobei die Identifizierungsinformationen aus den mehr als einmal vorgelegten Signaturen ableitbar sind.
- Die Erfindung schafft ferner ein System des genannten Typs, dadurch gekennzeichnet, a. daß die Ausgabeeinrichtungen zum Ausgeben digitaler Signaturen ausgebildet sind, die Identifizierungsinformationen in ihrer Struktur enthalten; b. daß Einrichtungen auf seiten der prüfenden Seite vorgesehen sind, um mit der ausgebenden Seite die Struktur der Signaturen zu prüfen, wenn diese teilweise vorgelegt werden, und daß Einrichtungen zum Verbergen wenigstens eines Teils der Identifizierungsinformationen in den einmalig vorgelegten Signaturen vorgesehen sind; und c. daß die Signaturtesteinrichtungen zum Ausgeben der Identifizierungsinformationen in den mehr als einmal vorgelegten Signaturen ausgebildet sind.
- Eine andere Aufgabe der vorliegenden Erfindung ist es, der ersten und der dritten Seite zu ermöglichen, eine zweite Seite, die eine einzelne Signatur mehr als einmal vorgelegt hat, wirksam zu ermitteln und zu der jeweiligen Ausgabe der Signatur durch die erste Seite zurück zu verfolgen.
- Eine weitere Aufgabe der vorliegenden Erfindung ist es, das Erkennen und Zurückverfolgen zu jeder Zeit vornehmen zu können, nach dem eine Signatur mehr als einmal vorgelegt wurde.
- Eine weitere Aufgabe der vorliegenden Erfindung ist es, der zweiten Seite zu ermöglichen, eine Zahl in die Form der vorgelegten Signatur zu codieren.
- Eine weitere Aufgabe der vorliegenden Erfindung ist es, zu ermöglichen, daß diese Zahl einen Wert repräsentiert, und daß die zweite Seite in der Lage ist, zu späterer Zeit eine Rückerstattung für die Differenz zwischen dem angezeigten Wert und dem Höchstwert zu erhalten.
- Eine weitere Aufgabe der vorliegenden Erfindung ist es, eine Rückvergütung wenigstens für Teile von mehr als einer vorgelegten Signatur zu erhalten, derart, daß der jeweilige ursprünglich angegebene Wert während der Rückvergütung nicht angezeigt wird.
- Eine weitere Aufgabe der vorliegenden Erfindung ist es, effiziente, wirtschaftliche und praktische Vorrichtungen und Verfahren zu ermöglichen, welche die anderen Aufgaben der Erfindung erfüllen.
- Andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung ergeben sich aus der Zusammenschau der Beschreibung und der zugehörigen Ansprüche mit den Figuren der Zeichnungen.
- Fig. 1 zeigt ein Ablaufdiagramm eines bevorzugten Ausführungsbeispiels eines ersten beispielhaften Protokolls zum Erhalten einer ein Mal vorlegbaren Blindsignatur gemäß der vorliegenden Erfindung.
- Fig. 2 zeigt ein Ablaufdiagramm eines bevorzugten Ausführungsbeispiels eines ersten beispielhaften Protokolls zum Vorlegen einer ein Mal vorlegbaren Blindsignatur gemäß der vorliegenden Erfindung.
- Fig. 3 zeigt ein Ablaufdiagramm eines ersten Ausführungsbeispiels eines ersten beispielhaften Mehrfach-Vorlage-Erkennungs- und Rückverfolgungsprotokolls gemäß der vorliegenden Erfindung.
- Fig. 4 zeigt ein Ablaufdiagramm eines bevorzugten Ausführungsbeispiels eines gegenüber Fig. 1 erweiterten zweiten beispielhaften Systems zum Erhalten einer ein Mal vorlegbaren Blindsignatur gemäß der vorliegenden Erfindung.
- Fig. 5 zeigt ein Ablaufdiagramm eines bevorzugten Ausführungsbeispiels eines gegenüber Fig. 2 erweiterten zweiten beispielhaften Systems zum Vorlegen einer ein Mal vorlegbaren Blindsignatur gemäß der vorliegenden Erfindung.
- Fig. 6 zeigt ein Ablaufdiagramm eines bevorzugten Ausführungsbeispiels eines erfindungsgemäßen Rückerstattungssignaturvorlagesystems für die Ausführungsbeispiele der Fig. 4 und der Fig. 5.
- Entsprechend diesen und anderen Aufgaben der vorliegenden Erfindung folgt eine kurze Beschreibung eines bevorzugten Ausführungsbeispiels. In dieser Kurzbeschreibung sind Vereinfachungen und Auslassungen enthalten, da die Beschreibung lediglich der Hervorhebung und Darstellung einiger Aspekte der Erfindung dient, jedoch nicht der Einschränkung des Umfangs. Detaillierte Beschreibungen bevorzugter Ausführungsbeispiele, die es dem Fachmann ermöglichen, die erfindungsgemäßen Konzepte zu erreichen und anzuwenden, erfolgen später.
- Das Grundprotokoll hat drei Teile: die Seite P erhält von der Seite B eine ein Mal vorlegbare Signatur; die Seite P legt die ein Mal vorlegbare Signatur der Seite S vor; und B erkennt und verfolgt Signaturen, die mehr als ein Mal vorgelegt wurden. (Diese Buchstaben sind mnemonische Mittel, die lediglich der Klarheit dienen, und stehen für den Kunden, die Bank und das Geschäft, ohne jegliche Einschränkung der Anwendungen).
- B stellt sicher, daß eine bestimmte Struktur in die Signaturen eingebaut wird, wenn diese ausgegeben werden. Wenn sie vorgelegt werden, werden bestimmte Teile dieser Struktur offengelegt, wobei die Auswahl der Teile wenigstens in geringem Maße außerhalb der Kontrolle von P liegt. Selbst wenn nur ein weiterer Teil der Signatur offengelegt würde, reichte eine einfache Berechnung aus, ein in die Struktur der Signatur eingebautes Identifikationsmittel zu bestimmen. Würde die Signatur ein zweites Mal vorgelegt, kann das Offenlegen anderer Teile der Struktur erwartet werden, so daß sie über das Identifikationsmittel zurückverfolgbar wird.
- Genauer gesagt: ein bestimmter Fall des bevorzugten Ausführungsbeispiels (in der weiteren Beschreibung als t = 1 bezeichnet) beinhaltet eine Signatur über einen Wert in der Form f(g(a,c), g(a u,d)), wobei f und g Einweg- Funktionen sind. Wenn diese Signatur vorgelegt wird, müssen die Vor- Abbildungen unter einem der g S vorgelegt werden, jedoch ist nur erforderlich, die Abbildung des anderen g zu zeigen. Diese Daten können von S durch einfaches Anwenden der öffentlichen Funktionen und Prüfen, ob das Ergebnis die Nachricht der empfangenen Digitalsignatur ist, getestet werden.
- Es sei angenommen, die Vor-Abbildungen unter dem anderen g werden bei einem zweiten Vorlegen der Signatur ebenfalls bekannt. Zuerst sei darauf verwiesen, daß die beiden Vorlageereignisse leicht miteinander in Verbindung gebracht werden können, da sie unter f exakt dasselbe Bild aufweisen. Die Identifikationsinformation u wäre sodann leicht ableitbar, indem einfach u = a&supmin;¹ (a u) gebildet wird, wobei eine Gruppenoperation ist.
- Die Auswahl, welches g mit seinen Argumenten aufgedeckt wird, kann als Einzelbit codiert werden. Allgemein ausgedrückt befinden sich t Terme in der Signatur, die jeweils die dargestellte Form haben. Ein T-Bitstring stellt eine Abfrage dar, die festlegt, welche Hälfte jedes Terms geöffnet wird. Unterscheiden sich diese Abfragen auch nur in einer Bitposition, wird genug aufgedeckt, um u leicht bestimmen zu können.
- Für die Nicht-Rückverfolgbarkeit ist es selbstverständlich wichtig, daß ein g nicht invertiert werden kann, um dessen Vor-Abbildungen aufzudecken. Wenn die Argumente c und d beliebig aus einer Gruppe gewählt werden, die wenigstens so groß wie der Bereich von g ist, ist es nicht möglich, g eindeutig zu invertieren.
- Bei einer Variante wird ein Betrag, beispielsweise ein Geldbetrag, in einem Teil des Abfragestrings codiert. B gibt auch andere Signaturen aus, die nur vorgelegt werden können, wenn das entsprechende Bit des Abfragestrings 0 ist. Dadurch kann P für den nicht verbrauchten Wert Wechselgeld erhalten. Da diese Signaturen separate Signaturen sein können, kann Wechselgeld für mehr als eine ursprüngliche Signatur unmittelbar erhalten werden, wodurch die exakten Beträge jeder Zahlung verborgen bleiben.
- Die hier beschriebenen kryptographischen Verfahren und Einrichtungen können in ein grundlegendes erstes Ausführungsbeispiel und ein zweites, erweitertes Ausführungsbeispiel unterteilt werden. Im ersten Ausführungsbeispiel ermöglicht eine erste Transaktion (Fig. 1) der Seite P, eine Signatur von der Seite B zu erhalten. Eine zweite Transaktion (Fig. 2) ermöglicht das Annehmen dieser Signatur von P durch S in Reaktion auf eine Zahl w, die P a priori unbekannt sein kann. Die dritte Transaktion ermöglichtes B, u (eine Identifizierungsinformation) offenzulegen, die B mit P in Verbindung bringt, wenn, und nur wenn, P die Signatur mit ausreichend unterschiedlichem w vorlegt (Fig. 3). Das zweite Ausführungsbeispiel kann diese dritte Transaktion unverändert verwenden, weist jedoch eine veränderte Ausgabetransaktion zwischen P und B (Fig. 4), eine veränderte Vorlagetransaktion zwischen P und S (Fig. 5) und eine Transaktion zwischen P und B zur Rückforderung wegen Nichtvorlegens auf (Fig. 6).
- Zwar wird angenommen, daß die Bezeichnungen in den Fig. 1-6 dem Fachmann verständlich sind, jedoch werden sie aus Gründen der Klarheit hier zunächst dargestellt.
- Die durchgeführten Operationen sind in Ablaufdiagrammboxen in Gruppen zusammengefaßt. Die Spalte, in der sich eine Box befindet, gibt an, welche Seite die in der Box definierte Operation durchführt. Die Spalten sind durch den Namen der Seite am oberen Ende bezeichnet. Die Operation des Speicherns eines Werts unter einem symbolischen Namen ist durch den symbolischen Namen auf der linken Seite eines Gleichheitszeichens und eines Ausdrucks für den Wert auf der rechten Seite angegeben. Eine andere Art von Operation ist der Gleichheitstest. Das Symbol "? = ?" dient der Anzeige dieser Tests und die prüfende Seite beendet das Protokoll, wenn der Test negativ ist. (Wenn der Test die letzte Operation ist, die von einer Seite während eines Protokolls durchgeführt wird, bestimmt der Erfolg oder der Mißerfolg des Tests den Erfolg oder den Mißerfolg der Seite im Protokoll). Die letzte Art der Operation ist das Senden einer Nachricht. Dies wird durch eine Nachrichtenzahl auf der linken Seite dargestellt, gefolgt vom Namen der Empfängerseite und einem Pfeil (diese erscheinen aus Gründen der Lesbarkeit entweder als Empfängername mit nachfolgendem nach links gerichtetem Pfeil, wenn der Empfänger auf der linken Seite ist, oder als nach rechts gerichteter Pfeil mit anschließendem Empfängernamen, wenn sich der Empfänger rechts befindet), auf den ein Doppelpunkt und schließlich ein Ausdruck folgt, der den zu sendenden tatsächlichen Wert der Nachricht angibt.
- Es werden mehrere Arten von Ausdrücken verwendet. Einer ist lediglich das Wort "zufällig". Dies bedeutet, daß ein Wert vorzugsweise gleichbleibend aus einer geeigneten Gruppe, die im Text definiert ist, und unabhängig von allem anderen im Protokoll gewählt wird. Somit sollte eine Seite vorzugsweise einen physikalischen Zufallszahlengenerator zu diesem Zweck verwenden, möglicherweise mit geeigneter Nachverarbeitung. In der Praxis können jedoch bekannte kryptographische und Pseudozufallsverfahren unter Umständen in Verbindung mit physikalischen Quellen verwendet werden.
- Eine andere Art von Ausdrücken beinhaltet Exponentialrechnung. Die gesamte Exponentialrechnung erfolgt vorzugsweise über die Restbeträge auf der Basis einer zusammengesetzten Zahl M, deren Faktorisierung vorzugsweise nur der Seite B zur Verfügung steht, wobei diese Moduli an sich bekannt sind und zuerst in "A method for obtaining digital signatures and public-key cryptosystems", von Rivest, Shamir und Adleman, Communications of the ACM, Februar 1978, S. 120-126 beschrieben. Wenn keine Operation explizit angegeben ist, wird eine Multiplikation Modulo M angenommen.
- Verschiedene öffentliche Exponenten können mit dem Modul M verwendet werden. In den Fig. 1, 2, und 3 wird nur der öffentliche Exponent p verwendet. Dieser kann eine beliebige geeignete Zahl sein: 2, eine niedrige ungerade Primzahl, eine Primzahl, die groß genug ist, um sicherzustellen, daß sie eine Co-Primzahl zur Ordnung des reduzierten Restsystems ist, oder eine andere ganze Zahl. In der Erweiterung der Fig. 4, 5 und 6 gilt p = GCD(p(1), p(2), ..., p(t)) und q = GCD(q(1), q(2), ..., q(t)). p(i) und q(i) können jeweils einen bestimmten Primfaktor sowie andere gemeinsame Faktoren haben; sie können auch zunehmende Mengen eines Faktors oder mehrerer Faktoren aufweisen. Beispielsweise gilt p(i) = 2i und q(i) = 2i als sicher und ökonomisch berechenbar, besonders wenn die Konvention angenommen wird, daß kleinere Exponenten für kleinere Werte stehen.
- Selbst öffentliche Exponenten erfordern besondere Aufmerksamkeit, wie für den Fachmann verständlich, da nicht für viele Restbeträge Quadratwurzeln existieren. Somit schließt die Auswahl der durch B zu signierenden Dinge (die durch die mit v bezeichnete Gruppe bestimmt sind, wie noch zu beschreiben ist) notwendigerweise das Nicht-Signierbare aus. Ein anderer Ansatz für dieses Problem ist die Anwendung der bekannten speziellen zusammengesetzten Form mit exakt zwei Faktoren, die jeweils kongruent sind zu 3 Modulo 4: die verdeckenden Faktoren weisen zufällig eine standardmäßige öffentliche Nicht- Quadratzahl mit dem Jacobi-Symbol 1 zusammen mit einer Abbildung unter f auf, die zum Erhalten des Jacobi-Symbols 1 angepaßt ist; in jedem Term einer Signatur unter einem bestimmten geraden Exponenten würde, nach einer Option für B, die öffentliche Nicht-Quadratzahl unter der Signatur enthalten, und es würden Signaturen von Abbildungen unter f mit einem beliebigen Vielfachen der öffentlichen Nicht-Quadratzahl akzeptiert. Es sei ferner darauf hingewiesen, daß beim Einsetzen der öffentlichen Nicht- Quadratzahl durch beide Seiten diese von P aus der Signatur genommen werden kann, wenn die Quadratwurzel ebenfalls öffentlich ist. Es muß selbstverständlich darauf geachtet werden, daß s groß genug ist, um die Chance, daß eine Quadratwurzel in einer gewählten Nachricht einem Betrüger zur Kenntnis kommt, akzeptabel gering zu halten.
- Wenn in der Basis "/" verwendet wird, wird das multiplikative Invers zuerst für den Ausdruck auf der rechten Seite berechnet und dann mit dem Ausdruck auf der linken Seite multipliziert; wird es von B im Exponenten verwendet, bezeichnet die Frauen dieselbe Situation wie gerade beschrieben, jedoch ist die Arithmetik ein Modulus der Ordnung der Gruppe von Rest-Moduli M; wird es von einer anderen Seite als B in dem Exponenten verwendet, bezeichnet es eine Ganzzahlendivision. Die Ergebnisse aller Operationen gelten aus Gründen der Einfachheit und Klarheit als als binäre ganze Zahlen codiert (der am wenigsten positive Repräsentant wird für Rest-Klassen angenommen). Die Verkettung, die mit " " bezeichnet ist, ist somit als Nebeneinanderliegen der Werte repräsentierenden Bitvektoren definiert.
- Die Funktionen f und g sind vorzugsweise öffentlich vereinbarte Einweg- Funktionen mit (angenommenerweise) zwei Argumenten, wobei derartige Funktionen im Stand der Technik bekannt sind. Jede Abbildung unter g kann als Argument für f anpaßbar angenommen werden, und jede Abbildung unter f ist ihrerseits als Rest-Modulo M darstellbar, und zwar sämtlich in einer standardgemäßen Weise. Diese Funktionen sollten vorzugsweise dahingehend "kollisionsfrei" sein, daß es schwierig ist, mehr als ein gültiges Argumentpaar zu finden, das dasselbe Ergebnis bringt, was eine allgemein in der Kryptographie erreichte Eigenschaft ist.
- Eine weitere erwünschte Eigenschaft von g ist, daß für jedes einzelne zulässige erste Argument dieselbe Zahl von zweiten Argumenten existiert, die jeden möglichen Ausgang erzeugen; anders gesagt führt das Festlegen eines ersten Arguments zu einer k-zu-eins-Abbildung vom zweiten Argument zum Ausgang. Diese neuartige und erfinderische Eigenschaft bietet den Vorteil eines "bedingungslosen" Schutzes gegen Zurückverfolgung; das heißt, daß selbst unendliche Rechenleistung nicht in der Lage ist, das erste Argument eines g zu bestimmen, wenn lediglich das Ergebnis vorliegt. In jedem Fall bieten Funktionen mit solchen Eigenschaften oder diesen in absolutem oder lediglich rechnerischem Sinne nahen Eigenschaften möglicherweise ähnliche Vorteile. Da eine "zufällige" Einweg-Funktion aus der Verkettung der Argumente (geeigneter Größe) den erwünschten Eigenschaften sehr nahe kommt, kann angenommen werden, daß beinahe jede Einweg-Funktion verwendet werden kann.
- Ein Beispiel für die Art und Weise des Erstellens einer derartigen bevorzugten Funktion ist die Anwendung einer bijektiven Einweg-Funktion, die in der Verschlüsselung öffentlicher Schlüsselwörter als "Discrete-Log"-Probleme einer Gruppe bekannt ist, auf das zweite Argument und das Verwenden der einhergehenden Gruppenoperation zum Kombinieren des Ergebnisses mit der Abbildung unter einer Einweg-Funktion des ersten Arguments. Das erste Argument kann beispielsweise als der Exponent eines primitiven Elements modulo eine erste große Primzahl verwendet und das Ergebnis (möglicherweise nach Anwenden beispielsweise von DES mit einem festen Schlüssel oder dergleichen) kann, modulo einer zweiten großen Primzahl, zu dem Ergebnis des Erhebens eines primitiven Elements modulo der zweiten Primzahl auf die zweite Argument-Potenz addiert werden. Eine bijektive Nachverschlüsselung des Endergebnisses kann durch das abschließende Anwenden von, zum Beispiel, DES mit einem festen Schlüssel erfolgen; eine ähnliche Vorverschlüsselung jedes der ursprünglichen beiden Argumente kann ebenfalls verwendet werden.
- Der Infix-Operator " " bezeichnet die Gruppenoperation der Addition modulo eine Primzahl, die so groß wie jedes u ist, wie noch beschrieben wird. Es ist für den Fachmann ersichtlich, wie eine bitweise Exklusiv-Oder-Operation oder eine andere geeignete Gruppenoperation verwendet werden kann.
- Indizes sowohl an symbolischen Namen, als auch an Nachrichtenzahlen bezeichnen Indizes, die aus Gründen der Klarheit über den natürlichen Zahlen liegen; die Gruppennotation (einschließlich der Gruppendifferenz) dient der Angabe der geordneten Gruppen, über welche sich diese erstrecken. Symbolische Namen i, j und k werden als Indizes verwendet. Die Kardinal-Eigenschaft von Gruppen ist wie üblich durch umgebende " " -Symbole angezeigt. Eine als "@" dargestellte spezielle Operation wird aus Gründen der Klarheit als Präfix des symbolischen Namens eines Index verwendet; es bezeichnet die Position des Index innerhalb der geordneten Indexgruppe. (Wenn beispielsweise i {3, 1, 4} und g&sub1;, g&sub2;, g&sub3;, g&sub4; = 4, 8, 1, 7, dann ist gi = 1, 4, 7 und gi + g@i = 5, 12, 8). Die übliche Notation Π wird für Produkte modulo M verwendet, wobei der Index in dem auf Π folgenden Ausdruck über die gesamte Indexgruppe läuft.
- Die beiden Parameter s und t gelten als bekannt und von allen diese verwendenden Seiten akzeptiert; sie bestimmen die Größe der verwendeten Indexgruppen und ein Vergrößern derselben erhöht die Sicherheit. Eine sehr hohe Sicherheit wird von t = 100 und s = 200 erwartet, jedoch können in der Praxis wesentlich niedrigere Werte verwendet werden. Dies gilt insbesondere, wenn mehrere Fälle der Fig. 1 zusammengeführt werden, wie im folgenden beschrieben. Der Wert von u ist wenigstens P und B bekannt und kann eine kennzeichnende Identifikationseinrichtung für die bestimmte Transaktion oder für die genannten kombinierten Transaktionen sein.
- Unter Bezugnahme auf Fig. 1 wird im folgenden der erste Teil eines Ablaufdiagramms für das bevorzugte Ausführungsbeispiel näher beschrieben.
- Die Box 101 zeigt, daß P ri, ai, ci und di, wie bereits beschrieben, zufällig wählt, wobei i sich über die ersten s natürlichen Zahlen erstreckt. Die ri werden durch Erheben in öffentliche Exponenten zur Bildung von "Verdeckungsfaktoren" verwendet, und werden somit vorzugsweise aus [1, ...., M - 1]gewählt, wie auf diesem Gebiet bekannt. Die ai sind vorzugsweise gleichförmig, um die Chance, daß zwei Kunden dieselbe wählen, zu verringern. ci und di werden als zweites Argument für g verwendet und werden somit vorzugsweise gewählt, um die für g bereits beschriebenen gewünschten Eigenschaften zu maximieren, beispielsweise indem sie gleichförmig aus dem Bereich des zweiten Arguments von g gewählt werden. P berechnet sodann xi durch Anwenden von g auf das entsprechende ai als erstes Argument und ci als zweites Argument. Anschließend werden die yi in ähnlicher Weise berechnet, jedoch wird jedes ai durch die Gruppenoperation mit u kombiniert, um das erste Argument für g zu bilden, und die di werden als das zweite Argument verwendet, mit dem symbolisch als entsprechendes yi bezeichneten Ergebnis. Anschließend werden s Nachrichten gebildet und an B gesendet, wie durch die bereits beschriebene Notation angegeben. Die i-te Nachricht [11.1]i ist ein Produkt modulo M von ri erhoben in die p-te Potenz von f, angewandt auf das erste Argument xi und das zweite Argument yi.
- Die Box 102 gibt an, daß B nach dem Empfangen der Nachrichten [11.1] zuerst v zufällig gleichförmig aus den Untergruppen von [1....s] mit der Kardinalität s-t auswählt und diese Untergruppe anschließend an P als Nachricht [12] zurücksendet.
- Die Box 103 beschreibt zunächst, wie P prüft, ob die Kardinalität der als Nachricht [12] empfangenen Untergruppe s-t ist. Wie durch die bereits definierte Notation erforderlich, stoppt P den Vorgang, wenn dieser Test nicht positiv ausfällt; ansonsten fährt P fort, indem er zuerst den Index j für diese Gruppe zuweist. Dann werden Nachrichten [13.1]j, [13.2]j, [13.3]j und [13.4]j aus rj, aj, cj und dj gebildet und an B gesendet.
- Die Box 104 definiert die Aktionen von C nach dem Empfang der Nachrichten [13.1]j, [13.2]j, [13.3]j und [13.4]j. Für sämtliche Indizes j in der Gruppe v wird die Nachricht [11.1]j auf Gleichheit mit dem Produkt modulo M der Nachricht [13.1]j in der p-ten Potenz einer Abbildung unter f ihrer beiden Argumente verglichen, von denen jedes eine Abbildung unter g ist. Die erste Anwendung von g hat die Nachricht [13.2]j als ihr erstes Argument und [13.3]j als ihr zweites; die zweite hat ein erstes Argument bestehend aus der Nachricht [13.2]j kombiniert mit u unter Verwendung der Operation und ein zweites Argument [13.4]j. Haben alle j den Test durchlaufen, fährt B fort. Danach wird k über sämtliche Elemente in {1, ...,s}, nicht in v, laufenlassen. Das Produkt sämtlicher [11.1]k wird gebildet und modulo M in die 1/p-Potenz erhoben, welche, wie beschrieben, die p-te Wurzel bezeichnet. Dieser Wert wird an P als die Nachricht [14] geliefert.
- Die Box 105 gibt an, daß P zunächst k derart einstellt, daß es sich über sämtliche Elemente in {1, ...,s}, die nicht in [12] enthalten sind, erstreckt. Anschließend wird die empfangene Nachricht [14] in die p-te Potenz modulo M erhoben und auf Gleichheit mit dem Produkt modulo M sämtlicher von k indizierter [11.1] verglichen. Nach bestandenem Test fährt P fort, indem er n als Produkt modulo M der Nachricht [14] multipliziert mit dem multiplikativen Invers des Produkts sämtlicher rk einstellt. Schließlich werden ak, ck, dk, xk und yk neue Indizes zugewiesen: das erste Element in der geordneten Indexgruppe, über der j rangiert, wählt das ai, welches den neuen Index 1 erhält, das zweite Element in der Indexgruppe von j bestimmt, welches Element den Index 2 erhält, und so weiter für sämtliche Elemente in der Indexgruppe; das Gleiche gilt für ck, dk, xk und yk.
- Im folgenden wird das zweite Ablaufdiagramm für einen Teil des bevorzugten Ausführungsbeispiels im einzelnen anhand der Fig. 2 beschrieben.
- Die Box 201 beginnt mit dem Senden der Nachricht [21.1] von P an S, welche den Wert von n beinhaltet, der wie beschrieben in der Box 105 berechnet wurde. Der für i gesetzte Index sind die ersten t natürlichen Zahlen. Sodann wird für jeden Wert von i eine Nachricht [21.2]i gesendet, nachdem sie als Abbildung unter f mit dem ersten Argument x'i und dem zweiten Argument y'i gebildet wurde.
- Die Box 202 zeigt, daß S zuerst die Indexgruppe w zufällig aus allen Untergruppen von {1, ...,t} wählt. Sodann testet S die Potenz p der Nachricht [21.1] auf Gleichheit mit dem Produkt sämtlicher [21.2]i, sämtlich modulo M. Wird der Test bestanden, fährt S mit dem Senden der Nachricht [22] fort, wobei w an P geliefert wird.
- Die Box 203 beschreibt das Erfüllen der durch die von P empfangene Nachricht [22] definierten Abfrage. Für die Elemente j in [22] wird a'j, c'j und y'j an S als Nachricht [23.1]j, [23.2]j und [23.3]j gesendet; für die Elemente k in [1, ..., t], jedoch nicht in [22], werden x'k, a'k u und d'k als Nachrichten [23.4]k, [23.5]k und [23.6]k gesendet.
- Die Box 204 zeigt das Empfangen und das Prüfen von [23.1] bis [23.6] durch S. Für je4des j in w wird die Nachricht [21.2]j auf Gleichheit mit der Abbildung unter f von zwei Argumenten getestet: als erstes die Abbildung unter g von [23.1]j und [23.2]j, in der genannten Reihenfolge; als zweites [23.3]k. Für jedes nicht in w, jedoch in {1, ...,t} enthaltene k, wird die Nachricht [21.2]k auf Gleichheit mit der Abbildung unter f von zwei Argumenten getestet: als erstes [23.4]k; als zweites die Abbildung unter g von [23.5]k und [23.6]k, in der genannten Reihenfolge.
- Unter Bezugnahme auf Fig. 3 wird im folgenden das dritte Ablaufdiagramm für einen Teil des bevorzugten Ausführungsbeispiels näher beschrieben.
- Die Box 301 zeigt, wie B zunächst [21.2] von jedem S erhält und speichert.
- Die Box 302 gibt sodann an, daß B Duplizitäten unter den in der Box 301 empfangenen [21.2] sucht. In einem Ausführungsbeispiel wird [21.2] in geeigneter Weise beim Empfang in [301] gespeichert, was zur Erkennung von Duplikationen gut geeignet ist. (Dem Fachmann auf diesem Gebiet ist ersichtlich, daß das sogenannte "Hashing" eine geeignete Datenstruktur für diesen Zweck sein kann, und da diese bereits Abbildungen unter einer Einweg- Funktion sind, können einige ihrer Bits direkt als Hash-Werte verwendet werden.) Ein weiteres Beispiel wäre das Speichern vieler [21.2] als ungeordnete Gruppe und das anschließende periodische Sortieren der empfangenen [21.2]und, wenn möglich, Einbinden derselben in andere bereits empfangene [21.2]. In der Computerwissenschaft sind verschiedene Wege zum Erkennen derartiger Duplizitäten basierend auf Sortier- oder Suchverfahren bekannt.
- Die Box 303 zeigt, daß B Nachrichten [23.1] und [23.5] empfängt, je nachdem, welche verfügbar sind, welche wenigstens zwei Fällen eines in 302 als wiederholt erkannten bestimmten Werts von [21.1] entsprechen. Es wird erwartet, daß diese von jedem S geliefert werden, welche die doppelte [21.2] geliefert haben. Sie können beispielsweise von den S zusammen mit der [21.2] geliefert werden; wenn das Sortieren der Gruppe in 302 erfolgt, kann B die [23.1] und die [23.5] archivieren und nach Bedarf diejenigen auffinden, die Duplikaten entsprechen. Wenn hingegen beispielsweise die [23.1] und [23.5] nicht zusammen mit der [21.2] geliefert werden, so kann B diese von den S gegebenenfalls einzeln anfordern, falls es B bekannt ist, welches S [23.2] geliefert hat.
- Die Box 304 zeigt wie B das u rekonstruieren kann, das einer bestimmten [21.2] entspricht, für die sowohl [23.1] als auch [23.5] bekannt sind. Dies wird einfach dadurch erreicht, indem das Invers in der Gruppe von [23.1] mit der [23.1] unter Verwendung der Gruppenoperation kombiniert wird.
- Unter Bezugnahme auf Fig. 4 wird im folgenden das vierte Ablaufdiagramm eines Teils des bevorzugten Ausführungsbeispiels näher beschrieben.
- Die Boxen in diesem Ablaufdiagramm geben die Modifikationen der entsprechenden Boxen in Fig. 1 an, die zur Bildung des zweiten Ausführungsbeispiels dienen; aus Gründen der Klarheit und Lesbarkeit sind nur die Veränderungen dargestellt. Insbesondere geben die Boxen 401, 302, 403, 404 und 405 Veränderungen der Boxen 101, 102, 103, 104 und 105 wieder.
- Die Box 401 zeigt die Veränderungen der in der Box 101 für P definierten Aktionen. Die Definition eines symbolischen Namens a, die in der Box 101 verwendet wurde, ist durch diejenige in der Box 401 ersetzt; ansonsten definieren die Operationen und Nachrichten in der Box 401 nur zusätzliche Aktionen, die in der Box 101 für das zweite Ausführungsbeispiel enthalten sein sollten. Werte der i-ten Komponente (1≤i≤s) von vier symbolischen Namen werden zufällig gewählt: r"i wird aus der Gruppe der Reste modulo M gewählt; a"i ist ein String mit einer Länge, die gerade ausreicht, ein Gruppenelement unter aufzunehmen; bi ist als Bitstring gewählt, dessen Länge nach dem Anfügen an a"i die geeignete Größe für den ersten Eingang in g hat; und ei wird ähnlich ci und di in Fig. 1 gewählt. (Es sei darauf hingewiesen, daß u von B gewählt werden kann und nicht die für ai erforderliche Informationsmenge enthalten muß, da es nicht gegen durch das "Birthday-Paradoxon" induzierte Probleme geschützt werden muß; somit kann erwartet werden, daß Gruppenelemente unter in geeigneter Weise ausreichend Raum im ersten Argument von g belassen, daß ein geeignet großes b aufgenommen werden kann.) Für jeden Index i, der weiterhin von 1 bis s reicht, wird der Wert von ai als die Verkettung von a"i und bi berechnet, wobei der Teil bi höherwertige Bitstellen besetzt (welche die durch definierte modulare Addition nicht überstehen).
- Das Codieren des Ergebnisses als Bitstring ist der erste Eingang an g, der zur Bildung von xi in Fig. 1 verwendet wird. Das Codieren und die Gruppenoperation beim Bilden von yi in der Fig. 1 hinterlassen keine Information über b im ersten Argument für dieses g. Ferner wird zi als die Abbildung unter g verwendet, die aus bi als erstes Argument und ei als zweites Argument gebildet ist. Die Nachricht [11.2]i, welche das entsprechende zi, verdeckt durch das Multiplizieren modulo M mit in die Potenz q erhobenem r'i, enthält, wird an B gesandt.
- Die Box 402 ist gleich der Box 102, wobei der Empfang der Nachricht [11.2]i implizit ist.
- Die Box 403 gibt drei zusätzliche Nachrichten an, die in denjenigen enthalten sind, die in der Box 103 beschrieben wurden. Für jedes j, wie in 103 definiert, enthalten die von B gesendeten Nachrichten [13.5]j, [13.6]j, und [13.7]j die Werte r"j, bj und ej.
- Die Box 404 zeigt die Veränderungen der Box 104, bei denen es sich sämtlich um eingeschlossene Vorgänge handelt, mit Ausnahme der Tatsache, daß die Nachricht [14] nicht gesendet wird. Jede Nachricht [11.2]j wird auf Gleichheit mit dem Produkt der entsprechenden empfangenen Nachricht [13.5]j, das auf die Potenz q erhoben ist, und einer Abbildung unter g getestet. Das erste Argument für g ist die empfangene Nachricht [13.6]j, und das zweite ist die empfangene [13.7]j. Wird die Gleichheitfestgestellt, werden die Nachrichten [14.1] und [14.2]k gebildet und an P gesendet. Jeder Term in dem Produkt modulo M, das [14.1] bildet, ist die p-te Wurzel modulo M einer der [11.1]k; die [11.1]k, deren Index das erste Element in der geordneten Gruppe v-{1, ...,s} ist, erhält die p(1)-te Wurzel, die Nachricht, deren Index das zweite Element in der Gruppe ist, erhält die p(2)-te Wurzel und so weiter bis zum letzten Element in der Gruppe. Für jeden Wert von k, der durch dieselbe Indexgruppe läuft, wird die Nachricht [14.2]k als die q(@k)-te Wurzel modulo M der Nachricht [11.2]k gebildet; somit hat beispielsweise die Nachricht mit der q(i)-ten Wurzel den Index 1 und ist aus einer Nachricht gebildet, deren Index das i-te Element in der geordneten Indexgruppe v-[1, ...,s} ist.
- Die Box 405 zeugt die Veränderungen der Box 105 für P: die Definition des symbolischen Namens n, die in der Box 105 verwendet wurde, ist durch diejenige der Box 405 ersetzt; ansonsten definieren die Operationen und Nachrichten der Box 405 nur zusätzliche Aktionen. Zuerst wird die in die Potenz p erhobene Nachricht [14.1] auf Gleichheit mit einem Produkt von Potenzen der [11.1]k modulo M geprüft. Der Term, der jedem von k in der in 105 definierten Gruppe angenommenen Indexwert entspricht, ist [11.1]k, erhoben in eine Potenz, die der ganzzahlige Quotient von p geteilt durch p(i) ist, wobei i die Position dieses (als @k bezeichneten) k in der Indexgruppe ist. Dann wird n als das Produkt der Nachricht [14.1]multipliziert mit dem multiplikativen Invers eines Produkts rk gebildet. Jeder Term in diesem Produkt entspricht einem der Elemente in der Indexgruppe von k, wobei die Basis rk ist und der Exponent der ganzzahlige Quotient p geteilt durch p(@k) ist. Sodann wird mk als das Produkt der Nachricht [14.2]k multipliziert mit dem multiplikativen Invers eines Produkts rk gebildet. Jeder von diesen entspricht einem der Elemente in der Indexgruppe von k, wobei die Basis r"k ist und der Exponent der ganzzahlige Quotient q geteilt durch q(@k) ist. Schließlich werden die Elemente von bk und ek zur späteren Verwendung als b' und e' neu indiziert und neu bezeichnet. Der Index der zurückbehaltenen Elemente ist deren Positionsnummer in der Indexgruppe, über welcher k rangiert.
- Das fünfte Ablaufdiagramm für einen Teil des bevorzugten Ausführungsbeispiels wird im folgenden anhand der Fig. 5 näher beschrieben.
- Die Box 501 zeigt, daß die Box 201 für dieses zweite Ausführungsbeispiel keiner Veränderung bedarf.
- Die Box 502 drückt die Veränderungen der Box 202 aus, welche das Ersetzen des Gleichheitstests und eine mögliche Veränderung von w dahingehend beinhalten, daß einige oder sämtliche nicht zufälligen Teile eingeschlossen sind, was bedeuten kann, daß vereinbarte Elemente von w jeweils einer Werteinheit entsprechen, und daß, wenn ein derartiges Element in w auftritt, dies einen Transfer eines dieser Werteinheit entsprechenden Betrags angibt. Der neue Test betrifft die Gleichheit von [21.1], erhoben in die Potenz p, und einem Produkt modulo M von t Termen (1≤i≤t), jeweils in der Form [21.1]i, erhoben in die ganzzahlige Potenz p geteilt durch die ganzzahlige Potenz p(i).
- Die Box 503 gibt an, daß die Box 203 nicht verändert werden muß, mit der Ausnahme, daß jegliche möglicherweise nicht zufällige Teile von w, die erwartet werden können, geprüft werden, wie bereits beschrieben.
- Die Box 504 bestätigt lediglich, daß die Box 204 für das zweite Ausführungsbeispiel nicht verändert werden muß.
- Im folgenden wird unter Bezugnahme auf die Fig. 6 das sechste Ablaufdiagramm für einen Teil des bevorzugten Ausführungsbeispiels näher beschrieben.
- Diese Figur Stellt eine Transaktion zwischen P und B dar, die, wie bereits erwähnt, für das erste Ausführungsbeispiel nicht beschrieben wurde.
- Die Box 601 zeigt, daß P vier Nachrichten an B sendet: [61.1], [61.2], [61.3], und [61.4], die i, mi, b'i und e'i beinhalten.
- Die Box 602 zeigt, wie B zuerst diese vier Nachrichten empfängt und [61.1]unter dem symbolischen Namen h speichert. Danach prüft B die Gleichheit: die linke Seite ist die Nachricht [61.2], erhoben in die Potenz p(h), und auf der rechten Seite ist g, angewandt auf die erste Argument-Nachricht [61.3] und die zweite Argument-Nachricht [61.4]. Schließlich durchsucht B sämtliche zuvor akzeptierten [61.3], um sicherzustellen, daß die neue [61.3] sich nicht unter diesen befindet, bevor sie als eingeschlossen angenommen werden muß; ähnlich prüft B ebenfalls, ob das Suffix der empfangenen Nachricht [61.3] (über das Präfix hinaus, dessen Länge der von a" entspricht) ungleich dem Suffix irgendeiner Nachricht [23.1] ist, die bei der in Fig. 5 beschriebenen Modifikation der Fig. 2 empfangen wurde.
- Bestimmte Abwandlungen und Austausche sind dem Fachmann auf diesem Gebiet ersichtlich.
- In dem Protokoll der Fig. 2 wäre eine möglicherweise komprimierende Einweg- Funktion von xi und yi ausreichend, um anstelle der Nachrichten [21.2]j P ihre Ordnung anzugeben. (Selbst eine derartige komprimierte Abbildung ist unnötig, wenn Einigung darüber besteht, daß die Ordnung der Abbildungen unter f lexikographisch an ihrer binären Darstellungen sein soll, wie im folgenden auch in Zusammenhang mit der Fig. 4 und der Fig. 5 erwähnt). Als weiteres illustratives Beispiel kann die Menge an Daten, die P zwischen Fig. 1 und Fig. 2 speichern muß, unter das verringert werden, was beispielsweise durch das Nicht-Beibehalten von x' und y' und das einfache Rekonstruieren derselben wiedergegeben ist, wie dies für f in der Box 201 erfolgte.
- Anstelle der angegebenen bestimmten Verdeckung, bei der es sich im wesentlichen um diejenige der ersten genannten Blind-Signatur-Publikation handelt, könnte das Verfahren nach der zweiten genannten Blind-Signatur- Publikation verwendet werden. Ferner könnte das mit dem öffentlichen Exponenten q bezeichnete Signaturschema einen anderen Modulus haben oder gar eine völlig andere Art der Signatur sein, wie beispielsweise in der mitanhängigen Anmeldung mit dem Titel "Unanticipated signature systems", US-Anmeldenummer 123703, eingereicht von der Anmelderin am 23. November, 1987, beschrieben. Derartige Signaturen könnten ebenfalls die Produkte von Termen, beispielsweise die unter p, betreffen, wobei mehrere Teile des Protokolls der Fig. 4 durch einen bestimmten P ausgeführt würden, bevor die [14.2] rückgeführt werden. Diese teile können derart ausgeführt werden, daß B sämtliche Nachrichten [11] empfängt, bevor mehrere Abfragesätze v ausgegeben werden, wobei die einzige Einschränkung darin besteht, daß diese unzusammenhängend sind und die Kardinalität t aufweisen. Ferner könnte dieser Ansatz auch bei der Anwendung der Verfahren nach Fig. 1 verwendet werden. Die Signaturen des ersten Ausführungsbeispiels könnten ebenfalls verschiedene öffentliche Exponenten für verschiedene Terme verwenden, wie beim zweiten Ausführungsbeispiel der Fall; oder das zweite Ausführungsbeispiel erfordert lediglich einen einzelnen öffentlichen Exponenten, wenn das genannte lexikographische Ordnungsverfahren verwendet wird. (Im Falle der Fig. 4 würde die Ordnung beispielsweise als [11.3] gesendet werden müssen und sie würde von B als Teil der Tests in Box 404 für die j-ten Einträge durchgeführten Tests geprüft.)
- Eine weitere Variante wäre das Vorsehen von mehr g in einem f. Das u könnte unter diesen g durch bekannte Verfahren aufgeteilt werden, die unter anderem als "Key-Sharing", "Shadow" oder"Partial Key" bezeichnet werden. Eine unter der sogenannten "Schwelle" dieser Verfahren liegende Zahl wäre die Zahl der g, deren Argumente während des Vorlegens aufgedeckt werden sollen.
Claims (13)
1. Digitalsignaturverfahren mit öffentlichen Schlüsselwörtern, bei dem private
Schlüsselwörter von einer ausgebenden Seite erzeugt und geheim gehalten
werden, öffentliche Schlüsselwörter durch die ausgebende Seite bekannt
gemacht werden, Nachrichten von der ausgebenden Seite digital signiert und
von der prüfenden Seite auf zur Feststellung ihrer Gültigkeit getestet werden,
wobei das öffentliche Schlüsselwort der prüfenden Seite bekannt ist,
gekennzeichnet durch die folgenden Schritte:
Ausgeben digitaler Signaturen durch eine ausgebende Seite und Sicherstellen
durch die ausgebende Seite, daß jede der ausgegebenen Signaturen in seiner
Struktur Identifizierungsinformationen enthält;
teilweise Vorlegen der Struktur einiger der ausgegebenen Signaturen vor
wenigstens eine prüfende Seite, um es der prüfenden Seite zu ermöglichen,
mit der ausgebenden Seite die Digitalsignatureigenschaft der vorgelegten
Signaturen, während wenigstens ein Teil der in den höchstens einmal
vorgelegten Signaturen enthaltenen Identifizierungsinformationen selbst vor
einer Zusammenarbeit jeder prüfenden Seite und der ausgebenden Seite
verborgen bleibt, so daß die Identifizierungsinformationen nicht aus den
höchstens einmal vorgelegten Signaturen abgeleitet werden können; und
Testen der vorgelegten Signaturen durch die ausgebende Seite, um die in
den mehr als einmal vorgelegten Signaturen enthaltenen
Identifizierungsinformationen zu erhalten, wobei die Identifizierungsinformationen aus den
mehr als einmal vorgelegten Signaturen ableitbar sind.
2. Verfahren nach Anspruch 1, bei dem die Identifizierungsinformationen in
wenigstens zwei Teile aufgeteilt sind, die in der Struktur jeder der ausgegebenen
Signaturen enthalten sind; wenigstens einer der Teile während des Vorlegens
und des Prüfens der Signaturen offengelegt wird; und durch das Testen die
Identifizierungsinformationen erhalten werden, die in den Teilen der Signaturen
enthalten sind, die durch die mehr als einmal vorgelegten Signaturen offengelegt
wurden.
3. Verfahren nach Anspruch 1, bei dem der Schritt des teilweisen Vorlegens
der Struktur der Signaturen die Übertragung einer Abfrage durch die prüfende
Seite an die die Signatur vorlegende Seite und das anschließende Übertragen
eines entsprechenden Antwortwertes von der vorlegenden Seite an die prüfende
Seite beinhaltet, wobei die einzelnen Antworten auf mehrere einzelne Abfragen
zu Antwortwerten führen, welche die Identifizierungsinformationen aufdecken,
wobei jedoch ein einzelner Antwortwert die Identifizierungsinformationen nicht
offenlegt.
4. Verfahren nach Anspruch 1, ferner mit den folgenden Schritten: Wählen
erster Werte von Argumenten durch eine Seite, an die eine erste Signatur
ausgegeben wird, wobei die Signatur erste Identifizierungsinformationen enthält,
und Verwenden der erste Argumentwerte durch diese Seite, um die
ausgegebene Signatur zu beeinflussen; und Zusammenwirken des Ausgabe- und
des Vorlageschritts, um zu ermöglichen, daß ein beliebiges einmaliges Vorlegen,
das der ersten Ausgabe und den ersten Argumentwerten entspricht, ebenfalls
einer bestimmten zweiten Ausgabe mit bestimmten
Identifizierungsinformationen für einige der zweiten Argumentwerte entspricht.
5. Verfahren nach Anspruch 1, bei dem jede der mehreren Signaturen in einer
von mehreren Ausgabetransaktionen ausgegeben wird, und die in jeder Signatur
enthaltenen Identifizierungsinformationen eine geeignete Untergruppe von
Ausgabetransaktionen bestimmt, welche die Transaktion beinhaltet, während
der diese Signatur ausgegeben wurde.
6. Verfahren nach den Ansprüchen 1, 2, 3, 4 oder 5, bei dem die ausgegebenen
Signaturen im Austausch für einen Wert angezeigt werden.
7. Verfahren nach Anspruch 6, ferner mit den folgenden Schritten:
Vorsehen von Betragsangaben durch eine Seite, an die eine Signatur
ausgegeben wurde, um einen Zahlungsbetrag zu bestimmen;
Vorsehen von Gutschriftangaben durch die Seite, an die eine Signatur
ausgegeben wurde, um eine Gutschriftbetrag zu bestimmen;
Verarbeiten, um jede Gutschriftangabe zu erkennen, für die der Zahlungsbetrag
plus dem Gutschriftbetrag ein vorbestimmtes Maximum übersteigt.
8. Verfahren nach Anspruch 7, bei dem ein Aggregat des Gutschriftbetrags
über mehrere der Zahlungsbeträge gebildet wird, um so die Zusammenhänge
zwischen den Zahlungsangaben und den Gutschriftangaben zu verbergen,
welche ersichtlich würden, entspräche jeder der Gutschriftbeträge bestimmten
Zahlungsbeträgen.
9. Digitalsignatursystem mit öffentlichen Schlüsselwörtern mit einer
ausgebenden Seite und einer prüfenden Seite; wobei die ausgebende Seite Einrichtungen
zum Erzeugen privater Schlüsselwörter, Einrichtungen zum Veröffentlichen
von öffentlichen Schlüsselwörtern, Ausgabeeinrichtungen zum Ausgeben digitaler
Signaturen, und Einrichtungen zum Testen dieser digitalen Signaturen aufweist,
dadurch gekennzeichnet,
a. daß die Ausgabeeinrichtungen zum Ausgeben digitaler Signaturen ausgebildet
sind, die Identifizierungsinformationen in ihrer Struktur enthalten;
b. daß Einrichtungen auf seiten der prüfenden Seite vorgesehen sind, um
mit der ausgebenden Seite die Struktur der Signaturen zu prüfen, wenn diese
teilweise vorgelegt werden, und daß Einrichtungen zum Verbergen wenigstens
eines Teils der Identifizierungsinformationen in den einmalig vorgelegten
Signaturen vorgesehen sind; und
c. daß die Signaturtesteinrichtungen zum Ausgeben der
Identifizierungsinformationen in den mehr als einmal vorgelegten Signaturen ausgebildet
sind.
10. Signatursystem nach Anspruch 9, bei dem die Identifizierungsinformationen
in wenigstens zwei Teile aufgeteilt sind, wenigstens einer der Teile während
des Vorlegens der Signaturen offengelegt wird, und die Testeinrichtungen
die Identifizierungsinformationen ermitteln, die in den Teilen enthalten sind,
die bei mehr als einmaligem Vorlegen der Signatur offengelegt wurden.
11. Signatursystem nach Anspruch 9, ferner mit
d. Einrichtungen zum Übertragen einer Abfrage der Signatur, die Signaturkarten
vorgelegt wurde; und
e. Einrichtungen zum Übertragen einer Antwort auf die Abfrage, welche die
Identifizierungsinformationen nur dann offenlegt, wenn mehr als eine Abfrage
übertragen wird.
12. Signatursystem nach Anspruch 9, bei dem jede der Signaturen in einer
von mehreren Ausgabetransaktionen ausgegeben wird, und die in jeder Signatur
enthaltenen Identifizierungsinformationen eine geeignete Untergruppe von
Ausgabetransaktionen bestimmt, die mit erheblicher Wahrscheinlichkeit die
Transaktion einschließt, in der diese Signatur ausgegeben wurde.
13. Signatursystem nach einem der Ansprüche 9 bis 12, bei dem die Signatur
eine Form der wertbezogenen Zahlung ist.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16880288A | 1988-03-16 | 1988-03-16 | |
| PCT/US1989/001061 WO1989008957A1 (en) | 1988-03-16 | 1989-03-15 | One-show blind signature systems |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE68929263D1 DE68929263D1 (de) | 2000-12-21 |
| DE68929263T2 true DE68929263T2 (de) | 2001-07-12 |
Family
ID=22612986
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE68929263T Expired - Fee Related DE68929263T2 (de) | 1988-03-16 | 1989-03-15 | Blindunterschriftensysteme mit einer einzigen vorlage |
Country Status (6)
| Country | Link |
|---|---|
| EP (1) | EP0407465B1 (de) |
| JP (1) | JP3333503B2 (de) |
| AT (1) | ATE197656T1 (de) |
| AU (1) | AU3560989A (de) |
| DE (1) | DE68929263T2 (de) |
| WO (1) | WO1989008957A1 (de) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| ATE159603T1 (de) * | 1990-01-29 | 1997-11-15 | Security Techn Corp | Wahlweise moderierte transaktionssysteme |
| US5148479A (en) * | 1991-03-20 | 1992-09-15 | International Business Machines Corp. | Authentication protocols in communication networks |
| NL9301348A (nl) * | 1993-08-02 | 1995-03-01 | Stefanus Alfonsus Brands | Elektronisch betalingssysteem. |
| US5434919A (en) | 1994-01-11 | 1995-07-18 | Chaum; David | Compact endorsement signature systems |
| US5712913A (en) * | 1994-02-08 | 1998-01-27 | Digicash Incorporated | Limited-traceability systems |
| US5901229A (en) * | 1995-11-06 | 1999-05-04 | Nippon Telegraph And Telephone Corp. | Electronic cash implementing method using a trustee |
| GB2317790B (en) * | 1996-09-26 | 1998-08-26 | Richard Billingsley | Improvements relating to electronic transactions |
| GB201806112D0 (en) * | 2018-04-13 | 2018-05-30 | Nchain Holdings Ltd | Computer-implemented system and method |
| US12511648B2 (en) | 2018-08-30 | 2025-12-30 | International Business Machines Corporation | Privacy preserving transaction system |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4264782A (en) * | 1979-06-29 | 1981-04-28 | International Business Machines Corporation | Method and apparatus for transaction and identity verification |
| US4393269A (en) * | 1981-01-29 | 1983-07-12 | International Business Machines Corporation | Method and apparatus incorporating a one-way sequence for transaction and identity verification |
| US4759063A (en) * | 1983-08-22 | 1988-07-19 | Chaum David L | Blind signature systems |
| US4759064A (en) | 1985-10-07 | 1988-07-19 | Chaum David L | Blind unanticipated signature systems |
-
1989
- 1989-03-15 AT AT89905483T patent/ATE197656T1/de not_active IP Right Cessation
- 1989-03-15 JP JP50520989A patent/JP3333503B2/ja not_active Expired - Fee Related
- 1989-03-15 DE DE68929263T patent/DE68929263T2/de not_active Expired - Fee Related
- 1989-03-15 AU AU35609/89A patent/AU3560989A/en not_active Abandoned
- 1989-03-15 EP EP89905483A patent/EP0407465B1/de not_active Expired - Lifetime
- 1989-03-15 WO PCT/US1989/001061 patent/WO1989008957A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| JP3333503B2 (ja) | 2002-10-15 |
| EP0407465A1 (de) | 1991-01-16 |
| EP0407465A4 (en) | 1992-10-07 |
| WO1989008957A1 (en) | 1989-09-21 |
| EP0407465B1 (de) | 2000-11-15 |
| AU3560989A (en) | 1989-10-05 |
| JPH04500440A (ja) | 1992-01-23 |
| DE68929263D1 (de) | 2000-12-21 |
| ATE197656T1 (de) | 2000-12-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE3485804T2 (de) | Systeme zur blindunterschrift. | |
| DE68911935T2 (de) | Varianten des Fiat-Shamir-Verfahrens zum Identifizieren und Unterschreiben. | |
| DE69009274T2 (de) | Verfahren und Vorrichtung zur Darstellung von elektronischem Geld. | |
| DE69224238T2 (de) | Geheimübertragungsverfahren zur Identitätsverifizierung | |
| DE68925584T2 (de) | Blindunterschriftensysteme mit rückübertragung eines wertes | |
| DE60114833T2 (de) | Überprüfbare, geheime mischung von verschlüsselten daten wie z. b. elgamal-verschlüsselte daten für gesicherte mehrinstanzwahlen | |
| DE69031614T2 (de) | Wahlweise moderierte Transaktionssysteme | |
| DE69327238T2 (de) | Verfahren zur digitalen Unterschrift und Verfahren zur Schlüsselübereinkunft | |
| DE19804054B4 (de) | System zur Verifizierung von Datenkarten | |
| DE69131789T2 (de) | Verfahren zur sicheren zeitstempelung von digitalen dokumenten | |
| DE60119410T2 (de) | Vorrichtung und Verfahren zur Blockverschlüsselung und zur Entschlüsselung | |
| DE102012206341B4 (de) | Gemeinsame Verschlüsselung von Daten | |
| DE60313704T2 (de) | Verfahren und Vorrichtung zur Erzeugung eines Geheimschlüssels | |
| DE69828787T2 (de) | Verbessertes verfahren und vorrichtung zum schutz eines verschlüsselungsverfahrens mit öffentlichem schlüssel gegen angriffe mit zeitmessung und fehlereinspeisung | |
| DE60217260T2 (de) | Datenverarbeitungs- und Verschlüsselungseinheit | |
| DE60215332T2 (de) | System und Verfahren zum Verabreiten eines gemeinsamen Geheimnisses | |
| DE69920875T2 (de) | Vorrichtung und Verfahren zum Berechnen einer digitalen Unterschrift | |
| DE69816986T2 (de) | Verfahren und vorrichtung zur versiegelung und unterschrift von objekten | |
| EP0384475A1 (de) | Verfahren zur Identifikation von Teilnehmern sowie zur Generierung und Verifikation von elektronischen Unterschriften in einem Datenaustauschsystem | |
| DE60315700T2 (de) | Verfahren zum erzeugen einer stromverschlüsselung mit mehreren schlüsseln | |
| DE69838258T2 (de) | Public-Key-Datenübertragungssysteme | |
| DE19829643C2 (de) | Verfahren und Vorrichtung zur Block-Verifikation mehrerer digitaler Signaturen und Speichermedium, auf dem das Verfahren gespeichert ist | |
| DE68904989T2 (de) | Einrichtung zur abgesicherten datenkommunikation. | |
| EP3899844A1 (de) | Verfahren zum erzeugen einer blinden signatur | |
| DE68929263T2 (de) | Blindunterschriftensysteme mit einer einzigen vorlage |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition | ||
| 8327 | Change in the person/name/address of the patent owner |
Owner name: INFOSPACE, INC., BELLEVUE, WASH., US |
|
| 8339 | Ceased/non-payment of the annual fee |