Atomic-Swap
原子交換 - 問題?
有人可以解釋一下為什麼原子交換沒有這樣的缺陷:
當我給他/她我的秘密時,他/她可以決定是否進行交易。如果在一定時間後價格對他/她有利,他/她將在不等待超時的情況下執行交易。我錯過了什麼嗎?
有利於一方的交易存在問題,他們可以利用超時來發揮自己的優勢。但這並不像某些人想像的那麼可怕。
這是一個例子:
Alice 在 Bitshares 區塊鏈上創建一個合約,如果 Bob 能想出這個秘密,它將向 Bob 支付 1 個比特幣。如果他沒有在 24 小時內這樣做,愛麗絲就會拿回她的比特幣。
Bob 在 Litecoin 網路上創建了一個合約,如果 Alice 在 12 小時內想出相同的秘密,她將支付 2.5 比特幣。
愛麗絲在這裡有一個小優勢。她有這個秘密。她可以等到接近 12 小時大關來決定價格是否對她有利。如果價格不符合她的喜好,她什麼也不做。Bob 拿回了他的萊特幣,而 Alice 又等了 12 個小時才拿回她的比特幣。
如果愛麗絲決定接受萊特幣,鮑勃幾乎沒有選擇。他必須拿走比特幣或空手而歸。
在沒有人想背叛對方的正常情況下,原子交換由四個交易組成:
- 來自鏈 A 上的 A 方的散列時間鎖合約 (HTLC)。它包含一個帶有兩條路徑的 if 語句:一條用於檢查 B 方的秘密雜湊和公鑰雜湊,另一條用於超時和公開甲方的密鑰雜湊。
- 來自 B 方的另一個 HTLC 在鏈 B 上。相同的結構,但交換了公鑰雜湊。鎖定時間更短,但秘密是一樣的。
- 在鏈 B 上從甲方索取交易。甲方現在希望通過提供秘密來索取交易價值。乙方在看區塊鏈時,他看到了來自甲的交易,現在也知道了其中的秘密。
- 有了這個秘密,他現在可以在鏈 A 上要求他的部分交易。
這當然有點抽象,因為實際上所有這些都進一步分為輸入和輸出腳本,但我希望為了一般理解,我的簡短解釋就足夠了。有關更多詳細資訊(但也有更多混淆),請閱讀<https://en.bitcoin.it/wiki/Atomic_cross-chain_trading>
因此,當您是甲方並將秘密“提供”給乙方(通過發送您的認領交易)*時,您已經收到了您的交易部分,無需再擔心任何事情。