DE102008015865A1 - Verfahren zur Erzeugung einer digitalen Signatur - Google Patents

Verfahren zur Erzeugung einer digitalen Signatur Download PDF

Info

Publication number
DE102008015865A1
DE102008015865A1 DE200810015865 DE102008015865A DE102008015865A1 DE 102008015865 A1 DE102008015865 A1 DE 102008015865A1 DE 200810015865 DE200810015865 DE 200810015865 DE 102008015865 A DE102008015865 A DE 102008015865A DE 102008015865 A1 DE102008015865 A1 DE 102008015865A1
Authority
DE
Germany
Prior art keywords
signature
message
private key
session keys
calculated
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.)
Granted
Application number
DE200810015865
Other languages
English (en)
Other versions
DE102008015865B4 (de
Inventor
Richard Lindner
Markus Rückert
Johannes Buchmann
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.)
Technische Universitaet Darmstadt
Original Assignee
Technische Universitaet Darmstadt
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 Technische Universitaet Darmstadt filed Critical Technische Universitaet Darmstadt
Priority to DE200810015865 priority Critical patent/DE102008015865B4/de
Publication of DE102008015865A1 publication Critical patent/DE102008015865A1/de
Application granted granted Critical
Publication of DE102008015865B4 publication Critical patent/DE102008015865B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

Ein Verfahren zur Erzeugung einer von einem Empfänger überprüfbaren digitalen Signatur für eine vorgegebene Nachricht m' umfasst die nachfolgenden Schritte: - Auswählen eines privaten Schlüssels f", - Erzeugung eines öffentlichen Schlüssels h' aus dem privaten Schlüssel f" mit Hilfe einer Einwegfunktion, - Auswählen von mindestens zwei Sitzungsschlüsseln k" und l" und Erzeugung einer digitalen Signatur s" für die Nachricht m' unter Verwendung der mindestens zwei Sitzungsschlüssel k" und l" und - Berechnung von mindestens zwei Signaturprüfwerten h1 und h2 unter Verwendung des öffentlichen Schlüssels h' und der mindestens zwei Sitzungsschlüssel k" und l", - wobei die Nachricht m' ein Element einer Teilmenge R_dm des Rings R = Zq[X]/(Xn-1) mit verschiedenen Primzahlen n,q ist und die Teilmenge R_dm die binären oder trinären Polynome des Rings R mit einer vorgegebenen Quersumme dm umfasst, wobei der private Schlüssel f" sowie die Sitzungsschlüssel k" und l" jeweils Elemente von (R_df)2 beziehungsweise (R_dk)2 sind und wobei die Komponenten ki und li der mindestens zwei Sitzungsschlüssel k" und l" jeweils aus einer Teilmenge R_dk der Teilmenge D ausgewählt werden, deren Elemente d' xi D die Eigenschaft d' < d0 aufweisen.

