當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 區(qū)塊鏈
[導(dǎo)讀] Atomic swap:不經(jīng)由第三方完成的安全可靠的跨區(qū)塊鏈交易 因為加密貨幣交易所不時傳出被駭客攻擊、被凍結(jié)、甚至卷款倒閉的事情,人們開始意識到把錢放在交易所的大金庫其實是不太安全的,

Atomic swap:不經(jīng)由第三方完成的安全可靠的跨區(qū)塊鏈交易

因為加密貨幣交易所不時傳出被駭客攻擊、被凍結(jié)、甚至卷款倒閉的事情,人們開始意識到把錢放在交易所的大金庫其實是不太安全的,也有一些去中心化交易所的方案被提出來,試著在保障使用者資產(chǎn)安全的前提下交易。

然而,這些基于以太坊智慧合約實現(xiàn)的去中心化交易所,都有一個最大的局限,就是它們只能交易Ether本身和存在以太坊主鏈上的token,比起傳統(tǒng)交易所能處理Bitcoin, Ethereum, Monero, Zcash之間的各種幣/幣交易,去中心化交易所的功能顯得陽春許多。

因為區(qū)塊鏈創(chuàng)造的安全交易機制,作用范圍終究只限于同一條鏈上,目前要做跨鏈交易就只能把錢交由第三方保管,完成互換后再發(fā)還給擁有者。所以我們想試著找到一個方法,能夠達(dá)成

只要雙方互相約定,就能安全的達(dá)成跨鏈的資產(chǎn)交易

這乍看之下好像很簡單,就是一手交錢一手交貨嘛。但實際上,我們在日常生活中之所以能實現(xiàn)所謂的付錢取貨,其實仰賴了很多東西,比方說信任,比方說法律,比方說監(jiān)視器和防盜門。而場景一旦換到網(wǎng)路世界,事情就變得沒那么單純。

比方說小時候玩的線上游戲吧,有些人會用點數(shù)卡序號去跟其他玩家換游戲幣,但永遠(yuǎn)都存在一個無解的問題:先給點數(shù)還是先給幣?我怎么知道如果先給了對方會不會直接跑掉?

加密貨幣交易也有同樣的問題,當(dāng)你的交易對手是某個網(wǎng)路上不具名的人,你們要如何相信彼此能完成一筆交易而不被對方騙?或者說,怎么保證只要對方只要拿了我的錢就一定會給我貨?

交易的原子性

所謂的原子性(Atomic) 指的是一筆交易應(yīng)該像原子一樣,被視為最小的,不可再分割(雖然原子好像可以) 的單位。也就是說,我給你錢你給我貨這兩件事情呢,必須要同時發(fā)生,否則就同時不發(fā)生。

為了創(chuàng)造這樣的特性,我們會用上一些區(qū)塊鏈的神奇黑魔法,以Bitcoin來說是雜湊函數(shù)和時間;至于Ethereum的話就是智慧合約。

交易的過程大致上是這樣子的,假設(shè)我和一位匿名網(wǎng)友達(dá)成共識,要用我持有的10 BTC交換他的100 ETH。首先我們需要知道彼此的收付款地址,為了后續(xù)說明方便,這里假設(shè)它們分別是:

BTC_in

BTC_out

ETH_in

ETH_out

再來,為了完成這筆交易,我需要為這筆交易創(chuàng)造一個秘密,具體來說會是一段只有我自己知道的字串,并算出這個秘密的雜湊值。

這里我選用的秘密是:早安我的朋友

接著,我發(fā)送一筆交易,將我的10 BTC從BTC_out轉(zhuǎn)出到一個特殊的暫存位置( P2SH ),并且規(guī)定這筆錢有兩種方式可以轉(zhuǎn)走:一種是如果出示那個可以被Hash變成46f34 …8f4的秘密,就把錢交給BTC_in;另一種是如果錢放了兩個小時還沒被領(lǐng)走,那BTC_out就可以把錢領(lǐng)回去。

對方也要做類似的事情,把100 ETH 從ETH_out 轉(zhuǎn)到暫存的智慧合約,規(guī)定只要ETH_in 向合約出示能變成46f34…8f4 的正確秘密就可以把錢領(lǐng)走,否則一小時后ETH_out 可以把錢拿回去。

等這些設(shè)定都完成了之后,我就可以對合約說「早安我的朋友」,然后把對方的100 ETH 領(lǐng)走,同時因為區(qū)塊鏈資料是公開的,對方看得到我用來領(lǐng)錢的秘密,當(dāng)然也就來把我的10 BTC 拿走,交易就算順利完成啦。

