A

nodejs-keccak256

bởi affaan-m

Skill nodejs-keccak256 giúp bạn tránh một lỗi Ethereum rất phổ biến trong JavaScript và TypeScript: dùng sha3-256 của Node khi thực ra cần Keccak-256. Skill này hữu ích cho phát triển backend, selector, event topic, chữ ký, storage slot và suy ra địa chỉ, kèm hướng dẫn sử dụng nodejs-keccak256 thực tế.

Stars156.2k
Yêu thích0
Bình luận0
Đã thêm15 thg 4, 2026
Danh mụcBackend Development
Lệnh cài đặt
npx skills add affaan-m/everything-claude-code --skill nodejs-keccak256
Điểm tuyển chọn

Skill này đạt 81/100, nghĩa là đây là một lựa chọn khá tốt cho người dùng thư mục đang cần tránh lỗi băm Keccak-256 của Ethereum so với NIST SHA3 trong Node.js/TypeScript. Kho lưu trữ cung cấp đủ độ cụ thể về quy trình để quyết định cài đặt và kích hoạt skill đúng cách, dù vẫn còn thiếu một số yếu tố hỗ trợ triển khai như lệnh cài đặt và các tệp hỗ trợ.

81/100
Điểm mạnh
  • Nêu vấn đề rất rõ: cảnh báo thẳng rằng sha3-256 của Node là NIST SHA3 và có thể làm sai âm thầm selector, chữ ký, storage slot và suy ra địa chỉ trong Ethereum.
  • Ví dụ quy trình thực tế: minh họa cách dùng với ethers v6, viem và web3.js bằng các khối code, giúp tác nhân thực thi dễ hơn và ít phải đoán.
  • Phạm vi sử dụng hợp lý: skill nói rõ khi nào nên dùng, bao gồm băm Ethereum, EIP-712, Merkle và các helper cho storage slot trong JS/TS.
Điểm cần lưu ý
  • Không có lệnh cài đặt hoặc tệp hỗ trợ, nên người dùng có thể phải tự suy ra cách thiết lập từ các ví dụ.
  • Phạm vi nội dung chỉ tập trung vào một lỗi băm cụ thể; hữu ích, nhưng không phải skill phát triển Ethereum tổng quát.
Tổng quan

Tổng quan về skill nodejs-keccak256

nodejs-keccak256 làm gì

Skill nodejs-keccak256 giúp bạn tránh một lỗi rất phổ biến khi làm việc với Ethereum trong JavaScript và TypeScript: dùng crypto.createHash('sha3-256') của Node trong khi thực ra bạn cần Keccak-256. Sai khác này có thể âm thầm làm hỏng selector, event topic, chữ ký, tính toán storage slot và suy ra địa chỉ.

Skill này dành cho ai

Hãy dùng skill nodejs-keccak256 nếu bạn làm backend, bot, indexer, công cụ ví, helper cho smart contract, hoặc bất kỳ code Node nào có hash dữ liệu Ethereum. Skill này đặc biệt hữu ích cho reviewer và maintainer, những người cần phát hiện hashing sai trước khi nó được release.

Vì sao nó quan trọng

Đây không phải một hướng dẫn hash chung chung. Giá trị chính của skill nodejs-keccak256 nằm ở chất lượng quyết định: nó cho bạn biết đoạn code nào không an toàn, cần thay bằng gì, và làm sao xác nhận đầu ra khớp với công cụ Ethereum. Vì thế nó rất hợp cho nodejs-keccak256 for Backend Development, nơi độ chính xác quan trọng hơn sự tiện tay.

Cách dùng skill nodejs-keccak256

Cài đặt và mở skill

Cài skill nodejs-keccak256 bằng:
npx skills add affaan-m/everything-claude-code --skill nodejs-keccak256

Sau đó mở SKILL.md trước tiên. Trong repository này, đó là file hỗ trợ duy nhất, nên cách nhanh nhất là đọc kỹ phần thân skill và dùng nó như tài liệu tham chiếu làm việc cho nodejs-keccak256 usage.

Biến một yêu cầu sơ sài thành prompt tốt

Skill này hoạt động tốt nhất khi bạn đưa đúng bài toán hash, runtime, và artifact Ethereum mong muốn. Những đầu vào tốt gồm:

  • đối tượng cần hash: function selector, EIP-712 domain, event topic, storage slot, hoặc packed encoding
  • stack: Node.js, ethers v6, viem, web3.js, hoặc crypto thuần
  • dạng dữ liệu đầu vào: string, bytes, ABI-encoded tuple, address, hoặc bigint
  • định dạng đầu ra mong muốn: hex có hoặc không có 0x, bytes, topic hash, hoặc selector

