DE112009005209T5 - Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geomnetrie - Google Patents

Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geomnetrie Download PDF

Info

Publication number
DE112009005209T5
DE112009005209T5 DE112009005209T DE112009005209T DE112009005209T5 DE 112009005209 T5 DE112009005209 T5 DE 112009005209T5 DE 112009005209 T DE112009005209 T DE 112009005209T DE 112009005209 T DE112009005209 T DE 112009005209T DE 112009005209 T5 DE112009005209 T5 DE 112009005209T5
Authority
DE
Germany
Prior art keywords
group
vector
controller
private
members
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.)
Withdrawn
Application number
DE112009005209T
Other languages
English (en)
Inventor
Guangdong Yang
Shaohua Tang
Jintai Ding
Yujun Liang
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.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Publication of DE112009005209T5 publication Critical patent/DE112009005209T5/de
Withdrawn legal-status Critical Current

Links

Images

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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Abstract

Es wird ein Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie offenbart. Der Zug Gruppencontroller wählt eine Abbildung f und ein endliches Feld F aus; jedes Gruppenmitglied wählt einen m-dimensionalen privaten Vektor über das endliche Feld F aus und sendet ihn über einen sicheren Kanal an den Gruppencontroller; Schritt 2: der Gruppencontroller wählt einen Abbildungsparameter in dem endlichen Feld F zufällig aus und bildet die privaten Vektoren aller Gruppenmitglieder unter Verwendung der Abbildung f in Übereinstimmung mit dem Abbildungsparameter auf eine neue Menge von Vektoren ab; Schritt 3: der Gruppencontroller wählt eine Zufallszahl k in dem endlichen Feld F als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem; der Gruppencontroller berechnet den zentralen Vektor und sendet den zentralen Vektor und den Abbildungsparameter über einen offenen Kanal an alle Gruppenmitglieder; Schritt 4: nachdem die Gruppenmitglieder den zentralen Vektor und den Abbildungsparameter empfangen haben, wird der private Vektor jedes Gruppenmitglieds in Übereinstimmung mit dem Abbildungsparameter auf einen neuen Vektor in einem Vektorraum abgebildet, wobei der Gruppenschlüssel durch Berechnen des inneren Produkts des neuen Vektors und des zentralen Vektors erhalten wird. Die Erfindung erfordert einen kleinen Speicher und wenig Berechnung, weist die Eigenschaft einer hohen Sicherheit auf und ist wirksam gegen Brechstangenangriffe.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich auf das Gebiet des Gruppenschlüsselmanagements in der Netzsicherheitstechnologie und insbesondere auf einen Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie.
  • HINTERGRUND DER ERFINDUNG
  • Mit der schnellen Entwicklung der Internettechnologie und der Popularisierung der Sammelsendung spielen gruppenorientierte Anwendungen wie etwa Videokonferenz, Netzspiele und Video an Demand usw. immer wichtigere Rollen. Es ist ein entscheidendes Problem, wie die Kommunikationssicherheit dieser Anwendungen zu schützen ist. Ein sicheres Gruppenkommunikationssystem sollte nicht nur Datenvertraulichkeit, Nutzerauthentisierung und Informationsintegrität, sondern auch gute Skalierbarkeit sicherstellen. Für ein sicheres Gruppenkommunikationssystem ist ein sicherer, effizienter und robuster Gruppenschlüsselmanagementzugang wesentlich.
  • Beim Schlüsselmanagement der sicheren Gruppenkommunikation gibt es heutzutage verschiedene Zugänge. Die typischen Schemata sind z. B. Group Key Management Protocol (GKMP), Secure Lock (SL), Logical Key Hierarchie (LKH) usw.
  • Das Group Key Management Protocol (GKMP) ist ein Schema, das direkt von der Punkt-zu-Punkt-auf die Sammelsendungskommunikation erweitert. In diesem Schema wird angenommen, dass es zwischen dem Gruppencontroller (GC) und jedem Gruppenmitglied einen sicheren Kanal gibt. Der GC wählt anfangs einen Gruppenschlüssel K0 aus und verteilt diesen Schlüssel über den sicheren Kanal an alle Gruppenmitglieder. Wenn ein neues Mitglied beitritt, wählt der GC einen neuen Gruppenschlüssel KN aus und verschlüsselt den neuen Gruppenschlüssel mit dem alten Gruppenschlüssel, um
    Figure 00010001
    zu erhalten, und rundsendet daraufhin K' an die gesamte Gruppe. Darüber hinaus sendet der GC den KN über den sicheren Kanal zwischen dem GC und dem neuen Mitglied an das beitretende neue Mitglied. Offensichtlich ist dieses Schema nicht skalierbar, und es gibt keine Lösung, die die künftige Geheimhaltungseigenschaft erhält, wenn ein Mitglied die Gruppe verlässt, außer eine vollständig neue Gruppe zu erzeugen, ohne dass sie dieses Mitglied enthält.
  • Das Secure-Lock-Schema (SL-Schema) nutzt den chinesischen Restsatz (CRT), um eine sichere Verriegelung zu konstruieren, um alle neu verschlüsselnden Nachrichten zu einer zu kombinieren, wenn der Gruppenschlüssel aktualisiert wird. Allerdings ist der CRT eine zeitaufwändige Operation. Das SL-Schema ist nur dann effizient, wenn die Anzahl der Nutzer in einer Gruppe klein ist, da die Zeit zum Berechnen der Verriegelung und die Länge der Verriegelung (und somit die Übertragungszeit) proportional zur Anzahl der Nutzer sind.
  • Das Logical-Key-Hierarchy-Schema (LKH-Schema) nimmt zum Organisieren von Schlüsseln eine Baumstruktur an. Der GC unterhält einen virtuellen Baum, und die Knoten in dem Baum werden Schlüsseln zugewiesen. Derjenige Schlüssel, den die Wurzel des Baums hält, ist der Gruppenschlüssel. Die internen Knoten des Baums halten Schlüsselverschlüsselungsschlüssel (KEK). Verschiedene Mitglieder besitzen Schlüssel von Astknoten. Jedem Mitglied werden die Schlüssel entlang des Wegs von seinem Ast zu der Wurzel zugewiesen. Wenn ein Mitglied der Gruppe beitritt oder sie verlässt, sollen der KEK des Stammknotens und alle von Knoten auf dem Weg zu der Wurzel gehaltenen KEKs geändert werden. Somit ist die Anzahl der Schlüssel, die für einen Beitritt oder für ein Verlassen geändert werden müssen, O(2·log2n), und die Anzahl der Verschlüsselungen ist O(2·log2n). Falls eine große Anzahl von Mitgliedern der Gruppe beitreten oder sie verlassen, nimmt der Organisationsaufwand für die Neuverschlüsselung proportional zur Anzahl geänderter Mitglieder zu. Außerdem gibt es einige weitere Schemata, die Baumstrukturen annehmen, z. B. OFT (One-way Function Tree), OFCT (One-way Function Chain Tree), Hierarchical a-ary Tree with Clustering, Efficient Large-Group Key usw. Diese Schemata sind ähnlich der LKH oder können als Verbesserungen der LKH angesehen werden.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist eine erste Aufgabe der vorliegenden Erfindung, einen Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie zu schaffen, der einen kleinen Speicher und wenig Berechnung erfordert und wirksam gegen Brechstangenangriffe ist.
  • Es ist eine zweite Aufgabe der vorliegenden Erfindung, einen weiteren Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie zu schaffen, der einen kleinen Speicher und wenig Berechnung erfordert, die Eigenschaft einer hohen Sicherheit aufweist und wirksam gegen Brechstangenangriffe ist.
  • Die erste Aufgabe der vorliegenden Erfindung wird durch die folgende technische Lösung gelöst:
    ein Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie, der die folgenden Schritte umfasst:
    Schritt 1: ein Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus (alle Berechnungen in der Gruppe werden über dem endlichen Feld ausgeführt); die Gruppe habe n Mitglieder, jedes Gruppenmitglied wählt einen m-dimensionalen privaten Vektor über das endliche Feld F aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; der Gruppencontroller weist jedem Mitglied eine laufende Nummer zu und sendet sie an es und empfangt den m-dimensionalen privaten Vektor jedes Mitglieds und hält ihn geheim; wobei m, n positive ganze Zahlen sind und 2 ≤ m ≤ n ist;
    Schritt 2: der Gruppencontroller wählt einen Abbildungsparameter in dem endlichen Feld F zufällig aus und bildet die privaten Vektoren aller Mitglieder über die Abbildung f in Übereinstimmung mit dem Abbildungsparameter in eine neue Menge von Vektoren ab; falls die Menge von Vektoren linear abhängig ist, wird der Abbildungsparameter neu ausgewählt, um eine erneute Abbildung auszuführen, andernfalls wird zu Schritt 1 zurückgekehrt, um zu ermöglichen, dass jedes Mitglied einen privaten Vektor neu auswählt, bis die neue Menge von Vektoren linear unabhängig ist;
    Schritt 3: der Gruppencontroller wählt in dem endlichen Feld F eine Zufallszahl als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem; der Gruppencontroller berechnet die eindeutige Lösung des linearen Gleichungssystems, die zentraler Vektor genannt wird, und der zentrale Vektor und der Abbildungsparameter werden durch den Gruppencontroller über den offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet;
    Schritt 4: nachdem die Gruppenmitglieder den zentralen Vektor und den Abbildungsparameter empfangen haben, wird der private Vektor jedes Gruppenmitglieds in Übereinstimmung mit dem Abbildungsparameter auf einen neuen Vektor in einem Vektorraum abgebildet und wird durch Berechnen des inneren Produkts des neuen Vektors und des zentralen Vektors der Gruppenschlüssel erhalten.
  • Vorzugsweise wird der Schritt 1 durch das Folgende implementiert:
    der Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus; jedes Mitglied wählt einen m-dimensionalen privaten Vektor über das endliche Feld F aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; wobei m eine positive ganze Zahl und 2 ≤ m ≤ n ist;
    der Gruppencontroller weist jedem Mitglied eine laufende Nummer ui zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor Vi = (vi,1, vi,2, ..., vi,m) jedes Mitglieds und hält ihn geheim, wobei i = 1, ..., n ist;
    der Schritt 2 wird durch das Folgende implementiert:
    der Gruppencontroller wählt einen Abbildungsparameter r in dem endlichen Feld F zufällig aus und bildet die privaten Vektoren Vi = (vi,1, vi,2, ..., vi,m) aller Mitglieder ui über die Abbildung f in Übereinstimmung mit dem Abbildungsparameter r in eine neue Menge von Vektoren ab:
    für jedes Mitglied ui mit i = 1, 2, ..., m ist:
    Figure 00040001
    für jedes Mitglied ui mit i = m + 1, ..., n ist:
    Figure 00040002
    wobei der Gruppencontroller auf diese Weise über dem endlichen Feld F eine neue Menge von Vektoren erhält:
    für jedes Mitglied ui mit i = 1, 2, ..., m ist:
    Xi = (xi,1, xi,2, ..., xi,n), wobei xi,m+1, ..., xi,n alle 0 sind;
    für jedes Mitglied ui mit i = m + 1, ..., n ist:
    Xi = (xi,1, xi,2, ..., xi,n), wobei xi,2, ..., xi,i-m+1 und xi,i+1, ..., xi,n alle 0 sind;
    der Gruppencontroller beurteilt, ob X1, X2 ..., Xn linear unabhängig sind, und wenn sie linear unabhängig sind, wird zu Schritt 3 übergegangen; andernfalls wird zu Schritt 2 zurückgekehrt oder wird zu Schritt 1 zurückgekehrt, um zu ermöglichen, dass jedes Gruppenmitglied erneut einen privaten Vektor auswählt (da r eine Zufallszahl ist, ist es leicht, eine Menge X1, X2 ..., Xn zu erhalten, die linear unabhängig sind);
    der Schritt 3 wird durch das Folgende implementiert;
    der Gruppencontroller wählt in dem endlichen Feld F eine Zufallszahl K als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem:
    es seien a1, a2, ..., an unbekannte Parameter und der Gruppencontroller berechne den zentralen Vektor A = (a1, a2, ..., an) aus dem folgenden linearen Gleichungssystem:
    Figure 00050001
    wobei dieses lineare Gleichungssystem in Vektorform dargestellt ist: X × AT = KT,
    wobei T die Transponierte der Matrix darstellt, der Vektor K = (k, k, ... k) ist, der Vektor A = (a1, a2, ..., an) ist und die Matrix
    Figure 00050002
    ist;
    da X1, X2 ..., Xn linear unabhängige Vektoren sind und die Determinante der Koeffizientenmatrix |X| ≠ 0 ist, hat dieses lineare Gleichungssystem die eindeutige Lösung;
    der zentrale Vektor A = (a1, a2, ..., an) und der Abbildungsparameter r werden durch den Gruppencontroller über einen offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet;
    der Schritt 4 wird durch das Folgende implementiert:
    nachdem die Gruppenmitglieder den zentralen VektorA = (a1, a2, ..., an) und den Abbildungsparameter r empfangen haben, wird der private Vektor jedes Gruppenmitglieds ui in Übereinstimmung mit dem Abbildungsparameter r auf einen neuen Vektor in dem Vektorraum abgebildet:
    für das Gruppenmitglied ui mit i = 1, 2, ..., m ist:
    Figure 00060001
    d. h.:
    Xi = (xi,1, xi,2, ..., xi,n), wobei xi,m+1, ..., xi,n alle 0 sind; für das Mitglied ui, wobei i = m + 1, ..., n ist, ist:
    Figure 00060002
    d. h.:
    Xi = (xi,1, xi,2, ..., xi,n), wobei xi,2, ..., xi,i-m+1 ist und xi,i+1, ..., xi,n alle 0 sind;
    daraufhin kann das Gruppenmitglied ui über die unten stehende Gleichung, d. h. über das innere Produkt des Vektors Xi und des zentralen Vektors A = (a1, a2, ..., an), den Gruppenschlüssel k berechnen:
    k = Xi × AT = xi,1a1 + xi,2a2 + ... + xi,nan, wobei T die Transponierte der Matrix ist;
    wenn ein neues Mitglied der Gruppe beitritt, enthält der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie ferner:
    Schritt 5, wenn neue Mitglieder der Gruppe beitreten, wählt jedes neue Mitglied über dem endlichen Feld F einen m-dimensionalen privaten Vektor aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; der Gruppencontroller weist jedem neuen Mitglied eine laufende Nummer zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor jedes neuen Mitglieds und hält ihn geheim;
    Wiederholung der Schritte 2 bis 4.
  • Wenn Gruppenmitglieder die Gruppe verlassen missen, enthält der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie ferner:
    Schritt 5, wenn Gruppenmitglieder die Gruppe verlassen müssen, beantragt jedes Mitglied, das die Gruppe verlassen muss, bei dem Gruppencontroller, die Gruppe zu verlassen; der Gruppencontroller löscht die privaten Vektoren der verlassenden Mitglieder und weist für die verbleibenden Mitglieder in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Mitglieder laufende Nummern neu zu und sendet die laufenden Nummern über einen offenen Kanal an alle Mitglieder;
    Wiederholung der Schritte 2 bis 4.
  • Wenn neue Mitglieder der Gruppe beitreten möchten und gleichzeitig Mitglieder die Gruppe verlassen möchten, enthält der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie:
    Schritt 5: wenn neue Mitglieder der Gruppe beitreten möchten und gleichzeitig Mitglieder die Gruppe verlassen möchten, wählt jedes neue Mitglied über dem endlichen Feld F einen m-dimensionalen privaten Vektor aus und sendet den m-dimensionalen Vektor über einen scheren Kanal an den Gruppencontroller; die Mitglieder, die die Gruppe verlassen möchten, beantragen beim Gruppencontroller, die Gruppe zu verlassen, woraufhin der Gruppencontroller den privaten Vektor jedes verlassenden Mitglieds löscht und den verbleibenden Mitgliedern in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Mitglieder laufende Nummern neu zuweist und jedem neuen Mitglied eine laufende Nummer zuweist; wobei der m-dimensionale private Vektor des neuen Mitglieds von dem Gruppencontroller empfangen und geheim gehalten wird; woraufhin die Indizes aller Mitglieder über einen offenen Kanal an alle Mitglieder rundgesendet werden;
    Wiederholung der Schritte 2 bis 4.
  • Vorzugsweise ist der m-dimensionale private Vektor ein zweidimensionaler privater Vektor.
  • Vorzugsweise enthält der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie ferner eine Selbstaktualisierung: falls in einer vorgegebenen Zeitdauer kein Mitglied der Gruppe beitritt oder sie verlässt, aktualisiert der Gruppencontroller den Gruppenschlüssel periodisch, wählt der Gruppencontroller den Abbildungsparameter und den Gruppenschlüssel neu aus und berechnet den zentralen Vektor und werden der zentrale Vektor und der Abbildungsparameter durch den Gruppencontroller über einen offenen Kanal an alle Mitglieder rundgesendet oder sammelgesendet.
  • Vorzugsweise wird angenommen, dass die Abbildung f durch z = f(w, y) dargestellt werden kann, wobei w, y, z ∈ F ist, die Hauptfunktion der Abbildung f eine Randomisierung ist und die Abbildung f den folgenden Eigenschaften genügt:
    • 1) es ist leicht, z = f(w, y) zu berechnen, wenn w, y bekannt sind,
    • 2) es ist schwierig, w zu berechnen, wenn nur z und y bekannt sind; wenn z und w bekannt sind, ist es außerdem schwierig, y aus z = f(w, y) zu berechnen; es ist schwierig, wi aus zi = f(wi, yi) zu berechnen, auch wenn eine Reihe von zi und yi erhalten wird; und es ist ebenfalls schwierig, yi aus zi = f(wi, yi) zu berechnen, auch wenn eine Reihe von zi und wi erhalten wird.
  • Die zweite Aufgabe der vorliegenden Erfindung wird durch die folgende technische Lösung gelöst:
    ein Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie, wobei der Zugang die folgenden Schritte umfasst:
    Schritt 1: ein Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus (alle Berechnungen in der Gruppe werden über dem endlichen Feld ausgeführt); die Gruppe habe n Mitglieder, wobei jedes Mitglied einen m-dimensionalen privaten Vektor über das endliche Feld F auswählt und den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller sendet; der Gruppencontroller weist jedem Mitglied eine laufende Nummer zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor jedes Mitglieds und hält ihn geheim; wobei m, n positive ganze Zahlen sind und 2 ≤ m ≤ n + 1 ist;
    Schritt 2: nachdem der Gruppencontroller die privaten Vektoren aller Mitglieder empfangen hat, wählt der Gruppencontroller selbst ebenfalls einen m-dimensionalen privaten Vektor aus und wählt der Gruppencontroller zufällig einen Abbildungsparameter in dem endlichen Feld F aus und bildet den privaten Vektor des Gruppencontrollers und die privaten Vektoren aller Mitglieder über die Abbildung f in Übereinstimmung mit dem Abbildungsparameter in eine neue Menge von Vektoren ab; wenn die Menge von Vektoren linear abhängig ist, wird der Abbildungsparameter neu ausgewählt, um eine erneute Abbildung vorzunehmen, andernfalls wird zu Schritt 1 zurückgekehrt, um zu veranlassen, dass jedes Mitglied einen privaten Vektor neu auswählt, bis die neue Menge von Vektoren linear unabhängig ist;
    Schritt 3: der Gruppencontroller wählt eine Zufallszahl in dem endlichen Feld F als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem; der Gruppencontroller berechnet die eindeutige Lösung des linearen Gleichungssystems, die ein zentraler Vektor genannt wird, und der zentrale Vektor und der Abbildungsparameter werden durch den Gruppencontroller über einen offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet;
    Schritt 4: nachdem die Gruppenmitglieder den zentralen Vektor und den Abbildungsparameter empfangen haben, wird der private Vektor jedes Gruppenmitglieds in Übereinstimmung mit dem Abbildungsparameter auf einen neuen Vektor in dem Vektorraum abgebildet und durch Berechnen des inneren Produkts des neuen Vektors und des zentralen Vektors der Gruppenschlüssel erhalten.
  • Vorzugsweise wird der Schritt 1 durch das Folgende implementiert:
    der Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus; jedes Mitglied wählt einen m-dimensionalen privaten Vektor über das endliche Feld F aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; wobei in eine positive ganze Zahl ist und 2 ≤ m ≤ n + 1 ist;
    der Gruppencontroller weist jedem Mitglied eine laufende Nummer ui zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor Vi = (vi,0, vi,1, ..., vi,m-1) jedes Mitglieds und hält ihn geheim, wobei i = 1, ..., n ist;
    der Schritt 2 wird durch das Folgende implementiert:
    der Gruppencontroller wählt in dem endlichen Feld F Zufallszahlen v0,0, v0,1, ..., v0,m-1 aus und konstruiert einen m-dimensionalen privaten Vektor von sich selbst V0 = (v0,0, v0,1, ..., v0,m-1); der Gruppencontroller wählt in dem endlichen Feld F einen Abbildungsparameter r aus und bildet private Vektoren Vi = (vi,0, vi,1, ..., vi,m-1) aller Mitglieder ui und den m-dimensionalen privaten Vektor von sich selbst V0 = (v0,0, v0,1, ..., v0,m-1) über die Abbildung f in Übereinstimmung mit dem Abbildungsparameter r in eine neue Menge von Vektoren ab:
    für den privaten Vektor des Gruppencontrollers selbst V0 = (v0,0, v0,1, ..., v0,m-1) berechnet der Gruppencontroller:
    Figure 00090001
    für die privaten Vektoren Vi = (vi,0, vi,1, ..., vi,m-1) der Mitglieder ui mit i = 1, 2, ..., m – 1 berechnet der Gruppencontroller:
    Figure 00090002
    für die privaten Vektoren Vi = (vi,0, vi,1, ..., vi,m-1) der Mitglieder ui mit i = m, m + 1, ..., n berechnet der Gruppencontroller:
    Figure 00100001
    auf diese Weise erhält der Gruppencontroller eine neue Menge von Vektoren über das endliche Feld F:
    der neue Vektor X0, der nach der Abbildung des privaten Vektors des Gruppencontrollers erhalten wird, ist:
    X0 = (x0,0, x0,1, ..., x0,n), wobei x0,m, ..., x0,n alle 0 sind;
    für den neuen Vektor Xi der Gruppenmitglieder ui mit i = 1, 2, ..., m – 1 ist:
    Xi = (xi,0, xi,1, ..., xi,n), wobei xi,m, ..., xi,n alle 0 sind;
    für den neuen Vektor Xi des Gruppenmitglieds ui mit i = m, m + 1, ..., n ist
    Xi = (xi,0, xi,1, ..., xi,n), wobei xi,1, ..., xi,i-m+1 und xi,i+1 , ..., xi,n alle 0 sind;
    der Gruppencontroller beurteilt, oh X0, X1 ..., Xn linear unabhängig sind, wenn sie linear unabhängig sind, wird zu Schritt 3 übergegangen; andernfalls wird zu Schritt 2 zurückgekehrt oder wird zu Schritt 1 zurückgekehrt, um zu ermöglichen, dass die Gruppenmitglieder einen privaten Vektor neu auswählten (da r eine Zufallszahl ist, ist es leicht, eine Menge X0, X1 ..., Xn zu erhalten, die linear unabhängig sind);
    der Schritt 3 wird durch das Folgende implementiert:
    der Gruppencontroller wählt eine Zufallszahl K in dem endlichen Feld F als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem:
    es seien a1, a2, ..., an unbekannte Parameter und der Gruppencontroller löse den zentralen Vektor A = (a0, a1, ..., an) aus dem folgenden linearen Gleichungssystem:
    Figure 00100002
    dieses lineare Gleichungssystem ist in Vektorform dargestellt: X × AT = KT, wobei der Vektor K = (k, k, ..., k) ist, der Vektor A = (a0, a1, ..., an) ist, die Matrix
    Figure 00110001
    ist;
    da X0, X1 ..., Xn linear unabhängige Vektoren sind und die Determinante der Koeffizientenmatrix |X| ≠ 0 ist, hat dieses lineare Gleichungssystem die eindeutige Lösung;
    der zentrale Vektor A = (a0, a1, ..., an) und der Abbildungsparameter r werden durch den Gruppencontroller über einen offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet;
    der Schritt 4 wird durch das Folgende implementiert:
    nachdem die Gruppenmitglieder den zentralen VektorA = (a0, a1, ..., an) und den Abbildungsparameter r empfangen haben, wird der private Vektor des Gruppenmitglieds in Übereinstimmung mit dem Abbildungsparameter r auf einen neuen Vektor in dem Vektorraum abgebildet:
    für das Gruppenmitglied ui mit i = 1, 2, ..., m – 1 ist:
    Figure 00110002
    d. h.:
    Xi = (xi,0, xi,1, ..., xi,n), wobei xi,m, ..., xi,n alle 0 sind;
    für das Gruppenmitglied ui mit i = m, m + 1, ..., n ist:
    Figure 00110003
    d. h.:
    Xi = (xi,0, xi,1, ..., xi,n), wobei xi,1, ..., xi,i-m+1 und xi,i+1 , ..., xi,n alle 0 sind;
    daraufhin kann das Gruppenmitglied ui über die unten stehende Gleichung, d. h. über das innere Produkt des Vektors Xi und des zentralen Vektors A = (a0, a1, ..., an), den Gruppenschlüssel k berechnen:
    k = Xi × AT = xi,0a0 + xi,1a1 + ... + xi,nan, wobei T die Transponierte der Matrix ist; wenn neue Mitglieder der Gruppe beitreten, enthält der Gruppenmanagementzugang auf der Grundlage linearer Geometrie ferner:
    Schritt 5: wenn neue Mitglieder der Gruppe beitreten, wählt jedes neue Mitglied in dem endlichen Feld F einen m-dimensionalen privaten Vektor aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; der Gruppencontroller weist jedem neuen Mitglied eine laufende Nummer zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor jedes neuen Mitglieds und hält ihn geheim;
    Wiederholung der Schritte 2 bis 4.
  • Wenn Gruppenmitglieder die Gruppe verlassen müssen, enthält der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie ferner:
    Schritt 5: wenn Gruppenmitglieder die Gruppe verlassen müssen, beantragt jedes Mitglied, das die Gruppe verlassen muss, bei dem Gruppencontroller, die Gruppe zu verlassen; der Gruppencontroller löscht die privaten Vektoren der verlassenden Mitglieder und weist für die verbleibenden Mitglieder in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Mitglieder laufende Nummern neu zu und sendet die laufenden Nummern über einen offenen Kanal an alle Mitglieder;
    Wiederholung der Schritte 2 bis 4.
  • Wenn neue Mitglieder der Gruppe beitreten möchten und gleichzeitig Mitglieder die Gruppe verlassen möchten, enthält der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie:
    Schritt 5: wenn neue Mitglieder der Gruppe beitreten möchten und gleichzeitig Mitglieder die Gruppe verlassen möchten, wählt jedes neue Mitglied in dem endlichen Feld F einen m-dimensionalen Vektor aus und sendet den m-dimensionalen Vektor über einen sicheren Kanal an den Gruppencontroller; die Mitglieder, die die Gruppe verlassen möchten, beantragen beim Gruppencontroller, die Gruppe zu verlassen, woraufhin der Gruppencontroller den privaten Vektor jedes verlassenden Mitglieds löscht und den verbleibenden Mitgliedern in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Mitglieder laufende Nummern neu zuweist und jedem neuen Mitglied eine laufende Nummer zuweist; wobei der m-dimensionale Vektor des neuen Mitglieds von dem Gruppencontroller empfangen und geheim gehalten wird; woraufhin die Indizes aller Mitglieder über einen offenen Kanal an alle Mitglieder rundgesendet werden; Wiederholung der Schritte 2 bis 4.
  • Vorzugsweise ist der m-dimensionale private Vektor ein zweidimensionaler privater Vektor.
  • Vorzugsweise enthält der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie ferner eine Selbstaktualisierung: falls in einer vorgegebenen Zeitdauer kein Mitglied der Gruppe beitritt oder sie verlässt, aktualisiert der Gruppencontroller den Gruppenschlüssel periodisch, wählt der Gruppencontroller den Abbildungsparameter und den Gruppenschlüssel neu aus und berechnet den zentralen Vektor und werden der zentrale Vektor und der Abbildungsparameter durch den Gruppencontroller über einen offenen Kanal an alle Mitglieder rundgesendet oder sammelgesendet.
  • Vorzugsweise wird angenommen, dass die Abbildung f durch z = f(w, y) dargestellt werden kann, wobei w, y, z ∈ F ist, die Hauptfunktion der Abbildung f eine Randomisierung ist und die Abbildung f den folgenden Eigenschaften genügt:
    • 1) es ist leicht, z = f(w, y) zu berechnen, wenn w, y bekannt sind,
    • 2) es ist schwierig, w zu berechnen, wenn nur z und y bekannt sind; wenn z und w bekannt sind, ist es außerdem schwierig, y aus z = f(w, y) zu berechnen; es ist schwierig, wi aus zi = f(wi, yi) zu berechnen, auch wenn eine Reihe von zi und yi erhalten wird; und es ist ebenfalls schwierig, yi aus zi = f(wi, yi) zu berechnen, auch wenn eine Reihe von zi und wi erhalten wird.
  • Im Vergleich zum Stand der Technik weist die vorlegende Erfindung die folgenden Vorteile auf:
    Zunächst werden der Speicher jedes Mitglieds und der Berechnungsaufwand des Gruppencontrollers verringert. Falls in dem bevorzugten Schema m = 2 festgesetzt wird, braucht jedes Mitglied nur einen zweidimensionalen privaten Vektor von sich selbst zu speichern, d. h., es sind nur 2L Bit Speicherplatz erforderlich (L ist die Bitgröße jedes Elements in dem endlichen Feld F), und der Berechnungsaufwand jedes Mitglieds bestehen aus dem Abbilden des privaten Vektors von sich selbst auf einen neuen Vektor in dem Raum in Übereinstimmung mit dem Abbildungsparameter und aus dem Berechnen des Gruppenschlüssels, wobei dies zwei Abbildungsoperationen, zwei Multiplikationen und eine Addition über das endliche Feld enthält. Es ist zu sehen, dass der Speicherraum und der Berechnungsaufwand jedes Mitglieds festgesetzt sind und nicht zunehmen, während die Gruppengröße zunimmt. Darüber hinaus muss der Gruppencontroller die privaten Vektoren der gesamten Gruppe speichern, wobei der erforderliche Speicherraum 2nL ist (n ist die Menge der Gruppenmitglieder und L ist die Bitgröße jedes Elements in dem endlichen Feld), und wobei die Hauptberechnung des Gruppencontrollers das Berechnen des zentralen Vektors ist; da die Koeffizientenmatrix dünn besiedelt ist und leicht in eine Dreiecksmatrix umgewandelt werden kann, ist die Berechnung dementsprechend sehr einfach. Somit nehmen nur der Berechnungsaufwand und der Speicherraum des Gruppencontrollers linear zu, während die Gruppe wächst.
  • Zweitens kann die Berechnung des Gruppencontrollers leicht parallelisiert werden. Wenn der Gruppencontroller auf einer Mehrkernprozessorplattform arbeitet, ist es unter Verwendung der gegenwärtigen verbreiteten parallelen Berechnungsbibliothek, die den Mehrkernprozessor nutzt, sehr leicht zu ermöglichen, dass die Berechnung des Gruppencontrollers parallel erfolgt.
  • Drittens ist der sichere Kanal nur erforderlich, wenn sich ein Gruppenmitglied erstmals registriert und ein neues Mitglied der Gruppe beitritt, während in anderen Situationen nur der offene Kanal erforderlich ist. Das liegt daran, dass während der Initialisierung der Gruppe der private Vektor durch das Gruppenmitglied über den sicheren Kanal an den Gruppencontroller gesendet wird und zu dieser Zeit die Gruppe noch nicht aufgebaut worden ist, wobei der sichere Kanal notwendig ist, um die Sicherheit des privaten Vektors sicherzustellen. Danach braucht der Gruppencontroller lediglich den zentralen Vektor A und den Abbildungsparameter r an alle Gruppenmitglieder zu senden, wobei es nicht notwendig ist, die Sicherheit zu erhalten, wobei der sichere Kanal nicht erforderlich ist und der offene Kanal für die Rundsendung und Sammelsendung verwendet werden kann, da sowohl der Vektor A als auch r öffentlich sind.
  • Viertens ist das Verfahren der vorliegenden Erfindung unabhängig von anderen Kryptographieverfahren. Die Sicherheit der vorliegenden Erfindung beruht auf der Theorie linearer Geometrie über dem endlichen Feld, wobei während des Prozesses des Berechnens des Gruppenschlüssels nur eine einfache Abbildungsoperation und Grundoperation über das endliche Feld verwendet wird, wobei es sich nicht auf andere herkömmliche Kryptographieverfahren einschließlich asymmetrischer Kryptographie, symmetrischer Kryptographie und Hash-Funktion stützt. Auf diese Weise wird die Möglichkeit, dass die vorliegende Erfindung durch andere Aspekte angegriffen wird, verringert. Selbst wenn die herkömmlichen Kryptographieverfahren entschlüsselt werden, ist die durch die vorliegende Erfindung geschaffene Sicherheit nicht betroffen.
  • Fünftens wird eine Vorwärts- und Rückwärtssicherheit geschaffen. Der Gruppenschlüssel k wird zufällig ausgewählt, und jedes Mal, wenn die Gruppenmitglieder beitreten oder verlassen, wird k geändert. Selbst wenn der Gruppenschlüssel für eine Zeitdauer aufgedeckt wird, kennen Nichtmitglieder nicht den Gruppenschlüssel für die nächste Zeitdauer. Somit kann die Vorwärts- und Rückwärtssicherheit garantiert werden.
  • Sechstens kann der Angriff von den Gruppenmitgliedern oder -nichtmitgliedern wirksam vermieden werden. Der Gruppenschlüssel k wird durch Berechnen des inneren Produkts des privaten Vektors Xi des Gruppenmitglieds und des durch die Gruppe veröffentlichen zentralen Vektors A erhalten, während Xi durch die Abbildung f unter Verwendung des privaten Vektors Vi des Gruppenmitglieds und des Abbildungsparameters r erzeugt wird. Für irgendein Nichtmitglied kann Xi nicht berechnet werden, wenn der private Vektor Vi unzulässig ist, sodass der Gruppenschlüssel k nicht erhalten werden kann. Da der private Vektor jedes Gruppenmitglieds über den sicheren Kanal an den Gruppencontroller gesendet wird, kann irgendein Gruppenmitglied oder -nichtmitglied den privaten Vektor anderer Gruppenmitglieder nicht ableiten. Somit kann irgendein Nichtmitglied oder können andere Gruppenmitglieder den privaten Vektor des Gruppenmitglieds nicht ableiten.
  • Schließlich ist ein Brechstangenangriff zum Erforschen des Gruppenschlüssels äußerst schwierig:
    Der Gruppenschlüssel k wird aus dem endlichen Feld F zufällig ausgewählt. Solange die Anzahl der Elemente in dem Feld größer als eine bestimmte Konstante, z. B. 2128, ist, ist es sehr schwierig, den Gruppenschlüssel durch einen Brechstangenangriff zu erforschen.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • 1 ist ein schematisches Diagramm eines sicheren Gruppenkommunikationssystems in Übereinstimmung mit einer ersten Ausführungsform der vorliegenden Erfindung;
  • 2 ist ein schematisches Diagramm, das zeigt, dass der Gruppencontroller in Übereinstimmung mit der ersten Ausführungsform das endliche Feld und die Abbildung f für die Gruppenverwendung auswählt, wobei jedes Gruppenmitglied den privaten Vektor an den Gruppencontroller sendet;
  • 3 ist ein schematisches Diagramm, das zeigt, dass der Gruppencontroller in Übereinstimmung mit der ersten Ausführungsform den zentralen Vektor über den Abbildungsparameter und den Gruppenschlüssel berechnet;
  • 4 ist ein schematisches Diagramm, das zeigt, dass der Gruppencontroller in Übereinstimmung mit der ersten Ausführungsform den Abbildungsparameter und den zentralen Vektor an die Gruppenmitglieder sendet;
  • 5 ist ein schematisches Diagramm, das zeigt, dass die Gruppenmitglieder in Übereinstimmung mit der ersten Ausführungsform den Abbildungsparameter und den zentralen Vektor berechnen;
  • 6 ist ein schematisches Diagramme, das zeigt, dass der Gruppencontroller und die Gruppenmitglieder in Übereinstimmung mit der ersten Ausführungsform die Gruppe bilden;
  • 7 ist ein schematisches Diagramm, das ein sicheres Gruppenkommunikationssystem in Übereinstimmung mit einer fünften Ausführungsform der vorliegenden Erfindung zeigt;
  • 8 ist ein schematisches Diagramm, das zeigt, dass der Gruppencontroller in Übereinstimmung mit der fünften Ausführungsform das endliche Feld und die Abbildung f für die Gruppenverwendung auswählt und jedes Gruppenmitglied den privaten Vektor an den Gruppencontroller sendet;
  • 9 ist ein schematisches Diagramm, das zeigt, dass der Gruppencontroller in Übereinstimmung mit der fünften Ausführungsform den zentralen Vektor über den Abbildungsparameter und den Gruppenschlüssel berechnet;
  • 10 ist ein schematisches Diagramm, das zeigt, dass der Gruppencontroller in Übereinstimmung mit der fünften Ausführungsform den Abbildungsparameter und den zentralen Vektor an die Gruppenmitglieder sendet;
  • 11 ist ein schematisches Diagramm, das zeigt, dass die Gruppenmitglieder in Übereinstimmung mit der fünften Ausführungsform den Abbildungsparameter und den zentralen Vektor berechnen;
  • 12 ist ein schematisches Diagramm, das zeigt, dass der Gruppencontroller und die Gruppenmitglieder in Übereinstimmung mit der fünften Ausführungsform die Gruppe bilden.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Die Erfindung wird weiter ausführlich in den folgenden die Zeichnung begleitenden Ausführungsformen beschrieben. Dennoch ist dadurch selbstverständlich keine Beschränkung des Umfangs der Erfindung beabsichtigt.
  • Ausführungsform 1
  • In 1 enthält ein typisches sicheres Gruppenkommunikationssystem einen Gruppencontroller (GC) und vier Gruppennutzer U1, U2, U3 und U4. Der Gruppencontroller ist über das Internet mit jedem Nutzer verbunden.
  • Wie in 2 gezeigt ist, wählt der Gruppencontroller während der Initialisierung der Gruppe eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, wobei alle Berechnungen in der Gruppe über das endliche Feld ausgeführt werden und die Abbildung f einen Pseudozufallszahlengenerator verwendet.
  • Schritt 1, die Gruppenmitglieder U1, U2, U3, U4 möchten der Gruppe beitreten, das Gruppenmitglied U1 wählt in dem endlichen Feld F drei private Zufallszahlen v1,1, v1,2, v1,3 ∈ F aus und konstruiert den dreidimensionalen Vektor V1 = (v1,1, v1,2, v1,3), das Gruppenmitglied U2 wählt ebenfalls drei private Zufallszahlen v2,1, v2,2, v2,3 ∈ F aus und konstruiert den dreidimensionalen Vektor V2 = (v2,1, v2,2, v2,3), das Gruppenmitglied U3 wählt ebenfalls drei private Zufallszahlen v3,1, v3,2, v3,3 ∈ F aus und konstruiert den dreidimensionalen Vektor V3 = (v3,1, v3,2, v3,3) und das Gruppenmitglied U4 wählt ebenfalls drei private Zufallszahlen v4,1, v4,2, v4,3 ∈ F aus und konstruiert den dreidimensionalen Vektor V4 = (v4,1, v4,2, v4,3). Die Gruppenmitglieder U1, U2, U3 und U4 senden die Vektoren V1 = (v1,1, v1,2, v1,3), V2 = (v2,1, v2,2, v2,3), V3 = (v3,1, v3,2, v3,3) und V4 = (v4,1, v4,2, v4,3) an den Gruppencontroller.
  • Der Gruppencontroller weist dem Gruppenmitglied U1 die laufende Nummer u1 zu, weist dem Gruppenmitglied U2 die laufende Nummer u2 zu, weist dem Gruppenmitglied U3 die laufende Nummer u3 zu und weist dem Gruppenmitglied U4 die laufende Nummer u4 zu. Der Gruppencontroller sendet diese laufenden Nummern über den sicheren Kanal an die entsprechenden Gruppenmitglieder und empfängt den dreidimensionalen privaten Vektor Vi = (vi,1, vi,2, vi,3) jedes Gruppenmitglieds und hält ihn geheim, wobei i = 1, 2, 3, 4 ist.
  • Schritt 2, wie in 3 gezeigt ist, empfängt der Gruppencontroller (GC) die privaten Vektoren V1, V2, V3, V4 der Gruppenmitglieder U1, U2, U3, U4 und wählt in dem endlichen Feld F eine Zufallszahl r als den Abbildungsparameter aus und bildet die dreidimensionalen privaten Vektoren Vi = (vi,1, vi,2, vi,3) aller Mitglieder ui über die Abbildung f in eine neue Menge von Vektoren ab:
    für jedes Mitglied ui (i = 1, 2, 3) berechnet der Gruppencontroller:
    Figure 00180001
    für jedes Mitglied ui, wobei i = 4 ist, berechnet der Gruppencontroller:
    Figure 00180002
    auf diese Weise erhält der Gruppencontroller eine neue Menge von Vektoren über das endliche Feld F:
    für den neuen Vektor Xi des Gruppenmitglieds ui (mit i = 1, 2, 3):
    Xi = (xi,1, xi,2, xi,3, 0), wobei xi,4 0 ist;
    für den neuen Vektor X4 des Gruppenmitglieds u4:
    X4 = (x4,1 + 0, x4,3, x4,4).
  • Der Gruppencontroller beurteilt, ob X1, X2, X3, X4 linear unabhängig sind, und geht zu Schritt 3 über, wenn sie unabhängig sind, während er andernfalls zu Schritt 2 zurückkehrt. Da r eine Zufallszahl ist, ist es leicht, eine Menge von Vektoren X1, X2, X3, X4 zu erhalten, die linear unabhängig sind.
  • Schritt 3, der Gruppencontroller wählt eine Zufallszahl k ∈ F als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem:
    es seien a1, a2, a3 , a4 unbekannte Parameter und der Gruppencontroller berechne den zentralen Vektor A = (a1, a2, a3 , a4) aus dem folgenden linearen Gleichungssystem:
    Figure 00190001
    dieses lineare Gleichungssystem ist in Vektorform dargestellt: X × AT = KT,
    dabei ist der Vektor K = (k, k, k, k), ist A = (a1, a2, a3 , a4), ist die Matrix
    Figure 00190002
    da die Determinante der Koeffizientenmatrix |X| ≠ 0 ist, hat dieses lineare Gleichungssystem die eindeutige Lösung A = (a1, a2, a3 , a4), und A = (a1, a2, a3 , a4) ist der zentrale Vektor.
  • Wie in 4 gezeigt ist, rundsendet der Gruppencontroller den zentralen Vektor A = (a1, a2, a3 , a4) und den Abbildungsparameter r über den offenen Kanal an die Gruppenmitglieder U1, U2, U3, U4.
  • Schritt 4, wie in 5 gezeigt ist, nachdem die Gruppenmitglieder U1, U2, U3 und U4 den zentralen Vektor A = (a1, a2, a3 , a4) und den Abbildungsparameter r empfangen haben, wird in Übereinstimmung mit dem Abbildungsparameter r ein neuer Vektor berechnet:
    für das Gruppenmitglied ui (i = 1, 2, 3) ist:
    Figure 00200001
    für das Gruppenmitglied ui mit i = 4 ist:
    Figure 00200002
    daraufhin berechnet U1 den Gruppenschlüssel k = x1,1a1 + x1,2a2 + x1,3a3, berechnet U2 den Gruppenschlüssel k = x2,1a1 + x2,2a2 + x2,3a3, berechnet U3 den Gruppenschlüssel k = x3,1a1 + x3,2a2 + x3,3a3, berechnet U4 den Gruppenschlüssel k = x4,1a1 + x4,2a2 + x4,3a3, wobei das berechnete Ergebnis k von U1 gleich den berechneten Ergebnissen k von U2, U3 und U4 ist.
  • Wie in 6 gezeigt ist, wird nach den obigen Schritten eine Gruppe mit den Gruppenmitgliedern U1, U2, U3 und U4 aufgebaut.
  • Falls in einer vorgegebenen Zeitdauer kein Mitglied der Gruppe beitritt oder sie verlässt, aktualisiert der Gruppencontroller den Gruppenschlüssel periodisch, d. h. wiederholt den Schritt 2 bis Schritt 4.
  • Ausführungsform 2
  • Das sichere Gruppenkommunikationssystem enthalte einen Gruppencontroller (GC) und fünf Gruppennutzer U1, U2, U3, U4 und U5. Der Gruppencontroller ist mit jedem Nutzer über das Internet verbunden. Während der Initialisierung der Gruppe wählt der Gruppencontroller eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, alle Berechnungen in der Gruppe werden über das endliche Feld ausgeführt und die Abbildung f verwendet einen Pseudozufallszahlengenerator.
  • Schritt 1, das Gruppenmitglied U4 beantragt beim Gruppencontroller, die Gruppe zu verlassen;
    der Gruppencontroller löscht den privaten Vektor V4 des verlassenden Mitglieds und weist die laufenden Nummern u, für die verbleibenden Mitglieder in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Mitglieder neu zu, wobei i = 1, 2, 3, 4 ist; der Gruppencontroller sendet die laufenden Nummern über den offenen Kanal an alle Mitglieder und die gegenwärtig durch den Gruppencontroller gespeicherten privaten Vektoren der Gruppenmitglieder sind V1, V2, V3, V4;
    weitere Schritte sind gleich den Schritten 2 bis 4 der Ausführungsform 1.
  • Ausführungsform 3
  • Das sichere Gruppenkommunikationssystem enthalte einen Gruppencontroller (GC) und zwei Gruppennutzer U1 und U2. Der Gruppencontroller ist über das Internet mit jedem Nutzer verbunden. Während der Initialisierung der Gruppe wählt der Gruppencontroller eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, wobei alle Berechnungen in der Gruppe über das endliche Feld ausgeführt werden und die Abbildung f einen Pseudozufallszahlengenerator verwendet.
  • Schritt 1, die Gruppenmitglieder U3, U4 möchten der Gruppe beitreten, das Gruppenmitglied U3 wählt drei private Zufallszahlen v3,1, v3,2, v3,3 ∈ F aus und konstruiert den dreidimensionalen Vektor V3 = (v3,1, v3,2, v3,3) und sendet den Vektor V3 = (v3,1, v3,2, v3,3) über den sicheren Kanal an den Gruppencontroller; das Gruppenmitglied U4 wählt außerdem drei private Zufallszahlen v4,1, v4,2, v4,3 ∈ F aus und konstruiert den dreidimensionalen Vektor V4 = (v4,1, v4,2, v4,3) und sendet den Vektor V4 = (v4,1, v4,2, v4,3) über den sicheren Kanal an den Gruppencontroller.
  • Der Gruppencontroller weist dem Gruppenmitglied U3 die laufende Nummer u3 zu und sendet die laufende Nummer u3 an dieses Gruppenmitglied und empfängt den privaten Vektor V3 = (v3,1, v3,2, v3,3) dieses Gruppenmitglieds und hält ihn geheim; der Gruppencontroller weist dem Gruppenmitglied U4 die laufende Nummer u4 zu und sendet die laufende Nummer u4 an dieses Gruppenmitglied und empfängt den privaten Vektor V4 = (v4,1, v4,2, v4,3) dieses Gruppenmitglieds und hält ihn geheim; somit sind die gegenwärtig von dem Gruppencontroller gespeicherten privaten Vektoren V1, V2, V3, V4.
  • Die weiteren Schritte sind gleich den Schritten 2 bis 4 der Ausführungsform 1.
  • Ausführungsform 4
  • Das sichere Gruppenkommunikationssystem enthalte einen Gruppencontroller (GC) und drei Gruppennutzer U1, U2 und U3. Der Gruppencontroller ist über das Internet mit jeden Nutzer verbunden.
  • Während der Initialisierung der Gruppe wählt der Gruppencontroller eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, wobei alle Berechnungen in der Gruppe über das endliche Feld ausgeführt werden und die Abbildung f einen Pseudozufallszahlengenerator verwendet.
  • Schritt 1, falls das Gruppenmitglied U2 die Gruppe verlassen möchte und die neuen Gruppenmitglieder U4 und U5 der Gruppe beitreten möchten, wählen die neuen Gruppenmitglieder U4 und U5 jeweils einen dreidimensionalen Vektor über das endliche Feld F aus und senden die Vektoren über den sicheren Kanal an den Gruppencontroller.
  • Der Gruppencontroller löscht den privaten Vektor V2 des verlassenden Mitglieds U2 und weist eine laufende Indexnummer i neu zu, um zu ermöglichen, dass das ursprüngliche Gruppenmitglied U3 zu u2 geändert wird, wobei der entsprechende Vektor V2 = (v2,1, v2,2, v2,3) ist. Der Gruppencontroller weist den neuen Mitgliedern U4 und U5 die laufenden Nummern u3 bzw. u4 zu, wobei auf diese Weise das U4 in der Gruppe zu u3 wird und der entsprechende Vektor V3 = (v3,1, v3,2, v3,3) ist, während U5 in der Gruppe zu u4 wird und der entsprechende Vektor V4 = (v4,1, v4,2, v4,3) ist. Der Gruppencontroller sendet die laufenden Nummern über den offenen Kanal an alle Mitglieder, wobei die privaten Vektoren der gegenwärtig durch den Gruppencontroller gespeicherten Gruppenmitglieder V1, V2, V3, V4 sind.
  • Die weiteren Schritte sind gleich den Schritten 2 bis 4 der Ausführungsform 1.
  • Ausführungsform 5
  • Anhand von 7 enthält ein typisches sicheres Gruppenkommunikationssystem einen Gruppencontroller (GC) und drei Gruppennutzer U1, U2 und U3. Der Gruppencontroller ist über das Internet mit jedem Nutzer verbunden.
  • Wie in 8 gezeigt ist, wählt der Gruppencontroller während der Initialisierung der Gruppe eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, wobei alle Berechnungen in der Gruppe über das endliche Feld ausgeführt werden und die Abbildung f einen Pseudozufallszahlengenerator verwendet.
  • Schritt 1, die Gruppenmitglieder U1, U3, U4 möchten der Gruppe beitreten, das Gruppenmitglied U1 wählt zwei private Zufallszahlen v1,0, v1,1 ∈ F aus und konstruiert den zweidimensionalen Vektor V1 = (v1,0, v1,1); außerdem wählt das Gruppenmitglied U2 zwei private Zufallszahlen v2,0, v2,1 ∈ F aus und konstruiert den zweidimensionalen Vektor V2 = (v2,0, v2,1); und außerdem wählt das Gruppenmitglied U3 zwei private Zufallszahlen v3,0, v3,1 ∈ F aus und konstruiert den zweidimensionalen Vektor V3 = (v3,0, v3,1). Die U1, U2 und U3 senden die Vektoren V1 = (v1,0, v1,1), V2 = (v2,0, v2,1) und V3 = (v3,0, v3,1) über den sicheren Kanal an den Gruppeneontroller.
  • Der Gruppencontroller weist dem Gruppenmitglied U1 die laufende Nummer u1 zu, weist dem Gruppenmitglied U2 die laufende Nummer u2 zu, weist dem Gruppenmitglied U3 die laufende Nummer u3; der Gruppencontroller sendet die oben erwähnten laufenden Nummern über den sicheren Kanal an die entsprechenden Gruppenmitglieder und empfangt den zweidimensionalen privaten Vektor Vi = (vi,0, vi,1) jedes Gruppenmitglieds und hält ihn geheim, wobei i = 1, 2, 3 ist;
    Schritt 2, wie in 9 gezeigt ist, wählt der Gruppencontroller nach Empfang der privaten Vektoren V1, V2, V3 der Gruppenmitglieder U1, U2 und U3 in dem endlichen Feld F die Zufallszahlen v0,0, v0,1 ∈ F aus, wobei r der Abbildungsparameter ist, v0,0, v0,1 den privaten Vektor des Gruppencontrollers V0 = (v0,0, v0,1) konstruieren und V0 von dem Gruppencontroller gespeichert wird.
  • Der Gruppencontroller bildet den privaten Vektor von sich selbst und die privaten Vektoren aller Gruppenmitglieder in Übereinstimmung mit dem Abbildungsparameter ab, um eine neue Menge von Vektoren zu bilden:
    für den privaten Vektor V0 = (v0,0, v0,1) des Gruppencontrollers selbst berechnet der Gruppencontroller:
    Figure 00240001
    für das Gruppenmitglied ui (i = 1) berechnet der Gruppencontroller:
    Figure 00240002
    der Gruppencontroller beurteilt, ob x0,0x1,1 – x0,1x1,0 = 0 hergestellt worden ist, und kehrt dann zum erneuten Auswählen der Zufallszahlen v0,0, v0,1, r ∈ F zurück, wenn das der Fall ist;
    wenn das nicht der Fall ist, geht er zu dem nächsten Schritt über: für das Gruppenmitglied ui (wobei i = 2, 3) ist, berechnet der Gruppencontroller:
    Figure 00240003
    auf diese Weise erhält der Gruppencontroller eine neue Menge von Vektoren über den endlichen Vektor F:
    für den neuen Vektor X0, der nach dem Abbilden des privaten Vektors des Gruppencontrollers erhalten wird, ist:
    X0 = (x0,0, x1,1, 0, 0),
    für den neuen Vektor X1 des neuen Gruppenmitglieds u1 ist:
    X1 = (x1,0, x1,1, 0, 0)
    für den neuen Vektor Xi des Gruppenmitglieds ui mit i = 2, 3:
    X2 = (x2,0, x2,2, 0),
    X3 = (x3,0, 0, 0, x3,3, 0).
  • Der Gruppencontroller beurteilt, ob X0, X1, X2, X3 linear unabhängig sind, und berechnet |X| = (x0,0, x1,1 – x0,1, x1,0)x2,2x3,3, und wenn dies nicht null ist, sind X0, X1, X2, X3 linear unabhängig. Wenn sie linear abhängig sind, werden die Zufallszahlen v0,0, v0,1, r ∈ F neu ausgewählt und wird X0, X1, X2, X3 berechnet, andernfalls wird mit dem nächsten Schritt fortgefahren. Da es die Anforderung von x0,0, x1,1 – x0,1, x1,0 ≠ 0 erfüllt, solange xi,i ≠ 0 (i = 2, 3) ist, ist |X| ≠ 0. Somit ist es leicht, eine Menge von Vektoren X0, X1, X2, X3 zu erhalten, die in Übereinstimmung mit der Zufallszahl r und der Abbildung f linear unabhängig sind.
  • Schritt 3, der Gruppencontroller wählt eine Zufallszahl k ∈ F als den Gruppenschlüssel aus. Es seien a0, a1, ..., an unbekannte Variablen, wobei der Gruppencontroller den zentralen Vektor A = (a0, a1, ..., an) aus dem folgenden linearen Gleichungssystem berechnet:
    Figure 00250001
    dieses lineare Gleichungssystem kann in Vektorform dargestellt werden: X × AT = KT, wobei der Vektor K = (k, k, k, k) ist, der Vektor A = (a0, a1, a2, a3) ist und die Matrix
    Figure 00250002
    ist.
  • Da die Determinante der Koeffizientenmatrix |X| ≠ 0 ist, hat dieses lineare Gleichungssystem die eindeutige Lösung A = (a0, a1, a2, a3), wobei A = (a0, a1, a2, a3) der zentrale Vektor ist.
  • Wie in 10 gezeigt ist, rundsendet der Gruppencontroller den zentralen Vektor A = (a0, a1, a2, a3) und den Abbildungsparameter r über den offenen Kanal an die Gruppenmitglieder U1, U2 und U3.
  • Schritt 4, wie in 11 gezeigt ist, werden in Übereinstimmung mit dem Abbildungsparameter r neue Vektoren berechnet, nachdem die Gruppenmitglieder U1, U2 und U3 A = (a0, a1, a2, a3) und den Abbildungsparameter r empfangen haben:
    Figure 00260001
    daraufhin berechnet das Gruppenmitglied U1 den Gruppenschlüssel k = x1,0a0 + x1,1a1, berechnet das Gruppenmitglied U2 den Gruppenschlüssel k = x2,0a0 + x2,2a2, berechnet das Gruppenmitglied U3 den Gruppenschlüssel k = x3,0a0 + x3,3a3. Offensichtlich ist der von dem Gruppenmitglied U1 berechnete Gruppenschlüssel k gleich den von den Gruppenmitgliedern U2 und U3 berechneten Gruppenschlüsseln k.
  • Wie in 12 gezeigt ist, wird nach den obigen Schritten eine Gruppe mit den Gruppenmitgliedern U1, U2 und U3 aufgebaut.
  • Falls in einer vorgegebenen Zeitdauer kein Mitglied der Gruppe beitritt oder sie verlässt, aktualisiert der Gruppencontroller die Gruppenschlüssel periodisch, d. h., wiederholt er die Schritte 2 bis 4.
  • Ausführungsform 6
  • Das sichere Gruppenkommunikationssystem enthalte einen Gruppencontroller (GC) und vier Gruppennutzer U1, U2, U3 und U4. Der Gruppencontroller ist über das Internet mit jedem Nutzer verbunden. Während der Initialisierung der Gruppe wählt der Gruppencontroller eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, wobei alle Berechnungen in der Gruppe über das endliche Feld ausgeführt werden und die Abbildung f einen Pseudozufallszahlengenerator verwendet.
  • Schritt 1, falls das Gruppenmitglied U4 beim Gruppencontroller das Verlassen der Gruppe beantragt:
    löscht der Gruppencontroller den privaten Vektor V4 des verlassenden Mitglieds und ordnet die laufende Nummer ui für die verbleibenden Mitglieder in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Mitglieder neu zu, wobei i = 1, 2, 3 ist; sendet der Gruppencontroller die laufenden Nummern über den offenen Kanal an alle Mitglieder, wobei die von dem Gruppencontroller gegenwärtig gespeicherten privaten Vektoren der Gruppenmitglieder V1, V2, V3 sind;
    weitere Schritte sind gleich den Schritten 2 bis 4 der Ausführungsform 5.
  • Ausführungsform 7
  • Das sichere Gruppenkommunikationssystem enthalte einen Gruppencontroller (GC) und zwei Gruppennutzer U1 und U2. Der Gruppencontroller ist über das Internet mit jedem Nutzer verbunden. Während der Initialisierung der Gruppe wählt der Gruppencontroller eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, wobei alle Berechnungen in der Gruppe über das endliche Feld ausgeführt werden und die Abbildung f einen Pseudozufallszahlengenerator verwendet.
  • Schritt 1, wenn ein neues Gruppenmitglied U3 der Gruppe beitreten möchte, wählt das neue Gruppenmitglied U3 einen privaten Vektor über das endliche Feld F aus und sendet ihn über den sicheren Kanal an den Gruppencontroller.
  • Der Gruppencontroller weist dem neuen Gruppenmitglied U3 eine laufende Nummer u3 zu und sendet die laufende Nummer an dieses Gruppenmitglied und empfängt daraufhin den privaten Vektor V3 = (v3,0, v3,1) dieses Gruppenmitglieds und hält ihn geheim. Somit sind die gegenwärtig von dem Gruppencontroller gespeicherten privaten Vektoren V1, V2, V3.
  • Weitere Schritte sind gleich den Schritten 2 bis 4 der Ausführungsform 1.
  • Ausführungsform 8
  • Das sichere Gruppenkommunikationssystem enthalte einen Gruppencontroller (GC) und drei Gruppennutzer U1, U2 und U3. Der Gruppencontroller ist über das Internet mit jedem Nutzer verbunden.
  • Während der Initialisierung der Gruppe wählt der Gruppencontroller eine Abbildung f und ein endliches Feld F zur Verwendung durch die Gruppe aus, wobei alle Berechnungen in der Gruppe über das endliche Feld ausgeführt werden und die Abbildung f einen Pseudozufallszahlengenerator verwendet.
  • Schritt 1, wenn das Gruppenmitglied U2 die Gruppe verlassen möchte und ein neues Gruppenmitglied U4 der Gruppe beitreten möchte, wählt das neue Gruppenmitglied U4 einen zweidimensionalen Vektor über das endliche Feld F aus und sendet den Vektor über den sicheren Kanal an den Gruppencontroller.
  • Der Gruppencontroller löscht den privaten Vektor V2 des verlassenden Mitglieds U2 und weist eine laufende Indexnummer i neu zu, um zu ermöglichen, dass das ursprüngliche Gruppenmitglied U3 zu u2 wird, wobei der entsprechende Vektor V2 = (v2,0, v2,1) ist. Der Gruppencontroller weist auf diese Weise dem neuen Mitglied U4 die laufende Nummer u3 zu, das U4 wird zu u3 in der Gruppe und der entsprechende Vektor ist V3 = (v3,0, v3,1). Der Gruppencontroller sendet die laufenden Nummern über den offenen Kanal an alle Mitglieder und die gegenwärtig von dem Gruppencontroller gespeicherten privaten Vektoren der Gruppenmitglieder sind V1, V2, V3.
  • Weitere Schritte sind gleich den Schritten 2 bis 4 der Ausführungsform 5.
  • Es sollte hervorgehoben werden, dass die oben beschriebenen Ausführungsformen frei kombiniert werden können. An der oben beschriebenen Ausführungsform (den oben beschriebenen Ausführungsformen) der Erfindung können viele Änderungen und Abwandlungen vorgenommen werden, ohne wesentlich von dem Erfindungsgedanken und von den Prinzipien der Erfindung abzuweichen. Alle derartigen Abwandlungen und Änderungen sollen hierin im Umfang dieser Offenbarung und der vorliegenden Erfindung enthalten und durch die folgenden Ansprüche geschützt sein.

