Разбираемся, как работают флеш-займы, для чего их можно использовать и почему их сложно брать.
Как работают флеш-займы
У Боба есть хорошая машина, а у Алисы — желание выложить классные сторис в Instagram. Боб готов пустить Алису в машину в обмен на ее номер телефона — это его комиссия. Огонечки в директе, лайки на постах и новые подписчики — прибыль Алисы.
Флеш-займы работают примерно так же: пользователь берет из пула ликвидности нужное количество токенов, пользуется ими и возвращает обратно в течение одной операции.
В лендинговых протоколах заемщик всегда вносит залог, который превышает сумму займа. Он гарантирует, что кредитор не потеряет средства, если заемщик не отдаст долг.
В флеш-займах залог не нужен, так как по условиям заемщик гарантированно вернет средства и проценты в течение своей операции. Это работает, потому что займ используется только если выполняются все условия контракта.
Пример: Боб видит, что курс tez/kUSD на QuipuSwap составляет $1,4, а курс на Vortex — $1,5. Он изучает ликвидность пулов на QuipuSwap и Vortex, чтобы найти параметры самой выгодной арбитражной сделки — например 1000 kUSD.
Боб создает смарт-контракт, который объединит и последовательно выполнит сложную транзакцию:
- Взять 1000 kUSD из пула флеш-займов.
- Купить на них 710 tez на Quipuswap.
- Продать 710 tez на Vortex за 1050 kUSD.
- Вернуть 1000,5 kUSD в пул флеш-займов.
При этом смарт-контракт выполнит флеш-займ и переместит средства только по исполнению всех операций. Если на момент обработки в пуле флеш-займов не хватит ликвидности или по итогу Боб останется в убытке, то контракт отменит все действия, и транзакция не попадет в блок. Протокол флеш-займов не потеряет ничего, а Боб — лишь комиссии за потраченный газ.
Флеш-займы достаточно популярны. Например, суммарный объем займов на крупнейшем таком протоколе AAVE достигает $5 млрд. При этом суммы кредитования небольшие, от $200 до $1000 в стейблкоинах.
Как использовать флеш-займы
Из-за необходимости использовать займ в течение одной транзакции, возможности их применения сводятся к четырем кейсам:
- арбитраж на DEX;
- самоликвидация хранилища синтитеческого актива или алгоритмического стейблкоина;
- создание позиции с плечом с использованием синтетического актива или стейблкоина;
- замена валюты залога в хранилище.
На Tezos флеш-займы пока что есть только на SpicySwap — самоликвидация и плечо на youves. Мы упоминали о них в обзоре экосистемы SalsaDAO.
Есть и хорошие новости: на прошлой неделе представитель DeFi-протокола Kord.fi анонсировал запуск флеш-займов. Скорее всего, пользователи смогут занимать tez и tzBTC для арбитража.
Кроме позитивных кейсов у флеш-займов есть и негатив: одолженный капитал можно использовать для манипулирования ценами внутренних оракулов и кражи средств. Например, при атаке на PancakeBunny хакер использовал такую схему:
- Занял $700 млн в BNB и $3 млн в USDT.
- Внес $3 млн в BNB и весь USDT в пул WBNB-USDT, чтобы получить LP-токены и право на свою часть в пуле.
- Обменял $697 млн в BNB в пуле на USDT, чтобы его LP-токены стали репрезентовать намного больше BNB, чем должны.
- Использовал LP-токены для минтинга 7 млн нативных токенов BUNNY стоимостью более $1 млрд на момент атаки.
- Продал большую часть BUNNY за BNB и USDT.
- Выплатил флеш-займы и в итоге получил $40 млн — 100 тысяч в BNB и 700 тысяч в BUNNY.
Подобные атаки случаются чаще, чем может показаться. Последняя произошла 8 сентября, когда хакер с помощью флеш-займов украл с протокола Free DAO $1,25 млн.
Подписывайтесь на социальные сети Tezos Ukraine, чтобы ничего не пропустить:
- Telegram-канал
- Twitter на украинском языке
- Twitter на русском языке
- Twitter на английском языке
- YouTube-канал
Изначально мы опубликовали этот материал в блоге Tezos Ukraine.