Я так понимаю, что адреса - это хэши открытых ключей. Но почему? Чем обосновано такое дизайнерское решение?
А почему 160 бит? Почему бы просто не использовать хэш напрямую? Гарантировано ли, что 160-битной версии будет достаточно в будущем для обеспечения совместимости и безопасности?
Эфириум был построен для «будущего» с учетом устойчивости. Для генерации адресов (т.е. пары открытый-секретный ключ) используется криптография на основе эллиптических кривых (ECC) , и, помимо других причин, ее производительность намного превосходит другие существующие алгоритмы (например, основанные на RSA).
Несмотря на то, что в алгоритме эллиптической кривой, используемом в Ethereum, не было обнаружено недостатков, разработчики-основатели хотели сохранить устойчивость системы в случае обнаружения недостатка/эксплойта в алгоритме, чтобы никто не мог реконструировать закрытый ключ из открытого ключа. . Поскольку уже доказано, что алгоритм хэширования невосприимчив к обратному инжинирингу, добавление этого сверху означает, что никто не сможет вернуться к закрытому ключу с адреса (даже если алгоритм ECC можно использовать).
Адреса меньше по размеру, чем открытые ключи, их можно идентифицировать по адресам других криптовалют, некоторые адреса, такие как биткойн, имеют встроенную контрольную сумму, тогда как адреса эфириума являются действительным номером счета IBAN.
лз96
Ричард Хоррокс
Сяо Цзя