Merci Pirate,
Qu'est-ce qu'un hashcode (on dit " condensat " en français ou, parfois, "chiffre clé", mais, le 27 févr 2003, le Journal Officiel
de la langue française a dit :
Terminologie officielle française : Hachage) ?
Parlons
de hachage :
Hashcode (Fonction de hachage)Dans cet article, assez long, on parle
de beaucoup
de choses dont l'intérêt des hashcodes :
Un "chiffre clé" est une valeur calculée par un algorithme de hachage (les plus universellement utilisés sont CRC16, CRC32, NTLM, MD5, SHA-1, SHA-2, SHA-256) appliqué à une donnée (contenu d'un fichier, chaîne de caractères comme un "mot de passe", etc. ...), uniquement la donnée et toute la donnée. Peu importe le nom du contenant (s'il y en a un - nom du fichier...), ses attributs, ses dates prétendues de création ou de dernière modification, etc. ... qui sont toutes des données externes à la donnée elle-même (elles forment l'enveloppe dont on ne doit pas tenir compte - on ne tient compte que du contenu).
On y parle aussi
de l’obsolescence des algorithmes MD5 et SHA-1 :
Depuis 2004 pour MD5 et 2012 pour SHA-1, ces deux algorithmes commencent à être en retrait (des collisions commencent à pouvoir être calculées à volonté pour MD5, dès 2004).
Mais, qu'est-ce qu'une collision ?
CollisionPour en savoir plus : quelques fonctions
de hachage :
MD5SHA-1SHA-256Pour vous en servir, par exemple pour calculer le hashcode d'un fichier et soumettre ce hashcode à
VirusTotal - Analyse de fichiers - Multi-antivirus gratuit en ligne sans avoir à uploader le fichier, installez :
HashTabHashTab calcule les condensats dans
de nombreux algorithmes. Les algorithmes supportés par HashTab dans sa version actuelle (6.0.0.28 au moment
de la mise à jour
de cet article -
vérification du 30.06.2016) sont :
- Adler32
- BLAKE2sp
- Btih
- CRC32
- CRC64 (new)
- ED2K
- Gost
- Keccak-224 (new)
- Keccak-256 (new)
- Keccak-384 (new)
- Keccak-512 (new)
- MD2
- MD4
- MD5
- Ripemd-128
- Ripemd-160 (new)
- Ripemd-256
- Ripemd-320
- SHA-1
- SHA-2 SHA-256
- SHA-2 SHA-256 base 64
- SHA-2 SHA-384
- SHA-2 SHA-512
- SHA3-224
- SHA3-256
- SHA3-384
- SHA3-512
- TTH
- Tiger
- Whirlpool
Un usage très intelligent des hashcodes (condensats) est celui
du contrôle d'intégrité :
On construit une base
de données des hashcodes
SHA-256 de tous les
fichiers système et applications tels que proposés par les éditeurs (Microsoft, Mozilla, Adobe, Linux, Unix, etc. tous les logiciels
de tous les éditeurs
de logiciels, incluant tous les pilotes
de tous les fabricants
de périphériques, etc.)
On développe un outil qui calcul les hashcodes
SHA-256 de tous les
fichiers présents dans un ordinateur.
Tout ce qui a un hashcode connu
de la base
de données est sain.
Tout le reste est inconnu.
C'est le contrôle d'intégrité.
Ce qui ne veut absolument pas dire que c'est un malware - la lettre que vous avez écrite à votre belle-mère n'est pas un malware... enfin... je crois. Les
fichiers inconnus sont, probablement tous, vos
fichiers personnels. Ils doivent être testés, rien
de plus.
Ce n'est qu'après que l'on arbitre et on prend des décisions.
Notons un usage des hashcodes dans le tri des données (une structure
de données comme le sont l'indexation ou les arbres-B) sous le vocable français d'
Adressage dispersé.
C'était un peu
de lecture pour vos longues soirées d'hiver
Cordialement