Claims (10)

  1. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie, wobei der Zugang die folgenden Schritte umfasst: Schritt 1: ein Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus; die Gruppe habe n Gruppenmitglieder, jedes Gruppenmitglied wählt einen m-dimensionalen privaten Vektor über das endliche Feld F aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; der Gruppencontroller weist jedem Gruppenmitglied eine laufende Nummer zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor jedes Gruppenmitglieds und hält ihn geheim; wobei m, n positive ganze Zahlen sind und 2 ≤ m ≤ n ist; Schritt 2: der Gruppencontroller wählt einen Abbildungsparameter in dem endlichen Feld F zufällig aus und bildet die privaten Vektoren aller Gruppenmitglieder unter Verwendung der Abbildung f in Übereinstimmung mit dem Abbildungsparameter in eine neue Menge von Vektoren in einem Vektorraum ab; falls die Menge von Vektoren linear abhängig ist, wird der Abbildungsparameter neu ausgewählt, um eine erneute Abbildung auszuführen, andernfalls wird zu Schritt 1 zurückgekehrt, um zu ermöglichen, dass jedes Gruppenmitglied einen privaten Vektor neu auswählt, bis die neue Menge von Vektoren linear unabhängig ist; Schritt 3: der Gruppencontroller wählt in dem endlichen Feld F eine Zufallszahl als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem; der Gruppencontroller berechnet die eindeutige Lösung des linearen Gleichungssystems, die zentraler Vektor genannt wird, und der zentrale Vektor und der Abbildungsparameter werden durch den Gruppencontroller über den offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet; Schritt 4: nachdem die Gruppenmitglieder den zentralen Vektor und den Abbildungsparameter empfangen haben, wird der private Vektor jedes Gruppenmitglieds in Übereinstimmung mit dem Abbildungsparameter auf einen neuen Vektor in einem Vektorraum abgebildet und wird durch Berechnen des inneren Produkts des neuen Vektors und des zentralen Vektors der Gruppenschlüssel erhalten.
  2. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 1, wobei der Zugang ferner umfasst: Schritt 5: wenn neue Gruppenmitglieder der Gruppe beitreten, wählt jedes neue Gruppenmitglied in dem endlichen Feld F einen m-dimensionalen privaten Vektor aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; der Gruppencontroller weist jedem neuen Gruppenmitglied eine laufende Nummer zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor jedes neuen Gruppenmitglieds und hält ihn geheim; Wiederholung der Schritte 2 bis 4.
  3. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 1, wobei der Zugang ferner umfasst: Schritt 5: wenn Gruppenmitglieder die Gruppe verlassen müssen, beantragt jedes Gruppenmitglied, das die Gruppe verlassen muss, bei dem Gruppencontroller, die Gruppe zu verlassen; der Gruppencontroller löscht die privaten Vektoren der verlassenden Gruppenmitglieder und weist für die verbleibenden Gruppenmitglieder in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Gruppenmitglieder laufende Nummern neu zu und sendet die laufenden Nummern über einen offenen Kanal an alle Gruppenmitglieder; Wiederholung der Schritte 2 bis 4.
  4. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 1, wobei der Schritt 1 durch das Folgende implementiert wird: der Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus; jedes Gruppenmitglied wählt einen m-dimensionalen privaten Vektor über das endliche Feld F aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; wobei m eine positive ganze Zahl und 2 ≤ m ≤ n ist; der Gruppencontroller weist jedem Gruppenmitglied eine laufende Nummer ui zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor Vi = (vi,1, vi,2, ..., vi,m) jedes Gruppenmitglieds und hält ihn geheim, wobei i = 1, ..., n ist; der Schritt 2 wird durch das Folgende implementiert: der Gruppencontroller wählt einen Abbildungsparameter r in dem endlichen Feld F zufällig aus und bildet die privaten Vektoren Vi = (vi,1, vi,2, ..., vi,m) aller Gruppenmitglieder ui über die Abbildung f in Übereinstimmung mit dem Abbildungsparameter r in eine neue Menge von Vektoren ab: für jedes Gruppenmitglied ui mit i = 1, 2, ..., m ist:
    Figure 00310001
    für jedes Gruppenmitglied ui mit i = m + 1, ..., n ist:
    Figure 00310002
    wobei der Gruppencontroller auf diese Weise in dem endlichen Feld F eine neue Menge von Vektoren erhält: für jedes Gruppenmitglied ui mit i = 1, 2, ..., m ist: Xi = (xi,1, xi,2, ..., xi,n), wobei xi,m+1, ..., xi,n 0 sind; für jedes Gruppenmitglied ui mit i = m + 1, ..., n ist: Xi = (xi,1, xi,2, ..., xi,n), wobei xi,2, ..., xi,i-m+1 und xi,i+1, ..., xi,n alle 0 sind; der Gruppencontroller beurteilt, ob X1, X2, Xn linear unabhängig sind, und wenn sie linear unabhängig sind, wird zu Schritt 3 übergegangen; andernfalls wird zu Schritt 2 zurückgekehrt oder wird zu Schritt 1 zurückgekehrt, um zu ermöglichen, dass jedes Gruppenmitglied erneut einen privaten Vektor auswählt; der Schritt 3 wird durch das Folgende implementiert: der Gruppencontroller wählt in dem endlichen Feld F eine Zufallszahl K als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem: es seien a1, a2, ..., an unbekannte Parameter und der Gruppencontroller berechne den zentralen Vektor A = (a1, a2, ..., an) aus dem folgenden linearen Gleichungssystem:
    Figure 00310003
    wobei dieses lineare Gleichungssystem in Vektorform dargestellt ist: X × AT = KT wobei T die Transponierte der Matrix darstellt, der Vektor K = (k, k, ... k) ist, der Vektor A = (a1, a2, ..., an) ist und die Matrix
    Figure 00320001
    ist; da X1, X2, ..., Xn linear unabhängige Vektoren sind und die Determinante der Koeffizientenmatrix |X| ≠ 0 ist, hat dieses lineare Gleichungssystem die eindeutige Lösung; der zentrale Vektor A = (a1, a2, ..., an) und der Abbildungsparameter r werden durch den Gruppencontroller über einen offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet; der Schritt 4 wird durch das Folgende implementiert: nachdem die Gruppenmitglieder den zentralen Vektor A = (a1, a2, ..., an) und den Abbildungsparameter r empfangen haben, wird der private Vektor jedes Gruppenmitglieds ui in Übereinstimmung mit dem Abbildungsparameter r auf einen neuen Vektor in dem Vektorraum abgebildet: für das Gruppenmitglied ui mit i = 1, 2, ..., m ist:
    Figure 00320002
    d. h.: Xi = (xi,1, xi,2, ..., xi,n), wobei xi,m+1, ..., xi,n alle 0 sind; für das Gruppenmitglied ui, wobei i = m + 1, ..., n ist, ist:
    Figure 00320003
    d. h.: Xi = (xi,1, xi,2, ..., xi,n), wobei xi,2, ..., xi,i-m+1 und xi,i+1, ..., xi,n alle 0 sind; daraufhin kann das Gruppenmitglied ui über die unten stehende Gleichung, d. h. über das innere Produkt des Vektors xi und des zentralen Vektors A = (a1, a2, ..., an), den Gruppenschlüssel k berechnen: k = Xi × AT = xi,1a1 + xi,2a2 + ... + xi,nan, wobei T die Transponierte der Matrix ist.
  5. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie, wobei der Zugang die folgenden Schritte umfasst: Schritt 1: ein Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus; die Gruppe habe n Gruppenmitglieder, wobei jedes Gruppenmitglied einen m-dimensionalen privaten Vektor über das endliche Feld F auswählt und den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller sendet; der Gruppencontroller weist jedem Gruppenmitglied eine laufende Nummer zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor jedes Gruppenmitglieds und hält ihn geheim; wobei m, n positive ganze Zahlen sind und 2 ≤ m ≤ n + 1 ist; Schritt 2: nachdem der Gruppencontroller die privaten Vektoren aller Gruppenmitglieder empfangen hat, wählt der Gruppencontroller selbst ebenfalls einen m-dimensionalen privaten Vektor aus und wählt der Gruppencontroller zufällig einen Abbildungsparameter in dem endlichen Feld F aus und bildet den privaten Vektor des Gruppencontrollers und die privaten Vektoren aller Gruppenmitglieder über die Abbildung f in Übereinstimmung mit dem Abbildungsparameter in eine neue Menge von Vektoren ab; wenn die Menge von Vektoren linear abhängig ist, wird der Abbildungsparameter neu ausgewählt, um eine erneute Abbildung vorzunehmen, andernfalls wird zu Schritt 1 zurückgekehrt, um zu veranlassen, dass jedes Gruppenmitglied einen privaten Vektor neu auswählt, bis die neue Menge von Vektoren linear unabhängig ist; Schritt 3: der Gruppencontroller wählt eine Zufallszahl in dem endlichen Feld F als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem; der Gruppencontroller berechnet die eindeutige Lösung des linearen Gleichungssystems, die ein zentraler Vektor genannt wird, und der zentrale Vektor und der Abbildungsparameter werden durch den Gruppencontroller über einen offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet; Schritt 4: nachdem die Gruppenmitglieder den zentralen Vektor und den Abbildungsparameter empfangen haben, wird der private Vektor jedes Gruppenmitglieds in Übereinstimmung mit dem Abbildungsparameter auf einen neuen Vektor in dem Vektorraum abgebildet und durch Berechnen des inneren Produkts des neuen Vektors und des zentralen Vektors der Gruppenschlüssel erhalten.
  6. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 5, wobei der Zugang ferner umfasst: Schritt 5: wenn neue Gruppenmitglieder der Gruppe beitreten, wählt jedes neue Gruppenmitglied in dem endlichen Feld F einen m-dimensionalen privaten Vektor aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; der Gruppencontroller weist jedem neuen Gruppenmitglied eine laufende Nummer zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor jedes neuen Gruppenmitglieds und hält ihn geheim; Wiederholung der Schritte 2 bis 4.
  7. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 5, wobei der Zugang ferner umfasst: Schritt 5: wenn Gruppenmitglieder die Gruppe verlassen müssen, beantragt jedes Gruppenmitglied, das die Gruppe verlassen muss, bei dem Gruppencontroller, die Gruppe zu verlassen; der Gruppencontroller löscht die privaten Vektoren der verlassenden Gruppenmitglieder und weist für die verbleibenden Gruppenmitglieder in Übereinstimmung mit der Größenreihenfolge der Indizes der gegenwärtigen Gruppenmitglieder laufende Nummern neu zu und sendet die laufenden Nummern über einen offenen Kanal an alle Gruppenmitglieder; Wiederholung der Schritte 2 bis 4.
  8. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 5, bei dem der Schritt 1 durch das Folgende implementiert wird: der Gruppencontroller wählt eine Abbildung f und ein endliches Feld F zur Verwendung durch eine Gruppe aus; jedes Gruppenmitglied wählt einen m-dimensionalen privaten Vektor über das endliche Feld F aus und sendet den m-dimensionalen privaten Vektor über einen sicheren Kanal an den Gruppencontroller; wobei m eine positive ganze Zahl ist und 2 ≤ m ≤ n + 1 ist; der Gruppencontroller weist jedem Gruppenmitglied eine laufende Nummer ui zu und sendet sie an es und empfängt den m-dimensionalen privaten Vektor Vi = (vi,0, vi,1, ..., vi,m-1) jedes Gruppenmitglieds und hält ihn geheim, wobei i = 1, ..., n ist; der Schritt 2 wird durch das Folgende implementiert: der Gruppencontroller wählt in dem endlichen Feld F Zufallszahlen v0,0, v0,1, ..., v0,m-1 aus und konstruiert einen m-dimensionalen privaten Vektor von sich selbst V0 = (v0,0, v0,1, ..., vi,m-1 der Gruppencontroller wählt in dem endlichen Feld F einen Abbildungsparameter r aus und bildet private Vektoren Vi = (vi,0, vi,1, ..., vi,m-1) aller Gruppenmitglieder ui und den m-dimensionalen privaten Vektor V0 = (v0,0, v0,1, ..., v0,m-1) über die Abbildung f in Übereinstimmung mit dem Abbildungsparameter r in eine neue Menge von Vektoren ab: für den privaten Vektor des Gruppencontrollers selbst V0 = (v0,0, v0,1, ..., v0,m-1) berechnet der Gruppencontroller:
    Figure 00350001
    für die privaten Vektoren Vi = (vi,0, vi,1, ..., vi,m-1) der Gruppenmitglieder ui mit i = 1, 2, ..., m – 1 berechnet der Gruppencontroller:
    Figure 00350002
    für die privaten Vektoren Vi = (vi,0, vi,1, ..., vi,m-1) der Gruppenmitglieder ui mit i = m, m + 1, ..., n berechnet der Gruppencontroller:
    Figure 00350003
    auf diese Weise erhält der Gruppencontroller eine neue Menge von Vektoren über das endliche Feld F: der neue Vektor X0, der nach der Abbildung des privaten Vektors des Gruppencontrollers erhalten wird, ist: X0 = (x0,0, x0,1, ..., x0,n), wobei x0,m, ..., x0,n alle 0 sind; für den neuen Vektor Xi der Gruppenmitglieder ui mit i = 1, 2, ..., m – 1 ist: Xi = (xi,0, xi,1, ..., xi,n), wobei xi,m, ..., xi,n alle 0 sind; für den neuen Vektor Xi des Gruppenmitglieds ui mit i = m, m + 1, ..., n ist: Xi = xi,0, xi,1, ..., xi,n), wobei xi,1, ..., xi,i-m+1 und xi,i+1, ..., xi,n alle 0 sind; der Gruppencontroller beurteilt, ob X0, X1 ..., Xn linear unabhängig sind, wenn sie linear unabhängig sind, wird zu Schritt 3 übergegangen; andernfalls wird zu Schritt 2 zurückgekehrt oder wird zu Schritt 1 zurückgekehrt, um zu ermöglichen, dass das Gruppenmitglied einen privaten Vektor neu auswählt; der Schritt 3 wird durch das Folgende implementiert der Gruppencontroller wählt eine Zufallszahl k in dem endlichen Feld F als einen Gruppenschlüssel aus und konstruiert unter Verwendung der neuen Menge von Vektoren und des Gruppenschlüssels ein lineares Gleichungssystem: es seien a0, a1, ..., an unbekannte Parameter und der Gruppencontroller löse den zentralen Vektor A = (a0, a1, ..., an) aus dem folgenden linearen Gleichungssystem:
    Figure 00360001
    dieses lineare Gleichungssystem ist in Vektorform dargestellt: X × AT = KT, wobei der Vektor K = (k, k, ..., k) ist, der Vektor A = (a0, a1, ..., an) ist, die Matrix
    Figure 00360002
    ist; da X0, X1 ..., Xn linear unabhängige Vektoren sind und die Determinante der Koeffizientenmatrix |X| ≠ 0 ist, hat dieses lineare Gleichungssystem eine eindeutige Lösung; der zentrale Vektor A = (a0, a1, ..., an) und der Abbildungsparameter r werden durch den Gruppencontroller über einen offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet; der Schritt 4 wird durch das Folgende implementiert: nachdem die Gruppenmitglieder den zentralen Vektor A = (a0, a1, ..., an) und den Abbildungsparameter r empfangen haben, wird der private Vektor des Gruppenmitglieds in Übereinstimmung mit dem Abbildungsparameter r auf einen neuen Vektor in dem Vektorraum abgebildet: für das Gruppenmitglied ui mit i = 1, 2, ..., m – 1 ist:
    Figure 00370001
    d. h.: Xi = (xi,0, xi,1, ..., xi,n), wobei xi,m, ..., xi,n alle 0 sind; für das Gruppenmitglied ui mit i = m, m + 1, ..., n ist
    Figure 00370002
    d. h.: Xi = (xi,0, xi,1, ..., xi,n) wobei xi,1, ..., xi,i-m+1 und xi,i+1, ..., xi,n alle 0 sind; daraufhin berechnen die Gruppenmitglieder ui über die unten stehende Gleichung, d. h. über das innere Produkt des Vektors Xi und des zentralen Vektors A = (a0, a1, ..., an), den Gruppenschlüssel k: k = Xi × AT = xi,0a0 + xi,1a1 + ... + xi,nan,wobei T die Transponierte der Matrix ist.
  9. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 1 oder 5, bei dem der m-dimensionale private Vektor ein zweidimensionaler privater Vektor ist.
  10. Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie nach Anspruch 1 oder 5, bei dem der Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geometrie ferner eine Selbstaktualisierung enthält: falls in einer vorgegebenen Zeitdauer kein Gruppenmitglied der Gruppe beitritt oder sie verlässt, aktualisiert der Gruppencontroller den Gruppenschlüssel periodisch, wählt der Gruppencontroller den Abbildungsparameter und den Gruppenschlüssel neu aus und berechnet den zentralen Vektor und werden der zentrale Vektor und der Abbildungsparameter durch den Gruppencontroller über einen offenen Kanal an alle Gruppenmitglieder rundgesendet oder sammelgesendet.
