🍋
Menu
Security

Checksum

Checksum (Code de Vérification d'Intégrité)

Une valeur de taille fixe calculée à partir d'un bloc de données qui sert d'empreinte pour vérifier l'intégrité des données — si un seul bit est modifié, la somme de contrôle change, indiquant une corruption ou une falsification.

Détail technique

Les checksums vont des plus simples (parité, somme d'octets) aux cryptographiques (SHA-256). CRC-32 (Contrôle de Redondance Cyclique) utilise la division polynomiale pour produire un checksum de 32 bits — il est rapide et détecte les erreurs de bits en rafale, mais n'est pas sécurisé contre la falsification intentionnelle. MD5 (128 bits) et SHA-1 (160 bits) sont des hashes cryptographiques maintenant considérés comme cassés pour la sécurité, mais toujours utiles pour la vérification d'intégrité. SHA-256 et SHA-3 sont considérés comme sûrs. Les checksums sont utilisés dans les protocoles réseau (TCP, Ethernet), les systèmes de fichiers (ZFS, Btrfs), les téléchargements logiciels (vérification de hash .sha256) et les systèmes de contrôle de version (git utilise SHA-1/SHA-256 pour l'identification des objets).

Exemple

```javascript
// Checksum — Web Crypto API example
const data = new TextEncoder().encode('sensitive data');
const hash = await crypto.subtle.digest('SHA-256', data);
const hex = Array.from(new Uint8Array(hash))
  .map(b => b.toString(16).padStart(2, '0')).join('');
```

Outils associés

Termes associés