Узел взломан — самое неприятное обычно не остановка работы, а тот «ключ», которым ежедневно выполняются голосования. При определённых настройках его же можно использовать, чтобы увести залог. Раньше я относил это к тому, что сервер плохо защищён, и не придавал значения деталям, пока не наткнулся на руководство Dusk по node wallet. В разделе «Owner vs Consensus Keys» я поменял своё мнение.
Dusk позволяет разместить два типа прав в одном и том же адресе. consensus key отвечает за голосование и подпись блоков, а owner key — за снятие стейкинга и вывод средств. Если owner отдельно не настроен, то consensus key автоматически берёт на себя обе функции. В документации советуют: чтобы разделить риски узла и «выход» средств, лучше завести отдельный адрес owner.
Раньше я думал, что дополнительный ключ просто добавляет операционные шаги. Сейчас вижу: это признание того, что узел должен долго оставаться онлайн, но контроль над активами необязательно держать всё время рядом с этой машиной.
Ситуация по сути не такая сложная: права на сервер могут утечь, но owner key не хранится на сервере. Злоумышленник может нарушить работу узла, но напрямую не сможет вывести залог. Если же обе функции постоянно привязаны друг к другу, то инцидент из операционной проблемы превращается в проблему с деньгами. Конечно, хранение и передача owner — это ещё один уровень работы.
Поэтому я рассматриваю эту конструкцию как «разрезание» рисков, а не как гарантированную безопасность. @Dusk хочет, чтобы обычные операторы узлов меньше попадали на типичные ошибки — лучше прямо объяснить, к каким последствиям приводит «один адрес» и к чему приводит «разделение адресов». $DUSK в зрелости узловой экосистемы важен не только размер числа узлов, но и то, понимают ли операторы, какая из ключей может двигать деньги. #dusk
Dusk позволяет разместить два типа прав в одном и том же адресе. consensus key отвечает за голосование и подпись блоков, а owner key — за снятие стейкинга и вывод средств. Если owner отдельно не настроен, то consensus key автоматически берёт на себя обе функции. В документации советуют: чтобы разделить риски узла и «выход» средств, лучше завести отдельный адрес owner.
Раньше я думал, что дополнительный ключ просто добавляет операционные шаги. Сейчас вижу: это признание того, что узел должен долго оставаться онлайн, но контроль над активами необязательно держать всё время рядом с этой машиной.
Ситуация по сути не такая сложная: права на сервер могут утечь, но owner key не хранится на сервере. Злоумышленник может нарушить работу узла, но напрямую не сможет вывести залог. Если же обе функции постоянно привязаны друг к другу, то инцидент из операционной проблемы превращается в проблему с деньгами. Конечно, хранение и передача owner — это ещё один уровень работы.
Поэтому я рассматриваю эту конструкцию как «разрезание» рисков, а не как гарантированную безопасность. @Dusk хочет, чтобы обычные операторы узлов меньше попадали на типичные ошибки — лучше прямо объяснить, к каким последствиям приводит «один адрес» и к чему приводит «разделение адресов». $DUSK в зрелости узловой экосистемы важен не только размер числа узлов, но и то, понимают ли операторы, какая из ключей может двигать деньги. #dusk