nodejs-keccak256

Prevent Ethereum hashing bugs in JavaScript and TypeScript. Node's sha3-256 is NIST SHA3, not Ethereum Keccak-256, and silently breaks selectors, signatures, storage slots, and address derivation. Use when hashing for Ethereum in JavaScript or TypeScript, or when a selector, signature, storage slot,

By affaan-m · 2,815 installs

npx skills add affaan-m/ecc --skill nodejs-keccak256

Source repository · Upstream listing

Node.js Keccak 256 Ethereum uses Keccak 256, not the NIST standardized SHA3 variant exposed by Node's crypto.createHash('sha3 256') . When to Use Computing Ethereum function selectors or event topics Building EIP 712, signature, Merkle, or storage slot helpers in JS/TS Reviewing any code that hashes Ethereum data with Node crypto directly How It Works The two algorithms produce different outputs for the same input, and Node will not warn you. Examples ethers v6 viem web3.js Common patterns Address from public key Audit your codebase Rule For Ethereum contexts, never use crypto.createHash('sha3 256') . Use Keccak aware helpers from ethers , viem , web3 , or another explicit Keccak implementation.