ОПРЕДЕЛЕНИЕ Контракта хешированного таймлока
Hashed Timelock Contract (HTLC) - это тип интеллектуального контракта, используемого в каналах криптовалюты для устранения риска контрагента. Это позволяет осуществлять транзакции с привязкой по времени.
В практическом плане это означает, что получатели транзакции должны подтвердить платеж, создав криптографическое подтверждение в течение определенного периода времени. В противном случае транзакция не состоится.
Атомная кросс-цепная торговля между криптовалютами реализована с использованием HTLC. Молниеносная сеть Биткойна также использует HTLC.
BREAKING DOWN Хэшированный Контракт Timelock
В договоре хэшированной временной блокировки (HTLC) используются несколько элементов из существующих транзакций криптовалюты. Например, транзакции HTLC используют несколько подписей, которые состоят из частного открытого ключа, для проверки и проверки транзакций. Но есть два элемента, которые отличают HTLC от стандартных транзакций криптовалюты.
Первый - это хешлок. Хеш-блокировка - это шифрованная версия криптографического ключа, созданного инициатором транзакции. Используется для разблокировки оригинального хэша. В HTLC исходящая сторона генерирует ключ и хэширует его. Хеш хранится в предварительном изображении, которое впоследствии раскрывается во время последней транзакции.
Вторым важным элементом HTLC является временная блокировка. Две разные временные блокировки используются для установки временных ограничений для контрактов, созданных с использованием HTLC. Первый - это CheckLockTimeVerify (CLTV). Он использует временную базу для блокировки и выпуска биткойнов. Это означает, что временные ограничения жестко запрограммированы, и монеты выпускаются только в определенное время и дату или с определенной высоты размера блока.
Второй - CheckSequenceVerify (CSV). Это не зависит от времени. Вместо этого он использует количество сгенерированных блоков в качестве меры, чтобы отслеживать, когда завершить транзакцию.
Для проведения транзакции с использованием HTLC заинтересованным сторонам необходимо открывать каналы друг с другом.
Как HTLC реализуется на практике?
Предположим, Алиса хочет обменять свой биткойн на лайткойн от Боба. Типичная транзакция HTLC между ними происходит следующим образом:
1. Алиса генерирует хэш из своего закрытого ключа и отправляет его Бобу по блокчейну litecoin. Она также генерирует предварительное изображение хэша, создавая номинальную транзакцию. Это предварительное изображение поможет ей проверить и завершить транзакцию.
2. Боб также генерирует хеш из своего ключа и отправляет его Алисе. В дополнение к этому он создает предварительное изображение, проводя номинальную транзакцию (в litecoin) с Алисой.
3. Как только Алиса получает транзакцию Боба в litecoin, она подписывает ее, используя оригинальный ключ, который уже имеется у нее в предварительном изображении. Боб делает то же самое с его стороны, используя свой закрытый ключ, чтобы разблокировать транзакцию Алисы.
