Кстати, к теме DeFi рисков.
Вчера таки осилил прочитать пост @NervosNetwork о рисках смарт-контрактов при построении DeFi продуктов.
Очень занимательно, крайне советую! Ссылочка вот:
https://medium.com/nervosnetwork/the-smart-contract-risk-in-defi-c28e53b92f03
Ну а если ты ленивая задница, то вот в чём суть. Смарт-контракт - это по сути, тот же аккаунт в эфире, который хранит записи о балансах средств. И при передаче средств (например, при трансфере Ctoken в Compound) мы просто ссылаемся на контракт и просим его переписать записи внутри него. В этом, собственно, и есть основная проблема. Смарт-контракт становится single point of failure, поскольку невозможно отделить записи балансов от самого контракта. И если хакер воспользовался уязвимостью, то пиши пропало. Твоих тугриков у тебя больше нет. Но вот если хранить запись отдельно от логики контракта в децентрализованной манере, то всё уже играет совсем другими красками, что, к сожалению, пока, в Эфире не возможно, поскольку сама модель программирования в Эфире не позволяет такое проворачивать, ну или позволяет, но это очень и очень запарно, что только увеличивая вероятность хака.
В том же Nervos за счет клеточной структуры хранения данных это вопрос решен. Там записи балансов хранятся отдельно от самих контрактов, описывающих логику работы. И если хакер нашел баг в контракте, то воспользоваться твоими токенами он всё равно не сможет. По-моему, достаточно прикольная штука.
А вообще всячески советую почитать пост, там и для задротов есть ссылки на исследования проблем безопасности СК, а также все разложено о принципах работы клеточной структуры, плюс приведен пример оценки риска бага в смарт-контракте на основе первого продукта от Nexus Mutual (тоже надо как-нибудь поговорить будет).
@CryptoLamer
P.S. @NervosRussia - тут ещё больше про Nervos и его майнинг
Post #2093
3.86K