Fonctionnement
Le hachage utilise @noble/hashes, une bibliothèque en JavaScript pur auditée, qui fonctionne donc avec la politique de sécurité stricte du site, sans WebAssembly. Les fichiers sont lus par tranches de 4 MB et transmis simultanément à chaque algorithme sélectionné : une image de firmware de plusieurs gigaoctets n’a jamais besoin de tenir en mémoire.
Collez une somme de contrôle publiée dans Hash attendu, en hexadécimal (casse indifférente) ou en Base64, pour comparer.
Quel algorithme ?
| Algorithme | Sortie | Statut |
|---|---|---|
| MD5 | 128 bits | cassé pour la sécurité ; convient pour détecter une corruption |
| SHA-1 | 160 bits | cassé pour la sécurité (collisions depuis 2017) |
| SHA-256 | 256 bits | choix par défaut actuel |
| SHA-384 / SHA-512 | 384 / 512 bits | actuels ; plus rapides que SHA-256 sur les CPU 64 bits |
Pour les mots de passe, utilisez une fonction de hachage lente dédiée (Argon2, scrypt, bcrypt), jamais une simple empreinte.
HMAC
Avec une clé, chaque sortie devient HMAC-<algorithm> (RFC 2104) : l’empreinte utilisée par les signatures de webhooks (GitHub, Stripe) et par JWT HS256. La clé et le texte restent uniquement en mémoire et ne sont jamais enregistrés.