GNU/Linux >> Tutoriels Linux >  >> Linux

Comment la fonction Sha1sum vous donne-t-elle un hachage unique ??

Fermé. Cette question est hors sujet. Il n'accepte pas de réponses actuellement.

Vous voulez améliorer cette question ? Mettez à jour la question afin qu'elle soit sur le sujet pour Unix et Linux Stack Exchange.

Fermé il y a 2 ans.


Améliorer cette question

J'ai lu cela en utilisant le sha1sum exécutera l'algorithme SHA-1 et vous donnera un résultat "unique", mais comment est-ce possible ?

sha1sum vous donne un hachage de 40 caractères, comme ceci :

e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e

Celui-ci comporte 40 caractères et comporte des caractères hexadécimaux, de sorte que le hachage peut avoir au plus 16 combinaisons.

Cela devrait signifier que, pour deux fichiers aléatoires, il existe une petite chance que leur somme de hachage soit exactement la même, n'est-ce pas ?

Réponse acceptée :

Un hachage SHA-1, comme tout hachage, n'est pas unique; en fait, des collisions ont été trouvées (et plus important encore, fabriquées).

La propriété souhaitable d'une fonction de hachage est qu'il est difficile de construire deux fichiers qui produisent le même hachage, pas que les hachages produits soient uniques (comme vous le mentionnez, une somme SHA-1 a 160 bits, il n'y a donc que 2 hachages différents); difficile, ce qui signifie que vous ne pouvez pas trouver une collision plus rapidement que la recherche par force brute. Si vous choisissez un fichier, un autre fichier choisi au hasard a une chance sur deux d'avoir le même hachage. SHA-1 est considéré comme non sécurisé depuis 2005 ; vous verrez les chances qui y sont données comme une sur 2, grâce à l'attaque d'anniversaire (les chances sont celles de trouver deux fichiers en collision dans une grande botte de foin, pas celles de trouver un fichier en collision pour une cible spécifique).


Linux
  1. Pourquoi `md5sum` ne donne-t-il pas le même hachage qu'Internet ?

  2. Comment trouver l'algorithme de hachage utilisé pour hacher les mots de passe ?

  3. Comment mettre en miroir la sortie standard d'un terminal à un autre ?

  4. Comment générer un hachage matériel unique ?

  5. Comment régler par programmation l'horloge matérielle sous Linux ?

Je pense que le PC est piraté. Comment faire??

Comment donnez-vous à su les variables d'environnement utilisateur actuelles

Comment ajouter la fonction d'interrogation au code du module du noyau ?

Comment spécifiez-vous l'emplacement des bibliothèques à un binaire ? (Linux)

Comment récupérer l'heure actuelle sur un serveur ?

Comment utiliser les expressions régulières avec la commande cp sous Linux ?