CH708240A2 - Signaturprotokoll und Gerät zu dessen Umsetzung. - Google Patents

Signaturprotokoll und Gerät zu dessen Umsetzung. Download PDF

Info

Publication number
CH708240A2
CH708240A2 CH9722014A CH9722014A CH708240A2 CH 708240 A2 CH708240 A2 CH 708240A2 CH 9722014 A CH9722014 A CH 9722014A CH 9722014 A CH9722014 A CH 9722014A CH 708240 A2 CH708240 A2 CH 708240A2
Authority
CH
Switzerland
Prior art keywords
key
message
signature
coordinate
session key
Prior art date
Application number
CH9722014A
Other languages
English (en)
Inventor
Robert Gallant
Herb Little
Scott A Vanstone
Adrian Antipa
Original Assignee
Infosec Global Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infosec Global Inc filed Critical Infosec Global Inc
Publication of CH708240A2 publication Critical patent/CH708240A2/de

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
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes

Landscapes

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

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zum Generieren einer kryptografischer Signatur mit elliptischen Kurven und ein kryptografisches Korrespondentengerät zur Ausführung des erfindungsgemässen Verfahrens. Das Gerät (12) umfasst ein Kommunikationsmodul (20), einen Speicher (22), ein gesichertes Speichermodul (24), eine arithmetische Logikeinheit (26) und einen Generator (28) von Zufalls- oder Pseudozufallszahlen. Das Verfahren benutzt je einen öffentlichen und einen privaten Sitzungsschlüssel, welche mit der zu verschlüsselnden Nachricht kombiniert werden.

Description

