DE69534192T2 - Verfahren zur gemeinsamen Nutzung einer geheimen Information, zur Erzeugung einer digitalen Unterschrift und zur Ausführung einer Beglaubigung in einem Kommunikationssystem mit mehreren Informationsverarbeitungseinrichtungen und Kommunikationssystem zur Anwendung dieses Verfahrens - Google Patents

Verfahren zur gemeinsamen Nutzung einer geheimen Information, zur Erzeugung einer digitalen Unterschrift und zur Ausführung einer Beglaubigung in einem Kommunikationssystem mit mehreren Informationsverarbeitungseinrichtungen und Kommunikationssystem zur Anwendung dieses Verfahrens Download PDF

Info

Publication number
DE69534192T2
DE69534192T2 DE69534192T DE69534192T DE69534192T2 DE 69534192 T2 DE69534192 T2 DE 69534192T2 DE 69534192 T DE69534192 T DE 69534192T DE 69534192 T DE69534192 T DE 69534192T DE 69534192 T2 DE69534192 T2 DE 69534192T2
Authority
DE
Germany
Prior art keywords
secret
information
devices
shared
authentication
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 - Lifetime
Application number
DE69534192T
Other languages
English (en)
Other versions
DE69534192D1 (de
Inventor
Jose Manuel Cerecedo Ohta-ku Lopez
Keiichi Ohta-ku Iwamura
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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority claimed from JP17848394A external-priority patent/JP3604737B2/ja
Priority claimed from JP7008185A external-priority patent/JPH08204697A/ja
Priority claimed from JP00818495A external-priority patent/JP3610106B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Application granted granted Critical
Publication of DE69534192D1 publication Critical patent/DE69534192D1/de
Publication of DE69534192T2 publication Critical patent/DE69534192T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold 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/60Digital content management, e.g. content distribution
    • H04L2209/601Broadcast encryption

Description

  • ALLGEMEINER STAND DER TECHNIK
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren, bei dem sich eine Geheiminformation, die in einem der über Übertragungswege im Übertragungssystem miteinander verbundenen Informationsverarbeitungsgeräte (nachstehend als "Teilnehmer" bezeichnet) übertragen wird, gemeinsam mit den Teilnehmern und auf einem Übertragungssystem verwenden läßt, das ein derartiges Verfahren anwendet. Die vorliegende Erfindung bezieht sich des weiteren auf ein Verfahren des gemeinsamen Verwendens oder Erzeugens einer Digitalunterschrift für eine Gruppe, die sich aus mehreren einer Vielzahl von Teilnehmern zusammensetzt, und auf ein Übertragungssystem, das ein derartiges Verfahren anwendet. Darüber hinaus betrifft die vorliegende Erfindung ein Verfahren zur gemeinsamen Verwendung einer Bestätigungsfunktion mit einer Vielzahl von Teilnehmern, durch die ein Informationsempfänger bestätigen kann, daß die Information von einem korrekten Sender kommt (ist zwischenzeitlich nicht von einem anderen Gerät verändert worden), und auf Übertragungssystem, das ein derartiges Verfahren anwendet.
  • Zum Stand der Technik
  • Eine herkömmliche Codiertechnik, die vermehrt Redundanzdaten erzeugt, ist eine der bekannten Techniken, die die Zuverlässigkeit der Informationsübertragungssystem verbessern.
  • Insbesondere werden häufig Fehlerkorrekturcodes angewandt, durch die sich auf dem Übertragungsweg entstandene Fehler entweder feststellen oder korrigieren lassen, um in effizienter Weise hochzuverlässiger Übertragungssysteme zu schaffen.
  • Darüber hinaus weist A. Shamir nach, daß eine Codiertechnik, die die Redundanz durch gemeinsames Verwenden vertraulicher Information erhöht, als Mittel in einem Übertragungssystem effektiv ist, um die Zuverlässigkeit zu verbessern, während zur selben Zeit ein Schutz für die Geheiminformation gegeben wird (siehe "How to Share a Secret", communications of die ACM, Ausgabe 22, 11, 1979).
  • In einem Übertragungssystem, das eine Vielzahl von Teilnehmern hat, muß sich der Schutz gemeinsam verwendeter Geheiminformation (das heißt Geheiminformation, die von allen Teilnehmern gehalten und gemeinsam verwendet wird) nicht nur auf die physische Sicherheit verlassen, die bei einem einzelnen speziellen Teilnehmer nachgewiesen ist, und es ist möglich, die Zuverlässigkeit zu erhöhen (Fehlertoleranz ist erzielbar), wie beispielsweise in den folgenden beiden Definitionen beschrieben.
  • Eine davon ist die Zuverlässigkeit, die sicherstellt, daß Geheiminformation geschützt ist und kein Leck hat, selbst wenn sie gemeinsam verwendet wird; dies nennt man Fehlertoleranz zur Geheimhaltung. Die andere ist die Zuverlässigkeit, die sicherstellt, daß Ausgangssignale korrekt sind, selbst wenn ein nichtautorisierter Akt bezüglich der gemeinsam verwendeten Information ausgeführt wird; dies wird Fehlertoleranz zum Eigentum genannt. Angemerkt sei, daß physische Sicherheit impliziert, daß die Information, die ein gewisser Teilnehmer hält, kein Leck zu anderen Teilnehmern hat, und daß Berechnungen, die ein gewisser Teilnehmer ausführt, nicht durch irgendeinen anderen Teilnehmer kontrolliert werden können.
  • Genauer gesagt, die gemeinsame Verwendung und das Halten der gewissen Geheiminformation x von allen Teilnehmern bedeutet, daß individuelle Teilnehmer i Informationssegmente erzeugen, die zusammen der Geheiminformation x entsprechen, und die erzeugten Informationssignale an andere Teilnehmer verteilen, um folgenden Erfordernissen (a) und (b) zu genügen.
    • (a) Informationssegmente, die von t + 1 Teilnehmern gewonnen werden, müssen Geheiminformation x verschlüsseln. Die Anzahl der Teilnehmer, die notwendigerweise die Verschlüsselung der Geheiminformation erfordern, beträgt t + 1 und wird nachstehend als Schwellwert bezeichnet.
    • (b) Wenn die Anzahl von Teilinformationssegmenten, die von Teilnehmern kommen, unterhalb des Schwellwertes (t oder weniger) liegt, können keine Daten gewonnen werden, die sich auf die Geheiminformation beziehen.
  • Ein herkömmliches, grundlegendes geheimes gemeinsam verwendetes System wurde vorgeschlagen von A. Shamir ("How to Share a Secret", communications of the ACM, Ausgabe 22, 11, 1979) und wurde folgendermaßen erreicht.
  • Um eine Information einer gewissen Quelle bei gemeinsamer Verwendung einer Vielzahl von Teilnehmern geheim zu halten, wird ein Polynom f(x) vom Grad n, dessen konstanter Term die zuvor beschriebene Geheiminformation ist, zufällig ausgewählt, und Werte eines Polynoms f(i) (i = 1, ..., n), das n unterschiedlichen Werten entspricht, werden unter den Teilnehmern verteilt. Die auf die individuellen Teilnehmer verteilten Werte des Polynoms f(i) sind die oben beschriebenen Informationssegmente. Die Geheiminformation kann somit verschlüsselt werden durch Interpolieren des Polynoms, das t + 1 Informationssegmente verwendet (t oder weniger Informationssegmente sind zu wenige, um irgendeine Information zu erhalten, die sich auf die Geheiminformation bezieht).
  • Ein System, das ein Geheimnis in der zuvor beschriebenen Weise gemeinsam verwendet, wird Schwellwertschema genannt, und es wird angenommen, daß es in der Lage ist, die zuvor genannte Fehlertoleranz für die Geheimhaltung zu erzielen. Es sollte angemerkt werden, daß die ursprüngliche Geheiminformation nicht nur mit der obigen Definition entschlüsselt werden kann, wenn es ein inkorrektes Informationssegment unter den gemeinsam verwendeten Informationssegmenten der Geheiminformation x gibt, die von t + 1 oder mehr Teilnehmern gesammelt wird. Das heißt, es wurde herausgefunden, daß die Fehlertoleranz zum Zugriffsrecht auf gemeinsam verwendete Geheiminformation nicht garantiert ist. Um die Zuverlässigkeit für das oben beschriebene gemeinsam verwendete System voll zu gewährleisten, muß die Fehlertoleranz sowohl für das Geheimnis als auch für das Zugriffsrecht berücksichtigt werden.
  • Ein bestätigtes, gemeinsam verwendetes Geheimverfahren, das als gemeinsam verwendetes Geheimverfahren vorgeschlagen wurde und mit einem Teilnehmer zu Rande kommen kann, bei dem irgendwelche Fehler auftreten, ist festgelegt durch Hinzufügen der folgenden Erfordernisse (c) und (d) zu den obigen Schwellwertschemaerfordernissen (a) und (b).
    • (c) Selbst wenn inkorrekte Informationssegmente mit korrekten Informationssegmenten gemischt sind, so ist dies für die Entschlüsselung der ursprünglichen Geheiminformation ausreichend, sofern t + 1 korrekte Informationssegmente vorhanden sind.
    • (d) Wenn alle Teilnehmer die Informationssegmente erhalten haben, die das Geheimnis betreffen, können sie bestätigen, daß die Informationssegmente die korrekten für die Entschlüsselung der speziellen Geheiminformation x sind.
  • M. Ben-Or, S. Goldwasser und A. Wigderson beschrieben eine herkömmliche Fehlerkorrekturcodiertechnik, die in befriedigender Weise für eine Übertragung, die einen Geheimübertragungskanal hat, ein bestätigbares gemeinsam verwendbares Geheimsystem (wenn Schwellwert t < n/3 ist) bereitstellen, das mit den Teilnehmern zu Rande kommt, die irgendwelche Fehler haben, sofern die Anzahl von Teilnehmern geringer ist als ein Drittel aller Teilnehmer (siehe Completeness Theorems for Non-Cryptographic Fault-Tolerant Distributed Computation", ACM STOC 1988).
  • Zusätzliche Erfordernisse gibt es, um ein bestätigbares gemeinsam verwendbares Geheimsystem zu schaffen, das mit den Teilnehmern zu Rande kommt, die irgendwelche Fehler haben, sofern es weniger sind als die Hälfte aller Teilnehmer. Es wird angenommen, daß alle Teilnehmer Sendeübertragungskanäle haben, mit denen sie bestätigen können, daß alle Teilnehmer dieselbe Mitteilung empfangen haben; hierzu sind die folgenden beiden Verfahren bekannt.
  • (1) Ein Verfahren zum Anwenden einer Technik, die "Cut and Choose" heißt, die Verwendung findet in einem Null-Kenntnis-Sicherungssystem (siehe "Cryptology And Information Security", von Tsujii und Kasahara, Shokodo, 1990), um ein ursprüngliches Geheimnis s unter Verwendung des grundlegenden gemeinsam verwendeten Systems, das von A. Shamir vorgeschlagen wurde, gemeinsam zu verwenden, und um die verteilten Informationssegmente s_i (i = 1, ..., n) gemeinsam zu verwenden.
  • Genauer gesagt, alle die Informationssegmente, die vom bestätigbaren gemeinsam verwendeten Geheimsystem als Partialmatrizen angesehen werden können, die so erzeugt werden, daß sie Geheimabschnitte sind, die den Geheiminformationssegmenten s_i entsprechen. Unter Verwendung der "Cut and Choose"-Technik wird eine Bestätigung gemäß dem Erfordernis (d) befriedigend ausgeführt, so daß die Wahrscheinlichkeit des Auftritts von Fehlern in der Bestimmungsausgabe aufzeigt, ob die korrekte gemeinsame Verwendung für die verschlüsselte Geheiminformation ausgeführt wird. Da die Fehlerwahrscheinlichkeit von einem Parameter verringert werden kann, der sicherheitshalber eingesetzt wird, kann dies ignoriert werden. Ein Verfahren, das T. Rabin und M. Ben-Or vorgeschlagen hat (siehe "Verifiable Secret Sharing and Multiparty Protocols with Honest Majority", ACM STOC, 1989) als spezielles Beispiel.
  • (2) Ein Verfahren zur Verwendung einer Einwegfunktion ist eine nicht dialogfähige und hat eine spezielle algebraische Eigenschaft.
  • Zur Sicherheit des solchermaßen aufgebauten gemeinsam verwendeten Geheimsystems muß eine Verschlüsselungsannahme gefordert werden, so daß es schwierig ist, das Inverselement irgendeiner Einwegfunktion zu erfassen, die dieser algebraischen Eigenschaft entspricht (ein praktisches Verfahren zur Berechnung des Inverselements gibt es nicht). Ein spezielles Beispiel ist vorgeschlagen von P. Feldman (siehe "A Practical Scheme for Non-Interactive Verifiable Secret Sharing", IEEE FOCS, 1987).
  • Darüber hinaus, wie von T. Rabin, M. Ben-Or beschrieben (siehe "Verifiable Secret Sharing and Multiparty Protocols with Honest Majority", ACM STOC, 1989), D. Beaver (siehe "Secure Multiparty Protocols and Zero-Knowledge Proof Systems Tolerating a Faulty Minority", Journal of Cryptology, 1991, 4, Seiten 75–122; "Efficient Multiparty Protocols Using Circuit Randomization", Advances in Cryptology-Crypto '91, 1992) und M. Franklin und S. Haber (siehe "Joint Encryption and Message-Efficient Secure Computation", Advances in Cryptology-Crypto '93, 1994), kann eine Schaltung, die eine gemeinsame Berechnung in einem gegebenen endlichen Satz ausführen kann, vorgesehen sein durch Anwenden des oben beschriebenen bestätigbaren gemeinsam verwendeten Geheimverfahrens.
  • Hinsichtlich des obigen Dialogverfahrens (1) ist es jedoch bekannt, daß die Übertragungsmenge, die erforderlich ist, ein Bit gemeinsam zu verwenden, liegt in der Größenordnung von n^3K^2 (wobei a^b ab bedeutet) für n Geheimabschnitte, wenn ein Parameter zur Sicherheit dargestellt wird durch k (normalerweise wird ein Wert von 100 verwendet), und daß dieses Verfahren nicht effizient ist.
  • Hinsichtlich des Nicht-Dialogverschlüsselungsverfahrens (2) muß die Berechnung der Einwegfunktion einer speziellen Reihenfolge n mal ausgeführt werden für die n Geheimabschnitte. Insbesondere wenn der geheime gemeinsam verwendete Prozeß angewandt wird als Partialprozeß zur sicheren Ausführung einer gemeinsamen Berechnung, wird die Anzahl geheimer gemeinsam verwendeter Prozesse, die auszuführen sind, ansteigen (das heißt, in der Größenordnung von n2 für gemeinsames Multiplizieren). Die Gesamtzahl der Berechnungen wird unpraktikabel umfangreich.
  • Hinsichtlich der obigen Beschreibung erfordert das Dialogverfahren (1) bei der herkömmlichen Technik eine große Übertragungsmenge, während das verschlüsselte Verfahren (2) einen großen Rechenaufwand erfordert.
  • In den meisten herkömmlichen Übertragungssystemen wird die Information in Datenblockeinheiten übertragen, die Pakete genannt werden. Selbst wenn ein Paket an ein Bestimmungsziel gesendet ist, können alle die Geräte (Teilnehmer), die ein Übertragungssystem aufbauen, diese Pakete empfangen. Da eine Vielzahl von Geräten über denselben Übertragungskanal angeschlossen sind, ist es des weiteren schwierig, die Sendequelle eines Pakets zu spezifizieren. Ein derartiges Übertragungssystem neigt folglich dazu, sich selbst dem Angriff auszusetzen, wie beispielsweise durch "wiretapping" [unbefugtes Abhören], ein Vorgang, wodurch ein Paket falsch erfaßt wird, das an verschiedene Ziele gesendet wird, und durch "Irreführung", wobei ein gewisses Gerät fälschlicherweise die Identität eines anderen Gerätes annimmt.
  • Nun sei diskutiert, wie die Sicherheit für das obige Übertragungssystem verbessert werden kann, das sicherstellt, daß Sendeinformation nur dem Teilnehmer bereitgestellt wird, der als bestimmtes Sendeziel ausgewählt ist und daß es keinen unberechtigten Zugriff gibt (Information wird geheimgehalten). Eine Verschlüsselungstechnik (Ikeno und Koyama, "Current Cryptology Theory", Seiten 224–225, IEEE) ist eine der bekannten nützlichen Techniken.
  • Ebenfalls bekannt ist, daß die Verschlüsselungstechnik effektiv ist zum Realisieren nicht nur der Funktion des Geheimhaltens der Information, sondern auch einer Information zum Bestätigen der Empfangsinformation und einer Funktion, die eine "Digitalunterschrift" genannt wird, um einer dritten Person zu bestätigen, daß die Empfangsinformation von einem bestimmten Gerät gesendet wurde. Indem die verschlüsselte Übertragung mit einer Signatur ausgeführt wird, die eine digitale Unterschrift anwendet, kann das unberechtigte Abhören und die Irreführung vermieden werden.
  • Weit verbreitet ist insbesondere ein Bestätigungs- und Digitalsignaturverfahren unter Verwendung des RSA-Geheimsystems, welches eine der Verschlüsselungssysteme mit öffentlichem Schlüssel ist (siehe beispielsweise "A Method für Obtaining Digital Signatures and Public Key Cryptosystems", R. Rivest, A. Shamir und L. Adleman, Communications of the ACM, 21, 2, 1978, Seiten 120–125, oder siehe das Dokument USP 4 405 829).
  • Ein anderes Digitalsignaturverfahren, das ein Verschlüsselungssystem mit öffentlichem Schlüssel verwendet und sich von dem RSA-Verschlüsselungssystem unterscheidet, ist ein allgemein bekanntes Verfahren, das von A. Fiat und A. Shamir vorgeschlagen wurde (siehe "How to Prove Yourself: Practical Solutions to Identification and Signature Problems", Advances in Cryptology – Crypto, 87, Lecture Notes In Computer Science, 263, Springer-Verlag, 1988, Seiten 186–194, oder siehe das Dokument USP 4 748 668). Nach diesem Verfahren werden folgende Prozesse ausgeführt, um eine effiziente Identifikation und eine Digitalsignatur für eine gegebene Meldung bereitzustellen.
    • (1) Ein Gerät, das eine Digitalsignatur für eine gegebene Mitteilung berechnet, oder ein Gerät, das als zuverlässige Zentrale für ein Übertragungssystem dient, wählt ein Element zufällig unter {1, ..., N – 1} aus (wobei N ein Produkt zweier Primzahlen p und q ist), und ausgewählte Element a wird angesehen als Geheiminformation für das Gerät, das eine Unterschrift berechnet.
    • (2) Das Gerät, das das Geheimelement a ausgewählt hat, berechnet a' mod N (angemerkt sei, daß 1 gcd (1, lambda(N)) = 1, wobei lambda(N) = 1 cm(p – 1, q – 1), gcd(a, b) der größte gemeinsame Teiler ist, und 1 cm(a, b) bedeutet das kleinste gemeinsame Vielfache) und verwendet das Ergebnis als öffentliche Information zum Bestätigen einer Digitalunterschrift, die das Gerät erzeugt.
    • (3) Im vom Gerät ausgeführten Prozeß zum Erzeugen einer Digitalsignatur für eine gegebene Mitteilung m wird R = r^1 mod N, welches erfaßt wird unter Verwendung des Geheimelements r, das unter {1, ..., N – 1} und R|m erfaßt wird, welches ein Wert ist, der gewonnen wird durch Fortsetzen der gegebenen öffentlichen Mitteilung m und angesehen wird als die Eingaben, und e = h(R|m) berechnet wird unter Verwendung einer vorbestimmten Funktion h. Danach wird s = r*a^e(mod N) berechnet unter Verwendung der obigen Werte als Eingangswerte. Die erzielten Ergebnisse s und R werden verwendet als Digitalsignatur für eine gegebene Mitteilung.
    • (4) Zum Bestätigen der Digitalsignatur (s, R) für die gegebene Mitteilung m werden s^1 mod N und R*(a^1)^(h(R|m)) mod N berechnet, und die Digitalsignatur wird bestätigt, wenn die Ergebnisse gleich sind.
  • Nach einem von C. P. Schnorr vorgeschlagenen Verfahren zur effizienten Identifizierung und Erfassung einer Digitalsignatur für eine gegebene Mitteilung (siehe "Efficient Identification and Signatures For Smart Cards", Advances in Cryptology – Crypto, 89, Lecture Notes In Computer Science, 435, Springer-Verlag, 1990, Seiten 239–252 oder siehe auch Dokument USP 4 995 082) die folgenden Prozesse ausgeführt.
    • (1) Ein Gerät, das eine Digitalsignatur für eine gegebene Mitteilung berechnet, oder ein Gerät, das als zuverlässige Zentrale für ein Übertragungssystem dient, wählt ein Element a zufällig aus unter {1, ..., p} (wobei p eine Primzahl ist), und das ausgewählte Element a wird angesehen als Geheiminformation für das Gerät, das eine Signatur berechnet.
    • (2) Das Gerät, das das Geheimelement a ausgewählt hat, berechnet g–a mod q (wobei q eine Primzahl ist, daß p ein Teiler von q – 1 ist und die Anzahl von Ziffern vom Element g, die zum endlichen Satz GF(q) gehören, ist p) und verwendet das Ergebnis als öffentliche Information zum Bestätigen einer Digitalsignatur, die das Gerät erzeugt.
    • (3) Im Prozeß, den das Gerät ausführt, zum Erzeugen einer Digitalsignatur für eine gegebene Mitteilung m, wird R = gr mod q zufällig unter {1, ..., p} ausgewählt und erfaßt unter Verwendung eines Geheimelements r, wobei ein Wert, der gewonnen wird durch Fortsetzen der gegebenen öffentlichen Mitteilung m als Eingangssignale angesehen werden, und e = h(R|m) berechnet wird unter Verwendung einer vorbestimmten Funktion h. Danach wird s = r + a*e(mod p) unter Verwendung der obigen Werte als Eingangswerte berechnet. Die erzielten Ergebnisse s und R werden als Digitalsignatur für eine gegebene Mitteilung verwendet.
    • (4) Zum Bestätigen der Digitalsignatur (s, R) für die gegebene Mitteilung m wird h(g^s((–a))^(h(R|m)))(mod q)|m(R|m)) berechnet (angemerkt sei, daß x^y xy darstellt) und die Digitalsignatur wird bestätigt, wenn dieses Ergebnis und e gleich sind.
  • Nach einem Verfahren, das T. ElGamal für das effiziente Identifizieren für eine erfaßte Digitalsignatur für eine gegebene Mitteilung vorschlug (siehe "A Public-Key Cryptosystem And A Signature Scheme Based On Discrete Logarithms", IEEE Transactions On Information Theory, IT-31, 4, 1985, Seiten 469–472, American National Standard X9.30-199x, digital Signature Algorithm, Februar 1992), werden folgende Prozesse ausgeführt.
    • (1) Ein Gerät, das eine Digitalsignatur für eine gegebene Mitteilung berechnet, oder ein Gerät, das als zuverlässige Zentrale für ein Übertragungssystem dient, wählt ein Element a zufällig aus unter {1, ..., p}, wobei p eine Primzahl ist), und das ausgewählte Element a wird angesehen als Geheiminformation für das Gerät, das eine Signatur berechnet.
    • (2) Das Gerät, das das Geheimelement a ausgewählt hat, berechnet g^(–a) mod q (wobei a eine solche Primzahl ist, daß p ein Teiler von q – 1 ist, und der Anzahl von Ziffern vom Element g, das zum endlichen Satz GF(q) p ist), und das Ergebnis wird verwendet als öffentliche Information zum Bestätigen einer Digitalsignatur, die das Gerät erzeugt hat.
    • (3) Im Prozeß, der vom Gerät zum Erzeugen einer Digitalsignatur für eine gegebene Mitteilung m ausgeführt wird, erfolgt das Erfassen unter Verwendung von R = gr mod q, unter Verwendung eines Geheimelements r, das zufällig ausgewählt wird unter {1, ..., p} und e = h(m), welches ein Wert ist, der gewonnen wird durch eine vorbestimmte Funktion h, während die gegebene öffentliche Mitteilung m angesehen wird als die Eingabe, so wird s = (e + R*a)*r–1mod p berechnet. Die gewonnenen Ergebnisse s und R werden als Digitalsignatur für eine gegebene Mitteilung verwendet.
    • (4) Um die Digitalsignatur (s, R) für die gegebene Mitteilung m zu bestätigen, werden (g^(–a))^R(g^r)^s und g^m (mod q) berechnet, und die Digitalsignatur wird bestätigt, wenn diese Ergebnisse gleich sind.
  • Für das oben beschriebene Informationsübertragungssystem, das die Geheimhaltung beibehält und die Bestätigung erzielt, werden, wie Y. Desmedt und Y. Frankel vorgeschlagen haben, als Mittel zum Erhöhen der Zuverlässigkeit bei Beibehaltung der Geheiminformation, ein Verfahren zum gemeinsamen Verwenden einer Geheiminformation und zum gemeinsamen Verwenden der Berechnung einer Digitalsignatur für eine gegebene Mitteilung unter einer Vielzahl von Computern verbunden mit einem Übertragungsweg (diese Computer sind nachstehend als "Unterzeichnergruppe" bezeichnet, wobei jeder Computer, der zu dieser Gruppe gehört, als "Teilnehmer" bezeichnet wird, und die Anzahl der Teilnehmer in einer Gruppe wird dargestellt als n)(siehe "Threshold Cryptosystems", Advances in Cryptology – Crypto
    Figure 00110001
    89, 435, Springer-Verlag, 1990, Seiten 307–315; und "Shared Generation of Authenticators And Signatures", Advances in Cryptology – Crypto
    Figure 00110002
    91, 576, Springer-Verlag, 1992, Seiten 457–469).
  • Der fundamentale Abschnitt dieses gemeinsam verwendeten Digitalsignaturverfahrens ist das gemeinsame Verwenden der Geheiminformation in einem Übertragungssystem, das aus der oben aufgeführten Vielzahl von Teilnehmern besteht, um den zuvor erwähnten Erfordernissen (a) und (b) zu genügen.
  • Das gemeinsam verwendete Digitalsignaturverfahren, das von Y. Desmedt und Y. Frankel vorgeschlagen wurde, das das RSA-Verschlüsselungssystem verwendet, basiert auf dem geheimen gemeinsam verwendeten Verfahren und genügt den folgenden Erfordernissen (I) und (II).
    • (I) Die Zusammenarbeit von t + 1 Teilnehmern ist hinreichend zum Erzeugen einer Digitalsignatur einer Unterzeichnergruppe für eine gegebene Mitteilung.
    • (II) Eine Digitalsignatur für eine gegebene Mitteilung kann nicht erzeugt werden, wenn die Anzahl der Teilnehmer geringer als ein Schwellwert ist (das heißt, t oder kleiner).
  • Mit lediglich den Erfordernissen (I) und (II), wenn ein Digitalsignaturerzeugungsprozeß gemeinsam verwendet wird, passiert es jedoch, daß das Erzeugen einer Signatur nicht erfolgen kann, wenn es einen unfairen Teilnehmer unter den Zusammenarbeitenden t + 1 oder mehr Teilnehmern gibt.
  • Andererseits ist es bekannt, daß ein Verfahren zum Erzeugen einer Digitalsignatur für jeden Teilnehmer, der eine beliebige Art von Fehlern machen kann auf der Grundlage eines bestätigbaren gemeinsam verwendeten Geheimsystems, das festgelegt werden kann durch die vorigen Erfordernisse (a) bis (d). Mit anderen Worten, es kann ein gemeinsam verwendetes Digitalsignatursystem realisiert werden, das den folgenden Erfordernissen genügt.
    • (I') Eine Digitalsignatur für eine gegebene Mitteilung läßt sich erzeugen, sofern t + 1 faire Teilnehmer zusammenarbeiten, selbst wenn ein unfairer Teilnehmer sich unter den fairen Teilnehmern befindet.
    • (II) Eine Digitalsignatur für eine gegebene Meldung kann nicht mit einer Anzahl von Teilnehmern erzeugt werden, die geringer als ein Schwellwert ist (beispielsweise t oder weniger).
  • Es ist bekannt, daß ein gemein verwendetes Erzeugungssystem für die verschiedenen zuvor beschriebenen Digitalsignaturverfahren ausgelegt werden können durch eine gemeinsam verwendete Rechenschaltung, die das obige bestätigbare gemeinsame Geheimverfahren anwendet.
  • Es ist bekannt, daß die Übertragungsmenge und die Rechenmenge, die erforderlich sind für das digitale gemeinsame verwendete Signatursystem, das den obigen Erfordernissen (I) und (II) genügt, praktikabel sind. Wenn ein Teilnehmer, der an der gemeinsamen Signatur und dem Erzeugungsprozeß teilnimmt, wie zuvor beschrieben, und führt eine unfaire Sache aus, dann kann die Signatur nicht erzeugt werden.
  • Da das gemeinsam verwendete Digitalsignatursystem, das das bestätigbare gemeinsam verwendete Geheimverfahren anwendet und die gemeinsam verwendete Rechenschaltung und den Erfordernissen (I') und (II) genügt, wie zuvor beschrieben, so ist es bekannt, daß die erforderlichen Übertragungsmengen unpraktikabel sind gemäß dem dialogartige bestätigbaren gemeinsam verwendeten Geheimverfahren (1) und daß die erforderlichen Rechenmengen unpraktikabel sind gemäß dem nicht dialogfähigen bestätigbaren gemeinsam verwendeten Geheimverfahren (2).
  • Die enorme Übertragungsmenge ist erforderlich für das digitale gemeinsam verwendete Signatursystem, wie zuvor beschrieben, das auf dem dialogfähigen rückmeldbaren gemein verwendeten Geheimverfahren (1) basiert durch Anwenden der herkömmlichen Technik, während die enormen Rechenmengen erforderlich sind für das gemeinsam verwendete Digitalsignatursystem, das auf dem bestätigbaren dialogfähigem gemeinsam verwendeten Geheimverfahren (1) basiert durch Anwenden der herkömmlichen Technik, während die enormen Rechenmengen erforderlich sind für das gemein verwendete Digitalsignatursystem, das auf dem dialogfähigen stetigbaren gemeinsame verwendeten Geheimverfahren basiert durch Anwenden der herkömmlichen Technik.
  • Als andere Gegenmaßnahme zum Reduzieren der Gefahr aus Abhören und Irreführung gut bekannt ist ein Berichtigungsverfahren für ein Netzwerk, das Kerberos genannt wird (siehe "UNIX Security", von S. Garfinkel und G. Spafford/herausgegeben und übersetzt von Hide Yamaguchi ASCII, Seiten 349–357 und Seiten 535–542, 1993), das ein Verschlüsselungssystem mit gemeinsamem Schlüssel ist, der eine geringe Anzahl von Berechnungen erfordert.
  • Spezielle Berechtigungsprotokolle für Kerberos werden nun erläutert, die auf den Berechtigungsprotokollen von Needham und Schroeder basieren (siehe R. N. Needham und M. D. Schroeder: "Using Encryption for Authentication In Large Network Of Computers", CACM 21, 12, Seiten 993–999, Dezember 1978) und Rettungs-RPC (Rettungsfernsteuerrufprozedur) Protokolle von Birrell (siehe A. D. Birrell: "Secure Communications Using Remote Procedure Calls", ACM Transaction Computer Systems, Ausgabe 3, Nr. 1, Seiten 1–14, Februar 1985).
  • Im allgemeinen gibt es in Kerberos einen Beglaubigungsserver, der Geheiminformation verwaltet (ist einem Geheimschlüssel äquivalent) für alle Geräte im Übertragungssystem. Der Beglaubigungsserver verwendet gemeinsam den Geheimschlüssel pki mit den individuellen Geräten i, wie in 31A gezeigt. Eine Person, die hiernach eine Bescheinigung anfordert, wird Prüfer genannt, und eine Person, die einen Prüfer einer Berechtigung bereitstellt, wird Beglaubiger genannt.
  • Wenn der Prüfer A den Beglaubiger B zur Bestätigung auffordert, wie in 31B gezeigt, sendet A Daten 161, die die Form {A, B, R} haben, an einen Beglaubigungsserver. Angemerkt sei, daß A und B öffentliche Identifikationsinformationspunkte sind, die den Tester A und den Beglaubiger B spezifizieren, wie ein Gerät oder ein Nutzername, und R ist eine zufällig ausgewählte Zahl.
  • Nach Empfang der Daten 161 gibt der Beglaubigungsserver Daten 162 zurück, die die Form {Authentisierungselement, R, B, CK}
    Figure 00150001
    pkA, an A ab. Angemerkt sei, daß {M}
    Figure 00150002
    k Daten bedeutet, die gewonnen werden durch Kodieren der Meldung M unter Verwendung des Schlüssels k, wobei das Berechtigungselement Daten 163 sind, die aufgebaut sind durch {T, A, CK}
    Figure 00150003
    pkB unter Verwendung des Zeitstempels T, und CK bedeutet einen gemeinsamen Schlüssel, den der Beglaubigungsserver erzeugt und der hiernach für die Verschlüsselungsübertragung mit gemeinsamem Schlüssel zwischen A und B verwendet wird.
  • Ein gemeinsamer Geheimschlüssel zur gemeinsamen verschlüsselten Übertragung zwischen einem Tester und einem Beglaubiger wird hiernach Konversationsschlüssel genannt. Der Beglaubigungsserver dient folglich einem Auslieferungsserver für einen Konversationsserver. Letztlich sendet der Testet A das zuvor beschriebene Berechtigungselement 163 an den Beglaubiger B. Der Beglaubiger B verbindet das empfangene Berechtigungselement 163 mit einem geheimen Mutterschlüssel pkB zur Berechtigung von A und führt dann die verschlüsselte Übertragung unter Verwendung des gemeinsamen Konversationsschlüssel CK aus.
  • Folglich ist es möglich, bei der Gefahr des Abhörens und des Irreführens verkleinerte Authentisierungsprotokolle zu haben, die Kerberos verwenden.
  • Gemäß dem Verschlüsselungsverfahren mit öffentlichem Schlüssel muß jedoch eine Berechnung des Rests einer Hochzahlserie einer Ganzzahl erfolgen, die 512 Bits hat oder größer ist, so daß die Anzahl von Berechnungen enorm ist.
  • Da die Protokolle für Kerberos im Verfahren mit gemeinsamem Schlüssel einen Beglaubigungsserver haben, der die Geheiminformation für alle Geräte verwaltet, die ein Übertragungssystem bilden, ist ein Beglaubigungsserver enthalten, der aus physischen Gründen voll zuverlässig ist und ebenfalls erforderlich ist (gleiches gilt für das Verschlüsselungsverfahren mit öffentlichem Schlüssel, wobei eine Konzentrationssteuerzentrale, die alle öffentlichen Schlüssel verwaltet, erforderlich ist). Um die Sicherheit sicherzustellen, muß ein Authentisierungsserver strikt gesteuert werden durch Plazieren desselben in einem verschlossenen Raum, den niemand betreten darf, es sei denn, er hat eine Erlaubnis. Wenn darüber hinaus der Beglaubigungsserver nicht herangezogen werden kann oder wegen des Auftretens eines Fehlers oder der Begehung eines nicht zulässigen Aktes, wird die Fehlertoleranz so verringert, daß die Sicherheit des gesamten Systems zusammenbricht.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Eine Aufgabe der vorliegenden Erfindung ist es, ein bestätigbares gemeinsam verwendetes Geheimverfahren zu schaffen, durch das sowohl die Rechenmenge als auch die Übertragungsmenge, die erforderlich sind zum Bilden einer praktikablen Reihenfolge der Größe, wenn verglichen mit jenen erforderlich für das Dialogsystem (1) und das Verschlüsselungssystem (2), wie oben beschrieben.
  • Die vorliegende Erfindung ist so eingerichtet, daß sie in der Mitte zwischen dem Dialogsystem (1) und dem Nichtdialogsystem (2) liegt, ein bestätigbares gemeinsam verwendetes Geheimverfahren anwendet, durch das sowohl die Rechenmenge als auch die Übertragungsmenge, die erforderlich sind, um eine praktikable Reihenfolge der Größe zu bilden, und schlägt ein gemeinsam verwendetes digitales Signatursystem vor (ein System, das keine Signatur erzeugen kann, wenn die Anzahl der Teilnehmer, die nicht zulässige Akte ausführen, gleich oder größer als ein Schwellwert ist, kann aber derartige Teilnehmer identifizieren), positioniert zwischen dem Erfordernis (I) (ein System, das keine Signatur erzeugen kann, wenn es einen Teilnehmer gibt, der einen unzulässigen Akt ausführt), und dem Erfordernis (I'), ein System, das eine Signatur erzeugen kann, selbst wenn die Anzahl von Teilnehmern, die unerlaubte Handlungen ausführen, gleich oder kleiner als ein spezieller Schwellwert ist).
  • Eine andere Aufgabe der vorliegenden Erfindung ist es, die zuvor beschriebenen Probleme bezüglich Zuverlässigkeit für den Beglaubigungsserver zu lösen, so daß ein gemeinsam verwendeter Beglaubigungsserver vorgeschlagen wird, der eine Vielzahl von Geräten verwendet, um Geheiminformationen gemeinsam zu verwenden und verwalten zu können.
  • Erfordernisse für den gemein verwendeten Beglaubigungsserver sind die folgenden:
    • (1) Für Tester und Beglaubiger führen die gemeinsam verwendeten Berechtigungsprotokolle dieselbe Berechtigungsfunktion aus wie die Berechtigungsprotokolle, die bei der herkömmlichen zentralisierten Verwaltung vorgesehen sind.
    • (2) Für Tester und Beglaubiger stellen die gemein verwendeten Berechtigungsprotokolle dieselbe Schnittstelle (Datenformat) sicher, wie die Berechtigungsprotokolle, die durch herkömmliche zentralisierte Verwaltung bereitstehen.
    • (3) Für Tester und Beglaubiger werden die gemein verwendeten Berechtigungsprotokolle realisiert durch Ausführen derselben Rechenmenge, wie sie erforderlich ist für die Berechtigungsprotokolle, die bei der herkömmlichen zentralisierten Verwaltung bereitstehen.
    • (4) Den oben beschriebenen Anforderungen wird entsprochen, mit der Ausnahme, daß wenn mehr als die Hälfte der Geräte, die den gemein verwendeten Beglaubigungsserver bilden, nicht zuverlässig sind.
  • Ein Artikel mit dem Titel "Efficient and Secure Multiparty Generation of Digital Signatures Based on Discrete Logarithms" von Cerecedo et al. in IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences 76a (1993), April, Nr. 4, Tokyo, JP offenbarte Protokolle für die gemeinsame Berechnung von Algorithmen, die digitalen Signaturschemata assoziiert sind, auf der Grundlage eines diskreten Logarithmus.
  • Das in diesem Papier offenbarte Schema verwendet diskrete Logarithmen und basiert auf Schnorr's Schema und auf zwei Varianten des ElGamal-Schemas.
  • Ein Artikel in Advances in Cryptology – Crypto '89, Proceedings, Santa Barb ara, CA, USA, ISBN 3-540-97317-6, Chi-Sung Laih et al. und mit dem Titel versehen "Dynamic threshold scheme based on the definition of cross-product in an N-dimensional linear space" beschreibt ein dynamisches Schwellwertschema auf der Grundlage der Definition von einem Kreuzungspunkt in einem N-dimensionalen linearen Raum und konzentriert sich auf die Untersuchung der Charakterisierungen von Schwellwert/RAM-Schemata, die Anlaß zu zeitabhängigen Schwellwert/RAM-Schemata geben.
  • Nach einem Aspekt sieht die vorliegende Erfindung ein Geheiminformationsverarbeitungsverfahren vor, wie es im Patentanspruch 1 angegeben ist, und ein Geheiminformationsverarbeitungssystem, wie es im Patentanspruch 22 angegeben ist.
  • Andere Merkmale und Vorteile neben jenen zuvor abgehandelten werden dem Fachmann aus der nachstehenden Beschreibung bevorzugter Ausführungsbeispiele der Erfindung deutlich, die nun folgt. In der Beschreibung wird Bezug genommen auf die beiliegende Zeichnung, die ein Teil der Beschreibung bildet und die ein Beispiel der Erfindung veranschaulicht. Ein derartiges Beispiel ist jedoch nicht erschöpfend für die verschiedenen Ausführungsbeispiele der Erfindung, und folglich wird auf die Patentansprüche verwiesen, die der Beschreibung bestimmen, um den Umfang der Erfindung festzulegen.
  • KURZE BESCHREIBUNG DER ZEICHNUNG
  • 1 ist ein Blockdiagramm, das die Struktur eines Übertragungssystems gemäß einem Ausführungsbeispiel der vorliegenden Erfindung darstellt;
  • 2 ist ein Blockdiagramm, das die Struktur eines Informationsverarbeitungsgerätes darstellt, das jeder Teilnehmer verwendet;
  • 3 ist ein Diagramm, das die Beziehung zwischen einem Geheimnis und einer Partialmatrix zeigt;
  • 4 ist ein Diagramm, das die Verarbeitung für eine Einwegquasizufallszahlfunktionsoperation zeigt;
  • 5 ist ein Diagramm, das die Prozeduren zur gemeinsamen Geheimverarbeitung zeigt;
  • 6 ist ein Diagramm, das die Prozeduren zur geheimen Verschlüsselungsverarbeitung zeigt;
  • 7 ist ein Diagramm zur Erläuterung der gemeinsamen Verwendung und der Rechenverarbeitung;
  • 8A bis 8C sind Diagramme, die die Verarbeitung veranschaulichen zum Erzielen eines quasi Zufallszahlenwertes aus einer eingegebenen Mitteilung;
  • 9 ist ein Blockdiagramm, das die Struktur eines Übertragungssystems darstellt, bei dem eine Digitalsignatur während der gemeinsamen Verwendung erzeugt wird;
  • 10A und 10B sind Diagramme zur Erläuterung der Prozeduren für die Erzeugung eines Geheimschlüssels und eines öffentlichen Schlüssels;
  • 11 ist ein Diagramm zur Erläuterung der Ein- und Ausgabebeziehung für gemeinsam verwendete geheime Linearkombinationsverarbeitung;
  • 12 ist ein Diagramm zur Erläuterung der Prozeduren für die gemeinsame Signaturerzeugungsverarbeitung;
  • 13A und 13B sind Diagramme zur Erläuterung von Prozeduren für die Verarbeitung der Erzeugung eines Geheimschlüssels und eines öffentlichen Schlüssels;
  • 14 ist ein Diagramm zur Erläuterung geheimer gemein verwendeter Multiplizierverarbeitung;
  • 15 ist ein Diagramm zur Erläuterung der Ein- und Ausgabebeziehung für die gemeinsam verwendete geheime Linearkombinationsverarbeitung;
  • 16 ist ein Diagramm zur Erläuterung der Prozeduren zur gemeinsam verwendeten Signaturerzeugungsverarbeitung;
  • 17 ist ein Diagramm zur Erläuterung der Prozeduren für bestätigbare geheime gemeinsam verwendete Multiplizierverarbeitung;
  • 18 ist ein Diagramm zur Erläuterung der Prozeduren zum Bestätigen der geheimen gemeinsam verwendeten Multiplikationsverarbeitung.
  • 19 ist ein Diagramm zur Erläuterung der Prozeduren zur geheimen gemeinsamen Verarbeitung und Multiplizierverarbeitung;
  • 20 ist ein Diagramm zur Erläuterung der Prozeduren für gemein verwendete Signaturerzeugungsverarbeitung;
  • 21 ist ein Blockdiagramm, das die Struktur eines Übertragungssystems zeigt, bei dem eine gemeinsame Verwendung zur Authentisierung ausgeführt wird;
  • 22 ist ein Diagramm zur Erläuterung gemein verwendeter geheimer Linearkombinationsverarbeitung;
  • 23A und 23B sind Diagramme, die die Prozeduren zur gemein verwendeten Pseudozufallszahlenerzeugungsverarbeitung zeigen;
  • 24A und 24B sind Diagramme, die die Prozeduren zur gemeinsamen Verwendung eines Geheimschlüssels und der Verschlüsselungsverarbeitung zeigen;
  • 25A und 25B sind Diagramme, die die Prozeduren für gemeinsam verwendete Berechtigungsprotokolle zeigen;
  • 26 ist ein Diagramm, das die Prozeduren für Offline-Pseudozufallszahlenerzeugungsverarbeitung zeigt;
  • 27 ist ein Diagramm, das die Prozeduren zur Online-Geheimschlüsselauslieferverarbeitung zeigt;
  • 28A und 28B sind Diagramme, die die Prozeduren für gemein verwendete Berechtigungsprotokolle zeigen;
  • 29A und 29B sind Diagramme, die die Prozeduren für gemein verwendete Berechtigungsprotokolle zeigen;
  • 30A und 30B sind Diagramme, die die Prozeduren für gemeinsam verwendete Berechtigungsprotokolle zeigen; und
  • 31A und 31B sind Diagramme, die die Prozeduren für herkömmliche gemeinsam verwendete Berechtigungsprotokolle zeigen.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
  • Die bevorzugten Ausführungsbeispiele der vorliegenden Erfindung sind nachstehend anhand der beiliegenden Zeichnung beschrieben.
  • Ausführungsbeispiel 1
  • Zunächst beschrieben ist das Prinzip der vorliegenden Erfindung.
  • 3 ist ein Diagramm, das die Beziehung zwischen Geheimnis und Partialmatrix S zeigt.
  • In diesem Ausführungsbeispiel ist die Matrix S für das Geheimnis s eine Geheimsegment-n × n-matrix S = [s(i, j)] (i, j = 1, ..., n), das in einer später zu beschreibenden Weise gewonnen wird, durch Addiererfordernisse für eine Partialmatrix, die für eine herkömmliche Dialogart eines bestätigenden geheimen gemeinsam verwendeten Systems verwendet wird.
  • Der Vektor für jede Spalte, S_r(i) ist [s(i, 1), ..., s(i, n)] (i = 1, ..., n), ist ein geheimer Abschnittsvektor für Geheimnis s_r(i) (ein Vektor, dessen Element j ein geheimer Abschnitt des Teilnehmers j im gemeinsam verwendeten Verfahren eines gewissen Geheimnisses ist), und der Vektor für jede Zeile, S_c(j) = [s(1, j), ..., s(n, j)] (j = 1, ..., n) ist ein Geheimabschnittsvektor für Geheimnis s_c(j).
  • Die Vektoren [s_r(1), ..., s_s(n)] beziehungsweise [s_c(1), ..., s_r(n)], für Geheimnis s_r(i) und S_c(j) sind Geheimabschnittsvektoren für die Geheimelemente. In der gemeinsamen Geheimnisverwaltung werden der Zeilenvektor i (i = 1, ..., n) der solchermaßen strukturierten Partialmatrix, und das Geheimnis s_r(i) werden übertragen zu den Teilnehmern i als Geheiminformationssegment für jeden Teilnehmer i. Bei der Geheimverschlüsselungsverarbeitung, sofern der Teilnehmer, der das Informationssegment empfängt, keinen unzulässigen Akt ausführt, ist es möglich, mit sehr hoher Wahrscheinlichkeit zu bestätigen, ob die Informationssegmente, die die individuellen Teilnehmer senden, korrekt sind.
  • Die Reihenfolge in diesem Ausführungsbeispiel zum Bestätigen, ob die Informationssignale, die zu senden sind, im Geheimverschlüsselungsprozeß, korrekt sind, selbst wenn ein Teilnehmer, der Originalgeheiminformation erhält und Geheiminformationssegmente verteilt hat, eine nicht erlaubte Handlung ausführt, wird ein Wert erzeugt, der als Berechtigungselement für das Geheimnis s_r(i) dient, entsprechend einem jeden Teilnehmer i (i = 1, ..., n) erzeugt wird in einer Einwegquasizufallszahlenfunktion (siehe "Modern Cryptological Theroy," von Ikeno und Koyama, Seiten 224 bis 225, IEEE, 1986), bevor Geheiminformationssegmente verteilt werden.
  • Die Einwegquasizufallszahlenfunktion ist nachstehend erläutert.
  • Die Einwegquasizufallszahlenfunktion ist eine solche, bei der eine Datenkompressionsvermischung erfolgt, und mit dieser Funktion wird die Berechnung, durch die ein Ausgangswert angenommen wird, aus dem Eingangsweg leicht, aber die inverse Berechnung, durch die ein Eingangswert aus einem Ausgangswert erfaßt wird, ist schwierig. In diesem Ausführungsbeispiel jedoch ist eine spezielle algebraische Eigenschaft nicht erforderlich, verglichen mit der Einwegfunktion, die für das herkömmliche bestätigende nicht dialogfähige gemeinsam verwendetes Geheimsystem verwendet wird, und eine derartige Einwegquasizufallszahlenfunktion, die eine Hochgeschwindigkeitsrechnung bereitstellt, kann verwendet werden.
  • Ein spezielles Beispiel dieser Einwegquasizufallszahlenfunktion, die eine Hochgeschwindigkeitsberechnung bereitstellt, kann verwendet werden. Als spezifisches Beispiel einer Einwegquasizufallszahlenfunktion hat R. Merkel eine Einwegquasizufallszahlenfunktion vorgeschlagen, die Blockverschlüsselung anwendet, wie beispielsweise DES (Datenverschlüsselungsnorm (siehe "One-Way Hash Functions And DES," Advances in Cryptology – Crypto '89, Lecture Notes in Computer Science, Ausgabe 435, Springer Verlag, 1990).
  • 8A bis 8C sind Diagramme zur Erläuterung einer speziellen Struktur der Einwegquasizufallszahlenfunktion.
  • In 8A zeigt die Blockverschlüsselung auf, daß sie unter Verwendung von DES ausgeführt wird, und eine Verschlüsselungsschaltung 81 stellt ein 64-Bit-Ausgangssignal aus entweder einem 64-Bit-Eingangssignal oder einem 56-Bit-Schlüssel bereit (DES ist dargestellt durch E in den 8A bis 8C).
  • 8B zeigt die Verarbeitung für Funktion F auf, bei der dann die Eingangssignallänge 119 Bits und die Ausgangssignallänge 112 Bits ist, während DES zur Partialverarbeitung verwendet wird. Bezugszeichen 82 bedeutet eine Funktionsoperationsschaltung. Die Verarbeitung ist folgendermaßen festgelegt.
  • Zuerst wird das Eingangssignal in zwei Abschnitte k und x geteilt (es sei angemerkt, daß die Länge des Abschnitts k 55 Bits beträgt und die Länge des restlichen Abschnitts x 64 Bits). Dann wird der Abschnitt x als Eingabe für DES verwendet, während ein Wert '0', k, gewonnen durch Kombinieren des Abschnitts k mit '0', als 56-Bit-Schlüssel verwendet wird. Eine EXOR-Verknüpfung wird ausgeführt mit dem gewonnenen Ausgangssignal und x, und das angeforderte Ergebnis wird als 64 Bits auf der linken Seite des Ausgangssignals für die Funktion F angesehen. In derselben Weise wird der Abschnitt x als Eingabe verwendet, und ein Wert '1', k, der gewonnen wird durch Kombinieren des restlichen Abschnitts k mit '1', wird als Schlüssel verwendet. Eine EXOR-Verknüpfung erfolgt mit dem gewonnenen Ausgangssignal und x. Vom den sich ergebenden 64 Bits werden 48 Bits als Restabschnitt verwendet (die 48 Bits rechts) für die Funktion F. Dann wird das Ergebnis bereitgestellt durch Kombinieren der beiden solchermaßen gewonnenen Ausgangssignale als 112-Bit-Ausgangssignal der Funktion F.
  • Dem folgend zeigt 8C die Verarbeitung auf, bei der eine eingegebene Mitteilung ein Eingangssignal und Quasizufallsfunktionswert abgegeben wird, und Bezugszeichen 83 bedeutet eine Quasizufallszahlfunktionsrecheneinheit. Diese Verarbeitung wird folgendermaßen ausgeführt.
  • Die ersten 119 Bits einer gegebenen Mitteilung werden als Eingangssignal aus der oben beschriebenen Funktion F verwendet, und das erste 112-Bit-Ausgangssignal wird gewonnen. Dieses Ausgangssignal wird dann erneut als 112-Bit-Eingangssignal verwendet, und hiernach werden die restlichen 7 Bits der Mitteilung wiederholt der Funktion F eingegeben. Das 112-Bit-Ausgangssignal, gewonnen wenn die Mitteilung eingegeben ist ('0' wird erforderlichenfalls hinzugefügt, wenn es zu wenige Bits zur Eingabe der letzten 7 Bits der Mitteilung gibt), wird als Quasizufallszahlenwert der Mitteilung verwendet.
  • R. Merkel postulierte in seinem zuvor zitierten Papier, daß die Einwegquasizufallszahlenfunktion (das heißt, der Faktor, der es sehr erschwert, wenn ein Quasizufallszahlenwert für denselben zu erzielenden Quasizufallswert angegeben wird, wenn eine abweichende Eingangsmitteilung angefordert ist), die wie oben berechnet wurde, sicherheitshalber bereitgestellt wird, (wenn ein Eingangssignal gegeben ist, ist ein Ausgangssignal eine Zufallsvariable, die aus einem Schlüssel gewonnen wird, und wenn ein Ausgangssignal angegeben ist, wobei ein Eingangssignal eine aus einem Schlüssel gewonnene Zufallsvariable wird) von der Blockverschlüsselung, wie die oben verwendete DES.
  • Im selben Papier ist auch eine Einwegquasizufallszahlenfunktion vorgeschlagen worden, die effizienter ist als die zuvor beschriebene Quasizufallszahlenfunktion. Darüber hinaus hat R. Rivest eine effiziente Einwegquasizufallszahlenfunktion vorgeschlagen, die keine Blockverschlüsselung anwendet (siehe "The MD4 Message Digest Algorithm", Advances in Cryptology – Crypto '90, Lecture Notes in Computer Science, Ausgabe 537, Springer-Verlag, 1991. Nist Federal Information Processing Standard for Secure Hash, American National Standard X9.30-199x).
  • Nachstehend beschrieben ist eine Cut-and-Choose-Verarbeitung.
  • Um zu bestätigen, ob die Geheiminformationssegmente, die alle Teilnehmer empfangen haben, in der gemeinsamen Geheimverarbeitung Informationssegmente für ein bestätigbares gemeinsam verwendetes Geheimnis sein können, wie Cut and Choose, wie beim herkömmlichen gemeinsam verwendeten Geheimsystem der Dialogart ausgeführt, Partialmatrizen und Quasizufallszahlenwerte für die Geheimelemente s werden verteilt, und zur selben Zeit werden Partialmatrizen und Quasizufallszahlenwerte für k Geheimnisse 11, ..., 1k, die zufällig ausgewählt sind. Jede Geheiminformation bezüglich der k/2-Geheimnisse (1i(1), ..., 1i(k/s), die zufällig von allen Teilnehmern bestimmt sind, werden rundgesendet. Hinsichtlich der restlichen k/2-Geheimnisse (1j(1), ..., 1j(k/2)) wird jede Geheiminformation bezüglich 1j(1) + s, ..., ij(k/2) + s rundgesendet. Wenn die Anzahl der Abschnitte, die Fehler aufweisen, in allen Rundsendeinformationen t übersteigen, wird bestimmt, daß die gemeinsam verwendete Geheimverarbeitung nicht in Ordnung ist.
  • Auf diese Weise kann ein geheimes gemeinsam verwendetes Verfahren bereitgestellt werden, das folgenden Anforderungen (c') und (d') anstelle der Anforderungen (c) und (d) des herkömmlichen bestätigbaren geheimen gemeinsam verwendeten Verfahrens genügt; und durch Anwenden dieses Verfahrens kann ein Verfahren eines Übertragungssystems zur sicheren Ausführung der gemeinsam verwendeten Berechnung realisiert werden.
    • (c') Wenn nicht korrekte Informationssegmente mit korrekten Informationssegmenten gemischt sind, kann die ursprüngliche Geheiminformation nicht entschlüsselt werden, selbst nicht mit t + 1 korrekten Informationssegmenten, aber der Teilnehmer, der eine nicht zulässige Handlung ausgeführt hat, läßt sich identifizieren.
    • (d') Haben die individuellen Teilnehmer die Informationssegmente für ein Geheimnis und den Inhalt der Informationssegmente nicht korrekt für die Entschlüsselung der Geheiminformation x empfangen, kann ein Teilnehmer, der eine unzulässige Handlung begeht, während der Verschlüsselungsverarbeitung identifiziert werden.
  • Diese Erfordernisse ermöglichen das Identifizieren verletzender Teilnehmer, das heißt, die Fehlerfeststellung, obwohl wie beim herkömmlichen Verfahren ein Geheimnis nicht entschlüsselt werden kann, das heißt, die Fehlerkorrektur läßt sich nicht ausführen, wenn es einen verletzenden Teilnehmer gibt. Mit diesen Erfordernissen (c) und (d) kann eine gemeinsame Operation ausgeführt werden (Fehlertoleranz zum Eigentum wird realisiert), selbst wenn es einen verletzenden Teilnehmer gibt. Die Feststellung verletzender Teilnehmer ist jedoch möglich durch Umschalten des Erfordernisses (c'). Die Verarbeitung wird nach freigegebenen Warnung erneut ausgeführt, und eine korrekte Ausgabe läßt sich erzielen und die Fehlertoleranz zum Eigentum kann realisiert werden.
  • Folglich ist in diesem Ausführungsbeispiel ein bestätigbares geheimes gemeinsam verwendetes Verfahren vorgeschlagen, das einen Teilnehmer identifizieren kann, der eine unzulässige Handlung begeht, obwohl gemeinsam verwendete Geheimnisse nicht entschlüsselt werden können, wenn es einen derartigen Teilnehmer gibt. Somit ist es möglich, ein bestätigbares geheimes gemeinsam verwendetes Verfahren bereitzustellen, das sich zwischen dem dialogartigen Verfahren (1) und dem verschlüsselten Verfahren (2) befindet, wie oben beschrieben, und das eine Berechnungsmenge erfordert und eine Übertragungsmenge, die innerhalb einer praktikablen Größenordnung liegen.
  • 1 ist ein Diagramm, das ein Informationsverarbeitungssystem darstellt nach einem Ausführungsbeispiel der vorliegenden Erfindung, das gemeinsam verwendete Informationsverarbeitungsgeräte enthält.
  • In 1 werden Informationsverarbeitungsgeräte 11 von Teilnehmern eines Systems verwendet. In der folgenden Erläuterung werden jedes Gerät und ein Teilnehmer, der dieses verwendet, als dieselben angesehen, und das Gerät 11 wird Teilnehmer genannt. Ein Rundsendeübertragungskanal 12 wird verwendet zur offenen Information an alle Teilnehmer 11, und geheime Übertragungskanäle 13 werden für geheime Übertragungen mit jedem einzelnen Teilnehmer 11 verwendet.
  • 2 ist ein Blockdiagramm, das die Struktur des Informationsverarbeitungsgerätes 11 darstellt. In 2 wird eine Übertragungseinheit 21 für die Übertragung mit anderen Geräten über den Sendeübertragungskanal 12 oder über die Geheimübertragungskanäle 13 verwendet. Eine Rechenoperationsverarbeitungseinheit 22 führt verschiedene Rechenoperationen durch, wie die Einwegquasizufallszahlenfunktion, und ein Entscheidungsprozeß gemäß einem Programm in einer Speichereinheit 24 und steuert die individuellen Abschnitte. Eine Zufallszahlengeneratoreinheit 23 ist beispielsweise ein Pseudozufallszahlengenerator und wird verwendet zum Erzeugen eines Zufallswertes. Die Speichereinheit 24 wird verwendet zum Speichern eines Programms, das auszuführen ist von der Rechenoperationsverarbeitungseinheit 22, von Information, wie beispielsweise Rechenoperationsergebnisse, die während der Verarbeitung erzeugt werden, Information, die aus dem anderen Gerät empfangen wird, und verschiedener Parameter.
  • Ein Verfahren zum Ausführen der bestätigbaren gemeinsamen Verwendung eines Geheimnisses in einem endlichen Satz F ist nachstehend speziell beschrieben.
  • Zunächst erläutert wird eine Partialmatrix X für das Geheimnis s.
  • Eine Partialmatrix S = [s(i, j)] (i, j = 1, ..., n) für Geheimelement s in einem gegebenen endlichen Satz werden Elemente eines jeden Vektors S_r(i) = [s(i, 1), ... s(i, n)] (i = 1, ..., n) Werte fi(i1), ..., fi(in) für n unterschiedliche Werte, i1, ..., in, vom Polynom fi zur tth-ten Potenz, die sr(i) als Konstantausdruck hat. Die Elemente eines jeden Spaltenvektors S_c(j) = [s(1, j), ..., s(n, j)] (j = 1, ..., n) sind Werte gj(j1), ..., gj(jn) für n unterschiedliche Werte, J1, ..., jn des Polynoms gj zur tth-ten Potenz, wobei s_c(j) als Konstantausdruck verwendet wird. Beide Vektoren [s_r(1), ..., s_r(n)] und [s_c(1), ..., s_c(n)] sind Werte f(i1, ..., in) beziehungsweise g(j1, ..., jn) jeweiliger Polynome f und g zur t-ten Potenz, die Geheimelement s als Konstantausdruck haben.
  • Nachstehend erläutert ist die Verarbeitung für dieses Ausführungsbeispiel, wobei eine Klassifizierung in zwei Prozesse erfolgt: ein geheimer gemeinsam verwendeter Prozeß zur Verteilung eines Geheimnisses in einem gegebenen endlichen Satz an alle Teilnehmer, so daß das Geheimnis gemeinsam verwendet und unter den Teilnehmern gehalten wird; und ein geheimer Entschlüsselungsprozeß zum Entschlüsseln eines Geheimnisses, das alle Teilnehmer gemeinsam haben, oder zum Identifizieren eines Teilnehmers, der eine nicht zulässige Handlung begangen hat, wenn eine derartige unlautere Handlung aufgetreten ist.
  • (1) Geheimer gemeinsam verwendeter Prozeß
  • Ein geheimer gemeinsam verwendeter Prozeß ist ein solcher, bei dem ein Teilnehmer d, die ein Geheimelement s halten, deren Geheimposition verteilen. 5 ist ein Diagramm, das die Prozeduren für diesen Prozeß zeigt. In 1 wird die Verarbeitung Rj, i diejenige, die der Teilnehmer i in Runde j ausführt.
  • Hiernach bedeutet h die Einwegquasizufallszahlenfunktion, die effizient ist (enthält ein Hochgeschwindigkeitsrechenverfahren). Die Quasizufallszahlenfunktion (siehe zuvor zitiertes Dokument "Modern Cryptological Theory"), die mit einer Hochgeschwindigkeits-Blockverschlüsselungsfunktion verwendet wird. Sicherheitsparameter k genügt der Beziehung k = nk für eine gegebene Konstante k'. Die Wahrscheinlichkeit, daß in diesem Falle die Bestätigung der geheimen gemeinsam verwendeten Verarbeitung fehlschlägt, ist 2^(–k'(t + 1)) gemäß der Cut and Choose-Verarbeitung (siehe vorher zitiertes Dokument "Verifiable Secret Sharing And Multiparty Protocols With Honest Majority", T. Rabin und M. Ben-Or).
  • (Runde 1) Teilnehmer d verwendet die Zufallszahlenerzeugungseinheit 23 zum Erzeugen von Partialmatrizen S, L1, ..., Lk jeweils für Geheimelement s, und Geheimelemente l1, ..., lk, die zufällig in einem gegebenen endlichen Satz ausgewählt werden. Wie in 4 gezeigt, werden Einwegquasizufallszahlenfunktionswerte s* für Geheimwerte s_r(1), ..., s_r(n), l1_r(1), ..., 1l_r(n), ..., 1k_r(1), ..., lk_r(n) von einer Quasizufallszahlenoperations-Verarbeitungseinheit 83 angefordert.
  • Der Teilnehmer d sendet die Spaltenvektoren S_c(i), L1_c(i), ..., Lk_c(i) und Geheimnisse s_r(i), l1_r(i), ..., 1k_r(i) (Information B1.i) einer jeden erzeugten Partialmatrix über die Geheimübertragungskanäle 13 an einen jeden Teilnehmer i (i – 1, ..., n, ausschließlich sich selbst). Die Quasizufallszahlenwerte s* (Information Bl.d) werden über den Rundsendeübertragungskanal 12 an alle Teilnehmer gesendet (Verarbeitung R1.d).
  • (Runde 2) Jeder Teilnehmer i (i – 1, ..., n) verwendet die Zufallszahlenerzeugungseinheit 23, zum Senden von k' Bits (Information B2.i), die zufällig ausgewählt werden (Verarbeitung R2.i). Die zufällig ausgewählten k' Bits werden jeweils Bi_1, ..., Bi_k' genannt, und die Bits für die ganzen n Teilnehmer werden B1, ..., Bk genannt.
  • (Runde 3) Wenn jedes Bit Bj (j = 1, ..., k), das in Runde 2 gesendet wird, gleich 1 ist, sendet der Teilnehmer d die Partialmatrix Lj, die der Teilnehmer d in Runde 1 erzeugt hat. Wenn Bj gleich 0 ist, sendet der Teilnehmer d das Ergebnis (geschrieben als S + Lj), gewonnen durch Addieren eines jeden Elements der erzeugten Partialmatrizen S und Lj im endlichen Satz (Verarbeitung R3.d). Die Information, die der Teilnehmer d sendet, ist als B3.d in 5 dargestellt.
  • (Runde 4) Für jeden Wert j (j = 1, ..., k) der Information B1.i, die geheim in Runde 1 empfangen wurde, bestätigt jeder Teilnehmer i (i = 1, ..., n), ob Spaltenvektor Lj_c(i) und Lj_r(i) (wenn Bit Bj, das in Runde 2 gesendet wird, gleich 1 ist), oder Lj_c(i) + S_c(i), und lj_r(i) + s_r(1) (wenn Bj gleich 0 ist), dem Spaltenvektor gleichen, und der Geheimwert der Partialmatrix wird dann in Runde 3 gesendet. Wenn es keine gleichen Bezüge für einen gewissen Wert j gibt, dann wird eine Entscheidungsmitteilung (Information B4.i) des Teilnehmers d gesendet (Verarbeitung R4.i).
  • (Runde 5) Wenn die Entscheidungsmitteilung (Information B4.i) in Runde 4 gesendet wird, sendet der Teilnehmer d Information B1.j, die er in Runde 1 geheim gesendet hat, an die individuellen Teilnehmer j, die die Entscheidungsmitteilung (Verarbeitung R5.d) gesendet haben.
  • (Nachverarbeitung) Wenn die Information nicht in Ordnung ist, die in Runde 5 gesendet wurde, oder wenn die Anzahl von Entscheidungsmitteilungen, die in Runde 4 gesendet wurden, größer als der Schwellwert t ist, bestimmt jeder Teilnehmer i (i = 1, ..., n), daß der Teilnehmer d eine nicht zulässige Handlung ausgeführt hat (Verarbeitung Pi).
  • Die Gesamtinformation, die jeder Teilnehmer in Runde 1 bis Runde 5 empfangen hat, wird mit s_i ausgedrückt.
  • (2) Geheimverschlüsselungsprozeß
  • Ein Geheimverschlüsselungsprozeß ist ein solcher zum Annehmen des Geheimelements s von allen Teilnehmern aus Information s_i, das von den individuellen Teilnehmern gehalten wird, durch den oben beschriebenen geheimen gemeinsam verwendeten Prozeß. 6 ist ein Diagramm, das die Prozeduren dieses Prozesses zeigt.
  • (Runde 1) Jeder Teilnehmer i (i = 1, ..., n) sendet Geheimwerte s_c(i) und s_r(i), die im Informationssegment s_i enthalten sind (Verarbeitung R1.i).
  • (Runde 2) Jeder Teilnehmer i (i = 1, ..., n) wählt t + 1 Werte s_c(i, 1), ..., s_c (i, t + 1) und s_r(i, 1), ..., s_r(i, t + 1) aus den Werten aus, die in Runde 1 gesendet wurden. Dann werden die Resultate s(c) und s(r) durch Interpolation von Polynomen erfaßt. Der Teilnehmer i bestätigt, ob zwei Ergebnisse einander gleichen und die restlichen Sendewerte korrekte Werte für das Polynom sind, das dem Wert s(c) = (r) entspricht. Sind alle Werte korrekt, dann wird bestimmt, daß das Geheimelement s gleich s(c) = s(r) ist, und der Verschlüsselungsprozeß ist abgeschlossen. Entsprechen die Werte nicht demselben gesendeten Polynom, wird der Spaltenvektor S_c(i) (Information B2.1) gesendet, der im Informationssegment s_i enthalten ist.
  • (Runde 3) Jeder Teilnehmer i (i = 1, ..., n) erzeugt eine Partialmatrix S' aus dem Spaltenvektor S_c(j) (j = 1, ..., n), das in Runde 2 gesendet wird. Dann wählt der Teilnehmer i Spaltenvektorsätze T1, ..., Tm bezüglich aller Sätze t1, ..., tm (m = nCr+1 = n!/(t + 1)!(n – t – 1)! Sätze insgesamt, die t + 1 unterschiedliche Werte enthalten, die aus 1, ..., n bestehen. Die Ergebnisse s'_r(1), ..., s'_r(n) und s'_c(1), ..., s'_c(n) werden für die jeweiligen Zeilen und Spalten erfaßt, indem die Polynome interpoliert werden. Die Ergebnisse s'(r) und s'(c) werden durch die Interpolation der Polynome für die obigen Werte erfaßt. Der Teilnehmer i bestätigt, ob die beiden dieser Ergebnisse einander gleich sind und alle Elemente dieser Spaltenvektoren korrekte Werte sind für das Polynom, das den Werten s'_c(i), ..., s'_c(n) und s'_r(i), ..., s'r(n) entspricht.
  • Unter den Sätzen T1, ..., Tm, die t + 1 Spaltenvektoren haben, die solchermaßen bestätigt sind, ist die Anzahl von Sätzen, die den unterschiedlichen korrekten Partialmatrizen entsprechen, gleich t + 1 maximal, und die Partikelmatrizen werden S_1, ..., S_T genannt, wobei T < als t + 1 ist. Wenn es nur eine korrekte Partialmatrix (t = 1) gibt, wird bestimmt, daß das Geheimnis s für die Matrix gleich dem Originalgeheimnis ist, und ein nicht entsprechender Spaltenvektor stellt einen Teilnehmer dar, der eine nicht zulässige Handlung ausführt. Wenn es 2 oder mehr Partialmatrizen gibt, sendet jeder Teilnehmer i (i = 1, ..., n) alle Informationssegmente (Information B3.i), die er hält (Verarbeitung R3.i).
  • (Nachverarbeitung) Jeder Teilnehmer i (i = 1, ..., n) verwendet die Information s_j (j = 1, ..., n), die in runde 3 sendet, um dieselbe Einwegquasizufallszahlenfunktion zu berechnen, wie sie im obigen geheimen gemeinsamen Prozeß verwendet wird. Dann bestätigt der Teilnehmer i, ob alle Sendeinformationen korrekt sind und dem Wert s* entsprechen, die in Runde im gemeinsamen Prozeß gesendet werden. Somit wird bestimmt, daß das Geheimnis s', das der korrekten Partialmatrix entspricht (es kann nur eine maximal sein), gleich dem Geheimelement s ist. Wenn andererseits keine korrekte Partialmatrix gefunden wird, erfolgt die Bestimmung, daß der geheime gemeinsame Teilnehmer d eine nicht zugelassene Handlung ausgeführt hat (Verarbeitung Pi).
  • Wie zuvor gemäß dem Ausführungsbeispiel beschrieben, wird eine Übertragungsmenge in der Größenordnung von n^2k angefordert, wobei n die Anzahl der Teilnehmer und k ein Sicherheitsparameter ist, während eine Übertragungsmenge in der Größenordnung von n^3k^2 erforderlich ist für das herkömmliche Dialogverfahren (1), das zuvor beschrieben wurde. Weiterhin ist in diesem Ausführungsbeispiel nur eine Zeitberechnung der Einwegquasizufallszahlenfunktion erforderlich, während die Berechnungen in der Größenordnung von n eine spezielle Einwegfunktion für das herkömmliche Verfahren (2) des Nichtdialogtyps erfordert. Somit kann ein Verfahren bereitgestellt werden, durch das die Übertragungsmenge und der Rechenumfang, verglichen mit dem für das herkömmliche Verfahren, verringert werden.
  • Ausführungsbeispiel 2
  • Der bestätigbare geheime gemeinsame Prozeß und der geheime Verschlüsselungsprozeß werden wie im Ausführungsbeispiel 1 als Partialverarbeitung für das herkömmliche gemeinsame Sicherheitsberechnungsverfahren verwendet (siehe beispielsweise das Dokument "Secure Multiparty Protocols And Zero-Knowledge Proof Systems Tolerating A Faulty Minority", D. Beaver, Journal Of Cryptology, 1991, oder das Dokument "A Note On Multiparty Protocols To Compute Multiplicative Inverses", M. Cerecedo, T. Matsumoto, und H. Imai, SCIS '94, Biwako, Japan, Januar 1994), so daß ein effizienteres gemeinsam verwendetes Betriebsverarbeitungssystem bereitsteht.
  • Im gemein verwendeten Betriebssystem werden ein gemeinsam verwendeter und ein Multiplizierprozeß und ein gemeinsam verwendeter und Addierprozeß für eine fundamentale Partialverarbeitung verwendet, und ein Partialaddierprozeß wird als Partialverarbeitung für ein Partialmultiplizierprozeß verwendet. Die allgemeine Rechenoperation in einem gegebenen endlichen Satz kann auch ausgeführt werden unter Verwendung sowohl des gemeinsam verwendeten als auch des Multiplizierprozesses und auch des gemeinsamen verwendeten und Addierprozesses. Der gemeinsam verwendete und der Addierprozeß, die die Fundamentalpartialverarbeitung für alle Prozesse sind, ist nachstehend anhand 7 für einen Fall erläutert, bei dem der Betrieb unter Verwendung der Verarbeitung im Ausführungsbeispiel 1 erfolgt.
  • Wenn die Geheimelemente x und y in einem gegebenen endlichen Satz gemeinsam verwendet werden (zu dieser Zeit hält jeder Teilnehmer i Geheimabschnitte x_i und y_i, die den Geheimelementen x beziehungsweise y entsprechen), Übertragung erfolgt nicht, und der Geheimabschnitt (x + y)_i, der der Summe x + y im gegebenen endlichen Satz entspricht, wird folgendermaßen berechnet.
  • Die Elemente der Spaltenvektoren X_c(i) und Y_c(i) sowie die Elemente der Geheimwerte x_r(i) und y_r(i) (siehe Ausführungsbeispiel 1) der Partialmatrix, die jeder Teilnehmer hält, werden addiert. Aus der Definition der Partialmatrix ist es offensichtlich (die Elemente der Zeilen und Spalten sind Werte eines Polynoms), daß die Addierergebnisse X_c(i) + Y_c(i) und x_r(e) + y_r(i) ein Spaltenvektor und einen Geheimwert für die Partialmatrix bezüglich x + y sind.
  • Die Einwegquasizufallszahlenfunktionswerte x* und y*, die verwendet werden zum Bestätigen eines Informationssegments im Geheimverschlüsselungsprozeß, werden gespeichert. Diese Werte werden erforderlichenfalls benutzt, wenn der Verschlüsselungsprozeß bezüglich des Additionsergebnisse x + y ausgeführt wird, und somit wird die Partialmatrix x + y, die dem Geheimnis x + y entspricht, bestätigt.
  • Ein allgemeines, gemeinsam verwendetes Rechenbetriebssystem kann bereitgestellt werden unter Verwendung des oben beschriebenen gemeinsamen und Additionsprozesses als Partialverarbeitung.
  • Die vorliegende Erfindung ist nicht auf die Dimensionen der Partialmatrix beschränkt, die im obigen Ausführungsbeispiel beschrieben wurde und kann ein Vielfaches der Dimensionspartialgliederung sein. Eine verwendete Funktion kann eine solche sein, die sich von einer Einwegquasizufallszahlenfunktion unterscheidet, die das Erfassen der Einwegeigenschaft sicherstellt. Hinsichtlich der Cut- and Choose-Technik liegt keine Beschränkung für die Prozeduren vor, die speziell im Ausführungsbeispiel 1 erläutert wurden, es kann aber die Anwendung eines beliebigen Verfahrens zum Bestätigen der Eigentümerschaft beinhalten, ohne daß das Geheimnis undichte Stellen bekommt.
  • Wie zuvor gemäß diesem Ausführungsbeispiel beschrieben, kann ein Verfahren und ein System zur Geheiminformationsverarbeitung, bei dem ein Teilnehmer, der eine unzulässige Handlung begeht, identifizierbar ist (ein Fehler ist erkennbar), bereitgestellt werden durch eine effiziente Übertragungsmenge und eine effiziente Rechenmenge.
  • Da darüber hinaus die Kommunikationsmenge und die Rechenmenge kleiner sein als für den herkömmlichen Fall erforderlich, kann für einen Prozeß, wie einen sicheren gemeinsamen Operationsprozeß, der das wiederholte Ausführen eines geheimen gemeinsames Prozesses erfordert, der Verkehr innerhalb des Kommunikationssystems und einem Übertragungssystem verringert werden, und die Übertragungskosten lassen sich verringert, weil wegen des geringen Übertragungsumfangs, während die Übertragung mit hoher Geschwindigkeit erfolgt, weil die Rechenmenge klein ist.
  • Nachstehend beschrieben ist ein Verfahren zur gemeinsamen Digitalsignaturerzeugung, die von einer Vielzahl von Teilnehmern ausgeführt wird, die zu einer Gruppe von Unterzeichnern gehört, unter Verwendung des oben beschriebenen gemeinsamen Geheimverfahrens.
  • Da oben beschriebene bestätigbare gemeinsame verwendete Geheimverfahren wird in diesem Ausführungsbeispiel angewandt. Die Teilnehmer, die zu der Gruppe der Unterzeichnern gehören, teilen sich ein Geheimelement, das zufällig unter allen dieser in der Gruppe ausgewählt wird, und wenden das gemein verwendete Geheimnis als Eingabe zum Erzeugen einer Signatur während der Verarbeitung zur Verschlüsselung der gemeinsam verwendeten Ausgabe, das erzielt wird durch Ausführen der gemein verwendeten Rechenoperation.
  • In diesem Ausführungsbeispiel kann folglich ein gemein verwendetes Digitalsignatursystem bereitgestellt werden, mit dem ein Teilnehmer, der eine unerlaubte Handlung begeht, identifizierbar ist, und sowohl die Rechenmenge als auch die Übertragungsmenge sind in einer praktikablen Größenordnung.
  • 9 ist ein Diagramm, das ein Übertragungssystem für dieses Ausführungsbeispiel zeigt.
  • In 9 sind das Informationsverarbeitungsgerät 11, das die Teilnehmer in Systemen verwenden, der Rundsendeübertragungskanal 12 und die Geheimübertragungskanäle 13 dieselben wie in 1. Die Teilnehmer A, B und C gehören hier einer Unterzeichnergruppe an. Die Blockstruktur des Informationsverarbeitungsgerätes 11 ist wie die in 2 gezeigte.
  • Das Verfahren zum Realisieren einer gemeinsam verwendeten Digitalsignatur mit dieser Anordnung wird speziell beschrieben.
  • Ausführungsbeispiel 3
  • Nachstehend in diesem Ausführungsbeispiel beschrieben ist eine spezielle Struktur zum Realisieren eines gemein verwendeten Digitalsignaturverfahrens, das das oben beschriebene Digitalsignaturverfahren verwendet, das C. P. Schnorr vorgeschlagen hat.
  • Ein Geheimelement s unter {1, ..., p – 1} wird zunächst gemeinsam verwendet von nach dem zuvor beschriebenen bestätigbaren gemeinsam verwendeten Geheimverfahren. Die Geheimelemente l1, ..., lk werden zufällig ausgewählt unter {1, ..., p – 1}. Auf diese Weise läßt sich die Verarbeitung ausführen, wobei das Geheimelement, das ein gewisser Teilnehmer einer Unterzeichnergruppe hält, gemeinsam verwendet und gehalten wird von allen Teilnehmern der Gruppe.
  • Eine Erläuterung für einen Prozeß für ein gemeinsam verwendetes Digitalsignatur ist nachstehend beschrieben, zur Verwendung des gemeinsam verwendeten Geheimverfahrens zum Erzeugen einer Geheiminformation (die dem Geheimschlüssel äquivalent ist, der von allen Teilnehmern in einer Unterzeichnergruppe gemeinsam verwendet wird) von der Gruppeninformation und der öffentlichen Information, die der Gemeininformation entspricht (öffentliche Information, die äquivalent einem öffentlichen Schlüssel ist, und die zum Bestätigen einer erzeugten Signatur verwendet wird).
  • Schlüsselerzeugungsverarbeitung (siehe 10A und 10B)
  • (Runde 1 bis 5) Jeder Teilnehmer i wählt ein Geheimelement a(i) zufällig aus unter {1, ..., p – 1} und verwendet dies gemeinsam mit den Teilnehmern der Unterzeichnungsgruppe durch Ausführen des oben beschriebenen gemeinsam verwendeten Geheimprozesses. Jeder Teilnehmer i berechnet weiterhin g
    Figure 00370001
    (r(i)) mod q (wobei q eine Primzahl ist, die in der zuvor beschriebenen Weise ausgewählt wird) und sendet dies über den Rundsendeübertragungskanal.
  • (Runde 6) Die Nachverarbeitung des gemeinsamen Geheimprozesses wird ausgeführt. Durch Verwenden der in korrekter Weise gemeinsam geteilten Geheimelemente r(i) (i = 1, ..., n) als Eingabe ist eine gemeinsam verwendete Ausgabe, die erfaßt wird durch gemeinsames Addieren, bereits erläutert unter Bezug auf 7, festgelegt als Geheiminformation a. Wert A(i) = g
    Figure 00370002
    (a(i)) mod q, der in Runden 1 bis 5 der Vorverarbeitung rundgesendet wird, bezüglich des korrekt gemeinsam verwendeten Geheimelements a(i) multipliziert. Das erfaßte Ergebnis A = g
    Figure 00370003
    a mod q verwendet als öffentliche Information (öffentlicher Schlüssel) zum Bestätigen einer von der Gruppe erzeugten Signatur.
  • Um die gemeinsame Multiplikation von einem gemeinsam verwendeten Geheimelement x und einem öffentlichen Element a in derselben Weise wie bei der gemeinsamen Addition verwenden zu können, werden die durch Multiplizieren von jedem Element der vom Teilnehmer gehaltenen Partialmatrix erfaßten Ergebnisse Elemente der Partialmatrix bezüglich x*a.
  • Die gemeinsame Berechnung linearer Kombination a*x + b*y zweier gemeinsam verwendeter Geheimelemente x und y und dem öffentlichen Element a lassen sich ausführen, ohne daß ein Dialog zwischen den Gruppenteilnehmern erforderlich ist. Die Linearkombinationsverarbeitung ist in 11 gezeigt. Angemerkt sei, daß in 11 der Titel der auszuführenden Verarbeitung und der Eingabe und der Ausgabe für jeden Teilnehmer für diese Verarbeitung gezeigt sind. Die Eingaben der Teilnehmer i (i = 1, ..., n) sind Informationssegmente x_i und y_i bezüglich der gemeinsam verwendeten Geheimelemente x und y sowie öffentlicher Elemente a und b. Die Ausgabe ist ein Informationssegment z_i bezüglich des Ergebnisses x der Linearkombinationsverarbeitung.
  • Unter Verwendung eines Geheimschlüssels, der durch die obige Verarbeitung erzielt wird, wird eine Digitalsignatur gegebener Mitteilung m von der Gruppe erzeugt, während sie gemeinsam auf folgende Weise verwendet wird.
  • Signaturerzeugungsverarbeitung (siehe 12)
  • (Runden 1 bis 5) Jeder Teilnehmer i wählt zufällig r(i) aus {1, ..., p – 1}, und die Auswahl wird unter allen Teilnehmern der Gruppe von Unterzeichnern gemeinsam verwendet durch Ausführen des zuvor beschriebenen gemeinsam verwendeten Geheimprozesses. Jeder Teilnehmer i berechnet g
    Figure 00380001
    (r(i)) mod q (wobei q eine Primzahl ist, die in zuvor beschriebener Weise ausgewählt wird), und sendet dies über den Rundsendeübertragungskanal aus.
  • (Runde 6) Die Nachverarbeitung des gemein verwendeten Geheimprozesses wird ausgeführt. Mit dem korrekt gemeinsam verwendeten Geheimelement r(i) (i = 1, ..., n) als Eingabe wird das gemeinsame Ergebnis r durch Ausführen der gemeinsamen Addition erfaßt. Weiterhin ist R = g^r mod q, welches die Multiplikation aus Wert R(i) = g^(r(i)) mod q ist, die rundgesendet wird in Runden 1 bis 5 bezüglich des korrekt gemeinsam verwendeten Geheimelements r(i), und wird berechnet.
  • (Runde 7) Jeder Teilnehmer verwendet als Eingabe einen Wert R|m, gewonnen durch Kombinieren einer gegebenen Mitteilung m und Wert R, der in Runde 6 erfaßt wurde, und berechnet das Ausgangssignal e = h(R|m) der vorbestimmten zuvor beschriebenen Funktion h. Dann wird s = r + h(R|m)*a gemeinsam verwendet und unter allen Teilnehmern der Unterzeichnergruppe berechnet durch Ausführen der gemeinsam verwendeten Linearkombinationsverarbeitung.
  • (Runden 8 bis 10) Das gemeinsam verwendete Geheimnis s wird entschlüsselt durch Geheimentschlüsselungsverarbeitung für das gemein verwendete Geheimverfahren. Eine Signatur für die gegebene Mitteilung wird festgelegt mit (R, s). Die erzeugte Signatur wird bestätigt unter Verwendung des öffentlichen Schlüssels a und durch Ausführen der Signaturbestätigungsverarbeitung für das digitale Signaturverfahren. Ist die Signatur nicht korrekt, dann wird bestimmt, daß es einen Teilnehmer gibt, der eine nicht zulässige Handlung ausgeführt hat. Der Gemeinverschlüsselungsprozeß des gemeinsam verwendeten Geheimverfahrens wird ausgeführt, um einen derartigen Teilnehmer zu identifizieren.
  • Ausführungsbeispiel 4
  • Eine spezielle Struktur zum Realisieren eines gemein verwendeten Digitalsignaturverfahrens, das das zuvor beschriebene Digitalsignaturverfahren anwendet, das von A. Fiat und A. Schamir vorgeschlagen wurde, ist nachstehend beschrieben. Zuerst eine spezielle Anordnung zum bestätigbaren gemeinsamen Verwenden eines Geheimelements in {1, ..., N – 1}.
  • Eine Partialmatrix für ein gegebenes Geheimnis s ist speziell erläutert (siehe 3). Die Partialmatrix S = [s(i, j)] (I, j = 1, ..., n) bezüglich eines gewissen Geheimnisses s unter {1, ..., N – 1} ist das eine, bei dem die Elemente des Zeilenvektors (S_r(i) = [s(i, 1), ..., s(i, n)] (i = 1, ..., n) folgendermaßen festgelegt sind: s(i, j) = s_r(i)*q_r(i, 1)^(j)*q_r(i, 2)^(j^)* ... *q_r(I, t)^(j^t) mod N (j = 1, ..., n).
  • Die Elemente q_r(i, 1), ..., q_r(i, t) werden ausgewählt unter {1, ..., N – 1}, um so den folgenden Erfordernissen zu genügen. Die Elemente eines jeden Spaltenvektors (S_c(j) = [s(1, j), ..., s(n, j)] j = 1, ..., n) sind folgendermaßen festgelegt: s(j, i) = s_c(j)*q_c(j, 1)^(k)*q_c(j, 2)^(i^2)* ... *q_c(j, t)^(i^t) mod N (i = 1, ..., n).
  • Die Elemente q_c(j, 1), ..., q_c(j, t) werden ausgewählt aus {1, ..., N – 1}, um so den folgenden Erfordernissen zu genügen. Darüber hinaus die beiden Vektoren [s_r(1), ..., s_r(n)] und [s_c(1), ..., s_c(n)], die die obigen Werte haben, genügen den folgenden Bedingungen für q_r(1), ..., q_r(t), q_c(1), ..., q_c(t), die unter {1, ..., N – 1} sind: s_r(j) = s*q_r(1)^(j) + q_r(2)^(j^2)* ... *q_r(t)^j^t) mod N (j = 1, ..., n)und s_c = s*q_c(1)^(i)*q_c(2)^(i^2)* ... *q_c(t)^(i^t) mod N (i = 1, ..., n),wobei s ein Ursprungsgeheimnis bedeutet.
  • Der gemeinsam verwendete Geheimprozeß zur Verteilung eines geheimen Abschnitts, so daß das Geheimelement s gemeinsam verwendet und gehalten werden kann von allen Teilnehmern, die zu einer Unterzeichnergruppe gehören, und der Geheimentschlüsselungsprozeß zur Entschlüsselung des solchermaßen gemeinsam verwendeten Geheimnisses oder zum Identifizieren eines Teilnehmers, der eine unerlaubte Handlung ausführt (falls eine solche Handlung auftritt), wird in derselben weise wie bei den Prozessen (1) und (2) im Ausführungsbeispiel 1 ausgeführt. Im Geheimentschlüsselungsprozeß (2) wird anstelle der Polynominterpolation folgendes berechnet, um den erfaßten Wert s_r(i) aus t + 1 Elementen (s(i, j0), ..., s(i, jt)), erfaßt, der in jedem Zeilenvektor enthalten ist (S_r(i) = [s(i, 1), ..., s(i, n)], i = 1, ..., n): s_r(i)^(n!) = Prod_k(s(i, jk)^(Prod_1(1*n!/(l – k)))) mod Nwobei Prod_k(f(k) die Multiplikation von Wert f(k) für k = j0, ..., jt bedeutet und Prod_l(g(1)) die Multiplikation von Werk g(1) zu 1 = j0, ..., jt (1 ≠ k) bedeutet.
  • Um den Wert s_c(j) aus t + 1 Elementen (s(i0, j), ..., s(it, j)) für jeden Spaltenvektor (S_c(i) = [s(1, j), ..., s(n, j)], j = 1, ..., n) zu erfassen, wird die folgende Rechnung ausgeführt. S_c(j)^(n!) = Prod_k(s(ik, j)^(Prod_1(1*n!/(1 – k)))) mod N
  • Um das Geheimnis s aus den t + 1 Elementen (s_r(i0)^(n!), ..., s_r(it)^(n!)) oder (s_c(j0)^(n!), ..., s_c(jt)^(n!)) des Partialvektors [s_r(1)^(n!), ..., s_r(n)^(n!)] oder [s_c(1)^(n!), ..., s_c(n)^(n!)] zu erfassen, wird die folgende Rechnung ausgeführt, wenn s_r(i)^(n!)) ist. s^(n!*n!) = Prod_k(s_r(k)^(n!*Prod_1(1*n!/(l – k)))) mod N s = (s^(n!*n!))^u*(s^1)^ mod N.
  • Angemerkt sei jedoch, daß 1, das verwendet wird für das Digitalsignaturverfahren, das A. Fiat und A. Shamir vorgeschlagen haben, ausgewählt haben, so daß u und v präsent sind, die der Beziehung u*n!*n! + v*1 0 1 genügen. Der Wert s^1 mod N für das gemeinsam verwendete Geheimnis s wird bei der Signaturerzeugungsverarbeitung berechnet, wie später zu beschreiben ist.
  • Auf diese Weise kann die Verarbeitung bereitgestellt werden, bei der das Geheimelement, das ein gewisser Teilnehmer in der Unterzeichnergruppe hält, gemeinsam verwendet und gehalten werden von allen Gruppenteilnehmern. Als nächstes erläutert wird die Verarbeitung von einem gemeinsam verwendeten Digitalsignatursystem zum Verwenden des gemeinsam verwendeten Geheimverfahrens zum Erzeugen einer Geheiminformation für eine Unterzeichnergruppe (ist dem Geheimschlüssel äquivalent, der von allen Gruppenteilnehmern gemeinsam verwendet wird) und öffentliche Information für die Geheiminformation (ist äquivalent einem öffentlichen Schlüssel und wird verwendet zum Bestätigen einer Signatur, die die Gruppe erzeugt).
  • Schlüsselerzeugungsverarbeitung (siehe 13A und 13B).
  • (Runden 1 bis 5) Jeder Teilnehmer i wählt Geheimelement a(i) zufällig aus unter {1, ..., N – 1}, und die Auswahl wird von allen Teilnehmern der Unterzeichnergruppe gemeinsam verwendet durch Ausführen des zuvor beschriebenen gemeinsam verwendeten Geheimprozesses. Jeder Teilnehmer i berechnet a(i)^l mod N (wobei l ein Element ist, das in der oben beschriebenen Weise ausgewählt wurde), und sendet dieses über den Rundsendeübertragungskanal.
  • (Runde 6) Die Nachverarbeitung des gemeinsam verwendeten Geheimprozesses wird ausgeführt. Durch Verwenden des korrekt gemeinsam verwendeten Geheimelements a(i) (i = 1, ..., n) als Eingabe wird eine gemeinsam verwendete Ausgabe durch die folgende gemeinsam verwendete Multiplikation erfaßt, festgelegt als Geheiminformation a. Der Wert A(i) = a(i)^l mod N, welches in den Runden 1 bis 5 der Vorverarbeitung bezüglich des korrekt gemeinsam verwendeten Geheimelements a(i) rundgesendet wird, wird multipliziert. Das erfaßte Ergebnis A = a^l mod N wird als öffentliche Information (öffentlicher Schlüssel) zum Bestätigen der Signatur verwendet, die die Gruppe erzeugt hat.
  • Die gemeinsam verwendete Multiplizierverarbeitung, die in Runde 6 Verwendung findet, ist nachstehend anhand 14 erläutert.
  • Wenn zwei Geheimelemente x und y in {1, ..., N – 1} vom gemeinsam verwendeten Geheimprozeß gemeinsam verwendet werden (jeder Teilnehmer i hält Geheimabschnitte x_i und y_i bezüglich der Geheimelemente x und y), wird die Übertragung nicht ausgeführt, und der Geheimabschnitt (x*y)_i für das Produkt x*y wird folgendermaßen berechnet, das in {1, ..., N – 1} enthalten ist.
  • Aus der Definition der Partialmatrix, die zu X_c(i)*y_c(i) folgt, und x_r(i)*y_r(i), gewonnen durch Multiplizieren der Spaltenvektoren X_c(i) und Y_c(i) mit den Geheimwerten x_r(i) und y_r(i) der Partialmatrix, das jeder Teilnehmer hält, werden ein Spaltenvektor und ein Geheimwert der Partialmatrix für x*y. Beide Einwegquasizufallsfunktionswerte x* und y*, die verwendet werden zum Bestätigen der Informationselemente im Geheimentschlüsselungsprozeß, werden gespeichert. Im Entschlüsselungsprozeß für das Multiplikationsergebnis x*y werden beide dieser erforderlichenfalls verwendet, um die Partialmatrix x*y zu bestätigen, die in Übereinstimmung mit dem Geheimnis x*y ist.
  • Da die exponentielle Multiplikation des einen gemeinsam verwendeten Geheimelements x mit dem öffentlichen Element a gleichermaßen gemeinsam verwendet wird, sind die Ergebnisse, die gewonnen werden durch Exponentialmultiplikation der Elemente der Partialmatrix, die jeder Teilnehmer hat, mit einem öffentlichen Element a die Elemente einer Partialmatrix für x^a. Die Kombination x^a*y^b der beiden Geheimelemente x und y, die im obigen Prozeß gemeinsam verwendet werden, mit den öffentlichen Elementen ab gemeinsam zu verwenden und zu berechnen, ohne daß es eines Dialogs unter den Teilnehmern bedarf, die der Gruppe angeschlossen sind. Diese Verarbeitung ist in 15, wie sie in 11 ist, gezeigt.
  • Ein Geheimschlüssel, der gewonnen wird durch die obige Verarbeitung, wird von der Gruppe zum Erzeugen einer gemeinsamen Digitalsignatur für eine gegebene Mitteilung m folgendermaßen verwendet.
  • Signaturerzeugungsverarbeitung (siehe 16)
  • (Runden 1 bis 5) Jeder Teilnehmer i wählt Geheimelement r(i) zufällig aus unter {1, ..., N – 1}, und die Auswahl wird gemeinsam verwendet unter allen Teilnehmern der Unterzeichnergruppe durch Ausführen des oben beschriebenen gemeinsam verwendeten Geheimprozesses. Jeder Teilnehmer i berechnet r(i)^l mod N (wobei l ein Element ist, das in der zuvor beschriebenen Weise ausgewählt wird), und sendet dies über den Rundsendeübertragungskanal.
  • (Runde 6) Die Nachverarbeitung des gemeinsam verwendeten Geheimprozesses erfolgt. Mit dem korrekt gemeinsam verwendeten Geheimelement r(i) (i = 1, ..., n) als Eingabe wird das gemeinsam verwendete Ergebnis r erfaßt durch Ausführen der zuvor beschriebenen gemeinsamen Multiplikation. Des weiteren berechnet wird R = r^l mod N, welches die Multiplikation vom Wert R(i) = r(i)^l mod n ist, der in den Runden 1 bis 5 bezüglich dem korrekt gemeinsam verwendeten Geheimelement r(i) rundgesendet wird.
  • (Runde 7) Jeder Teilnehmer verwendet als Eingabe einen Wert R|m, der gewonnen wird durch Kombinieren einer gegebenen Mitteilung m mit Wert R, der in Runde 6 erfaßt wird, und berechnet das Ausgangssignal e = h(R|m) der zuvor beschriebenen vorbestimmten Funktion h. Dann wird s = r*a^(h(R|m)) gemeinsam verwendet und berechnet unter allen Teilnehmern der Unterzeichnergruppe durch Ausführen der gemeinsam verwendeten Linearkombinationsverarbeitung.
  • (Runde 8 bis 10) Das gemeinsam verwendete Geheimnis s wird entschlüsselt mit der Geheimentschlüsselungsverarbeitung für das gemeinsam verwendete Geheimverfahren. Eine Signatur für die gegebene Mitteilung wird definiert als (R, s). Die erzeugte Signatur wird bestätigt unter Verwendung des öffentlichen Schlüssels a und durch Ausführen der Signaturbestätigungsverarbeitung für das Digitalsignaturverfahren. Wenn die Signatur nicht korrekt ist, wird bestimmt, daß es einen Teilnehmer gibt, der eine unberechtigte Handlung ausgeführt hat. Der Geheimentschlüsselungsprozeß der gemeinsam verwendeten Geheimverfahrens wird ausgeführt, um einen solchen Teilnehmer zu identifizieren.
  • Ausführungsbeispiel 5
  • In diesem Ausführungsbeispiel beschrieben ist eine spezielle Struktur, die ein gemeinsam verwendetes Digitalsignaturverfahren realisiert, das das Digitalsignaturverfahren anwendet, das von T. El Gamal (American National Standard, Digital Signature Algorithm) vorgeschlagen wird.
  • Das Verfahren, wie es im Ausführungsbeispiel 1 beschrieben wurde, wird als spezielles Verfahren zur gemeinsamen Verwendung eines Geheimelements verwendet, das ein gewisser Teilnehmer einer Unterzeichnergruppe ausgewählt hat, und zum Halten dieses von allen Gruppenteilnehmern. Hiernach folgt eine Erläuterung eines Prozesses von einem gemeinsam verwendeten Digitalsignatursystem zum Anwenden des gemeinsam verwendeten Geheimverfahrens zum Erzeugen einer Geheiminformation (die äquivalent ist einem Geheimschlüssel, der von allen Teilnehmern einer Unterzeichnergruppe verwendet wird) von der Gruppe und öffentlicher Information für die Geheiminformation (öffentliche Information, die äquivalent einem öffentlichen Schlüssel ist, und die verwendet wird zum Bestätigen einer erzeugten Signatur).
  • Schlüsselerzeugungsverarbeitung (siehe 10A und 10B)
  • (Runde 1 bis 5) Jeder Teilnehmer i wählt Geheimelement a(i) zufällig aus unter {1, ..., p – 1}, und die Wahl wird gemeinsam verwendet von allen Teilnehmern der Unterzeichnergruppe durch Ausführen des zuvor beschriebenen gemeinsam verwendeten Geheimprozesses. Jeder Teilnehmer i berechnet weiterhin g^(a(i)) mod q (wobei q eine Primzahl ist, die in der zuvor beschriebenen Weise ausgewählt wird) und sendet dies über den Rundsendeübertragungskanal.
  • (Runde 6) Die Nachverarbeitung des gemeinsam verwendeten Geheimprozesses wird ausgeführt. Durch Anwenden des korrekten gemeinsam verwendeten Geheimelements a(i) (i = 1, ..., n) als Eingabe wird eine gemeinsam verwendete Ausgabe erfaßt von der folgenden gemeinsam verwendeten Addition, festgelegt als Geheiminformation a. Der in Runde 1 bis 5 der Vorverarbeitung bezüglich des korrekt gemeinsam verwendeten Geheimelements a(i) gesendete Wert A(i) = g^(a(i)) mod q wird multipliziert. Das erfaßte Ergebnis A = g^a mod q wird verwendet als öffentliche Information (öffentlicher Schlüssel) zum Bestätigen einer von der Gruppe erzeugten Signatur.
  • Wenn zwei Geheimelemente x und y in {1, ..., p – 1} gemeinsam vom gemeinsam verwendeten Geheimprozeß verwendet werden (jeder Teilnehmer i hält Geheimabschnitte x_i und y_i bezüglich der Geheimelemente x und y), erfolgt keine Übertragung, und der Geheimabschnitt (x + y)_i für Summe x + y, die enthalten ist in {1, ..., p – 1}, wird in derselben Weise berechnet, wie zum Ausführungsbeispiel 1 beschrieben.
  • Wenn die beiden Geheimelemente x und y in {1, ..., p – 1} gemeinsam im gemeinsam verwendeten Geheimprozeß verwendet werden (jeder Teilnehmer i hält Geheimabschnitte x_i und y_i bezüglich der Geheimelemente x und y}, erfolgt keine Übertragung, und der Geheimabschnitt (x*y)_i für Produkt x*y, der enthalten ist in {1, ..., p – 1}, wird folgendermaßen berechnet.
  • Während ein spezieller Teilnehmer d bestätigbares gemeinsames Verwenden des Geheimnisses s in {1, ..., p – 1} ausführt, errechnet er mit Sicherheit das gemeinsam verwendete Produkt s*x vom Geheimnis s und dem zuvor gemeinsam verwendeten x. Dieser Prozeß wird bestätigbarer gemeinsam verwendeter geheimer und Multiplizierprozeß genannt. Bestätigbarer gemeinsam verwendeter geheimer und Multiplizierprozeß (siehe 17 und 18)
  • Hiernach bedeutet h eine effiziente Einwegquasizufallszahlenfunktion, wie im Ausführungsbeispiel 1. Der Sicherheitsparameter k genügt der Bedingung k = nk' für eine spezielle Konstante k'.
  • (Runde 1) Teilnehmer d verwendet die Zufallszahlenerzeugungseinheit 23 zum Erzeugen eines Geheimelements s und Partialmatrizen für Geheimelemente l1, ..., lk, die zufällig ausgewählt werden aus {1, ..., p – 1}. Einwegquasizufallszahlenfunktionswerte s* für Geheimwerte s_r(1), ..., s_r(n), 1l_r(i), ..., 1l_r(n), ..., lk_r(1), ..., lk_r(n) werden berechnet (siehe 4).
  • Der Teilnehmer d sendet Spaltenvektoren S_c(i), Ll_c(i), ..., Lk_c(i) und Geheimnisse s_r(i), 1l_r(i), ..., lk_r(i) einer jeden erzeugten Partialmatrix über die Geheimübertragungskanäle an jeden Teilnehmer i (i = 1, ..., n, ausschließlich sich selbst). Der Quasizufallszahlenwert s* (Bl.d in 17) wird über den Rundsendeübertragungskanal an alle Teilnehmer gesandt (dargestellt als Bearbeitung R1.d in 17).
  • (Runde 2) Jeder Teilnehmer i (i = 1, ..., n) verwendet als Eingabe Geheimnisse s_r(i), 1l_r(i), ..., lk_r(i), die in Runde 1 empfangen wurden, und x_r(i), das zuvor für x gemeinsam verwendet wurde, so daß t_r(i) = s_r(i)*x_r(i), ml_r(i) = 1l_r(i)*x_r(i), ..., mk_r(i)*x_r(i) mod N berechnet wird. Die Zufallszahl 23 wird verwendet zum Erzeugen einer Partialmatrix (die T(i), Ml(i), ..., Mk(i) genannt wird, während die Partialmatrix für den Abschnitt x_r(i) des zuvor gemeinsam verwendeten Geheimnisses x X(i)) genannt wird für das erzielte Ergebnis. Dann werden die Quasizufallszahlenwerte s* für Geheimwerte t(i)_r(l), ..., t(i)_r(n), ml(i)_r(l), ..., ml(i)_r(n), ..., mk(i)_r(l), ..., mk(i)_r(n) berechnet (siehe 4). Jeder Teilnehmer i sendet die Spaltenvektoren T_c(j), Ml_c(j), ..., Mk_c(j) und Geheimnisse t(i)_r(j), ml(i)_r(j), ..., mk(i)_r(j) einer jeden erzeugten Partialmatrix über die Geheimübertragungskanäle an jeden Teilnehmer j (j = 1, ..., n, ausschließlich sich selbst). Die Quasizufallszahlenwerte s* werden über den Rundsendeübertragungskanal an alle Teilnehmer gesendet (dargestellt als Verarbeitung R2.i in 17). Die Information, die der Teilnehmer i gesendet hat, ist mit Bs.i in 17 dargestellt.
  • (Runde 3) Jeder Teilnehmer i (i = 1, ..., n) verwendet das Zufallszahlenerzeugungsmittel zum Rundsenden von Bits, die zufällig ausgewählt sind (Verarbeitung R3.i in 17). Die zufällig ausgewählten k' Bits werden jeweils Bi_1, ..., Bi_k' genannt, und die Bits der Gesamtsumme n an Teilnehmern wird jeweils B1, ..., Bk genannt. Die Information, die der Teilnehmer i rundgesendet hat, ist als B3.i in 17 dargestellt.
  • (Runde 4) Wenn jedes Bit Bj (j = 1, ..., k), das in Runde 3 rundgesendet wird, gleich 1 ist, sendet der Teilnehmer d die Partialmatrix Lj, die der Teilnehmer d in Rund 1 erzeugt. Wenn Bj gleich 0 ist, sendet der Teilnehmer d das Ergebnis (beschrieben als S + Lj), das er erzielt hat durch Addieren eines jeden Elements der erzeugten Partialmatrizen S und Lj im endlichen Satz (Verarbeitung R4.d in 17). Die Information, die der Teilnehmer d gesendet hat, ist als B4.d in 17 dargestellt.
  • (Runde 5) Für jeden Wert j (j = 1, ..., k) der Information B1.i, die geheim in Runde 1 empfangen wurde, bestätigt jeder Teilnehmer i (i = 1, ..., n), ob Spaltenvektoren Lj_c (i) oder lj_r(i) (wenn die Rundsendung von Bit Bj in Runde 2 gleich 1 ist) oder Lj_c(i) + S_c(i) und lj_r(i) + s_r(i) (wenn Bj gleich 0 ist) dem Spaltenvektor gleich sind und dem Geheimwert der Partialmatrix, die in Runde 4 gesendet wurde. Gibt es keinen äquivalenten Bezug auf einen gewissen Wert j, wird eine Entscheidungsmitteilung vom Teilnehmer d rundgesendet (Verarbeitung R5.i in 17). Die Information, die der Teilnehmer i sendet, ist als B5.i in den 17 und 18 dargestellt.
  • (Runde 6) Wenn jedes Bit Bj (j = 1, ..., k), das in Runde 3 gesendet wurde, gleich 1 ist, sendet jeder Teilnehmer i die Partialmatrix Mj(i), die der Teilnehmer i in Runde 2 erzeugt hat. Ist Bj gleich 0, dann sendet der Teilnehmer d das Ergebnis (geschrieben als T(i) + Mj(i)), welches gewonnen wird durch Addieren eines jeden Elements der erzeugten Partialmatrizen T(i) und Mj(i) im endlichen Satz (mod p) (Verarbeitung R6.i in 18). Weiterhin sendet der Teilnehmer d die Spaltenvektoren vom Teilnehmer i, die in Runde 5 bestimmt wurden. Die Information, die der Teilnehmer d rundsendet, ist als B6.i in 18 dargestellt.
  • (Runde 7) Für jedes j (j = 1, ..., k) bestätigt der Teilnehmer i die Information, die in den Runden 5 und 6 rundgesendet wurden. Wenn die Anzahl korrekter Matrizen größer als der Schwellwert t ist und Bit Bj (j = 1, ..., k), das in Runde 3 gesendet wird, gleich 1 ist, wird die folgende Partialmatrix rundgesendet: (lj_r(i))^(–1)*Mj(i) – X(i).
  • Wenn Bj gleich 0 ist, wird nachstehende Partialmatrix rundgesendet: (s_r(i) + lj_r(i))^(–1)*(T(i) + Mj(i)) – X(i)
  • (Verarbeitung R7.i in 18). Die Linearkombination der Partialmatrizen erfolgt in der zuvor beschriebenen Weise für jedes Element. Die Information, die der Teilnehmer i rundgesendet hat, ist als B7.i in 18 dargestellt.
  • (Runde 8) Für jedes j, o (j, o = 1, ..., k) verwendet jeder Teilnehmer i (i = 1, ..., n) die Information, die in Runde 4 rundgesendet wurde. Wenn Bo gleich 1 ist, dann wird lj_r(o) entschlüsselt, ein nachstehender Spaltenvektor wird berechnet, und es wird bestätigt, daß das durch Berechnung des Spaltenvektors erzielte Ergebnis identisch ist und dem Wert 0 entspricht: (lj_r(o))^(–1)*Mj(o)_r(i) – X(o)_r(i).
  • Wenn Bo gleich 0 ist, wird (s-r(o) + lj_r(o)) entschlüsselt und ein nachstehender Spaltenvektor wird berechnet, um zu bestätigen, daß das Vektorberechnungsergebnis dasselbe ist und dem Wert 0 entspricht: (s_r(o) + lj_r(o))^(–1)*(T(o)_r(i) + Mj(o)_r(i)) – X(o)_r(i).
  • Wenn das Ergebnis nicht als entsprechend dem gegebenen wert o bestätigt werden kann, wird eine Entscheidungsmitteilung für den Teilnehmer o rundgesendet (Verarbeitung R8.i in 18). Die Information, die der Teilnehmer i rundgesendet hat, ist als B8.i in 18 dargestellt.
  • (Runde 9) Wenn die Entscheidungsmitteilung zum Teilnehmer o in Runde 8 rundgesendet ist, sendet dieser seinen Spaltenvektor (Verarbeitung R9.o in 18). Die Information, die der Teilnehmer i rundgesendet hat, ist als B9.i in 18 dargestellt.
  • (Runde 10) Jeder Teilnehmer i bestätigt die gesamte Rundsendeinformation und sendet eine Entscheidungsmitteilung für den Teilnehmer o, der eine unzulässige Handlung begangen hat (Verarbeitung R10.i in 18). Die Information, die der Teilnehmer i rundgesendet hat, ist als B10.i in 18 dargestellt.
  • (Nachverarbeitung) Die gemeinsam verwendete Linearkombination der korrekt gemeinsam verwendeten Partialmatrizen S(i)*X(i) wird von allen Teilnehmer ausgeführt (der Prozeß eines jeden Teilnehmers i ist als Verarbeitung Pi in 18 dargestellt), und die korrekte Partialmatrix S*X wird somit gemeinsam verwendet und berechnet. Wenn diese Matrix aufgrund der unzulässigen Handlung nicht erzeugt wird, wird der angreifende Teilnehmer identifiziert und das Ergebnis wird rundgesendet.
  • Durch die obige Verarbeitung wird das Geheimelement s, das ein spezieller Teilnehmer i zufällig unter {1, ..., p – 1} ausgewählt hat, bestätigend gemeinsam verwendet, und zur selben Zeit wird das Produkt s*x des Geheimnisses s und des vorherigen, bestätigend gemeinsam verwendeten Geheimnisses x berechnet. Als nächstes beschrieben ist der Berechnungsprozeß zum Erzielen eines Produkts zweier gemeinsam verwendeter Geheimnisse x und y durch Ausführen der obigen Verarbeitung. Dieser Prozeß ist in 19 gezeigt.
  • (Runden 1 bis 10) Jeder Teilnehmer i wählt zufällig Geheimelement r(i) aus {1, ..., p – 1} aus und führt den obigen bestätigend gemeinsam verwendeten Prozeß bezüglich des ausgewählten Elements aus, während zur selben Zeit die Berechnung r(i)*y läuft.
  • (Runde 11) Die Berechnungen von r = r(jl) + r(jl) + ... + r(jm) und r*y = r(jl)*y + r(j2)*y + ... + r(jm)*y von Geheimnissen aller Teilnehmer jl (l = 1, ..., m), für die die verstätigend gemeinsame Verwendung korrekt ausgeführt wird, erfolgt unter Verwendung der zuvor gemeinsam verwendeten Addition.
  • (Runde 12) Die gemeinsam verwendete Addition erfolgt bezüglich der Geheimaddition u = x – r.
  • (Runden 13 bis 15) Das geheime u wird von allen Teilnehmern entschlüsselt.
  • (Runde 16) Die gemeinsam ausgeführte Berechnung erfolgt bezüglich einer geheimen Linearkombination z = r*y – u*y = x*y.
  • Durch die obige Verarbeitung kann das Produkt x*y der beiden gemeinsam verwendeten Geheimelemente x und y gemeinsam verwendet und berechnet werden von den Teilnehmern, die der Gruppe angehören. Unter Verwendung eines Geheimschlüssels, der im obigen Prozeß erzielt wird, erfolgt eine gemeinsame Verwendung einer Digitalsignatur für eine gegebene Mitteilung, die von der Gruppe folgendermaßen erzeugt wird.
  • Signaturerzeugungsverarbeitung (siehe 20)
  • (Runden 1 bis 5) Jeder Teilnehmer i wählt Geheimelement r(i) zufällig aus unter {1, ..., p – 1}, und diese Auswahl wird von allen Teilnehmern der Unterzeichnergruppe gemeinsam verwendet durch Ausführen des zuvor beschriebenen geheimen gemeinsam verwendeten Prozesses. Jeder Teilnehmer i berechnet g^(r(i)) mod q (wobei q eine Primzahl ist, die in der schon beschriebenen Weise ausgewählt wird) und sendet das Ergebnis über den Rundsendeübertragungskanal.
  • (Runde 6) Die Nachverarbeitung des gemeinsam verwendeten Geheimprozesses wird ausgeführt. Mit dem korrekt gemeinsam verwendeten Geheimelement r(i) (i = 1, ..., n) als Eingabe wird das gemeinsam verwendete Ergebnis r erfaßt durch Ausführen der gemeinsam verwendeten Addition. Des weiteren wird R = g^r mod q berechnet, welches der Multiplikationswert R(i) = g^(r(i)) mod q ist, der in Runde 1 bis 5 bezüglich des korrekt gemeinsam verwendeten Geheimelements r(i) gesendet wurde.
  • (Runde 7) Jeder Teilnehmer verwendet eine gegebene Mitteilung m als Eingabe zum Berechnen der Ausgabe e = h(m) der zuvor beschriebenen vorbestimmten Funktion h. Dann wird b = (e + R*a) gemeinsam verwendet und berechnet unter allen Teilnehmern der Unterzeichnergruppe durch Ausführen der gemeinsam verwendeten Linearkombinationsverarbeitung.
  • (Runden 8 bis 17) Hier wird s = b*r^(–1) gemeinsam verwendet und berechnet unter allen Teilnehmern der Unterzeichnergruppe unter Verwendung der zuvor beschriebenen gemeinsam verwendeten Multiplikation. Zum Vermeiden der gemeinsam verwendeten Inverselementverarbeitung für r^(–1) wird g^((r(i))^(–1)) mod q berechnet, anstelle von g^(r(i)) mod q, bei der Zufallszahlenerzeugungsverarbeitung (siehe Runden 1 bis 5).
  • (Runden 18 bis 20) Das gemeinsam verwendete geheime s wird entschlüsselt durch Geheimentschlüsselungsverarbeitung des gemeinsam verwendeten Geheimverfahrens. Eine Signatur für die gegebene Mitteilung ist definiert als (R, s). Die erzeugte Signatur wird bestätigt unter Verwendung des öffentlichen Schlüssels a und durch Ausführen der Signaturbestätigungsverarbeitung für das Digitalsignaturverfahren. Wenn die Signatur nicht korrekt ist, wird bestimmt, daß es einen Teilnehmer gibt, der eine unzulässige Handlung begangen hat. Der Geheimentschlüsselungsprozeß des gemeinsam verwendeten Geheimverfahrens erfolgt zum Identifizieren eines derartigen Teilnehmers.
  • Die vorliegende Erfindung ist nicht auf die Anzahl an Dimensionen für die Partialmatrix beschränkt, wie in den obigen Ausführungsbeispielen 3 bis 5 beschrieben, und kann eine vielfachdimensionale Partialgliederung sein. Eine Funktion kann des weiteren als eine solche verwendet werden, die sich von Einwegquasizufallszahlenfunktion unterscheidet, damit das Erfassen der Einweg-Eigenschaft sichergestellt ist. Hinsichtlich der Cut-and-Choose-Technik ist diese nicht auf die speziell im Ausführungsbeispiel 1 erläuterten Prozeduren beschränkt, sondern kann ein beliebiges Verfahren sein, das die Eigenschaft bestätigt, ohne eine Undichtigkeit des Geheimnisses zu bilden.
  • Nach der vorliegenden Erfindung, wie sie oben erläutert wurde, kann ein gemeinsam verwendetes Digitalsignaturverfahren bereitgestellt werden, durch das, wenn die Anzahl korrekter Gruppenteilnehmer, die aus einer Vielzahl von Computer (Unterzeichnern) besteht, die über ein Übertragungssystem miteinander verbunden sind, größer als ein Schwellwert t ist, eine Signatur von der Gruppe erzeugt werden kann, und wenn ein Unterzeichner eine unzulässige Handlung begeht, kann ein solcher Unterzeichner identifiziert werden. Verglichen mit dem herkömmlichen gemeinsam verwendeten Digitalsignaturverfahren, durch das eine korrekte Signatur erzeugt wird, selbst wenn eine unzulässige Handlung auftritt, muß das Verfahren dieses Ausführungsbeispiels nur einen effizienten Betrag der Übertragung und Berechnung enthalten.
  • Verglichen mit dem herkömmlichen gemeinsam verwendeten Digitalsignaturverfahren, das weder einen angreifenden Teilnehmer identifizieren noch eine Signatur erzeugen kann, ist das Verfahren der vorliegenden Erfindung sicherer, weil mit diesem Verfahren ein angreifender Unterzeichner identifiziert werden kann.
  • Genauer gesagt, da die Verarbeitung, die die größte Rechenmenge erfordert, die Exponentialmultiplikation ist, wird die Rechenmenge, die für jeden Unterzeichner erforderlich ist, der der Unterzeichnergruppe angehört, angenommen als im wesentlichen dieselbe, wie sie erforderlich ist für das letztere herkömmliche Digitalsignaturverfahren. Die erforderliche Übertragungsmenge für jeden Unterzeichner liegt in der Größenordnung l*n^2*k (wobei n die Teilnehmerzahl und k einen Sicherparameter und l die Länge einer verwendeten Ganzzahl bedeutet) und ist praktischer als diejenige, die nach dem früheren herkömmlichen Digitalsignaturverfahren verwendet wurde.
  • Es wird angenommen, daß, in Übereinstimmung mit der Anzahl von Sätzen, die t + 1 unterschiedliche Spaltenvektoren von m = n!/((t + 1)!(n – t – 1)!) in der Geheimverschlüsselungsverfahren enthalten (siehe Runde 3 der gemeinsam verwendeten Geheimverarbeitung in Ausführungsbeispiel 1), wenn n nicht sehr klein ist (n < 20), das Identifizieren des angreifenden Teilnehmers in der Praxis schwierig wird. Das gemeinsam verwendete Geheimverfahren nach diesem Ausführungsbeispiel ist folglich effektiv, wenn die Anzahl von Teilnehmern gering ist. Das herkömmliche bestätigende gemeinsam verwendete Geheimverfahren erfordert jedoch eine unpraktikable Übertragungs- und Rechenmenge, selbst wenn die Anzahl von Teilnehmern gering ist.
  • Die erforderliche Übertragungsmenge und der erforderliche Rechenumfang lassen sich unter Verwendung des Signaturerzeugungsverfahrens dieses Ausführungsbeispiels reduzieren, wie es zuvor beschrieben ist. Wegen einer geringen Übertragungsmenge können darüber hinaus der Verkehr im Übertragungssystem und die Übertragungskosten verringert werden, und aufgrund des geringen Rechenumfangs kann eine Hochgeschwindigkeitsverarbeitung erfolgen.
  • Ausführungsbeispiel 6
  • Ein Ausführungsbeispiel, bei dem eine gemeinsam verwendete Bestätigung von einer Vielzahl von Geräten in ein Übertragungssystem erfolgt, ist nachstehend beschrieben.
  • 21 ist ein Diagramm, das ein Übertragungssystem nach einem Ausführungsbeispiel der vorliegenden Erfindung darstellt, das über Informationsverarbeitungsgeräte verfügt, die gemeinsam verwendet werden und die Beglaubigung ausführen.
  • In 21 haben der Rundsendeübertragungskanal 12 und die Geheimübertragungskanäle 13 dieselben Funktionen wie jene in 1. Die Geräte 14 sind Geräte AS(1), ..., AS(k) (werden nachstehend als "Mitglieder" bezeichnet), die gemeinsam verwendet Beglaubigungsserver sind. Die Anzahl der Mitglieder in diesem Falle ist hinsichtlich der Effizienz als eine vergleichsweise geringe Zahl festgelegt, 20 oder weniger.
  • Die Gesamtzahl der Geräte, die das Übertragungssystem bilden, kann beträchtlich größer sein als die Mitgliederzahl, und sie sind mit den Mitgliedern über die Geheimübertragungskanäle 13 verbunden. Die Übertragung zwischen diesen Geräten erfolgt über einen normalen Übertragungskanal 16 (nicht zuverlässig). Wenn hiernach ein Gerät eine Dienstanforderung sendet (beispielsweise eine Datenübertragung, eine Fernrufprozedur und so weiter), die das andere Gerät hat, wird das Gerät, das eine Anfrage erzeugt, "Client" genannt, und das Gerät, das die Anforderung empfängt und den Service bereitstellt, wird "Server" genannt. In 21 sind die Geräte 15 solche C/S(1), ..., C/S(n), die als solcher Client und Server dienen. Angemerkt sei, daß ein Mitglied ein Client oder ein Server sein kann.
  • In diesem Ausführungsbeispiel werden Client und Server zur wechselseitigen Beglaubigung und der Beglaubigung von Übertragungsinhalten verwendeten. Weiterhin verwenden Client und Server gemeinsam einen Geheimschlüssel zum Ausführen der Geheimübertragung. Da darüber hinaus die Geheiminformation unter den Mitgliedern zum Steuern und Berechnen der Information verwendet wird, ist der Beglaubigungsserver in diesem Ausführungsbeispiel zuverlässiger als der herkömmliche Beglaubigungsserver. Wenn ein Client die Beglaubigung zum Identifizieren seiner selbst fordert, um von einen Server einen Dienst zu verlangen, wird ein Client, der die Beglaubigung fordert, "Prüfer" genannt, und ein Server, der die Beglaubigung gibt, wird als "Beglaubiger" bezeichnet. Die individuellen Geräte des Übertragungssystems mit den eingeschlossenen Gliedern sind in einer in 2 gezeigten Blockstruktur aufgebaut.
  • Der grundlegende Teil vom gemeinsam verwendeten Beglaubigungsprotokoll ist das oben beschriebene VSS-Protokoll (Verifiable Secret Sharing protocol).
  • Gemeinsam verwendete geheime Linearkombinationsverarbeitung
  • Wenn zwei Geheimelemente x und y in einem gegebenen endlichen Satz bei der obigen bestätigenden gemeinsam verwendeten Geheimverarbeitung gemeinsam verwendet werden (zu dieser Zeit hält jeder Teilnehmer i Geheimabschnitte x_i und y_i, die den Geheimelementen x beziehungsweise y entsprechen), dann erfolgt keine Übertragung, und der Geheimabschnitt (x + y)_i, der der Summe x + y im gegebenen endlichen Satz entspricht, wird folgendermaßen berechnet.
  • Die Elemente der Spaltenvektoren X_c(i) und Y_c(i) und die Elemente der Geheimwerte x_r(i) und y_r(i) der Partialmatrix, die jeder Teilnehmer hält, werden als erstes addiert. Aus der Definition einer Partialmatrix (die Elemente der Zeilen und Spalten sind Werte eines Polynoms) ist offensichtlich, daß die Additionsergebnisse X_c(i) + Y_c(i) und x_r(i) + y_r(i) ein Spaltenvektor und ein Geheimwert für eine Partialmatrix bezüglich x + y sind.
  • Die Einwegquasizufallszahlenfunktionswerte x* und y*, die verwendet werden zum Bestätigen eines Informationssegments in der Geheimentschlüsselungsverarbeitung, werden gespeichert. Diese Werte werden erforderlichenfalls verwendet, wenn der Entschlüsselungsprozeß bezüglich des Additionsergebnisses x + y erfolgt, und diese Partialmatrix X + Y, die dem geheimen x + y entspricht, wird bestätigt.
  • Um weiterhin die gemeinsam verwendete Multiplikation eines gemeinsam verwendeten Geheimelements x und eines öffentlichen Elements a auszuführen, sind die Ergebnisse, die durch Multiplizieren eines jeden Elements der Partialmatrix erfaßt wurden, die der Teilnehmer hält, Elemente der Partialmatrix bezüglich x*a. Durch den obigen Prozeß kann folglich die gemeinsam verwendete Berechnung der Linearkombination a*x + b*y der beiden gemeinsam verwendeten Geheimelemente x und y und der öffentlichen Elemente a und b erfolgen, ohne daß ein Dialog zwischen den Gruppenteilnehmern erforderlich ist.
  • In der oben beschriebenen Weise kann ein Geheimnis unter den Mitgliedern unter Verwendung des Bestätigungsverfahrens gemeinsam verwendet werden.
  • Das gemeinsam verwendetes Protokoll zur Pseudozufallsgeheimniserzeugung zur gemeinsamen Erzeugung von Pseudozufallszahlen unter den Mitgliedern ist nachstehend erläutert.
  • Gemeinsam verwendetes Protokoll zur Pseudozufallsgeheimniserzeugung
  • Die Mitglieder AS(1), ..., AS(k), die als Beglaubigungsserver dienen, geben die Geheimabschnitte r(i) (i = 1, ..., k) des gemeinsam verwendeten Pseudozufallsgeheimnisses r an das Mitglied AS(i) zum Steuern von r ab. Das Protokoll wird in der in den 23A und 23B gezeigten Weise realisiert.
  • Jedes Mitglied AS(i) erzeugt ein Pseudozufallsgeheimnis ri, das einem Element in einem endlichen Satz entspricht (Verarbeitung 81).
  • AS(i) verwendet gemeinsam und geheim das Pseudozufallsgeheimnis ri durch Ausführen des bestätigenden gemeinsam verwendeten Geheimprozesses, der oben beschrieben ist. Da jedes Mitglied diesen Prozeß ausführt, hält jedes Mitglied AS(j) (j = 1, ..., k) die Geheimabschnitte rl(j), ..., rm(j) der individuellen Mitglieder. Angemerkt sei, daß m (≤ k) die Anzahl von Mitgliedern ist, die bestätigen, daß das gemeinsame Verwenden des Geheimnisses korrekt ausgeführt wurde (Verarbeitung 82).
  • Jedes Mitglied AS(j) addiert den Geheimabschnitt zusammen und erzeugt r(j) = rl(j) + ... + rm(j), welches der Geheimabschnitt des Pseudozufallsgeheimnisses r bezüglich AS(j) ist (Verarbeitung 83).
  • Das Pseudozufallsgeheimnis r ist eine Zahl, die niemand außer der Majorität der zugehörigen Mitglieder kennen kann. Das gemeinsam verwendete Pseudozufallsgeheimnis wird in der zuvor beschriebenen Weise erzeugt, und das erzeugte Pseudozufallsgeheimnis kann verwendet werden als ein Umsetzschlüssel für einen Prüfer und einen Beglaubiger.
  • Ein Protokoll zum Ausführen der gemeinsam verwendeten Geheimschlüsselverschlüsselungsverarbeitung unter den Mitgliedern ist nachstehend erläutert. Die Verarbeitung variiert abhängig von dem Fall, bei dem die Daten für die Geheimschlüsselumsetzung gemeinsam verwendete Geheimdaten sind, und wobei die Daten öffentliche Daten sind.
  • Gemeinsam verwendete Geheimschlüsselverschlüsselung/-entschlüsselung für gemeinsam verwendete Geheimdaten
  • 24A ist ein Diagramm zur Erläuterung dieses Protokolls. Eine Mitteilung, die aus N Blöcken besteht, m1, ..., mN, die die Länge N haben, ist als m definiert. Angemerkt sei, daß das VSS-Protokoll in einem endlichen Satz GF(2L) ausgeführt wird.
  • Geheimabschnitte m1(i), ..., mN(i) werden als geheime gemeinsam verwendete unter den Mitgliedern AS(i) angenommen. Der Geheimschlüssel pk, der dieselbe Länge wie die Mitteilung m hat, ist ebenfalls in N Blöcke eingeteilt, pk1, ..., pkN, die jeweils die Länge L haben. Diese Blöcke werden von den obigen Mitgliedern gemeinsam verwendet, so daß die Mitglieder AS(i) individuelle Geheimabschnitte pk(i), ..., pkN(i) haben.
  • Um die Geheimschlüsselverschlüsselungsverarbeitung für die Mitteilung m unter Verwendung des Geheimschlüssels pk auszuführen, führt jedes Mitglied AS(i) die Addition für jeden Block in einem gegebenen endlichen Satz folgendermaßen aus: c1(i) = m1(i) + pk1(i), ..., cN(i) = mN(i) + pkN(k).
  • Da die Information vom VSS-Protokoll semiidentisch ist, entspricht ci(i), ..., cN(i) den Geheimabschnitten von c1, ..., cN, die gewonnen werden durch Unterteilen der verschlüsselten Erklärung c in N Blöcke jeweils mit der Länge L. Die verschlüsselte Erklärung c wird folglich entschlüsselt durch Ausführen des zuvor beschriebenen Geheimentschlüsselungsprozesses und wird dann öffentlich.
  • Die Geräte des Übertragungssystems, die Geheimschlüssel pk haben, können die Originalmitteilung m von der öffentlichen verschlüsselten Erklärung c entschlüsseln. Angemerkt sei, daß der Geheimschlüssel pk nur einmal und dann nicht mehr verwendet wird.
  • Gemeinsam verwendete Geheimschlüsselverschlüsselung/-entschlüsselung für öffentliche Daten
  • Für eine öffentliche Mitteilung m, könnte der Geheimschlüssel pk einer dritten Person bekannt sein, wenn das obige Verschlüsselungsprotokoll verwendet wird, durch Subtrahieren der Mitteilung m von der verschlüsselten Erklärung c, die öffentlich geworden ist. Folglich wird das Protokoll, wie es in 24B gezeigt ist, für die öffentlichen Daten verwendet.
  • Wie auch im vorigen Fall wird die Mitteilung m aus N Blöcken m1, ..., mN aufgebaut, die alle die Länge L haben. Die Inhalte der Mitteilung m sind öffentliche Daten, die den Mitgliedern bekannt sind. Der Geheimschlüssel pk ist doppelt so lang wie die Mitteilung m und ist unterteilt in 2N Blöcke pk1_1, pk1_2, ..., pkN_1, pkN_2 der Länge L. pk wird geheim und gemeinsam von den Mitgliedern verwendet, und die Mitglieder AS(i) halten individuell die Geheimabschnitte pk1_1(i), pk1_2(i), ..., pkN_1(i), pkN_2(i).
  • Um die Verschlüsselungsverarbeitung für den Geheimschlüssel pk für die Mitteilung m unter Verwendung des Geheimschlüssels pk zu verwirklichen, führt jedes Mitglied AS(i) folgende Rechenoperation in einem gegebenen endlichen Satz für jeden Block aus. Im folgenden Ausdruck bedeutet o die Multiplikation, und + bedeutet die Addition: c1(i) = m1opk1_1(i) + pk1_2(i), ..., cN(i) = mNopkN_1(i) + pkN_2(i).
  • Da die Bildung des VSS-Protokolls semi-identisch für die Linearkombination ist, entsprechen c1(i), ..., cN(i) den Geheimabschnitten von c1, ..., cN, die gewonnen werden durch Unterteilen der verschlüsselten Erklärung c in N Blöcke für jede Länge L. Die verschlüsselte Erklärung c wird folglich entschlüsselt durch Ausführen der zuvor beschriebenen Geheimentschlüsselungsverarbeitung und wird dann öffentlich.
  • Da das Protokoll die beiden Schlüsselarten pkj_1 und pkj_2 (j = 1, ..., N) verwendet, wie oben beschrieben, gibt es keine Chance, daß ein Geheimschlüssel pk durchsickert, ungeachtet der Tatsache, ob die Mitteilung m aus öffentlichen Daten besteht. Obwohl das Verschlüsseln bei kurzer Länge L leichter ist, ist die Wahrscheinlichkeit, mit der eine Angriffsperson die verschlüsselte Erklärung c in die falsch verschlüsselte Erklärung c' ändert, um eine Falschmitteilung m' bereitzustellen, gleich 2–L, so daß L aus Sicherheitsgründen nicht sehr klein sein kann. Somit ist L ungefähr gleich 32.
  • Die Geräte des Übertragungssystems, die hinsichtlich der Entschlüsselung den Geheimschlüssel gemeinsam verwenden, zerlegen den Geheimschlüssel pk und die verschlüsselte Erklärung c für jede Länge L und führen eine Rechenoperation von pkj_1, pkj_2 und cj(cj – pkj_2)/pkj_1 aus, um mj zu erzielen. Durch diesen Prozeß kann die Originalmitteilung m entschlüsselt werden. Der Geheimschlüssel pk wird auch in diesem Falle nur einmal und dann nie wieder verwendet.
  • Beglaubigungsprotokoll
  • Die Beglaubigung mit gemeinsamem Schlüssel wird realisiert unter Verwendung obiger Protokolle durch einen gemeinsam verwendeten Beglaubigungsserver, anstelle des herkömmlichen zentralisierten Beglaubigungsservers, und zwar auf folgende Weise.
  • Das Beglaubigungsprotokoll enthält eine Übertragung, durch die ein Prüfer eine Beglaubigungsmitteilung aus einem gemeinsam verwendeten Beglaubigungsserver empfängt, sowie eine Übertragung, durch die ein Prüfer die Beglaubigungsdaten für einen Beglaubiger bereitstellt. Dies nennt man "Online-Verarbeitung".
  • Als Voraussetzung zum Ausführen des Online-Prozesses sind ein gemeinsamer Geheimschlüsselprozeß zwischen dem gemeinsam verwendeten Beglaubigungsserver und dem Gerät erforderlich, das als Prüfer oder als Beglaubiger dient, und ein Umsetzschlüsselerzeugungsprozeß durch den gemeinsam verwendeten Beglaubigungsserver erforderlich. Dies nennt man "Offline-Verarbeitung". Die Offline-Verarbeitung läßt sich ausführen, immer wenn ein Geheimschlüssel oder ein Umsetzschlüssel während der Online-Verarbeitung erforderlich ist, aber die für die Online-Verarbeitung und die Übertragungsperiode erforderliche Zeit verlängert sich.
  • Wird die Offline-Verarbeitung vor der Online-Verarbeitung ausgeführt, dann kann die Online-Verarbeitung in effektiver Weise erfolgen. Die "Offline-Verarbeitung" und die "Online-Verarbeitung" sind nachstehend anhand der 25A beziehungsweise 25B beschrieben.
  • Offline-Verarbeitung
  • Eine im voraus gemeinsam zu verwendende Information unter den Mitgliedern, die die gemeinsam verwendeten Beglaubigungsserver sind, ist eine Information, die sich auf den Geheimschlüssel für alle Geräte bezieht. Wie im gemeinsam verwendeten Geheimschlüsselverschlüsselungs-/-entschlüsselungsprotokoll erläutert, muß jedoch der Geheimschlüssel, der zwischen dem Prüfer und dem gemeinsam verwendeten Beglaubigungsserver verwendet wird, nach dem Abschluß der Verschlüsselung oder Entschlüsselung der Mitteilung disponiert werden. Somit müssen viele Schlüssel erzeugt werden. Die Verarbeitung erfolgt durch die folgende Geheimschlüsselauslieferungsverarbeitung. Der Erzeugungsprozeß vom gemeinsam verwendeten Pseudozufallsgeheimnis, das als Umsetzschlüssel zwischen einem Prüfer und einem Beglaubiger verwendet wird, erfolgt ebenfalls während der Offline-Verarbeitung, und zwar folgendermaßen.
  • Geheimschlüsselauslieferungsverarbeitung
  • Das Gerät j vom Übertragungssystem, das die Beglaubigung anfordert, führt den gemeinsam verwendeten Geheimprozeß im voraus aus, um unter den Mitgliedern eine hinreichend große Anzahl M von Pseudozufallsgeheimnissen pkj_1, ..., pkj_M gemeinsam zu verwenden, die willkürlich ausgewählt werden. Die Mitglieder AS(i) empfangen somit Geheimschnitte pkj_1(i), ..., pkj_M(i) vom Pseudozufallsgeheimnis. wenn das Gerät j das Geheimnis nicht korrekt gemeinsam verwendet, empfängt lediglich das Gerät j unter Verwendung des eigenen Geheimschlüssels pkj keinen Beglaubigungsdienst. Die Nachverarbeitung zum Bestätigen, ob die gemeinsam verwendete Information korrekt ist, wird in diesem Falle folglich nicht notwendigerweise ausgeführt. Ein Rundsendeübertragungskanal, über den alle Mitglieder bestätigen, daß j keine falsche Erklärung abgibt, ist ebenfalls nicht notwendigerweise zwischen dem Gerät j und den Mitgliedern vorgesehen (siehe 27).
  • Während dieses Prozesses hält j als Liste einen hinreichend großen Geheimschlüssel pkj_i (i = 1, ..., M), während jedes Mitglied h (h = 1, ..., k) als Liste den Geheimabschnitt pkj_i(h) (i = 1, ..., M) hält. Da der Geheimschlüssel nur einmal verwendet wird, wie zuvor beschrieben, halten j und jedes Mitglied jeweilige Indizes pkj und pkj(h), die die Position auf der Liste eines Schlüssels aufzeigen, der als nächster verwendet wird. Das Gerät j erzeugt, wenn es dies leisten kann einen neuen Geheimschlüssel, verwendet gemeinsam das Geheimnis des Schlüssels, wenn das Übertragungssystem unbenutzt ist, und setzt die Aktualisierung fort.
  • Pseudozufallsgeheimniserzeugungsverarbeitung
  • Wie bei der Geheimschlüsselauslieferungsverarbeitung gemäß 26 werden gemeinsam verwendete Pseudozufallsgeheimnisse r1, ..., rQ, die Umsetzschlüssel zwischen den Prüfern und den Beglaubigern sind, während der Offline-Verarbeitung erzeugt und in einer Liste gehalten. Für das Erzeugen des gemeinsam verwendeten Pseudozufallsgeheimnisses, wie es im gemeinsam verwendeten Pseudozufallsgeheimniserzeugungsprotokoll beschrieben ist, müssen alle Mitglieder die gemeinsame Verarbeitung für das Pseudozufallsgeheimnis ausführen. Da jedoch alle Mitglieder diese Verarbeitung nicht zur selben Zeit ausführen müssen, können sie die Verarbeitung dann ausführen, wenn keine Verarbeitung erfolgt und das Übertragungssystem unbenutzt ist, und gemeinsam das erzeugte Pseudozufallsgeheimnis mit den anderen Mitgliedern gemeinsam verwenden. Jedes Mitglied hält dann als Liste das gemeinsam verwendete Pseudozufallsgeheimnis r1(j), ..., rQ(j) gemeinsam mit dem Index, der die Position zur Verwendung aufzeigt.
  • Online-Verarbeitung
  • Die Online-Beglaubigungsprotokoll zum Erfassen aus einem gemeinsam verwendeten Beglaubigungsserver eines Beglaubigungselements, das Client P (Prüfer) des Übertragungssystems zum Server V (Beglaubiger) sendet, wird ausgeführt mit den folgenden Schritten S1 bis S4.
  • (Schritt 1) Der Client P sendet über einen normalen Übertragungskanal an ein Mitglied, der gemeinsam verwendete Beglaubigungsserver, eine Anforderungsmitteilung 101 (siehe 28A) die Information {id_P, id_V, s} enthält, womit AUTH_REQUEST aufgezeigt ist. Angemerkt sei, daß id_P den Client P aufzeigt, id_V Daten aufzeigt, die den Server V spezifizieren, und s bedeutet eine Zufallszahl, die willkürlich ausgewählt wird.
  • (Schritt 2) Ein Mitglied, das AUTH_REQUEST empfangen hat, führt die Prozeduren folgender Schritte S21 bis S26 aus (siehe 28).
  • (Schritt 21) Ein Zeitstempel, der die laufende Zeit aufzeigt, wird rundgesendet, und die gemeinsame Zeit wird bestätigt.
  • (Schritt 22) Während das gemeinsam verwendete Geheimschlüsselverschlüsselungsprotokoll für die gemeinsam verwendeten Geheimdaten verwendet wird, werden Pseudozufallsgeheimnisse rz, ..., rz + a – 1, die als Umsetzschlüssel ck1, ..., cka zwischen einem Prüfer und einem Bestätiger verwendet werden, durch Festlegen von pkV_x, ..., pkV_x + a – 1 als geheimer Verschlüsselungsschlüssel verwendet. Angemerkt sei, daß a die Anzahl von Pseudozufallsgeheimnissen bedeutet, und z und x bedeuten Indizes, die den Anfang einer Pseudozufallsliste darstellen, sowie eine Geheimschlüssel-pk-Liste. Zu dieser Zeit werden z und x aktualisiert auf z = z + a beziehungsweise x = x + a. Die durch Verschlüsselung gewonnenen Ergebnisse sind CT_1, ..., CT-a.
  • (Schritt 23) Das gemeinsam verwendete Geheimschlüsselverschlüsselungsprotokoll für öffentliche Daten wird verwendet, und der öffentliche Zeitstempel und id_P, welches der Identifizierer eines Prüfers ist, wird verschlüsselt durch 2b Geheimschlüssel pkV_x, ..., pkV_x + 2b aus der Geheimschlüssel-pk-Liste, die in Schritt S22 Verwendung findet. Dann wird der Index x aktualisiert auf x = x + 2b + 1. Die durch Verschlüsselung gewonnenen Ergebnisse sind CT_a + 1, ..., CT_a + b. Das Ergebnis und das Ergebnis in Schritt S22 werden miteinander addiert, um CT_1, ..., CT_a + b bereitzustellen, die dann zum Index x hinzugefügt werden, der zuvor in Schritt S22 aktualisiert wurde. Das gewonnene Ergebnis wird definiert als Beglaubigungselement.
  • (Schritt S24) Das gemeinsam verwendete Geheimschlüsselverschlüsselungsprotokoll für die gemeinsam verwendeten Geheimdaten wird verwendet, und die verschlüsselten Elemente CT_1, ..., CT_a + b für einen Beglaubiger, gewonnen in Schritt S23, und die gemeinsamen Schlüssel ck1 ..., cka, die in Schritt S22 verwendet werden, erfahren eine Verschlüsselung durch Anwenden von 2a + b Geheimschlüsseln pkP_y, ..., pkP_y + 2a + b als Verschlüsselungsschlüssel. Angemerkt sei, daß y einen Index bedeutet, der den Anfang der Geheimschlüsselliste für einen Prüfer aufzeigt, und aktualisiert wird: y = y + 2a + b + 1. Die solchermaßen verschlüsselten Ergebnisse sind CCT_1, ..., CCT_2a + b.
  • (Schritt S25) Das gemeinsam verwendete Geheimschlüsselverschlüsselungsprotokoll für die öffentlichen Daten wird verwendet, und Pseudozufallsgeheimnis s, das in Schritt S1 öffentlich wurde, und id_V, das der Identifizierer eines Beglaubigers ist, werden mit 2c Geheimschlüsseln pkP_y, ..., pkP_y + 2c aus der Geheimschlüsselliste verschlüsselt, die in Schritt S24 verwendet wird. Der Index y wird aktualisiert auf y = y + 2c + 1. Die solchermaßen verschlüsselten Ergebnisse sind CCT_2a + b + 1, ..., CCT_2a + b + c. Diese Ergebnisse werden zum Ergebnis in Schritt S24 addiert, und die Endergebnisse sind CCT_1, ..., CCT_2a + b + c.
  • (Schritt S26) Die Geheimentschlüsselungsverarbeitung erfolgt zur Entschlüsselung der gemeinsam verwendeten CCT_1, ..., CCT_2a + b + c. Das durch Entschlüsselung gewonnene Ergebnis wird als Beglaubigungsmitteilung 102 gemeinsam mit dem Index y vor seiner Aktualisierung in Schritt S24 gesendet, und zwar über den normalen Übertragungskanal, an den Client P, der ein Prüfer ist.
  • (Schritt 3) Der Prüfer P bezieht sich auf den empfangenen Index Y und Geheimschlüssel pkP_y, ..., pkP_y + 2a; b; 2c, die in der Geheimschlüsselliste enthalten sind, und verwendet das gemeinsam verwendete Geheimschlüsselentschlüsselungsprotokoll für öffentliche Daten zum Entschlüsseln des Pseudozufallsgeheimnisses ck aus den Empfangsdaten CCT-1, ..., CCT_2a + b + c. Dann bestätigt der Prüfer P, daß das entschlüsselte s und id_V korrekt sind. Sind sie bestätigt, wird das entschlüsselte Pseudozufallsgeheimnis ck als gemeinsamer Schlüssel mit dem Beglaubiger gespeichert, und ein entschlüsseltes Beglaubigungselement 103 wird an den Beglaubiger V gesandt (siehe 29A).
  • (Schritt 4) Unter Bezug auf Index x, das enthalten ist im Beglaubigungselement, und Geheimschlüssel pkV_y, ..., pkV_y + a; 2b, die in der Geheimschlüsselliste enthalten sind, verwendet der Beglaubiger V das gemeinsam verwendete Geheimschlüsselentschlüsselungsprotokoll für öffentliche Daten zur Entschlüsselung des Zeitstempels und des Identifizierers id_P des Prüfers aus dem empfangenen Beglaubigungselement und verwendet das gemeinsam verwendete Geheimschlüsselentschlüsselungsprotokoll zur gemeinsamen Verwendung vom Geheimdaten zur Entschlüsselung vom Pseudozufallsgeheimnis ck. Der Beglaubiger bestätigt dann, daß der entschlüsselte Zeitstempel und der entschlüsselte Identifizierer id_P korrekt sind. Sind sie bestätigt, wird die Bestätigung an den Prüfer P gegeben, und das entschlüsselte Pseudozufallsgeheimnis ck wird als gemeinsamer Schlüssel mit dem Beglaubiger gespeichert (siehe 29B).
  • Ausführungsbeispiel 7
  • Wenn im Ausführungsbeispiel 6 eine angreifende Person Abhören bezüglich eines Beglaubigungselements ausführt, das ein Prüfer an einen Beglaubiger sendet, und das Beglaubigungselement speichert, unterliegt die angreifende Person dem Beglaubigungselement vom Beglaubiger und kann diesen um einen Dienst nachfragen, den der Prüfer nicht beabsichtigt. Der Prüfer wird folglich verwirrt. Dieser Akt wird Rückspielattacke genannt.
  • Um in diesem Ausführungsbeispiel die Rückspielattacke zu vermeiden, wird die zusätzlich ausgetauschte Zeitinformation bereitgestellt für ein Beglaubigungselement, das der Prüfer an den Beglaubiger in Schritt S3 sendet, das von der Online-Verarbeitung im Ausführungsbeispiel 6. Diese Prozeduren sind auch in den 30A und 30B gezeigt. Die Verarbeitung in diesem Ausführungsbeispiel ist dann dieselbe wie beim Ausführungsbeispiel 6, mit der Ausnahme, daß die Prozeduren in den Schritten S3' und S4' zusätzlich zu den Protokollen in den Schritten S3 und S4 der Online-Verarbeitung erfolgen. Nur die Prozeduren in den Schritten S3' und S4' werden erläutert.
  • (Schritt S3') Nachdem die Prozedur in Schritt S3 im Ausführungsbeispiel 6 zur Ausführung gekommen ist, verwendet der Prüfer den gewonnenen Umsetzschlüssel ck und verschlüsselt einen neuen Zeitstempel T2 und Identifizierer id_P des Prüfers, um {T2, id_P}^ck zu erhalten. Der Prüfer sendet dem Beglaubiger {T2, id_P}^ck mit dem Beglaubigungselement.
  • (Schritt S4') Der Beglaubiger führt die Prozeduren in Schritt S4 im Ausführungsbeispiel 6 aus, um das Beglaubigungselement zu entschlüsseln, und verwendet den gewonnenen Umsetzschlüssel ck zum Entschlüsseln einer zugriffsfähigen Mitteilung {T2, id_P}^ck. Der Beglaubiger bestätigt dann den Zeitstempel T2 und den Identifizierer id_P vom Prüfer, und wenn T2 der alte ist, wird die Dienstanforderung nicht akzeptiert.
  • Wie zuvor beschrieben, ist es nach diesem Ausführungsbeispiel möglich, einen Beglaubigungsserver bereitzustellen, der eine höhere Zuverlässigkeit und Sicherheit bietet als jene eines herkömmlichen Zentralverwaltungsbeglaubigungsservers.
  • Wenn die Mehrzahl der Geräte, die gemeinsam verwendete Beglaubigungsserver sind und zuverlässig sind, kann folgendes geschaffen werden.
  • Durch gemeinsame Verwendung des Beglaubigungsprotokolls wird dieselbe Beglaubigungsfunktion wie diejenige des Beglaubigungsprotokolls realisiert, das eine herkömmliche Zentralverwaltung für einen Prüfer und einen Beglaubiger bereitstellt, sowie eine hohe Fehlertoleranz.
  • Da die Online-Verarbeitung des gemeinsam verwendeten Beglaubigungsprotokolls für Prüfer und Beglaubiger dieselbe Schnittstelle (Datenformat) wie die des herkömmlichen Beglaubigungsprotokolls garantiert, kann in diesem Ausführungsbeispiel ein herkömmlicher Beglaubigungsserver leicht durch den Beglaubigungsserver ersetzt werden.
  • Für Prüfer und Beglaubiger kann die Online-Verarbeitung des gemeinsam verwendeten Beglaubigungsprotokolls mit demselben Berechnungsumfang bereitgestellt werden, wie er für ein herkömmliches Berechtigungsprotokoll erforderlich ist.
  • Obwohl die vorliegende Erfindung in ihrer bevorzugten Form mit einem gewissen Grad an Eigentümlichkeit beschrieben worden ist, können viele weitestgehend unterschiedliche Ausführungsbeispiele der Erfindung erstellt werden, ohne vom Umfang der Erfindung abzuweichen. Es versteht sich, daß die Erfindung nicht auf die speziellen Ausführungsbeispiele beschränkt ist, mit Ausnahme der Definition in den anliegenden Patentansprüchen.

Claims (29)

  1. Verfahren zur Geheiminformationsverarbeitung für ein Kommunikationssystem, bei dem eine Vielzahl von Informationsverarbeitungsgeräten (11) durch geheime Übertragungskanäle (13) verbunden sind, über die Information zwischen ausgewählten Geräten austauschbar ist, während die Information von den restlichen Geräten geheim gehalten bleibt, und durch Übertragungskanäle (12), über die die Geräte normalerweise mit allen anderen vorhandenen Geräten Information untereinander austauschen, mit den Verfahrensschritten: Verwenden eines ersten Gerätes zum Erzeugen geheimer Information einer Geheimanordnung für eine ausgewählte Anzahl zweiter Geräte zum Auslesen erster Informationssegmente aus der geheimen Anordnung und Senden der ersten Informationssegmente über die geheimen Übertragungskanäle an die zweiten Geräte, um eine vorbestimmte Funktion bezüglich eines Teils der Geheimanordnung auszuführen und einen erzielten Ausgabewert über die Sendeübertragungskanäle als Ergebnis der Funktion zu verbreiten; Erzeugen von Zufallszahlen unter Verwendung der zweiten Geräte und Senden der Zufallszahlen über die Sendeübertragungskanäle; Verwenden des ersten Gerätes zum Erzeugen zweiter Informationssegmente für die zweiten Geräte und Senden der zweiten Informationssegmente in Übereinstimmung mit den Sendezufallszahlen über die Sendeübertragungskanäle; Erzeugen bei Verwenden der zweiten Geräte dritter Informationssegmente, die als die zweiten Informationssegmente für die zweiten Geräte unter Verwendung des ersten Gerätes erzeugt werden, das in Übereinstimmung mit den empfangenen ersten Informationssegmenten ist, und den Zufallszahlen, die die zweiten Geräte erzeugt haben; und Verwenden des zweiten Gerätes zum Vergleich der dritten Informationssegmente mit den zweiten Sendeinformatianssegmenten und einen Verifikationsschritt zum Bestätigen, daß die Geheiminformation mit dem ersten Gerät gemeinsam verwendet wird.
  2. Verfahren nach Anspruch 1, bei dem das zweite Gerät im Verifikationsschritt eine Meldung über die Sendeübertragungskanäle sendet, wenn die Ergebnisse des Vergleichs nicht passen, und Bestätigen auf der Grundlage der Summe der gesendeten Meldung.
  3. Verfahren nach Anspruch 1 oder 2, mit dem weiteren Verfahrensschritt des Verschlüsselns der Geheiminformation durch alle der zweiten Geräte auf der Grundlage des an die zweiten Geräte gesendeten ersten Informationssegments.
  4. Verfahren nach Anspruch 3, bei dem im Verschlüsselungsgerät die zweiten Geräte individuelle Berechnungen auf der Grundlage des empfangenen ersten Informationssegments und eine Entschlüsselung auf der Grundlage des Vergleichsergebnisses ausführen.
  5. Verfahren nach einem der vorstehenden Ansprüche, bei dem die Geheimanordnung eine Matrix ist, die für die Geheiminformation bestimmt ist und zufällig Geheimelemente auswählt, und bei dem ein Zeilenvektor und ein Spaltenvektor der Matrix als das erste Informationssegment festgelegt sind.
  6. Verfahren nach einem der vorstehenden Ansprüche, bei dem die vorbestimmte Funktion eine Einwegfunktion ist.
  7. Verfahren nach einem der vorstehenden Ansprüche, bei dem die Geheiminformation ein Element einer finiten Menge ist und die Berechnung des Elements in der finiten Menge im Erzeugungsschritt erfolgt.
  8. Verfahren nach Anspruch 1, mit den Verfahrensschritten: Erzeugen einer Signatur durch zufälliges Auswählen erster Geheiminformation unter Verwendung eines jeden zur Gruppe der Unterzeichner gehörenden Gerätes und geheimes gemeinsames Verwenden der ersten Geheiminformation mit den Geräten in der Gruppe unter Verwendung des Verfahrens zur Geheiminformationsverarbeitung; Ausführen einer vorbestimmten ersten Funktion bezüglich der ersten Geheiminformation durch Verwenden der Geräte und Senden der erzielten Werte an alle Geräte in der Unterzeichnergruppe; gemeinsames Verwenden der ersten Geheiminformation aus jedem der Geräte unter den Geräten in der Gruppe der Unterzeichner und Hinzufügen der ersten Geheiminformation; gemeinsames Verwenden der Ausgangswerte unter den Geräten in der Gruppe zur Vervielfältigung und Ausführen einer vorbestimmten zweiten Funktion bezüglich des Ergebnisses, das die Multiplikation und eine Meldung ergibt; gemeinsames Verwenden der zweiten Geheiminformation unter den Geräten in der Gruppe und Berechnen der zweiten Geheiminformation durch Verwenden eines durch Ausführen der zweiten Funktion gewonnenen Ergebnisses, eines durch gemeinsames Verwenden und Hinzufügen gewonnenen Ergebnisses sowie eines öffentlich werdenden Elements; und Verschlüsseln durch gemeinsames Bemühen unter Verwendung aller Geräte in der Gruppe, der zweiten gemeinsam verwendeten Geheiminformation und Ausgeben der verschlüsselten zweiten Geheiminformation als Signatur zusammen mit dem durch gemeinsames Verwenden und Vervielfältigen gewonnen Ergebnisses.
  9. Verfahren nach Anspruch 8, bei dem im Schritt des Berechnens eine Linearkombinationsverarbeitung für die zweite Geheiminformation erfolgt.
  10. Verfahren nach Anspruch 8, bei dem im Schritt des Berechnens eine Kombinationsverarbeitung unter Verwendung eines Produkts erfolgt, das Exponentialmultiplikation der zweiten Geheiminformation einrechnet.
  11. Verfahren nach Anspruch 8, bei dem der Berechnungsschritt die Linearkombinationsverarbeitung und Multiplikation der zweiten Geheiminformation durchführt.
  12. Verfahren nach Anspruch 8, bei dem die zweite Information eine Einweginformation ist.
  13. Verfahren nach Anspruch 8, bei dem die erste Geheiminformation ein Element in einer finiten Menge ist und eine Addition der finiten Menge im Additionsschritt erfolgt.
  14. Verfahren nach Anspruch 1, das eine Geheimmeldung authentisiert, mit den Verfahrensschritten: Ausführen einer geheimen gemeinsamen Verarbeitung unter Verwendung des Geheiminformationsverarbeitungsverfahren zur gemeinsamen Verwendung und Verteilen eines Geheimschlüssels, der sich auf jedes Gerät des Übertragungssystems für die Geräte einer speziellen Gerätegruppe bezieht, die gemeinsam die Authentisierung bereitstellen; Senden einer Authentisierungsanforderungsmeldung, die Kennungen für eine Überprüfeinrichtung und für eine Authentisiereinrichtung aus dem Gerät der Überprüfeinrichtung enthält, der eine Anforderung zur Authentisierung aus dem Gerät der Authentisiereinrichtung an jedes der Geräte der speziellen Gruppe sendet; Erzeugen eines Authentisierungselements, das mit einem Geheimschlüssel verschlüsselt ist, der sich auf die Authentisiereinrichtung bezieht, der auf der Authentisierungsanforderungsmeldung durch Anwenden einer gemeinsamen Anstrengung basiert, die alle die Geräte einschließt, die zur speziellen Gruppe gehören, und Erzeugen einer Authentisierungsmeldung durch Verschlüsseln des Authentisierungselements mit einem auf die Überprüfeinrichtung bezogenen Geheimschlüssel; Senden der Authentisierungsmeldung aus jedem der Geräte der speziellen Gruppe an das Gerät der Überprüfeinrichtung; Verschlüsseln der Authentisierungsmeldung und des Gerätes von der Überprüfeinrichtung nach Empfang der Authentisierungsmeldung und Senden des entschlüsselten Authentisierungselements an das Gerät der Authentisiereinrichtung; und Verschlüsseln des Authentisierungselements beim Gerät der Authentisiereinrichtung und Senden der Authentisierung an die Überprüfeinrichtung.
  15. Verfahren nach Anspruch 14, mit dem weiteren Verfahrensschritt des kooperativen Sendens eines gemeinsamen Schlüssels zur verschlüsselten Übertragung zwischen den beiden Geräten aus den Geräten in der speziellen Gruppe an die Geräte der Überprüf- und der Authentisiereinrichtung.
  16. Verfahren nach Anspruch 14 oder 15, bei dem der Schritt des Sendens der Authentisierungsmeldung einen gemeinsamen Schlüssel für die verschlüsselte Übertragung zwischen den Geräten der Überprüfeinrichtung von der Authentisiereinrichtung und demjenigen verwendet, der in der Authentisierungsmeldung an das Gerät der Überprüfeinrichtung gesendet wird.
  17. Verfahren nach Anspruch 14 oder 15, bei dem der Schritt des Sendens vom Authentisierungselement einen gemeinsamen Schlüssel an das Gerät der Authentisiereinrichtung zur verschlüsselten Übertragung zwischen den Geräten der Überprüfeinrichtung von der Authentisiereinrichtung verwendet, und dem in der in der Authentisierungsmeldung enthaltenen Schlüssel.
  18. Verfahren nach einem der Ansprüche 14 bis 17, mit dem weiteren Verfahrensschritt des Anwendens verifizierbarer gemeinsamer Geheimverarbeitung und kooperatives Erzeugen als gemeinsam verwendetes Pseudozufallsgeheimnis durch die Geräte der speziellen Gruppe eines gemeinsamen Schlüssels, der der verschlüsselten Übertragung zwischen den Geräten der Überprüfeinrichtung und der Authentisiereinrichtung dient.
  19. Verfahren nach einem der Ansprüche 14 bis 18, bei dem der Verfahrensschritt des Erzeugens das Verschlüsseln mit einem Geheimschlüssel durch gemeinsames Datenverwenden durch Verschlüsselung in eine Vielzahl von Blöcken ausführt und durch Hinzufügen unterschiedlicher Geheimschlüssel zu den Blöcken in einer vorbestimmten finiten Menge.
  20. Verfahren nach einem der Ansprüche 14 bis 18, bei dem im Verfahrensschritt des Erzeugens das Verschlüsseln mit einem Geheimschlüssel durch Unterteilen der zu verschlüsselnden Daten in eine Vielzahl von Blöcken, durch Multiplizieren verschiedener Geheimschlüssel mit den Blöcken in einer vorbestimmten finiten Menge und weiterhin durch Addieren unterschiedlicher Geheimschlüssel für die Multiplikationsergebnisse erfolgt.
  21. Verfahren nach einem der Ansprüche 14 bis 20, bei dem der Verfahrensschritt des Erzeugens das Authentisierungselement mit einer Zeitmarkierung unter Verwendung eines gemeinsamen Schlüssels verschlüsselt, der den Einrichtungen der Überprüfeinrichtung und der Authentisiereinrichtung dient, Senden des Ergebnisses, wobei im Authentisierungsschritt die Einrichtung der Authentisiereinrichtung die aus der Einrichtung der Überprüfeinrichtung empfangene Information unter Verwendung des gemeinsamen Schlüssels entschlüsselt und die Zeitmarkierung bestätigt.
  22. Kommunikationssystem mit einer Vielzahl von Informationsverarbeitungseinrichtungen (11), die untereinander über Geheimübertragungskanäle (13) verbunden sind, über die jede der Einrichtungen Informationen mit einer ausgewählten oder einer anderen Einrichtung des Systems geheim austauschen kann, während das Informationsgeheimnis vor den restlichen Einrichtungen gewahrt bleibt, und über Sendeübertragungskanäle (12), die die Einrichtungen untereinander verbinden, über die jede der Einrichtungen gemeinsam Informationen an alle anderen Einrichtungen sendet, dadurch gekennzeichnet, daß eine erste Informationsverarbeitungseinrichtung der Vielzahl von Informationsverarbeitungseinrichtungen ausgestattet ist mit: einem ersten Erzeugungsmittel zum Erzeugen einer vorbestimmten Partialanordnung aus der Geheiminformation; einem Auslesemittel, das aus der Partialanordnung erste Informationssegmente für restliche Informationsverarbeitungseinrichtungen ausliest und das die ersten Informationssegmente an die restliche Informationsverarbeitungseinrichtungen sendet; einem Funktionsverarbeitungsmittel zum Ausführen einer vorbestimmten Funktion bezüglich der ersten Informationssegmente und zum Senden von so gewonnenen Ausgabewerten über die Sendeübertragungskanäle an die restlichen Informationsverarbeitungseinrichtungen; und mit einem zweiten Erzeugungsmittel zum Erzeugen eines zweiten Informationssegments, das in Übereinstimmung mit Zufallszahlen ist, die die restlichen Informationsverarbeitungseinrichtungen gesendet haben, und zum Senden des zweiten Informationssegments über die Sendeübertragungskanäle; und dadurch, daß die restlichen Informationsverarbeitungseinrichtungen ausgestattet sind mit: einem Zufallszahlenerzeugungsmittel, das eine Zufallszahl zum Senden dieser über die Sendeübertragungskanäle erzeugt, einem dritten Erzeugungsmittel zum Erzeugen eines dritten Informationssegments in Übereinstimmung mit dem ersten Informationssegment und der Zufallszahl, das als zweites Informationssegment von der ersten Informationsverarbeitungseinrichtung zu erzeugen ist, und mit einem Bestätigungsmittel, das das dritte Informationssegment mit dem zweiten gesendeten Informationssegment vergleicht und das gemeinsame Verwenden eines Geheimnisses bestätigt, das die erste Informationsverarbeitungseinrichtung ausführt.
  23. System nach Anspruch 22, dessen Informationsverarbeitungseinrichtungen über Meldesendemittel zum Senden einer Meldung über die Sendeübertragungskanäle verfügt, wenn das Ergebnis des Vergleichs unpassend ist, wobei das Bestätigungsmittel die Bestätigung auf der Grundlage der Gesamtzahl an Sendemeldungen durchführt.
  24. System nach Anspruch 22 oder 23, bei dem die Informationsverarbeitungseinrichtung über ein Verschlüsselungsmittel verfügt, um die Geheiminformation unter Verwendung aller der Informationsverarbeitungseinrichtungen auf der Grundlage des gesendeten ersten Informationssegments zu verschlüsseln.
  25. System nach Anspruch 24, bei dem die Informationsverarbeitungseinrichtung ein Rechenmittel hat, um eine Berechnung auf der Grundlage des gesendeten ersten Informationssegments auszuführen, wobei das Verschlüsselungsmittel die Geheiminformation auf der Grundlage des Rechenergebnisses verschlüsselt.
  26. System nach einem der Ansprüche 22 bis 25, bei dem die Partialanordnung eine Partialmatrix ist, die für die Geheiminformation und zufällig ausgewählte Geheimelemente bestimmt ist, und bei dem ein Zeilenvektor und ein Spaltenvektor der Partialmatrix Geheimabschnitte für entsprechende Geheimnisse sind, und bei dem Elemente des Zeilenvektors und des Spaltenvektors Geheimabschnitte der Zeilen- und Spaltenvektoren sind.
  27. System nach einem der Ansprüche 22 bis 26, bei dem die vorbestimmte Funktion eine Einwegfunktion ist.
  28. System nach einem der Ansprüche 22 bis 27, bei dem die Geheiminformation ein Element in einer finiten Menge ist, und wobei das Erzeugungsmittel eingerichtet ist, die Berechnung in der finiten Menge auszuführen.
  29. System nach einem der Ansprüche 22 bis 27, bei dem unter der Vielzahl von Einrichtungen eine jede einer Unterzeichnergruppe angehört, mit: einem Mittel zur gemeinsamen Benutzung, um eine erste Geheiminformation zufällig auszuwählen und um die erste Geheiminformation unter den Einrichtungen der Gruppe gemeinsam zu benutzen; einem Sendemittel zum Ausführen einer vorbestimmten ersten Funktion bezüglich der ersten Geheiminformation und zum Senden eines erzielten Wertes für alle restlichen Einrichtungen der Gruppe; einem Addiermittel zur gemeinsamen Verwendung der Geheiminformation, die von allen Einrichtungen unter den Einrichtungen der Gruppe gehalten und der ersten Geheiminformation hinzugefügt wird; einem Verarbeitungsmittel zur gemeinsamen Verwendung des von jeder der Einrichtungen unter den Einrichtungen der Gruppe gehaltenen Ausgabewertes und zum Multiplizieren des Ausgabewertes und zum Ausführen einer vorbestimmten zweiten Funktion bezüglich eines durch Multiplikation mit einer Mitteilung erzielten Ergebnisses; einem Rechenmittel zur Verwendung des Multiplikationsergebnisses, eines Ergebnisses, das durch gemeinsame Benutzung und durch Addition erzielt wird, und einem Element, das publik gemacht wird, um mit der zweiten Information unter den Einrichtungen der Gruppe gemeinsam verwendet zu werden und die zweite Information zu berechnen; und mit einem Entschlüsselungsmittel, das die zweite Geheiminformation durch eine gemeinsame Anstrengung aller der Einrichtungen der Gruppe entschlüsselt, die die Geheiminformation gemeinsam benutzt, und zur Ausgabe einer entschlüsselten zweiten Geheiminformation als Signatur gemeinsam mit dem durch gemeinsames Benutzen und Multiplikation gewonnenen Ergebnis.
DE69534192T 1994-07-29 1995-07-26 Verfahren zur gemeinsamen Nutzung einer geheimen Information, zur Erzeugung einer digitalen Unterschrift und zur Ausführung einer Beglaubigung in einem Kommunikationssystem mit mehreren Informationsverarbeitungseinrichtungen und Kommunikationssystem zur Anwendung dieses Verfahrens Expired - Lifetime DE69534192T2 (de)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP17848394A JP3604737B2 (ja) 1994-07-29 1994-07-29 複数の情報処理装置を有する通信システムにおける秘密情報処理方法及びその通信システム
JP17848394 1994-07-29
JP818595 1995-01-23
JP7008185A JPH08204697A (ja) 1995-01-23 1995-01-23 複数の装置を有する通信システムにおける署名生成方法
JP00818495A JP3610106B2 (ja) 1995-01-23 1995-01-23 複数の装置を有する通信システムにおける認証方法
JP818495 1995-01-23

Publications (2)

Publication Number Publication Date
DE69534192D1 DE69534192D1 (de) 2005-06-16
DE69534192T2 true DE69534192T2 (de) 2006-02-16

Family

ID=27277924

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69534192T Expired - Lifetime DE69534192T2 (de) 1994-07-29 1995-07-26 Verfahren zur gemeinsamen Nutzung einer geheimen Information, zur Erzeugung einer digitalen Unterschrift und zur Ausführung einer Beglaubigung in einem Kommunikationssystem mit mehreren Informationsverarbeitungseinrichtungen und Kommunikationssystem zur Anwendung dieses Verfahrens

Country Status (7)

Country Link
US (1) US5708714A (de)
EP (1) EP0695056B1 (de)
KR (1) KR0148300B1 (de)
AT (1) ATE295644T1 (de)
CA (1) CA2154970C (de)
DE (1) DE69534192T2 (de)
HK (1) HK1011809A1 (de)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6005938A (en) * 1996-12-16 1999-12-21 Scientific-Atlanta, Inc. Preventing replay attacks on digital information distributed by network service providers
US6055518A (en) * 1996-02-01 2000-04-25 At&T Corporation Secure auction systems
US6671675B2 (en) * 1996-02-27 2003-12-30 Canon Kabushiki Kaisha Metering the flow of electronic information
US6226383B1 (en) * 1996-04-17 2001-05-01 Integrity Sciences, Inc. Cryptographic methods for remote authentication
US6041408A (en) * 1996-06-28 2000-03-21 Hitachi, Ltd. Key distribution method and system in secure broadcast communication
JP3526524B2 (ja) * 1996-10-31 2004-05-17 松下電器産業株式会社 一方向データ変換装置及び機器認証システム
US5956402A (en) * 1997-03-07 1999-09-21 At&T Corp. Passwordless secure and efficient remote data update
US5953424A (en) * 1997-03-18 1999-09-14 Hitachi Data Systems Corporation Cryptographic system and protocol for establishing secure authenticated remote access
US6035041A (en) * 1997-04-28 2000-03-07 Certco, Inc. Optimal-resilience, proactive, public-key cryptographic system and method
US6246771B1 (en) * 1997-11-26 2001-06-12 V-One Corporation Session key recovery system and method
JPH11225138A (ja) * 1998-02-06 1999-08-17 Matsushita Electric Ind Co Ltd 暗号処理装置、暗号処理方法及びその方法を記録した記録媒体
US20050049082A1 (en) * 1998-03-18 2005-03-03 Callaway Golf Company Golf ball
RU2153191C2 (ru) 1998-09-29 2000-07-20 Закрытое акционерное общество "Алкорсофт" Способ изготовления вслепую цифровой rsa-подписи и устройство для его реализации (варианты)
AU6278299A (en) * 1998-10-01 2000-04-17 University Of Maryland Distributed shared key generation and management using fractional keys
RU2157001C2 (ru) 1998-11-25 2000-09-27 Закрытое акционерное общество "Алкорсофт" Способ проведения платежей (варианты)
KR100545608B1 (ko) * 1999-03-25 2006-01-25 유티스타콤코리아 유한회사 병렬 분산구조를 갖는 데이터 획득 시스템
TW518497B (en) * 1999-03-30 2003-01-21 Sony Corp Information processing system
WO2001015162A2 (en) * 1999-08-13 2001-03-01 Microsoft Corporation Methods and systems of protecting digital content
US6886098B1 (en) * 1999-08-13 2005-04-26 Microsoft Corporation Systems and methods for compression of key sets having multiple keys
US7065216B1 (en) 1999-08-13 2006-06-20 Microsoft Corporation Methods and systems of protecting digital content
US20020078358A1 (en) * 1999-08-16 2002-06-20 Neff C. Andrew Electronic voting system
US6920221B1 (en) 1999-08-29 2005-07-19 Intel Corporation Method and apparatus for protected exchange of status and secret values between a video source application and a video hardware interface
US7237116B1 (en) 2000-01-19 2007-06-26 International Business Machines Corporation Digital signature system and method based on hard lattice problem
US7099471B2 (en) * 2000-03-24 2006-08-29 Dategrity Corporation Detecting compromised ballots
US20060085647A1 (en) * 2000-03-24 2006-04-20 Neff C A Detecting compromised ballots
US20030028423A1 (en) * 2000-03-24 2003-02-06 Neff C. Andrew Detecting compromised ballots
US6950948B2 (en) * 2000-03-24 2005-09-27 Votehere, Inc. Verifiable, secret shuffles of encrypted data, such as elgamal encrypted data for secure multi-authority elections
US7389250B2 (en) 2000-03-24 2008-06-17 Demoxi, Inc. Coercion-free voting scheme
JP2002190945A (ja) * 2000-10-12 2002-07-05 Canon Inc 情報処理装置及びその制御方法及び記憶媒体
CN1513241A (zh) * 2001-02-20 2004-07-14 沃特黑尔公司 检测危害投票
JP3659178B2 (ja) * 2001-02-22 2005-06-15 日本電信電話株式会社 分散ディジタル署名作成方法及び装置及び分散ディジタル署名付ディジタル文書作成方法及び装置及び分散ディジタル署名作成プログラム及び分散ディジタル署名作成プログラムを格納した記憶媒体
JP4235453B2 (ja) * 2001-03-24 2009-03-11 ヴォートヒア インコーポレイテッド 検証可能な秘密のシャッフルおよびそれらの電子投票への応用
CN1310462C (zh) * 2001-03-29 2007-04-11 松下电器产业株式会社 通过对数据加密来保护数据的数据保护系统
EP1386215B1 (de) * 2001-04-27 2006-10-11 Betrusted Ireland Limtited System und Verfahren zum Verabreiten eines gemeinsamen Geheimnisses
FR2825877B1 (fr) * 2001-06-12 2003-09-19 Canal Plus Technologies Procede de controle d'acces a un programme crypte
US7287156B2 (en) * 2001-06-29 2007-10-23 International Business Machines Corporation Methods, systems and computer program products for authentication between clients and servers using differing authentication protocols
CN1207867C (zh) * 2001-09-28 2005-06-22 中国科学院研究生院 一种安全的数字签名系统及其数字签名方法
JP3997085B2 (ja) * 2001-12-28 2007-10-24 キヤノン株式会社 画像生成装置
US7349538B2 (en) * 2002-03-21 2008-03-25 Ntt Docomo Inc. Hierarchical identity-based encryption and signature schemes
US7979712B2 (en) * 2002-07-01 2011-07-12 International Business Machines Corporation Network system, server and information terminal for list matching
KR100936606B1 (ko) * 2002-10-02 2010-01-13 엘지전자 주식회사 냉장고의 메탈 플레이트 제조 방법
JP2005140823A (ja) * 2003-11-04 2005-06-02 Sony Corp 情報処理装置、制御方法、プログラム、並びに記録媒体
US7698557B2 (en) * 2003-12-22 2010-04-13 Guardtime As System and method for generating a digital certificate
CN100393034C (zh) * 2004-04-30 2008-06-04 北京航空航天大学 一种应用于组播通信系统中的源认证方法
JP4748774B2 (ja) * 2004-06-02 2011-08-17 キヤノン株式会社 暗号化通信方式及びシステム
US20050273609A1 (en) * 2004-06-04 2005-12-08 Nokia Corporation Setting up a short-range wireless data transmission connection between devices
US20050269406A1 (en) * 2004-06-07 2005-12-08 Neff C A Cryptographic systems and methods, including practical high certainty intent verification, such as for encrypted votes in an electronic election
US8151348B1 (en) * 2004-06-30 2012-04-03 Cisco Technology, Inc. Automatic detection of reverse tunnels
US7512237B1 (en) 2004-10-26 2009-03-31 Lockheed Martin Corporation Encryption for optical communications using dynamic subcarrier multiplexing
US7536016B2 (en) * 2004-12-17 2009-05-19 Microsoft Corporation Encrypted content data structure package and generation thereof
WO2006124289A2 (en) * 2005-05-13 2006-11-23 Temple University - Of The Commonwealth System Of Higher Education Secret sharing technique with low overhead information content
US20070143216A1 (en) * 2005-12-16 2007-06-21 Benaloh Josh D Data Signal with a Database and a Compressed Key
US8996586B2 (en) * 2006-02-16 2015-03-31 Callplex, Inc. Virtual storage of portable media files
US10303783B2 (en) * 2006-02-16 2019-05-28 Callplex, Inc. Distributed virtual storage of portable media files
JP4304215B2 (ja) * 2007-03-23 2009-07-29 株式会社東芝 秘密分散装置、方法及びプログラム
JP4334582B2 (ja) * 2007-06-26 2009-09-30 株式会社東芝 秘密分散装置、方法及びプログラム
US8151333B2 (en) * 2008-11-24 2012-04-03 Microsoft Corporation Distributed single sign on technologies including privacy protection and proactive updating
US9124423B2 (en) * 2010-05-14 2015-09-01 International Business Machines Corporation Iterative data secret-sharing transformation
KR101456579B1 (ko) * 2010-07-23 2014-10-31 니폰 덴신 덴와 가부시끼가이샤 비밀 분산 시스템, 분산 장치, 분산 관리 장치, 취득 장치, 비밀 분산 방법, 프로그램, 및 기록 매체
US8914635B2 (en) * 2011-07-25 2014-12-16 Grey Heron Technologies, Llc Method and system for establishing secure communications using composite key cryptography
US9092780B2 (en) * 2012-02-13 2015-07-28 PivotCloud, Inc. User-mediator monitoring and controlling access to electronic content
EP3021518B1 (de) * 2013-08-22 2018-04-18 Nippon Telegraph And Telephone Corporation Sicheres mehrteilnehmer-authentifizierungssystem, authentifizierungsserver, zwischenserver, sicheres mehrteilnehmer-authentifizierungsverfahren und programm
US10333696B2 (en) 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency
US10505723B1 (en) 2017-04-26 2019-12-10 Wells Fargo Bank, N.A. Secret sharing information management and security system
US11683168B2 (en) 2018-08-03 2023-06-20 Istanbul Teknik Universites! Systems and methods for generating shared keys, identity authentication and data transmission based on simultaneous transmission on wireless multiple-access channels
CN110321735B (zh) * 2019-04-29 2021-04-13 山东工商学院 基于零知识证明的业务办理方法、系统及存储介质
WO2020227403A1 (en) * 2019-05-08 2020-11-12 Icu Medical, Inc. Threshold signature based medical device management
EP3767511B1 (de) * 2019-07-19 2021-08-25 Siemens Healthcare GmbH Sichere durchführung von parameterdatenaktualisierungen
CN116506232B (zh) * 2023-06-28 2023-10-10 南京畅洋科技有限公司 基于信道编码的大容量物联网隐蔽信道构建方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE193606T1 (de) * 1991-03-05 2000-06-15 Canon Kk Rechengerät und verfahren zum verschlüsseln/entschlüsseln von kommunikationsdaten unter verwendung desselben
US5276737B1 (en) * 1992-04-20 1995-09-12 Silvio Micali Fair cryptosystems and methods of use
IL102394A (en) * 1992-07-02 1996-08-04 Lannet Data Communications Ltd Method and apparatus for secure data transmission
US5469507A (en) * 1994-03-01 1995-11-21 International Business Machines Corporation Secure communication and computation in an insecure environment
US5553145A (en) * 1995-03-21 1996-09-03 Micali; Silvia Simultaneous electronic transactions with visible trusted parties

Also Published As

Publication number Publication date
EP0695056B1 (de) 2005-05-11
US5708714A (en) 1998-01-13
KR960006385A (ko) 1996-02-23
DE69534192D1 (de) 2005-06-16
HK1011809A1 (en) 1999-07-16
CA2154970A1 (en) 1996-01-30
ATE295644T1 (de) 2005-05-15
KR0148300B1 (ko) 1998-08-17
EP0695056A2 (de) 1996-01-31
EP0695056A3 (de) 1997-05-21
CA2154970C (en) 1999-07-27

Similar Documents

Publication Publication Date Title
DE69534192T2 (de) Verfahren zur gemeinsamen Nutzung einer geheimen Information, zur Erzeugung einer digitalen Unterschrift und zur Ausführung einer Beglaubigung in einem Kommunikationssystem mit mehreren Informationsverarbeitungseinrichtungen und Kommunikationssystem zur Anwendung dieses Verfahrens
DE69133502T2 (de) Geheimübertragungsverfahren und -gerät
DE69725659T2 (de) Verfahren und Einrichtung zur Ablage eines in einem RSA-Kryptosystem benutzten Geheimschlüssels
DE69233613T2 (de) Kryptographisches Protokoll zur gesicherten Kommunikation
DE69633590T2 (de) Verfahren zur Unterschrift und zur Sitzungsschlüsselerzeugung
DE602004004029T2 (de) Verfahren zur Verteilung von Konferenzschlüsseln, gemäss einem identitätsbasierten Verschlüsselungssystem
EP1793525B1 (de) Verfahren zum Ändern eines Gruppenschlüssels in einer Gruppe von Netzelementen in einem Netz
DE602004001273T2 (de) Verfahren und Vorrichtung zur Identifiezierungsbasierten Verschlüsselung
DE69935469T2 (de) Verfahren zur schnellen Ausführung einer Entschlüsselung oder einer Authentifizierung
DE102012206341B4 (de) Gemeinsame Verschlüsselung von Daten
EP1125395B1 (de) Verfahren und anordnung zur authentifikation von einer ersten instanz und einer zweiten instanz
CH694601A5 (de) Verfahren zur Verifizierung der Echtheit von ausgetauschten Nachrichten.
DE69935455T2 (de) Kryptographisches verfahren unter verwendung eines öffentlichen und eines privaten schlüssels
DE102005024725A1 (de) System und Verfahren für Chaotische Digitale Signatur, Verschlüsselung und Authentifizierung
US11451369B2 (en) Method and system for multi-authority controlled functional encryption
DE112012000971B4 (de) Datenverschlüsselung
DE102016210786A1 (de) Komponente zur Anbindung an einen Datenbus und Verfahren zur Umsetzung einer kryptografischen Funktionalität in einer solchen Komponente
DE60207691T2 (de) Verfahren zur prüfbaren teilung eines geheimnisses in potentiell asynchronen netzwerken
DE19622630C1 (de) Verfahren zum gruppenbasierten kryptographischen Schlüsselmanagement zwischen einer ersten Computereinheit und Gruppencomputereinheiten
EP2929648A1 (de) Verfahren zum aufbau einer sicheren verbindung zwischen clients
DE60133140T2 (de) System und verfahren für symmetrische kryptographie
EP3050244B1 (de) Bereitstellung und verwendung pseudonymer schlüssel bei hybrider verschlüsselung
DE60021985T2 (de) Verfahren ind vorrichtung zur sicheren erzeugung von öffentlichen/geheimen schlüsselpaaren
EP1208669B1 (de) Verfahren zum etablieren eines gemeinsamen schlüssels für eine gruppe von mindestens drei teilnehmern
EP1119941B1 (de) Verfahren zum etablieren eines gemeinsamen schlüssels zwischen einer zentrale und einer gruppe von teilnehmern

Legal Events

Date Code Title Description
8364 No opposition during term of opposition