閃電網路(一) 多重簽名交易

2021-08-22 19:35:14 字數 1494 閱讀 7367

位元幣的轉賬慢一直是乙個令人詬病的問題。正常情況下,一筆轉賬需要6個區塊的確認,也就是大概60分鐘。但這還只是在正常情況下,如果遇上交易擁堵,要等待的時間也許超過幾天。

本身的慢加擁堵,大大降低了位元幣的可用性。之前我們講過的大區塊擴容和隔離見證,對擁堵有一定療效,但治標不治本。而閃電網路,才是真正解決位元幣慢和擁堵的特效藥。

我們今天先學習閃電網路的預備知識:多重簽名交易。

雖然我們之前花大篇幅對位元幣的交易原理進行了介紹,但其實只講了最普遍的那一種交易型別,而位元幣的交易型別一共有5種:p2pkh、p2pk、ms、p2sh、op_return。其中:

p2pkh(pay-to-public-key-hash)就是我們前面詳細介紹的型別;

p2pk(pay-to-public-key)是p2pkh的簡化,鎖定指令碼只有乙個公鑰,解鎖指令碼只有乙個簽名;

op_return在0704那篇講元幣的文章有提到過,它類似於以太坊用於合約佈署的交易;

ms(multiple signatures)和p2sh(pay-to-script-hash)則是多重簽名交易,後者是前者的簡化版本。

當然,如果再加上隔離見證的話,這些又都有乙個隔離見證版本的交易型別。

我們知道,一筆普通的交易由a轉給b,a用自己的私鑰簽名就可以。但多重簽名交易不同,一筆交易需要多方簽名才能生效。

根據參與方和需簽名數的不同,多重簽名交易可以分成很多種型別,比如:2-of-2多重簽名交易,是指有2個參與方,且雙方同時簽名才有效;2-of-3多重簽名交易,是指有3個參與方,且只需3方中的任意兩方簽名,交易便有效。

能夠進行多重簽名交易的位址叫多重簽名位址,多重簽名位址與普通位址不同,普通的位元幣位址通常是「1」開頭,而多重簽名位址是「3」開頭(用於隔離見證交易的位址也是「3」開頭)。

但是,多重簽名位址就是通過普通位址生成的,比如,2-of-3多重簽名位址,就是通過參與三方的公鑰位址,根據一定演算法生成的,而且生成時要設定好「參與方(3)」和「需簽名數(2)」兩個引數。

從多重簽名位址的生成方式來看,它沒有對應的私鑰,這是與普通位址相比的乙個很大的不同。從這一點來看,是不是非常類似於以太坊裡的合約位址?

好,假如現在由a、b、c三個普通位址構造了乙個2-3(2-of-3)的多重簽名位址,用於收發位元幣。首先,如果這個多重簽名位址是做為交易的目的位址,也就是做為位元幣的接收方來說的話,跟普通位址是沒區別的。

但是,當它做為發起方,要發起一筆交易時,會有些不同,比如a和b要發起一筆交易,從這個多重簽名位址轉位元幣給另乙個位址h(h是普通位址還是多重簽名位址都沒關係,對於發起方來說無區別)。

首先,這筆交易的解鎖指令碼與普通交易不同,它會將a、b、c三個位址的公鑰寫進去,同時將參與方「3」和需簽名數「2」也寫進去。同時,解鎖指令碼裡的數字簽名是這麼來的:1、構造交易;2、a(或b)用自己的私鑰先對整個交易簽名,然後將簽名填入交易;3、b(或a)用自己的私鑰再對第2步生成的交易進行簽名。

交易廣播後,其他節點首先會檢查這個位址是什麼型別的多重簽名位址,然後再用解鎖指令碼裡的那些公鑰對這筆交易進行驗證,如果能滿足2-of-3這個條件,交易便算通過。

6 5 閃電網路

位元幣的交易網路最為人詬病的一點便是交易效能 全網每秒7筆左右的交易速度,遠低於傳統的金融交易系統 同時,等待6個塊的可信確認將導致約1個小時的最終確認時間。為了提公升效能,社群提出了閃電網路等創新的設計。閃電網路的主要思路十分簡單 將大量交易放到位元幣區塊鏈之外進行,只把關鍵環節放到鏈上進行確認。...

漫談閃電網路

更多寫作與參考學習材料等可登入zg文庫網 最近看了閃電網路的 和文章,又有了一些更清晰的理解,所以想分享下。主要從技術理解 落地實現 對位元幣的影響 ckb上實現閃電網路的優勢四方面來闡述。從技術上來講,閃電網路是解決位元幣的可擴充套件性 小額支付的一種狀態通道方案,這裡著重介紹下以下幾點 從現狀來...

閃電網路是什麼?

在幣圈,我們常常聽到閃電網路的概念,閃電網路到底是什麼?是一種網路結構還是一種什麼技術?和位元幣到底有什麼關係?本文我們就一起來扒一扒這個閃電網路吧。位元幣的區塊鏈機制自身提供了很好的可信保障,但是很慢,全網每秒 7 筆的交易速度,遠低於傳統的金融交易系統 而且等待 6 個塊的可信確認導致約 1 個...