Signatures De Digital


  Share  
|

Comme le commerce électronique se développe, ainsi fait le besoin de degré d'authentification provably élevé. Pensez à la signature de Alice sur un contrat avec Bob Bob non seulement doit savoir qu'Alice est l'autre signataire et le signe ; il doit également pouvoir s'avérer à un tiers désintéressé (appelé juge) cette Alice l'a signé et que le contrat qu'il se présente n'a pas été changé puisqu'Alice l'a signé. Une telle construction s'appelle une signature numérique.

Une signature numérique est une construction qui authentifie l'origine et le contenu d'un message en quelque sorte qui est prouvable à un tiers désintéressé.

La condition de "preuve" présente une subtilité. Laissez m être un message. Supposez que part de Alice et de Bob une clef secrète k. Alice envoie Bob m || {}k de m (c'est-à-dire, le message et son chiffrement sous k). Est-ce que c'est par signature numérique ?

D'abord, Alice a authentifié le contenu du message, parce que Bob déchiffre {le}k de m et peut vérifier que le message assortit déchiffré. Puisque seulement Bob et Alice connaissent k, et Bob sait qu'il n'a pas envoyé le message, il conclut qu'il est venu de Alice. Il a authentifié l'origine et l'intégrité de message. Cependant, basé sur seules les mathématiques, Bob ne peut pas montrer qu'il n'a pas créé le message, parce qu'il sait la clef employée pour la créer. Par conséquent, ce n'est pas une signature numérique.

La cryptographie principale publique résout ce problème. Laissez le dAlice et l'eAlice être les clefs privées et publiques de Alice, respectivement. Alice envoie à Bob le message m || {}dAlice de m. Comme avant, Bob peut authentifier l'origine et le contenu de m, mais dans cette situation un juge doit déterminer qu'Alice a signé le message, parce que seulement Alice sait la clef privée avec laquelle le message a été signé. Le juge obtient simplement l'eAlice et le calcule {{eAlice de}dAlice de m}. Si le résultat est m, Alice l'a signé. C'est en fait une signature numérique.

Une signature numérique fournit le service du nonrepudiation. Si Alice réclame elle n'a jamais envoyé le message, le juge précise que le créateur a signé le message avec sa clef privée, que seulement elle a sue. Alice à ce point peut réclamer que sa clef privée a été volée, ou que son identité a été inexactement liée dans le certificat. La notion du "nonrepudiation" fourni ici est strictement abstraite. En fait, la clef de Alice pourrait avoir été volée, et elle ne pourrait pas avoir réalisé ceci avant de voir la signature numérique. Une telle réclamation exigerait l'évidence auxiliaire, et une cour ou toute autre agence légale devrait la manipuler. Pour les buts de cette section, nous considérons comme étant le service du nonrepudiation l'incapacité de nier que sa clef cryptographique a été employée pour produire la signature numérique.

Signatures Classiques

Tous les arrangements numériques classiques de signature se fondent sur un tiers de confiance. Le juge doit faire confiance au tiers. L'arrangement de Merkle est typique.

Laissez Cathy être le tiers de confiance. Alice partage un kAlice principal cryptographique avec Cathy. De même, Bob partage le kBob avec Cathy. Quand Alice veut envoyer à Bob un contrat m, elle calcule {le}kAlice de m et l'envoie à Bob Bob l'envoie à Cathy, qui déchiffre m, le chiffre avec le kBob, et retourne {}kBob de m à Bob. Il peut maintenant le déchiffrer. Pour vérifier qu'Alice a envoyé le message, les prises de juge les messages contestés {}kAlice de m et {le}kBob de m et fait les déchiffrer Cathy employant les clefs de Alice et de Bob. Si elles s'assortissent, l'envoi est vérifié ; si pas, l'une d'entre elles est un contrefaçon.

Signatures Principales Publiques

Dans notre exemple plus tôt, nous avons fait chiffrer à Alice le message avec sa clef privée pour produire une signature numérique. Nous examinons maintenant un arrangement numérique spécifique de signature basé sur le système de RSA.

Nous observons cela employer RSA pour authentifier un message produit une signature numérique. Cependant, nous observons également que la force du système se fonde sur le protocole décrivant comment RSA est employé aussi bien que sur le cryptosystem de RSA lui-même.

D'abord, supposez qu'Alice veut duper Bob dans signer un message m. Elle calcule deux autres messages m1 et m2 tels que nBob de mod m1m2 = m. Elle a le signe m1 de Bob et m2 Alice multiplie alors les deux signatures ensemble et réduit le nBob de mod, et elle a la signature de Bob sur la défense de m.The ne doit pas signer les documents aléatoires et, en signant, ne signe jamais le document lui-même ; signez des informations parasites cryptographiques du document.

EXEMPLE : Laissez le nAlice = 95, eAlice = 59, dAlice = 11, nBob = 77, eBob = 53, et dBob = 17. Alice et Bob ont 26 contrats possibles, dont à partir elles doivent choisir et le signe un. Alice demande d'abord à Bob de signer le contrat F (05) :

05^17 mod 77 = 3

Elle lui demande alors de signer le contrat R (17) :

17^17 mod 77 = 19

Alice calcule maintenant 05 x 17 mod 77 = 08. Elle réclame alors que Bob était d'accord sur le contrat I (08), et comme l'évidence présente la signature 3 x 19 mod 77 = 57. Le juge Janice s'appelle, et elle calcule

57^53 mod 77 = 08

Naturellement, elle conclut que Bob se trouve, parce que sa clef publique déchiffre la signature. Ainsi Alice a avec succès dupé Bob.


Un deuxième problème démontre que des messages qui sont chiffrés et signés devraient être signés d'abord, puis chiffré. Supposez qu'Alice envoie à Bob sa signature sur un contrat confidentiel m. Elle le chiffre d'abord, puis le signe et envoie le résultat à Bob. Cependant, Bob veut réclamer qu'Alice lui a envoyé les calculs de M. Bob de contrat un nombre r tels que M. nBob de mod = m. Il republie alors sa clef publique comme (reBob, nBob). Notez que le module ne change pas. Maintenant, il réclame qu'Alice lui a envoyé M. Le juge vérifie ceci qui emploie sa clef publique courante. La manière la plus simple de fixer ceci est d'exiger de tous les utilisateurs d'employer le même exposant mais de changer les modules.

EXEMPLE : Smarting du tour de Alice, Bob cherche la vengeance. Lui et Alice acceptent de signer le contrat G (06). Alice le chiffre d'abord, le signe alors :

(06^53 mod 95 = 63 de mod 77)11

et l'envoie à Bob Bob, cependant, veut que le contrat soit N (13). Il calcule un r tels que 13r mod 77 = 6 ; un tel r est r = 59. Il calcule alors un nouveau f(nBob) principal public de mod de reBob = 59 x 53 mod 60 = 7. Il remplace sa clef publique courante avec (7, 77), et remises sa clef privée à 43. Il réclame maintenant qu'Alice lui a envoyé le contrat N, signé par elle.

Le juge Janice s'appelle. Elle prend le message 63 et le déchiffre :

(63^59 mod 77 = 13 de mod 95)43

et conclut que Bob est correct.


Cette attaque ne fonctionnera pas si on signe d'abord et chiffre ensuite. La raison est que Bob ne peut pas accéder au nécessaire de l'information pour construire une nouvelle clef publique, parce qu'il devrait changer la clef publique de Alice.

c'est un article supplémentaire par Bill Kuriko


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions