EP0739105B1

Method for signature and session key generation

Abstract

This record has no abstract on file.

EP0739105B1, drawing sheet 1
Sheet 1 of 22

Term

Term ended

Expired 16 April 2016, 10.4 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

17 claims: 17 independent, 0 dependent

  1. 1
    A method of authenticating a key established between a pair of correspondents (10, 12) A, B in a public key data communication system to permit exchange of information therebetween over a communication channel (14), each of said correspondents (10,12) having a respective private key a, b and a public key pA,pB derived from a generator α and respective ones of said private keys a, b, said method including the steps of:i) a first of said correspondents A selecting a first random integer x and exponentiating a function f(α) including said generator to a power g(x) to provide a first exponentiated function f(α)g(x);ii) said first correspondent A generating a first signature sA from said random integer x, said exponentiated function f(α)g(x), and said private key a to bind said integer x and said private key a;iii) said first correspondent A forwarding to a second correspondent B a message including said first exponentiated function f(α)g(x) and said signature sA;iv) said correspondent B selecting a second random integer y and exponentiating a function f'(α) including said generator to a power g(y) to provide a second exponentiated function f'(α)g(y) and generating a signature sB obtained from said second integer y, and said second exponentiated function f'(α)g(y) and said private key b to bind said integer y and said private key b;v) said second correspondent B forwarding a message to said first correspondent A including said second exponential function f'(α)g(y) and said signature sB;vi) each of said correspondents (10, 12) verifying the integrity of messages received by them by computing from said signature and said exponentiated function in said message received by them a value equivalent to said exponentiated function and comparing said computed value and said exponentiated function in said message received by them;vii) each of said correspondents (10, 12) constructing a session key K by exponentiating information made public by another of said correspondents (10, 12) with said random integer that is private to itself. Procédé d'authentification d'une clé établie entre deux correspondants (10, 12) A, B dans un système de communication de données à clé publique pour permettre l'échange d'information entre eux sur un canal de communication (14), chacun desdits correspondants (10, 12) ayant une clé respective a, b et une clé publique pA, pB dérivée d'un générateur á et desdites clés privées respectives a, b, ledit procédé comprenant les phases suivantes : i) un premier desdits correspondants, A, sélectionne un premier entier aléatoire x et élève une fonction f(á) qui comprend ledit générateur à une puissance g(x) pour obtenir une première fonction élevée à une puissance f(á)g(x) ;ii) ledit premier correspondant A génère une première signature sA à partir dudit entier aléatoire x, de ladite fonction élevée à une puissance f(á)g(x), et de ladite clé privée a pour lier ledit entier x et ladite clé privée a ;iii) ledit premier correspondant A envoie à un deuxième correspondant B un message comprenant ladite première fonction élevée à une puissance f(á)g(x) et ladite signature sA ;iv) ledit correspondant B sélectionne un deuxième entier aléatoire y et élève une fonction f'(á) qui comprend ledit générateur à une puissance g(y) pour obtenir une deuxième fonction élevée à une puissance f'(á)g(y)et il génère une signature sB à partir dudit deuxième entier y, et de ladite deuxième fonction élevée à une puissance f'(á)g(y) et de ladite clé privée b pour lier ledit entier y et ladite clé privée b ;v) ledit deuxième correspondant B envoie un message audit premier correspondant A comprenant ladite deuxième fonction élevée à une puissance f'(á)g(y)et ladite signature sB ;vi) chacun desdits correspondants (10, 12) vérifie l'intégrité des messages qu'il a reçu en calculant à partir de ladite signature et de ladite fonction élevée à une puissance dans ledit message qu'il a reçu une valeur équivalente à ladite fonction élevée à une puissance et il compare ladite valeur calculée et ladite fonction élevée à une puissance dans ledit message qu'il a reçu ;vii) chacun desdits correspondants (10, 12) construit une clé de session K en élevant à une puissance une information rendue publique par un autre desdits correspondants (10, 12) avec ledit entier aléatoire qui est privé pour lui. Verfahren zum Authentifizieren eines zwischen einem Paar von Korrespondenten (10, 12) A, B etablierten Schlüssels in einem auf asymmetrischer Verschlüsselung (public key) basierenden Datenübertragungssystem, um den Austausch von Informationen untereinander über einen Übertragungskanal (14) zu erlauben, wobei jeder der Korrespondenten (10, 12) jeweils einen privaten Schlüssel a, b und einen öffentlichen Schlüssel pA, pB, der von einem Generator α und jeweils einem der privaten Schlüssel a, b abgeleitet ist, besitzt, wobei das Verfahren die folgenden Schritte umfasst: i) ein erster der Korrespondenten A wählt eine erste ganze Zufallszahl x aus und potenziert eine Funktion f(α), die den Generator umfasst, mit einer Potenz g(x), um eine erste potenzierte Funktion f(α)g(x) vorzusehen;ii) der erste Korrespondent A erzeugt eine erste Signatur sA aus der ersten ganzen Zufallszahl x, der ersten potenzierten Funktion f(α)g(x) und dem privaten Schlüssel a, um die ganze Zufallszahl x und den privaten Schlüssel a zu verknüpfen;iii) der erste Korrespondent A schickt an einen zweiten Korrespondenten B eine Nachricht ab, welche die erste potenzierte Funktion f(α)g(x) und die Signatur sA umfasst;iv) der Korrespondent B wählt eine zweite ganze Zufallszahl y aus und potenziert eine Funktion f'(α), die den Generator umfasst, mit einer Potenz g(y), um eine zweite potenzierte Funktion f'(α)g(y) vorzusehen, und erzeugt eine Signatur sB aus der zweiten ganzen Zufallszahl y, der zweiten potenzierten Funktion f'(α)g(y) und dem privaten Schlüssel b, um die ganze Zufallszahl y und den privaten Schlüssel b zu verknüpfen;v) der zweite Korrespondent B schickt an den ersten Korrespondenten A eine Nachricht ab, welche die zweite potenzierte Funktion f'(α)g(y) und die Signatur sB umfasst;vi) jeder der Korrespondenten (10, 12) überprüft die Integrität der von ihm erhaltenen Nachrichten durch Berechnen eines der potenzierten Funktion entsprechenden Wertes aus der potenzierten Funktion und der Signatur in der von ihm empfangenen Nachricht und durch Vergleichen des berechneten Wertes mit der potenzierten Funktion in der von ihm empfangenen Nachricht;vii) jeder der Korrespondenten (10, 12) erstellt einen Sitzungsschlüssel K, indem er Informationen, die jeweils vom anderen Korrespondenten (10, 12) öffentlich gemacht wurden, mit der ganzen Zufallszahl, die für ihn selbst privat ist, potenziert.
  2. 2
    A method of claim 1 wherein said message forwarded by said first correspondent (10) includes an identification of the first correspondent (10). Procédé selon la revendication 1, dans lequel ledit message envoyé par ledit premier correspondant (10) comprend une identification du premier correspondant (10). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die vom ersten Korrespondenten (10) abgeschickte Nachricht eine Identifikation des ersten Korrespondenten (10) umfasst.
  3. 3
    A method according to claim 1 wherein said message forwarded by said second correspondent (12) includes an identification of said second correspondent (12). Procédé selon la revendication 1, dans lequel ledit message envoyé par ledit deuxième correspondant (12) comprend une identification du deuxième correspondant (12). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die vom zweiten Korrespondenten (12) abgeschickte Nachricht eine Identifikation des zweiten Korrespondenten (12) umfasst.
  4. 4
    A method according to claim 3 wherein said message forwarded by said first correspondent (10) includes an identification of the first correspondent (10). Procédé selon la revendication 3, dans lequel ledit message envoyé par ledit premier correspondant (10) comprend une identification du premier correspondant (10). Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass die vom ersten Korrespondenten (10) abgeschickte Nachricht eine Identifikation des ersten Korrespondenten (10) umfasst.
  5. 5
    A method according to claim 1 wherein said function f(α) including said generator f(α) is said generator itself. Procédé selon la revendication 1, dans lequel ladite fonction f(á) comprenant ledit générateur f(á) est ledit générateur lui-même. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die den Generator f(α) umfassende Funktion f(α) der Generator selbst ist.
  6. 6
    A method according to claim 1 wherein said function f'(α) including said generator is said generator itself. Procédé selon la revendication 1, dans lequel ladite fonction f'(á) comprenant ledit générateur est ledit générateur lui-même. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die den Generator umfassende Funktion f'(α) der Generator selbst ist.
  7. 7
    A method according to claim 6 wherein said function f(α) including said generator is said generator itself. Procédé selon la revendication 6, dans lequel ladite fonction f(á) comprenant ledit générateur est ledit générateur lui-même. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass die den Generator umfassende Funktion f(α) der Generator selbst ist.
  8. 8
    A method according to claim 1 wherein said function f(α) including said generator includes the public key pB of said second correspondent (12). Procédé selon la revendication 1, dans lequel ladite fonction f(á) comprenant ledit générateur comprend la clé publique pB dudit deuxième correspondant (12). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die den Generator umfassende Funktion f(α) den öffentlichen Schlüssel pB des zweiten Korrespondenten (12) umfasst.
  9. 9
    A method according to claim 1 wherein said function f'(α) including said generator includes the public key pA of said first correspondent (10). Procédé selon la revendication 1, dans lequel ladite fonction f'(á) comprenant ledit générateur comprend la clé publique pA dudit premier correspondant (10). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die den Generator umfassende Funktion f'(α) den öffentlichen Schlüssel pA des ersten Korrespondenten (10) umfasst.
  10. 10
    A method according to claim 1 wherein said signature generated by a respective one of the correspondents (10, 12) combines the random integer, exponentiated function and private key of said respective one of the correspondents (10, 12). Procédé selon la revendication 1, dans lequel ladite signature générée par un respectif des correspondants (10, 12) combine l'entier aléatoire, la fonction élevée à une puissance et la clé privée du correspondant respectif des correspondants (10, 12). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die von den jeweiligen Korrespondenten (10, 12) erzeugte Signatur die ganze Zufallszahl, die potenzierte Funktion und den privaten Schlüssel des jeweiligen Korrespondenten (10, 12) verknüpft.
  11. 11
    A method according to claim 10 wherein said signature of correspondent A is of the form x - rAa (mod p-1), where rA represents said first exponentiated function. Procédé selon la revendication 10, dans lequel ladite signature du correspondant A est de la forme x- rA a (mod p-1), où rA représente ladite fonction élevée à une puissance. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Signatur des Korrespondenten A die Form x-rAa(mod p-1) aufweist, wobei rA die erste potenzierte Funktion darstellt.
  12. 12
    A method according to claim 10 wherein said signature of correspondent A is of the form x + a(pB)x(mod p-1). Procédé selon la revendication 10, dans lequel ladite signature du correspondant A est de la forme x + a(pB)x(mod p-1). Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Signatur des Korrespondenten A die Form x+a(pB)x(mod p-1) aufweist.
  13. 13
    A method according to claim 10 wherein said signature of correspondent A is of the form xrx1 - (rA)​r​x1 a (mod p-1)where x1 is a second random integer selected by A and rx1 = αx1. Procédé selon la revendication 10, dans lequel ladite signature du correspondant A est de la forme xrx1-(rA)=​r​x1 a (mod p-1) où x1 est un deuxième entier aléatoire sélectionné par A et rx1=αx1. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Signatur des Korrespondenten A die Form xrx1- (rA)​r​x1 a(mod p - 1) aufweist, wobei x1 eine zweite von A gewählte ganze Zufallszahl und rx1 = αx1 darstellt.
  14. 14
    A method according to claim 10 wherein said signature of correspondent B is of the form yB-rBb (mod p-1)where rB is said second exponentiated function. Procédé selon la revendication 10, dans lequel ladite signature du correspondant B est de la forme yB-rBb (mod p-1) où rB est ladite deuxième fonction élevée à une puissance. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Signatur des Korrespondenten B die Form yB-rBb(mod p-1) aufweist, wobei rB die zweite potenzierte Funktion darstellt.
  15. 15
    A method according to claim 10 wherein said signature of correspondent B is of the form y + b (pA)y(mod p-1). Procédé selon la revendication 10, dans lequel ladite signature du correspondant B est de la forme y + b (pA)y (mod p-1). Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Signatur des Korrespondenten B die Form y+b(pA)y(mod p-1) aufweist.
  16. 16
    A method according to claim 10 wherein said signature of correspondent B is of the form yry1 - (rB)​r​y1b (mod p-1) where y1 is a second integer selected by correspondent B and ry1 = αy1. Procédé selon la revendication 10, dans lequel ladite signature du correspondant B est de la forme yry1-(rB)ry1b (mod p-1) où y1 est un deuxième entier aléatoire sélectionné par le correspondant B et r y1=αy1. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass die Signatur des Korrespondenten B die Form yry1 -(rB)ry1b(mod p - 1) aufweist, wobei y1 eine zweite vom Korrespondenten B gewählte ganze Zufallszahl und ry1 = αy1 darstellt.
  17. 17
    A method according to claim 11 wherein said correspondent A selects a second integer x1 and forwards rA1 to correspondent B where rA1 = αx1 and said correspondent B selects a second random integer y1 and sends rB1 to correspondent A, where rB1 = αx1 each of said correspondents (10, 12) computing a pair of keys k1, k2 equivalent to αxy and αx1y1 respectively, said session key K being generated by XORing k1 and k2. Procédé selon la revendication 11, dans lequel ledit correspondant A sélectionne un deuxième entier x1 et envoie rA1 au correspondant B où rA1=αx1 et ledit correspondant B sélectionne un deuxième entier aléatoire y1 et envoie rB1au correspondant A, où rB1=αx1 chacun desdits correspondants (10, 12) calculant une paire de clé k1, k2 équivalant à áxy et à αx1y1 respectivement, ladite clé de cession K étant générée en soumettant k1 et k2 à une opération XOR. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass der Korrespondent A eine zweite ganze Zahl x1 wählt und rA1 an den Korrespondenten B sendet, wobei rA1 = αx1 ist, und der Korrespondent B eine zweite ganze Zahl y1 wählt und rB1 an den Korrespondenten A sendet, wobei rB1 = αx1 ist, und jeder der Korrespondenten (10, 12) ein Schlüsselpaar k1, k2 entsprechend zu αxy bzw. αx1y1 berechnet, wobei der Sitzungsschlüssel K durch eine XOR-Verknüpfung von k1 und k2 erzeugt wird.
Independent claims17