Mẫu prompt phù hợp:
Review this Node.js code that computes an ERC-20 Transfer topic. Replace sha3-256 with a correct Keccak-256 approach and show the safest ethers v6 version.

Dùng đúng quy trình

Hãy bắt đầu bằng việc xác định đoạn code đang làm Ethereum hashing hay SHA3 theo NIST dùng chung. Nếu liên quan đến Ethereum, hãy thay implementation SHA3 của Node bằng một hàm thư viện như ethers hoặc viem có cung cấp Keccak-256 một cách rõ ràng. Sau đó xác minh kết quả bằng selector hoặc topic đã biết thay vì chỉ nhìn và đoán là đúng.

Nên đọc gì trước

Với nodejs-keccak256 guide này, hãy đọc SKILL.md và tập trung vào:

  • When to Use
  • How It Works
  • Examples
  • ethers v6

Các phần đó sẽ cho bạn biết ranh giới sử dụng, kiểu lỗi thường gặp và các mẫu thay thế được khuyến nghị.

FAQ về skill nodejs-keccak256

nodejs-keccak256 chỉ dành cho công việc Ethereum thôi à?

Đúng, đó là phạm vi phù hợp nhất. Skill này nói về Keccak-256 tương thích Ethereum, không phải mật mã học tổng quát. Nếu bạn cần SHA3-256 chuẩn cho mục đích không liên quan đến Ethereum, đây là công cụ không đúng.

Sao không dùng trực tiếp Node crypto?

crypto.createHash('sha3-256') không phải Keccak-256. Node không cảnh báo bạn, và lỗi này có thể trông “đúng” cho đến khi nó làm hỏng selector, topic, hoặc signature trong production. Skill nodejs-keccak256 tồn tại để ngăn sự lệch chuẩn âm thầm đó.

Skill này có thân thiện với người mới không?

Có, miễn là bạn mô tả mục tiêu hashing bằng ngôn ngữ đơn giản. Bạn không cần hiểu sâu cryptography để hưởng lợi từ hướng dẫn nodejs-keccak256 install và cách dùng, nhưng bạn vẫn cần biết mình đang tạo ra artifact Ethereum nào.

Nó có dùng được với ethers và viem không?

Có. Các ví dụ trong repository cho thấy pattern với ethers v6 và viem, và đó chính là lý do skill này hữu ích trong codebase backend thực tế. Nó phù hợp hơn một prompt thông thường khi bạn cần thay thế đúng ngay từ đầu theo từng thư viện.

Cách cải thiện skill nodejs-keccak256

Cung cấp đúng artifact cho skill

Kết quả tốt nhất đến khi bạn chỉ rõ đối tượng Ethereum đang được hash. Ví dụ, hãy nói “ERC-721 Transfer(address,address,uint256) topic” thay vì chỉ “hash chuỗi này.” Như vậy skill nodejs-keccak256 skill có thể chọn đúng kiểu encoding và dạng đầu ra.

Đính kèm source và giá trị mong đợi

Nếu bạn đã có code đang lỗi, hãy dán snippet và cả giá trị kỳ vọng hoặc một reference đã biết là đúng. Điều đó giúp skill nhận ra vấn đề nằm ở encoding, lựa chọn thuật toán hay định dạng đầu ra. Với công việc backend, bạn cũng nên nói rõ đầu ra phải tương thích với ethers v6, viem, hay web3.js cũ.

Cảnh giác các lỗi phổ biến

Phần lớn lỗi không nằm ở Keccak itself mà ở bước chuẩn bị input. Nhầm string với bytes, thiếu ABI packing, hoặc quên chuẩn hóa 0x đều có thể dẫn tới nhiều “sửa” sai. Nếu câu trả lời đầu tiên nhìn có vẻ đúng nhưng không khớp selector hoặc topic đã biết, hãy yêu cầu thêm bước xác minh và viết lại theo đúng thư viện bạn dùng.

Lặp lại bằng cách đối chiếu với giá trị đã biết

Sau lượt đầu, hãy so sánh kết quả với selector, topic, hoặc hash đã biết từ một nguồn Ethereum đáng tin cậy. Nếu khác, hãy phản hồi đúng phần lệch và yêu cầu chỉnh hẹp hơn. Đó là cách nhanh nhất để cải thiện nodejs-keccak256 usage mà không phải đoán mò.

Đánh giá & nhận xét

Chưa có đánh giá nào
Chia sẻ nhận xét của bạn
Đăng nhập để chấm điểm và để lại nhận xét cho skill này.
G
0/10000
Nhận xét mới nhất
Đang lưu...