Регламент проверки безопасности умных контрактов на Ethereum платформе

В рамках развития проектов, использующих автономные/умные контракты Aira core, мы разработали регламент проверки кода на основе рекомендаций основных разработчиков проекта Ethereum, а также нашего личного опыта команды Airalab.

Материалы, используемые Airalab при формировании регламента проверки кода умных контрактов

Отдельное внимание стоит уделить этой презентации:  Smart Contract Security in Ethereum. В конце презентации хороший список материалов, на которых основывалась данная презентация, поэтому стоит наиболее внимательно изучить данный материал и исхоные ссылки.

Сухой остаток/инструкция к действию от основных разработчиков Ethereum, на которую 100% стоит обратить внимание находится на GitHub: Ethereum Contract Security Techniques and Tips.

Как мы проверяем безопаность контрактов в Airalab

Основной документ регламентирующий проверку кода: Регламент проверки безопасности контрактов Airalab

Каждый контракт, который мы создаем проверяется разработчиком по данному регламенту, в результате проверки формируется документ, который необходимо расположить по следующему пути: /airalab/core/securityCheck

Результат проверки должен содержать 3 блока:

Блок 1: «Проверка общих рекомендаций Airalab». В данном блоке должен быть описан результат проверки по каждому из пунктов, содержащихся в разделе: «Обобщенные рекомендации к проверке«.

Блок 2: «Проверка на известные атаки». В данном блоке должен быть описан результат проверки по каждой из известных нам видов атак, содержащихся в разделе: «Известные атаки«.

Блок 3: «Комментарии по коду». Данный блок позволяет разработчику обратить внимание на потенциально уязвимые места или же акцентировать внимание пользователя на каких либо фрагментах кода.

Как пример результата проверки можно посмотреть следующий документ: Smart contract «Token.sol» security check.

Рекомендации/замечания разработчиков пишите в формате issue в репозиторий Aira core на GutHub.

Также любые вопросы в наш канал друзей Airalab в Gitter.

 

 

  • noxonsu

    а как заказать такую проверку?

    • На данный момент заказать подобную услугу нельзя. Мы все ещё работаем над тестированием регламента на собственных контрактах. В августе 2016 планируется семинар в Москве по теме безопасности умных контрактов, от Airalab, и уже после мы подумаем о том, как помочь коллегам в проверке их контрактов. Следите за обновлениями в блоге и на моей странице facebook: https://www.facebook.com/EnsRationis2020