Générateur de hash SHA-3 et Keccak

Calculez des empreintes SHA3-224/256/384/512, Keccak-256/512 et SHAKE128/256 à partir de texte ou d'octets hexadécimaux, directement dans votre navigateur.

Le générateur de hash SHA-3 et Keccak s'exécute entièrement dans votre navigateur. Le texte et les octets hexadécimaux que vous hachez sont traités sur votre appareil et ne sont jamais téléversés vers ArrayKit.

Ouvrir l'outil de hash SHA-256 et SHA-1

À propos de Hash SHA-3 et Keccak

Le générateur de hash SHA-3 et Keccak calcule toute la famille FIPS 202 — SHA3-224, SHA3-256, SHA3-384 et SHA3-512 — plus les Keccak-256 et Keccak-512 d'origine et les fonctions à sortie extensible SHAKE128/SHAKE256. Tapez du texte UTF-8 ou passez en mode hexadécimal pour hacher des octets bruts, et l'empreinte en minuscules se met à jour au fil de la frappe. Il est conçu pour la confusion quotidienne autour de ces algorithmes : SHA3-256 et Keccak-256 semblent identiques mais diffèrent d'un octet de remplissage, et Ethereum a adopté Keccak-256 avant que le standard ne soit finalisé. Utilisez-le pour dériver un sélecteur de fonction Ethereum, vérifier un résultat keccak256 en Solidity, contrôler une somme de contrôle SHA-3, ou choisir une longueur de sortie SHAKE. Chaque empreinte est calculée dans votre navigateur, si bien que les valeurs que vous hachez restent sur votre appareil.

Fonctionnalités

Comment utiliser Hash SHA-3 et Keccak

  1. Choisissez un algorithme — SHA3-256, Keccak-256, SHAKE256, et plus
  2. Choisissez UTF-8 pour hacher du texte ou Hex pour hacher des octets bruts
  3. Tapez ou collez votre entrée ; l'empreinte apparaît instantanément
  4. Pour SHAKE, définissez la longueur de sortie en bits, puis copiez l'empreinte hexadécimale

Exemple

Entrée

algorithm: Keccak-256
input: "" (empty string)

Sortie

c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470

Le hash Keccak-256 de la chaîne vide sur lequel l'outillage Ethereum s'appuie partout.

Erreurs courantes et dépannage

Foire aux questions

Quelle est la différence entre SHA-3 et Keccak-256 ?
Ils exécutent la même éponge Keccak mais ajoutent un octet de séparation de domaine différent avant le remplissage (0x06 pour SHA-3, 0x01 pour Keccak). Cette seule différence rend leurs empreintes complètement différentes, si bien qu'une valeur hachée avec SHA3-256 ne sera jamais égale à la même valeur hachée avec Keccak-256.
Pourquoi Ethereum utilise-t-il Keccak-256 plutôt que SHA3-256 ?
Ethereum a adopté Keccak-256 depuis la soumission Keccak d'origine avant que le NIST ne finalise SHA-3 avec un remplissage légèrement différent. Pour rester compatibles, Ethereum et le keccak256 de Solidity ont conservé la variante d'origine, c'est pourquoi les adresses et les sélecteurs de fonction reposent sur Keccak-256.
Que sont SHAKE128 et SHAKE256 ?
Ce sont des fonctions à sortie extensible (XOF) : au lieu d'une taille fixe, vous choisissez combien de bits d'empreinte vous voulez. Le 128 et le 256 désignent leur niveau de sécurité, pas la longueur de sortie, vous pouvez donc demander 128, 256, 512 bits ou plus à l'une comme à l'autre.
Comment hacher des octets bruts pour correspondre à un appel keccak256 sur des données encodées en ABI ?
Basculez le sélecteur d'entrée sur Hex et collez les octets en hexadécimal — un préfixe 0x optionnel et des espaces sont acceptés. L'outil hache ces octets exacts plutôt que leur texte UTF-8, ce qu'attend un keccak256 de Solidity sur des données encodées.
SHA-3 est-il simplement une version plus rapide ou plus sûre de SHA-256 ?
Non. SHA-3 repose sur une conception totalement différente — une éponge Keccak plutôt que la construction de Merkle–Damgård derrière SHA-256 — choisie comme alternative standardisée. À taille d'empreinte égale, ils offrent une résistance aux collisions comparable, et leurs sorties sont entièrement différentes, donc SHA-3 n'est pas un remplacement direct.
Quelle longueur de sortie choisir pour SHAKE ?
Alignez-vous sur ce que demande la spécification que vous implémentez. Une valeur par défaut courante est 256 bits pour SHAKE128 et 512 bits pour SHAKE256, mais tout multiple positif de 8 bits fonctionne — cet outil renseigne ces valeurs par défaut et vous laisse les remplacer.

Outils associés

Tous les outils ArrayKit