Collateral Cardano — это ADA, выделенные для предусмотренного реестром неуспеха выполнения Plutus, а не вторая комиссия при любой ошибке кошелька. Отказ на первой фазе залог не расходует. Если неуспех второй фазы записан в блокчейне, проверьте collateral и выход возврата конкретной транзакции, чтобы установить фактическое списание.
Определите этап сбоя до подсчёта потери
Cardano использует две стадии проверки. Сначала проверяются структурные условия: наличие входов, подписи и баланс значений. На второй стадии выполняются скрипты Plutus. Официальное руководство по ошибкам различает сбой подготовки, отказ узла и неуспех скрипта в реестре. Называть их все оплаченным неудачным выполнением контракта неправильно: последствия зависят от стадии и реального результата.
В описании валидности реестра указано, что транзакция с неуспехом второй фазы может попасть в блокчейн с использованием залога. Поэтому важны включение и записанный результат. Одна ошибка локального расчёта скрипта ещё не доказывает, что сеть израсходовала средства кошелька. Сначала нужно сопоставить попытку в приложении с конкретной записью.
| Что наблюдаете | Что проверять | Вывод о collateral |
|---|---|---|
| Кошелёк не собрал транзакцию | Выбор входов, минимумы выходов, ошибку подготовки | Списание в блокчейне не установлено |
| Узел отверг первую фазу | Точный отказ и контекст транзакции | Эта отклонённая транзакция залог не расходует |
| Скрипты выполнены успешно | Обычные входы, выходы и комиссию | Залог по пути неуспеха не расходуется |
| Включённая запись имеет неуспех второй фазы | Потреблённый залог и реальный возврат | Списание определяется результатом реестра |
| Виден только уменьшенный текущий баланс | Другие переводы и историческую запись | Разница остатка сама по себе не является чеком залога |
Обычная комиссия и залог относятся к разным результатам
Успешная транзакция оплачивает обычную комиссию. Залог покрывает вычисления неуспешной второй фазы, не применяя задуманный перевод из скриптовых входов. Глоссарий Cardano описывает списание collateral вместо обычной комиссии для такого пути. Не складывайте автоматически показанную комиссию и расход залога как два отдельных платежа за один результат: сначала установите, какой путь был применён.
Простой перевод ADA без выполнения Plutus отличается от расходования входа, защищённого таким скриптом. Наличие настройки collateral в кошельке не означает необходимость залога для любого нативного перевода. Но запрос dApp со скриптами нужно разбирать по его реальному содержимому. Правила простой отправки нельзя механически переносить на сложное действие приложения и наоборот.
Необходимый размер зависит от параметров протокола и самой транзакции. Здесь нет универсальной суммы пополнения collateral. Проверяйте текущий запрос кошелька и условия сети. Требование «поддержки» перечислить фиксированную плату активации на посторонний адрес не объясняется одним словом залог. Уточнить его смысл нужно до перевода, а не после доверия знакомому техническому термину.
Выбранный вход не всегда теряется целиком
Первоначальный механизм мог потреблять весь выбранный залоговый вход. CIP-40 вводит выход возврата и явный учёт потребляемой суммы. Исторические ограничения Alonzo нельзя повторять так, будто последующие форматы транзакций не имеют возврата. При оценке риска нужны актуальные возможности формата и данные именно предлагаемой операции, а не старое общее описание.
В актуальной документации Cardano API отдельно представлены входы collateral, total collateral и return collateral. Они описывают разные части транзакции. Поэтому строка интерфейса о выбранном входе на несколько ADA может не совпадать с суммой под риском. Сначала выясните, какое поле и какой результат обозначает показанное число.
Полностью вымышленный пример, не минимум сети и не действующий тариф: выбран вход с 5 ADA, а для соответствующего неуспеха указаны списание 0,3 ADA и возврат 4,7 ADA. Обычная комиссия успешного выполнения показана как 0,2 ADA. Если применён именно заданный путь неуспеха, расчёт залога равен 5 минус 4,7, то есть 0,3 ADA. Нельзя без проверки объявить потерей все 5 ADA или автоматически добавить ещё 0,2.
| Поле условной транзакции | Сумма | Что обозначает |
|---|---|---|
| Выбранный вход collateral | 5 ADA | Стоимость, участвующую в учёте залога |
| Указанный потребляемый залог | 0,3 ADA | Списание для пути неуспеха примера |
| Возврат collateral | 4,7 ADA | Сумму в предусмотренный выход возврата |
| Комиссия успешного пути | 0,2 ADA | Другой результат, а не обязательное дополнительное списание |
| Проверка баланса залога | 5 = 0,3 + 4,7 | Сверку значений, а не тариф |
Возвратный выход должен удовлетворять условиям реестра. CIP-40 также позволяет использовать входы с нативными активами, если возвратный учёт сохраняет их; сами активы не становятся ADA-комиссией. Конкретный кошелёк всё ещё может требовать упрощённый выбор только ADA. Отличайте ограничение продукта от утверждения, будто протокол никогда не допускает активы в залоговых входах. Для проверки важны и кошелёк, и формат.
Смотрите адрес возврата вместе с размером
Документация механизма collateral описывает адрес возврата излишка после обновления Vasil. Проверьте, куда направлен этот выход. Разумная сумма с неожиданным получателем не делает транзакцию подходящей для вашего кошелька. Пояснение на странице dApp не заменяет реквизиты запроса, который фактически подписывается, особенно если интерфейс сокращает адреса и подробности.
Для аппаратного кошелька или сокращённого просмотра уточните доступный объём проверки. Надпись «безопасный залог» сама по себе не доказывает сверку всех входов и выходов с реестром. Если сумма под риском или адрес возврата непонятны, отклоните запрос и получите объяснение по независимо проверенному каналу кошелька либо приложения. Продолжать только ради исчезновения предупреждения не требуется.
Как разобрать предполагаемое списание
- Сохраните сеть, хеш при наличии, полную ошибку и время. Отделите локальную попытку от найденной в блокчейне транзакции.
- Прочитайте результат и определите стадию. Не классифицируйте отказ первой фазы как расходование залога.
- Для включённого неуспеха изучите залоговые входы и реальный выход возврата, а не только обычных получателей.
- Сопоставьте потреблённую сумму с total collateral и применимым форматом транзакции.
- Найдите получателя возврата в правильном аккаунте кошелька и его истории.
- Отделите другие платежи и поздние операции от списания этой транзакции. Передавайте поддержке публичные сведения, а не данные восстановления.
Если возвратного выхода нет, не придумывайте его на основании привычного поведения нового кошелька. И наоборот: при реальном возврате нельзя объявлять потерей полную стоимость входа. Историческая запись полезнее снимка сегодняшнего общего баланса. Если сейчас средств меньше, причина может относиться к нескольким действиям, и для вывода о конкретном collateral их требуется разделить.
Повтор — отдельное решение. Убедитесь, что задуманный платёж не завершён, разберите ошибку и заново просмотрите свежую транзакцию до подписи. Увеличение collateral не исправляет неверную логику скрипта и не добавляет отсутствующую подпись. Просьба раскрыть сид-фразу ради получения возврата также не относится к обычной проверке общедоступного результата реестра и не нужна для поиска выхода.
Контекст нативного актива есть на странице ADA. Минимумы выходов отдельно разобраны в материале о минимальном ADA для токенов Cardano. Для последующего обмена без регистрации следуйте реквизитам конкретной заявки. Пример скриптового залога не подтверждает требование отдельного collateral-перевода для обмена и не заменяет его реальные инструкции.
Частые вопросы
Для чего нужен collateral в Cardano?
Он покрывает предусмотренный блокчейном путь неуспеха второй фазы Plutus. Это не общая дополнительная плата за любую ошибку кошелька или простой перевод ADA.
Теряется collateral Cardano при отклонении транзакции?
Отказ первой фазы не расходует залог. Для записанного неуспеха второй фазы изучают потреблённый collateral и возвратный выход, чтобы установить сумму.
Cardano всегда забирает залоговый вход целиком?
Нет, поддерживающие collateral return форматы позволяют отправить излишек в указанный выход. Проверяйте реальную подписываемую транзакцию вместо предположения об одинаковой политике всех кошельков.
По теме на сайте
Источники
- developers.cardano.org/docs/developers/curriculum/start-building/transaction-failures/
- cardano-scaling.github.io/cardano-blueprint/ledger/state-transition/validity.html
- cardano.org/glossary/collateral/
- cips.cardano.org/cip/CIP-0040
- cardano-api.cardano.intersectmbo.org/cardano-api/Cardano-Api-Tx.html
- docs.cardano.org/about-cardano/learn/collateral-mechanism