Співзасновник Ethereum Віталік Бутерін зробив сміливу заяву про майбутнє смарт-контрактів, стверджуючи, що розробники, які надають першочергового значення безпеки, можуть очікувати, що у 2030-х роках код без помилок стане реальністю. Ця заява прозвучала після неоднозначного хардфорку Gnosis Chain, який був націлений на повернення $9,4 млн, викрадених внаслідок злому платформи Balancer.
Помилки в коді: неминучість чи реальність?
Бутерін підкреслив, що в майбутньому не можна буде стверджувати, що помилки неминучі і що неможливо написати код без помилок. Він вважає, що з розвитком технологій та підходів до розробки програмного забезпечення, помилки в коді стануть винятком, а не правилом.
Багаторівнева надмірність як рішення
Одним із проривних рішень, які можуть допомогти у досягненні цієї мети, Бутерін назвав багаторівневу надмірність. Цей підхід дозволить відфільтровувати прогалини між задумом розробника та фактичною реалізацією коду. Як приклад він навів системи типів, які можуть допомогти у виявленні помилок на ранніх стадіях розробки, а також формальну перевірку конкретних тверджень про код, яка є додатковим рівнем захисту.
Формальна верифікація дозволяє виявляти такі проблеми, як цілісне усічення та переповнення, повторний вхід та неефективна оптимізація використання газу. Ці проблеми можуть уникнути уваги аудиторів і тестувальників, що робить формальну верифікацію важливим інструментом для забезпечення безпеки смарт-контрактів.
Традиційне тестування та його обмеження
Бутерін також зазначив, що традиційне тестування програмного забезпечення дозволяє лише перевірити наявність помилок, але не гарантує їхньої відсутності. Це наголошує на необхідності впровадження більш просунутих методів перевірки коду, які можуть забезпечити більш високий рівень надійності.
Функціональність проти досконалості
Незважаючи на оптимістичні прогнози, Бутерін визнав, що в деяких програмах помилки продовжуватимуть з'являтися. У певних випадках функціональність може бути важливішою за досконалість, і розробники повинні знаходити баланс між цими двома аспектами. Тим не менш, у тих, хто приділяє пріоритетну увагу безпеці, будуть інструменти для створення справді безпомилкового коду.
На закінчення
Віталік Бутерін впевнено дивиться у майбутнє смарт-контрактів, передбачаючи, що з розвитком технологій та підходів до розробки помилки в коді стануть рідкістю. Багаторівнева надмірність та формальна верифікація можуть стати ключовими інструментами для досягнення цієї мети, забезпечуючи безпеку та надійність у світі цифрових активів.