2010-10-14 5 views
0

est-il difficile de trouver x où sha1 (x) = x? où x est la forme de « c999303647068a6abaca25717850c26c9cd0d89c »Sha-1 hash point fixe

Je pense que le fait qu'il ya des collisions SHA1 rendent cela possible, mais la facilité (ou dur) est-il de trouver un exemple?

+0

Caractères hex. Supérieurs ou minuscules? ;-) – Lucero

+2

En fait, il est tout à fait possible qu'aucun tel x n'existe pour une fonction de hachage arbitraire (comme pour SHA1 spécifiquement, je ne sais pas). –

+1

Voulez-vous dire "Comment trouver les valeurs de x telles que sha1 (x) = 'C999303 ...'"? –

Répondre

1

SHA1 Collisions can be Found in 2^63 Operations. Je dirais que c'est plutôt difficile. Vous pourriez aller à la force en forçant. Obtenez le livre appliqué à la cryptographie et asseyez-vous pour une lecture. Regardez dans le paradoxe de l'anniversaire, qui peut être utilisé pour trouver des collisions.

+0

Et en règle générale, une collision de hachage vers un hachage parfaitement sécurisé devrait prendre 2^(n/2) tentatives (par exemple: un SHA1 parfaitement sécurisé nécessiterait 2^80 tentatives car il a 160 bits). Voir: [Birthday attack] (http://en.wikipedia.org/wiki/Birthday_attack) – NullUserException

+1

Le paradoxe de bday peut être utilisé pour trouver des collisions arbitraires dans le domaine de hachage. Il ne transfère pas d'informations sur la recherche d'une graine pour un hachage particulier – Eric

+0

votre lien va juste à la page d'accueil rsa.com. –

6

Lire Cryptanalysis of SHA-1 sur Wikipedia. Il y a plus d'informations que nécessaire sur cet article et ses références combinées.

Edit:

comment est-il pour trouver difficile x où SHA1 (x) = x?

Une telle attaque est connu comme un preimage attack et de trouver un tel x est généralement beaucoup plus difficile qu'une collision attack générale, à savoir trouver arbitraire x1 et x2 tels que sha(x1) = sha(x2).

0

La raison la plus importante de l'existence de fonctions de hachage cryptographiques (dont les fonctions de la famille SHA sont) est de rendre difficile la recherche des entrées correspondant à un condensé donné. Une fonction de hachage cryptographique produisant des digests N bits est considérée comme bonne si, pour trouver une entrée correspondante, il faut effectuer 2^N/2 opérations en moyenne, c'est-à-dire que la force brute n'est pas possible autrement.

0

Vous êtes donc à la recherche d'un invariant mathématique pour la transformation SHA1. sous-espace invariant problem. :-)