-
Bitcoin
$106,754.6083
1.33% -
Ethereum
$2,625.8249
3.80% -
Tether USDt
$1.0001
-0.03% -
XRP
$2.1891
1.67% -
BNB
$654.5220
0.66% -
Solana
$156.9428
7.28% -
USDC
$0.9998
0.00% -
Dogecoin
$0.1780
1.14% -
TRON
$0.2706
-0.16% -
Cardano
$0.6470
2.77% -
Hyperliquid
$44.6467
10.24% -
Sui
$3.1128
3.86% -
Bitcoin Cash
$455.7646
3.00% -
Chainlink
$13.6858
4.08% -
UNUS SED LEO
$9.2682
0.21% -
Avalanche
$19.7433
3.79% -
Stellar
$0.2616
1.64% -
Toncoin
$3.0222
2.19% -
Shiba Inu
$0.0...01220
1.49% -
Hedera
$0.1580
2.75% -
Litecoin
$87.4964
2.29% -
Polkadot
$3.8958
3.05% -
Ethena USDe
$1.0000
-0.04% -
Monero
$317.2263
0.26% -
Bitget Token
$4.5985
1.68% -
Dai
$0.9999
0.00% -
Pepe
$0.0...01140
2.44% -
Uniswap
$7.6065
5.29% -
Pi
$0.6042
-2.00% -
Aave
$289.6343
6.02%
Qu'est-ce que Keccak?
Keccak, standardisé en tant que SHA-3, est crucial dans l'EVM d'Ethereum pour les transactions de hachage et les contrats intelligents, assurant la sécurité de la blockchain.
Apr 08, 2025 at 11:28 am

