比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

理解閃電網絡:構建比特幣的雙向支付通道_ALICE

Author:

Time:1900/1/1 0:00:00

閃電網絡可能是比特幣區塊鏈上最受期待的創新。這種支付方案最早由JosephPoon和TadgeDryja在一年多以前提出,號稱能支持用戶之間在鏈下發送無限次的交易,而且成本極低——還能借用比特幣網絡提供的安全性。

至少有三家公司——Poon和Dryja的Lightning、Blockstream和Blockchain正在開發這種技術的實現。但在技術人員的小圈子之外,很少有人理解“微支付的未來”如何能引爆比特幣的潛能。

在本系列文章里,BitcoinMagazine?嘗試列舉閃電網絡最基礎的磚石,并展示這些東西如何能組合出閃電網絡這種即將到來的協議。

本系列的第一篇文章將列舉必要的模塊并展示這些模塊如何能組合起來創建“智能合約”;這個概念可以用來理解閃電網絡的第一個前提:雙向的支付通道。

模塊#1:未確認的事務

比特幣協議的核心是所謂的“事務”的概念;一般來說,一筆事務總是關聯著另一筆前序事務,并且可以用在未來的事務中。每筆事務都包括?輸入,指向?轉出?比特幣的地址;以及?輸出,指向?收到?比特幣的地址。此外,為了發送比特幣,輸入還必須滿足一些條件,比如要提供數字簽名來證明發送者具有輸入地址的“所有權”。同時,輸出也會確立這些比特幣在日后使用時候的新條件,在?后序事務?發出的時候必須滿足。

Ripple首席法務官:無法理解Gary Gensler將代幣當做證券的行為:7月23日消息,Ripple首席法務官Stuart Alderoty似乎在推特上對美國SEC主席Gary Gensler進行了尖銳批評,將其比作“扁平地球人(Flat-Earther)”,因為他被認為無法理解代幣不是證券。

Alderoty在推特上說:“和一個仍然不明白代幣本身不是證券的人交談,就像向一個認為地球是扁平的人解釋地球是圓的一樣。”[2023/7/24 15:54:01]

閃電網絡的一個關鍵特性是,它是由或多或少的常規比特幣事務組成的。只是,這些事務一般不會在比特幣網絡里傳播。相反,這些事務都是用戶保存在節點本地的——只不過,它們隨時可以放到比特幣網絡中傳播。

譯者注:如圖所示,比特幣就像支票一樣可以拆分,且其流轉會形成清晰的鏈條

模塊#2:杜絕多重支付

閃電網絡所需的第二個模塊可能不需要太多解釋,因為它可以說是比特幣協議本身的存在理由:多重支付的防范措施。如果兩筆事務依賴于同一個輸出,那只有其中一筆才會得到整個網絡的確認。

Parallax Digital CEO:如果有人看好黃金并理解原因 就不可能看空比特幣:金色財經報道,Parallax Digital首席執行官Robert B. Ladd今日發推稱,如果有人看好黃金,并且理解其中原因(相對可比性、耐用性、便攜性、可識別性和稀缺性),那么這個人就不可能看空比特幣,因為它在上述五種貨幣特性中都是絕對優越的。[2020/4/26]

謹記:即使尚未確認的事務之間發生了沖突,最終也只有一筆會得到確認。

模塊#3:多簽名

閃電網絡的第三個模塊也很好理解:多簽名地址。。)

顧名思義,多簽名地址就是需要多個私鑰來“解鎖”、使用比特幣的地址。多簽名地址的條件可以設置得很多樣。比如,可以要求在3把私鑰中要有2把參與,才能轉出比特幣;或者是其它的數量要求。

閃電網絡一般使用2-2的多簽名要求。要從這樣的地址中轉出比特幣需要提供跟這兩把私鑰相關的兩個簽名,少一個都不行。

Brave New Coin推出數字財富管理解決方案BNC Pro:周四,加密貨幣金融數據基礎設施公司BraveNewCoin(BNC)透露,經過18個月的發展,該公司現已推出其數字財富管理解決方案BNCPro。該解決方案的初始版本功能包括四個主要部分:PortfolioManager(投資組合經理)、篩選器工具、新聞提要和Watchlists&Alerts(觀察&警告名單)。[2020/4/23]

模塊#4:時間鎖

第四個模塊是時間鎖。時間鎖功能可以在一個輸出中放置一個鎖定條件,讓這些比特幣僅在未來某個時間之后才能花用。

有兩種類型的時間鎖:1)絕對時間鎖,叫做CheckLockTimeVerify;2)相對時間鎖,CheckSequenceVerify。CLTV會鎖定比特幣直至未來某個具體的具體:一個具體時間和日期,或者一個具體的區塊高度;而CSV只會使用相對時間。當一個CVS輸出上鏈之后,就要等待一定數量的區塊后,這筆輸出才能花用。

