哈希時間鎖,將條件交易由點成面

上一篇解讀到閃電網(wǎng)絡(luò)白皮書中可撤銷的順序成熟度合同RSMC速种,哈希時間鎖合約(Hashed-Time Lock Contract姜盈,簡稱HTLC)是在此基礎(chǔ)上進一步延伸,引入哈希密碼和時間鎖概念哟旗,讓單個支付通道相互連接形成網(wǎng)絡(luò)贩据,最終形成覆蓋全球的支付網(wǎng)絡(luò)。具體操作就是發(fā)起交易時闸餐,雙方約定轉(zhuǎn)賬方先凍結(jié)一筆錢饱亮,并提供了一個哈希值,如果在一定時間內(nèi)有人能提出一個密文舍沙,并且哈希后的值與已知的哈希匹配近上,則這筆錢就轉(zhuǎn)給接收方。

RSMC只支持最簡單的無條件資金支付拂铡,HTLC進一步實現(xiàn)了有條件的資金支付壹无,通道余額的分配方式也因此變得更為復(fù)雜。

它有兩個條件
Hash lock:給你一個哈希值H(R)感帅,當(dāng)你給出它的原像R時斗锭,你就可以花這筆錢。
Time lock:在某個時間點之前提供原像R才是有效失球,超出時間后交易失效岖是。

舉個栗子,Alice和Bob分別拿出0.5個BTC实苞,建立一個通道FT(資金交易)豺撑,相當(dāng)于資金池。根據(jù)RSMC原理黔牵,生成承諾交易CT:C2a和C2b聪轿。圖示所反映的通道余額劃分是: 有0.9 BTC以無條件余額劃分的形式在Alice和Bob之間分割,Alice占0.4 BTC猾浦,Bob占0.5 BTC陆错。Alice向Bob有條件支付0.1 BTC,如果Bob能于3天內(nèi)(實際是以區(qū)塊鏈高度代表的未來某時)之前提供合適的R金赦,Bob就能得到這筆錢危号,反之這筆錢仍然回到Alice賬上。

備注:其中“> 3 days”是利用lock time字段的最新擴展實現(xiàn)的素邪。與“seq=1000”的區(qū)別在于外莲,lock time指定的是一個高度絕對值,而sequence指定的是相對父交易所在區(qū)塊高度的相對值。

HTLC案例示范圖

交易并非總是一帆風(fēng)順 偷线,超時退款時有發(fā)生磨确。如果Bob未能在3天內(nèi)及時提交R,Alice可以通過用自己的私鑰準(zhǔn)備各交易的輸入解鎖腳本并發(fā)布交易到區(qū)塊鏈上声邦,最終取回這0.1 BTC乏奥。在此方式下,最終Alice拿到0.5 BTC亥曹,Bob拿到0.5 BTC邓了。也可采用新建版本余額的方式,無需終止通道媳瞪。

若需要作廢舊合約骗炉,建立新合約,那HLTC有該如何操作蛇受?這部分句葵,同RSMC,也需要建立違規(guī)補償交易(breach remedy transaction)兢仰。若Alice將舊交易C2a和HT1a在區(qū)塊鏈上公開乍丈,由于seq字段的限制,Alice不能立刻公開交易RD2a和HTRD1a把将,這樣就使得Bob有機會發(fā)現(xiàn)Alice企圖作惡并能夠通過公布交易BR2a和HTBR1a的方式予以懲戒轻专。發(fā)出這對交易后,通道中的全部資金將都歸Bob所有察蹲。下圖中BR2a铭若、HBR1a、HTBR1a就是違規(guī)補償交易递览。

違規(guī)補償交易示意圖

以上就是哈希時間鎖在RSMC的基礎(chǔ)上實現(xiàn)了條件交易,技術(shù)點在于哈希密碼瞳腌,這類似玩一個猜謎游戲绞铃,知道謎底方可解鎖。問題來了嫂侍,這樣的點對點交易又是如何連成網(wǎng)絡(luò)儿捧?時間鎖的作用在哪?

舉個栗子挑宠,Alice除了和Bob之間有交易需求菲盾,和Carol之間也需要產(chǎn)生交易,怎么辦各淀?一種辦法懒鉴,當(dāng)然是Alice和Carol之間建立一個雙向通道。還有一個辦法是,Alice和Bob之間已經(jīng)現(xiàn)成有一個雙向通道临谱,Bob和Carol之間也已經(jīng)現(xiàn)成有一個雙向通道璃俗。那么交易可以通過Bob來實現(xiàn)。

