從零開始學習區塊鏈―閃電網絡區塊鏈
貝殼手表CCT——區塊鏈之閃電網絡
閃電網絡的誕生背景
話說,中本聰在創造比特幣之初,沒有限制區塊大小,最大可達到32MB,由于當時使用的人比較少,為了避免區塊過大造成的算力浪費,中本聰將區塊大小定為1MB。但是隨著比特幣的發展,交易量越來越大,1MB的內存就不夠用了,這樣就造成了交易擁堵,大家排隊等候記賬,而且礦工費也增高了。
類比一下,假我們平時吃早點使用某寶付款,買早點6塊錢,吃早點十分鐘,這時候我們選擇某寶支付,手續費需要10塊錢,支付成功需要半小時,那么我們還會使用這個又慢又貴的某寶嗎?
要解決這個問題需要給比特幣系統升級,但是如何升級,大家爭論不休。其中,兩種方案發出的聲音最強,一個是比特大陸的硬分叉,另一個是Core團隊的軟分叉。其中Core團隊提出的軟分叉,就是在比特幣系統之外架一個閃電網絡。我們今天的主人公,閃電網絡,上場啦!
閃電網絡
上圖是巴比特網站對閃電網絡的介紹。
閃電網絡首次出現于發表于2015年的論文《The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments》中,其主要思路就是引導大量交易在比特幣區塊鏈外進行,比如為兩個人之間的交易建一個交易鏈,記錄他們之間的交易記錄,這些交易記錄并不需要全部記在區塊鏈的賬本上,只需要把交易的最后一筆記入就可以了。尤其是小額高頻的交易,這樣不僅疏通了道路而且降低了交易費用。
閃電網絡是基于微支付通道,創造性的設計出兩種智能合約:RSMC(序列到期可撤銷合約)和HTLC(哈西時間鎖定合約)。其中,RSMC解決了雙向支付、鏈下交易確認問題,HTLC解決了跨點交易、支付通道的問題。
RSMC——鏈下交易確認
Recoverable Sequence Maturity Contract,“可撤銷的順序成熟度合同”。類似于準備金機制,它利用的具體原理比較復雜,我們這里采用舉例子的方法了解一下它的簡化模式。
李雷和韓梅梅是長期有比特幣往來的合作伙伴,當他們采用閃電網絡交易的時候,大致步驟是這樣的。首先,他們之間要建立一個“資金池”,兩個人分別在“資金池”預存一部分比資金,然后兩個人還需要有個賬本,他們之間每發生一筆交易,資金池金額都都會重新配置,同時在賬本上記錄一頁,并且需要雙方簽字才算生效,這時候他們會把上一頁賬單作廢,在生效賬單上繼續生成新賬單。這樣的過程,只需要兩個人確認就可以,快速而且沒有交易費用,當他們想要提現的時候,只需要將最后一頁賬單提交到區塊鏈網絡中就可以了。
在這個過程中,懲罰機制可以保證交易的安全。兩個人中肯定是有一個人拿著賬單去提現的,比如李雷先去提現,這時候系統會將資金先打給韓梅梅(即打給另一方),而李雷需要等1000次確認之后才可以提現,在這段時間內,如果韓梅梅提出李雷提現的賬單不是最新的,李雷的資金就被沒收了。這樣可以確保沒人拿舊賬單提現。
HTLC——跨點支付
Hashed Timelock Contract ,“哈希的帶時鐘的合約”,我們同樣通過一個例子來理解。
上面說到,李雷和韓梅梅之間建立了“資金池”即微支付通道,這時候,李雷和小紅想要交易,但是兩個人之間沒有微支付通道,不過他們兩個都和韓梅梅有支付通道,就可以通過韓梅梅實現跨點交易。比如,李雷需要向小紅支付0.5BTC,這時候李雷的賬戶就會凍結0.5BTC,然后產生一個暗號(哈希值),這個暗號只有李雷和小紅知道。這時候,李雷找到韓梅梅,告訴她,你告訴我那個哈希值,我就將0.5BTC轉給你,但是韓梅梅不知道這個哈希值,所以她找到小紅,轉述同樣的話。于是小紅把哈希值給了韓梅梅,韓梅梅去李雷那里拿到了0.5BTC,然后小紅再用這個哈希值從韓梅梅手里拿到這0.5BTC,這樣李雷和小紅之間的轉賬就實現了。
RSMC 解決了在鏈下兩個人之間的直接交易的問題,HTLC 實現了任意兩個人都可以通過一條“支付”通道進行。這兩個智能合約結合形成的閃電網絡可以實現任意兩個人的線下交易。
1.TMT觀察網遵循行業規范,任何轉載的稿件都會明確標注作者和來源;
2.TMT觀察網的原創文章,請轉載時務必注明文章作者和"來源:TMT觀察網",不尊重原創的行為TMT觀察網或將追究責任;
3.作者投稿可能會經TMT觀察網編輯修改或補充。