Keccak est une fonction de hachage cryptographique qui a été sélectionnée comme gagnant de la compétition de fonction de hachage NIST et standardisée par la suite comme SHA-3 (algorithme de hachage sécurisé 3). Dans le monde des crypto-monnaies, Keccak joue un rôle crucial, en particulier dans la blockchain Ethereum, où il est utilisé comme base de la fonction de hachage de la machine virtuelle Ethereum (EVM). Cet article se plongera dans les détails de Keccak, sa signification dans l'écosystème de la crypto-monnaie et comment il est mis en œuvre dans Ethereum.
Les origines et le développement de Keccak
Keccak a été conçu par Guido Bertoni, Joan Daemen, Michaël Peeters et Gilles Van Assche. Le nom «Keccak» est dérivé de la langue Ket, parlé par les Ket en Sibérie. L'algorithme a été introduit pour la première fois en 2008 et a été soumis au concours NIST en 2008. Après des tests et une évaluation rigoureux, Keccak a été sélectionné comme gagnant en 2012 et a été standardisé en tant que SHA-3 en 2015.
La conception de Keccak est basée sur la construction de Sponge, une nouvelle approche de la conception de la fonction de hachage. La construction de l'éponge permet des longueurs de sortie variables et est très flexible, ce qui le rend adapté à un large éventail d'applications cryptographiques. Cette flexibilité est l'une des raisons pour lesquelles Keccak a été choisi pour une utilisation dans Ethereum.
Comment fonctionne Keccak
Keccak fonctionne à l'aide d'une fonction éponge, qui se compose de deux phases: la phase d'absorption et la phase de compression. Pendant la phase d'absorption, le message d'entrée est divisé en blocs de taille fixe et traités par la fonction de permutation de Keccak-F. La phase de compression extrait ensuite la sortie souhaitée de l'état interne de l'éponge.
Voici un aperçu simplifié de la façon dont Keccak traite les données:
- Initialisation : L'état interne de l'éponge est initialisé à une valeur fixe.
- Phase d'absorption : le message d'entrée est rembourré et divisé en blocs. Chaque bloc est xored avec la première partie de l'état interne, puis l'état entier est traité par la fonction de permutation de Keccak-F.
- Phase de compression : Une fois que tous les blocs ont été traités, la sortie souhaitée est extraite de l'état interne en appliquant à plusieurs reprises la fonction de permutation de Keccak-F et en lisant des parties de l'État.
La fonction de permutation de Keccak-F est le noyau de l'algorithme Keccak. Il fonctionne sur un tableau d'état de 5x5 voies, où chaque voie est un nombre fixe de bits (par exemple, 64 bits pour Keccak-F [1600]). La fonction de permutation se compose de cinq séries d'opérations: Theta, Rho, Pi, Chi et Iota. Ces opérations sont conçues pour garantir que la sortie est très imprévisible et résistante à divers types d'attaques.
Keccak à Ethereum
Dans la blockchain Ethereum, Keccak est utilisé comme base de la fonction de hachage de la machine virtuelle Ethereum (EVM), connue sous le nom de Keccak-256 . Cette fonction est utilisée à diverses fins dans l'écosystème Ethereum, notamment:
- Hachage des transactions : chaque transaction du réseau Ethereum est hachée à l'aide de KECCAK-256 pour créer un identifiant unique.
- Hachage de trie d'état : L'état de la blockchain Ethereum est stocké dans une structure de données TRIE, et chaque nœud du Trie est haché à l'aide de Keccak-256.
- Exécution du contrat intelligent : Keccak-256 est utilisé dans des contrats intelligents pour générer des identificateurs uniques pour les événements et les données de hachage.
L'utilisation de Keccak-256 dans Ethereum garantit que la blockchain reste sécurisée et résistante à divers types d'attaques. Les propriétés cryptographiques de Keccak, telles que sa résistance aux attaques de collision et aux attaques de préimage, en font un choix idéal pour sécuriser le réseau Ethereum.
Mise en œuvre de Keccak dans des projets de crypto-monnaie
Pour les développeurs travaillant sur des projets de crypto-monnaie, la mise en œuvre de Keccak peut être une étape cruciale pour assurer la sécurité de leurs systèmes. Voici quelques étapes pour implémenter Keccak dans un projet de crypto-monnaie:
Choisissez la bonne bibliothèque : plusieurs bibliothèques sont disponibles qui implémentent Keccak, comme le package de code Keccak et la bibliothèque SHA-3 dans OpenSSL. Choisissez une bibliothèque bien entretenue et largement utilisée.
Intégrez la bibliothèque : intégrez la bibliothèque choisie dans votre projet. Cela consiste généralement à ajouter la bibliothèque aux dépendances de votre projet et à l'importer dans votre code.
Utilisez la fonction Keccak : utilisez la fonction Keccak fournie par la bibliothèque pour hacher vos données. Par exemple, dans JavaScript utilisant la bibliothèque
keccak
, vous pouvez hacher une chaîne comme ceci:const keccak256 = require('keccak256');
const input = 'Hello, World!';
const hash = keccak256(input);
console.log(hash.toString('hex'));Testez et vérifiez : testez soigneusement votre implémentation pour vous assurer qu'elle produit la sortie correcte. Vous pouvez utiliser des vecteurs de test fournis par l'équipe Keccak pour vérifier votre implémentation.
Optimiser les performances : en fonction des exigences de votre projet, vous devrez peut-être optimiser les performances de votre implémentation Keccak. Cela peut impliquer l'utilisation d'accélération matérielle ou implémenter l'algorithme dans une langue de niveau inférieur comme C ou Rust.
Considérations de sécurité avec Keccak
Bien que Keccak soit considéré comme une fonction de hachage sécurisée, il y a encore des considérations de sécurité dont les développeurs devraient être conscients:
- Résistance à la collision : Keccak est conçu pour être très résistant aux attaques de collision, où deux entrées différentes produisent le même hachage de sortie. Cependant, il est toujours important d'utiliser une taille de sortie suffisante (par exemple, 256 bits) pour minimiser le risque de collisions.
- Résistance à la préimage : Keccak est également conçu pour être résistant aux attaques de préimage, où un attaquant essaie de trouver une entrée qui produit un hachage de sortie spécifique. Cependant, il est important d'utiliser une taille d'entrée suffisamment grande pour garantir que les attaques préimages sont irréalisables.
- Attaques du canal secondaire : les implémentations de Keccak peuvent être vulnérables aux attaques de canaux latéraux, tels que des attaques de synchronisation ou des attaques d'analyse de puissance. Les développeurs devraient prendre soin de mettre en œuvre Keccak d'une manière qui minimise le risque d'attaques de canaux secondaires.
Variantes de keccak et leurs utilisations
Keccak est disponible en plusieurs variantes, chacune avec différents paramètres et des cas d'utilisation. Les variantes les plus couramment utilisées dans l'espace des crypto-monnaies sont:
- Keccak-224 : Cette variante produit une sortie 224 bits et est utilisée dans certaines applications cryptographiques légères.
- KECCAK-256 : Cette variante produit une sortie 256 bits et est la variante la plus couramment utilisée dans Ethereum et d'autres projets de crypto-monnaie.
- KECCAK-384 : Cette variante produit une sortie 384 bits et est utilisée dans des applications qui nécessitent un niveau de sécurité plus élevé.
- KECCAK-512 : Cette variante produit une sortie 512 bits et est utilisée dans des applications qui nécessitent le plus haut niveau de sécurité.
Chaque variante de Keccak est conçue pour fournir un équilibre différent entre la sécurité et les performances, permettant aux développeurs de choisir la variante qui correspond le mieux à leurs besoins spécifiques.
Questions fréquemment posées
Q: En quoi Keccak diffère-t-il de SHA-2?
R: Keccak et SHA-2 sont tous deux des fonctions de hachage cryptographique, mais elles ont des conceptions et des propriétés différentes. Keccak est basé sur la construction de l'éponge, tandis que SHA-2 est basé sur la construction de Merkle - Damgård. Keccak est également conçu pour être plus flexible et résistant à certains types d'attaques, tels que les attaques d'extension de longueur, qui sont une préoccupation pour le SHA-2.
Q: Keccak peut-il être utilisé pour les signatures numériques?
R: Oui, Keccak peut être utilisé dans le cadre d'un schéma de signature numérique. Cependant, il est généralement utilisé en conjonction avec d'autres primitives cryptographiques, telles que la cryptographie de la courbe elliptique, pour créer un algorithme de signature numérique complet.
Q: Keccak est-il utilisé dans d'autres crypto-monnaies en plus d'Ethereum?
R: Oui, Keccak est utilisé dans plusieurs autres crypto-monnaies et projets de blockchain. Par exemple, la crypto-monnaie Iota utilise une variante de Keccak appelée Curl-P, et la crypto-monnaie ZCash utilise Keccak dans le cadre de son algorithme de preuve de travail d'Equihash.
Q: Comment puis-je vérifier l'exactitude d'une implémentation de Keccak?
R: Pour vérifier l'exactitude d'une implémentation de Keccak, vous pouvez utiliser des vecteurs de test fournis par l'équipe Keccak. Ces vecteurs de test sont des paires d'entrée-sortie qui peuvent être utilisées pour vérifier si votre implémentation produit la sortie correcte pour une entrée donnée. Vous pouvez trouver ces vecteurs de test sur le site officiel de Keccak.
Clause de non-responsabilité:info@kdj.com
Les informations fournies ne constituent pas des conseils commerciaux. kdj.com n’assume aucune responsabilité pour les investissements effectués sur la base des informations fournies dans cet article. Les crypto-monnaies sont très volatiles et il est fortement recommandé d’investir avec prudence après une recherche approfondie!
Si vous pensez que le contenu utilisé sur ce site Web porte atteinte à vos droits d’auteur, veuillez nous contacter immédiatement (info@kdj.com) et nous le supprimerons dans les plus brefs délais.
-
XOR
$0.00
35.69%
-
SNT
$0.0401
21.96%
-
NPC
$0.0148
21.28%
-
TIBBIR
$0.1285
20.21%
-
KTA
$1.04
18.85%
-
VADER
$0.0627
16.79%
- SOLAXY PRESALE: Cette explosion de crypto est-elle la prochaine grande chose sur Solana?
- 2025-06-18 22:25:13
- Token QBI, AI FinTech et déploiement de cloud: une nouvelle ère en finance intelligente
- 2025-06-18 22:25:13
- Audition Web3 Idol: Wipa révolutionne les cérémonies de popularité
- 2025-06-18 20:25:13
- Outil de traction anti-rug de Coindecko: un bouclier contre les escroqueries NFT
- 2025-06-18 20:25:13
- XRP, marchés de prédiction et jeton MRT: une nouvelle ère pour XRPL?
- 2025-06-18 20:45:12
- Bitcoin, Nasdaq et le conflit Iran-Israël: un tango risqué
- 2025-06-18 20:45:12
Connaissances connexes

