В августе 2022 года протокол Nomad Bridge потерял $190 миллионов из-за одной ошибки в инициализации контракта: значение trustedRoot было установлено в 0x00, что автоматически делало любое сообщение «доверенным». Проблема была не в бизнес-логике — в архитектуре: кто контролирует критические параметры, когда они устанавливаются и что происходит при ошибке инициализации. Blueprint контракта — это документ, отвечающий на эти вопросы до написания кода. Этот урок показывает, как его составить.
Access control: от одного admin до системы ролей