💬 Компания Dedaub обнаружила ошибку в компиляторе Solidity от 2023-04-08
👑 Premium-робот: получай более 20-ти торговых идей в день!
Компания Dedaub обнаружила ошибку в компиляторе Solidity
Dedaub, ведущая компания по аудиту безопасности блокчейна, обнаружила ошибку компилятора Solidity, которая влияет на равенство функций и дает представление о ее механике и планируемом решении.
Команда Dedaub недавно объявила об обнаружении ошибки в компиляторе Solidity, влияющей на равенство функций. По словам команды, ошибка была подтверждена и, как ожидается, будет исправлена в следующем выпуске Solidity 0.9.
В подробной ветке Twitter Дедауб объяснил механизм ошибки, ее влияние на компиляцию функций и шаги, предпринимаемые для решения проблемы.
Команда Dedaub обнаружила ошибку компилятора Solidity, которая нарушает равенство функций. Ошибка была подтверждена и, как ожидается, будет исправлена в Solidity 0.9. Давайте углубимся в механику этой ошибки, компиляцию функций и способы ее исправления. ? pic.twitter.com/kkup7SBfSV — Дедауб (@dedaub) 4 апреля 2023 г.
Команда Dedaub обнаружила ошибку компилятора Solidity, которая нарушает равенство функций. Ошибка была подтверждена и, как ожидается, будет исправлена в Solidity 0.9. Давайте углубимся в механику этой ошибки, компиляцию функций и способы ее исправления. ? pic.twitter.com/kkup7SBfSV
Solidity, основной язык программирования для написания смарт-контрактов на блокчейне Ethereum, поддерживает функции более высокого порядка. Это означает, что функции могут сами воздействовать на другие функции. Реализация указателей функций в Solidity тесно связана с базовой реализацией функций, при этом смещения байт-кода первой инструкции используются в качестве идентификаторов функций.
Обнаруженная ошибка связана с оптимизатором компилятора Solidity, который выполняет преобразования с сохранением семантики для экономии газа. Одно из таких преобразований включает повторное использование общих последовательностей инструкций. Проблема возникает, когда первая часть функции содержит общую последовательность инструкций, из-за чего указатели функций потенциально указывают на запись другой функции и объединяются их идентификаторы.
Эта ошибка считается редким, единичным случаем, поскольку большинство смарт-контрактов не используют равенство указателей функций. Разработчики могут обойти эту проблему, временно отключив оптимизацию. Команда Solidity планирует отключить равенство указателей функций в предстоящем выпуске Solidity 0.9, эффективно устраняя ошибку.
Дедауб заявил, что им неизвестно ни о каких случаях равенства функций, используемых в известных протоколах. Обнаружение этой ошибки подчеркивает важность постоянных исследований и сотрудничества между аудиторами кода и разработчиками для поддержания безопасности и целостности экосистемы блокчейна.
Solidity, основной язык программирования для написания смарт-контрактов на блокчейне Ethereum, был первоначально предложен соучредителем Ethereum Гэвином Вудом в 2014 году. Solidity был разработан как высокоуровневый язык со статической типизацией, вдохновленный C++, Python и JavaScript. . Он был создан специально для облегчения разработки смарт-контрактов на платформе Ethereum.
Разработка и последующее внедрение Solidity были вызваны потребностью в языке программирования, который мог бы обеспечить безопасный и надежный способ создания, развертывания и взаимодействия со смарт-контрактами на блокчейне Ethereum. С тех пор язык претерпел многочисленные обновления и улучшения для решения проблем безопасности, улучшения функциональности и оптимизации использования газа. Непрерывная эволюция Solidity внесла значительный вклад в рост экосистемы децентрализованных приложений (dApp), позволяя разработчикам создавать инновационные решения в различных отраслях, таких как финансы, цепочки поставок и игры.
Как язык программирования Solidity столкнулся с проблемами безопасности, масштабируемости и удобства использования. Несколько громких инцидентов, таких как взлом DAO в 2016 году и уязвимость мультиподписного кошелька Parity в 2017 году, выявили потенциальные недостатки Solidity и смарт-контрактов, на которых он основан. Эти инциденты побудили команду Solidity, разработчиков и более широкое сообщество блокчейнов искать улучшения в языке, уделяя особое внимание безопасности и надежности.
В последние годы альтернативные языки смарт-контрактов, такие как Vyper и Rust, стали потенциальными конкурентами Solidity. Несмотря на это, Solidity остается доминирующим языком для разработки смарт-контрактов Ethereum, и активное сообщество постоянно работает над его усовершенствованием и оптимизацией.
Ранее в этом году Дедауб также обнаружил и надлежащим образом раскрыл крупномасштабную уязвимость маршрутизатора Uniswap.
Обнаружение ошибки компилятора Solidity, влияющей на равенство функций, является свидетельством постоянных усилий сообщества блокчейнов по улучшению языка и обеспечению его безопасности. Поскольку Solidity продолжает развиваться, для разработчиков, аудиторов и сообщества блокчейнов в целом крайне важно сотрудничать в устранении потенциальных уязвимостей и повышении надежности экосистемы.
Отказ от ответственности: эта статья предназначена только для информационных целей. Он не предлагается и не предназначен для использования в качестве юридического, налогового, инвестиционного, финансового или иного совета.
Ограничение / снятие ответственности (дисклеймер): Вся информация на этом сайте предоставляется исключительно в информационных целях и не является предложением или рекомендацией к покупке, продаже или удержанию каких-либо ценных бумаг, акций или других финансовых инструментов. Авторы контента не несут ответственности за действия пользователей, основанные на предоставленной информации. Пользователи обязаны самостоятельно оценивать риски и проконсультироваться со специалистами перед принятием каких-либо инвестиционных решений. Вся информация на сайте может быть изменена без предварительного уведомления.
Свежие новости по теме: Криптовалюта, NFT и криптобиржи
-
Криптовалюта и NFT
Рынок теперь полагается на внутреннюю ротацию фондов, поскольку приток новой ликвидности замедляется, Wintermute
2025-11-22 просмотры: 310 -
Криптовалюта и NFT
Держатели биткойнов страдают — вот почему это оптимистично
2025-11-22 просмотры: 393 -
Криптовалюта и NFT
Суд США вынес важное решение относительно биткойнов (BTC)! «ФБР оказалось правым!»
2025-11-22 просмотры: 342 -
Криптовалюта и NFT
Крипторынки сегодня: Биткойн держит 103 тысячи долларов, поскольку альткойны отстают, а трейдеры хеджируют риски
2025-11-22 просмотры: 403 -
Криптовалюта и NFT
Биткойн может отскочить, встречный ветер может превратиться в попутный: Том Ли
2025-11-22 просмотры: 388 -
Криптовалюта и NFT
Стремитесь привлечь примерно 160 миллионов долларов после увеличения предложения привилегированных акций
2025-11-22 просмотры: 129 -
Криптовалюта и NFT
Куда делась ликвидность?: Crypto Daybook Americas
2025-11-22 просмотры: 134 -
Криптовалюта и NFT
ETF на Биткойн и Эфириум продолжают худеть! Полоса прорывов продлится до 6 дней! Вот все данные
2025-11-22 просмотры: 271 -
Криптовалюта и NFT
Plume Nest Points: революционная программа вознаграждений, представленная в протоколе Nest
2025-11-22 просмотры: 283