Quel est le mécanisme de destruction des jetons dans la blockchain?
Jun 15,2025 at 12:14pm
Comprendre la destruction de jetons dans la blockchain La destruction de jetons, souvent appelée brûlure de jeton , est un mécanisme utilisé dans les écosystèmes de blockchain pour éliminer définitivement un certain nombre de jetons de la circulation. Ce processus implique généralement l'envoi de jetons à une adresse de portefeuille irrémédiable - c...

Qu'est-ce que la mise à niveau de la racine de Bitcoin?
Jun 14,2025 at 06:21am
Comprendre les bases de la mise à niveau de la racine de Bitcoin La mise à niveau de la racine de la rafle Activée en novembre 2021, Taproot représente l'une des mises à niveau les plus notables depuis SEGWIT (témoin séparé) en 2017. À son cœur, la tapoot permet aux transactions plus complexes de paraître indiscernables de simples sur la blockchain....

Comment fonctionnent les portefeuilles matériels de crypto-monnaie?
Jun 14,2025 at 11:28am
Comprendre les bases des portefeuilles matériels de crypto-monnaie Les portefeuilles matériels de crypto-monnaie sont des appareils physiques conçus pour stocker en toute sécurité les clés privées des utilisateurs hors ligne , offrant un niveau élevé de protection contre les menaces en ligne. Contrairement aux portefeuilles logiciels qui restent connect...

