The Ethereum project was started before the SHA3 standard was finalised, and currently uses an earlier version of Keccak-256 which does not precisely match the FIPS-202 standard for SHA. Are there any plans to switch Ethereum's algorithm over to the standard now that it has been published?

1 Answer 1


SHA3 is just a name and the underlying cryptographic algorithms are elected by an international commitee.

There is no reason why Ethereum should change such a fundamental thing like the basic hash function. This puts the network consensus in danger and would mean a huge effort in upgrading all software and broadcasting the information to all members of the broad ethereum community and network.

Keccak-256 is just fine.

One thing could be done though, in future implementations should the name sha3 of hashing functions be dropped in favour of keccak.

  • 2
    The primary issue is not the name or security but the software development confusion. If developers working on the platform are unable to use standard software libraries (which will probably just implement the FIPS-202 standard), instead having to use Ethereum-specific libraries, it creates an unnecessary hurdle. That's not to say that the algorithm should change, just that if Ethereum had been created after the standard was published, complying with it would have been strictly better than just using keccak-256. Jan 29, 2016 at 18:00
  • 2
    Solidity 0.4.3 has introduced keccak256, an alias which can safely be used as a replacement for sha3.
    – eth
    Nov 11, 2016 at 11:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.