本文作者宋淨超(Jimmy Song),螞蟻金服雲原生布道師和 CNCF Ambassador。ServiceMesher 社區聯合創始人。翻譯了多本雲原生編程書籍,並參與了一些技術圖書的寫作。在本文中,他將帶大家理解跨鏈中的原子互換技術。
原文標題:《Jimmy Song 爲你解答什麼是原子互換》
作者:Jimmy Song
宋淨超,Jimmy Song,比特幣傳道者、開發者、企業家
原子互換
Decred 和萊特幣在幾天前完成了所謂的跨鏈原子互換。他們爲此也發佈了一篇博文,創建了一個實用 GitHub repo,並在相關頻道 World Crypto Network 中談論了這件事。
我將在本文中解釋原子互換是什麼,怎麼影響比特幣以及我們可以預期的未來。
信任問題
要理解什麼是原子互換,必須首先理解一個交易中固有的問題。假設 Alice 想要發送一些東西給 Bob,比如可回收的 Pez 分配器。進一步假設,Alice 和 Bob 離的很遠,因此他們想要面對面交易是很困難的,而且他們互不相識,因此很難做到互相信任。那麼 Alice 和 Bob 怎麼進行這次交易呢?
如果 Alice 先轉賬給 Bob,Bob 可能不會輕易發送分配器給 Alice,因爲他已經拿到錢了。從另一個方面來說,如果 Bob 先發分配器給 Alice,Alice 可能也不會輕易地把錢轉給 Bob,因爲她已經拿到了這個分配器。
Alice 先轉賬給 Bob,Bob 就是交易主導方,而 Bob 先把分配器發給 Alice,Alice 就是交易主導方。理想情況下,我們希望雙方交易可以同步進行,但不幸的是,這很難做到。
解決方案
解決此信任問題有幾種方法。首先,Alice 和 Bob 可以直接在一個安全的地方見面並交易,但是他們必須要親自到同一個地點,可能對 Alice 或 Bob 來說成本會比較昂貴,但是它解決了信任問題。許多沉船都有寶藏的原因也恰恰是這個,商船必須帶着貨物抵達約定好的地點去解決信任問題。
考慮到交易貨物是 Pez 分配器,離得這麼遠還要約定地點交易,對 Alice 和 Bob 來說可能並不划算。還有其它解決的方法嗎?
另一個解決方式就是 Alice 和 Bob 找一個他們共同信任的人,也就是所謂的第三方中介或託管機構。第三方可以收到錢和 Pez 分配器再分發給交易雙方。當 Alice 和 Bob 有互相滿意的託管機構時,這個辦法是可行的。但如果他們沒有遇到好的託管機構時怎麼辦?一個選擇不當的託管機構可能會竊取欺騙一方或雙方。一個不錯的託管機構成本也會很昂貴。
前兩種情況基本就是人們創建比特幣時試圖想做的。比特幣的許多應用本質上是直接交易。另一些利用則是交易所,而交易所本質上是一箇中介或可信任的第三方。
至少當交易涉及到一些實物,如果沒有可信賴的第三方時,交易雙方都無法做到互相信賴。也就是說,Bob 將 Pez 分配器發送給 Alice,Alice 再付款這種做法是不可行的,反之亦然。這是實物交易的不幸現實。
數字轉移
數字轉移的不同之處在於,我們可以讓貿易雙方相互信賴。也就是說 Alice 可以等 Bob 發回收器給她,她再把錢轉給 Bob。我們可以創建一個可編程邏輯,僅交易一方無法實現。也就是說,要麼 Alice 和 Bob 都可以得到,要麼誰也得不到。
這就是我們所說的原子互換,但這並不是兩個獨立的轉移,而是同時執行交換的單次轉移。
Decred 開發者是怎麼做的呢?
Decred 開發者創建了一個智能合約,使用 SCRIPT 允許 DCR 和 LTC 進行原子互換。另外,因爲 SCRIPT 也是一個 BTC 的智能合約語言,原子互換也可以發生在 DCR/LTC/BTC。而且,像 BCH 和 VTC 也有 SCRIPT 功能,因此也會有原子互換功能。然而,像門羅就不具備原子互換所需功能,因此,這種功能並不能通用。
注意,這是一個鏈上原子互換。也就是說,它並不會依賴閃電網絡或隔離見證,僅僅是 SCRIPT。
這要如何做到呢?
假設 Alice 和 Bob 交易 alpha 幣和 beta 幣。Alice 製作了一個數字鎖盒並把鎖的規格告訴 Bob。她把 alpha 幣放進鎖盒,這個鎖箱需要鎖的鑰匙和 Bob 的簽名。Bob 也創建一個放了 beta 幣的相似鎖盒,鎖的規格與 Alice 的相同。Bob 的鎖箱也需要相同的鑰匙(因爲是相同的鎖)和 Alice 的簽名。
兩個鎖盒都分別需要對方的簽名,因此,Alice 只能打開 Bob 的箱子,Bob 只能打開 Alice 的箱子。
當 Alice 打開 Bob 的鎖盒時,她的開鎖鑰匙會顯示在 beta 幣的區塊鏈上。Bob 可以使用 Alice 剛剛顯示的鑰匙來打開 Alice 構造的鎖盒,得到他的 alpha 幣。
這是因爲打開一個鎖盒可以有效地讓另一方打開另一個鎖盒。因爲每個鎖盒都需要鑰匙和簽名,所以這兩個鎖盒本質上是安全的。
如果出現問題或一方中途退出,在 48 小時和 24 小時內沒有人打開鎖盒,那麼鎖盒就會將將 alpha 幣和 beta 幣分別退還給 Alice 和 Bob。
這與閃電網絡的跨鏈原子交換有何不同?
與鏈上版本相比,閃電網絡的跨鏈原子交換(我們稱之爲鏈下原子交換)有其優缺點。首先其優點是,閃電網絡上的鏈下互換是即時的,而不用在各自鏈上排隊等待打包區塊。但其缺點是,鏈下互換需要將資金放到閃電網絡上。也就是說,在閃電網絡通道關閉之前,閃電網絡通道中的任何資金都只能在閃電網絡上使用。
通常閃電網絡的交易成本更低,方便於較小型交易,並且具有更好的隱私屬性,但是需要鏈下簽名的較大型交易還是使用鏈上原子互換更爲靠譜。
鏈上原子互換的用途
任何大型鏈下交易都可以利用鏈上原子互換。如果 Alice 和 Bob 想要交易大量 BTC 和 LTC,鏈上互換就是一個不錯的選擇,因爲它無需信任第三方。
其他可能的用途就是去信任交易。用戶能夠保管自己的資金並自動交換其他幣,而不是將幣存放在交易所裏。這消除了數字資產託管方面存在的大量漏洞和攻擊面。
但是,鏈上原子互換減少了隱私性,因爲任意兩條鏈上的支付通道都是相通的。
結論
原子互換是一項非常有趣的創新,可能會改變加密貨幣的格局。與 tumblebit 或 joinmarket 不同,你可以使用具有隱私功能的次要代幣來隱匿自己的交易。這可能會使比特幣更具可替代性,即使比特幣本身沒有這個功能!
將來我們可能會看到,比特幣仍然作爲價值儲存和賬戶單位,而其他幣則可作爲交換媒介。
文章來源:頭等倉,是一家專業從事國內外區塊鏈項目信息收集,項目分析,項目進展跟蹤的信息資訊服務公司,面向國內外的區塊鏈投資者,提供區塊鏈項目的盡職調查與分析服務。
來源鏈接:first.vip