Qu'est-ce qu'un canal d'État dans la blockchain?
Jun 18,2025 at 02:42am
Comprendre le concept d'un canal d'État Un canal d'état est un mécanisme de la technologie blockchain qui permet aux participants de mener plusieurs transactions hors chaîne tout en interagissant uniquement avec la blockchain pour ouvrir et fermer le canal. Cette technique améliore l'évolutivité en réduisant la congestion sur la chaîne p...

Qu'est-ce que l'adresse du témoin séparé de Bitcoin?
Jun 16,2025 at 04:14pm
Comprendre le concept de témoin séparé (SEGWIT) Le témoin séparé de Bitcoin (SEGWIT) est une mise à niveau de protocole implémentée en 2017 pour améliorer l'évolutivité et l'efficacité des transactions Bitcoin. Les adresses SEGWIT ont été introduites dans le cadre de cette mise à niveau, conçue pour séparer (ou «séparer» les données de signature...

Comment transférer en toute sécurité de grandes quantités de crypto-monnaie?
Jun 17,2025 at 03:35pm
Comprendre les risques impliqués dans le transfert de grandes quantités Le transfert de grandes quantités de crypto-monnaie implique un ensemble unique de risques qui diffèrent des transactions régulières. Le risque le plus critique est l'exposition au vol via des clés privées ou des attaques de phishing compromises . De plus, la congestion du résea...

Quel est le mécanisme de destruction des jetons dans la blockchain?
Jun 15,2025 at 12:14pm
Comprendre la destruction de jetons dans la blockchain La destruction de jetons, souvent appelée brûlure de jeton , est un mécanisme utilisé dans les écosystèmes de blockchain pour éliminer définitivement un certain nombre de jetons de la circulation. Ce processus implique généralement l'envoi de jetons à une adresse de portefeuille irrémédiable - c...

Qu'est-ce que la mise à niveau de la racine de Bitcoin?
Jun 14,2025 at 06:21am
Comprendre les bases de la mise à niveau de la racine de Bitcoin La mise à niveau de la racine de la rafle Activée en novembre 2021, Taproot représente l'une des mises à niveau les plus notables depuis SEGWIT (témoin séparé) en 2017. À son cœur, la tapoot permet aux transactions plus complexes de paraître indiscernables de simples sur la blockchain....

Comment fonctionnent les portefeuilles matériels de crypto-monnaie?
Jun 14,2025 at 11:28am
Comprendre les bases des portefeuilles matériels de crypto-monnaie Les portefeuilles matériels de crypto-monnaie sont des appareils physiques conçus pour stocker en toute sécurité les clés privées des utilisateurs hors ligne , offrant un niveau élevé de protection contre les menaces en ligne. Contrairement aux portefeuilles logiciels qui restent connect...

Qu'est-ce qu'un canal d'État dans la blockchain?
Jun 18,2025 at 02:42am
Comprendre le concept d'un canal d'État Un canal d'état est un mécanisme de la technologie blockchain qui permet aux participants de mener plusieurs transactions hors chaîne tout en interagissant uniquement avec la blockchain pour ouvrir et fermer le canal. Cette technique améliore l'évolutivité en réduisant la congestion sur la chaîne p...

Qu'est-ce que l'adresse du témoin séparé de Bitcoin?
Jun 16,2025 at 04:14pm
Comprendre le concept de témoin séparé (SEGWIT) Le témoin séparé de Bitcoin (SEGWIT) est une mise à niveau de protocole implémentée en 2017 pour améliorer l'évolutivité et l'efficacité des transactions Bitcoin. Les adresses SEGWIT ont été introduites dans le cadre de cette mise à niveau, conçue pour séparer (ou «séparer» les données de signature...

Comment transférer en toute sécurité de grandes quantités de crypto-monnaie?
Jun 17,2025 at 03:35pm
Comprendre les risques impliqués dans le transfert de grandes quantités Le transfert de grandes quantités de crypto-monnaie implique un ensemble unique de risques qui diffèrent des transactions régulières. Le risque le plus critique est l'exposition au vol via des clés privées ou des attaques de phishing compromises . De plus, la congestion du résea...
Voir tous les articles
