페이지를 넘기고 있습니다.
다음 장을 불러오고 있습니다…
잠깐… 나만의 읽기 환경을 만들어 보세요.
글꼴과 테마는 화면 설정에서 설정하세요. 눈의 편안함도 중요합니다.
다음 장을 불러오고 있습니다…
The 256-bit Keccak hash function used in Ethereum; it is related to, but not interchangeable with, standardized SHA3-256.
브라우저의 읽어주기 지원을 확인하는 중…
이 읽기 자료는 현재 영어로 제공됩니다. 인터페이스에는 선택한 언어가 적용됩니다.
영어 원문 읽기 →NIST's SHA-3 standard was developed from the Keccak family, but the standardized SHA3-256 function and Ethereum's Keccak-256 use different conventions and produce different digests for the same input. Solidity documents its keccak256 function explicitly. An older alias named sha3 contributed to confusion and was removed from Solidity. A software library exposing a function called SHA3 should therefore not be assumed to produce the digest expected by an Ethereum application.
Ethereum tooling uses Keccak-256 in contexts including function selectors, event topics, and address-related calculations. If an application hashes a function signature using the wrong algorithm, it can produce the wrong selector even though the result still looks like a valid hexadecimal value. This illustrates why output length alone does not identify a hash function. Cross-language integrations should use known test vectors and explicitly name the intended algorithm rather than relying on a loosely named helper.
A hash is a deterministic fingerprint, not a reversible ciphertext and not evidence that the input is truthful. Two systems also need to agree on the exact input bytes, including encoding and structure, before comparing digests. EIP-712's structured hashing rules show why concatenating vaguely described fields can be insufficient. A correct algorithm with an incorrect encoding still produces an unusable result. Keep the algorithm, byte encoding, and application-specific signing or verification rule distinct when explaining a cryptographic workflow.