DE112009005209T 2009-12-24 2009-12-24 Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geomnetrie Withdrawn DE112009005209T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2009/075996 WO2011075902A1 (zh) 2009-12-24 2009-12-24 一种基于线性几何的群组密钥管理方法

Publications (1)

Publication Number Publication Date
DE112009005209T5 true DE112009005209T5 (de) 2012-07-26

Family

ID=44194919

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112009005209T Withdrawn DE112009005209T5 (de) 2009-12-24 2009-12-24 Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geomnetrie

Country Status (3)

Country Link
US (1) US8848921B2 (de)
DE (1) DE112009005209T5 (de)
WO (1) WO2011075902A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201114255D0 (en) * 2011-08-18 2011-10-05 Univ Antwerp Smart sampling and sparse reconstruction
KR20190047143A (ko) * 2013-07-31 2019-05-07 닛본 덴끼 가부시끼가이샤 Mtc 그룹 키 관리를 위한 디바이스들 및 방법
US9871775B2 (en) 2015-08-10 2018-01-16 Cisco Technology, Inc. Group membership block chain
US10951591B1 (en) * 2016-12-20 2021-03-16 Wells Fargo Bank, N.A. SSL encryption with reduced bandwidth
CN110336656A (zh) * 2019-06-04 2019-10-15 湖北大学 一类奇特征有限域上二项式apn函数及其生成方法
CN112583590B (zh) * 2020-12-14 2022-06-17 联芸科技(杭州)有限公司 基于群组共享密钥的信息发布方法及系统
TR2021004081A1 (tr) 2021-03-02 2022-09-21 Istanbul Teknik Ueniversitesi Bilimsel Ararstirma Proje Birim Bi̇r grup anahtari oluşturma yöntemi̇
CN113094763B (zh) * 2021-04-12 2022-03-29 支付宝(杭州)信息技术有限公司 一种保护数据隐私的选择问题处理方法和系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3587751B2 (ja) * 2000-01-25 2004-11-10 村田機械株式会社 共通鍵生成器,暗号通信方法,暗号通信システム及び記録媒体
JP4561252B2 (ja) * 2004-09-03 2010-10-13 ソニー株式会社 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
CN101399660B (zh) * 2007-09-28 2010-11-10 华为技术有限公司 协商组群密钥的方法和设备
CN101431414B (zh) * 2008-12-15 2011-06-29 西安电子科技大学 基于身份的认证群组密钥管理方法
DE112010005596B4 (de) * 2010-05-27 2014-12-31 South China University Of Technology (Scut) Ansatz zur hierarchischen Gruppenschlüsselverwaltung auf Basis linearer Geometrie