這里有兩個值得注意的小細(xì)節(jié),第一個是領(lǐng)錢的規(guī)則,并不是任何知道秘密的人都可以領(lǐng),要是指定的交易對手說出秘密才可以。這是因為區(qū)塊鏈上的資訊人人可見,所以當(dāng)我在廣播交易的同時,所有人都會看到早安我的朋友,甚至有可能搶先在我的交易被確認(rèn)之前,用同個秘密去把錢偷走,所以不能只認(rèn)秘密,要同時限制收款人才行。

第二個是兩人的提款時限是不一樣的,因為即便雙方都用同一組雜湊,一開始卻只有我單方面知道秘密,所以當(dāng)前面的設(shè)置完成之后,什么時候執(zhí)行交易的主動權(quán)握在我手上。若是兩邊的時限一樣,我就可以在到期前不久打出領(lǐng)ETH 的指令,并趁對方來得及反應(yīng)之前把本來的BTC 抽走。所以通常對方會把時限訂得比擁有秘密的人設(shè)定的時限再早一點,確保就算被壓死線也還有足夠的時間拿到應(yīng)得的錢。

所以說,整個換手的過程,就是我選了一支密碼學(xué)鑰匙,并構(gòu)造了一個可以被這支鑰匙解開的鎖。基于神奇的數(shù)學(xué)魔法,鎖是沒辦法回推鑰匙的形狀的。所以我安心的把自己的錢鎖起來,并給對方一個一模一樣的鎖,對方也安心的把他的錢用這個鎖給鎖起來,因為他知道,只要我亮出鑰匙來取他的錢,他絕對可以用同一把鑰匙拿走我的錢。

不同區(qū)塊鏈上的兩筆交易,用同一個雜湊鎖,產(chǎn)生了關(guān)聯(lián)

于是跨鏈交易的原子性就得到了保證,只有可能兩邊都給對方錢,否則就是兩邊都取回本來的錢,(理論上) 絕對不會有某一方拿了就跑的情況。而且更重要的是,這整個過程完全沒有第三方介入,雖然也需要把錢暫時鎖定,但這和放進(jìn)交易所的大金庫有著根本的不同。藉由區(qū)塊鏈本身的鎖定機制,錢的控制權(quán)還是在擁有者手上,不會沒事就被盜。

拒絕付款攻擊

原子互換保證了兩個相依的交易會同時發(fā)生或同時不發(fā)生,卻不保證交易會發(fā)生,所以它仍然存在著一些待解的問題。這和第三方托管的場外交易有點類似,因為交易從設(shè)置到完成并不是及時的,所以我們一定要為彼此保留一個緩沖的時間,讓付款流程可以被完成,但這個時間差有被利用的可能。

因為設(shè)置好的交易不見得會被執(zhí)行,對于有心人來說,這就成了絕佳的套利機會。我可以找人假意提出交易,待對手鎖定資產(chǎn)之后,自己不急著按下同意付款的按鈕,而是好整以暇的盯盤,一旦發(fā)現(xiàn)市場上的匯率出現(xiàn)波動,就立刻完成交易,并同時在另一邊以市價對沖,套取中間的價差。而如果時間到還沒有出現(xiàn)套利的機會,就拒絕付款,再找人發(fā)起交易,重復(fù)攻擊。

以BTC:ETH = 1:10,鎖定時間2小時/1小時為例,攻擊者有1 小時的機會可以故意拖延。如果是雙方都鎖定,在這段時間內(nèi)匯率變成1:9,本來的BTC 方可以零風(fēng)險套走10% 利潤。

我們假設(shè)有交易的意思表示就代表對當(dāng)前的匯率滿意,也就是被攻擊的人心胸寬大不計較中間的匯差,這仍然會造成些許損失。首先是機會成本,盡管當(dāng)事人給了一段緩沖期,但他本來不預(yù)期會被鎖定到最后一刻,這段時間如果有更好的交易機會出現(xiàn),這筆錢也沒辦法參與,潛在的獲利即是損失。

再來是區(qū)塊鏈的使用成本,雖然交易前的設(shè)置階段還沒有真的轉(zhuǎn)帳,但是對于處理它的礦工而言,這仍然是一筆交易,也要收取一定數(shù)量的手續(xù)費,所以如果對方根本沒有誠意跟你做交易,其實這手續(xù)費就是白花了。

面對這些潛在的道德危機,完全去中心化的原子互換技術(shù)上還無法克服,在人人自危的情況下,愿意和陌生人使用這種交易方式的人勢必很少。固然有些變通方法,比方說縮短鎖定期,但伴隨而來的卻是不方便和失竊風(fēng)險。至于其他的解決方案,比方說建立外源的評價系統(tǒng),或者用支付通道之類的第二層架構(gòu),則又會帶來程度不一的中心化。這可能也算是某種易用性與安全性與去中心化的三難吧。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