Qu'est-ce que SHA-3 ? Guide du Dernier Standard de Hachage

16 Jun 2026 671 words

Qu'est-ce que SHA-3 ?

SHA-3 (Secure Hash Algorithm 3) est le plus récent membre de la famille Secure Hash Algorithm, publié par le NIST en 2015. Contrairement à SHA-2, qui est basé sur la construction Merkle-Damgård, SHA-3 utilise une conception fondamentalement différente appelée construction en éponge. Cette différence rend SHA-3 résistant à certaines classes d'attaques qui menacent SHA-2.

L'algorithme initialement nommé Keccak (prononcé "ketchak") a remporté le concours de fonctions de hachage du NIST en 2012 après un processus d'évaluation publique de cinq ans. Le NIST a normalisé quatre longueurs de hachage : SHA3-224, SHA3-256, SHA3-384 et SHA3-512, ainsi que deux fonctions à sortie extensible (XOF) : SHAKE128 et SHAKE256.

Comment Fonctionne SHA-3

SHA-3 utilise la construction en éponge, qui se compose de deux phases : absorption et essorage. Dans la phase d'absorption, les données d'entrée sont introduites dans l'état interne par blocs. Dans la phase d'essorage, la sortie de hachage est extraite.

L'état interne de SHA-3 est un tableau 3D de 5×5 voies, chacune contenant 64 bits, pour une taille d'état totale de 1600 bits. La fonction de permutation, appelée Keccak-f, est appliquée itérativement pendant les deux phases pour mélanger l'état.

Cette conception donne à SHA-3 plusieurs avantages :

  • Il n'est pas vulnérable aux attaques par extension de longueur qui affectent SHA-2
  • La construction en éponge fournit une preuve de sécurité
  • Il offre de bonnes performances dans les implémentations matérielles
  • Les variantes XOF produisent une sortie de longueur arbitraire

SHA-3 vs SHA-2

Caractéristique SHA-2 SHA-3
Construction Merkle-Damgård Éponge (Keccak)
Publié 2001 2015
Tailles de sortie 224, 256, 384, 512 224, 256, 384, 512 + XOF
Extension de longueur Vulnérable Résistant
Vitesse logicielle Plus rapide Plus lent
Vitesse matérielle Modérée Excellente
Résistance aux canaux auxiliaires Bonne Meilleure

Quand Utiliser SHA-3

SHA-3 n'est pas destiné à remplacer SHA-2 immédiatement. SHA-2 reste sûr, et aucune attaque pratique ne réduit sa sécurité en dessous des niveaux acceptables. SHA-3 existe comme solution de secours au cas où SHA-2 serait éventuellement cassé.

Utilisez SHA-3 lorsque :

  • Vous avez besoin de résistance aux attaques par extension de longueur
  • Votre application s'exécute sur du matériel avec accélération SHA-3
  • Vous souhaitez diversifier les dépendances cryptographiques loin de SHA-2
  • Vous avez besoin d'une fonction de hachage avec une conception fondamentalement différente (défense en profondeur)
  • Vous avez besoin d'une sortie de longueur variable de SHAKE128 ou SHAKE256

Exemples de Code

// PHP
echo hash('sha3-256', 'hello');
echo hash('sha3-512', 'hello');
import hashlib

print(hashlib.sha3_256(b'hello').hexdigest())
print(hashlib.sha3_512(b'hello').hexdigest())

# SHAKE (extendable output)
print(hashlib.shake_128(b'hello').hexdigest(16))  # 16 bytes output
print(hashlib.shake_256(b'hello').hexdigest(32))  # 32 bytes output
// Node.js
const crypto = require('crypto');
console.log(crypto.createHash('sha3-256').update('hello').digest('hex'));
console.log(crypto.createHash('sha3-512').update('hello').digest('hex'));

SHAKE128 et SHAKE256

SHAKE (Secure Hash Algorithm KEccak) est une fonction à sortie extensible (XOF). Contrairement aux fonctions de hachage à longueur fixe, les XOF produisent une sortie de n'importe quelle longueur souhaitée. SHAKE128 offre une sécurité de 128 bits avec une longueur de sortie arbitraire, tandis que SHAKE256 offre une sécurité de 256 bits.

Les XOF sont utiles pour :

  • Générer des clés cryptographiques de longueur arbitraire à partir d'une graine
  • Créer des valeurs de masquage dans les schémas de chiffrement
  • Construire des chiffrements de flux et des générateurs de nombres aléatoires

Outil en Ligne

Le Générateur de Haché SHA-3 sur Help2Code calcule instantanément les hachés SHA3-224, SHA3-256, SHA3-384 et SHA3-512. Comparez la sortie avec les hachés SHA-2 en utilisant le Générateur de Hachés Multiples.

Conclusion

SHA-3 est une fonction de hachage moderne et bien conçue avec une marge de sécurité conservative. Bien que SHA-2 reste le standard pour la plupart des applications, SHA-3 est un excellent choix lorsque vous avez besoin d'une fonction de hachage de secours pour la défense en profondeur, ou lorsque vous avez besoin des capacités uniques des fonctions à sortie extensible SHAKE.


About this article

Apprenez ce qu'est SHA-3, en quoi il diffère de SHA-2, et quand utiliser le dernier standard de hachage NIST dans vos applications.


Related Articles


Related Tools

Help2Code Logo
Menu