以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > XRP > Info

火線視點:為什么Schnorr簽名被譽為比特幣Segwit后的最大技術更新_SCH

Author:

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

轉自:火幣研究院本報告由火幣區塊鏈研究院出品??報告發布時間2020年10月30日??作者:袁煜明、馬天元、趙文琦、陳樂

摘要:

10月15日,比特幣核心開發者PieterWuille主導的3個提案(BIP340-342)的代碼正式合入比特幣代碼的主分支。三個提案分別包含了Schnorr,Taproot和Tapscript的內容。社區評價這次變更為隔離見證之后比特幣上最大的技術更新。

Schnorr簽名主要的目標是取代目前比特幣現行的ECDSA簽名。相比于比特幣區塊鏈目前采用的ECDSA,Schnorr具有一些優勢:

簽名安全性高,其安全性可被數學證明,并具有不可延展性;

簽名可為多重簽名的參與方提供隱私保護;

簽名的線性特征,可作為Taproot等技術的基礎,進一步加強交易的隱私性;

簽名長度更短,且可聚合多簽,能節省存儲空間,實現變相比特幣擴容;

簽名可批量驗證,從而提高驗證效率;

不過,它也有一些不足之處,在于:

用戶在使用前需要多輪交互;

簽名會消耗一些額外帶寬和計算資源;

簽名對隨機數的隨機性要求非常高。

作為一項可能會替代橢圓加密算法ECDSA簽名機制的技術更新,Schnorr簽名是比特幣底層技術開發的重要里程碑之一。此次代碼加入后,意味著這項技術已經基本成型,接下來需要等待社區確定軟分叉的正式激活時間,不過此時間點目前尚未有定論。

1.背景介紹

Schnorr簽名機制最初由德國密碼學家、數學家Claus-PeterSchnorr發明,Schnorr數字簽名也因他的名字而命名。Schnorr的安全性基于特定的離散對數問題,長期以安全性和簡單性而聞名。但是Schnorr為他的簽名注冊了專利,因此,這項技術雖好,但是很長一段時間內,一些應用無法直接使用它。

金融科技公司Valor與Bitcoin Suisse合作擬在瑞士市場推出數字資產ETP:7月19日消息,金融科技公司Valor宣布已與加密技術公司Bitcoin Suisse達成合作,擬在瑞士市場推出1:1支持的數字資產交易所交易產(ETP)。Valor已于6月15日推出了首個實物數字資產支持的ETP 1Valor Bitcoin Physical Carbon,該產品相應的數字資產均存儲在受監管的托管服務提供商。[2023/7/19 11:03:46]

直到2008年時,Schnorr簽名的專利才過期。同時,業界也沒有廣泛接受的具體實現方案,所以在同年發布比特幣白皮書的中本聰,在當時并沒有選擇Schnorr簽名方案,而是選擇了當時更為成熟的ECDSA簽名方案。隨著Schnorr技術專利的過期,這項技術逐漸落地,在比特幣社區PieterWuille等核心開發者的推動下,社區內開始認真考慮應用Schnorr簽名替代現行的ECDSA簽名,并以軟分叉的方式進行升級。