Also Published As

Publication number Publication date
WO2011075902A1 (zh) 2011-06-30
US8848921B2 (en) 2014-09-30
US20120263303A1 (en) 2012-10-18

Similar Documents

Publication Publication Date Title
DE112009005209T5 (de) Gruppenschlüsselmanagementzugang auf der Grundlage linearer Geomnetrie
Liu et al. Practical attribute-based encryption: Outsourcing decryption, attribute revocation and policy updating
DE60028645T2 (de) Vorrichtung und Verfahren zur Verteilung von Dokumenten
DE112015006149B4 (de) Verfahren zum Speichern einer Datendatei eines Datenendgeräts in einer Speichereinheit und System sowie Proxyeinheit hierfür
DE112017006020T5 (de) Verfahren und System für suchmusterblinde dynamische symmetrische durchsuchbare Verschlüsselung
DE102019208032A1 (de) Verfahren und system für fehlertolerante und sichere mehrparteienberechnung mit spdz
DE60313519T2 (de) Verfahren zur Erzeugung eines Schlüssels, Inhaltsbereitstellungsverfahren, Entschlüsselungsverfahren für verschlüsselte Inhalte, Verfahren zur Erkennung von illegalen Benutzern, System zum Bereitstellen von Inhalten, Benutzersystem, Verfahren zur Ablaufverfolgung, Verschlüsselungsgerät, Entschlüsselungsgerät, und Computerprogramm
DE112009004334T9 (de) Gruppenschlüssel-Managementverfahren auf Grundlage einer N-dimensionalen Hypersphäre
DE69917356T2 (de) Sicherheitstechnik an einem Computernetzwerk
DE112018001285T5 (de) Kryptografische Schlüsselerzeugung mit Anwendung auf Datendeduplizierung
DE112012007297B3 (de) Passwortgestützte Einzelrunden-Schlüsselaustauschprotokolle
DE102008021933B4 (de) Verfahren zur Bestimmung einer Kette von Schlüsseln, Verfahren zur Übertragung einer Teilkette der Schlüssel, Computersystem und Chipkarte I
EP1793525A1 (de) Verfahren zum Ändern eines Gruppenschlüssels in einer Gruppe von Netzelementen in einem Netz
Nabeel et al. Poster: towards attribute based group key management
EP0903027B1 (de) Verfahren zum gruppenbasierten kryptographischen schlüsselmanagement zwischen einer ersten computereinheit und gruppencomputereinheiten
DE112010005596B4 (de) Ansatz zur hierarchischen Gruppenschlüsselverwaltung auf Basis linearer Geometrie
DE102009001719A1 (de) Verfahren zur Erzeugung von asymmetrischen kryptografischen Schlüsselpaaren
DE102020213105A1 (de) Sichere und effiziente oblivious-direktzugriffsmaschine mit mehreren servern in einer böswilligen ausführungsumgebung
DE202015104126U1 (de) Datenverarbeitungssystem
DE112018002502T5 (de) Cloud-Basiertes Management von Zugriff auf ein Datenspeichersystem auf einem lokalen Netzwerk
Sun et al. Revocable identity-based encryption with server-aided ciphertext evolution
DE112016002392T5 (de) Autorisierung in einem verteilten System unter Verwendung von Zugriffssteuerungslisten und Gruppen
EP1709764A1 (de) Schaltungsanordnung und verfahren zur kommunikationssicherheit innerhalb von kommunikationsnetzen
DE102013019487A1 (de) Verfahren, Vorrichtungen und System zur Online-Datensicherung
DE112021005887T5 (de) Durchsuchbares Verschlüsselungssystem und durchsuchbares Verschlüsselungsverfahren

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee