Разработчики, которые приоритизируют безопасность, могут ожидать, что кодирование без ошибок станет достижимым в 2030-х годах, согласно со-основателю Ethereum Виталику Бутерину.
После спорного харфорка Gnosis Chain для восстановления 9,4 млн $ из взлома Balancer, со-основатель Ethereum Виталик Бутерин заявил, что убеждение в том, что "ошибки неизбежны, вы не можете создать код без ошибок" перестанет быть правдой в 2030-х годах.
Что Виталик Бутерин сказал о кодировании?
Виталик Бутерин сделал прогноз, что код без ошибок станет реальностью в 2030-х годах через взаимодействие на платформе социальных медиа X.
Обсуждение началось, когда Gnosis Chain объявил о выполнении харфорка 22 декабря, как сообщает Cryptopolitan. Харфорк восстановил 9,4 млн $, украденных во время эксплойта Balancer в ноябре 2024 года, который вывел более 128 млн $ через несколько блокчейнов. Восстановление потребовало от большинства валидаторов принять новое программное обеспечение, и те, кто не смог обновиться, сталкиваются со штрафами.
Это, конечно, встретило некоторое сопротивление со стороны сторонников блокчейна, которые критиковали этот шаг, потому что он противоречит принципу неизменности. Пользователь X с псевдонимом 'colluding node' сказал, что реальная проблема заключается в том, как создаются блокчейн-приложения. Они утверждали, что использование смарт контрактов в программируемых виртуальных машинах является неправильным подходом.
"Существует только 7 контрактов, которые стоит писать, и они должны быть закреплены на базовом уровне и получать безопасность от разнообразия клиентов", написал пользователь.
Бутерин затем ответил, пояснив, что формально проверенный не равно доказуемо свободный от ошибок. Он пошел дальше, предположив, что доказуемо свободный от ошибок код может быть даже невозможен.
"Я бы даже зашел так далеко, чтобы сказать, что 'доказуемо свободный от ошибок' невозможен, потому что 'свободный от ошибок' означает 'отсутствие разрыва между намерением и выполнением кода', а наше намерение - это чрезвычайно сложный объект, к которому у нас есть только ограниченный доступ."
Формальная верификация использует математические методы для проверки правильности работы критически важных для безопасности систем. Эта техника используется с 1960-х годов в таких областях, как аэрокосмическая инженерия.
При использовании в смарт контрактах формальная верификация может доказать, что бизнес-логика контракта соответствует заранее определенной спецификации; однако, несмотря на то, что контракты Balancer были проверены 11 раз четырьмя отдельными фирмами по безопасности, критический недостаток все же проскользнул.
Возможно ли будущее с кодом без ошибок?
Бутерин предложил решение в виде множественных уровней резервирования для фильтрации разрывов между намерением и выполнением. Он указал на системы типов как на одну форму резервирования, а формальную верификацию конкретных утверждений о коде - как на другой уровень.
Формальная верификация может обнаружить такие проблемы, как целочисленное переполнение снизу и сверху, повторный вход и плохая оптимизация газа, которые могут ускользнуть от аудиторов и тестировщиков. Между тем, традиционное тестирование может проверить только наличие ошибок, а не их отсутствие.
Бутерин отметил, что некоторое программное обеспечение будет продолжать иметь ошибки, потому что прирост функциональности важнее совершенства в определенных случаях. Но разработчики, которые приоритизируют безопасность, будут иметь инструменты для достижения действительно свободного от ошибок кода.
Оттачивайте свою стратегию с наставничеством + ежедневные идеи – 30 дней бесплатного доступа к нашей торговой программе
Источник: https://www.cryptopolitan.com/vitalik-predicts-bug-free-smart-contracts/