在2018年7月,比特幣核心開發者PieterWuille就提議了升級Schnorr的BIP,隨后Blockstream和開源社區亦參與了相關開發工作。在比特幣正式采用之前,比特幣的分叉幣BCH中已通過硬分叉提前部署了Schnorr。即在2019年5月,BCH就已經將簽名方案升級為了Schnorr簽名。之所以它會被更早激活,主要是因為它是通過硬分叉完成的升級,而比特幣不能采用硬分叉的方案,需要更為精巧設計的軟分叉方案。后來,PieterWuille又進一步提出了Taproot/Schnorr軟分叉升級提案,并于今年1月被正式發布,即本文提到的BIP340-342。而此次,Schnorr的升級提案已正式被合并入代碼庫。一起被合并進Bitcoin主干的三個提案分別是BIP340:SchnorrSignaturesforsecp256k1、BIP341:Taproot:SegWitversion1spendingrules、BIP342:ValidationofTaprootScripts。其中,第一個提案就是Schnorr簽名的主提案。Taproot是默克爾樹式的抽象語法樹升級,它與Schnorr簽名一起,將允許比特幣以隱私方式執行更多的智能合約腳本;而最后一個提案是在比特幣上對前兩個提案的補充,主要對原本的比特幣腳本進行了升級,以支持Schnorr簽名、批量驗證以及簽名哈希等。不過值得注意的是,Schnorr算法目前仍然沒有被業界標準化,此次BIP340的提案采用的Schnorr仍然是基于比特幣量身定做開發的。

英國央行和財政部邀請公眾參與制定數字英鎊計劃:2月7日消息,英國監管機構周一表示,英國央行英格蘭銀行正在開始進一步研究和開發用于購買商品和服務的數字英鎊,中央銀行和該國財政部希望公眾參與其數字版英鎊計劃,并將于周二發布公開征求意見的咨詢意見。

據知情人士透露,英格蘭銀行計劃在未來兩年內進行自己的實驗和設計階段,隨后將決定是否建立數字英鎊。其中央銀行數字貨幣的試點測試至少要到 2025 年才會開始。(CoinDesk)[2023/2/7 11:51:25]

2.Schnorr簽名與BIP提案

2.1Schnorr簽名到底是什么?

Schnorr本質是一種密碼學簽名技術,我們可以簡單理解為,在比特幣系統中,Schnorr將是ECDSA的替代升級方案。ECDSA的全稱是橢圓曲線數字簽名算法。它在比特幣中的作用我們的并不陌生,我們在比特幣網絡中的每一次簽名都用到了ECDSA技術。比如說,Alice想發送一筆交易,必須要讓礦工確認只有Alice擁有私鑰,擁有這筆資產的處置權。因此Alice需要用ECDSA前去生成一個獨一無二且無法被修改的簽名,以證明Alice擁有私鑰,同時確認交易部分的具體金額。而等到Schnorr正式激活后,這項工作將由Schnorr接替。本過程見圖2.

2.2為什么我們需要更換簽名方案?

在過去的10年時間內,ECDSA運作情況良好,看起來能夠勝任這份生成簽名的關鍵性工作。但是有一個問題一直縈繞著ECDSA,即目前業界暫時沒有能夠給出一個嚴謹的數學和密碼學證明,來證明ECDSA是數學安全的。與之形成對比的是,Schnorr可以。在滿足一定條件的狀態下,Schnorr簽名技術被證明在數學上是安全的。對于比特幣這樣高度依賴安全性的加密貨幣來說,能夠證明安全性的技術肯定要比實踐中暫未出現問題的技術更讓人放心。同時,對于比特幣來說,更重要的是Schnorr簽名具備“線性”的特征,該特征允許將多個用戶的公鑰通過線性計算聚合成一個公鑰,并能生成與之對應的聚合簽名。為什么說“線性”的特性對于當前的比特幣來說十分重要呢?ECDSA本身是不支持多重簽名的,比特幣現在是通過P2SH腳本來處理,但是P2SH類的腳本會向網絡暴露多簽交易的存在并揭示所有的簽名者。使用Schnorr簽名可以將多簽聚合為一個簽名,增強交易的隱私性,并節省解鎖腳本內因多簽帶來的空間占用,節約寶貴的鏈上空間,實現變相擴容。整體而言,如果得到廣泛普及,有可能能夠帶來比特幣性能5%~20%左右提升。此外,由于簽名被聚合成一個,在驗簽的時候也只需要進行一次驗證,這會降低計算的成本。這部分的技術細節我們將在下一章詳細講述。Schnorr簽名對于比特幣來說意義重大,還在于它能成為Taproot這類的技術基石。Taproot也是此次第二個提案BIP341的內容,Taproot源自于MAST(MerkelizedAbstractSyntaxTree),它可以用基于默克爾樹的形式來表達復雜腳本。我們知道,默克爾樹的重要特性之一,就在于其可以在不揭示無關分支的真實數據的情況下,快速驗證某個節點值的存在性,因此被廣泛用于存儲區塊鏈中的交易、狀態數據等。基于這一特性的Taproot,可以在不揭示腳本中未被使用到的分支條件情況下,完成腳本的運行。而對比來看,P2SH則需要揭示出所有的腳本內容。結合Schnorr簽名的技術,Taproot甚至可以實現讓一個有復雜腳本的交易(包括閃電網絡的交易、多簽交易、多判斷分支的交易等)看起來就像一個普通的P2PKH的交易。支持復雜腳本,保護腳本隱私,不暴露簽名者,讓一個有復雜判斷條件的交易看起來像普通交易一樣簡單,并且無法從形式上進行區分,這就是Taproot與Schnorr結合的效果。