TECHNISCHES GEBIET
[0001] Die vorliegende Erfindung betrifft Datenkommunikationssysteme und Protokolle, die in derartigen Systemen verwendet werden.
ALLGEMEINER STAND DER TECHNIK
[0002] Datenkommunikationssysteme werden verwendet, um Informationen zwischen Geräten auszutauschen. Die auszutauschenden Informationen umfassen Daten, die als Folgen von digitalen Bits organisiert sind, die formatiert sind, um für andere Geräte erkennbar zu sein und die Verarbeitung und/oder Wiederherstellung der Informationen zu erlauben.
[0003] Der Informationsaustausch kann über ein öffentlich zugängliches Netzwerk erfolgen, wie etwa über eine Kommunikationsverbindung zwischen zwei Geräten, über ein dediziertes Netzwerk innerhalb eines Betriebs oder kann zwischen zwei Geräten innerhalb der gleichen dedizierten Komponente erfolgen, wie etwa innerhalb eines Computers oder eines Verkaufsstellengeräts.
[0004] Die Geräte können von relativ grossen Computersystemen bis zu Telekommunikationsgeräten, Mobiltelefonen, Überwachungsgeräten, Sensoren, elektronischen Geldbörsen und Chipkarten und zahlreichen Geräten, die verbunden sind, um Daten zwischen zwei oder mehreren derartigen Geräten zu übertragen, reichen.
[0005] Es wurde eine grosse Anzahl von Kommunikationsprotokollen entwickelt, um den Austausch von Daten zwischen verschiedenen Geräten zu ermöglichen. Die Kommunikationsprotokolle ermöglichen den Austausch von Daten auf robuste Art und Weise, häufig mit einer Funktion der Fehlerkorrektur und Fehlerermittlung, und das die Daten dem beabsichtigten Empfänger zugeleitet und zur weiteren Verwendung wiederhergestellt werden.
[0006] Da die Daten für andere Geräte zugänglich sein können, sind sie für Abfangen und Beobachtung oder Manipulation anfällig. Die Empfindlichkeit der Informationen erfordert, dass Massnahmen getroffen werden, um die Informationen zu sichern und ihre Integrität sicherzustellen.
[0007] Eine gewisse Anzahl von Techniken, die insgesamt als Verschlüsselungsprotokolle und Authentifizierungsprotokolle bezeichnet werden, wurden entwickelt, um die notwendigen Attribute bereitzustellen und die Sicherheit und/oder Integrität beim Austausch von Informationen sicherzustellen. Diese Techniken verwenden einen Schlüssel, der mit den Daten kombiniert wird.
[0008] Es gibt zwei Hauptarten von Kryptosystemen, welche die Protokolle umsetzen, nämlich Kryptosysteme mit symmetrischem Schlüssel und Kryptosysteme mit asymmetrischem oder öffentlichen Schlüssel. Bei einem Kryptosystem mit symmetrischem Schlüssel teilen die Geräte, die Informationen austauschen, einen gemeinsamen Schlüssel, der nur den Geräten bekannt ist, die dazu gedacht sind, die Informationen zu teilen. Systeme mit symmetrischem Schlüssel bieten den Vorteil, dass sie relativ schnell sind und demnach in der Lage sind, auch mit begrenzter Rechenleistung grosse Datenmengen in relativ kurzer Zeit zu verarbeiten. Die Schlüssel müssen jedoch auf gesicherte Art und Weise an die verschiedenen Geräte ausgeteilt werden, was zu erhöhtem Aufwand und grösserer Anfälligkeit führt, wenn der Schlüssel fragwürdig ist.
[0009] Kryptosysteme mit öffentlichem Schlüssel verwenden ein mit jedem Gerät verknüpftes Paar Schlüssel, von denen einer öffentlich und der andere privat ist. Der öffentliche Schlüssel und der private Schlüssel stehen durch ein «schwieriges» mathematisches Problem in Zusammenhang, so dass selbst wenn der öffentliche Schlüssel und das zugrundeliegende Problem bekannt sind, der private Schlüssel nicht in einem machbaren Zeitraum wiederhergestellt werden kann. Ein derartiges Problem ist die Faktorisierung des Produkts zweier grosser Primzahlen, wie sie bei RSA-Kryptosystemen verwendet wird. Ein anderes ist das diskrete Logarithmusproblem in einer endlichen zyklischen Gruppe. Ein Generator, a, der zugrundeliegenden Gruppe wird als Systemparameter identifiziert, und eine zufällige Ganzzahl, k, wird zur Verwendung als privater Schlüssel generiert. Um einen öffentlichen Schlüssel, K, zu erzielen, wird eine k-fache Gruppenoperation ausgeführt, so dass K = f (α, k).
[0010] Es können verschiedene Gruppen in Kryptosystemen mit diskretem Logarithmus verwendet werden, wozu die multiplikative Gruppe eines endlichen Felds, die Gruppe von Ganzzahlen in einer endlichen zyklischen Gruppe p. Ordnung, die gewöhnlich mit Zp* bezeichnet wird und aus den Ganzzahlen 0 bis p-1 besteht, gehören. Die Gruppenoperation ist eine Multiplikation, so dass K = f(α<k>).
[0011] Eine andere Gruppe, die zur besseren Sicherheit verwendet wird, ist eine elliptische Kurvengruppe. Die elliptische Kurvengruppe besteht aus Paaren von Elementen, von denen eines mit X und das andere mit Y bezeichnet wird, in einem Feld, das die Gleichung der gewählten elliptischen Kurve erfüllt. Für eine Gruppe p. Ordnung würde die Beziehung im Allgemeinen durch y<2>= x<3>+ ax + b mod p definiert. Andere Kurven werden für unterschiedliche zugrundeliegende Felder verwendet. Jedes derartige Elementpaar ist ein Punkt auf der Kurve, und ein Generator der Gruppe oder einer geeigneten Untergruppe wird als Punkt P bezeichnet. Die Gruppenoperation ist eine Addition, so dass ein privater Schlüssel k einen entsprechenden öffentlichen Schlüssel f(kP) aufweist.
[0012] Kryptosysteme mit öffentlichen Schlüsseln reduzieren die Infrastruktur, die bei Kryptosystemen mit symmetrischen Schlüsseln notwendig ist. Ein Gerät generiert ein Schlüsselpaar, indem es eine Ganzzahl k erzielt, die als privater Schlüssel verwendet wird, und eine k-fache Gruppenoperation ausführt, um den entsprechenden öffentlichen Schlüssel zu generieren. In einer elliptischen Kurvengruppe wäre dies kP. Der öffentliche Schlüssel wird veröffentlicht, so dass er anderen Geräten zur Verfügung steht.
[0013] Die Geräte können dann das Schlüsselpaar bei Kommunikationen miteinander verwenden. Falls ein Gerät eine Nachricht verschlüsseln möchte, die an ein anderes Gerät gesendet werden soll, verwendet es den öffentlichen Schlüssel des beabsichtigten Empfängers in einem Verschlüsselungsprotokoll. Die Nachricht kann von dem anderen Gerät unter Verwendung des privaten Schlüssels entschlüsselt und wiederhergestellt werden.
[0014] Um den Empfänger von der Integrität einer Nachricht zu überzeugen, kann das Gerät auch das Schlüsselpaar in einem digitalen Signaturprotokoll verwenden. Die Nachricht wird unter Verwendung des privaten Schlüssels k signiert und andere Geräte können die Integrität der Nachricht unter Verwendung des öffentlichen Schlüssels kP bestätigen.
[0015] Eine digitale Signatur ist eine computerlesbare Datenfolge (oder Zahl), die eine Nachricht mit dem Autor dieser Datenfolge verknüpft. Ein Algorithmus zum Generieren einer digitalen Signatur ist ein Verfahren zum Erzeugen digitaler Signaturen.
[0016] Digitale Signaturmethoden sind ausgelegt, um das digitale Gegenstück zu handschriftlichen Unterschriften (und dergleichen) bereitzustellen. Eine digitale Signatur ist eine Zahl, die von einer geheimen Information, die nur dem Unterzeichner bekannt ist (der private Schlüssel des Unterzeichners), und zusätzlich von dem Inhalt der zu unterzeichnenden Nachricht abhängig ist.
[0017] Signaturen müssen überprüfbar sein – wenn es zu einem Konflikt kommt, ob eine Entität ein Dokument unterzeichnet hat, muss ein unvoreingenommener Dritter in der Lage sein, die Sache gerecht zu lösen, ohne den Zugriff auf den privaten Schlüssel des Unterzeichners zu benötigen. Es kann zu Konflikten kommen, wenn ein Unterzeichner versucht, eine Signatur abzustreiten, die er tatsächlich angelegt hat, oder wenn ein Fälscher einen arglistigen Anspruch erhebt.
[0018] Die drei grundlegenden verschiedenen Signaturarten sind folgende: <tb>1)<SEP>Eine digitale Signaturmethode mit Anhang, welche die ursprüngliche Nachricht als Eingabe für den Überprüfungsprozess benötigt. <tb>2)<SEP>Eine digitale Signaturmethode mit Nachrichtenwiederherstellung, welche die ursprüngliche Nachricht nicht als Eingabe für den Überprüfungsprozess benötigt. Typischerweise wird die ursprüngliche Nachricht während der Überprüfung wiederhergestellt. <tb>3)<SEP>Eine digitale Signaturmethode mit teilweiser Nachrichtenwiederherstellung, die nur benötigt, dass ein Teil der Nachricht wiederhergestellt wird.
[0019] Die vorliegende Anmeldung betrifft asymmetrische digitale Signaturmethoden mit Anhang. Wie zuvor besprochen, bedeutet asymmetrisch, dass jede Entität ein Schlüsselpaar auswählt, das aus einem privaten Schlüssel und einem damit zusammenhängenden öffentlichen Schlüssel besteht. Die Entität bewahrt die Geheimhaltung des privaten Schlüssels, den sie zum Unterzeichnen von Nachrichten verwendet, und legt authentische Kopien ihres öffentlichen Schlüssels an, der für andere Entitäten verfügbar ist, die ihn verwenden, um Signaturen zu überprüfen. Gewöhnlich bedeutet ein Anhang, dass eine kryptografische Hash-Funktion verwendet wird, um eine Kurzfassung der Nachricht anzulegen, und die Unterzeichnungsumwandlung wird auf die Kurzfassung statt auf die Nachricht selber angewandt.
[0020] Eine digitale Signatur muss gesichert sein, wenn sie ihre Funktion der Nicht-Ablehnung erfüllen soll. Gegen digitale Signaturen sind verschiedenartige Angriffe bekannt. Zu den Angriffsarten auf digitale Signaturen gehören folgende: <tb>1.<SEP>Nur-Schlüssel-Angriff: Ein Gegner verfügt nur über den öffentlichen Schlüssel des Unterzeichners. <tb>2.<SEP>Bekannter Signaturangriff: Ein Gegner kennt den öffentlichen Schlüssel des Unterzeichners und verfügt über Nachrichten/Signatur-Paare, die von dem Unterzeichner gewählt und erzeugt werden. <tb>3.<SEP>Angriff auf bestimmte Nachrichten: Der Gegner wählt Nachrichten, die von dem Unterzeichner unterzeichnet sind, in diesem Fall dient der Unterzeichner als Orakel.
[0021] Angriffe auf digitale Signaturen können zu den folgenden Einbrüchen führen: <tb>1.<SEP>Vollständiger Einbruch: Ein Gegner ist entweder in der Lage, die privaten Schlüsselinformationen des Unterzeichners zu berechnen, oder er findet einen wirksamen alternativen Signaturalgorithmus. <tb>2.<SEP>Selektive Fälschung: Ein Gegner ist in der Lage, für eine bestimmte Nachricht eine gültige Signatur anzulegen. <tb>3.<SEP>Bestandsfälschung: Ein Gegner ist in der Lage, eine Signatur für mindestens eine Nachricht zu fälschen. <tb>4.<SEP>Universelle Fälschung: Ein Gegner kann jede beliebige Nachricht ohne den geheimen Schlüssel fälschen.
[0022] Im Idealfall muss eine digitale Signaturmethode im Falle eines Angriffs auf eine ausgewählte Nachricht bestandsmässig fälschungssicher sein. Dieser Begriff der Sicherheit wurde von Goldwasser, Micali und Rivest eingeführt. Informell behauptet er, dass ein Gegner, der in der Lage ist, die Signaturen einer Entität für beliebige Nachrichten seiner Wahl zu erzielen, nicht in der Lage ist, eine Signatur dieser Entität an einer einzelnen anderen Nachricht erfolgreich zu fälschen.
[0023] Digitale Signaturmethoden können verwendet werden, um die folgenden grundlegenden kryptografischen Dienste bereitzustellen: Datenintegrität (die Gewissheit, dass die Daten nicht durch unerlaubte oder unbekannte Mittel geändert wurden), Authentifizierung des Datenursprungs (die Gewissheit, dass die Quelle der Daten wie beansprucht ist) und Nichtabstreitbarkeit (die Gewissheit, dass eine Entität keine früheren Aktionen oder Verpflichtungen verweigern kann). Digitale Signaturmethoden werden bei kryptografischen Protokollen gewöhnlich als Primitive verwendet, die andere Dienste leisten, wozu die Authentifizierung von Entitäten, der authentifizierte Schlüsseltransport und die authentifizierte Schlüsseleinigung gehören.
[0024] Die digitalen Signaturmethoden, die heutzutage verwendet werden, können gemäss dem schwierigen zugrundeliegenden mathematischen Problem klassifiziert werden, das die Grundlage für ihre Sicherheit bereitstellt: <tb>1.<SEP>Methoden mit Ganzzahlfaktorisierung (IF), die ihre Sicherheit auf der Unlösbarkeit des Problems der Ganzzahlfaktorisierung basieren. Beispiele davon umfassen die Signaturmethoden RSA und Rabin. <tb>2.<SEP>Methoden mit diskretem Logarithmus (DL), die ihre Sicherheit auf der Unlösbarkeit des (normalen) diskreten Logarithmusproblems in einem endlichen Feld basieren. Beispiele davon umfassen die Signaturmethoden ElGamal, Schnorr, DSA und Nyberg-Rueppel. <tb>3.<SEP>Methoden mit elliptischen Kurven (EC), die ihre Sicherheit auf der Unlösbarkeit des diskreten Logarithmusproblems mit elliptischen Kurven basieren.
[0025] Eine weit verbreitete Signaturmethode ist der digitale Signaturalgorithmus mit elliptischen Kurven (ECDSA). Um die Signatur zu generieren, ist es notwendig, die Nachricht zu verwürfeln und einen öffentlichen Sitzungsschlüssel aus einer zufälligen Ganzzahl zu generieren. Eine Signaturkomponente wird durch modulare Reduktion einer Koordinate des Punktes, der den öffentlichen Sitzungsschlüssel darstellt, erzielt, und die andere Signaturkomponente kombiniert die verwürfelten und privaten Schlüssel des Unterzeichners. Dies erfordert die Umkehrung des privaten Sitzungsschlüssels, was relativ rechenintensiv sein kann.
[0026] Die Überprüfung erfordert die Verwürfelung der Nachricht und die Umkehrung der anderen Komponente. Diverse mathematische Techniken wurden entwickelt, um das Unterzeichnen und Überprüfen effizient zu machen, die Verwürfelung und die modulare Reduktion bleiben jedoch rechenintensiv.
[0027] Es ist eine Aufgabe der vorliegenden Erfindung, eine Signaturmethode bereitzustellen, bei der die obigen Nachteile vermieden oder gemindert werden können.
KURZDARSTELLUNG
[0028] Nach einem Aspekt wird ein Verfahren bereitgestellt, um eine kryptografische Signatur mit elliptischen Kurven für eine Nachricht unter Verwendung eines langfristigen privaten Schlüssels, eines privaten Sitzungsschlüssels und eines öffentlichen Sitzungsschlüssels, der aus einem privaten Sitzungsschlüssel generiert wird, zu generieren, wobei das Verfahren die folgenden Schritte umfasst: Generieren einer ersten Signaturkomponente unter Verwendung einer X-Koordinate des öffentlichen Sitzungsschlüssels; Generieren eines Zwischenwertes durch Kombinieren der Nachricht und der X-Koordinate; und Generieren einer zweiten Signaturkomponente durch Kombinieren des langfristigen privaten Schlüssels, des privaten Sitzungsschlüssels und des Zwischenwertes.
[0029] Nach einem anderen Aspekt wird ein kryptografisches Korrespondentengerät bereitgestellt, wobei das Gerät einen Prozessor und einen Speicher umfasst, wobei in dem Speicher ein langfristiger privater Schlüssel gespeichert ist, wobei mit dem Gerät ferner ein kryptografischer entsprechender langfristiger öffentlicher Schlüssel, der unter Verwendung des langfristigen privaten Schlüssels und eines kryptografischen Generators generiert wird, und eine Identität verknüpft sind, wobei in dem Speicher ferner Computeranweisungen gespeichert sind, die, wenn sie von dem Prozessor ausgeführt werden, bewirken, dass der Prozessor eine kryptografische Signaturmethode mit elliptischen Kurven umsetzt, die folgende Schritte umfasst: Generieren eines privaten Sitzungsschlüssels und eines kryptografischen entsprechenden öffentlichen Sitzungsschlüssels; Generieren einer ersten Signaturkomponente unter Verwendung einer X-Koordinate des öffentlichen Sitzungsschlüssels; Generieren eines Zwischenwertes durch Kombinieren der Nachricht und der X-Koordinate; und Generieren einer zweiten Signaturkomponente durch Kombinieren des langfristigen privaten Schlüssels, des privaten Sitzungsschlüssels und des Zwischenwertes.
[0030] Gemäss einem weiteren Aspekt kann eine Signatur dadurch überprüft werden, dass der Zwischenwert aus der ersten Signaturkomponente und der Nachricht wieder aufgebaut wird, der öffentliche Sitzungsschlüssel aus der Zwischenkomponente und der zweiten Signaturkomponente wiederhergestellt wird und die X-Koordinate des wiederhergestellten öffentlichen Schlüssels und der ersten Signaturkomponente verglichen werden.
BESCHREIBUNG DER ZEICHNUNGEN
[0031] Es wird nun eine Ausführungsform der Erfindung mit Bezug auf die beiliegenden Zeichnungen beschrieben. Es zeigen:
[0032] Fig. 1 eine schematische Darstellung eines Datenkommunikationssystems;
[0033] Fig. 2 eine Darstellung eines Geräts, das in dem Datenkommunikationssystem aus Fig. 1 verwendet wird;
[0034] Fig. 3 ein Ablaufschema, welches das Protokoll zeigt, das zwischen einem Paar von Geräten umgesetzt wird, die in Fig. 1 gezeigt werden;
[0035] Fig. 4 ein Ablaufschema ähnlich wie Fig. 3 , das die Generierung eines Wertes zeigt, der in dem Protokoll aus Fig. 3 verwendet wird; und
[0036] Fig. 5 ein Ablaufschema ähnlich wie Fig. 4 , das eine alternative Generierung des Wertes zeigt, der in dem Protokoll aus Fig. 3 verwendet wird.
AUSFÜHRLICHE BESCHREIBUNG
[0037] Das Protokoll wird in Zusammenhang mit einer elliptischen Kurvengruppe beschrieben, die durch einen Punkt P generiert wird, von dem man annimmt, dass er primer Ordnung n ist.
[0038] Daher umfasst mit Bezug auf Fig. 1 ein Datenkommunikationssystem 10 eine Vielzahl von Geräten 12, die über Kommunikationsverbindungen 14 zusammengeschaltet sind. Die Geräte 12 können beliebiger bekannter Art sein, wozu ein Computer 12a, ein Server 12b, ein Mobiltelefon 12c, ein ATM 12d und eine Chipkarte 12e gehören. Die Kommunikationsverbindungen 14 können herkömmliche Festtelefonleitungen, drahtlose Verbindungen, die zwischen den Geräten 12 umgesetzt werden, Nahfeld-Kommunikationsverbindungen, wie etwa Bluetooth, oder eine andere herkömmliche Kommunikationsform sein.
[0039] Die Geräte 12 unterscheiden sich gemäss ihrem beabsichtigten Zweck, umfassen aber typischerweise ein Kommunikationsmodul 20 (Fig. 2 ) zur Kommunikation mit den Verbindungen 14. Ein Speicher 22 stellt ein Speichermedium für nicht vorübergehende Anweisungen bereit, um Protokolle umzusetzen und je nach Bedarf Daten zu speichern. Ein gesichertes Speichermodul 24, das Teil des Speichers 22 oder ein getrenntes Modul sein kann, wird verwendet, um private Informationen zu speichern, wie etwa die privaten Schlüssel, die von den Verschlüsselungsprotokollen verwendet werden, und um einer Manipulation an diesen Daten zu widerstehen. Eine arithmetische Logikeinheit (ALU) 26 wird bereitgestellt, um die Anweisungen der arithmetischen Operationen durch den Speicher 22 unter Verwendung von Daten, die in den Speichern 22, 24 gespeichert sind, auszuführen. Ein Generator 28 von Zufalls- oder Pseudozufallszahlen ist ebenfalls enthalten, um Bitfolgen zu generieren, die Zufallszahlen auf kryptografisch gesicherte Art und Weise darstellen. Der Speicher 22 umfasst auch einen Anweisungssatz, um die ALU 26 vorzubereiten, um einen Blockchiffrieralgorithmus auszuführen, wie etwa eine AES-Blockchiffrierung, wie sie nachstehend ausführlicher beschrieben wird.
[0040] Es versteht sich, dass das Gerät 12, das in Fig. 2 abgebildet ist, sehr schematisch ist und ein herkömmliches Gerät darstellt, das in einem Datenkommunikationssystem verwendet wird.
[0041] Der Speicher 22 speichert Systemparameter für das umzusetzende Kryptosystem und einen Satz von computerlesbaren Anweisungen, um das notwendige Protokoll umzusetzen. Für den Fall eines Kryptosystems mit elliptischen Kurven bestehen die Domänenparameter der elliptischen Kurven aus sechs Grössen q, a, b, P, n und h, nämlich aus: <tb>•<SEP>der Feldgrösse q <tb>•<SEP>den elliptischen Kurvenkoeffizienten a und b <tb>•<SEP>dem Basispunktgenerator P <tb>•<SEP>der n. Ordnung des Basispunktgenerators <tb>•<SEP>dem Kofaktor h, der eine derartige Zahl ist, dass hn die Anzahl von Punkten auf der elliptischen Kurve ist.
[0042] Die Parameter werden als Bitfolgen und die Darstellung des Basispunktes G als Bitfolgenpaar dargestellt, die jeweils ein Element des zugrundeliegenden Feldes darstellen. Wie gewohnt, kann eine dieser Folgen gekürzt werden, da man die vollständige Darstellung aus der anderen Koordinate und der gekürzten Darstellung wiederherstellen kann.
[0043] Das gesicherte Speichermodul 24 enthält eine Bitfolge, die einen langfristigen privaten Schlüssel d und den entsprechenden öffentlichen Schlüssel Q darstellt. Für ein Kryptosystem mit elliptischen Kurven ist der Schlüssel Q = dP.
[0044] Ephemere Werte, die von der ALU berechnet werden, können ebenfalls in dem gesicherten Modul 24 gespeichert werden, falls ihr Wert geheim bleiben soll.
[0045] Ein digitales Signaturprotokoll wird benötigt, wenn eines der Geräte 12 eine Nachricht, m, an ein oder mehrere der anderen Geräte sendet, und die anderen Geräte müssen in der Lage sein, die Nachricht zu authentifizieren. Die Nachricht kann beispielsweise ein Dokument sein, das von allen Beteiligten zu unterzeichnen ist, oder es kann sich um eine Anweisung für einen ATM 12d handeln, um Gelder zu überweisen. Für die Beschreibung des Protokolls wird jedes Gerät als Entität, wie etwa Alice oder Bob, wie es bei der Besprechung von kryptografischen Protokollen üblich ist, oder als Korrespondent identifiziert. Es versteht sich jedoch, dass jede Entität ein Gerät 12 ist, das Operationen unter Verwendung des Geräts ausführt, das in Fig. 2 beispielhaft dargestellt ist.
[0046] Die Entität Alice verfasst eine Nachricht m, die eine Bitfolge ist, die Informationen darstellt, die einer anderen Entität Bob zu übermitteln sind. Die Signaturmethode nimmt als Eingabe die Nachricht m und den privaten Schlüssel d des Unterzeichners (Alice), wobei es sich um eine Ganzzahl handelt.
[0047] Die Überprüfungsmethode nimmt als Eingabe die Nachricht, m, und den öffentlichen Schlüssel, Q, des Unterzeichners, wobei es sich um ein Element der Gruppe handelt, die durch den Generierungspunkt P generiert wird, und eine angebliche Signatur in der Nachricht durch den Unterzeichner. Die Signatur umfasst ein Paar Signaturkomponenten, die von dem Unterzeichner berechnet werden und an die Empfänger gesendet werden, gewöhnlich mit der Nachricht, m.
[0048] Um die Nachricht, m, unter Verwendung des privaten Schlüssels d des Unterzeichners zu unterzeichnen:
[0049] Erstellt Alice in Block 300 eine Nachricht m und verwendet in Block 302 den RNG 28, um eine Ganzzahl k in dem Bereich [0, n] zu berechnen. Der Wert k ist der ephemere (oder kurzfristige oder Sitzungs-) private Schlüssel von Alice. In Block 304 führt die ALU 24 eine Punktmultiplikation aus, um einen elliptischen Kurvenpunkt K = kP zu erzielen, der als der ephemere öffentliche Schlüssel von Alice verwendet wird.
[0050] Der ephemere öffentliche Schlüssel K wird als ein Paar von Bitfolgen, x, y, dargestellt, die beide Elemente des zugrundeliegenden Feldes sind, wie in Block 306 gezeigt. Die Bitfolge, welche die Koordinate x darstellt, wird mit der Nachricht m verwendet, um einen Zwischenwert r zu berechnen. Dieser kann unter Verwendung einer gesicherten Einwegfunktion berechnet werden, wie etwa einer Hash-Funktion, oder bevorzugt unter Verwendung der Blockchiffrierung, die nachstehend mit Bezug auf Fig. 4 oder 5 beschrieben wird. Falls eine Hash-Funktion verwendet wird, kann die Identität des Unterzeichners ebenfalls in den Hash-Vorgang einbezogen werden. Der Zwischenwert r wird in dem Speicher 22 gespeichert.
[0051] In Block 308 berechnet die ALU 24 dann die zweite Signaturkomponente s aus der Beziehung: s = k–dr (mod n).
[0052] Wie in Block 310 gezeigt, ist die Komponente s eine Ganzzahl, und die Signatur in der Nachricht m ist das Paar der Komponenten x, s. Die Nachricht m wird von Alice zusammen mit der Signatur (x, s) unter Verwendung des Kommunikationsmoduls 20 an Bob gesendet. Es sei zu beachten, dass die Signatur die Koordinate x statt des berechneten Zwischenwertes r verwendet.
[0053] Das Signaturprotokoll kann folgendermassen zusammengefasst werden: <tb>a.<SEP>Berechnen eines elliptischen Kurvenpunktes K durch zufallsmässiges Auswählen einer Ganzzahl k in dem Bereich [0,n], und dann Berechnen des elliptischen Kurvenpunktes kP = K. <tb>b.<SEP>Es sei x die X-Koordinate des Punktes kP. <tb>c.<SEP>Berechnen der Ganzzahl r aus m und x. <tb>d.<SEP>Berechnen der Ganzzahl s als s = k–dr (mod n). <tb>e.<SEP>Ausgeben von (x, s) als Signatur in der Nachricht m.
[0054] Wenn Bob die Nachricht m empfängt, kann er die Signatur überprüfen wollen und dadurch bestätigen, dass sie von Alice gesendet wurde und dass ihr Inhalt nicht geändert wurde.
[0055] In Block 312 verwendet Bob die ALU 24, um einen Wert r ́ aus der Nachricht m und der Signaturkomponente x unter Verwendung der gleichen Funktion, wie sie von Alice verwendet wurde, zu berechnen. In Block 314 wird ein elliptischer Kurvenpunkt K ́ von der ALU 24 unter Verwendung der Beziehung K ́ = s ́ P+ r ́Q berechnet.
[0056] Dabei ist s ́ die Signaturkomponente, die von Bob empfangen wird, und Q ist der öffentliche Schlüssel von Alice, der von einer vertrauenswürdigen Quelle erzielt wurde, wie etwa ein Zertifikat, das von einem CA unterzeichnet wurde und von Alice an Bob gesendet wurde.
[0057] In Block 316 wird die X-Koordinate x ́ des Punktes K ́ erzielt und in Block 318 mit derjenigen verglichen, die als Teil der Signatur empfangen wurde, und wenn sie gleich sind, wird die Signatur überprüft, wie in Block 320 gezeigt. Wenn nicht, wird die Signatur verworfen und die Nachricht kann als ungültig angesehen werden, wie in Block 322 gezeigt.
[0058] Die Verwendung der X-Koordinate vermeidet die Notwendigkeit, eine modulare Reduktion auszuführen, um einen berechneten Wert zu erzielen, und kann auch verwendet werden, um eine zusätzliche Überprüfung bereitzustellen, wie etwa durch Prüfen, dass der öffentliche Sitzungsschlüssel ein Punkt auf der zugrundeliegenden Kurve ist.
[0059] Zusammenfassend benötigt das Überprüfungsprotokoll die folgenden Schritte: <tb>a.<SEP>Berechnen der Ganzzahl r ́ aus m und x. <tb>b.<SEP>Berechnen des elliptischen Kurvenpunktes K ́ = s ́P+ r ́Q. <tb>c.<SEP>Es sei x ́ die X-Koordinate des Punktes K ́. <tb>d.<SEP>Ausgeben von «Signatur gültig», falls x ́ = x, und ansonsten Ausgeben von «Signatur ungültig».
[0060] Wie zuvor erwähnt, kann der Wert r unter Verwendung einer Einwegfunktion, wie etwa einer kryptografischen Hash-Funktion, aus x und m berechnet werden. Es wird eine alternative Berechnung unter Verwendung einer Blockchiffrierung, wie etwa der AES-Blockchiffrierung, bevorzugt. Bei einer ersten Ausführungsform, die in Fig. 4 gezeigt wird, wird die Koordinate x als der symmetrische Verschlüsselungsschlüssel für die Blockchiffrierung, E, die in der ALU ausgeführt wird, verwendet.
[0061] Um die Ganzzahl r aus den Bitfolgen m und x zu berechnen.
[0062] Die Nachricht m kann als eine Reihe von Bitfolgen angesehen werden, jeweils mit einer Länge t, so dass die Nachricht m als m0m1m2m3dargestellt werden kann. Die Signaturmethode beruht auf einer Blockchiffrierung mit einer definierten Blocklänge, die grösser als t ist. Beispielsweise beträgt die Länge der Bitfolge t 128 Bits und die Blocklänge beträgt 512 Bits, obwohl natürlich andere Längen verwendet werden können.
[0063] Die Länge der Nachricht m wird zuerst untersucht, um zu bestimmen, ob ihre Länge L > 2<128>-1 ist. Wenn ja, dann wird die Nachricht verworfen.
[0064] Die ALU füllt dann die Bitfolge m auf der rechten Seite mit Nullen auf, bis ihre Länge ein Vielfaches der Bitfolgenlänge t ist, bei dem Beispiel 128. Falls die Nachrichtenlänge L ein Vielfaches von t ist, dann wird eine zusätzliche Folge von t Bits hinzugefügt, um eine Redundanz in der Nachricht m bereitzustellen.
[0065] Die Länge L wird als Bitfolge mit 128 Bits, die an die Nachricht m angehängt wird, codiert. Die aufgefüllte und angehängte Nachricht hat eine Länge von 128*L, d.h. m = m0m1m2...mL-1•
[0066] Die Blockchiffrierung wird dann unter Verwendung jeder der Bitfolgen mi wiederum ausgeführt, um eine Ausgabe c bereitzustellen, die als Eingabe in den nachfolgenden Block verwendet wird. Die zu chiffrierenden Blöcke mit 512 Bits werden dadurch gebildet, dass man anfangs die Bitfolge m0nimmt und eine Bitfolge von 256 Bits mit Nullen auf der linken Seite und eine Bitfolge von 128 Bits auf der rechten Seite anhängt. Somit verfügt der Block über ein Format 0<256>//m0//0<128>, wobei sich das Symbol 0<256>auf eine Bitfolge von 256 Bits nur mit Nullen bezieht und sich das Symbol 0<128>auf eine Bitfolge von 128 Bits nur mit Nullen bezieht.
[0067] Die Bitfolge von 512 Bits wird als Eingabe in die AES-Blockchiffrierung verwendet, wobei die Koordinate X als Verschlüsselungsschlüssel dient. Die Ausgabe ist eine Bitfolge von 512 Bits, und die ersten 256 Bits werden als Wert c1genommen.
[0068] Der Wert c1wird als linke Auffüllung der nächsten Bitfolge m1verwendet, und die Bitfolge von 512 Bits verfügt über das Format c1//m1//0<128>. Dies wird wiederum unter Verwendung der Blockchiffrierung mit der X-Koordinate als Verschlüsselungsschlüssel verwendet, und die ersten 256 Bits der Ausgabe werden als Wert c2genommen.
[0069] Im Allgemeinen wird die Bitfolge mi der Nachricht m auf die Blocklänge der Blockchiffrierung formatiert, indem ein Teil der Ausgabe der Blockchiffrierung, der aus der Bitfolge mi-1erzielt wird, und eine Auffüllung mit Nullen bis auf die notwendige Länge einbezogen wird.
[0070] Somit entspricht bei dem Ausführungsbeispiel durch die Verwendung der Bitfolgenlänge t als 128 und der Blocklänge von 512 c1den ersten 256 Bits von Ex(ci-1//mi-1//0<128>). Auch hier kann die Blockgrösse der Blockchiffrierung geändert werden, und der Beitrag der Ausgabe kann ebenfalls geändert werden, um sich an die bestimmten Bedürfnisse der Umsetzung anzupassen. Die Werte 512, 256 und 128 sind rein beispielhaft.
[0071] Die Blockchiffrierung fährt fort, bis c1erzielt ist, und der Wert r wird als letzte log2 (n) Bits von c1genommen.
[0072] Es ist daher ersichtlich, dass die Berechnung von r unter Verwendung der X-Koordinate und der Blockchiffrierung auf relativ einfache und schnelle Art und Weise ausgeführt werden kann.
[0073] Der Empfänger der Nachricht m kann auch r aus m, x berechnen, um die zuvor beschriebene Überprüfung auszuführen.
[0074] Die Berechnung des Wertes r kann somit folgendermassen zusammengefasst werden: <tb>a.<SEP>Interpretieren der Bitfolge x als symmetrischer Verschlüsselungsschlüssel für die Blockchiffrierung E. <tb>b.<SEP>Es sei L die Bitlänge der Nachricht m. Falls L>2<128>-1, dann FEHLER. <tb>c.<SEP>Auffüllen der Bitfolge auf der rechten Seite mit Nullen, bis ihre Länge ein Vielfaches von 128 ist. (Somit vergrössert sich die Länge um höchstens 127 Bits.) <tb>d.<SEP>Codieren der Länge L als Bitfolge mit 128 Bits und Anhängen derselben an m. <tb>e.<SEP>Die Folge ist nun eine Bitfolge der Länge 128*1 Bits, also m = m0m1m2...mL-1. <tb>f.<SEP>Bilden der Bitfolge von 256 Bits c1durch Nehmen der ersten 256 Bits der Folge Ex(0<256>//m0//0<128>). <tb>g.<SEP>Berechnen der Bitfolgen von 256 Bits aus c1, c2... c1der Reihe nach durch Einstellen von ci, so dass dies den ersten 256 Bits der Bitfolge von 512 Bits Ex(c1-1//mi-1//0<128>) entspricht. <tb>h.<SEP>Berechnen von r als die letzten log2n Bits von c1.
[0075] Bei einer weiteren Ausführungsform, wie in Fig. 5 gezeigt, wird eine Blockchiffrierung verwendet, bei der die Ausgabe des vorhergehenden Durchgangs als Verschlüsselungsschlüssel für den nächsten (nachfolgenden) Durchgang verwendet wird.
[0076] In diesem Fall kann die Länge t der Bitfolge mi die gleiche sein wie die Blocklänge der Chiffrierung, obwohl ein Auffüllen weiter bevorzugt wird, um eine gewisse Redundanz einzuführen.
[0077] Bei dem anfänglichen Durchgang wird die Signaturkomponente x wie zuvor als Verschlüsselungsschlüssel verwendet, um eine Ausgabe c1zu erzielen. Die Ausgabe c1wird als Schlüssel für die Blockchiffrierung beim Verarbeiten der nächsten Bitfolge m1verwendet, um c2zu erzielen, die wiederum als Schlüssel für m2verwendet wird. Dies geht weiter, bis die endgültige Bitfolge mi chiffriert wurde und der Wert r als die letzten log2n Bits von c1erzielt wurde.
[0078] In beiden Fällen vermeidet die Blockchiffrierung die Verwendung einer Hash-Funktion bei der Berechnung des Zwischenwertes r.

Claims (10)

1. Verfahren zum Generieren einer kryptografischen Signatur mit elliptischen Kurven für eine Nachricht unter Verwendung eines langfristigen privaten Schlüssels, eines privaten Sitzungsschlüssels und eines öffentlichen Sitzungsschlüssels, der aus einem privaten Sitzungsschlüssel generiert wird, wobei das Verfahren folgende Schritte umfasst: <tb>–<SEP>Generieren einer ersten Signaturkomponente unter Verwendung einer X-Koordinate des öffentlichen Sitzungsschlüssels; <tb>–<SEP>Generieren eines Zwischenwertes durch Kombinieren der Nachricht und der X-Koordinate; und <tb>–<SEP>Generieren einer zweiten Signaturkomponente durch Kombinieren des langfristigen privaten Schlüssels, des privaten Sitzungsschlüssels und des Zwischenwertes.
2. Verfahren nach Anspruch 1, wobei die Signatur dadurch überprüft werden kann, dass der Zwischenwert aus der ersten Signaturkomponente und der Nachricht wiederaufgebaut wird, die X-Koordinate des öffentlichen Sitzungsschlüssels aus der Zwischenkomponente und der zweiten Signaturkomponente wiederhergestellt wird und die wiederhergestellte X-Koordinate und die erste Signaturkomponente verglichen werden.
3. Verfahren nach Anspruch 1, wobei die erste Signaturkomponente dadurch generiert wird, dass die Nachricht mit einer Blockchiffrierung unter Verwendung der X-Koordinate des öffentlichen Sitzungsschlüssels als symmetrischer Schlüssel verschlüsselt wird.
4. Verfahren nach Anspruch 1, wobei die erste Signaturkomponente dadurch generiert wird, dass eine kryptografische Hash-Funktion auf die Nachricht und die X-Koordinate des öffentlichen Sitzungsschlüssels angewendet wird.
5. Verfahren nach Anspruch 1 oder 3, wobei die erste Signaturkomponente dadurch erzielt wird, dass die Nachricht mit einer Vielzahl von Durchgängen einer Blockchiffrierung verschlüsselt wird, wobei die X-Koordinate des öffentlichen Sitzungsschlüssels als symmetrischer Schlüssel des ersten Durchgangs verwendet wird, und die Ausgabe jedes Durchgangs als Verschlüsselungsschlüssel für den nachfolgenden Durchgang verwendet wird.
6. Kryptografisches Korrespondentengerät, umfassend einen Prozessor und einen Speicher, wobei in dem Speicher ein langfristiger privater Schlüssel gespeichert ist, wobei mit dem Gerät ferner ein kryptografischer entsprechender langfristiger öffentlicher Schlüssel, der unter Verwendung des langfristigen privaten Schlüssels und eines Generatorpunktes generiert wird, und eine Identität verknüpft sind, wobei in dem Speicher ferner Computeranweisungen gespeichert sind, die, wenn sie von dem Prozessor ausgeführt werden, bewirken, dass der Prozessor eine kryptografische Signaturmethode mit elliptischen Kurven umsetzt, die folgende Schritte umfasst: <tb>–<SEP>Generieren eines privaten Sitzungsschlüssels und eines kryptografischen entsprechenden öffentlichen Sitzungsschlüssels; <tb>–<SEP>Generieren einer ersten Signaturkomponente unter Verwendung einer X-Koordinate des öffentlichen Sitzungsschlüssels; <tb>–<SEP>Generieren eines Zwischenwertes durch Kombinieren der Nachricht und der X-Koordinate; und <tb>–<SEP>Generieren einer zweiten Signaturkomponente durch Kombinieren des langfristigen privaten Schlüssels, des privaten Sitzungsschlüssels und des Zwischenwertes.
7. System nach Anspruch 6, wobei die Signatur dadurch überprüft werden kann, dass der Zwischenwert aus der ersten Signaturkomponente und der Nachricht wiederaufgebaut wird, die X-Koordinate des öffentlichen Sitzungsschlüssels aus der Zwischenkomponente und der zweiten Signaturkomponente wiederhergestellt wird und die wiederhergestellte X-Koordinate und die erste Signaturkomponente verglichen werden.
8. System nach Anspruch 7, wobei die erste Signaturkomponente dadurch generiert wird, dass die Nachricht mit einer Blockchiffrierung unter Verwendung der X-Koordinate des öffentlichen Sitzungsschlüssels als symmetrischer Schlüssel verschlüsselt wird.
9. System nach Anspruch 7, wobei die erste Signaturkomponente dadurch generiert wird, dass eine kryptografische Hash-Funktion auf die Nachricht und die X-Koordinate des öffentlichen Sitzungsschlüssels angewendet wird.
10. System nach Anspruch 6 oder 8, wobei die erste Signaturkomponente dadurch erzielt wird, dass die Nachricht mit einer Vielzahl von Durchgängen einer Blockchiffrierung verschlüsselt wird, wobei die X-Koordinate des öffentlichen Sitzungsschlüssels als symmetrischer Schlüssel des ersten Durchgangs verwendet wird und die Ausgabe jedes Durchgangs als Verschlüsselungsschlüssel für den nachfolgenden Durchgang verwendet wird.
CH9722014A 2013-06-27 2014-06-26 Signaturprotokoll und Gerät zu dessen Umsetzung. CH708240A2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201361839955P 2013-06-27 2013-06-27

Publications (1)

Publication Number Publication Date
CH708240A2 true CH708240A2 (de) 2014-12-31

Family

ID=52105794

Family Applications (1)

Application Number Title Priority Date Filing Date
CH9722014A CH708240A2 (de) 2013-06-27 2014-06-26 Signaturprotokoll und Gerät zu dessen Umsetzung.

Country Status (4)

Country Link
US (1) US20150006900A1 (de)
CA (1) CA2855101A1 (de)
CH (1) CH708240A2 (de)
WO (1) WO2014205571A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016187689A1 (en) * 2015-05-26 2016-12-01 Infosec Global Inc. Signature protocol
US9800418B2 (en) 2015-05-26 2017-10-24 Infosec Global Inc. Signature protocol
CN107370599B (zh) * 2017-08-07 2020-07-10 收付宝科技有限公司 一种远程销毁私钥的管理方法、装置和系统
WO2019101240A2 (en) * 2019-03-15 2019-05-31 Alibaba Group Holding Limited Authentication based on a recoverd public key
US11997212B2 (en) * 2019-06-26 2024-05-28 Micron Technology, Inc. Payload validation for a memory system
CN113300846B (zh) * 2020-02-24 2022-08-09 华为技术有限公司 签名方法、终端设备及网络设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2228185C (en) * 1997-01-31 2007-11-06 Certicom Corp. Verification protocol
US6279110B1 (en) * 1997-11-10 2001-08-21 Certicom Corporation Masked digital signatures
US7707420B1 (en) * 1999-06-23 2010-04-27 Research In Motion Limited Public key encryption with digital signature scheme
US8467535B2 (en) * 2005-01-18 2013-06-18 Certicom Corp. Accelerated verification of digital signatures and public keys
US9013266B2 (en) * 2006-09-08 2015-04-21 Certicom Corp. Authenticated radio frequency identification and key distribution system therefor
EP2151947A1 (de) * 2008-08-05 2010-02-10 Irdeto Access B.V. Schema zur gleichzeitigen Verschlüsselung und Unterschrift auf der Basis der Verschlüsselung elliptischer Kurven
FR2982106B1 (fr) * 2011-10-28 2014-04-18 Logiways France Procede de signature cryptographique de messages, procede de verification de signature et dispositifs de signature et de verification correspondants

Also Published As

Publication number Publication date
CA2855101A1 (en) 2014-12-27
WO2014205571A1 (en) 2014-12-31
US20150006900A1 (en) 2015-01-01

Similar Documents

Publication Publication Date Title
DE102010002241B4 (de) Vorrichtung und Verfahren zur effizienten einseitigen Authentifizierung
CH711133A2 (de) Protokoll zur Signaturerzeugung.
DE60200496T2 (de) Verfahren und Vorrichtung zur Ausführung eines effizienten mittels Kennwort authentifizierten Schlüsselaustauschs
EP3091690A1 (de) Rsa-entschlüsselung mittels multiplikativer geheimnisteilung
US9705683B2 (en) Verifiable implicit certificates
US9571274B2 (en) Key agreement protocol
CH708240A2 (de) Signaturprotokoll und Gerät zu dessen Umsetzung.
CN101977112B (zh) 一种基于神经网络混沌吸引子的公钥密码加密和解密方法
DE102005024725A1 (de) System und Verfahren für Chaotische Digitale Signatur, Verschlüsselung und Authentifizierung
DE102016210786A1 (de) Komponente zur Anbindung an einen Datenbus und Verfahren zur Umsetzung einer kryptografischen Funktionalität in einer solchen Komponente
DE112012000971B4 (de) Datenverschlüsselung
Kaaniche et al. A novel zero-knowledge scheme for proof of data possession in cloud storage applications
US20160352689A1 (en) Key agreement protocol
EP3206154B1 (de) Verfahren und vorrichtungen zum sicheren übermitteln von nutzdaten
Kuppuswamy et al. A new efficient digital signature scheme algorithm based on block cipher
DE10328860B4 (de) Vorrichtung und Verfahren zum Verschlüsseln von Daten
WO2016187689A1 (en) Signature protocol
DE102020112102B3 (de) Verfahren und Vorrichtungen zur Erzeugung eines symmetrischen Sitzungsschlüssels für die verschlüsselte Kommunikation
Al-Adhami et al. A 256 bit implementation of ECC-RFID based system using Shamir secret sharing scheme and Keccak hash function
Sheth et al. Analysis of cryptography techniques
Yang et al. An efficient privacy-preserving and verifiable scheme for federated learning
Datta Zero knowledge one time digital signature scheme
CA2892318C (en) Signature protocol
DE10159690C2 (de) Verfahren zur Vereinbarung eines symmetrischen Schlüssels über einen unsicheren Kanal und zur digitalen Signatur
Prajwal Digital Signature Algorithm: A Hybrid Approach

Legal Events

Date Code Title Description
AZW Rejection (application)