DE2843583C2 - Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal - Google Patents

Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal

Info

Publication number
DE2843583C2
DE2843583C2 DE2843583A DE2843583A DE2843583C2 DE 2843583 C2 DE2843583 C2 DE 2843583C2 DE 2843583 A DE2843583 A DE 2843583A DE 2843583 A DE2843583 A DE 2843583A DE 2843583 C2 DE2843583 C2 DE 2843583C2
Authority
DE
Germany
Prior art keywords
message
register
recipient
mod
key
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
Application number
DE2843583A
Other languages
English (en)
Other versions
DE2843583A1 (de
Inventor
Martin E. Stanford Calif. Hellman
Ralph C. Palo Alto Calif. Merkle
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Leland Stanford Junior University
Original Assignee
Leland Stanford Junior University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Leland Stanford Junior University filed Critical Leland Stanford Junior University
Publication of DE2843583A1 publication Critical patent/DE2843583A1/de
Application granted granted Critical
Publication of DE2843583C2 publication Critical patent/DE2843583C2/de
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Description

j-f+l
gesetzt wird, wobei ι = η, w-1, . . . 1, wobei m und M' große ganze Zahlen sind und w modulo-m-umkehrbar ist, wobei S die Umkehrung der verschlüsselten Nachricht 5 ist, die durch die Verschlüsselungstransformation
S = ä*x
definiert ist, wobei die Nachricht als w-dimensionaler Vektor χ dargestellt wird, bei dem jedes Element χ,- eine ganze Zahl zwischen 0 und / ist, wobei / eine ganze Zahl ist, wobei der öffentliche Verschlüsselungscode durch einen n-dimensionalen Vektor a dargestellt wird, der sen Elemente α durch die Gleichung
a, = (w* a,moam) + km
(mit/ = 1,2,...W),
wobei k und η ganze Zahlen sind und sich der geheime Entschlüsselungscode aus m, w und a' zusammensetzt, wobei ä ein w-dimensionaler Vektor ist, bestimmt sind.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß zum Umkehren der Verschlüsselungstransformation
S' = bsmoam
berechnet wird, und daß zum Erzeugen der Nachricht x,nur dann gleich / gesetzt wird, wenn der Quotient S'la, eine ganze Zahl ist, und x, gleich 0 gesetzt wird, wenn dieser Quotient keine ganze Zahl ist, wobei b und m große ganze Zahlen sind und m eine Primzahl ist, so daß
a)
wobei η eine ganze Zahl ist und sich der geheime Entschlüsselungscode aus b, m und c' zusammensetzt, wobei α ein n-dimensionaler Vektor ist, bei dem jedes Element a, eine relative Primzahl ist, und wobei S' die Umkehrung der verschlüsselten Nachricht S ist, die durch die Verschlüsselungstransformation
S = d*x
definiert ist, wobei die Nachricht als n-dimensionaler Vektor χ dargestellt wird, bei dem jedes Element x, eine 0 oder eine 1 ist, und wobei der öffentliche Verschlüsselungscode durch den n-dimensionalen Vektor α dargestellt wird, dessen Elemente α durch die Gleichung
ai ~ l°8i> o, mod m
(fur;= 1,2 η)
definiert sind.
Die Erfindung bezieht sich auf ein Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal zwischen Sender und Empfänger.
Kryptographische Verfahren und Vorrichtungen werden in großem Umfang verwendet, um die Geheimhaltung und Echtheit von Nachrichten, Meldungen u. dgl. zu gewährleisten, die über unsichere Kanäle
bo weitergegeben werden. Ein Geheimhaltungssystem hat die Aufgabe, zu verhindern, daß unbefugte Personen Informationen aus Nachrichten entnehmen, die mittels eines unsicheren Kanals übermittelt werden, um dem Absender einer Nachricht Gewähr dafür zu geben, daß
es die Nachricht nur von dem gewünschten Empfänger gelesen werden kann. Ein Authentisierungssystem hat die Aufgabe, die unbefugte Eingabe von Nachrichten in einen unsicheren Kanal unmöglich zu machen und dem
Empfänger die Gewähr zu geben, daß die empfangene Nachricht von einem legitimierten Absender stammt
Gegenwärtig bestehen die Maßnahmen zum Authentisieren von Nachrichten in den meisten Fällen darin, daß jeder Nachricht ein Authentisienuigsmuster angefügt wird, das nur dem Absender und dem vorgesehenen Empfänger bekannt ist, und daß die betreffende Kombination verschlüsselt wird. Diese Maßnahmen bieten einen Schutz dagegen, daß es einer unbefugten mithörenden Person möglich ist, neue und m der richtiger Weise authentisierte Nachrichten zu fälschen, wenn vorher nicht auch der benutzte Ziffernschlüssel gestohlen worden ist Jedoch besteht nur ein geringer Schutz gegen die Gefahr des Entstehens von Streitigkeiten; beispielsweise kann der Absender eine in der richtigen Weise authentisierte Nachricht absenden und danach die Absendung der Nachricht leugnen und fälschlicherweise den Empfänger dafür verantwortlich machen, daß er unbefugt gehandelt hat. Umgekehrt ist es möglich, daß der Empfänger nicht genehmigte Maßnahmen trifft, daß er eine an sich selbst gerichtete Nachricht fälscht und dann fälschlicherweise den Absender für die betreffenden Maßnahmen verantwortlich macht. Diese Gefahr des Entstehens von Streitigkeiten ergibt sich aus dem Fehlen geeigneter Einrichtungen zum Erstellen von Quittungen, mittels welcher man beweisen könnte, daß eine bestimmte Nachricht durch einen bestimmten Absender einem bestimmten Empfänger zugeleitet worden ist.
Bei den bekannten kryptographischen Systemen ergibt sich eine der größten Schwierigkeiten daraus, daß es für den Absender und den Empfänger erforderlich ist, einen Ziffernschlüssel über einen zugriffsicheren Kanal auszutauschen, zu dem unbefugte Personen keinen Zugang haben. Um einen solchen Ziffernschlüssel y, auszutauschen, wird der Austausch häufig dadurch bewirkt, daß der Schlüssel vorher über einen zuverlässigen Kanal übermittelt wird, z. B. einen privaten Kurier oder mit eingeschriebener Post; diese zugriffsicheren Kanäle arbeiten jedoch gewöhnlich langsam, und ihre Benutzung ist kostspielig.
In »Multiuser Cryptographic Techniques«, AFlPS- - Conference Proceedings, Bd. 45, S. 109-112, vom 8. Juni 1976, schlagen Diffie et al. die Benutzung eines Kryptosystems mit einem öffentlichen Schlüssel vor, bei dem es möglich ist, auf die Benutzung eines zugriffsicheren Kanals zu verzichten, da die vom Absender verwendeten Verschlüsselungsinformationen öffentlich bekannt sind. Ferner wird dargelegt, auf welche Weise es ein Kryptosystem mit öffentlichem Schlüssel ermöglichen würde, mit einem Authentisierungssystem zu arbeiten, mittels dessen eine von der Nachricht abhängige, nicht verfälschbare digitale Unterschrift erzeugt wird. Diffie schlägt vor, zwei Schlüssel £und D zu benutzen, um eine Nachricht zu verschlüsseln und danach zu entschlüsseln, wobei es sich bei dem Schlüssel E um eine öffentlich zugängliche Information handelt, während der Schlüssel D durch den vorgesehenen Empfänger geheimgehalten wird. Zwar wird der Schlüssel D durch den Schlüssel £ bestimmt, doch ist es bo unmöglich, den Schlüssel D aus dem Schlüssel E zu berechnen. Diffie stellt fest, daß es plausibel ist, ein solches Kryptosystem mit öffentlich zugänglichem Schlüssel zu entwerfen, das es einem Benutzer ermöglichen würde, eine Nachricht zu verschlüsseln und sie dem beabsichtigten Empfänger zuzuleiten, wobei es jedoch nur diesem beabsichtigten Empfänger möglich sein würde, die Nachricht zu entschlüsseln. Zwar erläutert Diffie die Plausibilitct des Aufbaus solcher Systeme, doch führt er weder den Beweis, daß sich Kryptosysteme mit öffentlichem Schlüssel in Gebrauch befinden, noch gibt er ein brauchbares System an.
Diffie liefert drei Plausibilitätsargumente für die Existenz eines mit einem öffentlich zugänglichen Schlüssel arbeitenden Kryptosystems. Hierzu gehören die Verwendung einer Matrix, der Gebrauch einer Maschinensprache und die Anwendung einer logischen Abbildung. Zwar ist es bei einem Matrixsystem möglich, mit Matrizen zu arbeiten, bezüglich welcher es sich nachweisen läßt, daß man praktisch eine nicht zumulbare Zeit für die kryptoanalytische Behandlung, d. h. zum Berechnen des Schlüssels D aus dem Schlüssel E, benötigen würde, wenn man bekannte Verfahren anwendet doch ermangelt es dem Gebrauch von Matrizen der praktischen Anwendbarkeit da die benötigten Matrizen enorme Abmessungen erhalten müßten. Zwar wird ferner der Gebrauch einer Maschinensprache sowie die Anwendung einer logischen Abbildung vorgeschlagen, doch werden keine Angaben darüber gemacht auf welche Weise solche Systeme so ausgebildet werden können, daß für die Entschlüsselung nachweisbar eine zu lange Zeit benötigt würde.
Ferner führt Diffie ein Verfahren ein, bei dem die vorgeschlagenen Kryptosysteme mit öffentlich zugänglichem Schlüssel angewendet werden und das es dem Empfänger ermöglichen würde, die Authentizität einer Nachricht leicht nachzuprüfen, bei dem jedoch der Empfänger daran gehindert wird, scheinbar authentische Nachrichten zu erzeugen. Zwar beschreibt Diffie ferner ein Protokoll, nach dem gearbeitet werden soll, um bei dem vorgeschlagenen Kryptosystem mit öffentlichem Schlüssel eine Authentisierung zu erhalten, doch beruht das Authentisierungsverfahren auf der Existenz eines Kryptosystems mit öffentlichem Schlüssel, für das Diffie allerdings keine Vorschläge macht.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal zwischen Sender und Empfänger anzugeben, das es autorisierten Teilnehmern einer Unterhaltung ermöglicht, sich privat zu unterhalten, obwohl einer nicht autorisierten Person der gesamte Nachrichtenverkehr zugänglich ist.
Diese Aufgabe wird erfindungsgemäß durch die im Patentanspruch 1 beschriebenen Maßnahmen gelöst.
Bevorzugte Weiterbildungen und Ausgestaltungen des erfindungsgemäßen Verfahrens sind Gegenstand der Patentansprüche 2 bis 4.
Ausführungsbeispiele der Erfindung werden im folgenden anhand schematischer Zeichnungen näher erläutert Es zeigt
F i g. 1 ein Blockschaltbild eines Kryptosystems mit öffentlich zugänglichem Schlüssel, das geeignet ist, ein gegen rechnerische Eingriffe gesichertes Kryptogramm über einen nicht zugriffsicheren Kanal zu übermitteln,
Fig. 2 ein Blockschaltbild einer Verschlüsselungseinrichtung zum Umwandeln einer Nachricht in einen Zifferntext bei dem Kryptosystem nach Fig. 1,
F i g. 3 ein Blockschaltbild eines Multiplizierers zum Durchführen modularer Multiplikationen bei der Entschlüsselungseinrichtung nach F i g. 7, der Potenziereinnchturig nach Fig. 10 und dem mit einem öffentlichen Schlüssel arbeitenden Generator nach F i g. 11,
Fig.4 die Schaltung einer Addiereinrichtung zum Durchführen von Additionen bei der Verschlüsselung*-
einrichtung nach Fig. 2, der Multipliziereinrichiung nach F i g. 3 und dem mit öffentlich zugänglichem Schlüssel arbeitenden Generator nach Fi g. 11,
F i g. 5 die Schaltung eines Komparators zum Durchführen von Größen vergleichen bei der Entschlüsselungseinrichtung nach Fi g. 2, der Multipliziereinrichtung nach Fig.3, der Entschlüsselungseinrichtung nach F i g. 7, der Dividiereinrichtung nach Fig. 8 und der alternativen Entschlüsselungseinrichtung nach F i g. 9,
Fig.6 die Schaltung einer Subtraktionseinrichtung /.um Durchführen von Subtraktionen bei der Multipliziereinrichtung nach Fig.3, der Entschlüsselungseinrichtung nach F i g. 7 und der Dividiereinrichtung nach F i g. 8,
F i g. 7 ein Blockschaltbild einer Entschlüsselungseinrichtung zum Entschlüsseln eines Schlüsseltextes zur Umwandlung in eine Nachricht bei dem Kryptosystem mit öffentlichem Schlüssel nach F i g. 1,
Fig. 8 ein Blockdiagramm einer Dividiereinrichtung zum Durchführen von Divisionen bei der Einrichtung nach Fig. 7 und der alternativen Entschlüsselungseinrichtung nach F i g. 9,
Fig.9 ein Blockschaltbild einer alternativen Emschlüsseleinrichtung zum Umwandeln eines Schlüsseltextes in eine Nachricht bei dem Kryptosystem mit öffentlichem Schlüssel nach Fig. 1,
Fig. 10 eine Potenziereinrichtung zum Potenzieren verschiedener Zahlen mit verschiedenen Exponenten nach der Moduloarithmetik bei der alternativen Entschlüsseleinrichtung nach F i g. 9 und dem Generator nach Fig. 11,
F i g. 11 einen mit öffentlich zugänglichem Schlüssel arbeitenden Generator zum Erzeugen des öffentlichen Verschlüsselungscodes bei dem Krvptosystem nach Fig. 1,
F i g. 12 ein Fließbild des Algorithmus des logarithmischen Wandlers nach Fig. 11 für den Fall, daß p— 1 eine Potenz von 2 ist, und
Fig. 13 ein Fließbild des Algorithmus zum Berechnen der Koeffizienten (b) der Reihe
= V hni
wenn bei dem logarithmischen Wandler nach F i g. 11 der Ausdruck 0 <£,</?,—1 gilt, wobei p—\ nicht eine Potenz von 2 ist.
In F i g. 1 ist ein Kryptosystem mit öffentlich zugänglichem Schlüssel dargestellt bei dem sämtliche Nachrichten über einen nicht zugriffsicheren Kanal 19 übermittelt werden, z. B. über eine Fernsprechleitung. Die Übermittlung erfolgt über den ungesicherten Kanal 19 zwischen einem Sender 11 und einem Empfänger 12 unter Benutzung von Sender-Empfänger-Einheiten 31 und 32. Dem Sender 11 wird eine unverschlüsselte Nachricht bzw. eine Klartextnachricht X eingegeben, die zu dem Empfänger 12 übermittelt werden solL Zu dem Sender 11 und dem Empfänger 12 gehören eine Verschlüsselungseinrichtung 15 bzw. eine Entschlüsseleinrichtung 16 zum Verschlüsseln bzw. Entschlüsseln von Informationen unter dem Einfluß eines Verschlüsselungscodes E der in der Leitung E erscheint, sowie eines reziproken Entschlüsselungscodes D, der in der Leitung D erscheint Die Einrichtungen 15 und 16 bewirken eine umgekehrte Transformation, wenn ihnen die entsprechenden Codes E und D eingegeben werden. Diese Codes können sich z. B. aus einer Folge von zufällig
gewählten Buchstaben oder Ziffern zusammensetzen. Die Verschlüsselungseinrichtung 15 verwandelt durch eine Verschlüsselung die Klartextnachricht X in eine verschlüsselte Nachricht oder einen Schlüsseltext 5, der durch den Sender 11 über den ungesicherten Kanal 19 übermittelt wird; der Schlüsseltext S wird von dem Empfänger 12 empfangen und durch die tintschlüsseleinrichtiing 16 entschlüsselt, so daß man wiederum die Klanextnachricht X erhält. Gemäß F i g. 1 ist angenommen. daß eine unbefugte Person bzw. ein Horcher 13 vorhanden ist, dem ein Schlüsselgenerator 23 und eine Entschlüsseleinrichtung !8 zur Verfügung stehen, und der Zugang zu dem ungesicherten Kanal 19 hat, so daß er dann, wenn er Kenntnis von dem Entschlüsselungscode hätte, den Schlüsseltext S entschlüsseln und die Klartextnachricht .Verhalten könnte.
Bei dem nitr beschriebenen Ausführungsbeispiel wird von der Schwierigkeit Gebrauch gemacht, die sich aus dem sogenannten Tornisterproblem (»knapsack problem«) ergibt. Fine einfache Erläuterung ergibt sich, wenn man einen eindimensionalen Tornister mit der Länge 5 und einen Vektor a annimmt, der η Stäbe mit der Länge a\, ai ... a„ enthält; das Tornisterproblem besteht dann darin, einen Ergänzungssatz von Stäben zu finden, der den Tornister vollständig ausfüllt, wenn ein solcher Ergänzungssatz existiert. Eine äquivalente Aufgabe besteht darin, einen binären /7-Vektor χ aus Nullen und Einsen derart zu finden, daß S- a * χ ist, wenn ein solcher λ-Wert existiert; ein den Vektoren beigefügter Stern bezeichnet ein inneres Produkt, während er bei skalaren Größen eine normale Multiplikation bezeichnet.
Eine angenommene Lösung χ läßt sich leicht bei höchstens η Additionen prüfen; soweit gegenwärtig bekannt, erfordert das Auffinden einer Lösung eine Anzahl von Operationen, die mit η exponentiell zunimmt. Ein lückenloses Ausprobieren zum Auffinden einer Lösung bei sämtlicher. 2" möglichen Werten für χ ist auf rechnerischem Weg unmöglich, wenn η größer ist als 100 oder 200. Eine Aufgabe wird als rechnerisch undurchführbar betrachtet, wenn ihre Kosten im Hinblick auf die Größe des zu benutzenden Speichers oder die Rechenzeit zwar einen endlichen Wert haben, jedoch jeden ausführbaren Wert überschreiten; dies trifft z. B. für den Fall zu, daß mit Hilfe bekannter Rechenverfahren und Rechengeräte Operationen durchgeführt werden müßten, deren Anzahl in der Größenordnung von etwa 1030 liegt.
Aus der Theorie ergibt sich die Schwierigkeit des Tornisterproblems, denn es handelt sich um ein NP-geschlossenes Problem, das daher eines der schwierigsten Rechenprobleme bei einem kryptographischen System bildet (siehe z. B. A. V. Aho. J. E. Hopcraft und J. D. Ullman, »The Design and Analysis of Computer Algorithms«, Reading, Ma, Addison-Wesley, 1974, S. 363-404). Der Schwierigkeitsgrad richtet sich jedoch nach der Wahl von a. ist a=(l, 2, 4,... Κ"-χ\ bedingt die Lösung für χ das Auffinden der binären Darstellung von 5. Wenn etwas weniger trivial ausgedrückt für alle Werte von /der Ausdruck
(D
y-l
gilt, läßt sich χ ebenfalls leicht finden: x„ = 1, wenn und nur wenn SS am und bei / = n—1, n-2, 1, ist
X1= 1, wenn und nur wenn der nachstehende Ausdruck
(2)
Wenn man zuläßt, daß die Komponenten von χ ganzzahlige Werte zwischen 0 und 1 annehmen, kann man die vorstehende Bedingung (1) durch
a, > I Σ "j
J-I
ersetzen, und es ist möglich, x. als ganzzahligen Teil von
S-
a, = w* α] mod m
(3)
Der Vektor a wirkt als öffentlich zugänglicher Verschlüsselungscode E in der Leitung E und wird entweder einer öffentlich zugänglichen Kartei eingegeben oder über den ungesicherten Kanal 19 zum Sender übermittelt Der Verschlüsselungscode .E wird hierdurch sowohl für den Sender 11 als auch für den Mithörer 13 zugänglich. Beim Sender 11 wird der Verschlüsselungscode E, der gleich a ist, verwendet, um den Schlüsseltext S aus der Klartextnachricht X zu erzeugen, die durch den Vektor χ dargestellt wird, und zwar dadurch, daß zugelassen wird, daß S= a* χ ist. Da jedoch a, pseudozufällig verteilt sein kann, ist es dem Mithörer 13, der a, jedoch nicht woder m kennt, praktisch unmöglich, ein Tornisterproblem zu lösen, bei dem a eine Rolle spielt, um die gewünschte Nachricht λ-zu erhalten.
Die Entschlüsselungseinrichtung 16 des Empfängers 12 erhält w, mund a'als geheimen Entschlüsselungscode D, so daß sie leicht die nachstehende Berechnung ausführen kann.
zurückzugewinnen. Die Gleichung (2) zum Feststellen des Wertes von xh wenn x, als binärer Wert vorliegt, entspricht dieser Regel für /= 1.
Bei einem »Tornister mit Falltür« handelt es sich um eine Anordnung, bei der es eine sorgfältige Wahl von a dem Konstrukteur ermöglicht, leicht eine Lösung für jeden Wert von χ zu finden, bei der es jedoch für jede andere Person unmöglich ist, die Lösung zu finden. Im folgenden werden zwei Verfahren zum Konstruieren von Tornistern mit Falltüren beschrieben, doch wird zunächst auf ihre Verwendung bei einem mit öffentlichen Schlüssel arbeitenden Kryptosystem der in F i g. 1 dargestellten Art eingegangen. Der Empfänger 12 erzeugt einen Falltürtomister-Vektor a und überführt diesen entweder in eine öffentliche Kartei oder übermittelt ihn zu dem Sender 11 über den ungesicherten Kanal 19. Der Sender 11 stellt die Klartextnachricht X als einen Vektor χ mit η Nullen und Einsen dar, er berechnet S= a * χ, und er übermittelt 5 zum Empfänger 12 über den ungesicherten Kanal 19. Der Empfänger 12 kann 5 für χ lösen, doch ist es für den Mithörer 13 unmöglich, S für χ zu lösen.
Bei einem solchen Verfahren arbeitet der Schiüsselgenerator 22 mit Zufallszahlen, die durch die Schlüsselquelle 26 erzeugt werden, um zwei große ganze Zahlen m und w zu wählen, so daß w nicht modulo-m-umkehrbar ist d. h., daß m und w keine gemeinsamen Faktoren außer 1 haben. Beispielsweise kann die Schlüsselquelle 26 einen Zufallszahlengenerator enthalten, der aus rauschstarken Verstärkern, z. B. Operationsverstärkern der Bauart Fairchild μ 709, aufgebaut ist und einen Polaritätsdetektor aufweist Dem Schlüsselgenerator 22 wird ein Tornistervektor a 'zugeführt, der die Gleichung (1) befriedigt und daher eine Lösung der Gleichung S'=a'+x ermöglicht und er verwandelt den leicht zu lösenden Tornistervektor a' in einen Vektor a entsprechend der folgenden Gleichung:
S' = \lw*SmoAm
= 1/w*
= ^x', a, mourn
Wählt man m so, daß
(8)
ergibt sich aus Gleichung (7), daß 5'gleich Σ*/* a' m der Ganzzahlarithmetik und gleich mod m ist. Dieser Tornister läßt sich leicht für χ lösen, wobei χ gleichzeitig die Lösung für das schwierigere Falltürtornister-Problem 5= a * χ ist. Dem Empfänger 12 ist es daher möglich, die Klartextnachricht -Yzurückzugewinnen, die durch den binären Vektor χ dargestellt ist. Jedoch ist es möglich, dafür zu sorgen, daß sich das Falltürtornister-Problem, vor das sich der Mithörer 13 gestellt sieht, rechnerisch nicht lösen läßt, so daß es dem Mithörer nicht möglich ist, sich die Klartextnachricht X zugänglich zu machen.
Um diese Gedankengänge zu verdeutlichen, wird im folgenden ein Beispiel behandelt, bei dem η gleich 5 ist. Wählt man m=8443, a'=(171, 196, 457,1191, 2410) und w=2550, erhält man a=(5457, 1663, 216, 6013, 7439). Wählt man x=(0, 1, 0, 1, 1), berechnet die Verschlüsselungseinrichtung 15 den Wert S= 1663 + 6013 + 7439 = 15 115. Die Entschlüsselungseinrichtung 16 arbeitet mit dem Algorithmus von Euclid (siehe z. B. D. Knuth, »The Art of Computer Programming«, Bd. II, Addison-Wesley, 1969, Reading Ma.), um Mw= 3950 zu berechnen, um dann die nachstehende Rechnung auszuführen:
S' = \/w*Smodm
= 3950* 15115 mod 8443
= 3797
(9)
Da 5'größer ist als a 's, bestimmt die Entschlusseleinrichtung 17, daß As=I. Dann bestimmt sie unter Benutzung der Gleichung (2) für den Vektor a', daß Xt= 1, X3=O, X2= 1, Xi =0 oder x=(0,1,0,1,1) ist wobei es sich hierbei auch um die richtige Lösung für S= a * χ handelt
Für den Mithörer 13, der die Werte von m, woder a' nicht kennt ist es sehr schwierig, eine Lösung für χ aus 5= a * χ zu erhalten, und zwar auch dann, wenn er das Verfahren zum Erzeugen des Vektors a kennt Diese Aufgabe läßt sich dadurch undurchführbar machen, daß man für n, m, wund a 'größere Wert wählt Die genannte Aufgabe läßt sich noch weiter erschweren, indem man die Reihenfolge der Werte von a, verwürfelt und jedem
Wert von a, verschiedene, zufällig gewählte Vielfache hinzufügt.
Das vorstehende Beispiel hat einen äußerst kleinen Umfang und soll lediglich das angewendete Verfahren veranschaulichen. Wenn man mit n= 100 arbeitet, wobei es sich um die untere Grenze des Bereiches handelt, der bei Systemen mit hohem Sicherheitsgrad gegenwärtig angewendet wird, d. h., wenn man einen vernünftigeren Wert ansetzt, liegt es nahe, m annähernd gleichmäßig aus den Zahlen zwischen 2?01 +1 und 22m—-\ zu wählen, d. h., a\ gleichmäßig aus dem Bereich (1,2100) zu wählen, a2' gleichmäßig aus dem Bereich (2100+1, 2 * 2100) zu wählen, a-ϊ gleichmäßig aus dem Bereich (3χ2ιου+1, 4 * 2100) usw. zu wählen, und daß a/ gleichmäßig aus [(2'-'-l)*2l0O+l, 2'-1*210fl] gewählt wird; ferner kann man ungleichmäßig aus (2, m-2) wählen und dann durch den größten gemeinsamen Teiler vuii \w', m) teilen, so daß man w erhält.
Die Wahl dieser Werte gewährleistet, daß die Gleichung (8) befriedigt wird und daß der Mithörer 13 mit mindestens 2100 Möglichkeiten für jeden Parameter zu rechnen hat, so daß es ihm nicht möglich ist, sämtliche Möglichkeiten auszuprobieren.
Die Verschlüsselungseinrichtung 15 ist in Fig.2 dargestellt. Die Folge von ganzen Zahlen a\, a->, ... a„ wird sequentiell synchron mit der sequentiellen Darstellung der Nullen und Einsen von xu xl ... Xn zugeführt. Das S-Register 41 wird zunächst auf Null gesetzt. Wenn *, = 1, werden der Inhalt 41 des 5-Registers und a, durch den Addierer 42 addiert, und das Ergebnis wird dem S-Register 41 eingegeben. 1st Ar1 = O, bleibt der Inhalt des S-Registers 41 unverändert. In beiden Fällen wird /durch /+1 ersetzt, bis i=n gilt, womit die Schlüsseloperation abgeschlossen ist. Das /-Register wird anfänglich auf Null gesetzt, und der Inhalt wird nach jedem Arbeitszyklus der Schlüsseleinrichtung um 1 erhöht. Um den Inhalt des /-Registers 43 zu erhöhen, kann man entweder den Addierer 42 oder einen speziellen Aufwärtszähler benutzen. Bei dem vorstehend genannten Bereich von Werten können das S-Register 41 und das /-Register 43 beide durch einen einzigen, mit direktem Zugriff arbeitenden Speicher für 1024 Bits, z.B. einen solchen der Bauart Intel 2102, gebildet werden. Der Aufbau des Addierers 42 wird weiter unten näher erläutert. Auch der Aufbau eines Komparators 44, der benötigt wird, um ; und η zu vergleichen und festzustellen, wann der Schlüsselvorgang beendet ist, wird im folgenden näher erläutert.
Zu dem Schlüsselgenerator 22 gehört ein Modulo-m-Multiplizierer, wie er z. B. in F i g. 3 dargestellt ist; dieser Multiplizierer dient zum Erzeugen von a,— w*a! mod m. Die beiden zu multiplizierenden Zahlen w und a/ werdep den W und Λ Registern 51 und 52 eingegeben, während m dem M-Register 53 eingegeben wird. Das Produkt w * a/ modulo m wird in dem P-Register 54 erzeugt, das anfänglich auf Null gesetzt wird. Hat k, die Zahl der Bits in der binären Darstellung von nj, den Wert 200, können alle vier Register durch einen einzigen, mit direktem Zugriff arbeitenden Speicher für 1024 Bits, z. B. einen solchen der Bauart Intel 2102, gebildet sein. Der in Fig.3 dargestellte Aufbau beruht auf der Tatsache, daß
enthält, den Wert 1 hat, wird der Inhalt des A -Registers 53 zum Inhalt des P-Registers 54 durch den Addierer 55 addiert. Ist ηό = 0, bleibt der Inhalt des P-Registers 54 unverändert. Dann werden die Inhalte der M- und P-Register durch den Komparator 56 verglichen, um festzustellen, ob der Inhalt des P-Registers 54 größer als m oder gleich m ist, d. h., dem Inhalt des M-Registers 53 ist. Wenn der Inhalt des P-Registers 54 größer ist als m oder gleich m. subtrahiert die Subtrahiereinrichtung 57 in vom Inhalt des P-Registers 54 und gibt die Differenz dem P-Register 54 ein; ist die Differenz kleiner als m. bleibt das P-Register 54 unverändert.
Nunmehr wird der Inhalt des IV-Registers 51 um eine Bitstelle nach rechts verschoben, und eine Null wird auf der linken Seite zugeführt, so daß der Inhalt den Wert 0iva_iiv*_2 ... HW1 annimmt, woraufhin w für die Berechnung von 2uij' mod m bereit ist. Die Größe 2a'modm wird zu diesem Zweck dadurch berechnet. daß mit Hilfe des Addierers 55 die Größe a' zu sich selbst addiert wird, wobei der Komparator 56 dazu dient festzustellen, ob das Ergebnis 2a' kleiner ist als m, und wobei die Subtrahiereinrichtung 57 dazu dient, m von 2a'abzuziehen, wenn das Ergebnis nicht kleiner ist als m. Das Ergebnis 2a'mod m wird dann im .4'-Register 52 gespeichert. Dann wird wie zuvor das am weitesten rechts stehende Bit des H-Registers 51. das ηί enthält, geprüft, woraufhin sich der beschriebene Vorgang wiederholt.
Dieser Vorgang wird höchstens jt-mal wiederholt oder bis das W-Register 51 nur Nullen enthält. woraufhin ua'modulo m im P-Regisier 54 gespeichert wird.
Als Beispiel für diese Rechenoperationen wird im folgenden die Aufgabe der Berechnung von 7x7 modulo 23 behandelt. Nachstehend sind die aufeinanderfolgenden Inhalte der W-. A'- und P-Register angegeben, aus denen sich die Lösung für 7 χ 7 = 3 modulo 23 ergibt.
O H (in binä A' ρ 0 = 7
411 1 rer Form 0 + 7 = 21
■>> 2 0011! 1 •7+14 = 3 mod 23
3 00011 14 21+5
00001 5
00000 10
F i g. 4 zeigt den Aufbau eines Addierers 42 bzw. 55 zum Addieren von zwei Zahlen ρ und ζ mit k Bits. Diese Zahlen werden dem Addierer in Form einzelner Bits eingegeben, wobei das Bit der niedrigsten Größenord-
iiVaoam
W, mod m = w0
+ 4 w2aimod m +... + lk~ ist.
Um w mit a/ zu multiplizieren, sind das am weitesten rechts stehende Bit welches w0 des W-Registers 51 •»uiT* zuerst eir^e^eben wird un^ Has Vpi-Töir
ment wird zunächst auf 0 eingestellt. Die Verzögerung repräsentiert das binäre Übertragbit. Das UND-Gatter 61 bestimmt, ob das Obertragbit eine 1 sein soll, auf der Grundlage, daß p/und z, beide den Wert 1 haben, und das UND-Gatter 62 bestimmt, ob das Übertragbit eine 1 sein muß, auf der Basis der Tatsache, daß das vorherige Obertragbit eine 1 war, und daß eine der Größen p, und Zi den Wert 1 haben. Wenn eine dieser beiden Bedingungen zutrifft, liefert das Gatter 63 das Ausgangssignal 1, das eine Übertragung zur nächsten Stufe anzeigt Die beiden Exklusiv-ODER-Gatter 64 und 65 bestimmen das /-te Bit der Summe s, als die Modulo-2-Summe von p,und z.und das Übertragbit aus der vorausgehenden Stufe. Die Verzögerungseinrichtung 66 speichert das vorausgehende Ubertragbit
F i g. 5 zeigt den Aufbau eines !Comparators 44 bzw. 56 zum Vergleichen zweier Zahlen ρ und m. Die beiden Zahlen werden in Form einzelner Bits eingegeben, wobei das Bit der höchsten Ordnung als erstes zugeführt wird. Wenn keiner der beiden Ausgänge ρ < m und p> m getriggert worden ist, nachdem die letzten Bits pu und /Do eingegeben wurden, gilt p=m. Die erste Fig. 3 zu subtrahierenden Zahlen stets eine nicht negative Differenz ergeben, brauchen negative Differenzen nicht berücksichtigt zu werden. Die größere Zahl, d. h. der Minuend, wird mit ρ bezeichnet, während die kleinere Zahl, d. h. der Subtrahend, mit m bezeichnet wird. Beide Zahlen ρ und m werden der Subtrahiereinrichtung 57 seriell eingegeben, wobei das Bit der niedrigsten Ordnung zuerst eingegeben wird. UND- ι Gatter 81 und 83, ein ODER-Gatter 84 und ein exklusives ODER-Gatter 82 stellen fest, ob ein Borgen (negativer Übertrag) stattfindet. Ein Borgen erfolgt, wenn entweder p,=0 und m,= 1 oder p,= m, und wenn beim vorausgehenden Stadium ein Borgen stattgefunden hat. Die Verzögerungseinrichtung 85 speichert den vorausgegangenen Zustand des Borgens. Das /-te Bit der Differenz, d. h. dh wird als die Exklusiv-ODER- bzw. als Modulo-2-Differenz von pk m, und dem Borgebit berechnet. Das Ausgangssignal des Exklusiv-ODER-Gatters 82 bildet die Modulo-2-Differenz zwischen p, und m„ und das Exklusiv-ODER-Gatter 86 übernimmt die Modulo-2-Differenz hieraus zusammen mit dem vorausgegangenen Borgbit.
Die Entschlüsselungseinrichtung 16 ist in Fig. 7 dargestellt. Ihr werden der Schlüsseltext S und der Entschlüsselcode zugeführt, der aus w. mund a'besteht; sie hat die Aufgabe, χ zu berechnen.
Um χ zu berechnen, werden zuerst w und m einen Modulo-m-Inverter 91 eingegeben, der h- ' mod m berechnet. Dann wird der Modulo-m-Multiplizierer 92 benutzt, um 5'= w~ 1S mod m zu berechnen. Gemäß den Gleichungen (7) und (8) gilt die Gleichung S'= a' * χ, die sich leicht für χ lösen läßt. Der Komparator 93 vergleicht dann 5'mit a„' und entscheidet, daß Xn= 1 ist, wenn S'> a„' und daß Xn=O, wenn S'<an. Ist An=I, wird S' durch die Größe S'—a„' ersetzt, die durch die Subtrahiereinrichlung 94 berechnet wurde. Ist An = O, bleibt S' unverändert. Der Rechenvorgang wird für an-{ und An-; wiederholt und fortgesetzt, bis χ berechnet ist. Das /Register 95 wird anfänglich auf η eingestellt, und nach jedem Stadium des Entschlüsselvorgangs wird der Inhalt um 1 verkleinert, bis y=0, wodurch der Rechenvorgang beendet und die Berechnung von α angezeigt wird. Man kann entweder die Subtrahiereinrichtung 94 oder einen Abwärtszähler benutzen, um den Inhalt des /Registers 95 zu verkleinern. Der Komparator 9fi kann benutzt werden, um den Inhalt des/Registers 95 mit Null zu vergleichen und zu bestimmen, wann der Rechenvorgang beendet werden soll. Weitere Einzelheiten des Modulo-m-Multiplizierers 92 sind aus F i g. 3 ersichtlich; der Komparator 93 ist mit weiteren Einzelheiten in Fig.5 dargestellt, und F i g. 6 zeigt weitere Einzelheiten der Subtrahiereinrichtung 94. Der Modulo-m-Inverter 91 kann auf einer bekannten erweiterten Version des Algorithmus von Euclid basieren. (Siehe z.B. D. Knuth, »The Art of Computer Programming«, Bd. II, Addison-Wesley, 1969, Reading, Ma, S. 302 und S. 315, Aufgabe 15.) Gemäß der Beschreibung von Knuth benötigt man in der Praxis sechs Register, einen Komparator, eine Dividiereinrichtung und eine Subtrahiereinrichtung. Mit Ausnahme der Dividieremrichtung sind alle diese Einrichtungen bereits Triggerung eines der Ausgänge p<m und p> m bewirkt, daß die Vergleichsoperation beendet wird. Die beiden UND-Gatter 71 und 72 weisen jeweils einen invertierenden Eingang auf, wie es in Fig. 5 jeweils
■"> durch einen Kreis angedeutet ist.
Fig. 6 zeigt den Aufbau einer Subtrahiereinrichtung 57 zum Subtrahieren zweier Zahlen. Da die gemäß beschrieben worden.
Fig. 8 zeigt Einzelheiten einer Einrichtung zum
Ii Dividieren einer ganzen Zahl durch eine andere ganze Zahl v, um einen Quotienten q und einen Rest r so zu berechnen, daß 0 < r < v— 1 ist. Zuerst werden u und ν in Form binärer Zahlen dem {/-Register 101 bzw. dem V-Register 102 eingegeben. Dann wird v, d. h. der Inhalt
> des V-Registers, nach links verschoben, bis bei va_; eine 1, d.h. das am weitesten links stehende Bit des V-Registers 102 erscheint. Dieser Rechenvorgang läßt sich mit Hilfe des Komplements von v^-i durchführen, um den Verschiebungsregler eines Schieberegisters,
ο z. B. eines solchen der Bauart Signetics 2533, zu betätigen, das anfänglich auf Null gesetzt wurde. Der Inhalt des Aufwärts/Abwärts-Zählers 103 ist gleich der um 1 verminderten Anzahl der in dem Quotienten enthaltenen Bits.
ι Nach dieser Einleitung des Rechenvorgangs wird ν als Inhalt des V-Registers 102 mit dem Inhalt des {/-Registers 101 durch den Komparator 104 verglichen. Ist ν kleiner als u, ist q„, d. h. das höchstwertige Bit des Quotienten, gleich 0. und u bleibt unverändert. Ist ν
;<i kleiner oder gleich u, ist q„= 1, und u wird durch den Wert u— versetzt, der durch die Subtrahiereinrichtung 105 berechnet wird. In beiden Fällen wird ν um ein Bit nach rechts verschoben, und der Vergleich, ob ν größer ist als u, wird wiederholt, um qn-i, d. h. das nächste Bit
<-- des Quotienten, zu berechnen.
Dieser Rechenvorgang wird wiederholt, wobei der Inhalt des Aufwärts/Abwärts-Zählers 103 nach jedem Rechenschritt um 1 verkleinert wird, bis der Wert 0 erreicht ist. Sobald dies geschehen ist, ist der Quotient
4(1 vollständig, und der Rest r befindet sich im {/-Register 101.
Als Beispiel sei das Dividieren von 14 durch 4 behandelt, wobei man q=3 und r=2 erhält und wobei k=4 die Größe des Registers bezeichnet. Da U= 14 = 1110 und v=4 = 0100 in binärer Schreibweise ist, wird der Inhalt des V-Registers 101 nur einmal nach links verschoben, so daß man v=1000 erhält. Nach dieser Einleitung des Rechenvorgangs zeigt es sich, daß ν < u, so daß das erste Bit c?i des Quotienten den Wert 1
ν hat, und daß u durch u—v ersetzt wird: ν wird dadurch ersetzt, daß ν um ein Bit nach rechts verschoben wird, und der Aufwärts/Abwärts-Zähler 103 wird auf den Wert 0 gebracht. Hierdurch wird angezeigt daß das letzte Bit uo des Quotienten berechnet wird und daß sich nach dem soeben beschriebenen Rechenschritt der Rest r im {/-Register befindet Die nachstehende Folge von Registerinhalten erleichtert die Verfolgung dieser Rechenoperationen.
U V Zähler q.
1110 1000 1 1
0110 0100 0 1
65 0010 _ Ende
Es ist ersichtlich, daß c/=ll in binarer Form dem Ausdruck <7=3 gleichwertig ist und daß r=00!0 in
binärer Form dem Ausdruck r= 2 gleichwertig ist
Bei einem weiteren Verfahren zum Erzeugen eines Falltürtornister-Vektors a wird von der Tatsache Gebrauch gemacht, daß sich ein multiplikativer Tornister leicht lösen läßt, wenn die Vektoreingänge relative Primzahlen sind. Nimmt man an, daß a'=(6,11, 35, 43, 169) und daß ein Teilprodukt /»=2838, läßt sich leicht zeigen, daß P= 6* 11 *43, da 6, 11 und 43 die Größe P gleichmäßig unterteilen, was für 35 und 169 nicht gilt Um einen multiplikativen Tornister und einen additiven Tornister zu verwandeln, verwendet man Logarithmen. Damit man für beide Vektoren brauchbare Werte erhält, werden die Logarithmen über CF(m), d. h. das endliche Galois-Feld, mit m Elementen verwendet wobei m eine Primzahl ist Es ist auch möglich, Werte von m zu verwenden, die keine Primzahlen sind, doch werden die Rechenvorgänge hierbei etwas schwieriger.
Im folgenden wird ein kleines Beispiel behandelt Wählt man /7=4, /7?=257, a'=(2,3,5, 7) und die Basis der Logarithmen als b = 131, erhält man a = (80,183,81,195). Dies entspricht 13180=2 mod 257, 131183 = 3 mod 257 usw. Das Auffinden von Logarithmen über GF(m) ist relativ einfach, wenn m— 1 nur Kleine Primfaktoren enthält
Wenn man der Entschlüsselungseinrichtung 16 den Wert S= 183 + 81 =264 zuführt, arbeitet sie mit dem Entschlüsselungscode D, der sich aus m, a' und b zusammensetzt, um die folgende Berechnung durchzuführen:
5" = bsmodm (10)
= 131264 mod 257
= 15
= 3*5
.0 .1. .0
= α,*α2*α4
Dies bedeutet, daß χ = (0, 1, 1, 0). Der Grund hierfür besteht darin, daß
(H)
(12)
(13)
Es ist jedoch erforderlich, daß
ffa,<m
um zu gewährleisten, daß na'", mod m gleich na'", bei arithmetischer Schreibweise für die ganzen Zahlen ist
Der Mithörer 13 kennt den Versr.hlüsselungscode E, der durch den Vektor a gebildet wird, doch kennt er nicht den Entschlüsselungscode D, so daß er vor einer rechnerisch nicht durchführbaren Aufgabe steht.
Bei dem vorstehenden Beispiel handelte es sich wiederum um ein kleines Beispiel, das lediglich zur Veranschaulichung des Verfahrens dienen soll. Wählt man π =100, wenn jeder Wert von al eine zufällig gewählte Primzahl mit 100 Bits ist, würde m annähernd eine Länge von 10 000 Bits erhalten, um zu gewährleisten, daß die Gleichung (14) befriedigt wird. Zwar ist eine Datenerweiterung im Verhältnis von 100:1 in manchen Anwendungsfällen akzeptabel, z. B. bei der gesicherten Codeverteilung über einen ungesicherten Kanal, doch ist es wahrscheinlich nicht erforderlich, daß ein Gegner bezüglich des Wertes aj in diesem Ausmaß unsicher ist Es ist sogar möglich, die ersten π Primzahlen für a/ zu verwenden; in diesem Fall könnte man m auf eine Länge von bis zu 730 Bits verkürzen, wenn /J=IOO, und hierbei würde die Bedingung der Gleichung (14) immer noch erfüllt Somit besteht immer noch die Möglichkeit eines Vergleichs zwischen der
ι ο Sicherheit und der Datenerweiterung.
Bei dieser Ausführungsform ist die Verschlüsselungseinrichtung 15 in der gleichen Weise aufgebaut wie es in Fig.2 gezeigt und vorstehend beschrieben ist Die Entschlüsselungseinrichtung 16 der zweiten Ausführungsform ist in Fig.9 dargestellt Der Schlüsseltext S und Teile des Entschlüsselungscodes D, und zwar b und /n, werden durch den Potenzierer 111 verwendet, um P= 0s mod m zu berechnen. Gemäß den Gleichungen (12) bis (14) und dem beschriebenen Beispiel ist Pein Teilprodukt von fa), das ebenfalls einen Teil des Entschlüsselungscodas D bildet Die Dividiereinrichtung 112 teilt Pdurch al für /=1, 2,... η und führt nur den Rest /·, dem Komparator 113 zu. 1st /·,=0, wird P durch a/ gleichmäßig verteilt, und *,= 1. Ist ηΦΟ, ist Af1=O. Die DividiereinrichMng 112 kann in der aus Fig.8 ersichtlichen, bereits beschriebenen Weise aufgebaut sein. Der Komparator 113 kann der anhand von F i g. 5 gegebenen Beschreibung entsprechen, doch gibt es wirtschaftlichere Einrichtungen für den Vergleich mit 0.
Der Potenzierer 111 zum Potenzieren von b mit S-modulo-m kann als elektronische Schaltung nach Fig. 10 aufgebaut sein. In Fig. 10 ist der anfängliche Inhalt von drei Registern 121, 122 und 123 angegeben. Die binäre Darstellung von S(Sk\, s*-2... S\So) wird dem S-Register 121 eingegeben; dem R-Register 122 wird der Wert 1 eingegeben, und die binäre Darstellung von b wird dem B-Register 123 entsprechend /= 0 eingegeben. Die Anzahl der Bits k in jedem Register ist gleich der kleinsten ganzen Zahl, so daß 2*> m. Ist k= 200, können alle drei Register durch einen einzigen mit direktem Zugriff arbeitenden Speicher für 1024 Bits gebildet sein. Der Aufbau des Multiplizierers 124 zum Multiplizieren zweier Zahlen modulo m wurde bereits anhand von F i g. 3 beschrieben.
Wenn gemäß F i g. 10 das Bit der niedrigen Ordnung, welches ro des 5-Registers 121 enthält, gleich 1 ist, werden die Inhalte des R-Registers 122 und des B- Registers 123 modulo m multipliziert, und das Produkt, das ebenfalls eine Größe mit A: Bits ist, ersetzt den Inhalt des Ä-Registers 122. Ist * = 0, bleibt der Inhalt des Ä-Registers 122 unverändert In beiden Fällen wird der Inhalt des ß-Registers 123 dem Multiplizierer 124 zweimal eingegeben, so daß das Modulo-/n-Quadrat des Inhalts des ß-Registers 123 berechnet wird. Dieser Wert W2'+') ersetzt den Inhalt des ß-Registers 123. Der Inhalt des 5-Registers 121 wird um ein Bit nach rechts verschoben, und auf der linken Seite wird eine 0 eingesetzt, so daß der Inhalt jetzt Ost- iS*-2 · · · S2*i ist
Das Bit der niedrigen Ordnung, das S\ aus dem
bo S-Register 121 enthält, wird geprüft Ist es gleich 1, werden wie zuvor die Inhalte des Α-Registers 122 und des ß-Registers 123 modulo-m-multipliziert, und das Produkt ersetzt den Inhalt des Λ-Registers 122. Ist das Bit der niedrigen Ordnung gleich 0, bleibt der Inhalt des
b5 Λ-Registers 122 unverändert. In beiden Fällen wird der Inhalt des ß-Registers 123 durch das Modulo-m-Quadrat des vorherigen Inhalts ersetzt. Der Inhalt des S-Registers 121 wird um ein Bit nach rechts verschoben,
und am linken Ende wird eine O eingesetzt, so daß sich der Inhalt 0Os* -1,s*-2..-S3S2 ergibt.
Diese Rechenvorgänge werden fortgesetzt, bis das S-Register 121 nur Nullen enthält; an diesem Punkt wird der Wert von 0s modu'o m im /?-Register 122 gespeichert
Dieses Verfahren wird durch das folgende Beispiel erläutert. Wählt man τη = 23, findet man JSr= 5 aus2*>m. Ist b= 7 und S= 18, erhält man
bs = 718 = 1628413597910449
= 23(70800591213497)+ 18,
so daß & modulo m gleich 18 ist. Dieses einfache, jedoch langwierige Verfahren zum Berechnen von t? modulo m wird als Prüfverfahren verwendet, um zu zeigen, daß das Verfahren nach Fig. 10 das richtige Ergebnis liefert. Nachstehend sind die Inhalte des ^-Registers 122 und des B-Registers 123 in dezimaler Form angegeben, um das Verständnis zu erleichtern.
/ S (in binärer R 1 H
Torrn) 1
0 10010 3 7
1 01001 3 3
2 00100 3 9
3 00010 18 12
4 00001 6
5 00000 13
Primzahlen aus der Quelle 131 werden jeweils mit einem anderen Exponenten potenziert, der durch eine Zufallszahl e, aus der Schlüsselquelle 26 repräsentiert wird; dies geschieht mit Hilfe des Potenzierers 132, um pft für /= 1 bis η zu erzeugen. Der Multiplizierer 133 berechnet dann das Produkt sämtlicher Werte von pfh das durch
Die mit /=0 bezeichnete Reihe entspricht den ursprünglichen Inhalten der verschiedenen Register, d.h. 5=18, R= \ und ß=b = 7. Da, wie oben erlauten, das rechtsbündige Bit im 5-Register 121 gleich 0 ist. bleibt der Inhalt des /^-Registers 122 unverändert, der Inhalt des ß-Registers 123 wird durch das Modulo-23-Quadrat des vorherigen Inhalts
(72 = 49 = 2 χ 23 + 3 = 3 modulo 23)
ersetzt, der Inhalt des 5-Registers 121 wird um ein Bit nach rechts verschoben, und der Rechenvorgang wird fortgesetzt. Nur wenn /'= 1 bzw. 4 ist. ist das rechtsbündige Bit im 5-Register 121 gleich 1. so daß nur beim Übergang von / von 1 auf 2 und beim Übergang von /von 4 auf 5 der Inhalt des /^-Registers 122 durch RB modulo m ersetzt wird. 1st /=5, ist 5=0. so daß der Rechenvorgang abgeschlossen ist und sich das Ergebnis 18 im R-Register 122 befindet.
Es sei bemerkt, daß das gleiche Ergebnis 18 hier wie bei der einfachen Berechnung von 7l!t modulo 23 gewonnen wird, daß sich jedoch hier niemals große Zahlen ergeben.
Um das Rechenverfahren verständlich zu machen, sei bemerkt, daß das ß-Register 123 die Werte b, b-\ b4. bH und blb enthält, wenn /=0, 1. 2, 3 bzw. 4. und daß h^ = blbb2 ist, so daß nur diese beiden Werte multipliziert zu werden brauchen.
Einzelheiten des bei der zweiten Ausführungsform verwendeten Schlüsselgenerators 22 sind in Fig. 11 dargestellt. In der Quelle 131 wird eine Tabelle von η kleinen Primzahlen />,· erzeugt und gespeichert, wobei es sich bei dieser Quelle um einen Festwertspeicher handeln kann. Die Schlüsselquelle 26 erzeugt in der schon beschriebenen Weise Zufallszahlen c. Die kleinen dargestellt werden. Das Produkt sämtlicher Wert;
TT p
wird dann durch den Addierer 134 um 1 erhöht, um den Potenzwert von m zu erhalten. 1st es erwünscht, daß m eine Primzahl ist, kann man den Potenzwert von m auf seine Primzahleigenschaft mit Hilfe des Primzahlprüfers 135 prüfen.
Primzahlprüfer zum Feststellen, ob eine Zahl m eine Primzahl ist, wenn die Fakturisierung von m- 1 bekannt ist, wie es hier der Fall ist, wo
--1 = Up'·
sind in der Fachliteratur beschrieben. (Siehe z. B. D. Knuth, »The Art of Computer Programming«, Bd. II, Seminumerical Algorithms. S. 347 —48.) Wie dort beschrieben, benötigt der Primzahlenprüfer 135 nur eine Einrichtung zum Erheben verschiedener Zahlen zu verschiedenen Potenzen modulo m, wie es in Fig. 10 gezeigt ist. Wenn es sich zeigt, daß ein Potenzwert von m eine Primzahl ist, wird m durch den Generator nach Fig. 11 für den öffentlichen Schlüssel als variable Größe m ausgegeben. Die Elemente a, des Vektors a' können dann so gewählt werden, daß es sich um die η kleinen Primzahlen p, aus der Quelle 131 handelt.
Die Basis b der Logarithmen wird dann durch die Schlüsselquelle 26 als Zufallszahl gewählt.
Die Elemente des Vektors a werden durch den logat ithmischen Wandler 136 nach F i g. 11 als Logarithmen zur Basis b der Elemente des a'-V'ktors über GF(m) berechnet. Der Aufbau und die Wirkungsweise eines solchen logarithmischen Wandlers 136 sind nachstehend erläutert.
Wenn ρ eine Primzahl ist, gilt bekanntlich
= l(mod/7),l ^7<
(15)
Daher werden arithmetische Operationen bei dem Exponenten modulo />-1 und nicht modulo ρ durchgeführt. Dies bedeutet, daß
'(mod/))
(16)
Dies gilt für alle ganzen Zahlen x.
Der Algorithmus zum Berechnen von Logarithmen mod ρ wird am besten verständlich, wenn man zuerst den Sonderfall p—2"4 ' betrachtet. Es stehen die Werte P und y zur Verfügung, wobei tx ein primitives Element von CF(p)darstellt, und ν muß so gefunden werden, daß \ = "(mod p). Man kann annehmen, daß 0<.\<p-2. da
χ=ρ— 1 von χ=0 nicht zu unterscheiden ist.
Ist p=2"+l, läßt sich χ leicht ermitteln, indem man die binäre Reihe (bo,... bn-1) von ^bestimmt
Das niedrigstwertige Bit bo von χ wird dadurch ermittelt, daß ymit (p- l)/2 = 2"-' potenziert wird, und daß die nachstehende Regel angewendet wird.
gegeben, berechnet der Algorithmus χ in der nachstehenden Weise; hierzu sei bemerkt, daß 0 = *-' =6 ist, da 3x6=18 = 1, mod 17.
y^un(modp) =
■ -l./>o- 1
(17)
Diese Tatsache ergibt sich, wenn man feststellt, daß dann, wenn α primitiv ist, die folgende Gleichung gilt:
(18)
(19)
;' Z ß in W A/
0 10 6 8 16 1
1 9 2 4 16 1
2 1 4 2 1 0
3 1 16 1 1 0
4 1 '/2
und daß daher
y/>-i)/2 = (ff.v)</>-i)/2 _ (_l)v(modp)
Das nächste Bit in der Erweiterung von χ wird dann dadurch bestimmt, daß man die Gleichung
Auf diese Weise ergibt sich, daß χ=2° +2" =3. Dies ist richtig, da α3 = 33 = 27 = 10 (mod 17).
Nunmehr wird dieser Algorithmus verallgemeinert und bei beliebig gewählten Primzahlen ρ angewendet Als Primzahlenfekturisierung von p—\ wird der Ausdruck
ζ = ya'h" = aM(mod/>)
gelten läßt, wobei
„-1
(20)
(21)
-I = pVp?...pK,P,<P,+ \
(27)
gewählt, indem die Werte von p, klare Primzahlen und die Werte von n, positive ganze Zahlen sind. Die Werte von χ (mod p"') werden für / = 1,... Ar bestimmt, und die Ergebnisse werden mit Hilfe des chinesischen Resttheorems kombiniert, so daß man die G!eichung
Offensichtlich ist x, nur dann ein Vielfaches von 4, wenn bt =0. Ist b\ = 1, ist X\ durch 2, jedoch nicht durch 4 teilbar. Bei der Fortsetzung der vorstehenden Schlußfolgerungen ergibt sich
-(/>ll/4(mod )=
(22)
Die übrigen Bits von χ werden auf ähnliche Weise ermittelt. Dieser Algorithmus ist in Fig. 12 in einem Fließbild zusammengefaßt.
Um dieses Fließbild verständlich zu machen, sei bemerkt, daß für den Anfang der /-ten Schleife die folgenden Gleichungen
xjmod JIp"; | = x(modp-l) = χ (28)
ι- I
erhält, da 0<x<p—2. Das chinesische Resttheorem kann mit Rechenoperationen der Form OfAr Iog2/?) und Bits der Form 0(k\og2p) im Speicher durchgeführt werden. Hierbei wird eine Modulo-p-Multiplikation als eine Rechenoperation gezählt. v
Im folgenden wird eine Erweiterung bzw. Reihe für χ (mod pi",) betrachtet.
x(moup") =
(29)
j =■- u
m = (p-\)/2'*]
und
ζ = ax>{moap)
gelten, in denen
it-1
χ _ y £ 2>
(23)
(24)
(25)
Hierin ist 0 ^ bj^p, -1.
Um den niedrigstwertigen Koeffizienten ba zu ermitteln, wird y mit (/?-l)/p, potenziert.
■-,0 Hierin ist
= y* = (y,)1»(modp) (30)
(mod p)
(31)
Wenn man ζ mit m potenziert, erhält man somit
z"' = α1*'"» = a""u'2 ■ (χ,Ιΐ) = (-l)V2' = (-DMmod,) . (26)
so daß z"= 1 (mod p), und zwar nur dann, wenn ö, = 0, und daß ^= -1 (mod pjist, wenn b,= \.
Als Beispiel wird im folgenden der Fall betrachtet, daß p=17 = 24 + l. Dann ist a = 3 primitiv, wogegen λ = 2 nicht Drimitiv ist,da 28 = 256 = 1 (mod 17). Ist y= 10
6o d.h. eine primitive p,-te Wurzel aus 1. Somit gibt es nur P1 mögliche Werte rüryMI//)' (mod p), und der resultierende Wert bestimmt bü unzweideutig.
Um die nächste Ziffer ft, in der Reihe für χ (mod p"') auf der Basis p, zu ermitteln, wird die Gleichung
= y' a
gewählt; hierin ist
(32)
(33)
j-\
Durch Potenzieren von ζ mit (p-\)/pj erhält man jetzt
(34)
Wiederum gibt es nur/»,mögliche Werte von zfp-
und dieser Wert bestimmt b\. Dieses Verfahren wird fortgesetzt, um sämtliche Koeffizienten bj zu ermitteln.
Das in Fig. 13 gegebene Fließbild faßt den Algorithmus zum Berechnen der Koeffizienten bj der Reihe (29) zusammen. Dieser Algorithmus wird jt-mal benutzt, um χ (mod pf) für /= 1, 2, ... k zu berechnen, und diese Ergebnisse werden nach dem chinesischen Restheorem kombiniert, so daß man χ erhält. Die Funktion g{w) in Fig. 13 ist durch die folgende Gleichung bestimmt:
yf·«1··' = w(modp\0<g,(w)^p-\
(35)
hierin ist y, durch die Gleichung (31) bestimmt.
Wenn alle Primfaktoren (pjl·= 1 von p-1 klein sind, lassen sich die Funktionen g(w) leicht als Tabellen darstellen, und die Berechnung eines Logarithmus über GF(p) erfordert O(log2p)2 Rechenoperationen und nur einen minimalen Speicheraufwand für die Tabellen für g(w). Das vorherrschende rechnerische Erfordernis ist die Berechnung von w=z", für die man 0(\og2p) Rechenoperationen benötigt. Diese Schleife wird
Σ «,-mal
/» 1
durchlaufen, und wenn alle Werte von p, klein sind, hat
annähernd den Wert Iog2p. Wenn p-\ nur kleine Primfaktoren enthält, ist es daher leicht möglich, Logarithmen über GF(p)zn berechnen.
Als Beispiel sei der Fall betrachtet, daß p= 19, =2 und /=10. Dann ist p-1 =2 · 32 undpi =2, η ι = I1 P2 = 3 und n2 = 2. Um χ (mod p\ n\) — χ (mod 2) zu berechnen, ist es erforderlich,
/P-IVp1 =«9 = 512 = 18(mod 19)
so zu berechnen, daß fei = 1 und χ (mod 2) = 2° = 1, d. h. daß χ ungeradzahlig ist. Hierauf wird erneut nach dem Fließbild in F i g. 13 für P2 = 3 /72 = 2 wie folgt vorgegangen, wobei ^= 10, da 2 χ 10 = 20= 1 mod 19; ferner gilt y2 = ίχ6 = 7 unc] 7° = 1, 7'=7 sowie 72=11 (mod 19), so daß man#(l) = 0,gJJ)= 1 undgi\ 1) = 2 erhält.
10 10 6
12 12 2
18 18
11
so daß χ (mod ρΛ) = χ (mod 9) = 2 · 3°+2 · 3'=8 ist.
Die Tatsache, daß χ (mod 2) = 1 und daß χ (mod 9) = 8, bedeutet, daß χ (mod 18)= 17.(Es ist entweder möglich, das chinesische Resttherorem anzuwenden oder sich klar zu machen, daß x=8 oder x=8+ 9= 17 ist und daß nur 17 ungeradzahlig ist) Bei einer Prüfung läßt sich feststellen, daß 217=131 072 = 10 (mod 19) ist, so daß
Es ist ersichtlich, daß man als logarithmischen Wandler einen mod-p-Inverter benötigt, um /? = ac-> (mod p) zu berechnen, wie erwähnt, ist dies möglich, wenn man die erweiterte Form des Algorithmus von
ίο Euclid anwendet, der die Benutzung der Dividiereinrichtung nach F i g. 8, des Multiplizierers nach F i g. 3 und des Komparator nach Fig.5 bedingt. In Verbindung mit dem logarithmischen Wandler wird auch die Dividiereinrichtung nach F i g. 8 benötigt, um aufeinanderfolgende Werte von π zu berechnen, sowie der Addierer nach Fig.4 zum Vergrößern von j, der Modulo-p-Potenzierer nach Fig. 10 zum Berechnen von Wund /?*,■ sowie zur Vorberechnung der Tabelle für g(W), der Modulo-p-Multiplizierer nach Fig.3 zum Berechnen aufeinanderfolgender Werte von Z sowie der Komparator nach Fig.5 zum Feststellen, wann j- Nj. Der Betrieb des logarithmischen Wandlers nach dem chinesischen Resttheorem erfordert nur die Benutzung von Einrichtungen, die bereits beschrieben wurden, und zwar des Multiplizierers nach F i g. 3 und eines Modulo-m-Inverters.
Bei dem zuerst genannten Verfahren zum Erzeugen eines Falltürtornister-Vektors wurde ein sehr schwieriges Tornislerprobiem, bei dem ein Vektor a eine Rolle
jo spielt, in ein sehr einfaches und leicht zu lösendes Tornisterproblem verwandelt, bei dem die Größe a' verwendet wird, und zwar mit Hilfe der nachstehenden Transformation:
a, = l/w*e,-modffi
(36)
Ein Tornisterproblem mit der Größe a konnte gelöst werden, da es sich in ein anderes Tornisterproblem verwandeln ließ, das für die Größe a' gilt, und das lösbar war. Es sei jedoch bemerkt, daß es keine Rolle spielt, weshalb Tornisterprobleme für die Größe a' lösbar sind. Statt die Forderung zu stellen, daß a' die Gleichung (1) befriedigt, könnte man somit fordern, daß sich a' in ein anderes Tornisterproblem umwandeln läßt, das für a" gilt, wobei die nachstehende Transformationsgleichung angewendet wird.
d, = 1/H»'*ajmodm'
(37)
-,o Hierin befriedigt a" die Gleichung (1), oder die Aufgabe läßt sich auf andere Weise leicht lösen. Nachdem die Transformalion zweimal durchgeführt worden ist, erweist es sich nicht als schwierig, die Transformation ein drittes Mal durchzuführen; vielmehr ist ersichtlich, daß man diesen Rechenvorgang beliebig oft schrittweise durchführen kann.
Bei jeder weiteren Transformation wird der Aufbau des öffentlich bekannten Vektors a ständig weiter verdunkelt. Praktisch wird das einfache Tornisterpro-
bo blem dadurch verschlüsselt, daß wiederholt eine Transformation angewendet wird, bei welcher der grundsätzliche Aufbau des Problems erhalten bleibt. Bei dem Endergebnis a handelt es sich offensichtlich um eine Sammlung von Zufallszahlen. Hierbei wird die Talsache, daß sich das Problem leicht lösen läßt, völlig unerkennbar gemacht.
Der ursprüngliche, leicht zu lösende Tornistervektor kann beliebigen Bedingungen entsprechen, z. B. der
Gleichung (1), die gewährleistet, daß sich eine Lösung leicht finden läßt. Beispielsweise könnte es sich um ein multiplikatives Falltürtornister-Problem handeln. Auf diese Weise ist es möglich, beide Falltürtornister-Verfahren zu einem einzigen Verfahren zu kombinieren, bei dem sich die Lösung vermutlich noch schwerer finden läßt.
Es ist wichtig, die Wachstumsgeschwindigkeit von a zu berücksichtigen, denn sie bestimmt die Datenerweiterung, die sich bei der Übermittlung des n-dimensionalen Vektors λ- als der größere Wert S ergibt. Die Wachstumsgeschwindigkeit richtet sich nach dem Verfahren zum Wählen der Zahlen, doch wird bei einem sich in vertretbaren Grenzen haltenden Aufbau, bei dem /ι= 100, jeder Wert a,höchstens um 7 Bits größer sein als der entsprechende Wert al, jeder Wert von al wird um höchstens 7 Bits größer sein als al' usw. Jede der aufeinanderfolgenden Transformationsstufen vergrößert den Umfang des Problems nur um einen kleinen festen Betrag. Wird die Transformation 20mal wiederholt, werden jedem Wert von a, höchstens 140 Bits hinzugefügt. Wenn anfänglich jeder Wert von a, z. B. 200 Bits enthält, brauchen diese Werte nach 20 Transformationsstufen nur 340 Bits zu enthalten. Der Tornistervektor wird dann für n= 100 höchstens einen Umfang von 100 χ 340 = 34 Kilobits haben.
Die gebräuchlichen digitalen Authentisiereinrichtungen bieten zwar einen Schutz gegen unbefugte Dritte bzw. gegen Fälschungen, doch ermöglichen sie es nicht, Streitigkeiten zwischen dem Sender 11 und dem Empfänger 12 bezüglich der Frage zu schlichten, welche Nachricht, wenn überhaupt, abgesandt wurde. Eine wahre bzw. echte digitale Unterschrift wird auch als Quittung bezeichnet, da sie es dem Empfänger 12 ermöglicht, nachzuweisen, daß ihm über den Sender 11 eine bestimmte Nachricht M übermittelt wurde. Um solche Quittungen zu erzeugen, kann man Falltürtornister in der nachstehend beschriebenen Weise anwenden.
Wenn jede Nachricht M innerhalb eines großen festen Bereichs ein inverses Bild χ hätte, könnte man dieses Bild verwenden, um Quittungen zu erstellen. Hierbei erzeugt der Sender 11 Tornistervektoren fe'und //derart, daß ft'cin geheimer Schlüssel ist, z. B. ein leicht zu lösender Tornistervektor, und daß b ein öffentlicher Schlüssel ist, wie er sich aus der nachstehenden Beziehung ergibt:
b = n*/i modm
(38)
M = \/w*Mmodm
]modm
xJ 6, modm
(39)
(40)
(41)
(42)
Der Empfänger 12 konnte leicht M aus χ berechnen, und er könnte durch Prüfen eines Datum/Zeit-Feldes (oder einer anderen Redundanz in M) feststellen, ob die Nachricht M authentisch war. Da es dem Empfänger 12 nicht möglich wäre, ein solches χ zu erzeugen, weil
Der Vektor b wird dann entweder in eine öffentlich zugängliche Kartei eingebracht oder zum Empfanget 12 übermittelt. Hat der Sender 11 die Absicht, eine Quittung für die N achricht M zu erzeugen, würde er χ so berechnen und übermitteln, daß b * x=M Der Sender 11 erzeugt χ für die gewünschte Nachricht M dadurch, daß das leicht zu lösende Tornisterproblem gelöst wird.
hierfür b' erforderlich ist, das nur dem Sender 11 zur Verfügung steht, bewahrt der Empfänger 12 den Wert a als Beweis dafür auf, daß die Nachricht M durch den Sender 11 übermittelt wurde.
Man kann dieses Verfahren zum Erzeugen von Quittungen so abändern, daß es sich auch dann anwenden läßt, wenn die Dichte der Lösungen, d. h. der Anteil von Nachrichten M zwischen 0 und £b„ die Lösungen für b* x=M aufweisen, kleiner ist als 1, vorausgesetzt, daß dieser Bruchteil nicht zu klein ist. Die Nachricht M wird als Klartext gesendet oder in der beschriebenen Weise verschlüsselt, wenn ein Mithören durch einen Horcher zu befürchten ist, und hierbei wird eine Folge von miteinander in Beziehung stehenden Einweg-Funklionen y\ = Fy(M), yi = Fi(M)... berechnet. Der Sender 11 sucht dann ein inverses Bild χ für yu y2 usw. zu erhalten, bis ein solches Bild gefunden wird, welches dem entsprechenden * für M als Quittung nachgestellt wird. Der Empfänger 12 berechnet M'—b* χ und prüft, daß M'=yl, wobei /innerhalb eines annehmbaren Bereichs liegt.
Die Folge von Einweg-Funktionen kann dem folgenden einfachen Ausdruck entsprechen:
F1[M) = F[M) +i
F1[M) = F[M+D
(43)
(44)
Hierin ist F(*) eine Einweg-Funktion. Es ist erforderlich, daß der Bereich von F(*) mindestens 2100 Werte hat, um beim Bestehen einer Fälschungsabsicht alle Probierversuche zum Scheitern zu bringen.
Es ist auch möglich, die Nachricht und die Quittung zu einer einzigen Meldungs- und Quittungsangabe zu kombinieren. Wenn der annehmbare Bereich für / zwischen 0 und 2'- 1 liegt, und wenn die Nachricht eine Länge von / Bits hat, kann eine einzige Zahl mit einer Länge von ]+l Bits sowohl die Nachricht als auch / darstellen. Der Sender 11 führt eine Prüfung bezüglich einer Lösung für b* A = SfUr jeden der 2' Werte von S durch, die sich ergeben, wenn z. B. die ersten / Bits von S gleich der Nachricht gesetzt werden, und wenn die letzten / Bits von 5 unabhängig bzw. nicht beschränkt sind. Die erste solche Lösung Α-wird zum Empfänger 12 als Nachrichtenquittung übermittelt. Der Empfänger 12 gewinnt 5 zurück, indem er das innere Produkt des öffentlichen Schlüssels b und die Nachrichten-Quittung-Kombination χ berechnet und der ersten J Bits von S zurückbehält, die auf diese Weise gewonnen wurden. Die Authentizität der Nachricht erhält ihren Gültigkcitsbewciä durch das Vorhandensein einer geeigneten Redundanz in der Nachricht in einer natürlichen Sprache, z. B. der englichen Sprache, ausgedrückt ist, oder durch eine künstliche Redundanz, z. B. die Beifügung eines Datum/Zeit-Feldes zu der Nachricht
Der Begriff »Redundanz« wird hier im Sinne dei Informationstheorie (Claude E. Shannon, »The Mathematical Theory of Communication«, Bell Systerr Technical Journal, Bd. 27, S. 379 und S. 623, 1948) unc der Komplexitätstheorie (Gregory J. Chaitin, »On th< Length of Programs for Computing Finite Binan Sequences«, Journal of the Association for Computing Machinery, Bd. 13, S. 457, 1966) verwendet, um die Struktur (Abweichung von der vollständigen Zufällig keit und Unvorhersehbarkeit) einer Nachricht zi messen. Eine Nachrichtenquelle weist nur dann kein( Redundanz auf, wenn alle Schriftzeichen mit de gleichen Wahrscheinlichkeit auftreten. Wenn es möglicl
ist, die Zeichen der Nachricht mit einer über der Zufälligkeit liegenden Erfolgsrate zu raten, weist die Quelle eine Redundanz auf, und die Rate, mit welcher ein hypothetischer Fehler sein Vermögen anwachsen lassen kann, ist das quantitative Maß der Redundanz. (Thomas M. Cover und Roger C. King, »A Convergent Gambling Estimate of the Entropy of English«, Technical Report Nr. 22, Statistics Department, Stanford University, 1. November 1976.) Jedem Menschen ist es ohne weiteres möglich, eine Nachricht dadurch gültig zu machen, daß eine Redundanzprüfung durchgeführt wird, z. B. dadurch, daß festgestellt wird, ob die Nachricht in einem grammatisch richtigen Englisch abgefaßt ist. Durch Simulieren der Spielsituation ist es mit Hilfe einer Maschine möglich, festzustellen, ob eine Nachricht die Redundanz aufweist, welche der beanspruchten Quelle zukommt.
Es stehen zahlreiche Verfahren zur Verfügung, um diese Ausführungsform der Erfindung zu verwirklichen. Ein Teil des Entzifferungsschlüssels D könnte öffentlich bekannt sein, statt geheimgehalten zu werden, vorausgesetzt, daß der Teil von D, der nicht öffentlich zugänglich ist, den Mithörer 13 daran hindert, die Klartextnachricht A'zurückzugewinnen.
Bei der vorstehend beschriebenen Ausführungsform lassen sich Abänderungen vornehmen. Beispielsweise ist es in manchen Anwendungsfällen vorteilhaft, dafür zu sorgen, daß der /-te Empfänger des Systems einen Falltürtornister-Vektor a>'> in der beschriebenen Weise erzeugt, und daß der Vektor oder eine abgekürzte Darstellung des Vektors einer öffentlichen Kartei bzw. einem Adreßbuch eingegeben wird. Wenn dann ein Absender den Wunsch hat, einen zugriffssicheren Kanal festzulegen, benutzt er sf'i als Verschlüsselungscode zur Übermittlung der Nachricht zum /-ten Empfänger. Der hierbei erzielte Vorteil besteht darin, daß es dem /-ten Empfänger dann, wenn er seine Identität gegenüber dem System durch die Benutzung seines Führerscheins, eines Fingerabdrucks od. dgl. nachgewiesen hat, möglich ist, seine Identität gegenüber dem Sender dadurch nachzuweisen, daß er befähigt ist, Daten zu entschlüsseln, die mit dem Verschlüsselungscode af'i verschlüsselt worden sind.
Hier/u ~i Matt

Claims (3)

Patentansprüche:
1. Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenüber- i ti agungskanal zwischen Sender und Empfänger, dadurch gekennzeichnet, daß im Empfänger ein öffentlicher Verschlüsselungscode erzeugt wird, daß im Empfänger ein auf den öffentlichen Verschlüsselungscode bezogener, geheimer Ent- i» schlüsselungscode erzeugt wird, der auf rechnerischem Weg nicht aus dem öffentlichen Verschlüsselungscode herleitbar ist, daß der öffentliche Verschlüsselungscode vom Empfänger zum Sender übermittelt wird, daß die Nachricht am Sender mit dem öffentlichen Verschlüsselungscode verschlüsselt wird, daß die verschlüsselte Nachricht durch eine Verschlüsselungstransformation derart erzeugt wird, daß es unmöglich ist, die Verschlüsselungstransformation auf rechnerischem Weg umzukeh- ren, ohne daß der geheime Entschlüsselungscode zur Verfügung steht, daß die verschlüsselte Nachricht vom Sender zum Empfänger übermittelt wird und daß die verschlüsselte Nachricht am Empfänger mit Hilfe des geheimen Entschlüsselungscodes transfor- 2> miert wird, um die Nachricht zu erzeugen.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Identität des Empfängers gegenüber dem Sender durch die Fähigkeit des Empfängers, die verschlüsselte Nachricht zu entschlüsseln, authentisiert wird.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß zum Umkehren der Verschlüsselungstransformation
S' = \/w*Smodm
(* = Vektorprodukt)
berechnet wird, daß zum Erzeugen der Nachricht x, gleich dem ganzzahligen Teil von dessen Elemente für / = 1, 2,... η durch den Ausdruck
DE2843583A 1977-10-06 1978-10-05 Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal Expired DE2843583C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/839,939 US4218582A (en) 1977-10-06 1977-10-06 Public key cryptographic apparatus and method

Publications (2)

Publication Number Publication Date
DE2843583A1 DE2843583A1 (de) 1979-05-10
DE2843583C2 true DE2843583C2 (de) 1982-06-03

Family

ID=25281034

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2843583A Expired DE2843583C2 (de) 1977-10-06 1978-10-05 Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal

Country Status (13)

Country Link
US (1) US4218582A (de)
JP (1) JPS5950068B2 (de)
AU (1) AU519184B2 (de)
BE (1) BE871039A (de)
CA (1) CA1128159A (de)
CH (1) CH634161A5 (de)
DE (1) DE2843583C2 (de)
ES (1) ES474539A1 (de)
FR (1) FR2405532B1 (de)
GB (1) GB2006580B (de)
IT (1) IT1099780B (de)
NL (1) NL7810063A (de)
SE (1) SE439225B (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3439120A1 (de) * 1984-10-25 1986-05-07 Philips Kommunikations Industrie AG, 8500 Nürnberg Verfahren zur identifizierung einer teilnehmerstation eines fernmeldenetzes
DE19648824A1 (de) * 1996-11-26 1998-05-28 Alsthom Cge Alcatel Verfahren zum gesicherten Nachrichtenaustausch bei Massendiensten, sowie Teilnehmereinrichtung und Diensteanbietereinrichtung hierfür

Families Citing this family (401)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4351982A (en) * 1980-12-15 1982-09-28 Racal-Milgo, Inc. RSA Public-key data encryption system having large random prime number generating microprocessor or the like
JPS57132449A (en) * 1981-02-07 1982-08-16 Masahiro Yagisawa Encrypter and decoder realizing public cypher key system
US4399323A (en) * 1981-02-09 1983-08-16 Bell Telephone Laboratories, Incorporated Fast real-time public key cryptography
US4471164A (en) * 1981-10-13 1984-09-11 At&T Bell Laboratories Stream cipher operation using public key cryptosystem
US4670857A (en) * 1981-10-26 1987-06-02 Rackman Michael I Cartridge-controlled system whose use is limited to authorized cartridges
US4503287A (en) * 1981-11-23 1985-03-05 Analytics, Inc. Two-tiered communication security employing asymmetric session keys
EP0085130A1 (de) * 1982-02-02 1983-08-10 Omnet Associates Verfahren und Einrichtung zur Aufrechterhaltung der Geheimhaltung von durch öffentliche Übertragung übermittelten Nachrichten
NL8201077A (nl) * 1982-03-16 1983-10-17 Philips Nv Kommunikatiesysteem, bevattende een centrale dataverwerkende inrichting, toegangsstations en externe stations, waarbij een kryptografische kontrole is voorzien op vervalsing van een extern station, alsmede externe stations voor gebruik in zo een kommunikatiesysteem.
US4668103A (en) * 1982-04-30 1987-05-26 Wilson William J Polygraphic encryption-decryption communications system
US4757468A (en) * 1982-09-22 1988-07-12 Intel Corporation Authenticated read-only memory
JPS59226935A (ja) * 1983-06-01 1984-12-20 アメリカン・エクスプレス・カンパニ− 携帯用情報カ−ドの保護装置
US4658093A (en) * 1983-07-11 1987-04-14 Hellman Martin E Software distribution system
US4759063A (en) * 1983-08-22 1988-07-19 Chaum David L Blind signature systems
DK152239C (da) * 1983-12-30 1988-07-04 Sp Radio As Fremgangsmaade til kryptografisk overfoering af talesignaler og kommunikationsstation til udoevelse af fremgangsmaaden
US4625076A (en) * 1984-03-19 1986-11-25 Nippon Telegraph & Telephone Public Corporation Signed document transmission system
US4633036A (en) * 1984-05-31 1986-12-30 Martin E. Hellman Method and apparatus for use in public-key data encryption system
JPS6194281A (ja) * 1984-10-15 1986-05-13 Matsushita Electric Ind Co Ltd ヘツド移送装置
US4860128A (en) * 1985-04-24 1989-08-22 Nintendo Co., Ltd. Recordable data device having identification symbols formed thereon and cooperating data processing system having registering symbols
CA1270339A (en) * 1985-06-24 1990-06-12 Katsuya Nakagawa System for determining a truth of software in an information processing apparatus
USRE34161E (en) * 1985-10-04 1993-01-12 Nintendo Company Limited Memory cartridge and information processor unit using such cartridge
JPH074449B2 (ja) * 1985-10-04 1995-01-25 任天堂株式会社 ゲ−ム機用カ−トリツジとそれを用いるゲ−ム機
JPS62260244A (ja) * 1986-05-06 1987-11-12 Nintendo Co Ltd メモリカ−トリツジ
US5226136A (en) * 1986-05-06 1993-07-06 Nintendo Company Limited Memory cartridge bank selecting apparatus
US4731841A (en) * 1986-06-16 1988-03-15 Applied Information Technologies Research Center Field initialized authentication system for protective security of electronic information networks
EP0257585B1 (de) * 1986-08-22 1992-11-25 Nec Corporation Schlüsselverteilungsverfahren
EP0566215B1 (de) * 1986-09-30 1996-11-20 Canon Kabushiki Kaisha Fehlerkorrekturgerät
CA1330596C (en) * 1986-11-19 1994-07-05 Yoshiaki Nakanishi Memory cartridge and data processing apparatus
US4891781A (en) * 1987-03-04 1990-01-02 Cylink Corporation Modulo arithmetic processor chip
US4841570A (en) * 1987-05-11 1989-06-20 The United States Of America As Represented By The United States Department Of Energy One-way transformation of information
US4827507A (en) * 1987-06-19 1989-05-02 Motorola, Inc. Duplex analog scrambler
US4881264A (en) * 1987-07-30 1989-11-14 Merkle Ralph C Digital signature system and method based on a conventional encryption function
US4811377A (en) * 1987-07-31 1989-03-07 Motorola, Inc. Secure transfer of radio specific data
JP2710316B2 (ja) * 1987-08-26 1998-02-10 任天堂株式会社 パスワード作成装置およびパスワード作成装置を用いたゲーム機
US5214702A (en) * 1988-02-12 1993-05-25 Fischer Addison M Public key/signature cryptosystem with enhanced digital signature certification
JP2683022B2 (ja) * 1988-04-13 1997-11-26 株式会社日立製作所 データ秘匿方式
US5054066A (en) * 1988-11-16 1991-10-01 Grumman Corporation Error correcting public key cryptographic method and program
US4991210A (en) * 1989-05-04 1991-02-05 David Chaum Unpredictable blind signature systems
US4996711A (en) * 1989-06-21 1991-02-26 Chaum David L Selected-exponent signature systems
US5189700A (en) * 1989-07-05 1993-02-23 Blandford Robert R Devices to (1) supply authenticated time and (2) time stamp and authenticate digital documents
US4964164A (en) * 1989-08-07 1990-10-16 Algorithmic Research, Ltd. RSA computation method for efficient batch processing
JP2606419B2 (ja) * 1989-08-07 1997-05-07 松下電器産業株式会社 暗号通信システムと暗号通信方法
US5537593A (en) * 1990-02-12 1996-07-16 Fmc Corporation Method for solving enumerative search problems using message passing on parallel computers
US5623547A (en) * 1990-04-12 1997-04-22 Jonhig Limited Value transfer system
US5210710A (en) * 1990-10-17 1993-05-11 Cylink Corporation Modulo arithmetic processor chip
US5073934A (en) * 1990-10-24 1991-12-17 International Business Machines Corporation Method and apparatus for controlling the use of a public key, based on the level of import integrity for the key
US5231668A (en) * 1991-07-26 1993-07-27 The United States Of America, As Represented By The Secretary Of Commerce Digital signature algorithm
US5204901A (en) * 1991-08-01 1993-04-20 General Electric Company Public key cryptographic mechanism
US5142578A (en) * 1991-08-22 1992-08-25 International Business Machines Corporation Hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
US5200999A (en) * 1991-09-27 1993-04-06 International Business Machines Corporation Public key cryptosystem key management based on control vectors
US5201000A (en) * 1991-09-27 1993-04-06 International Business Machines Corporation Method for generating public and private key pairs without using a passphrase
NZ240019A (en) * 1991-09-30 1996-04-26 Peter John Smith Public key encrypted communication with non-multiplicative cipher
US5265164A (en) * 1991-10-31 1993-11-23 International Business Machines Corporation Cryptographic facility environment backup/restore and replication in a public key cryptosystem
US5164988A (en) * 1991-10-31 1992-11-17 International Business Machines Corporation Method to establish and enforce a network cryptographic security policy in a public key cryptosystem
US5453601A (en) * 1991-11-15 1995-09-26 Citibank, N.A. Electronic-monetary system
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US5297206A (en) * 1992-03-19 1994-03-22 Orton Glenn A Cryptographic method for communication and electronic signatures
US5313521A (en) * 1992-04-15 1994-05-17 Fujitsu Limited Key distribution protocol for file transfer in the local area network
CA2073495C (en) * 1992-07-08 1999-01-12 Michael Wright Option selection and control
US5301247A (en) * 1992-07-23 1994-04-05 Crest Industries, Inc. Method for ensuring secure communications
US5222136A (en) * 1992-07-23 1993-06-22 Crest Industries, Inc. Encrypted communication system
US5237611A (en) * 1992-07-23 1993-08-17 Crest Industries, Inc. Encryption/decryption apparatus with non-accessible table of keys
FR2700430B1 (fr) * 1992-12-30 1995-02-10 Jacques Stern Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification et dispositif pour sa mise en Óoeuvre.
US5369707A (en) * 1993-01-27 1994-11-29 Tecsec Incorporated Secure network method and apparatus
US5375169A (en) * 1993-05-28 1994-12-20 Tecsec, Incorporated Cryptographic key management method and apparatus
US5414771A (en) * 1993-07-13 1995-05-09 Mrj, Inc. System and method for the creation of random sequences and for the cryptographic protection of communications
JP3053527B2 (ja) * 1993-07-30 2000-06-19 インターナショナル・ビジネス・マシーンズ・コーポレイション パスワードを有効化する方法及び装置、パスワードを生成し且つ予備的に有効化する方法及び装置、認証コードを使用して資源のアクセスを制御する方法及び装置
US5499295A (en) * 1993-08-31 1996-03-12 Ericsson Inc. Method and apparatus for feature authorization and software copy protection in RF communications devices
US5497422A (en) * 1993-09-30 1996-03-05 Apple Computer, Inc. Message protection mechanism and graphical user interface therefor
US5369702A (en) * 1993-10-18 1994-11-29 Tecsec Incorporated Distributed cryptographic object method
US5680452A (en) * 1993-10-18 1997-10-21 Tecsec Inc. Distributed cryptographic object method
US5371794A (en) * 1993-11-02 1994-12-06 Sun Microsystems, Inc. Method and apparatus for privacy and authentication in wireless networks
US5455862A (en) * 1993-12-02 1995-10-03 Crest Industries, Inc. Apparatus and method for encrypting communications without exchanging an encryption key
JPH09507729A (ja) * 1994-01-13 1997-08-05 バンカーズ・トラスト・カンパニー キー寄託機能付き暗号システムおよび方法
DE69514908T2 (de) 1994-02-24 2000-07-20 Merdan Group Inc Verfahren und einrichtung zum aufbau einer kryptographischen verbindung zwischen elementen eines systems
US5787172A (en) * 1994-02-24 1998-07-28 The Merdan Group, Inc. Apparatus and method for establishing a cryptographic link between elements of a system
US5509071A (en) * 1994-04-01 1996-04-16 Microelectronics And Computer Technology Corporation Electronic proof of receipt
US6868408B1 (en) 1994-04-28 2005-03-15 Citibank, N.A. Security systems and methods applicable to an electronic monetary system
US5799087A (en) * 1994-04-28 1998-08-25 Citibank, N.A. Electronic-monetary system
US5493614A (en) * 1994-05-03 1996-02-20 Chaum; David Private signature and proof systems
US5557678A (en) * 1994-07-18 1996-09-17 Bell Atlantic Network Services, Inc. System and method for centralized session key distribution, privacy enhanced messaging and information distribution using a split private key public cryptosystem
US5838792A (en) * 1994-07-18 1998-11-17 Bell Atlantic Network Services, Inc. Computer system for centralized session key distribution, privacy enhanced messaging and information distribution using a split private key public cryptosystem
US5748735A (en) * 1994-07-18 1998-05-05 Bell Atlantic Network Services, Inc. Securing E-mail communications and encrypted file storage using yaksha split private key asymmetric cryptography
US5535276A (en) * 1994-11-09 1996-07-09 Bell Atlantic Network Services, Inc. Yaksha, an improved system and method for securing communications using split private key asymmetric cryptography
US5905799A (en) * 1994-07-20 1999-05-18 Bell Atlantic Network Services, Inc. Programmed computer for identity verification, forming joint signatures and session key agreement in an RSA public cryptosystem
US5588061A (en) * 1994-07-20 1996-12-24 Bell Atlantic Network Services, Inc. System and method for identity verification, forming joint signatures and session key agreement in an RSA public cryptosystem
US5606609A (en) * 1994-09-19 1997-02-25 Scientific-Atlanta Electronic document verification system and method
US5737419A (en) * 1994-11-09 1998-04-07 Bell Atlantic Network Services, Inc. Computer system for securing communications using split private key asymmetric cryptography
US5745569A (en) 1996-01-17 1998-04-28 The Dice Company Method for stega-cipher protection of computer code
US7362775B1 (en) 1996-07-02 2008-04-22 Wistaria Trading, Inc. Exchange mechanisms for digital information packages with bandwidth securitization, multichannel digital watermarks, and key management
US7007166B1 (en) 1994-12-28 2006-02-28 Wistaria Trading, Inc. Method and system for digital watermarking
JP3271460B2 (ja) * 1995-01-12 2002-04-02 ケイディーディーアイ株式会社 無線通信における識別子秘匿方法
US5568554A (en) * 1995-01-31 1996-10-22 Digital Equipment Corporation Method for improving the processing and storage performance of digital signature schemes
US6134326A (en) * 1996-11-18 2000-10-17 Bankers Trust Corporation Simultaneous electronic transactions
US6137884A (en) * 1995-03-21 2000-10-24 Bankers Trust Corporation Simultaneous electronic transactions with visible trusted parties
US6141750A (en) * 1995-03-21 2000-10-31 Micali; Silvio Simultaneous electronic transactions with subscriber verification
US5553145A (en) * 1995-03-21 1996-09-03 Micali; Silvia Simultaneous electronic transactions with visible trusted parties
IL113259A (en) * 1995-04-05 2001-03-19 Diversinet Corp A device and method for a secure interface for secure communication and data transfer
US6760463B2 (en) 1995-05-08 2004-07-06 Digimarc Corporation Watermarking methods and media
US5583939A (en) * 1995-06-01 1996-12-10 Chung N. Chang Secure, swift cryptographic key exchange
US5835592A (en) * 1995-06-01 1998-11-10 Chang; Chung Nan Secure, swift cryptographic key exchange
US6011847A (en) * 1995-06-01 2000-01-04 Follendore, Iii; Roy D. Cryptographic access and labeling system
US5872917A (en) * 1995-06-07 1999-02-16 America Online, Inc. Authentication using random challenges
US5870543A (en) * 1995-06-07 1999-02-09 Digital River, Inc. System for preventing unauthorized copying of active software
US5883955A (en) * 1995-06-07 1999-03-16 Digital River, Inc. On-line try before you buy software distribution system
EP0870381A4 (de) * 1995-06-07 1999-09-29 Digital River Inc Verteilungssystem fur zum ausprobieren angebotene software und verkaufssystem
US5903647A (en) * 1995-06-07 1999-05-11 Digital River, Inc. Self-launching encrypted digital information distribution system
US5887060A (en) * 1995-06-07 1999-03-23 Digital River, Inc. Central database system for automatic software program sales
US5613004A (en) * 1995-06-07 1997-03-18 The Dice Company Steganographic method and device
US5883954A (en) * 1995-06-07 1999-03-16 Digital River, Inc. Self-launching encrypted try before you buy software distribution system
US6620047B1 (en) 1995-06-29 2003-09-16 Igt Electronic gaming apparatus having authentication data sets
US5643086A (en) * 1995-06-29 1997-07-01 Silicon Gaming, Inc. Electronic casino gaming apparatus with improved play capacity, authentication and security
ATE496444T1 (de) * 1995-06-29 2011-02-15 Igt Reno Nev Elektronisches casinospielsystem mit verbesserten spielmöglichkeiten, authentifizierung und sicherheit
US7063615B2 (en) * 1995-06-29 2006-06-20 Igt Electronic gaming apparatus with authentication
AU4718400A (en) * 1995-06-29 2000-09-14 Silicon Gaming, Inc. Electronic casino gaming system with improved play capacity, authentication and security
USRE39369E1 (en) 1995-06-29 2006-10-31 Igt Electronic casino gaming system with improved play capacity, authentication and security
US5812669A (en) * 1995-07-19 1998-09-22 Jenkins; Lew Method and system for providing secure EDI over an open network
US5721779A (en) * 1995-08-28 1998-02-24 Funk Software, Inc. Apparatus and methods for verifying the identity of a party
US5666416A (en) * 1995-10-24 1997-09-09 Micali; Silvio Certificate revocation system
US7337315B2 (en) 1995-10-02 2008-02-26 Corestreet, Ltd. Efficient certificate revocation
US5793868A (en) * 1996-08-29 1998-08-11 Micali; Silvio Certificate revocation system
US7822989B2 (en) * 1995-10-02 2010-10-26 Corestreet, Ltd. Controlling access to an area
US6097811A (en) * 1995-11-02 2000-08-01 Micali; Silvio Tree-based certificate revocation system
US8732457B2 (en) * 1995-10-02 2014-05-20 Assa Abloy Ab Scalable certificate validation and simplified PKI management
US8015597B2 (en) 1995-10-02 2011-09-06 Corestreet, Ltd. Disseminating additional data used for controlling access
US5717757A (en) * 1996-08-29 1998-02-10 Micali; Silvio Certificate issue lists
US7716486B2 (en) 1995-10-02 2010-05-11 Corestreet, Ltd. Controlling group access to doors
US6766450B2 (en) * 1995-10-24 2004-07-20 Corestreet, Ltd. Certificate revocation system
US7353396B2 (en) 1995-10-02 2008-04-01 Corestreet, Ltd. Physical access control
US7600129B2 (en) 1995-10-02 2009-10-06 Corestreet, Ltd. Controlling access using additional data
US8261319B2 (en) 1995-10-24 2012-09-04 Corestreet, Ltd. Logging access attempts to an area
US6301659B1 (en) 1995-11-02 2001-10-09 Silvio Micali Tree-based certificate revocation system
US7898675B1 (en) * 1995-11-13 2011-03-01 Netfax Development, Llc Internet global area networks fax system
US6190257B1 (en) 1995-11-22 2001-02-20 Nintendo Co., Ltd. Systems and method for providing security in a video game system
US6071191A (en) * 1995-11-22 2000-06-06 Nintendo Co., Ltd. Systems and methods for providing security in a video game system
US5675649A (en) * 1995-11-30 1997-10-07 Electronic Data Systems Corporation Process for cryptographic key generation and safekeeping
US6026163A (en) * 1995-12-13 2000-02-15 Micali; Silvio Distributed split-key cryptosystem and applications
US5745574A (en) * 1995-12-15 1998-04-28 Entegrity Solutions Corporation Security infrastructure for electronic transactions
US5926551A (en) * 1995-12-28 1999-07-20 International Business Machines Corporation System and method for certifying content of hard-copy documents
US5812670A (en) * 1995-12-28 1998-09-22 Micali; Silvio Traceable anonymous transactions
US6205249B1 (en) 1998-04-02 2001-03-20 Scott A. Moskowitz Multiple transform utilization and applications for secure digital watermarking
US5822432A (en) * 1996-01-17 1998-10-13 The Dice Company Method for human-assisted random key generation and application for digital watermark system
US7664263B2 (en) 1998-03-24 2010-02-16 Moskowitz Scott A Method for combining transfer functions with predetermined key creation
JPH09238132A (ja) * 1996-02-29 1997-09-09 Oki Electric Ind Co Ltd 携帯用端末通信システム及びその通信方法
US5737425A (en) * 1996-05-21 1998-04-07 International Business Machines Corporation Cryptosystem employing worst-case difficult-to solve lattice problem
US7555458B1 (en) 1996-06-05 2009-06-30 Fraud Control System.Com Corporation Method of billing a purchase made over a computer network
US20030195848A1 (en) 1996-06-05 2003-10-16 David Felger Method of billing a purchase made over a computer network
US8229844B2 (en) 1996-06-05 2012-07-24 Fraud Control Systems.Com Corporation Method of billing a purchase made over a computer network
US5764766A (en) * 1996-06-11 1998-06-09 Digital Equipment Corporation System and method for generation of one-time encryption keys for data communications and a computer program product for implementing the same
SE506853C2 (sv) * 1996-06-20 1998-02-16 Anonymity Prot In Sweden Ab Metod för databearbetning
US7177429B2 (en) 2000-12-07 2007-02-13 Blue Spike, Inc. System and methods for permitting open access to data objects and for securing data within the data objects
US7095874B2 (en) 1996-07-02 2006-08-22 Wistaria Trading, Inc. Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
US7107451B2 (en) * 1996-07-02 2006-09-12 Wistaria Trading, Inc. Optimization methods for the insertion, protection, and detection of digital watermarks in digital data
US7159116B2 (en) 1999-12-07 2007-01-02 Blue Spike, Inc. Systems, methods and devices for trusted transactions
US5889868A (en) 1996-07-02 1999-03-30 The Dice Company Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
US7346472B1 (en) 2000-09-07 2008-03-18 Blue Spike, Inc. Method and device for monitoring and analyzing signals
US7457962B2 (en) 1996-07-02 2008-11-25 Wistaria Trading, Inc Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data
US6078664A (en) * 1996-12-20 2000-06-20 Moskowitz; Scott A. Z-transform implementation of digital watermarks
US5787367A (en) * 1996-07-03 1998-07-28 Chrysler Corporation Flash reprogramming security for vehicle computer
JP2000515649A (ja) * 1996-08-07 2000-11-21 バンカーズ・トラスト・コーポレーション 見ることができ信頼できる当事者による同時性電子トランザクション
US5784459A (en) * 1996-08-15 1998-07-21 International Business Machines Corporation Method and apparatus for secure, remote swapping of memory resident active entities
CA2263588C (en) * 1996-08-19 2005-01-18 Ntru Cryptosystems, Inc. Public key cryptosystem method and apparatus
US5930362A (en) * 1996-10-09 1999-07-27 At&T Wireless Services Inc Generation of encryption key
US6253323B1 (en) 1996-11-01 2001-06-26 Intel Corporation Object-based digital signatures
US5966444A (en) * 1996-12-06 1999-10-12 Yuan; Chuan K. Method and system for establishing a cryptographic key agreement using linear protocols
US5848159A (en) * 1996-12-09 1998-12-08 Tandem Computers, Incorporated Public key cryptographic apparatus and method
US7730317B2 (en) 1996-12-20 2010-06-01 Wistaria Trading, Inc. Linear predictive coding implementation of digital watermarks
US20030054879A1 (en) * 1996-12-31 2003-03-20 Bruce Schneier System and method for securing electronic games
US6154541A (en) * 1997-01-14 2000-11-28 Zhang; Jinglong F Method and apparatus for a robust high-speed cryptosystem
US6078593A (en) * 1997-02-04 2000-06-20 Next Level Communications Method and apparatus for reliable operation of universal voice grade cards
US7212632B2 (en) 1998-02-13 2007-05-01 Tecsec, Inc. Cryptographic key split combiner
US6317832B1 (en) 1997-02-21 2001-11-13 Mondex International Limited Secure multiple application card system and process
US6575372B1 (en) 1997-02-21 2003-06-10 Mondex International Limited Secure multi-application IC card system having selective loading and deleting capability
US5987130A (en) * 1997-03-31 1999-11-16 Chang; Chung Nan Simiplified secure swift cryptographic key exchange
US6058187A (en) * 1997-04-17 2000-05-02 At&T Corp. Secure telecommunications data transmission
US6694433B1 (en) 1997-05-08 2004-02-17 Tecsec, Inc. XML encryption scheme
US6488211B1 (en) * 1997-05-15 2002-12-03 Mondex International Limited System and method for flexibly loading in IC card
US6385723B1 (en) 1997-05-15 2002-05-07 Mondex International Limited Key transformation unit for an IC card
US6164549A (en) * 1997-05-15 2000-12-26 Mondex International Limited IC card with shell feature
US6328217B1 (en) 1997-05-15 2001-12-11 Mondex International Limited Integrated circuit card with application history list
US6220510B1 (en) 1997-05-15 2001-04-24 Mondex International Limited Multi-application IC card with delegation feature
EP0993739A1 (de) * 1997-05-21 2000-04-19 E.S.P. Communications, Inc. System, verfahren und einrichtung für einzig vom anrufer eingeleite schnurlose kommunikation mit anrufererzeugten vergebührung
US6122742A (en) * 1997-06-18 2000-09-19 Young; Adam Lucas Auto-recoverable and auto-certifiable cryptosystem with unescrowed signing keys
US6202150B1 (en) 1997-05-28 2001-03-13 Adam Lucas Young Auto-escrowable and auto-certifiable cryptosystems
US6389136B1 (en) 1997-05-28 2002-05-14 Adam Lucas Young Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys
US6243466B1 (en) 1997-08-29 2001-06-05 Adam Lucas Young Auto-escrowable and auto-certifiable cryptosystems with fast key generation
US6282295B1 (en) 1997-10-28 2001-08-28 Adam Lucas Young Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers
US20020025852A1 (en) * 2000-09-29 2002-02-28 Alcorn Allan E. Gaming apparatus with portrait-mode display
US6052466A (en) * 1997-08-28 2000-04-18 Telefonaktiebolaget L M Ericsson (Publ) Encryption of data packets using a sequence of private keys generated from a public key exchange
US6167521A (en) * 1997-08-29 2000-12-26 International Business Machines Corporation Securely downloading and executing code from mutually suspicious authorities
US6233685B1 (en) 1997-08-29 2001-05-15 Sean William Smith Establishing and employing the provable untampered state of a device
US6411715B1 (en) 1997-11-10 2002-06-25 Rsa Security, Inc. Methods and apparatus for verifying the cryptographic security of a selected private and public key pair without knowing the private key
US6701330B1 (en) * 1997-12-30 2004-03-02 Unisys Corporation Protecting duplicate/lost updates against host failures
US6736325B1 (en) 1998-01-22 2004-05-18 Mondex International Limited Codelets
US6357665B1 (en) 1998-01-22 2002-03-19 Mondex International Limited Configuration of IC card
US7268700B1 (en) 1998-01-27 2007-09-11 Hoffberg Steven M Mobile communication device
US6742120B1 (en) 1998-02-03 2004-05-25 Mondex International Limited System and method for controlling access to computer code in an IC card
US8077870B2 (en) * 1998-02-13 2011-12-13 Tecsec, Inc. Cryptographic key split binder for use with tagged data elements
US7079653B2 (en) * 1998-02-13 2006-07-18 Tecsec, Inc. Cryptographic key split binding process and apparatus
US7095852B2 (en) * 1998-02-13 2006-08-22 Tecsec, Inc. Cryptographic key split binder for use with tagged data elements
US7110984B1 (en) * 1998-08-13 2006-09-19 International Business Machines Corporation Updating usage conditions in lieu of download digital rights management protected content
US6226618B1 (en) 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
US6959288B1 (en) 1998-08-13 2005-10-25 International Business Machines Corporation Digital content preparation system
US6983371B1 (en) 1998-10-22 2006-01-03 International Business Machines Corporation Super-distribution of protected digital content
US6389403B1 (en) 1998-08-13 2002-05-14 International Business Machines Corporation Method and apparatus for uniquely identifying a customer purchase in an electronic distribution system
US6611812B2 (en) 1998-08-13 2003-08-26 International Business Machines Corporation Secure electronic content distribution on CDS and DVDs
US6859791B1 (en) 1998-08-13 2005-02-22 International Business Machines Corporation Method for determining internet users geographic region
US6085321A (en) 1998-08-14 2000-07-04 Omnipoint Corporation Unique digital signature
US7111173B1 (en) 1998-09-01 2006-09-19 Tecsec, Inc. Encryption process including a biometric unit
US6337910B1 (en) * 1998-09-09 2002-01-08 Koninklijke Philips Electronics N.V. (Kpenv) Method and apparatus for generating one time pads simultaneously in separate encryption/decryption systems
US6363152B1 (en) * 1998-09-09 2002-03-26 Koninklijke Philips Electronics N.V. (Kpenv) Hybrid one time pad encryption and decryption apparatus with methods for encrypting and decrypting data
US6785388B1 (en) * 1998-09-16 2004-08-31 Murata Kikai Kabushiki Kaisha Encryption method, decryption method, encryption/decryption method, cryptographic communications system, and computer usable medium
US6798884B1 (en) * 1998-09-16 2004-09-28 Murata Kikai Kabushiki Kaisha Encryption method, decryption method, encryption/decryption method, cryptographic communications system, and computer usable medium
US6684330B1 (en) 1998-10-16 2004-01-27 Tecsec, Inc. Cryptographic information and flow control
US6363154B1 (en) 1998-10-28 2002-03-26 International Business Machines Corporation Decentralized systems methods and computer program products for sending secure messages among a group of nodes
US6560337B1 (en) 1998-10-28 2003-05-06 International Business Machines Corporation Systems, methods and computer program products for reducing effective key length of ciphers using one-way cryptographic functions and an initial key
US7047416B2 (en) * 1998-11-09 2006-05-16 First Data Corporation Account-based digital signature (ABDS) system
US6820202B1 (en) 1998-11-09 2004-11-16 First Data Corporation Account authority digital signature (AADS) system
US7058597B1 (en) 1998-12-04 2006-06-06 Digital River, Inc. Apparatus and method for adaptive fraud screening for electronic commerce transactions
US20030195974A1 (en) 1998-12-04 2003-10-16 Ronning Joel A. Apparatus and method for scheduling of search for updates or downloads of a file
US7617124B1 (en) 1998-12-04 2009-11-10 Digital River, Inc. Apparatus and method for secure downloading of files
US6473508B1 (en) 1998-12-22 2002-10-29 Adam Lucas Young Auto-recoverable auto-certifiable cryptosystems with unescrowed signature-only keys
US8364136B2 (en) 1999-02-01 2013-01-29 Steven M Hoffberg Mobile system, a method of operating mobile system and a non-transitory computer readable medium for a programmable control of a mobile system
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US7095851B1 (en) 1999-03-11 2006-08-22 Tecsec, Inc. Voice and data encryption method using a cryptographic key split combiner
US7664264B2 (en) 1999-03-24 2010-02-16 Blue Spike, Inc. Utilizing data reduction in steganographic and cryptographic systems
US6959384B1 (en) 1999-12-14 2005-10-25 Intertrust Technologies Corporation Systems and methods for authenticating and protecting the integrity of data streams and other data
US20020099746A1 (en) * 1999-07-26 2002-07-25 Tie Teck Sing T-sequence apparatus and method for general deterministic polynomial-time primality testing and composite factoring
US7475246B1 (en) 1999-08-04 2009-01-06 Blue Spike, Inc. Secure personal content server
US6746330B2 (en) 1999-09-21 2004-06-08 Igt Method and device for implementing a coinless gaming environment
US6826689B1 (en) * 1999-10-01 2004-11-30 Geneticware Co., Ltd. Method and system for emulating a secret code between two hardware modules
GB9925227D0 (en) 1999-10-25 1999-12-22 Internet Limited Data storage retrieval and access system
US6834110B1 (en) 1999-12-09 2004-12-21 International Business Machines Corporation Multi-tier digital TV programming for content distribution
US7213005B2 (en) * 1999-12-09 2007-05-01 International Business Machines Corporation Digital content distribution using web broadcasting services
FR2802677B1 (fr) * 1999-12-17 2002-01-18 Thomson Multimedia Sa Procede de gestion de jeu a distance securise
JP2001211153A (ja) * 2000-01-25 2001-08-03 Murata Mach Ltd 秘密鍵生成方法
US6839839B1 (en) 2000-02-10 2005-01-04 Xerox Corporation Public key distribution using an approximate linear function
US20050255924A1 (en) * 2000-03-03 2005-11-17 Cole Joseph W Gaming apparatus having door mounted display
CA2402389A1 (en) 2000-03-08 2002-09-19 Shuffle Master, Inc. Computerized gaming system, method and apparatus
US7043641B1 (en) * 2000-03-08 2006-05-09 Igt Encryption in a secure computerized gaming system
US7988559B2 (en) 2001-03-08 2011-08-02 Igt Computerized gaming system, method and apparatus
US20040186996A1 (en) * 2000-03-29 2004-09-23 Gibbs Benjamin K. Unique digital signature
CN1293482C (zh) * 2000-04-06 2007-01-03 索尼公司 便携装置的存储区域分割方法
US7280663B1 (en) * 2000-05-22 2007-10-09 University Of Southern California Encryption system based on crossed inverse quasigroups
WO2002005061A2 (en) 2000-07-06 2002-01-17 David Paul Felsher Information record infrastructure, system and method
US6978369B2 (en) * 2000-08-04 2005-12-20 First Data Corporation Person-centric account-based digital signature system
US7010691B2 (en) * 2000-08-04 2006-03-07 First Data Corporation ABDS system utilizing security information in authenticating entity access
CA2417770C (en) * 2000-08-04 2011-10-25 First Data Corporation Trusted authentication digital signature (tads) system
US6789189B2 (en) * 2000-08-04 2004-09-07 First Data Corporation Managing account database in ABDS system
US7558965B2 (en) * 2000-08-04 2009-07-07 First Data Corporation Entity authentication in electronic communications by providing verification status of device
US7096354B2 (en) * 2000-08-04 2006-08-22 First Data Corporation Central key authority database in an ABDS system
US7082533B2 (en) * 2000-08-04 2006-07-25 First Data Corporation Gauging risk in electronic communications regarding accounts in ABDS system
US6983368B2 (en) * 2000-08-04 2006-01-03 First Data Corporation Linking public key of device to information during manufacture
US7552333B2 (en) * 2000-08-04 2009-06-23 First Data Corporation Trusted authentication digital signature (tads) system
GB2366162A (en) 2000-08-15 2002-02-27 Chargenet Ltd Controlling access to a telecommunicated data file
WO2002015998A2 (en) * 2000-08-21 2002-02-28 International Game Technology Method and apparatus for software authentication
CA2356015A1 (en) 2000-08-31 2002-02-28 International Game Technology Method and apparatus for encoding vouchers in a cashless casino gaming system
US6978375B1 (en) 2000-09-08 2005-12-20 International Business Machines Corporation System and method for secure authentication of external software modules provided by third parties
US7127615B2 (en) 2000-09-20 2006-10-24 Blue Spike, Inc. Security based on subliminal and supraliminal channels for data objects
US7113900B1 (en) 2000-10-24 2006-09-26 Microsoft Corporation System and method for logical modeling of distributed computer systems
US7606898B1 (en) 2000-10-24 2009-10-20 Microsoft Corporation System and method for distributed management of shared computers
US20020066038A1 (en) * 2000-11-29 2002-05-30 Ulf Mattsson Method and a system for preventing impersonation of a database user
US7454796B2 (en) * 2000-12-22 2008-11-18 Canon Kabushiki Kaisha Obtaining temporary exclusive control of a printing device
US20020095604A1 (en) * 2001-01-18 2002-07-18 Hausler Jean-Philippe D. Encryption system and method
US20020108034A1 (en) * 2001-02-02 2002-08-08 Tony Hashem System and method for automatically securing data for transmission
US7203841B2 (en) 2001-03-08 2007-04-10 Igt Encryption in a secure computerized gaming system
US7181017B1 (en) 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
US7120248B2 (en) * 2001-03-26 2006-10-10 Hewlett-Packard Development Company, L.P. Multiple prime number generation using a parallel prime number search algorithm
US7016494B2 (en) * 2001-03-26 2006-03-21 Hewlett-Packard Development Company, L.P. Multiple cryptographic key precompute and store
KR100406754B1 (ko) * 2001-04-11 2003-11-21 한국정보보호진흥원 피케이아이 기반의 상업용 키위탁 방법 및 시스템
US6966837B1 (en) 2001-05-10 2005-11-22 Best Robert M Linked portable and video game systems
US20020198748A1 (en) * 2001-05-25 2002-12-26 Eden Thomas M. System and method for implementing an employee-rights-sensitive drug free workplace policy
US8275716B2 (en) 2001-05-31 2012-09-25 Contentguard Holdings, Inc. Method and system for subscription digital rights management
US7382878B2 (en) * 2001-06-22 2008-06-03 Uponus Technologies, Llc System and method for data encryption
US7162036B2 (en) 2001-08-06 2007-01-09 Igt Digital identification of unique game characteristics
US20040128508A1 (en) * 2001-08-06 2004-07-01 Wheeler Lynn Henry Method and apparatus for access authentication entity
US6685567B2 (en) * 2001-08-08 2004-02-03 Igt Process verification
US7210134B1 (en) 2001-09-06 2007-04-24 Sonic Solutions Deterring reverse-engineering of software systems by randomizing the siting of stack-based data
US20070277037A1 (en) * 2001-09-06 2007-11-29 Randy Langer Software component authentication via encrypted embedded self-signatures
CA2460046C (en) 2001-09-10 2014-06-10 Igt Method for developing gaming programs compatible with a computerized gaming operating system and apparatus
US7128650B2 (en) 2001-09-12 2006-10-31 Igt Gaming machine with promotional item dispenser
US8708828B2 (en) 2001-09-28 2014-04-29 Igt Pluggable modular gaming modifiers and configuration templates for gaming environments
US20030065696A1 (en) * 2001-09-28 2003-04-03 Ruehle Michael D. Method and apparatus for performing modular exponentiation
US6902481B2 (en) 2001-09-28 2005-06-07 Igt Decoupling of the graphical presentation of a game from the presentation logic
US7931533B2 (en) 2001-09-28 2011-04-26 Igt Game development architecture that decouples the game logic from the graphics logics
US20030064784A1 (en) * 2001-09-28 2003-04-03 William Wells Wide screen gaming apparatus
US6922717B2 (en) 2001-09-28 2005-07-26 Intel Corporation Method and apparatus for performing modular multiplication
US7136484B1 (en) * 2001-10-01 2006-11-14 Silicon Image, Inc. Cryptosystems using commuting pairs in a monoid
WO2003045519A1 (en) * 2001-11-26 2003-06-05 Igt Pass-through live validation device and method
US20030154286A1 (en) * 2002-02-13 2003-08-14 Infowave Software, Inc. System for and method of protecting a username during authentication over a non-encrypted channel
US7899753B1 (en) 2002-03-25 2011-03-01 Jpmorgan Chase Bank, N.A Systems and methods for time variable financial authentication
US7155578B2 (en) * 2002-04-05 2006-12-26 Genworth Financial, Inc. Method and system for transferring files using file transfer protocol
US20030190046A1 (en) * 2002-04-05 2003-10-09 Kamerman Matthew Albert Three party signing protocol providing non-linkability
US7287275B2 (en) 2002-04-17 2007-10-23 Moskowitz Scott A Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth
US7350081B1 (en) 2002-04-29 2008-03-25 Best Robert M Secure execution of downloaded software
US7436966B2 (en) * 2002-08-21 2008-10-14 International Business Machines Corporation Secure approach to send data from one system to another
US7184551B2 (en) * 2002-09-30 2007-02-27 Micron Technology, Inc. Public key cryptography using matrices
US20040133699A1 (en) * 2002-12-04 2004-07-08 Tony Hashem System and method for performing data transfer
US7200233B1 (en) 2002-12-10 2007-04-03 L-3 Communications Corporation System and method for fast data encryption/decryption using time slot numbering
US9818136B1 (en) 2003-02-05 2017-11-14 Steven M. Hoffberg System and method for determining contingent relevance
US7689676B2 (en) 2003-03-06 2010-03-30 Microsoft Corporation Model-based policy application
US7072807B2 (en) 2003-03-06 2006-07-04 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US8122106B2 (en) * 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
US7890543B2 (en) 2003-03-06 2011-02-15 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US7320073B2 (en) * 2003-04-07 2008-01-15 Aol Llc Secure method for roaming keys and certificates
AU2004239780B2 (en) * 2003-05-13 2009-08-27 Assa Abloy Ab Efficient and secure data currentness systems
US20040250073A1 (en) * 2003-06-03 2004-12-09 Cukier Johnas I. Protocol for hybrid authenticated key establishment
EP1636682A4 (de) * 2003-06-24 2009-04-29 Corestreet Ltd Zugangskontrolle
US7606929B2 (en) 2003-06-30 2009-10-20 Microsoft Corporation Network load balancing with connection manipulation
US7590736B2 (en) 2003-06-30 2009-09-15 Microsoft Corporation Flexible network load balancing
US7567504B2 (en) 2003-06-30 2009-07-28 Microsoft Corporation Network load balancing with traffic routing
US7613822B2 (en) 2003-06-30 2009-11-03 Microsoft Corporation Network load balancing with session information
US7636917B2 (en) 2003-06-30 2009-12-22 Microsoft Corporation Network load balancing with host status information
US7794323B2 (en) * 2003-07-25 2010-09-14 Igt Gaming apparatus with encryption and method
CA2544273C (en) * 2003-11-19 2015-01-13 Corestreet, Ltd. Distributed delegated path discovery and validation
US7698557B2 (en) * 2003-12-22 2010-04-13 Guardtime As System and method for generating a digital certificate
US7752453B2 (en) 2004-01-08 2010-07-06 Encryption Solutions, Inc. Method of encrypting and transmitting data and system for transmitting encrypted data
US7711951B2 (en) * 2004-01-08 2010-05-04 International Business Machines Corporation Method and system for establishing a trust framework based on smart key devices
US7849326B2 (en) * 2004-01-08 2010-12-07 International Business Machines Corporation Method and system for protecting master secrets using smart key devices
US8031865B2 (en) * 2004-01-08 2011-10-04 Encryption Solutions, Inc. Multiple level security system and method for encrypting data within documents
US7526643B2 (en) * 2004-01-08 2009-04-28 Encryption Solutions, Inc. System for transmitting encrypted data
US7966487B2 (en) 2004-01-09 2011-06-21 Corestreet, Ltd. Communication-efficient real time credentials for OCSP and distributed OCSP
JP4390570B2 (ja) * 2004-01-21 2009-12-24 株式会社エヌ・ティ・ティ・ドコモ 多段署名検証システム、電子署名付与装置、データ追加装置及び電子署名検証装置
US7289629B2 (en) * 2004-02-09 2007-10-30 Microsoft Corporation Primitives for fast secure hash functions and stream ciphers
US7778422B2 (en) * 2004-02-27 2010-08-17 Microsoft Corporation Security associations for devices
US8442219B2 (en) * 2004-03-31 2013-05-14 Jesse Lipson Public key cryptographic methods and systems
US20050246529A1 (en) 2004-04-30 2005-11-03 Microsoft Corporation Isolated persistent identity storage for authentication of computing devies
US7562052B2 (en) * 2004-06-07 2009-07-14 Tony Dezonno Secure customer communication method and system
US7205882B2 (en) * 2004-11-10 2007-04-17 Corestreet, Ltd. Actuating a security system using a wireless device
US7386736B2 (en) * 2004-12-16 2008-06-10 International Business Machines Corporation Method and system for using a compact disk as a smart key device
US7475247B2 (en) * 2004-12-16 2009-01-06 International Business Machines Corporation Method for using a portable computing device as a smart key device
US7490239B2 (en) * 2005-01-07 2009-02-10 First Data Corporation Facilitating digital signature based on ephemeral private key
US20060153364A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Asymmetric key cryptosystem based on shared knowledge
US7869593B2 (en) * 2005-01-07 2011-01-11 First Data Corporation Software for providing based on shared knowledge public keys having same private key
US7936869B2 (en) * 2005-01-07 2011-05-03 First Data Corporation Verifying digital signature based on shared knowledge
US7693277B2 (en) * 2005-01-07 2010-04-06 First Data Corporation Generating digital signatures using ephemeral cryptographic key
US20060156013A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Digital signature software using ephemeral private key and system
US20060153367A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Digital signature system based on shared knowledge
US7593527B2 (en) * 2005-01-07 2009-09-22 First Data Corporation Providing digital signature and public key based on shared knowledge
US20060153370A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Generating public-private key pair based on user input data
US20060153369A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Providing cryptographic key based on user input data
US7598855B2 (en) 2005-02-01 2009-10-06 Location Based Technologies, Inc. Apparatus and method for locating individuals and objects using tracking devices
US20070229350A1 (en) * 2005-02-01 2007-10-04 Scalisi Joseph F Apparatus and Method for Providing Location Information on Individuals and Objects using Tracking Devices
US20070174271A1 (en) * 2005-02-18 2007-07-26 Ulf Mattsson Database system with second preprocessor and method for accessing a database
US7725715B2 (en) * 2005-02-24 2010-05-25 Access Business Group International Llc System and method for three-phase data encryption
US7802144B2 (en) 2005-04-15 2010-09-21 Microsoft Corporation Model-based system monitoring
US7797147B2 (en) 2005-04-15 2010-09-14 Microsoft Corporation Model-based system monitoring
US8489728B2 (en) 2005-04-15 2013-07-16 Microsoft Corporation Model-based system monitoring
US9191198B2 (en) * 2005-06-16 2015-11-17 Hewlett-Packard Development Company, L.P. Method and device using one-time pad data
US8549513B2 (en) 2005-06-29 2013-10-01 Microsoft Corporation Model-based virtual system provisioning
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US7941309B2 (en) 2005-11-02 2011-05-10 Microsoft Corporation Modeling IT operations/policies
CN100505620C (zh) * 2005-12-09 2009-06-24 上海燕托计算机有限公司 一种减少rsa密钥变量存储空间的方法
WO2008054512A2 (en) 2006-04-19 2008-05-08 Stepnexus Holdings Methods and systems for ic card application loading
US9002018B2 (en) 2006-05-09 2015-04-07 Sync Up Technologies Corporation Encryption key exchange system and method
US8127133B2 (en) * 2007-01-25 2012-02-28 Microsoft Corporation Labeling of data objects to apply and enforce policies
US9432845B2 (en) 2007-03-16 2016-08-30 Visa International Service Association System and method for automated analysis comparing a wireless device location with another geographic location
US8374634B2 (en) 2007-03-16 2013-02-12 Finsphere Corporation System and method for automated analysis comparing a wireless device location with another geographic location
US8280348B2 (en) 2007-03-16 2012-10-02 Finsphere Corporation System and method for identity protection using mobile device signaling network derived location pattern recognition
US9185123B2 (en) 2008-02-12 2015-11-10 Finsphere Corporation System and method for mobile identity protection for online user authentication
US9420448B2 (en) 2007-03-16 2016-08-16 Visa International Service Association System and method for automated analysis comparing a wireless device location with another geographic location
US9922323B2 (en) 2007-03-16 2018-03-20 Visa International Service Association System and method for automated analysis comparing a wireless device location with another geographic location
US8116731B2 (en) * 2007-11-01 2012-02-14 Finsphere, Inc. System and method for mobile identity protection of a user of multiple computer applications, networks or devices
US7917747B2 (en) * 2007-03-22 2011-03-29 Igt Multi-party encryption systems and methods
US8244468B2 (en) * 2007-11-06 2012-08-14 Location Based Technology Inc. System and method for creating and managing a personalized web interface for monitoring location information on individuals and objects using tracking devices
US9111189B2 (en) * 2007-10-31 2015-08-18 Location Based Technologies, Inc. Apparatus and method for manufacturing an electronic package
US8102256B2 (en) 2008-01-06 2012-01-24 Location Based Technologies Inc. Apparatus and method for determining location and tracking coordinates of a tracking device
US8497774B2 (en) * 2007-04-05 2013-07-30 Location Based Technologies Inc. Apparatus and method for adjusting refresh rate of location coordinates of a tracking device
US8774827B2 (en) * 2007-04-05 2014-07-08 Location Based Technologies, Inc. Apparatus and method for generating position fix of a tracking device in accordance with a subscriber service usage profile to conserve tracking device power
US8224355B2 (en) 2007-11-06 2012-07-17 Location Based Technologies Inc. System and method for improved communication bandwidth utilization when monitoring location information
US20080304669A1 (en) * 2007-06-11 2008-12-11 The Boeing Company Recipient-signed encryption certificates for a public key infrastructure
US20100031321A1 (en) 2007-06-11 2010-02-04 Protegrity Corporation Method and system for preventing impersonation of computer system user
US8654974B2 (en) * 2007-10-18 2014-02-18 Location Based Technologies, Inc. Apparatus and method to provide secure communication over an insecure communication channel for location information using tracking devices
TW200950457A (en) * 2008-05-30 2009-12-01 Jiu-Huan Li Asynchronous encryption and decryption method
US8170216B2 (en) * 2008-06-18 2012-05-01 Apple Inc. Techniques for validating and sharing secrets
AU2010340030B2 (en) * 2009-12-16 2015-09-10 Cardiac Pacemakers, Inc. System and method to authorize restricted functionality
US8520842B2 (en) * 2010-01-07 2013-08-27 Microsoft Corporation Maintaining privacy during user profiling
US8656484B2 (en) 2010-12-28 2014-02-18 Authernative, Inc. System and method for mutually authenticated cryptographic key exchange using matrices
US8621227B2 (en) 2010-12-28 2013-12-31 Authernative, Inc. System and method for cryptographic key exchange using matrices
US8949954B2 (en) 2011-12-08 2015-02-03 Uniloc Luxembourg, S.A. Customer notification program alerting customer-specified network address of unauthorized access attempts to customer account
AU2012100460B4 (en) 2012-01-04 2012-11-08 Uniloc Usa, Inc. Method and system implementing zone-restricted behavior of a computing device
AU2012100462B4 (en) 2012-02-06 2012-11-08 Uniloc Usa, Inc. Near field authentication through communication of enclosed content sound waves
US8627097B2 (en) 2012-03-27 2014-01-07 Igt System and method enabling parallel processing of hash functions using authentication checkpoint hashes
AU2013243768B2 (en) 2012-04-01 2017-12-21 Payfone, Inc. Secure authentication in a multi-party system
AU2013100355B4 (en) 2013-02-28 2013-10-31 Netauthority, Inc Device-specific content delivery
US10044695B1 (en) 2014-09-02 2018-08-07 Amazon Technologies, Inc. Application instances authenticated by secure measurements
US9246690B1 (en) 2014-09-03 2016-01-26 Amazon Technologies, Inc. Secure execution environment services
US10061915B1 (en) 2014-09-03 2018-08-28 Amazon Technologies, Inc. Posture assessment in a secure execution environment
US9577829B1 (en) 2014-09-03 2017-02-21 Amazon Technologies, Inc. Multi-party computation services
US9442752B1 (en) 2014-09-03 2016-09-13 Amazon Technologies, Inc. Virtual secure execution environments
US9754116B1 (en) 2014-09-03 2017-09-05 Amazon Technologies, Inc. Web services in secure execution environments
US10079681B1 (en) 2014-09-03 2018-09-18 Amazon Technologies, Inc. Securing service layer on third party hardware
US9491111B1 (en) 2014-09-03 2016-11-08 Amazon Technologies, Inc. Securing service control on third party hardware
US9584517B1 (en) 2014-09-03 2017-02-28 Amazon Technologies, Inc. Transforms within secure execution environments
US10419215B2 (en) 2016-11-04 2019-09-17 Microsoft Technology Licensing, Llc Use of error information to generate encryption keys
US10594668B1 (en) 2016-12-01 2020-03-17 Thales Esecurity, Inc. Crypto Cloudlets
US10764282B2 (en) 2017-06-12 2020-09-01 Daniel Maurice Lerner Protected and secured user-wearable devices for assured authentication and validation of data storage and transmission that utilize securitized containers
US10536445B1 (en) 2017-06-12 2020-01-14 Daniel Maurice Lerner Discrete blockchain and blockchain communications
US10154021B1 (en) 2017-06-12 2018-12-11 Ironclad Encryption Corporation Securitization of temporal digital communications with authentication and validation of user and access devices
US10650139B2 (en) 2017-06-12 2020-05-12 Daniel Maurice Lerner Securing temporal digital communications via authentication and validation for wireless user and access devices with securitized containers
US10979221B2 (en) * 2018-01-03 2021-04-13 Arizona Board Of Regents On Behalf Of Northern Arizona University Generation of keys of variable length from cryptographic tables

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3439120A1 (de) * 1984-10-25 1986-05-07 Philips Kommunikations Industrie AG, 8500 Nürnberg Verfahren zur identifizierung einer teilnehmerstation eines fernmeldenetzes
DE19648824A1 (de) * 1996-11-26 1998-05-28 Alsthom Cge Alcatel Verfahren zum gesicherten Nachrichtenaustausch bei Massendiensten, sowie Teilnehmereinrichtung und Diensteanbietereinrichtung hierfür

Also Published As

Publication number Publication date
GB2006580B (en) 1982-08-18
AU4041878A (en) 1980-04-17
BE871039A (fr) 1979-04-05
JPS5488703A (en) 1979-07-14
FR2405532B1 (fr) 1985-10-11
US4218582A (en) 1980-08-19
IT1099780B (it) 1985-09-28
SE7810478L (sv) 1979-04-07
JPS5950068B2 (ja) 1984-12-06
IT7828508A0 (it) 1978-10-06
AU519184B2 (en) 1981-11-12
CA1128159A (en) 1982-07-20
NL7810063A (nl) 1979-04-10
ES474539A1 (es) 1980-04-16
DE2843583A1 (de) 1979-05-10
GB2006580A (en) 1979-05-02
SE439225B (sv) 1985-06-03
FR2405532A1 (fr) 1979-05-04
CH634161A5 (fr) 1983-01-14

Similar Documents

Publication Publication Date Title
DE2843583C2 (de) Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal
DE69829967T2 (de) Verfahren und vorrichtung zur schnellen elliptischen verschlüsselung mit unmittelbarer einbettung
DE19804054B4 (de) System zur Verifizierung von Datenkarten
DE69828787T2 (de) Verbessertes verfahren und vorrichtung zum schutz eines verschlüsselungsverfahrens mit öffentlichem schlüssel gegen angriffe mit zeitmessung und fehlereinspeisung
EP0472714B1 (de) Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders
DE69534603T2 (de) Verschlüsselungssystem für elliptische kurve
EP2901611B1 (de) Seitenkanalgeschützte maskierung
WO2013135337A1 (de) Verfahren und system zur gesicherten kommunikation zwischen einem rfid-tag und einem lesegerät
DE3203412A1 (de) Schnelles oeffentliches realzeit-verschluesselungssystem
EP1922837B1 (de) Verfahren zum sicheren ver- oder entschlüsseln einer nachricht
CH711133B1 (de) Protokoll zur Signaturerzeugung
DE69837036T2 (de) Verfahren und vorrichtung zur ausführung einer entschlüsselung mittels einer standardisierten modularen potenzierung zum vereiteln eines zeitangriffs
DE10024325B4 (de) Kryptographisches Verfahren und kryptographische Vorrichtung
DE60109805T2 (de) Verfahren und system zur benützung eines ungesicherten krypto-beschleunigers
DE10143728A1 (de) Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer modularen Exponentiation
DE102004042826B4 (de) Verfahren und Vorrichtung zur Datenverschlüsselung
DE10304451B3 (de) Modulare Exponentiation mit randomisiertem Exponenten
DE60105449T2 (de) Verfahren zur Steigerung der Sicherheit eines Verschlüsselungsverfahrens mit öffentlichen Schlüsseln
DE60022770T2 (de) Gegenmassnahme in einem elektronischen baustein zur ausführung eines kryptoalgorithmus mit öffentlichem schlüssel vom rsa-typ
WO2021156005A1 (de) Schlüsselgenerierung und pace mit sicherung gegen seitenkanalangriffe
WO2003034649A2 (de) Verfahren und vorrichtung zum absichern einer berechnung in einem kryptographischen algorithmus
DE10328860A1 (de) Vorrichtung und Verfahren zum Verschlüsseln von Daten
EP1454260A2 (de) Verfahren und vorrichtung zum absichern einer exponentiations-berechnung mittels dem chinesischen restsatz (crt)
DE10162496B4 (de) Verfahren und Vorrichtung zum Absichern einer Berechnung in einem kryptographischen Algorithmus
DE19958599A1 (de) Verfahren zur Verschlüsselung einer numerischen Information und Sendemodul

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
D2 Grant after examination
8369 Partition in:

Ref document number: 2857905

Country of ref document: DE

Format of ref document f/p: P

AH Division in

Ref country code: DE

Ref document number: 2857905

Format of ref document f/p: P

Q171 Divided out to:

Ref country code: DE

Ref document number: 2857905

8328 Change in the person/name/address of the agent

Free format text: VON FUENER, A., DIPL.-CHEM. DR.RER.NAT. EBBINGHAUS, D., DIPL.-ING. FINCK, K., DIPL.-ING. DR.-ING., PAT.-ANW., 8000 MUENCHEN

8328 Change in the person/name/address of the agent

Free format text: STREHL, P., DIPL.-ING. DIPL.-WIRTSCH.-ING. SCHUEBEL-HOPF, U., DIPL.-CHEM. DR.RER.NAT. GROENING, H.,DIPL.-ING., PAT.-ANWAELTE, 8000 MUENCHEN

8339 Ceased/non-payment of the annual fee