美檢方調查與FTX前CEO SBF有關的欺詐案:12月10日消息,據知情人士透露,美國檢方正在詳細調查加密貨幣巨頭FTX 11月11日在特拉華州申請破產時,該交易所運營商持有的資金是如何轉移到美國境外的,是否有數億美元違規轉移到巴哈馬。目前,檢方正在為針對SBF等人的潛在欺詐案做準備。(金十)[2022/12/10 21:35:27]

2.3Schnorr會以什么樣形式進行?

和此前眾多的BIP類似,此次Schnorr以軟分叉的方式進行。BIP的全稱是比特幣改進提案,通常來說,它包括對比特幣底層區塊鏈技術更新、新特性引入和信息補充等。自2009年中本聰發布第一版比特幣區塊鏈客戶端之后,大多數技術更新都以BIP形式被添加到比特幣技術中。目前,比特幣社區已采納百余個BIP提案,比如:隔離見證、P2SH多簽結構和助記詞等。硬分叉和軟分叉的區別大家可能并不陌生,在硬分叉中,社區由于對某些特性和技術出現強烈分歧時,會導致主鏈分成兩條鏈,且新老兩類客戶端相互不兼容,例如BTC和BCH,BCH和BSV等。而一次軟分叉升級中,如Segwit升級等,雖然社區可能會有分歧產生,但它仍能保持一條鏈,新老兩類客戶端能夠在一定程度上兼容。硬分叉有時會帶來社區強烈的動蕩,因此比特幣社區長期對主動硬分叉升級持保留態度,盡可能地避免通過硬分叉升級。本次比特幣的Schnorr升級,將會通過軟分叉完成,這是它很可能得到社區順利激活的重要原因。替換ECDSA簽名看起來是非常大的變動,為什么Schnorr能夠通過軟分叉完成呢?這要從Schnorr本身說起。Schnorr的安全性基于一個假設:即某個特定離散對數問題非常難以解決,而且此安全性可通過數學手段證明。換句話說,只要此假設成立,則Schnorr簽名的難破解性,將等于該離散對數問題的難破解性。同時,一個橢圓曲線中,也存在和該離散對數非常相似的難題。過去比特幣底層區塊鏈技術中的橢圓曲線數字簽名算法的安全性,也基于橢圓曲線離散對數問題的難解性。Schnorr簽名仍然利用原來比特幣采用的橢圓曲線,不過其采用了一種新的計算方法,由此能夠最大程度上和不想升級的版本兼容,實現軟分叉升級。另一方面,Schnorr對Segwit客戶端改動非常小,而目前Segwit客戶端的普及率超過90%。根據luke.dashjr統計,截至2020年10月,比特幣網絡節點中超過90%的節點已經把客戶端更新為0.16版本以上,即Segwit升級后的版本。Segwit將簽名信息從交易信息中隔離開,并作為單獨的結構附加到結尾。因為簽名信息只起到驗證作用,不影響交易的關鍵參數:如轉賬地址、數量等。Schnorr簽名主要影響簽名信息,對于升級了Segwit特性的客戶端來說,Schnorr簽名只涉及到以單獨結構附在結尾的簽名驗證信息,因此影響較小。綜上所述,Schnorr簽名可以以軟分叉升級的形式被添加到比特幣區塊鏈底層上,無需硬分叉,不會給社區帶來分裂。拒絕Schnorr簽名的客戶端仍然可以正常加入網絡,完成打包等操作。軟分叉作為一種區塊鏈賬本的升級手段,雖然實現難度更大,往往需要精巧的設計以繞開某些規則,但是它兼容性更好,不會導致共識分裂,是一種循序漸進的、溫和的更新方式。由于軟分叉的溫和升級特點,再加上Schnorr弊端較小,由核心開發人員推動,因此它具有較高的激活可能性。

德州反對Celsius用穩定幣銷售資助運營的計劃:金色財經報道,根據一份新的法庭文件,德克薩斯州的機構正在對破產的加密貨幣貸款機構Celsius Network出售其持有的穩定幣以支付持續運營的計劃提出異議。該州周四在破產法庭記錄了其反對意見,認為Celsius正在要求 \"令人不安的廣泛許可,以出售未充分定義的資產,用于同樣未充分定義的目的\"。

Celsius于7月申請破產,該案件目前正在紐約南區的美國破產法院進行審理。德克薩斯州證券委員會和德克薩斯州銀行部的最新文件還指出,Celsius過去的活動目前正被40多個州的監管機構調查,該公司被命令停止所有投資活動。(coindesk)[2022/9/30 22:41:51]

3.Schnorr簽名技術細節解析

接下里,讓我們對Schnorr簽名的技術細節進行解析:

3.1安全性高

Schnorr簽名的安全性從數學上得到了證明,而ECDSA暫時還沒有被證明。雖然過去很多年以來,ECDSA一直沒有出現安全問題,就好比一座從來沒有噴發過的火山,長久沉寂,但是你不知道它會不會有一天突然爆發。而一個得到數學證明的算法一定是要比可能還有“隱患”的算法更加令人信任。在DavidPointcheval、YannickSeurin等學者的數學證明下,我們知道,在隨機預言模型中,假設橢圓曲線離散對數問題很困難,想要突破Schnorr簽名的唯一方法就是解決離散對數問題。因此從某種程度上來說,Schnorr簽名更加安全,更加可信。此外,Schnorr簽名具有不可延展性,這一特性在與ECDSA的對比中能得到充分展現,ECDSA是一個可延展的簽名算法。具體來說,基于ECDSA生成的簽名,對于一個給定的消息,攻擊者在不知道密鑰的情況下,可生成同樣有效的新簽名。比特幣上還專門提出了BIP146以應對該問題。但Schnorr簽名天然具有不可延展性,可以直接規避這一安全問題。

3.2支持簽名的聚合,節省存儲空間

簽名的聚合,主要指的是對多重簽名的聚合。多重簽名是Bitcoin中的一種控制資金使用權限的技術。例如我們常見的“2of3”多簽,要求被授權的3方中至少要有2方對交易進行了簽名,這筆資金才能被使用。

億萬富翁Chamath Palihapitiya:比特幣正面臨巨大的系統性風險:金色財經報道,億萬富翁、風險投資公司Social Capital創始人Chamath Palihapitiya警告說,比特幣正面臨著巨大的系統性風險,這種風險可能會在未來產生重大影響。 Palihapitiya認為,這些風險主要是由缺乏監管造成的。

他警告說,如果從監管的角度來看,如果現在不采取措施,這些風險可能會對比特幣的未來產生負面影響。(Finbold)[2022/7/14 2:12:53]