模塊#5:哈希值和秘密值

聲音 | 趙東:所謂“操縱”只是個人理解:據 IMEOS 報道。趙東今日在其朋友圈發文稱,之前我發表的關于EOS的言論可能給大家造成一些誤會,所以我刪掉了。Bitfinex的CEO Jean Louis從來沒有“確認”或者\"說過”EOS團隊操縱過市場。所謂“操縱”只是我趙東的個人理解。[2018/7/21]

第五個,也是最后一個模塊——密碼學——也是比特幣本身最基礎的模塊。但在閃電網絡中,用法有所不同。

簡而言之,一個“秘密值”是一個很長而且獨一無二的數字串,是幾乎不可能猜測出來的,一臺電腦暴力運算無數次也猜不出來。而通過特殊的計算,這個秘密值又可以“打散”成一個不同的數,叫做“哈希值”。有趣之處正是這里:知道這個秘密值得人可以很容易地計算出其哈希值,但反之不成立,拿著哈希值你是反推不出那個秘密值的。

在比特幣區塊鏈上,這個機關又可以用在“鎖定比特幣”上。舉個例子,你可以在一個輸出中包含一個哈希值,要求后序的事務只有包含該哈希值對應的秘密值才能花費這筆輸出。

聲音 | 趙余:“彩虹表攻擊”可以簡單理解為“字典攻擊”:EOS LaoMao 的趙余在《寧話區塊鏈》之全球EOS節點答疑的節目中稱 “前兩天發生的’彩虹表攻擊’,是由于有些開發者通過設計的自定義助記詞功能不完善。既沒有過濾空字符串,也沒有強制用戶設置足夠長的助記詞。導致黑客可以通過簡單的窮舉,就能拿到部分賬戶的私鑰。EOS 彩虹表攻擊始末:EOS 官方庫 eosjs-ecc(https://github.com/EOSIO/eosjs-ecc) 提供了一個自定義助記詞生成密鑰的接口。有些開發者使用這個接口,做了一個用戶可以自定義助記詞的密鑰生成工具。但是由于產品設計問題,具體問題是下面兩個:1. 沒有過濾空字符串;2. 沒有強制要求用戶自己填寫的助記詞的長度必須達到足夠安全的長度(比如 12 個獨立的單詞作為助記詞,就可以認為安全性很高了)。導致部分用戶,使用了簡單的字母或單詞作為助記詞生成了自己的私鑰。比如 a, b, c, hello, world 等等。這就導致黑客可以輕而易舉地“窮舉”常見的單詞,字母,以及單詞組合,進而拿到用戶私鑰,最終轉移用戶資產。這個“窮舉”的方法,一般也被稱為“彩虹表”攻擊。對于使用自定義助記詞功能生成私鑰的用戶,建議自查助記詞長度,確保助記詞長度不少于 12 個單詞。”[2018/7/17]

第一個挑戰:雙向的支付通道

在閃電網絡出現之前,就已經有“支付通道”的概念了。標準的支付通道是用于特定用途的,因此也很局限:它們都是單向的通道。Alice可以在鏈下向Bob發起多比支付,但Bob沒法用同一個通道給Alice支付。

而閃電網絡的一個關鍵特性就是,Poon和Dryja提出的免信任的雙向支付通道。

開啟通道

要建立一個雙向的支付通道,參與的雙方都必須首先對一筆開啟通道事務達成共識。這筆開啟事務決定了他們倆各要在這個通道中存入多少比特幣。

假設Alice想給Bob發送1btc。因為他們倆都預期以后會有頻繁往來,他們決定開啟一個雙向的支付通道。

要開啟這個通道,Alice和Bob每人都發送5btc到一個2-2的多簽名地址里。這就是“通道開啟事務”。這個地址里面的錢,只有Alice和Bob簽名同一筆事務才能花用。

此外,Alice和Bot都各自創建一個秘密值,然后交換哈希值。

現在,Alice創建一筆通道開啟事務的后序事務,且這是一筆“承諾事務”。在這筆承諾事務里,Alice把4btc發給她自己,而6btc發送給第二個多簽名地址;這個多簽名地址更有趣:Bob可以獨自解鎖這個地址,但是,要等1-00個區塊之后,Bob才能花里面的錢;Alice也可以獨自打開這個地址,前提是她?也?擁有Bob給她的哈希值所對應的秘密值。

Alice簽名了她的承諾事務。但是她不會把這筆事務廣播出去!相反,她只會把這筆事務發給Bob。

同時,Bob也做剛好對稱的操作。他也創建一筆承諾事務,把6btc發給自己,4btc發給一個新的多簽地址。Alice在等待1000個區塊后就可以獨自解鎖這個地址,或者Bob可以拿Alice的秘密值來解鎖這個地址。

Bob簽名了這筆事務,然后發給了Alice。

交換完了這些承諾事務和哈希值之后,他們再共同簽名并把那筆通道開啟事務廣播出去,使之能夠上鏈。現在,一個雙向的支付通道就開好了。

開啟通道之后,Alice和Bob都可以簽名和廣播他們從地方那里得到的、部分有效的承諾事務。如果Alice廣播了,則Bob會立即得到6btc。如果Bod廣播了,則Alice會立即拿到4btc。但簽名和廣播事務的那個,必須等待1000個區塊才能解鎖那個后序的多簽名地址,把剩余的比特幣拿走。

不過,這就是支付通道的關鍵技巧:不去簽名和廣播他們得到的承諾交易。

更新通道

后來,Bob想給Alice發回1btc,他們想更新這個通道的狀態,使之回到5:5的狀態。要實現這一點,Alice和Bob需要做兩件事。

首先,雙方都要把上面所講的流程再做一遍。這一次,Alice和Bob都把5btc分配給對方,都把5btc分配給那個多簽名地址。這些后續的多簽名地址的條件是類似的,只不過,他們都需要生成?新的?秘密值:Alice和Bob都要提供?新的?哈希值。他們都簽名自己的新承諾事務,并發送給對方。

其次,Alice和Bob都把他們的?第一個?秘密值交給對方。

這時候,Alice和Bob都能簽名和廣播他們最新得到的這筆承諾事務。他們的對手會立即獲得5btc,而廣播這自己則必須等待1000個區塊。就這樣,通道的狀態更新了。

但是,有什么能阻止Bob廣播舊的承諾事務呢?那筆承諾事務會給他分配6btc,比5btc要多……

阻止Bob的,當然就是他的第一個秘密值,也就是他已經給了Alice的那個秘密值。

因為,這時候Bob已經無法隨心所欲地簽名和廣播更老的那筆承諾事務了,因為Alice已經知道了Bob的第一個秘密值。如果Bob要簽名和廣播更老的承諾事務,他會立即把4btc發給Alice……且他自己要等1000個區塊才能申領,但是,Alice已經知道他的秘密值了,所以她可以利用這段時間先發制人,直接把剩下的6btc也提走!

而且,因為Bob也有了Alice的秘密值,所以對Bob來說同樣如此!要是Alice想簽名和廣播舊的承諾事務,Bob就可以偷走她放在通道里所有的btc了!

這就意味著Alice和Bob都要重組的激勵不去耍小手段,只廣播最近的狀態。

好了,有了雙向的支付通道之后,我們要把它拓展成一個支付網絡。這就是我們第二篇的主題。

感謝RustyRussell和JosephPoon的專門反饋。

Tags:ALILICALICEBOBalien幣在哪個交易所alice幣前景My Neighbor Alicebob幣價格

幣安交易所app下載
鄒傳偉:深入解析 AMM 條件流動性邏輯與潛在影響_代幣化

Uniswap?v3在恒定乘積曲線x*y=k的基礎上增加了粒度控制功能)。流動性提供者可以選擇將資金集中在交易最頻繁的區間內,以實現集中流動性和提高資金利用率,而Uniswapv3為流動性提供者.

