Что такое Hashed Timelock Contracts (HTLCs)?
Hashed Timelock Contracts (HTLCs) это соглашения в виде смарт-контрактов, при которых средства переходят только если секрет раскрыт до установленного срока. Если таймер истёк, средства возвращаются отправителю. Представьте шкафчик, который открывается по коду и закрывается автоматически после обратного отсчёта.
«HTLCs предназначены только для Lightning Network.» Это неверно. Hashed Timelock Contracts (HTLCs) также применяются в атомарных свапах и других схемах платежных каналов на разных цепочках.
Как работают Hashed Timelock Contracts (HTLCs)
Представьте двух людей, организующих раскрытие тайника с таймером, но с квитанциями. Схема такая:
- Шаг 1: Два участника соглашаются обменяться средствами в P2P режиме. Получатель генерирует случайный секрет и передаёт отправителю только его отпечаток.
- Шаг 2: Отправитель блокирует средства в контракте, который выплатит их, если получатель раскроет секрет, соответствующий переданному отпечатку, вычисленному с помощью криптографического хеша.
- Шаг 3: Получатель получает средства, раскрыв секрет до окончания таймера. Контракт проверяет совпадение и выпускает платёж.
- Шаг 4: Если время истекает раньше, деньги автоматически возвращаются отправителю.
- Шаг 5: При маршрутизации через несколько узлов все используют один и тот же отпечаток секрета. Когда конечный получатель раскрывает секрет, каждый узел получает платёж по очереди.
Да, это и есть весь фокус.
Почему Hashed Timelock Contracts (HTLCs) важны
Это важно, потому что так криптовалюты передают ценность без слепого доверия.
- Польза: Расчёт все или ничего, который выглядит без доверия для обеих сторон.
- Перспектива: Это даёт возможность мгновенной маршрутизации, межцепочечных свапов и платежей в интернете без службы поддержки.
- Актуальность: Вы встретите их в платежных каналах, DEX свапах и приложениях на основе каналов в экосистеме Bitcoin и других.
Ставьте более длинные таймауты выше по цепочке, чем ниже, и не используйте секреты повторно. Рассматривайте эти механизмы как программируемые схемы, похожие на эскроу, с таймерами, которые поддерживают честность участников.
Ключевые характеристики Hashed Timelock Contracts (HTLCs)
Что их отличает:
- Хешлок: Средства разблокируются только при раскрытии правильного секрета.
- Таймлок: Если раскрытие не произошло вовремя, средства возвращаются отправителю.
- Атомарность: В многоступенчатых маршрутах расчёты происходят либо все вместе, либо ничего не перемещается.
- Переносимость: Работают на разных цепочках, которые поддерживают базовые скрипты или контракты.
Вариации
Та же идея, разные варианты:
- Хеш: Для отпечатка можно использовать разные алгоритмы, например SHA256 или Keccak.
- Скрипт: В Bitcoin это основано на скриптах, в Ethereum реализуется с помощью смарт-контрактов.
- Таймаут: Относительное или абсолютное время, выбираемое с учётом рисков маршрутизации и комиссий.
- Маршрутизация: Одношаговые платежи или многоступенчатые маршруты для более длинных путей.
Когда платёж подтверждается, секрет становится публичным. Не используйте его повторно в разных Hashed Timelock Contracts (HTLCs) и всегда ставьте разное время ожидания.
Пример
В кафе маршрутизованный платёж расчётывается с помощью Hashed Timelock Contracts (HTLCs) в тот момент, когда магазин раскрывает секрет, и каждый промежуточный узел автоматически получает расчёт.
Забавный факт
Идея была описана в ранних предложениях по платежным каналам Bitcoin и позже получила популярность после whitepaper Lightning; первые публичные атомарные свапы с похожими приёмами появились между Decred и Litecoin в 2017 году. Для энтузиастов, но исторически значимо.
Итог
Коротко: программируемые таймеры и секретный код позволяют перемещать деньги с уверенностью, без посредника.
