Часть 4, . Когда сайт DEX сервиса не работает, как вынимать средства из смартконтракта. Финансы, децентрализованные. Опыт, личный.

Часть 4, . Когда сайт DEX сервиса не работает, как вынимать средства из смартконтракта. Финансы, децентрализованные. Опыт, личный.

Часть 4. Как вынимать средства из смарт-контракта, когда сайт DEX сервиса не работает. Децентрализованные финансы. Личный опыт.


Часть 4, . Когда сайт DEX сервиса не работает, как вынимать средства из смартконтракта. Финансы, децентрализованные. Опыт, личный.
Решил потому, что перед новым годом у меня случился мягко скажем затык, продолжить серию статей про defi. По русски, попробую объяснить. А лендинговые сервисы, это сервисы по кредитованию в криптовалютном мире децентрализованных финансов у меня лежали средства под хороший процент, в одном из лендинговых сервисов. Случайно в редкой сети, нашёл я этот сервис. Что уже как бы не плохо, и мне капало около 100% годовых в eth -эфириум. Но 30 декабря с утра я обнаружил, что сайт не открывается, просто ошибка и всё.

Часть 4, . Когда сайт DEX сервиса не работает, как вынимать средства из смартконтракта. Финансы, децентрализованные. Опыт, личный.

Такое с каждым сервисом, теоретически может случится. Естественно, я вначале понервничал. к С хвостиком, это около 350, заблокирован у меня был там 1. р Анализировать свои возможные потери, потом я стал. То потенциальные потери это разница между стоимостью 1 ETH и суммой взятых в кредит средств, так как я в данном сервисе под залог этого 1 eth взял кредит. Если организация пропадает, ты ей ничего не должен, ну и она тебе соответственно тоже, ведь в мире defi. Около 1400$, это мой заработок примерно за 1,5 недели и я успокоился, деньги хоть и приличные, но не глобальные, по разнице сумма получилась чуть меньше. Но мириться как бы не хотелось и я полез в твиттер где нашёл аккаунт этого сервиса, где было указано, что:, можно бы было смириться.

Мы поэтому сайт какое то время работать не будет, все ваши средства в безопасности в смарт-контрактах, переезжаем на другие сервера.
Примерно по памяти, ну это. Что 2 дня для переезда более чем достаточно, но сайт так и не работает, а ниже комментарий одного из участников. Я не привык верить людям и не известным организациям на слово, это меня насторожило. Почему бы не попробовать научится вытаскивать средства от туда вручную, а так же я увидел слово смарт-контракты и подумал. Сайт лишь оболочка для взаимодействия, а средства заблокированы в блокчейне в смарт-контрактах, так вот сайт просто позволяет делать команды для взаимодействия со смарт-контрактам, ведь действительно средства хранятся не на сайте который был по сути закрыт. Для снятия средств из смарт контракта в Ваш кошелёк (естественно тоже всё это происходит в блокчейне, а не на сайте и даже не в вашем кошельке, кошелёк только отображает баланс и позволяет отдавать комманды), б) напрямую через смарт контракт.
Всё в виде записи, что такому то адресу или такому то смарт-контракту принадлежит такое то кол-во токенов, это время средства находятся в блокчейне. Не на что не влияет, поэтому закрытие сайта по сути. Просто руководство сервиса безалаберно затянуло процесс переезда, ещё и перед новогодними праздниками, хотя теоретически это мог быть и скам проекта, средства действительно на месте и не были украдены сервисом.
Поэтому решил перестраховаться,. Что такое смарт-контракт? Смарт-контракт, это набор команд (по сути код, как в матрице), который позволяет в автоматическом режиме производить сделки. То, есть доверяя средства смарт-контаркту, вы доверяете - коду, то. Надо либо А) уметь его читать, либо Б) знать, тех кто умеет его читать, и доверять, чтобы доверять коду. Вариант это аудит, б. Что аудит безопасности они прошли, причём ещё и двумя сервисами, в чём я убедился лично, я вспомнил и нашёл подтверждение в твиттере. Более прошли его у Certik, одного из крупнейших аудиторов и большинство проблем с кодом было устранено, критических проблем нет, как видно из отчёта:, того.

Успокаивал себя я, но что-то мне всё равно не давало покоя, то есть средства точно в безопасности. Что я не умею ими управлять в отсутствии сайта,, а. е Для управления, оболочки. А управлять ими в отсутствии оболочки можно, потому, что доступ к смарт контрактам имеется через обозреватели блокчейна. Есть свой обозреватель, который позволяет видеть все сделки, и взаимодействовать со всеми смарт контрактами всей сети, у каждой сети. Как в матрице, вот так.

Нео со смарт-контрактами, взаимодействует. Т е Это просто набор буквоцифр, а для кого-то вся информация о всех сделках прошлых и текущих за всё время, для кого. Вполне себе можно во первых всё узнать, во вторых всё изменить, и в этих буквоцифрах.

