web-dev-qa-db-fra.com

Quelle est la différence entre la signature numérique et le certificat numérique?

j'ai cherché sur google la différence entre la signature numérique et le certificat numérique (cryptage asymétrique) semble être la même. Je voudrais clarifier s'ils sont identiques ou non? Merci beaucoup!!!

43
Bugzy bug

Un signature numérique est utilisé pour vérifier un message. Il s'agit essentiellement d'un hachage chiffré (chiffré par la clé privée de l'expéditeur) du message. Le destinataire peut vérifier si le message a été falsifié en hachant le message reçu et en comparant cette valeur avec la signature déchiffrée.

Pour décrypter la signature, la clé publique correspondante est requise. Un certificat numérique est utilisé pour lier des clés publiques à des personnes ou à d'autres entités. S'il n'y avait pas de certificats, la signature pourrait être facilement falsifiée, car le destinataire ne pourrait pas vérifier si la clé publique appartient à l'expéditeur.

Le certificat lui-même est signé par un tiers de confiance, un autorité de certification comme VeriSign.

73
king_nak

Permettez-moi de développer l'explication d'Ashley. Comme pour tout ce qui concerne la cryptographie, supposez qu'Alice (expéditeur) souhaite envoyer un message sécurisé à Bob (destinataire)

Il y a deux problèmes à résoudre ici.

  1. Comment chiffrer le message pour que seul Bob puisse le déchiffrer.
  2. Comment Bob peut-il être sûr que le message provient d'Alice en premier lieu et qu'il n'a pas été modifié par une personne en transit.

Ces deux problèmes peuvent être résolus avec la cryptographie à clé publique. Pour (1), Alice crypte le message avec la clé publique de Bob. Lorsque bob reçoit le message, il peut le déchiffrer en toute sécurité avec sa clé privée. Donc crypter avec la clé publique de Bob et décrypter avec la clé privée de Bob (ce sont des trucs de base dans la cryptographie à clé publique)

Pour résoudre (2), Alice envoie également une signature numérique avec le message crypté. Cela se fait comme suit:

  • Passez le message d'origine à travers une fonction de hachage (comme sha-1 ) pour obtenir un résumé du message
  • Chiffrer ce résumé de message avec la clé privée d'Alice (notez que c'est le contraire de la façon dont le message d'origine est chiffré avec la clé publique de Bob)

Lorsque Bob reçoit le message + la signature numérique, il:

  • Déchiffrez le message avec cette clé privée, puis calculez son résumé. Appelons ce condensé M1.
  • Déchiffrez la signature avec la clé publique d'Alice pour obtenir le résumé du message. Appelons ce M2.
  • Si M1 et M2 sont identiques, Bob peut être certain que le message n'a pas été modifié en transit et qu'il s'agit bien d'Alice.

En ce qui concerne les certificats numériques, notez qu'Alice s'appuie sur le chiffrement du message d'origine avec la clé publique de Bob et que Bob s'appuie sur la clé publique d'Alice pour déchiffrer la signature. Comment les deux peuvent-ils être sûrs de la clé publique de l'autre? C'est à cela que servent les certificats numériques. Cela permet à un tiers de confiance de vérifier/dire "la clé publique d'Alice est xyz".

63
numan salati

L'explication la plus claire pour moi est disponible chez RSA Laboratories:

Signature numérique: Supposons qu'Alice veuille envoyer un document ou un message signé à Bob. La première étape consiste généralement à appliquer une fonction de hachage au message, créant ce qu'on appelle un résumé de message. Le résumé du message est généralement beaucoup plus court que le message d'origine. En fait, le travail de la fonction de hachage consiste à prendre un message de longueur arbitraire et à le réduire à une longueur fixe. Pour créer une signature numérique, on signe (chiffre) généralement le résumé du message par opposition au message lui-même.

...

Alice envoie à Bob le résumé du message chiffré et le message, qu'elle peut ou non chiffrer. Pour que Bob authentifie la signature, il doit appliquer la même fonction de hachage qu'Alice au message qu'elle lui a envoyé, déchiffrer le résumé du message chiffré à l'aide de la clé publique d'Alice et comparer les deux. Si les deux sont identiques, il a réussi à authentifier la signature. Si les deux ne correspondent pas, il y a quelques explications possibles. Soit quelqu'un essaie de se faire passer pour Alice, le message lui-même a été modifié depuis sa signature par Alice, soit une erreur s'est produite lors de la transmission.

...

Certificat numérique : De plus, quelqu'un pourrait prétendre être Alice et signer des documents avec une paire de clés qu'il prétend être celle d'Alice. Pour éviter de tels scénarios, il existe des documents numériques appelés certificats qui associent une personne à une clé publique spécifique.

Ces citations proviennent des laboratoires RSA sur http://www.rsa.com/rsalabs/node.asp?id=2182 et http://www.rsa.com/rsalabs/ node.asp? id = 2277

21
Ash

De Wikipedia (souligne le mien):

A signature numérique ou schéma de signature numérique est un schéma mathématique pour démontrer l'authenticité d'un message ou d'un document numérique. Un numérique valide La signature donne au destinataire une raison de croire que le message a été créé par un expéditeur connu et qu'il n'a pas été modifié en transit. Les signatures numériques sont couramment utilisées pour la distribution de logiciels, les transactions financières et dans d'autres cas où il est important de détecter la falsification et la falsification.

et

En cryptographie, un certificat de clé publique (également appelé certificat numérique ou certificat d'identité) est un document électronique qui utilise une signature numérique pour lier ensemble une clé publique avec une identité - des informations telles que le nom d'une personne ou d'une organisation, son adresse, etc. Le certificat peut être utilisé pour vérifier qu'une clé publique appartient à un individu.

Donc, si je comprends bien ce qui précède, une signature numérique prouve simplement qu'un document n'a pas été falsifié tandis qu'un certificat numérique prouve que le document vient réellement de vous.

16
R0MANARMY

Conceptuellement, ce sont des sortes d'oposites. Avec un certificat numérique vous chiffrez avec la clé publique et décryptez avec la clé privée, de cette façon vous pouvez vous assurer que seule la personne avec la clé privée peut lire votre texte. Avec une signature numérique, vous cryptez avec la clé privée et décryptez avec la clé publique, de cette façon, tout le monde peut décrypter, mais seule la personne avec la clé privée peut crypter afin que vous sachiez que le message provient de la personne avec la clé privée.

9
Ben Robinson

La signature numérique expliquée:

Sender   : Encrypt(hash(message), priv_key) = Dig_sign 
Receiver : Decrypt(Dig_sign, pub_key) => hash_of_message == hash(message) 
4
Humoyun Ahmad

La réponse de @ numan fournit une bonne explication du processus nécessaire pour garantir la confidentialité, l'intégrité et l'authentification. Mais cela ne répond pas à une vraie question.

Le but d'une signature numérique est de fournir ces services de base,

  • Authenticité: L'expéditeur a signé les données comme il le prétend (les données doivent être chiffrées à l'aide de la clé privée de l'expéditeur).

  • Intégrité: Pour garantir que les données n'ont pas changé depuis leur signature.

  • Non-répudiation: Le récepteur peut fournir les données à un tiers qui peut accepter la signature numérique comme preuve que l'échange de données a bien eu lieu. En outre, l'expéditeur (signataire) ne peut pas refuser d'avoir signé les données.

et il a des propriétés pour assurer l'authenticité et l'intégrité, telles que,

La signature n'est pas falsifiable: Fournit la preuve que le signataire, et personne d'autre, a signé le document.

La signature ne peut pas être répudiée : ce qui signifie, à des fins juridiques, que la signature et le document sont considérés comme des choses physiques. Les signataires ne peuvent pas prétendre plus tard qu'ils ne l'ont pas signé.

La signature n'est pas modifiée : Une fois qu'un document est signé, il ne peut pas être modifié.

La signature n'est pas réutilisable : la signature fait partie du document et ne peut pas être déplacée vers un autre document.

D'un autre côté, un certificat numérique est émis par une tierce partie autorité de certification (CA) pour vérifier l'identité du titulaire du certificat. Il contient en fait la signature numérique de l'autorité de certification qui est dérivée de la propre clé privée de l'autorité de certification.

Il contient également la clé publique associée au propriétaire du certificat numérique.

Vous voudrez peut-être lire comment Certificats numériques sont structurés.

4
Sufiyan Ghori

Les signatures numériques sont générées électroniquement, ce qui est utilisé pour garantir l'authenticité et l'intégrité des données, par exemple les messages électroniques. Considérant que, le certificat numérique est un moyen de prouver l'identité du titulaire du site Web et il donne la protection contre l'échange de données des visiteurs à l'expéditeur.

On peut dire que c'est similaire à d'autres preuves d'identité d'une personne comme le permis de conduire ou n'importe quelle carte d'identité d'employé. Des tiers de confiance émettent des certificats numériques pour établir l'identité de la personne qui possède le certificat. Ces tiers qui émettent des certificats numériques sont appelés Autorité de certification (CA). En termes simples, les certificats numériques sont utilisés pour vérifier la fiabilité d'un site Web et les signatures numériques sont utilisées pour vérifier la fiabilité des informations.

Généralement, trois algorithmes sont utilisés par un système de signature numérique. Première - L'algorithme de génération de clés est utilisé pour générer des paires de clés publiques et privées. Deuxième - L'algorithme de signature est utilisé pour générer une signature qui est utilisée au moment de donner la clé privée et un message. Troisièmement et enfin, l'algorithme de vérification de signature est utilisé pour la vérification du message, d'une signature et de la clé publique. Voici les raisons les plus courantes pour appliquer une signature numérique.

1. authentification
2.Intégrité
3. Non-répudiation

Alors que les certificats numériques, utilise une signature numérique pour attacher une clé publique à toute entité ou individu particulier. Certaines des informations transportées avec les certificats numériques sont comme, un numéro de série qui est utilisé pour identifier chaque certificat de manière unique, la personne ou l'entité identifiée par le certificat et l'algorithme qui est utilisé pour créer la signature. En dehors de cela, il contient l'AC qui vérifie toutes les informations du certificat, la date de validation et d'expiration du certificat. Il contient également une clé publique et une empreinte numérique pour garantir que le certificat n'est pas modifié. Les certificats numériques sont principalement utilisés sur les sites Web de commerce électronique basés sur HTTPS pour gagner la confiance des visiteurs du site Web.

Le certificat numérique contient les éléments suivants:

Nom du titulaire du certificat
Numéro de série
Date d'expiration du certificat
Copie de la clé publique du titulaire du certificat
Signature numérique de l'autorité de certification

Différence clé entre la signature numérique et le certificat numérique

Signature numérique

Il vérifie l'authenticité d'un document
Des clés asymétriques sont utilisées pour crypter et décrypter le document.
Il offre authentification, non-répudiation et intégrité.

Certificat numérique

Il crée une identité et améliore la fiabilité des sites Web.
Un certificat est délivré par une autorité de certification une fois le processus de vérification terminé.

Lisez les détails sur les signatures numériques et leur fonctionnement et sur les certificats numériques ici .

4
Sajid Hussain

Je fais récemment des recherches sur la signature numérique et le certificat numérique et j'ai trouvé un intéressant blog , basé sur le fait que la page Web pourrait être cassée, permettez-moi d'essayer de l'illustrer ici.

Tout d'abord, passons en revue la cryptographie à clé publique sur wiki,

La cryptographie à clé publique, ou cryptographie asymétrique, est un système cryptographique qui utilise des paires de clés: des clés publiques qui peuvent être largement diffusées et des clés privées qui ne sont connues que du propriétaire. La génération de telles clés dépend d'algorithmes cryptographiques basés sur des problèmes mathématiques pour produire des fonctions à sens unique. Une sécurité efficace ne nécessite que la confidentialité de la clé privée; la clé publique peut être distribuée ouvertement sans compromettre la sécurité.

Une utilisation courante de la cryptographie à clé publique est Cryptage à clé publique , j'ai résumé le scénario d'utilisation courante avec le diagramme de séquence ci-dessous:

enter image description here

Bob a une clé publique et une clé privée, il peut donner la clé publique à plusieurs expéditeurs de messages. Pour ces expéditeurs, ils peuvent utiliser la clé publique pour crypter le message avant de l'envoyer. Seul Bob peut déchiffrer le message avec une clé privée. Pour les autres destinataires, ils ne savent pas quel est le vrai message.

Une autre utilisation courante de Cryptographie à clé publique est Signatures numériques , veuillez vérifier le diagramme comme ci-dessous:

enter image description here

Au contraire, Bob utilise une clé privée pour chiffrer le résumé à la signature. Pat sait que le document est envoyé par Bob s'il peut décrypter la signature avec la clé publique fournie. En hachant le document reçu à digérer, il peut alors vérifier si le document a été modifié ou non en le comparant au digest déchiffré.

Cependant, supposons qu'il y ait quelqu'un nommé Doug qui prétend être Bob et veut tromper Pat. Il peut envoyer une clé publique et une signature numérique à Pat au nom de Bob, comment Pat peut-il savoir si la clé provient de Bob ou non? C'est pourquoi le certificat numérique est importé.

Vérifions le diagramme ci-dessous:

enter image description here

L'autorité de certification agit en tant que tiers de confiance. Cela signifie que le certificat numérique est émis par CA s'il peut être déchiffré par clé publique CA. Après le décryptage, pat vérifiera si Bob est en règle et les informations de certificat sur son identité n'ont pas été modifiées. Pat prend ensuite la clé publique de Bob pour effectuer l'authentification liée à la signature numérique comme mentionné ci-dessus.

1
Gearon

Aucune différence si la signature/le certificat est signé par la même autorité de certification/entité de confiance.

Si les données signées contiennent des données signées (par exemple, la clé publique de l'expéditeur) signées par l'AC/l'entité de confiance pour confier l'expéditeur (c'est-à-dire la chaîne de confiance), il n'y a pas de différence également (ou devrions-nous appeler le certificat de données signé?) .

En d'autres termes, le certificat est une sorte d'usages de signature.

0
Avin Shum