Есть ли планы по переключению основного алгоритма хэширования Ethereum с Keccak-256 на SHA3?

Проект Ethereum был запущен до того , как был завершен стандарт SHA3 , и в настоящее время он использует более раннюю версию Keccak-256 , которая не совсем соответствует стандарту FIPS-202 для SHA. Есть ли планы по переводу алгоритма Ethereum на стандарт после того, как он был опубликован?

Ответы (1)

SHA3 ​​— это просто название, а лежащие в его основе криптографические алгоритмы избираются международным комитетом.

Нет причин, по которым Эфириум должен менять такую ​​фундаментальную вещь, как базовая хеш-функция. Это ставит под угрозу консенсус в сети и потребует огромных усилий по обновлению всего программного обеспечения и передаче информации всем членам широкого сообщества и сети Эфириума.

Keccak-256 в порядке.

Однако можно сделать одну вещь: в будущих реализациях следует отказаться от названия sha3хеш-функции в пользу keccak.

Основная проблема не в названии или безопасности, а в путанице при разработке программного обеспечения. Если разработчики, работающие над платформой, не могут использовать стандартные программные библиотеки (которые, вероятно, просто реализуют стандарт FIPS-202), вместо этого им приходится использовать библиотеки, специфичные для Ethereum, это создает ненужное препятствие. Это не означает, что алгоритм должен измениться, просто если бы Ethereum был создан после публикации стандарта, его соблюдение было бы строго лучше, чем просто использование keccak-256.
В Solidity 0.4.3keccak256 появился псевдоним , который можно безопасно использовать в качестве замены для sha3.