Язык программирования Solidity, используемый для написания смарт-контрактов для различных децентрализованных приложений (DApps) на Ethereum, недавно был обновлен до версии 0.8.20.
Solidity обновлен до версии 0.8.20
Аналитики отмечают, что несколько улучшений кода после этого обновления могут значительно помочь сократить комиссию за газ для пользователей, использующих смарт-контракты для своих операций децентрализованного финансирования (DeFi) или невзаимозаменяемых токенов (NFT).
В Ethereum за каждую транзакцию, включая простые переводы, взимается комиссия в ETH. Уплачиваемая комиссия измеряется в «газе» и варьируется в зависимости от сложности и типа транзакций.
Например, чем сложнее транзакция, тем выше плата за газ. Это связано с тем, что для обработки сложной транзакции требуется больше вычислений. Между тем, некоторые транзакции, например, связанные со смарт-контрактами, имеют более высокую комиссию за газ, чем другие. Это связано с тем, что смарт-контракты могут быть более сложными и требуют больше вычислений для обработки.
После внесения изменений в язык программирования Solidity добавление функций и улучшений в код еще больше стабилизировало блокчейн и сделало его смарт-контракты рентабельными. В частности, разработчики выпустили код операции PUSH0 (код операции) в версии 0.8.20.
Изменение кода операции PUSH0 для снижения платы за газ с течением времени
Код операции PUSH0 в Solidity 0.8.20 позволяет разработчикам помещать нулевое значение в стек виртуальной машины Ethereum (EVM) всего за два gwei. Это значительное улучшение по сравнению с предыдущими версиями Solidity, в которых требовалось три gwei, чтобы поместить нулевое значение в стек.
Аналитики говорят, что это изменение кодов операций будет полезно разработчикам Ethereum и даже поможет со временем снизить плату за газ. В частности, хотя аналитики говорят, что PUSH0 является незначительным изменением, это обновление может снизить стоимость контрактов, которые часто помещают нулевые значения в стек EVM, делая смарт-контракты еще более рентабельными.
В то же время существует преимущество в плане безопасности, поскольку смарт-контракты становятся менее уязвимыми для «атак с истощением газа». В Ethereum «атака с исчерпанием газа» — это отказ в обслуживании, нацеленный на смарт-контракты. Здесь злоумышленник неоднократно отправляет транзакции на смарт-контракт, который потребляет большое количество газа, пока он не закончится, что делает его непригодным для использования.
На протяжении многих лет Solidity, несмотря на то, что это новый язык программирования, продолжает оставаться популярным, привязывая смарт-контракты, работающие на Ethereum. Он завершен по Тьюрингу, что означает, что разработчики могут использовать язык для создания смарт-контрактов всех типов.
Однако по мере того, как Ethereum находит широкое распространение, разработчики продолжают совершенствовать Solidity, чтобы повысить производительность и потребление газа.