1900/1/1 0:00:00
為什么USDT 連續七周無增發?_USD

7月26日,比特幣價格快速拉升,直逼40,000美元的心理價位水平,過去12小時上漲13%,幾乎收回了近一個月的跌幅。據推測,或許是下跌后反彈,加上受亞馬遜計劃接受比特幣支付的消息影響.

1900/1/1 0:00:00
Glassnode:如何看待 DeFi 新常態?_DEFI

摘要:隨著DeFi繼續下行,我們提出一個短期看跌但中期看漲的案例。 上周,加密貨幣市場繼續緩慢走低,BTC已經發現自己在30,000美元以下交易,ETH牢牢低于2000美元.

1900/1/1 0:00:00
公開盡調 深度報告:Perpetual Protocol_PERP

海洋協議v2的技術框架圖PerpetualProtocol?是一個建立在以太坊上的去中心化永續合約協議,其V1版本使用虛擬AMM定價的設計,實現了無需做市商提供流動性、也無需做市商作為對手方.

1900/1/1 0:00:00
美國貨幣政策轉向對加密貨幣的影響_OCC

決定市場的核心因素是資金。牛市源于增量資金的不斷流入,存量資金的不斷壯大;熊市則是增量資金的萎靡,存量資金的不斷出逃.

1900/1/1 0:00:00
DeFi周刊 | Uniswap剔除部分代幣 Aave創始人:DeFi前端應轉向IPFS_DEFI

DeFi周刊是金色財經推出的一檔每周DeFi領域的總結欄目,內容涵蓋本周重要的DeFi數據、DeFi項目動態等.

1900/1/1 0:00:00
ads