例如上面的圖4就是一筆“2of3”多簽的輸入腳本,可以看到紅框中就是2個ECDSA的簽名,有了這2個簽名,這筆資金就可以被合法的使用。但是ECDSA的多簽沒有對簽名做任何的聚合,只是簡單的把每個簽名都放在輸入腳本中,并且2個簽名者的公鑰也需要分別放在輸入腳本中。假如有一個“9of10”多簽,就需要在區塊中存放9個簽名和9個公鑰,這是很占用空間的。但如果使用Schnorr簽名,就可以改善這一問題。Schnorr簽名通過一種叫做密鑰聚合的技術,可以將任何一筆“mofn”多簽中的m個簽名聚合為1個簽名,同時m個簽名者的公鑰也可以聚合為1個公鑰。無論m多大,在輸入腳本中都只需要填寫1個簽名和1個公鑰,這樣可以大大減少多簽在區塊中占據的空間。

上圖(圖5)為PieterWuille對Bitcoin歷史數據做的一個模擬測算,將Bitcoin歷史數據中所有的多簽都替換成Schnorr的聚合簽名后,可以顯著降低Bitcoin區塊的存儲空間。上面提到的還只是Schnorr聚合簽名中的一種,即“對UTXO單個輸入中的多個簽名進行聚合”。事實上,Schnorr簽名還有更強大的功能,可以“對UTXO多個輸入中的多個簽名進行聚合”,從而使整個UTXO只有一個Schnorr簽名。不過這種聚合的前置條件比較苛刻,實施起來比較復雜。

3.3簽名長度更短,節省存儲空間

根據PieterWuille提出的方案,Bitcoin中使用的Schnorr簽名算法,公鑰的長度為32字節,簽名長度為64字節。而Bitcoin目前使用的ECDSA簽名算法,公鑰長度為33字節,簽名最長會達到72字節。Bitcoin區塊寸土寸金,節省一點空間都是意義重大的。

例如圖3中這筆2個輸入2個輸出的UTXO,其中紅框選中的部分就是輸入中填入的ECDSA簽名,長度為72字節;之后緊跟的就是33字節的公鑰。那么采用Schnorr簽名之后,簽名和公鑰所占的空間就可以減少為64字節和32字節。事實上Schnorr簽名還有一種變種,可以把簽名縮短到48字節,但由于不支持批量驗證,PieterWuille并不推薦使用。

3.4更強的隱私保護

Schnorr可以用于多把密鑰聚合成一把,它能讓比特幣“多重簽名”錢包發出的交易只展示聚合后的一把,這令多重錢包更為簡潔和隱私。過去,用戶基于ECDSA簽名使用“多重簽名”錢包時,因為要展示多把公鑰,因此容易被暴露此錢包的多重簽名情況。但是如果基于Schnorr簽名,多把密鑰在鏈下進行聚合,可以讓一筆多重簽名的交易看起來和正常交易無異。還是上面那個“2of3”多簽的例子,可以看到提供簽名的2方的公鑰都被暴露出來了,也就是說,哪2方參與了多簽是公開的。但如果采用Schnorr的聚合簽名,公鑰也被聚合為了1個,這樣就不會暴露是哪2方參與了多簽。聚合后的多簽甚至和一個正常的“單簽”看起來也沒有區別,這就意味著外界看來甚至不知道這是一筆多簽。這大大保護了多簽參與者的隱私。

3.5簽名可批量驗證,提高驗證效率

