假設你現在想向Sandra支付1個BTC,但你和她之間卻沒有付款通道。而托馬斯與你們兩個都有付款通道,於是你們便可以透過托馬斯來實現這筆交易。在沒有HTLC的情況下,這個交易過程中可能會出現什麼問題?取決於誰先付款作為前提,可能會出現以下兩個問題:
在獲取資金的那一刻,Sandra揭示了秘密,於是Thomas也可以使用你傳送給他的比特幣了。最終的結果是在彼此不信任的情況下,你透過Thomas成功向Sandra支付了比特幣。現在,你和Thomas都知道了Sandra創造的秘密,你們都可以將其用作付款證明,因為Sandra揭示了這個秘密用來獲取她的款項。值得注意的是,如果Sandra拒絕或者無法揭示秘密,超時這個限制條件非常關鍵,其賦予了交易回滾的可能性。
3. 潛交換中的HTLC
我們一般稱普通的比特幣交易為鏈上交易, 閃電網路通道建立後,所有交易都是鏈下交易, 也可以理解為閃電支付就是鏈下交易,而HTLC可以同時在鏈上和鏈下交易中實現。實際上,它們可以用於連結鏈上付款和鏈下收款的交易,反之亦然。這便是潛交換。
假設你想在閃電網路中實現一筆交易,但又怕麻煩不想自己管理。潛交換允許你透過中介使用鏈上的比特幣來支付閃電憑證,這個過程是如何實現的?閃電網路中的商人會生成一個二維碼,用來提示你需要向潛交換提供者獲取的秘密,只有揭示了這個秘密,你才能使用資金。完成這個步驟後你便可以安全的將比特幣發給服務提供商,形成一個鏈上的HTLC。服務提供商由於不知道秘密,所以無法立即使用你發給他們的比特幣。相反,他會將比特幣轉移到閃電網路商家那裡,並加上一條條款,要求閃電網路商家必須披露相應的秘密才可以獲取資金。
閃電網路商家已經知道了這個秘密,但要想獲取這筆錢,他必須揭露這個秘密。在這個過程中,交換服務提供商會了解到這個秘密,並獲取你支付給他們的錢。交換服務提供商和商家都可以收取相應的錢,但是有一個區別:交換服務提供商收到的是鏈上的錢,而商家收到的是鏈下的錢。
4. 潛交換有什麼用?
潛交換可能是透過閃電網路進行付款的最簡便方法了。雖然它仍舊需要支付鏈上費用,但付款流程類似於一個鏈上支付的過程,並且付款可以是即時的(取決於實現方式)。如果使用者需要將部分資金從鏈上轉移到鏈下(或者相反),那麼潛交換將會非常有用。例如,在透過閃電網路成功進行了一週的運作後,商家可能需要獲取鏈上的比特幣才能向提供商付款。而回滾機制則提供了一種反向潛交換的方法,同時可以重新平衡通道以獲取容量。
最後,考慮到其他代幣也可以進行潛互換,例如使用Litecoin(費用較低且確認時間較短)和商家完成閃電付款或為您的渠道提供更多的流動性。
潛交換是Alex Bosworth和Olaoluwa Osuntokun提出的想法,並隨著時間的推移越來越受到人們的歡迎。儘管潛交換不是完美的,但它現存的一些應用程式可以幫助整個網路在初期發展的過程中解決兩個主要問題:流動性和採用率。