DEFINICJA Hashed Timelock Contract
Hashed Timelock Contract (HTLC) to rodzaj inteligentnego kontraktu stosowanego w kanałach kryptowalutowych w celu wyeliminowania ryzyka kontrahenta. Umożliwia realizację transakcji terminowych.
W praktyce oznacza to, że odbiorcy transakcji muszą potwierdzić płatność, generując dowód kryptograficzny w określonym czasie. W przeciwnym razie transakcja nie nastąpi.
Atomowy handel między łańcuchami kryptowalut jest realizowany za pomocą HTLC. Sieć błyskawic Bitcoin również wykorzystuje HTLC.
ŁAMANIE W DÓŁ Hashed Timelock Contract
Hashed Timelock Contract (HTLC) wykorzystuje kilka elementów z istniejących transakcji kryptowalutowych. Na przykład transakcje HTLC używają wielu podpisów, które składają się z prywatnego klucza publicznego, do weryfikacji i weryfikacji transakcji. Ale są dwa elementy, które odróżniają HTLC od standardowych transakcji kryptowalutowych.
Pierwszy to hashlock. Hashlock to zakodowana wersja klucza kryptograficznego generowanego przez inicjatora transakcji. Służy do odblokowania oryginalnego skrótu. W HTLC strona inicjująca generuje klucz i hashuje go. Hash jest przechowywany w obrazie wstępnym, który jest następnie ujawniany podczas końcowej transakcji.
Drugim ważnym elementem HTLC jest blokada czasowa. Do ustawiania ograniczeń czasowych kontraktów generowanych przy użyciu HTLC stosuje się dwa różne blokady czasowe. Pierwszym z nich jest CheckLockTimeVerify (CLTV). Używa podstawy czasu do blokowania i uwalniania bitcoinów. Oznacza to, że ograniczenia czasowe są zakodowane na stałe, a monety są wypuszczane tylko o określonej godzinie i dacie lub określonej wysokości wielkości bloku.
Drugi to CheckSequenceVerify (CSV). To nie zależy od czasu. Zamiast tego wykorzystuje liczbę wygenerowanych bloków jako miarę, aby śledzić, kiedy sfinalizować transakcję.
Aby przeprowadzić transakcję przy użyciu HTLC, zainteresowane strony muszą ze sobą otworzyć kanały.
Jak praktycznie wdraża się HTLC?
Załóżmy, że Alice chce wymienić bitcoin na litecoin od Boba. Typowa transakcja HTLC między nimi odbywa się w następujący sposób:
1. Alice generuje skrót ze swojego klucza prywatnego i wysyła go do Boba na blockchain litecoin. Generuje również wstępny obraz skrótu, tworząc nominalną transakcję. Ten obraz wstępny pomoże jej zweryfikować i sfinalizować transakcję.
2. Bob generuje również skrót ze swojego klucza i wysyła go do Alicji. Ponadto tworzy obraz wstępny, przeprowadzając nominalną transakcję (w litecoin) z Alice.
3. Kiedy Alice otrzyma transakcję litecoin Boba, podpisuje ją za pomocą oryginalnego klucza, który jest już dostępny z nią na zdjęciu wstępnym. Podobnie robi Bob, używając swojego klucza prywatnego do odblokowania transakcji Alice.