Що таке Hashed Timelock Contracts (HTLCs)?
Hashed Timelock Contracts (HTLCs) це умови смартконтракту, за яких кошти переходять тільки якщо секрет відкрито до встановленого терміну. Якщо час вичерпується, кошти автоматично повертаються відправникові. Уявіть собі комірку, що відчиняється за кодом і закривається сама після зворотного відліку.
«Hashed Timelock Contracts (HTLCs) призначені лише для Lightning Network.» Це не так. Hashed Timelock Contracts (HTLCs) також дозволяють проводити атомарні свапи та інші потоки платежів у каналах на кількох ланцюгах.
Як працюють Hashed Timelock Contracts (HTLCs)
Уявіть двох людей, які організовують розкриття скарбу за таймером, але з підтвердженнями. Ось як це відбувається:
- Крок 1: Двоє користувачів домовляються обміняти кошти у P2P налаштуванні. Отримувач створює випадковий секрет, потім надсилає відправникові лише його відбиток.
- Крок 2: Відправник блокує кошти в контракті, який виплатить їх, якщо отримувач відкриє секрет, що відповідає переданому відбитку, отриманому за допомогою криптографічного хешу.
- Крок 3: Отримувач витрачає кошти, розкривши секрет до завершення таймера. Контракт перевіряє збіг і проводить платіж.
- Крок 4: Якщо час спливає першим, гроші автоматично повертаються відправникові.
- Крок 5: Для маршрутизації через кілька проміжних вузлів усі використовують один і той же відбиток секрету. Коли фінальний отримувач його розкриє, кожен вузол отримує оплату по черзі. Просто і зрозуміло.
Так, це справді вся хитрість.
Чому Hashed Timelock Contracts (HTLCs) важливі
Це важливо, бо саме так крипто передає вартість без сліпої довіри.
- Перевага: Розрахунок «все або нічого», що є без довіри для обох сторін.
- Перспектива: Забезпечує швидку маршрутизацію, міжланцюгові свапи та платежі для інтернету без служби підтримки.
- Актуальність: Ви зустрінете це в каналах платежів, DEX свапах та додатках на основі каналів у Bitcoin та інших мережах.
Встановлюйте довші таймаути на попередніх ділянках, ніж на наступних, і не повторно використовуйте секрети. Розглядайте їх як програмовані механізми, подібні до escrow, з таймерами, що підтримують чесність усіх сторін.
Ключові характеристики Hashed Timelock Contracts (HTLCs)
Ось що робить їх особливими:
- Hashlock: Кошти розблоковуються тільки коли розкрито вірний секрет.
- Timelock: Якщо розкриття не відбулося вчасно, кошти повертаються відправникові.
- Атомарність: У маршрутах через кілька проміжних вузлів все розраховується разом або нічого не відбувається.
- Портативність: Працює через різні ланцюги, що підтримують базовий скриптинг або контракти.
Варіанти
Одна ідея, різні варіанти:
- Хеш: Можуть використовуватися різні алгоритми, наприклад SHA 256 або Keccak, для відбитка.
- Скрипт: У Bitcoin це реалізовано через скрипти, в Ethereum це зроблено смартконтрактами.
- Таймаут: Відносний або абсолютний час, обирається з урахуванням ризиків маршрутизації та комісій.
- Маршрутизація: Одиночні платежі через один вузол або маршрути через кілька вузлів для довших шляхів.
Коли платіж підтверджено, секрет стає публічним. Не використовуйте його повторно у різних Hashed Timelock Contracts (HTLCs) і завжди встановлюйте різні таймаути.
Приклад
У кав'ярні маршрутизований платіж розраховується через Hashed Timelock Contracts (HTLCs) у момент, коли магазин розкриває секрет, і кожен проміжний вузол автоматично отримує оплату.
Цікавий факт
Ідея була накидана в ранніх концепціях платіжних каналів Bitcoin і пізніше стала популярною завдяки whitepaper Lightning; перші публічні атомарні свапи з подібними прийомами з'явилися між Decred і Litecoin у 2017 році. Технічно, але історично.
Підсумок
Коротко: програмовані таймери разом із секретним кодом дозволяють переказувати гроші з упевненістю, без посередника.
