Question

Quelles sont les différences entre SHA1 et RSA? Sont-ils seulement des algorithmes différents ou sont-ils fondamentalement (à savoir utilisé pour différentes choses) différentes à un certain niveau.

Était-ce utile?

La solution

fondamentalement différents.

SHA1 est un algorithme de hachage, qui est une fonction à sens unique, en tournant une entrée d'une taille quelconque en une sortie à longueur fixe (160 bits dans ce cas). Une fonction de hachage cryptographique est une pour laquelle il ne devrait pas être possible de trouver deux entrées donnant la même sortie que par la force brute (par exemple, avec une fonction de 128 bits, vous avez besoin d'essayer en moyenne 2 ^ 64 message à trouver un tel « collision » en raison de ce qu'on appelle le paradoxe d'anniversaire -. Google pour plus)

En fait, pour SHA1, ce n'est plus le cas - l'algorithme est (en termes de chiffrement au moins) rompu maintenant, avec une attaque de collision décrite par Xiaoyun Wang et al qui bat une attaque d'anniversaire classique. La famille SHA2 est pas cassé, et un processus est en cours par le NIST se mettre d'accord sur un algorithme de SHA-3 ou de la famille d'algorithmes.

Modifier -. Google ont maintenant généré et publié une collision SHA1 réelle

RSA est un algorithme de chiffrement asymétrique, le cryptage d'une entrée dans une sortie qui peut alors être déchiffré (contraste un algorithme de hachage qui ne peut pas être inversée). Il utilise une clé différente pour le chiffrement (l'un public) que pour le décryptage (l'un privé). Cela peut donc être utilisé pour recevoir des messages chiffrés des autres -. Vous pouvez publier votre clé publique, mais seulement vous avec la clé privée peut alors décrypter les messages chiffrés avec elle

Si vous inversez les clés de RSA, il peut être utilisé pour générer une signature numérique - en chiffrant quelque chose avec votre clé privée, tout le monde peut déchiffrer avec la clé publique et, si elles ne manqueront pas la clé publique appartient à vous, ils ont confiance que vous étiez celui qui a chiffré l'original. Cela se fait normalement en conjonction avec une fonction de hachage - vous hachez votre entrée, puis que crypter avec votre clé privée, donnant une signature numérique d'une longueur fixe pour votre message d'entrée

.

Autres conseils

Les réponses avant sont déjà des explications suffisantes. Mais je pense que vous posez cette question simplement parce que SHA et RSA viennent souvent together.So me laisser expliquer pourquoi.

Tout d'abord, gardez à l'esprit que

RSA est pas efficace, mais SHA est.

Supposons que vous téléchargez Windows 7, et que vous voulez vous assurer que si elle est Windows 7 d'origine de Microsoft. Si Microsoft Windows 7 juste encrypte par RSA, il prend vraiment beaucoup de temps pour le faire, nous ne pouvons pas supporter du tout. Ainsi, Microsoft utilise SHA1 sur Windows 7 et génère un ensemble de données à long 128 bits. Et puis Microsoft crypte ces données à long 128 bits avec RSA (utiliser sa clé privée).

Alors, tout ce que vous devez faire est que vous assurer que votre clé publique est de Microsoft. Et puis utiliser SHA1 pour générer un 128 bits trop de données à long. Et puis utilisez la clé publique de RSA pour déchiffrer la signature de Microsoft. Ensuite, vous comparez simplement les deux longues données 128 bits pour voir si elles correspondent.

SHA1 est un algorithme de hachage (document et signature de certification), tandis que RSA est un algorithme de chiffrement / déchiffrement (communications sécurisées).

Comme d'autres l'ont commenté, ils sont fondamentalement différentes choses qui servent différentes fonctions. Vous utilisez RSA pour brouiller l'information sous une forme apparemment aléatoire, pendant que vous utilisez SHA1 pour assurer l'intégrité du message (à savoir qu'aucun des bits ont changé). Dans une application de sécurité, vous utiliserez un ou les deux, en fonction de la fonctionnalité dont vous avez besoin.

SHA1 est une fonction de hachage cryptographique, alors que RSA est un algorithme pour le chiffrement.

Une fonction de hachage prend un morceau de données et renvoyer une chaîne de longueur fixe. Dans une fonction de hachage cryptographique toutes les chaînes de retour ont la même probabilité. Étant donné que le nombre de hachage que vous ne pouvez pas déterminer l'entrée, et vous ne pouvez trouver une autre entrée qui donne le même hachage (excpetion avec une très très faible probabilité). SHA1 a des failles de sécurité.

Un algorithme de chiffrement donne prend un morceau de données, mais la sortie n'est pas de longueur fixe - votre cryptage. Compte tenu de la sortie (le cryptage), vous pouvez (si vous avez les clés à droite) déterminer l'entrée.

L'algorithme Secure Hash Algorithm (SHA) prend un message de moins de 264 bits de longueur et produit un résumé de message 160 bits. L'algorithme est légèrement plus lent que MD5, mais le plus grand message digest rend plus sûr contre les collisions force brute et les attaques d'inversion. L'algorithme spécifié dans la norme Secure Hash (SHS, FIPS 180), a été développé par NIST. SHA-1 est une révision de SHA qui a été publié en 1994; la révision corrigé un défaut non publiée dans le SCS. Son design est très similaire à la famille MD4 des fonctions de hachage développées par Rivest. SHA-1 est également décrit dans la norme ANSI X9.30.

RSA est un algorithme de cryptographie à clé publique. Il est le premier algorithme connu pour convenir à la signature ainsi que le cryptage, et l'un des premiers grands progrès dans la cryptographie à clé publique. RSA est largement utilisé dans les protocoles de commerce électronique, et est considéré comme étant donné les clés sécurisées suffisamment longues et l'utilisation de mises en œuvre mises à jour.

La différence la plus notable est que SHA est un algorithme de chiffrement RSA alors est à la fois un cryptage ainsi que l'algorithme de signature.

8/16/2005 il a été annoncé qu'il est possible de trouver une collision SHA-1 en 2 ^ 63 opérations. Ce résultat de recherche est due au professeur Wang Xiaoyun de l'Université Tsinghua à Beijing, en collaboration avec les professeurs Andrew Yao et Frances Yao. Elle prolonge le travail de Wang, Yin et Yu, qui a démontré qu'une collision pouvait être trouvée dans 2 ^ 69 opérations. Cela signifie qu'il est plus facile pour une collision se produire dans SHA qu'en RSA -. Mais notamment, pas deux clés similaires ont déjà été constaté que sont entrés en collision

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top