Так когда только начинал всё это осваивать, примерно я видел блокчейн. Них*ра не понятно, если грубо. Поэтому где у меня заблокированы средства, я полез узнавать и искать смарт контракт.

Для два пути, этого есть. Вбив туда адрес своего кошелька, а можно пользоваться, можно пользоваться самим обозревателем. Который слегка упрощает процесс,, сервисами типа debank. к Более визуально удобным, делает.
Для решил пойти вторым путём, поиска смарт контракта. И без того нервную жизнь, чтобы не усложнять себе. Для выбрал раздел сделок (history) и ту сеть где у меня были заблокированы средства, этого я вбил кошелёк.

Далее где был произведена транзакция по переносу средств из моего кошелька в смарт контракт проекта (хотя я очень сомневался, что это, то что нужно):, я до листал до того места.

Вот, оно то, что нужно, операция которой я перевёл средства в смарт-контракт сервиса, сайт которого отключился и не известно когда включится, вот. Далее для этого я тыкнул по этой сделке:, осталось найти его адрес.

Вначале что у меня есть расписки, которые мне выдали взамен 1 ETH, для этого я зашёл по ссылке nETH и добавил адрес контракта в метамаск (как это делать я писал в предыдущих статьях), я убедился.

Это значит взамен расписок я могу вернуть назад свой эфир, уже хорошо. Что они у меня есть, потому, что изначально они не отображаются, адрес контракта расписок надо добавлять в ручную в большинстве случаев), потеряв или продав расписки я бы лишился этой возможности (но я даже не знал.
Далее который указан скриншотом выше, точнее через скриншот, просто тыкнуть на него, надо зайти по адресу март контракта.

Далее по переводу 1, я даже не поленился и нашёл свою сделку. Потом что со смарт контракта кто то усиленно выводил все средства, но естественно свои средства, это я тоже проверил, увидел.

Мужики бабосики, выводят. Но ничего не понятно, "очень интересно. "На в смарт контракте лежело около 35 ETH + мой 1 ETH и когда большую часть средств вывели, самом деле всё было понятно. Потому, что чем больше средств заняли из протокола и чем меньше в нём их, тем больше доходность, процент - доходность резко выросла (до 100%) годовых. Другой статьи в общем, но это инфа. Что в смарт-контракте остался мой эфир и ещё два чьих то эфира, суть в. Но это можно было просто посчитать по сумме сделок, а так же по сумме имеющихся на депозитах расписок nETH, в балансе это не отображалось.

Сейчас их примерно столько же 310,, к слову. е 1 ETH заблокировано в протоколе,.

Это утешало, значит кто-то, кроме меня тоже "попал".
Далее забрать средства, стояла задача. но тут всё не так просто. к То забрать их не вернув залог не возможно, точнее не возможно забрать в полном объёме, средства являются залогом. Чтобы вообще понять, можно ли это сделать, поэтому я решил провести мелкую транзакцию. Контрактами(на странице смарт контракта - через 2 скриншота выше):, и для этого пошёл в раздел операций со смарт.

После как я подконнектил кошелёк, стал искать операцию, которая отвечает за вывод средств,, того. е На скриншоте выше (листать соовт, листать список операций указанных. ниже) Нашёл я её по названию из deBank (когда закладывал средства):, и нашёл.

Mint (минт в переводе означает - чеканить, то есть если операция по блокировке средств. Отчеканили 100 nETH - расписок), в замен 1 eth. В переводе означает - выкупать или обменять), то обратная операция соответственно это redeem ( редим. То обратным действием я должен выкупить свой 1, то есть если изначально я отчеканил 100 neth.

Далее что я не знал, сколько я могу выкупить назад,, проблема была в. к Это была первая проблема, второй проблемой было, то, что вводить сумму нужно было, я взял кредит под залог этого 1. в кодировке unit256 т е Ввести цифру 1 и получить результат, я не мог просто взять. н Поэтому сумму баланса кошелька, надо было узнать. в кодировке unit256. Звучит но на самом деле, это как в математике, если на обратной стороне тетрадки есть таблица умножения, то не зная правил ты можешь решать задачи, всё это очень сложно и мне тоже в тот момент так казалось. Таблица умножения была в разделе чтения баланса кошелька, так же и.

Почему потому, что по этой инструкции в случае проблем вы сможете извлечь средства из любого смарт контракта, даже в таком сложном варианте как лендинговый протокол,, я так подробно пишу. к Один на депонирование средств, второй на займ, там по сути по минимуму смарт-контракта. Тут явно не разберёшься, без подробной инструкции и бутылки водки.
Далее чтобы найти раздел, чтения баланса именно Вашего кошелька, в данном смарт контракте, мы листаем ниже. Для нажать кнопку querry для раздела balans of(что как бы логично), этого в раздел owner надо ввести свой адрес.

Так эфира в нужной мне кодировке, я получил результат по кол-ву. Случайно открылся калькулятор, который как оказался мне и был нужен, тыкнув на сами символы(синеньким на скриншоте выше). но кстати для эфира он оказался почти бесполезен. к Но в нём более наглядно, что-ли, считает нативную валюту movrики. Осталось чтобы понять, сколько надо снимать,, только поставить в нужном месте запятую.

0003 eth, для проверки, что это вообще возможно, а снять я решил. Могу взаимодействовать без веб интерфейса, и что я действительно. Соответственно, в той кодировке сумму нужно было вбить 00003000000, естественно нули спереди я решил убрать, оставив 3000000. Данная сумма равняется 0,0003 eth. Далее, я вернулся в раздел write. е С контрактом, взаимодействия. Подконнекчен мой адрес:, где был.

Где можно забрать баланс, и до листал опять до того раздела.

Первой было использование нижней строчки , по сути это забрать, моей ошибкой. а всё я забрать не. к Взятые в кредит токены MOVR и USDC, этот депозит частично является залогом. Логично завершилась ошибкой, поэтому первая транзакция. Когда я вбил указанное значение в поле , прошла успешно, но вторая.

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

Сих пор, и они. Лень куда то переводить, так как эти копейки. Часть 2. "Спасение" депозита путём получения большего кредита. Почему не, на этом. Что это не был выход из ситуации, я не мог забрать все средства,, потому. к Были залогом, по кредиту, они как я уже не раз писал. Что без погашения кредита смарт контракт мне не вернёт мой 1, это значит. Погашать хотя это можно бы было сделать вполне найдя другой смарт контракт который отвечает за погашение, кредит мне было страшно. Что не смотря на аудит, где у меня гарантия, что после возврата кредита, залог мне вернут назад в полном объёме (хотя выше вроде видно, что возвращается именно столько сколько запросил, даже чуть больше), страшно потому. Поэтому было приятно решение, занять ещё средств, но я не хотел рисковать. Столько сколько позволяет протокол, а мои потери в случае если не починят сайт составят разницу между залогом (1 ETH) и взятыми в кредит средств (USDC + MOVR), по максимуму. Примерно меня не устраивала, разница в 1400$. Поэтому где я брал в кредит на этом сервисе средства, которые за это отвечают, один который отвечает за MOVR, второй за USDC, для этого опять полез в debank в историю транзакций, я решил найти два смарт контракта. Смарт контракта, и нашёл.

Для а не на надписи borrowТо есть по сути я нашёл все три точки, где можно управлять средствами без сайта вообще, их просмотра в обозревателе тыкать надо на надписи с датой. Дальше вначале я посчитал сколько у меня взято МУВриков, и обнаружил, что тут калькулятор показывает верно, я делал уже по накатанной.

Хотя там калькулятор показывал НЕ верно, но отделить количество знаков даже школьник сможет,, с usdc тоже особых проблем не было. е Как не что вроде 600000000 и много нулей(сейчас точно не помню), взятые в кредит 600 баксов отображались.

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

Далее я уменьшил сумму кредита в MOVR, до разумных (изначально хотел выгрести всё, но там же не дадут, банкомат не даст больше, чем у тебя есть возможность снять), после трёх не удачных попыток.

У сервиса по сути который находился в offline (при этом на тот момент никто другой такие транзакции совершить не мог или не хотел или не умел из пользователей данным сервисом), я получил 500 usdc и некоторое кол-во movr.

По я высчитал, что максимальные возможные потери (разница между залогом и суммой займа) составят всего 350-400$, что меня вполне устроило, итогу всех операций.
Почему потому, что я не был до конца уверен, что после возврата средств я смогу забрать ВЕСЬ залог(депонированный 1 ETH), кроме этого в твиттере объявление о том, что сайт они запустят, меня частично успокаивало, как и пройденные два аудита у двух независимых аудитора смарт контрактов, я решил не возвращать кредит я уже писал выше. Всё, это происходило 31 декабря с утра. е Самым новым годом, прямо перед. Потому, что смог найти ключик к её решению (без помощи ютьюба, да и нет там разбора таких сложных случаев), произведя все манипуляции я забыл об этой проблеме как о страшном. 1 января сервис (оболочка-сайт) заработал, чем сказочно меня порадовал. И заодно порадовал тем, что стимулировал меня научится работать со смарт-контрактами напрямую, чем я попытался научить и Вас.

Понравилось именно, но в целом.

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

И это то, что в сфере децентрализованных финансов, если у проекта пройден аудит и(или не пройден аудит),но хороший код который исключает взлом, то никто кроме Вас не может забрать, похитить, лишить Вас Ваших средств, самый главный вывод который бы я хотел сделать.
Потому, что владельцы сервиса не могут доставать средства из смарт-контрактов, они могут только убрать интерфейс, но это ничего не даст, потому. Т к Отдельного интерфейса напрямую взаимодействуя с блокчейном, данными средствами можно управлять и.
А наложить на них арест(заморозить) в отличии от банков и централизованных бирж, все сделки которые вы совершаете не возможно заблокировать или отменить.
#смарт контракт #DeFi #криптовалюта, #блокчейн.


Дата публикации: 06/01/2022


Благодарность автору