Schnorr簽名,由于具有線性性質,天然的就可以支持批量驗證。其實原理并不復雜,Schnorr簽名的驗證過程,就是判斷一個等式是否成立。其中,,,帶入前面的等式就變成了,根據乘法分配律,可以很容易看出等式成立。而批量驗證,就是當有n個這樣的等式,……,需要驗證,我們可以把它們的左邊全部加起來,右邊也全部加起來,這樣只需要驗證一次等式是否成立,就可以判斷n個簽名是不是都合法。并且原本驗證n個等式時,計算需要做n次乘法,現在可以合并為,只需要做n-1次加法和1次乘法,大大的提高了驗證效率。Schnorr簽名的這種線性性質是天然具備的,因此即使來自于不同的用戶、不同Tx,甚至不同區塊的簽名,都可以合在一起進行批量驗證。一個新的全節點,在同步區塊數據時,需要做大量的驗證工作,如果Bitcoin采用Schnorr簽名,通過批量驗證就可顯著提高全節點的同步速度。

3.6一些不足之處

前面講的都是Schnorr簽名的優勢。事實上,帶來這些好處也是有代價的。因為Schnorr聚合私鑰簽名的特點,它需要參與方進行多輪交互,這相比過去的ECDSA會更麻煩一些。而且它對隨機數的要求比較高,必須確保隨機數不容易被攻擊者猜到,一些傳統的偽隨機數生成方式不一定適合。同時,PC計算這些簽名和生成隨機數的過程還是比較繁瑣的,因此也會造成發送交易這一步驟的少許延遲,并要求PC消耗更多的計算帶寬資源。但是,以目前的技術而言,這些問題都可以在一定程度進行解決和克服。

4.總結Schnorr簽名相比ECDSA更加安全可信,而且還順便帶來了比特幣鏈上空間的擴容,使得比特幣性能得到小幅提升,同時,Schnorr簽名還能保護多簽、閃電網絡等技術的參與方的隱私,結合Taproot還能使得更多智能合約腳本得以增加隱私性。目前來看,提案由Core組成員推動,以軟分叉方式進行溫和升級,未來一段時間順利激活的概率很大,也期待Schnorr簽名能為比特幣以及區塊鏈世界,帶來更多新鮮技術活力。

Tags:SCH比特幣DSACDSsCHF買比特幣會被局抓嗎現在maidsafecoinCDSD價格

XRP
解構灰度比特幣信托產品的設計原理_比特幣

原文標題:解構灰度比特幣信托原文作者:AnnHsu|ChainHillCapital首席指數分析師本文系ChainHillCapital首席指數分析師AnnHsu撰寫,未經授權嚴禁轉載.

1900/1/1 0:00:00
中國數字貨幣犯罪案例總結:金額高、受害者多、跨省跨國_數字貨幣

來源:鏈新 作者|李風編輯|尹岳 近些年,隨著區塊鏈、數字貨幣的火熱,借著二者名義的犯罪,已成為涉眾型經濟犯罪的“重災區”。金融詐騙被稱為2019年度詐騙之王,數字貨幣領域的詐騙占了一定比重.

1900/1/1 0:00:00
美甲美發店也可使用,數字人民幣試點下沉至C端_數字人

本文來源:證券日報《金融1號院》,作者:張博林娉瑩 逾191萬名申領,僅5萬名中簽,此次數字人民幣紅包中簽率僅為2.61%.

1900/1/1 0:00:00
OKEx暫停提幣之后,火幣、幣安影響幾分?_okex

2020年10月16日早間,數字貨幣領域的“三大”所之一OKEx一紙公告掀起行業震動,在公告中,這家全球頭部交易所宣布暫停提幣.

1900/1/1 0:00:00
門頭溝被盜6年:賠付無期,疑云依舊_比特幣

持有私鑰,你才能真正成為加密貨幣的主人。因為OKEx的黑天鵝事件,用戶資產安全問題再次被重視,不過相比中心化交易所私鑰保管人的“意外”,加密黑客的隱患和影響似乎更加深遠.

1900/1/1 0:00:00
區塊高度148888,Filecoin主網歷時3年終上線_FIL

10月15日晚22點45分,去中心化存儲項目Filecoin順利達到區塊高度148,888,宣告主網正式上線.

1900/1/1 0:00:00
ads