假設(shè)Alice需要付給Carol 1個BTC悉默,由最終的收款方Carol創(chuàng)建一個原像R和對應(yīng)的哈希值值H(R)城豁,然后把H(R)給了Alice。Alice就和Bob之間達成了一個合約:如果Bob在3天內(nèi)(Lock time=3 day)抄课,提供H(R)對應(yīng)的密鑰R唱星,Alice就給Bob 1.001 BTC,超過3天跟磨,BTC原路返回給Alice间聊。

很顯然,密鑰R只有Carol有吱晒,Bob沒有甸饱。那Bob怎么辦呢?

Bob和Carol達成一個合約:如果Carol在2天內(nèi)(Lock time=2 day)仑濒,提供H(R)對應(yīng)的密鑰R叹话,Bob 就給Carol 1 BTC,超過2天墩瞳,BTC原路返回給Bob驼壶。兩天內(nèi),Carol向Bob提供了秘鑰R喉酌,獲得了1 BTC热凹。Bob向Alice提供了秘鑰R,獲得了1.001 BTC泪电。

最終結(jié)果就是:Alice支付了1.001 BTC般妙,Carol收到1 BTC,而中間方Bob收到0.001BTC的手續(xù)費相速。

由此延伸碟渺,若Alice和Eric之前想進行交易,但沒有支付通道突诬。Alice和Bob之間苫拍,Bob和Carol之間、Carol和Diana之間旺隙、Diana和Eric之間绒极,已經(jīng)有了支付通道,那把這些通道串聯(lián)起來蔬捷,就相當(dāng)于建立了Alice和Eric之間的支付通道垄提。


多方支付通道示意圖

交易流程就是:最終的收款方Eric構(gòu)建了一個秘鑰R和對應(yīng)的哈希值值H(R),然后把H(R)給了Alice。Alice和Bob之間塔淤,Bob和Carol之間摘昌、Carol和Diana之間、Diana和Eric之間分別創(chuàng)建一個時效性遞減的條件交易合約高蜂。Eric把R給Diana聪黎,拿到1.0 BTC, Diana把R給Carol备恤,拿到1.001BTC......密鑰R一直傳遞稿饰,最終到達Alice。最終結(jié)果就是:Alice支付了1.003 BTC露泊,Eric收到1 BTC喉镰,每個中間方,收到0.001BTC 的手續(xù)費惭笑。這樣眾多的支付通道相連就形成一個巨大的支付交易網(wǎng)絡(luò)侣姆。

上面的交易過程,核心就是“一方用密鑰R向另一方換錢沉噩,超過時間沒有換捺宗,錢自動回到打款人的賬號”,這個過程就是所謂的哈希時間鎖HTLC(Hashed Time Lock Contract)川蒙。HTLC本身想法不復(fù)雜蚜厉,需要和RSMC緊密結(jié)合,才能形成一個完善的畜眨、具有多個中間節(jié)點的支付通道昼牛。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市康聂,隨后出現(xiàn)的幾起案子贰健,更是在濱河造成了極大的恐慌,老刑警劉巖恬汁,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件伶椿,死亡現(xiàn)場離奇詭異,居然都是意外死亡蕊连,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進店門游昼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來甘苍,“玉大人,你說我怎么就攤上這事烘豌≡赝ィ” “怎么了?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵,是天一觀的道長囚聚。 經(jīng)常有香客問我靖榕,道長,這世上最難降的妖魔是什么顽铸? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任茁计,我火速辦了婚禮,結(jié)果婚禮上谓松,老公的妹妹穿的比我還像新娘星压。我一直安慰自己,他們只是感情好鬼譬,可當(dāng)我...
    茶點故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布娜膘。 她就那樣靜靜地躺著,像睡著了一般优质。 火紅的嫁衣襯著肌膚如雪竣贪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天巩螃,我揣著相機與錄音演怎,去河邊找鬼。 笑死牺六,一個胖子當(dāng)著我的面吹牛颤枪,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播淑际,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼畏纲,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了春缕?” 一聲冷哼從身側(cè)響起盗胀,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎锄贼,沒想到半個月后票灰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡宅荤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年屑迂,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冯键。...
    茶點故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡惹盼,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出惫确,到底是詐尸還是另有隱情手报,我是刑警寧澤蚯舱,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站掩蛤,受9級特大地震影響枉昏,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜揍鸟,卻給世界環(huán)境...
    茶點故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一兄裂、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蜈亩,春花似錦懦窘、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至道川,卻和暖如春午衰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背冒萄。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工臊岸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人尊流。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓帅戒,卻偏偏與公主長得像,于是被迫代替她去往敵國和親崖技。 傳聞我的和親對象是個殘疾皇子逻住,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容