dApp (decentralized application) — приложение, которое использует блокчейн и один или несколько смарт-контрактов для выполнения части своей логики. В контексте DeFi dApp обычно представляет собой пользовательский интерфейс, через который человек взаимодействует с финансовым протоколом.

Типичный dApp состоит из нескольких компонентов. Пользовательский интерфейс может быть обычным веб-приложением, которое отображает балансы, котировки, доступную ликвидность и параметры операций. При необходимости выполнения действия интерфейс формирует данные для блокчейн-транзакции, а пользователь подтверждает ее через криптовалютный кошелек.

После подписания транзакции операция отправляется в сеть. Далее ее обрабатывают узлы блокчейна, а соответствующий смарт-контракт выполняет заложенную в нем логику. Таким образом, интерфейс dApp и смарт-контракт выполняют разные функции: интерфейс упрощает взаимодействие, а контракт определяет фактические правила операции.

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

Децентрализованное приложение не обязательно является полностью децентрализованным. Веб-интерфейс может размещаться на централизованном сервере, данные могут поступать через централизованный API, а обновление контрактов может контролироваться определенным администратором. Поэтому при анализе dApp необходимо отдельно оценивать децентрализацию интерфейса, смарт-контрактов, управления и внешней инфраструктуры.

Основные риски dApp связаны с уязвимостями смарт-контрактов, вредоносными или поддельными интерфейсами, ошибочными разрешениями на использование токенов, фишингом и компрометацией кошелька. Перед взаимодействием с новым dApp важно проверять адреса контрактов, сеть, разрешения и репутацию используемого протокола.