Description

  • Die Erfindung betrifft ein Verfahren zur Erzeugung einer von einem Empfänger überprüfbaren digitalen Signatur für eine vorgegebene Nachricht mit Hilfe eines privaten und eines öffentlichen Schlüssels.
  • Ein zuverlässiger Austausch von Informationen zwischen zwei Beteiligten erfordert insbesondere bei Verwendung von Computern oder vergleichbaren elektronischen Hilfsmitteln eine Möglichkeit, anhand zusätzlicher Informationen die Integrität der übermittelten Nachricht und deren Absender zuverlässig überprüfen zu können. Sofern die übermittelte Nachricht für Dritte nicht lesbar, beziehungsweise deren Inhalt nicht verständlich sein soll, muss die Nachricht während der Übermittlung zusätzlich verschlüsselt werden. Obwohl die vorliegende Erfindung auch die Erkenntnisse der derzeit gängigen Verschlüsselungsverfahren berücksichtigt, bezieht sich die vorliegende Erfindung im Wesentlichen auf die Möglichkeit, elektronisch übermittelte Nachrichten mit einer digitalen Signatur zu versehen, die von dem Empfänger der Nachricht überprüft und anhand derer festgestellt werden kann, ob die Nachricht vom angeblichen Absender stammt und ob diese Nachricht während der Übermittlung möglicherweise verändert wurde.
  • Das nachfolgend beschriebene Verfahren zur Erzeugung einer überprüfbaren digitalen Signatur beruht unter Anderem auf einem privaten Schlüssel, der nur dem Absender bekannt ist, und einem öffentlichen Schlüssel, der dem Empfänger der Nachricht mitgeteilt wird und diesem eine Überprüfung der digitalen Signatur dieser Nachricht ermöglicht.
  • Aus der Praxis sind viele verschiedene Signaturverfahren bekannt. In den meisten Fällen wird bei einer Implementierung der Signaturverfahren ein Kompromiss eingegangen zwischen einer möglichst großen Fälschungssicherheit der erzeugten digitalen Signatur einerseits und einem möglichst geringen Rechen- und Speicheraufwand andererseits, der für die Erzeugung der Signatur und deren anschließende Überprüfung durch den Empfänger erforderlich wird.
  • Bekannte Signaturverfahren, die derzeit in der Praxis verwendet werden, betreffen beispielsweise die RSA-Signatur, die DSA-Signatur oder die ECC-Signatur.
  • Ein auf Ralph Merkle zurückgehendes Signaturverfahren (Ralph C. Merkle, A certified digital signature, in Gilles Brassard, editor, CRYPTO, volume 435 of Lecture Notes in Computer Science, 218–238, Springer, 1989) verwendet kollisionsresistente Hash-Funktionen und Zufallszahlengeneratoren zur Erzeugung von Einmal-Signaturen, bei denen jeder Signaturschlüssel nur ein einziges Mal verwendet wird. Bei derartigen Verfahren sind die Erzeugung der Signaturschlüssel und die Speicherung der privaten Schlüssel durch den Absender sehr aufwändig, so dass derartige Verfahren derzeit in der Praxis kaum Anwendung finden.
  • Auch die bekannten Weiterentwicklungen des von Merkle entwickelten Signaturschemas, die von Winternitz (Nigel P. Smart, editor, Cryptography and Coding, 10th IMA International Conference, Cirencester, UK, December 19–21, 2005, Proceedings, volume 3796 of Lecture Notes in Computer Science, Springer, 2005) sowie von Micciancio und Lyubashevsky (Vadim Lyubashevsky und Daniele Micciancio, Asymptotically efficient lattice-based digital signatures, in Ran Canetti, editor, TCC, volume 4948 of Lecture Notes in Computer Science, 37–54, Springer, 2008) vorgeschlagen wurden, weisen die bereits bekannten Nachteile einer ineffizienten Erzeugung der Einmal-Signaturen sowie der unangemessen großen Signaturlänge auf, die für eine möglichst fälschungssichere digitale Signatur erforderlich erscheinen.
  • Aufgabe der folgenden Erfindung ist es demzufolge, ein Verfahren zur Erzeugung einer überprüfbaren Signatur so auszugestalten, dass mit möglichst geringem Aufwand eine möglichst fälschungssichere Signatur für beliebige Nachrichten erzeugt werden kann.
  • Diese Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren mit den folgenden Schritten:
    • – Auswählen eines privaten Schlüssels f'',
    • – Erzeugung eines öffentlichen Schlüssels h' aus dem privaten Schlüssel f'' mit Hilfe einer Einwegfunktion,
    • – Auswählen von mindestens zwei Sitzungsschlüsseln k'' und l'' und Erzeugung einer digitalen Signatur s'' für die Nachricht m' unter Verwendung der mindestens zwei Sitzungsschlüssel k'' und l'' und
    • – Berechnung von mindestens zwei Signaturprüfwerten h1 und h2 unter Verwendung des öffentlichen Schlüssels h' und der mindestens zwei Sitzungsschlüssel k'' und l'',
    • – wobei die Nachricht m' ein Element einer Teilmenge R_dm des Rings R = Zq[X]/(Xn – 1) mit verschiedenen Primzahlen n, q ist und die Teilmenge R_dm die binären oder trinären Polynome des Rings R mit einer vorgegebenen Quersumme dm umfasst, wobei der private Schlüssel f'' sowie die Sitzungsschlüssel k'' und l'' jeweils Elemente von (R_df)2 beziehungsweise (R_dk)2 mit einer vorgegebenen Quersumme df beziehungsweise dk sind und wobei die Komponenten ki und li der mindestens zwei Sitzungsschlüssel k'' und l'' jeweils aus einer Teilmenge D von R ausgewählt werden, deren Elemente d' ∊ D die Eigenschaft ||d'|| < d0 aufweisen, so dass eine geeignete Norm ||d'|| kleiner als eine in geeigneter Weise vorgegebenen Schranke d0 ist.
  • Dabei werden im Folgenden die üblichen Konventionen und Notationen weitgehend übernommen. Alle Elemente des Rings R, bzw. der jeweiligen Teilmengen R_dm, R_df, R_dk oder D werden mit einem „'” gekennzeichnet, während Elemente der Moduln (R_dm)2, (R_df)2, (R_dk)2 oder D2 jeweils mit „''” gekennzeichnet sind. Es gelten die üblichen mengentheoretischen und algebraischen Annahmen und Rechenvorschriften. Es können jeweils Quersummen der Nachricht m', des privaten Schlüssels f'' sowie der Sitzungsschlüssel k'' und l'' über die jeweiligen Teilmengen R_dm, (R_df)2,(R_dk)2 vorgegeben werden, wobei die Quersummen jeweils ganze Zahlen modulo q sind. Die für die Definition der Teilmenge D verwendete Vorschrift einer Norm ||d'|| kann in Abhängigkeit von der gewünschten Sicherheit und Rechengeschwindigkeit gewählt werden, wobei erste Untersuchungen ergeben haben, dass beispielsweise eine sogenannte Max-Norm oder insbesondere die Euklidische Norm besonders geeignet erscheinen. Die Schranke d0 sollte entweder heuristisch bestimmt oder mit geeigneten Annahmen so vorgegeben werden, dass eine geeignete Beschränkung des Parameterraums D bewirkt wird.
  • Überlegungen und Untersuchungen der Anmelderin haben ergeben, dass durch eine geeignete Beschränkung des Parameterraums (R_df)2 für den privaten Schlüssel f'' sowie des Parameterraums (R_dk)2 für die Sitzungsschlüssel k'' und l'' auf ausgesuchte Elemente des Polynomrings R über die ganzen Zahlen modulo q faktorisiert nach (Xn – 1) einerseits ein geringer Berechnungsaufwand und demzufolge eine kurze Rechenzeit für die Erzeugung der digitalen Signatur erforderlich wird und andererseits eine hinreichende Fälschungssicherheit der erzeugten digitalen Signatur s'' in der Praxis gewährleistet ist.
  • Zu diesem Zweck werden die einzelnen Komponenten des privaten Schlüssels f'' jeweils aus der Teilmenge R_df der binären oder trinären Polgnome des Rings R mit einer vorgegebenen Quersumme ds(f'') = df ausgewählt. Die Komponenten der Sitzungsschlüssel k'' und l'' werden aus der weiterhin eingeschränkten Teilmenge R_dk ausgewählt, die ihrerseits eine Untermenge von D darstellt. Die Quersummen der Sitzungsschlüssel ds(k'') = ds(l'') = dk sind ebenfalls vorgegeben. Durch die Verwendung von binären oder trinären Polynomen lassen sich auch große Nachrichten schnell und effizient mit einer digitalen Signatur versehen.
  • Es hat sich gezeigt, dass es für ausreichend kleine Werte von d0 nahezu unmöglich ist, eine gefälschte Signatur s'' zu erzeugen, die ebenfalls ein Element der Teilmenge D2 ist.
  • Die Schranke d0 kann dabei heuristisch ermittelt oder für geeignete Signaturfunktionen s'' = F(m') theoretisch vorgegeben werden, so dass gültige Signaturen s'' grundsätzlich in der Teilmenge D2 enthalten sind und gefälschte Signaturen s'' jedenfalls mit großer Wahrscheinlichkeit nicht der Teilmenge D2 angehören.
  • Die Schranke d0, welche die Teilmenge D, sollte bei praktischen Anwendungen in geeigneter Weise vorgegeben werden. Je kleiner die Schranke d0 vorgegeben wird, umso fälschungssicherer sind die auf diese Weise erzeugten digitalen Signaturen. Gleichzeitig steigt mit einer zunehmend kleiner werdenden Schranke d0 das Risiko, dass eine gültige Signatur s'' außerhalb der durch d0 definierten Teilmenge D2 liegt und die gültige Signatur s'' als vermeintlich ungültige Signatur verworfen wird.
  • Die Berechnung der Signaturprüfwerte h1 und h2, die dem Empfänger der Nachricht m' übermittelt werden und von diesem zur Verifikatikon der Signatur s'' verwendet werden, sollte möglichst fälschungssicher sein. Vorzugsweise wird bei der Berechnung der mindestens zwei Signaturprüfwerte eine Einweg-Funktion verwendet. Als Einweg-Funktion wird dabei üblicherweise und auch im Zusammenhang mit der vorliegenden Erfindung eine Funktion bezeichnet, mittels derer ausgehend von einem Ausgangswert ein Funktionsergebnis ermittelt werden kann, ohne dass dabei in Kenntnis von dem Ergebniswert der Ausgangswert berechnet oder näher bestimmt werden könnte. Geeignete Einweg-Funktionen sind insbesondere im Zusammenhang mit Verschlüsselungsverfahren hinlänglich bekannt.
  • Einer vorteilhaften Ausgestaltung des Erfindungsgedankens zufolge ist vorgesehen, dass für die Berechnung der mindestens zwei Signaturprüfwerte eine Falltürfunktion verwendet wird. Insbesondere eine Falltürfunktion gemäß dem beispielsweise in (Jeffrey Hoffstein, Jill Pipher, and Joseph H. Silverman. NTRU: A ringbased public key cryptosystem. Algorithmic Number Theory, ANIS-III, Lecture Notes in Computer Science, volume 1423, Springer-Verlag, 1998, Seiten 267–288) beschriebenen NTRU-Verschlüsselungsverfahren erscheint besonders vorteilhaft, da mit geringem Rechenaufwand eine äußerst zuverlässige und fälschungssichere Signatur, beziehungsweise die zugeordneten Signaturprüfwerte erzeugt werden können.
  • Einer besonders vorteilhaften Ausgestaltung des Erfindungsgedankens zufolge ist vorgesehen, dass ausschließlich private Schlüssel f'' mit einer invertierbaren Komponente f1 verwendet werden und der öffentliche Schlüssel h' aus dem privaten Schlüssel f'' gemäß der Bildungsvorschrift h' = f1'–1 f2' berechnet wird. Es sind demzufolge ausschließlich solche privaten Schlüssel f'' aus der Teilmenge (R_df)2 der binären oder trinären Polgnome mit einer vorgegebenen Quersumme df zulässig, für welche die zufällig ausgewählte Komponente f1' innerhalb der Teilmenge R_df invertierbar ist. Sollte der private Schlüssel f'' zufälligerweise so ausgewählt worden sein, dass die Komponente f1' nicht invertierbar ist, so muss dieser private Schlüssel verworfen und ein neuer privater Schlüssel f'' zufällig ausgewählt werden, der diese Bedingung erfüllt.
  • Es ist auch die Erzeugung anderer homomorpher Funktionen unter Verwendung des öffentlichen Schlüssels h' zulässig und möglich. Allerdings hat sich gezeigt, dass die Berechnung des öffentlichen Schlüssels h' gemäß h' = f1'–1 f2' vorteilhaft erscheint.
  • Ausgehend von einem öffentlichen Schlüssel h', der gemäß den vorangehend erörterten Bildungsvorschriften aus dem privaten Schlüssel f'' erzeugt wurde, können im Anschluss daran die Signaturprüfwerte h1 und h2 berechnet werden. Zweckmäßigerweise wird ein beliebiger Signaturprüfwert hi für einen beliebigen Ausgangswert x'' ∊ D2 gemäß hi = h' x1' + x2' berechnet wird. Eine derartige Funktion kann beispielsweise als NTRU-Funktion vorgegeben werden und entspricht als Spezialfall der von Lyubashevsky und Micciancio beschriebenen Falltürfunktion. Da der Ergebniswertebereich üblicherweise größer als der zulässige Wertebereich für die Ausgangswerte der Signaturprüfwerte ist, wird eine derartige Bildungsvorschrift im vorliegenden Zusammenhang nicht als Hashfunktion, sondern zutreffender als Falltürfunktion bezeichnet.
  • Ausgehend von der Nachricht m' kann die Signatur s'' vergleichsweise schnell beispielsweise als eine lineare Funktion s'' = Σ ai m'i mit den einzelnen Koeffizienten ai als gewichtetes Produkt oder als gewichtete Summe der Sitzungsschlüssel k'' und l'' berechnet werden. Die Signaturprüfwerte h1 und h2 werden anschließend als Funktion der einzelnen Koeffizienten hi = h(ai) berechnet.
  • Gemäß einem als besonders vorteilhaft erachteten Ausführungsbeispiel des Erfindungsgedankens ist vorgesehen, dass die Signatur s'' aus der Nachricht m' und dem Sitzungsschlüssel k'' und l'' berechnet wird gemäß s'' = k''·l'' – m'(k'' + l'') und dass die Signaturprüfwerte h1 und h2 berechnet werden gemäß h1 = h(k''·l'') und h2 = h(k'' + l'').
  • Ein wesentlicher Unterschied und Vorteil der vorangehend beschriebenen Erfindung stellt die Beschränkung des zulässigen Wertebereichs dar, aus welchem der private Schlüssel f'' sowie mit weiteren Einschränkungen die Sitzungsschlüssel k'' und l'' ausgewählt werden. Durch die Beschränkung auf binäre und trinäre Polgnome mit jeweils einer vorgegebenen Quersumme lassen sich sowohl die Signatur s'' schnell erzeugen als auch die einzelnen Signaturprüfwerte h1 und h2 berechnen und anschließend von dem Empfänger der Nachricht rasch und zuverlässig überprüfen.
  • Die Erfindung betrifft auch ein Verfahren zur Überprüfung einer Nachricht mit einer Signatur s'', die gemäß einem der vorangehend beschriebenen Verfahren erzeugt wurde, mit den Schritten:
    • – Verwerfen der Signatur s'', falls s'' ∊ D2,
    • – Verwerfen der Signatur s'', falls die Quersumme ds(s1) ≠ ds(s2) ≠ Σ ai dk dmi und
    • – Verwerfen der Signatur s'', falls h(s'') ≠ Σ ai hi(m')i.
  • In allen Fällen sollte auch ohne ausdrückliche Erwähnung berücksichtigt werden, dass aufgrund der zugrunde liegenden Ringstrukturen die jeweiligen Ergebniswerte auf Modulo q bestimmt sind. Die einzelnen Koeffizienten ai dk können dabei in Kenntnis der die Signatur s'' erzeugenden Funktion ohne weiteres bestimmt und vorgegeben werden.
  • So wird beispielsweise die gemäß s'' = k''·l'' – m' (k'' + l'') erzeugte Signatur s'' verworfen, falls die Quersumme ds(s1) ≠ ds(s2) ≠ dk2 – 2 dm dk ist.
  • Nachfolgend wird ein Ausführungsbeispiel näher erläutert, welches in der Zeichnung dargestellt ist. Es zeigt:
  • 1 einen schematisch dargestellten Verfahrensablauf für die Erzeugung einer erfindungsgemäßen Signatur s'' einer Nachricht m' durch den Absender und
  • 2 einen schematisch dargestellten Verfahrensablauf für die Überprüfung der Signatur s'' der Nachricht m' durch den Empfänger.
  • Bei dem in 1 schematisch dargestellten Verfahrensablauf werden in einem ersten Verfahrensschritt 1 zunächst die folgenden Ausgangswerte vorgegeben:
    Verschiedene Primzahlen n und q, Nachricht m' ∊ R_dm mit der Quersumme dm, Quersummen df und dk und Schranke d0.
  • Mit den Primzahlen n und q wird der diesem Verfahren zu Grunde liegende Polynomring R über den ganzen Zahlen modulo q faktorisiert nach dem Polynom (Xn – 1) definiert. Die Teilmenge R_d enthält die binären oder trinären Polgnome des Polynomrings R mit Quersumme d. Die Verwendung von ausschließlich binären oder trinären Polynomen kann dabei wahlweise vorgegeben werden. Über die Schranke d0 wird eine Teilmenge D ⊆ R definiert, deren Elemente d' jeweils eine Euklidische Norm kleiner d0 aufweisen.
  • In einem anschließenden Verfahrensschritt 2 wird ein privater Schlüssel f'' ∊ (R_df)2 mit den Komponenten f1' und f2' und mit der Quersumme ds(f1') = ds(f2') = df zufällig ausgewählt. Weiterhin werden zwei Sitzungsschlüssel k'', l'' ∊ (R_dk)2 zufällig ausgewählt.
  • In einem nachfolgenden Verfahrensschritt 3 wird überprüft, ob die Komponente f1' invertierbar in R ist. Falls nicht, wird der zufällig ausgewählte private Schlüssel f'' verworfen und ein neuer privater Schlüssel f'' zufällig ausgewählt.
  • In einem Verfahrensschritt 4 wird aus dem privaten Schlüssel f'' der öffentliche Schlüssel h' gemäß h' = f1'–1 f2' erzeugt.
  • In einem anschließenden Verfahrensschritt 5 werden die Signatur s'' gemäß s'' = k''·l'' – m' (k'' + l'') sowie die Signaturprüfwerte h1 = h(k''·l'') und h2 = h(k'' + l'') berechnet, wobei die Funktion h(x'') für beliebige Elemente x'' ∊ D definiert ist als h(x'') = h' x1 + x2.
  • Die Nachricht m', die Signatur s'', sowie die Signaturprüfwerte h1 und h2 müssen an einen Empfänger der Nachricht m' übermittelt werden. Zudem müssen die Werte für die Quersummen dm und dk, die zur Ermittlung der Signaturprüfwerte verwendete Funktion h(x'') = h' x1 + x2 und die Schranke d0 dem Empfänger oder der von ihm verwendeten Software bekannt sein oder ihm ebenfalls übermittelt werden.
  • Der Empfänger überprüft in einem ersten Verfahrensschritt 6 anhand des ihm bekannten öffentlichen Schlüssels h', ob für den von Ihm zu berechnenden Signaturprüfwert h(s'') = h1 – m' h2 erfüllt ist. Falls nicht, so wird die Signatur s'' und damit die Nachricht m' als ungültig verworfen.
  • In einem weiteren Verfahrensschritt 7 prüft der Empfänger dann, ob die Quersummen der Signatur s'' der folgenden Bedingung genügen: ds(s1') = ds(s2') = dk2 – 2 dm dk. Falls nicht, so wird die Signatur s'' und damit die Nachricht m' ebenfalls als ungültig verworfen.
  • In einem weiteren Verfahrensschritt 8 prüft der Empfänger schließlich auch, ob die Signatur s'' ein Element der mittels der Schranke d0 beschränkten Teilmenge D2 ist und würde die Signatur s'' als ungültig, bzw. als gefälscht verwerfen, falls s'' kein Element von D2 wäre.
  • Nur wenn die mit der Nachricht m' erhaltene Signatur s'' alle vorangehend genannten Bedingungen erfüllt, wird die Signatur s'' als gültiger Nachweis für die Authentizität und die Integrität der Nachricht m' anerkannt und die Nachricht m' in einem anschließenden Verfahrensschritt 9 ausgewertet. Die Reihenfolge der einzelnen Verfahrensschritte 6 bis 8 ist für die Auswertung im Ergebnis ohne Bedeutung und kann anhand praktischer Erwägungen frei vorgegeben oder für jeden Einzelfall gewählt werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • - Ralph C. Merkle, A certified digital signature, in Gilles Brassard, editor, CRYPTO, volume 435 of Lecture Notes in Computer Science, 218–238, Springer, 1989 [0006]
    • - Nigel P. Smart, editor, Cryptography and Coding, 10th IMA International Conference, Cirencester, UK, December 19–21, 2005, Proceedings, volume 3796 of Lecture Notes in Computer Science, Springer, 2005 [0007]
    • - Vadim Lyubashevsky und Daniele Micciancio, Asymptotically efficient lattice-based digital signatures, in Ran Canetti, editor, TCC, volume 4948 of Lecture Notes in Computer Science, 37–54, Springer, 2008 [0007]
    • - Jeffrey Hoffstein, Jill Pipher, and Joseph H. Silverman. NTRU: A ringbased public key cryptosystem. Algorithmic Number Theory, ANIS-III, Lecture Notes in Computer Science, volume 1423, Springer-Verlag, 1998, Seiten 267–288 [0017]

Claims (10)

  1. Verfahren zur Erzeugung einer von einem Empfänger überprüfbaren digitalen Signatur für eine vorgegebene Nachricht m' mit den Schritten: – Auswählen eines privaten Schlüssels f'', – Erzeugung eines öffentlichen Schlüssels h' aus dem privaten Schlüssel f'' mit Hilfe einer Einwegfunktion, – Auswählen von mindestens zwei Sitzungsschlüsseln k'' und l'' und Erzeugung einer digitalen Signatur s'' für die Nachricht m' unter Verwendung der mindestens zwei Sitzungsschlüssel k'' und l'' und – Berechnung von mindestens zwei Signaturprüfwerten h1 und h2 unter Verwendung des öffentlichen Schlüssels h' und der mindestens zwei Sitzungsschlüssel k'' und l'', – wobei die Nachricht m' ein Element einer Teilmenge R_dm des Rings R = Zq[X]/(Xn – 1) mit verschiedenen Primzahlen n, q ist und die Teilmenge R_dm die binären oder trinären Polgnome des Rings R mit einer vorgegebenen Quersumme dm umfasst, wobei der private Schlüssel f'' sowie die Sitzungsschlüssel k'' und l'' jeweils Elemente von (R_df)2 beziehungsweise (R_dk)2 sind und wobei die Komponenten ki und li der mindestens zwei Sitzungsschlüssel k'' und l'' jeweils aus einer Teilmenge R_dk der Teilmenge D ausgewählt werden, deren Elemente d' ∊ D die Eigenschaft ||d'|| < d0 aufweisen.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass bei der Berechnung der mindestens zwei Signaturprüfwerte eine Einweg-Funktion verwendet wird.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass bei der Berechnung der mindestens zwei Signaturprüfwerte eine Falltürfunktion verwendet wird.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass bei der Berechnung der mindestens zwei Signaturprüfwerte eine Falltürfunktion gemäß des NTRU-Schemas verwendet wird.
  5. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass nur private Schlüssel f'' mit einer invertierbaren Komponente f1' verwendet werden und der öffentliche Schlüssel h' aus dem privaten Schlüssel f'' gemäß h' = f1'–1 f2' berechnet wird.
  6. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Signaturprüfwerte h1 und h2 für einen Ausgangswert x'' ∊ D2 berechnet werden gemäß h = h' x1' + x2'
  7. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Signatur s'' aus der Nachricht m' und den Sitzungsschlüsseln k'' und l'' berechnet wird mittels einer linearen Funktion s'' = Σai m'i (i = 0,1) und Koeffizienten ai, die ihrerseits gegebenenfalls gewichtete Produkte oder Summen der Sitzungsschlüssel k'' und l'' sind, und dass die Signaturprüfwerte h1 und h2 berechnet werden als Funktion der einzelnen Koeffizienten h(ai).
  8. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Signatur s'' aus der Nachricht m' und den Sitzungsschlüsseln k'' und l'' berechnet wird gemäß s'' = k''·l'' – m' (k'' + l'') und dass die Signaturprüfwerte h1 und h2 berechnet werden gemäß h1 = h(k''·l'') und h2 = h(k'' + l'').
  9. Verfahren zur Überprüfung einer Nachricht mit einer Signatur s'', die gemäß einem der vorangehend beschriebenen Verfahren erzeugt wurde, mit den Schritten: – Verwerfen der Signatur s'', falls s''
    Figure 00150001
    D2, – Verwerfen der Signatur s'', falls die Quersumme ds(s1) ≠ ds(s2) ≠ Σai dk dmi und – Verwerfen der Signatur s'', falls h(s'') ≠ ao h1 + a1 h2 m'
  10. Verfahren nach Anspruch 9 für eine Signatur, die gemäß Anspruch 8 berechnet wurde, dadurch gekennzeichnet, dass die Signatur s'' verworfen wird, falls die Quersumme ds(s1) ≠ ds(s2) ≠ dk2 – 2 dm dk ist.
DE200810015865 2008-03-26 2008-03-26 Verfahren zur Erzeugung einer digitalen Signatur Expired - Fee Related DE102008015865B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE200810015865 DE102008015865B4 (de) 2008-03-26 2008-03-26 Verfahren zur Erzeugung einer digitalen Signatur

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200810015865 DE102008015865B4 (de) 2008-03-26 2008-03-26 Verfahren zur Erzeugung einer digitalen Signatur

Publications (2)

Publication Number Publication Date
DE102008015865A1 true DE102008015865A1 (de) 2009-10-01
DE102008015865B4 DE102008015865B4 (de) 2011-03-31

Family

ID=41011083

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200810015865 Expired - Fee Related DE102008015865B4 (de) 2008-03-26 2008-03-26 Verfahren zur Erzeugung einer digitalen Signatur

Country Status (1)

Country Link
DE (1) DE102008015865B4 (de)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308097B2 (en) * 2001-12-07 2007-12-11 Ntru Cryptosystems, Inc. Digital signature and authentication method and apparatus
EP1873965A1 (de) * 2005-04-18 2008-01-02 Matsushita Electric Industrial Co., Ltd. Signaturerzeugungsvorrichtung und signaturverifizierungsvorrichtung

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Jeffrey Hoffstein, Jill Pipher, and Joseph H. Silverman. NTRU: A ringbased public key cryptosystem. Algorithmic Number Theory, ANIS-III, Lecture Notes in Computer Science, volume 1423, Springer-Verlag, 1998, Seiten 267-288
Nigel P. Smart, editor, Cryptography and Coding, 10th IMA International Conference, Cirencester, UK, December 19-21, 2005, Proceedings, volume 3796 of Lecture Notes in Computer Science, Springer, 2005
Ralph C. Merkle, A certified digital signature, in Gilles Brassard, editor, CRYPTO, volume 435 of Lecture Notes in Computer Science, 218-238, Springer, 1989
Vadim Lyubashevsky und Daniele Micciancio, Asymptotically efficient lattice-based digital signatures, in Ran Canetti, editor, TCC, volume 4948 of Lecture Notes in Computer Science, 37-54, Springer, 2008

Also Published As

Publication number Publication date
DE102008015865B4 (de) 2011-03-31

Similar Documents

Publication Publication Date Title
DE69333068T2 (de) Verfahren zur ausdehnung der gültigkeit eines kryptographischen zertifikats
DE69327238T2 (de) Verfahren zur digitalen Unterschrift und Verfahren zur Schlüsselübereinkunft
DE60133266T2 (de) Verfahren und Vorrichtung zum Schutz der Datenintegrität
DE69920875T2 (de) Vorrichtung und Verfahren zum Berechnen einer digitalen Unterschrift
DE102011011652B4 (de) Verfahren zum Verwenden eines ECDSA mit Winternitzeinmalsignatur
DE60035317T2 (de) Verfahren zur hybriden digitalen Unterschrift
DE602005002652T2 (de) System und Verfahren für das Erneuern von Schlüsseln, welche in Public-Key Kryptographie genutzt werden
DE102020101358A1 (de) Selektive Echtzeit-Kryptographie in einem Fahrzeugkommunikationsnetz
EP2240848A1 (de) Schaltung und verfahren zur generierung einer echten, schaltungsspezifischen und zeitinvarianten zufallszahl
EP1214812A1 (de) Verfahren zum schutz von daten
DE102009002396A1 (de) Verfahren zum Manipulationsschutz eines Sensors und von Sensordaten des Sensors und einen Sensor hierzu
DE102016210786A1 (de) Komponente zur Anbindung an einen Datenbus und Verfahren zur Umsetzung einer kryptografischen Funktionalität in einer solchen Komponente
DE112012000971T5 (de) Datenverschlüsselung
DE102008055076A1 (de) Vorrichtung und Verfahren zum Schutz von Daten, Computerprogramm, Computerprogrammprodukt
DE102012209408A1 (de) Sichere Übertragung einer Nachricht
EP3552344A1 (de) Bidirektional verkettete blockchainstruktur
EP0739108B1 (de) Verfahren zum Signieren einer Nachricht unter Verwendung eines Kryptosystems mit öffentlichem Schlüssel
DE19720249A1 (de) Digitales Unterschriftenprotokoll mit verringerter Bandbreite
DE102016205122A1 (de) Verfahren zum Austausch von Nachrichten zwischen sicherheitsrelevanten Vorrichtungen
EP2730050B1 (de) Verfahren zur erstellung und überprüfung einer elektronischen pseudonymen signatur
DE102008015865B4 (de) Verfahren zur Erzeugung einer digitalen Signatur
WO2020126236A1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem
DE68929263T2 (de) Blindunterschriftensysteme mit einer einzigen vorlage
EP3618348A1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem
EP3617976A1 (de) Verfahren zum betreiben eines verteilten datenbanksystems, verteiltes datenbanksystem und industrieautomatisierungssystem

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R020 Patent grant now final
R020 Patent grant now final

Effective date: 20110817

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20131001