Аудит Смарт-Контракта

 

В виду того, что Смарт-Контракты по своей сути неизменяемы, особенно остро встает вопрос их разработки, так как одиноразово публикуемый контракт должен в точности отвечать всем заявленным требованиям.

Когда речь заходит об обороте крупных сумм, единственный недочет в коде Смарт-Контракта может привести к многомиллионным финансовым потерям. Плюсом к этому проект может лишиться своей репутации, что помешает сгладить утраченные средства и продолжить работу проекта.

Самой крупной атакой на смарт-контракт является взлом The DAO в ходе которого было украдено более 50 миллионов долларов. В общей же сложности объем потерянных средств уже давно перевалил за пол миллиарда долларов.

Например, на нулевом адресе Ethereum находится 7,662 ETH, что при курсе 160$ означает, что по причинам даже такой банальной ошибки как отправка на адрес 0x0 было безвозвратно утеряно более миллиона долларов, не считая токенов. Убедиться в этом вы можете сами посетив соответствующую страницу на EtherScan.

Общепризнанным методом нивелирования риска появления ошибок и уязвимостей является Аудит Смарт-Контрактов.

Разработчик кода, хоть и тестирует свой продукт, может легко упустить какие-либо тонкости в собственном контракте. Это может произойти либо по незнанию, либо в виду одностороннего взгляда на контракт. Чтобы посмотреть на контракт с правильной стороны прибегают к независимому разбору кода третьей стороной.

Главное, чтобы аудит производился компетентными лицами, специализирующимися именно на выявлении уязвимостей. Без высоких знаний специфики языка программирования тут говорить разумеется не о чем, но также немаловажной характеристикой аудитора должно быть критическое мышление.

Виды аудита.

— Закрытый аудит.
В этом случае разбор проводится без возможности разглашения информации третьим лицам о выявленных недочетах. Заказчик получает подробный отчет с рекомендациями и сам решает, какие действия предпринимать: исправлять ошибки можно как самостоятельно, так и обратиться за помощью к нам.

Важно: мы всегда предоставляем черновую версию отчета для исправления ошибок, а после заверения безопасности изменений уже подготавливаем итоговую версию.

— Публичный аудит.
В этом случае услуга предполагает размещение отчета в сети: статья на нашем сайте или видеоразбор кода. В этом случае владелец проекта получает как независимое подтверждение безопасности Смарт-Контракта так и маркетинговый инструмент: публичный аудит сам по себе является рекламой и может служить неплохим аргументом для инвесторов/участников.

Также в публичном аудите можно разместить независимую спецификацию контракта: описание функционала контракта для пользователей.

Как делается аудит Смарт-Контракта?

Услуга представляет собой построчный разбор кода на предмет:

— Уязвимостей, способных привести к потере средств.

— Проблем и ошибок, нарушающих функционал контракта.

— Возможностей оптимизации, как стоимости транзакций, так и количества строк кода.

+ Прописываются все рекомендации к исправлению, а также приводятся все замечания по стилистике и презентабельности кода.

Необходимые функции тестируются в локальной среде для подтверждения работоспособности (или наоборот, если есть потенциальная угроза).

Цена за аудит Смарт-Контракта.

В виду того, что 100 строк одного контракта не равны 100 строкам другого (допустим с одной стороны будет шаблонный токен, а с другой лотерея со своим принципом рандомизации) стоимость аудита может сильно варьироваться. Вилка цен начинается со $100 и доходит до $3000. Для приблизительной оценки необходимо выслать нам описание кода: специфику, количество строк и ТЗ (если есть). Для точной оценки необходимо отправить уже сам код контракта.

Пример отчета.

Как выглядит итоговый текст вы можете увидеть в нашем блоге в рубрике «Аудит Смарт-Контракта». Но это лишь текстовый вариант для размещения на нашем сайте: отчет же оформляется в формате PDF и представляет себе презентабельный документ (при надобности с печатью и подписью на каждой странице), который вы можете разместить на своих ресурсах.

Если вы хотите получить пример отчета или у вас есть вопросы по поводу аудита Смарт-Контракта, свяжитесь с нами и мы вышлем все материалы и проконсультируем по всем вопросам.

С уважением, Grox Solutions.

Статьи. Публичные аудиты

Верификация TRON

Инструкция по верификации контракта на Tronscan

Подробнее

TRON DEPLOYMENT

Инструкция по деплою с помощью TRONLINK & TronScan

Подробнее

TRONex Аудит

Аудит смарт-контракта TRONex

Подробнее

Как опубликовать код Смарт-Контракта?

Инструкция по верификации контракта на Etherscan

Подробнее

Как задеплоить Смарт-Контракт?

Инструкция по деплою с помощью Remix & Metamask

Подробнее

Платформы для реализации Смарт-Контрактов

Свойства и отличия Ethereum, TRON, EOS и Waves

Подробнее

Аудит Смарт-Контракта

Что такое аудит и зачем он нужен? Виды аудитов, цены и пример отчета.

Подробнее

Аудит «Neuromachine Eternal»

Публичный аудит Смарт-Контракта "NRM"

Подробнее

Что требуется для создания собственного токена?

Список вопросов для Технического Задания.

Подробнее

Что такое Смарт Контракт?

В чем заключается суть технологии Смарт-Контрактов? Определение и краткое описание.

Подробнее

Применение Смарт-Контрактов

Где и для чего применяются Смарт-Контракты в реальной жизни?

Подробнее

Пример работы Смарт-Контракта

Конкретная иллюстрация использования Смарт-Контракта на примере Краудфандинга

Подробнее

Функция ApproveAndCall для ERC20

Что такое ApproveAndCall и для чего ее имплементируют в Смарт-Контракты?

Подробнее

Проблемы стандарта ERC20

Каковы минусы и ограничения стандарта ERC20? EventHandling, Re-Approval Attack

Подробнее

ICO (CrowdSale)

Что такое Краудсейл? Что необходимо знать, чтобы провести свое ICO?

Подробнее

Токены

Что такое токены и какими они бывают? ERC20 или ERC223? Utility или Security?

Подробнее
Загрузить еще
Закрыть