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

比特幣算法進化為Schnorr簽名算法是進步嗎?_比特幣

Author:

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

比特幣算法進化為Schnorr簽名算法是進步嗎?

抗量子Mint

剛剛

13

歷史的車輪滾滾向前,技術的進步從未停歇,一次具有里程碑意義特幣協議的開始了它的技術升級。其協議中的技術升級SchnorrSignature和Taproot已集成到BitcoinCore0.21.0?版本中。

比特幣的未來似乎面臨從未有過的光明,現在它有機會不僅通過其容量而且通過其功能超越所有其他區塊鏈。

當比特幣ECDSA橢圓曲線簽名算法時,多重簽名交易驗證過程非常繁瑣,現在可以把一筆交易中的所有簽名和公鑰通通合并成單個簽名和公鑰,無法追溯并且簡單快速會是怎樣?

其實在此之前,中本聰在設計比特幣協議時,需要考慮到簽名算法的簽名長度、是否開源、是否有專利、是否經過足夠長時間的安全驗證、性能等多種條件。當時能滿足上述這些條件的數字簽名算法不止有ECDSA,還有SchnorrSignature這個從各個方面都不亞于ECDSA的數字簽名算法。但是由于在2008年之前處于專利保護的狀態,所以可能是這個原因使得中本聰在設計比特幣協議時并未使用該簽名算法,最終選擇了橢圓曲線數字簽名算法,還在其他專家的建議下選擇了一條特殊的橢圓曲線secp256k1。

時隔10年,2018年7月,比特幣開發者PieterWuille撰寫了bip-schnorr提出了將bitcoin的簽名算法更改為schnorr方案。Schnorr與ECDSA雖然同為使用secp236k1曲線的橢圓曲線加密算法,但由于SchnorrSignature在密碼學特性上的優勢,可以在幾乎同等安全的基礎上,更方便的構建多簽名交易。

Schnorr?使用在比特幣上,相比ECDSA會有一些額外的顯著優勢:

更安全:在隨機預言模型中很容易證明Schnorr簽名的安全性,而ECDSA不存在這樣的證明。

無延展性困擾:ECDSA簽名是可延展性的,第三方無需知道私鑰,可以直接修改既有簽名,依然能夠保持該簽名對于此交易是有效的。比特幣一直存在延展性攻擊,直到SegWit激活后才修復,前提是使用segwit交易,而不是傳統交易。BIP62和BIP66對此有詳細描述。

BitfinexAlpha:比特幣現貨交易量自上月達到峰值后大幅下降:4月18日消息,根據BitfinexAlpha最新報告,3月份消費者價格指數(CPI)有所改善,盡管仍居高不下。月通貨膨脹率下降主要是由于能源價格大幅下降。剔除食品和能源,核心通脹依然存在。然而,我們認為過去一年已經做了足夠的工作,可以暫停加息。雖然我們預計5月3日還會加息25個基點,但在那之后預計會進一步收緊。支持這一觀點的事實是,生產者價格指數(PPI),或批發通脹,見證了近三年來的最大跌幅。能源價格和貿易服務的大幅下跌在一定程度上夸大了該指數的跌幅,盡管本月早些時候OPEC+宣布石油減產后,能源價格可能再次飆升,但其他方面應該有足夠的下行壓力,讓美聯儲可以從經濟進一步收緊中喘息一下。[2023/4/18 14:10:20]

線性:Schnorr簽名算法是線性的!以這一特性作為基礎,可以構建更高效和隱私性更強的區塊鏈系統。使用Schnorr簽名的各方可以生成對其各自密鑰的簽名聚合。例如,N個公鑰進行簽名,采用ECDSA的話,則有N個簽名,驗證同樣需要做N次。若使用Schnorr,由于線性特性,則可以進行簽名疊加,僅保留最終的疊加簽名。例如同一個交易無論輸入數量多少,其均可疊加為一個簽名,一次驗證即可。

Schnorr簽名算法幾乎在各個層面均優于比特幣現有的簽名算法ECDSA:性能,安全,體積,擴展性等方面等,并且SchnorrSig可以與ECDSA使用同一個橢圓曲線:secp256k1curve,升級起來的改動非常小。

當然在比特幣協議中除了簽名算法之外,還設計了Taproot腳本語言定義如何使用比特幣。比特幣多簽類地址可以不用暴露出自己的「多簽」身份,也可以支持數量眾多的多簽場景,降低很多的交易字節數,特別是對于需要高頻操作的地址而言,降低鏈上的交易費用,可以節省不少的成本。

下面是一些比較常見的問答:

Q&A

Q:Schnorr簽名是否可以用在mofn多重簽名上?A:當然可以。多重簽名只是mofn的簽名數量的模式。與簽名算法無關。

Q:Schnorr的組簽名特性是否可以做或模擬出mofn式的簽名?A:無法做到。組內有N把公鑰,則必須對應有N個簽名,缺一不可。每個人在生成簽名的時候,在哈希函數里都代入的都是組公鑰P。

洪蜀寧:比特幣由于技術和機制范式上的創新聚集共識,共識一旦達成不可逆轉:金丘區塊鏈研究院院長洪蜀寧今日在微博回復網友表示,貨幣的更新換代是極其困難的事,只有顛覆性的創新才有可能達成這一目標,這樣的創新在人類上萬年的文明史中也只出現過四五次。比特幣在剛出現的數年內都無法凝聚足夠的共識,一直到2013年的塞浦路斯危機才達成全球性共識。他認為,比特幣正由于在技術和機制范式上的創新才能聚集共識成為下一代貨幣,這樣的共識一旦達成就不可逆轉。這種范式創新是現有貨幣體系無法學習吸收的,只能接受失敗的結局。而其他山寨幣只是對比特幣進行了局部性的改進,不是范式的革命,這種改進隨時可以被比特幣吸收,所以他們絕對不可能替代比特幣。[2021/5/25 22:42:36]

Q:簽名機制的安全性如何衡量?A:主要取決于兩個:1.簽名算法本身2.橢圓曲線。目前,Schnorr與ECDSA都用的是曲線secp256k1,這個層面一樣。至于簽名算法本身安全性,Schnorr目前有安全證明,安全優于ECDSA。

BCH上的

Schnorr簽名算法

早在2019年5月16日BCH已經開始進行硬分叉升級。升級的主要內容是Schnorr簽名算法和隔離見證復原,Schnorr簽名升級中最受期待的功能,而隔離見證復原則是一項修復性技術,用來找回被錯發到隔離見證地址的BCH。

開發人員MarkLundeberg用戶不必生成新地址就可以開始使用Schnorr簽名。升級帶給BCH的優勢如下:

提高簽名數據的有效性:

由于簽名是64字節的數據,與通常的70字節相比,交易可以減少4%的字節,該功能基本上提高了每筆比特幣現金交易所需的簽名數據的有效性。并且升級后,Schnorr簽名給BCH帶來隱藏普通支付渠道的能力。

隱私性的提升:

在升級之前很多用戶就會故意使用多個簽名來發送交易來提高隱私,而Schnorr簽名會使所有用戶的簽名看起來和任何其他簽名一樣,這種結構導致了交易隱私性的大幅提升。Schnorr提供的屬性以及BCH開發人員和基礎設施提供商添加的一些延展程序將進一步增強隱私和可擴展性。

對抗垃圾交易攻擊:

天橋資本創始人:比特幣可能在2022年2月達到10萬美元:美國對沖基金天橋資本(Skybridge Capital)創始人Anthony Scaramucci在接受采訪時表示,比特幣很容易突破10萬美元大關。他認為,在未來12個月,貨幣貶值可能會使美元供應量增加40%。持續的貨幣貶值使比特幣成為一種有吸引力的價值儲存手段。除了貨幣貶值,比特幣的數字特性和用戶增長也使它對企業更具吸引力。他表示,在宏觀經濟背景下,比特幣可能在2022年2月達到10萬美元。[2021/2/17 17:23:14]

在過去曾出現一種垃圾交易攻擊,攻擊者希望通過盡可能多的交易空間來使比特幣擁堵,他們的手段之一就是通過頻繁地從多個來源發送交易使這個交易中包括數十個簽名,這些簽名占據了很多的空間,這是ECDSA簽名留下的隱患。

Schnorr可以規避這類的垃圾交易攻擊。如果每一筆交易只有一個簽名,那么區塊就能容納更多交易,垃圾交易制造者要想制造攻擊就必須發送更多交易,與更多人進行競爭,因此攻擊成本就會相對更高。簽名所占空間通常是一筆交易最大的一部分,所以攻擊者不具優勢。

當然我們不能只看到好的一面,全則必缺,極則必反。尤其是量子計算機的發展對區塊鏈安全造成威脅,為了應對量子計算機對一些算法的攻擊,在2017年,NIST就開始了后量子密碼學標準化進程,其中由瑞士ABCMint數學算法基金會推動的抗量子簽名方案,后量子加密基金會支持的抗量子算法之一,最短簽名長度的簽名抗量子簽名方案——彩虹簽名Rainbow最被看好。

2017年8月,JinLiu和數學家Prof.JintaiDing籌建ABCMint,并注冊在瑞士蘇黎世附近的加密谷。其數字貨幣ABC底層簽名便是彩虹簽名Rainbow,他們愿景是在全球支持抗量子計算機破解算法的研究和應用,研究包括在全球支持數學家在算法方面的發現、破解、完善等,應用包括將合適的算法應用在主流數字加密貨幣方面。

他們認為比特幣從ECDSA改為Schnorr簽名的提案BIP340,采用Schnorr簽名,是比特幣的重大退步。不看好由計算機安全專家提出的算法選擇和改進,我們更偏重由數學家提出的算法選擇和改進,Schnorr簽名的問題很大,應該用在Litecoin之類先長時間試車。

數據:全球比特幣ATM安裝總數達12309臺:CoinATMRadar統計數據顯示,11月1日以來,全球共新安裝了795臺比特幣ATM。截止11月24日,比特幣ATM機在全球的部署數量已達12309臺。[2020/11/25 22:00:53]

BTC應等BCH,或其他鏈再用幾年Schnorr簽名再看看。Schnorr簽名最主要的優點是“多簽時簽名長度最短”,但缺點是“多簽時,最后一個人容易欺騙”。

在密碼學看來:采用Schnorr簽名是一個"膽大不審慎”的做法,背離了”長期安全“的第一要義。

從密碼學角度看待Schnorr簽名主要是為了多簽名,而多簽名適合的場景應該是:既中心化又極其重要的場景,其極其重要的場景類似于核彈發射的十幾道Verifiableprocedure。或夏延山核武基地之類的大門。而不應該是去中心化場景,或比特幣的發送這類場景。

簡單說:去中心化的,本身和多簽名是背離的。

下面來簡單科普一下幾種算法:

橢圓曲線數字

簽名算法

橢圓曲線數字簽名算法是使用橢圓曲線密碼對數字簽名算法的模擬由NealKoblitz和VictorMiller于1985年發明),ECDSA首先由Scott和Vanstone在1992年為了響應NIST對數字簽名標準的要求而提出。

比特幣目前使用的是ECDSA橢圓曲線數字簽名算法,要對消息m進行簽名,我們需對其進行哈希操作,并將此哈希視為一個數字:z=hash(m)。我們還需要一個隨機或隨機查找的數字k。我們不喜歡信任隨機數生成器,因此,我們通常會使用RFC6979,并根據我們的秘密和我們要簽名的消息,計算確定性K值。

使用私鑰pk,我們可以為包含兩個數字的消息m生成簽名:r和s=(z+r?pk)/k。然后,使用我們的公鑰P=pk×G,任何人都可通過檢查點(z/s)×G+(r/s)×P的x坐標等于r,來驗證我們的簽名。

簽名驗證包括反轉和兩點乘法,這些操作的計算量非常大。在比特幣中,每個節點都必須驗證所有交易。這意味著當你廣播一筆交易時,數千臺計算機將不得不驗證你的簽名。而簡化驗證過程將是非常有益的,即使簽名過程會更加困難。

Willy Woo:比特幣NVT數據創歷史新高:加密貨幣分析師Willy Woo發推表示:當我們在等待比特幣價格創下新高的時候,長期投資者在NVT價格模型下的自然估值已經來到歷史最高水平。在歷史最高價被打破的市場當中,沒有任何歷史可以追溯。(注:比特幣的估值模式NVT,即比特幣市值/網絡交易數量)[2020/10/29]

第二,每個節點必須分別驗證每個簽名。如果是m-of-n多重簽名交易節點,則可能需多次驗證相同的簽名。例如,具有7-of-11多重簽名輸入的交易將包含7個簽名,并且需要對網絡中的每個節點進行7-11次的簽名驗證。同樣,這樣的交易會占用大量的空間,你必須為此支付大量的費用。

Schnorr簽名

Schnorr簽名算法是由德國數學家、密碼學家ClausSchnorr提出。并于1990年申請了專利,U.S.Patent4,995,082,該專利與2008年2月失效。目前該算法可以自由使用。

Schnorr簽名的生成則略有不同,我們使用了一個點R和一個標量s來代替兩個標量。與ECDSA相似的是,R是橢圓曲線上的一個隨機點。簽名的第二部分計算略有不同:

s=k+hash(P,R,m)?pk.這里的pk是你的私鑰,而P=pk×G則是你的公鑰,m是消息。然后可通過檢查s×G=R+hash(P,R,m)×P來驗證這個簽名。

這個方程是線性的,所以方程可互相加減,并且仍然有效,這就給我們帶來了幾大關于Schnorr簽名的好處。

Schnorr簽名的批量驗證

要驗證比特幣區塊鏈中的區塊,我們需確保區塊中的所有簽名都有效。

對于ECDSA簽名算法,每個簽名都必須單獨驗證。也就是說,如果區塊中有1000個簽名,我們就需要計算1000次倒置和2000次點乘運算,總共約3000次繁重的計算任務。

而通過使用Schnorr簽名,我們可以將所有簽名驗證方程相加,從而節省一些計算能力。對于有1000個簽名的區塊而言,我們需驗證:

(s1+s2+…+s1000)×G=(R1+…+R1000)+(hash(P1,R1,m1)×P1+hash(P2,R2,m2)×P2+…+hash(P1000,R1000,m1000)×P1000)

這里我們有一堆加法以及1001次點乘法。我們需要為每個簽名計算大約一次繁重的計算。

Schnorr簽名的密鑰聚合

我們希望讓自己的比特幣保持安全,所以我們可能希望使用至少2個不同的私鑰來控制我們的比特幣。比如說一個放在筆記本電腦或手機,另一個則放在硬件錢包/冷錢包。因此,當其中一個受到威脅時,我們仍然可以控制我們的比特幣。

目前,它是通過2-of-2多重簽名腳本來實現的,這需要在交易中包含兩個單獨的簽名。而使用schnorr簽名,我們可以使用一對私鑰(pk1,pk2),并生成一個與共享公鑰P=P1+P2=pk1×G+pk2×G對應的共享簽名。要生成這個簽名,我們需要在每個設備上選擇一個隨機數,生成一個隨機點Ri=ki×G,將它們相加以計算一個公共哈希(P,R1+R2,m),然后從每個設備(si=ki+hash(P,R,m)?pki)中獲取s1和s2。然后我們可以將這些簽名相加,并使用一對(R,s)=(R1+R2,s1+s2)作為我們對共享公鑰p的簽名。其他所有人都無法說出它是否是聚合簽名,它看起來與普通schnorr簽名完全相同。

這種構造有3個問題,第一,從用戶界面的角度來看,要進行交易,我們需要進行幾輪通信,計算公共R,然后-簽名。有了兩個私鑰,只需一次訪問冷錢包就可以完成:我們在在線錢包上準備一個未簽名的交易,選擇k1,將R1=K1×G與未簽名的交易一起記下。然后我們將這些數據傳送到冷錢包并簽名。因為我們已經有了R1,所以我們可以一次性在冷錢包上簽署交易。從冷錢包中,我們得到了R2和s2,并將其傳輸回在線錢包。在線錢包使用之前選擇的(k1,R1)簽署交易,結合簽名并廣播簽名交易。這與我們現在的情況非常相似,但一旦添加第三個私鑰,一切就會變得更加復雜。比方說,你有一筆財富,它是由10個私鑰控制的,它們存儲在世界各地不同的安全位置,然后,你需要進行一筆交易。目前,你只需要瀏覽所有這些位置一次,但如果你使用的是密鑰聚合,則需要執行兩次,以組裝所有RI,然后簽名。在這種情況下,最好在不進行聚合的情況下保留單獨的簽名,然后我們就需要3輪通信:

選擇一個隨機數ki和相應的Ri=ki×G,然后只告訴每個人其哈希ti=hash(Ri),這樣每個人都可以確定在學習了其他隨機數之后你不會改變主意;

把所有的數字匯總起來,計算出共同的R;

簽名;

第二個問題是已知的惡意密鑰攻擊。無論是在論文還是這篇文章中,都有很好的描述,所以我不想詳細討論。其想法是,如果你的某個設備被黑客攻擊,并假裝其公鑰是,那么它可以用它的私鑰pk1控制共享資金。一個簡單的解決方案是,在設置設備時,需要使用相應的私鑰對公鑰進行簽名。

還有第三個重要問題。不能使用確定性k進行簽名。有一種簡單的攻擊方式,如果你使用確定性K,它允許黑客獲得我們的私鑰。攻擊看起來會是這樣的:有人入侵了我們的筆記本電腦,并完全控制了兩個私鑰中的一個。我們可能覺得是安全的,因為我們的比特幣需要來自pk1和pk2的聚合簽名。因此,我們嘗試像往常一樣進行交易,準備一個未簽名的交易和R1值,將它們轉移到我們的硬件錢包并在那里簽名。然后返回和……我們的在線錢包發生了一些事情,它無法簽名和廣播。我們再次嘗試,但我們被黑的電腦這次使用了另一個隨機值R1'。我們再次與我們的硬件錢包簽署相同的交易,并將值帶回我們被黑的電腦。然后,糟糕的事就發生了,我們的比特幣就丟失了。

在這個攻擊中,黑客為同一筆交易獲得一對有效的簽名:(R1,s1,R2,s2)和(R1',s1',R2,s2'),這里R2是相同的,但R=R1+R2和R'=R1'+R2是不同的,這意味著黑客可以計算我們的第二個私鑰:s2-s2'=(hash(P,R1+R2,m)-hash(P,R1'+R2,m))?pk2andpk2=(s2-s2')/(hash(P,R1+R2,m)-hash(P,R1'+R2,m))。我發現這是密鑰聚合最不方便的特性:我們需要在任何地方使用好的隨機數生成器來使用密鑰聚合。

彩虹簽名

Rainbow是一種多變量簽名方案,它的分層結構以不平衡石油-醋栗簽名方案為基礎。Rainbow層所施加的額外結構使該方案面臨更多的密碼分析技術,但提高了該方案的效率。Rainbow提供了快速的簽名和驗證以及非常短的簽名,但具有非常大的公鑰。

選擇Rainbow增加了入圍簽名方案的多樣性;但是,由于密鑰尺寸非常大,Rainbow不適合作為通用簽名算法來替代目前出現在FIPS186-4中的算法。特別是,大公鑰使得證書鏈非常大。然而,有些應用并不需要經常發送密鑰。對于這樣的應用,Rainbow提供了小而快的簽名。

參考文獻:

https://panzhibiao.com/2019/02/28/schnorr-sigature/

https://mp.weixin.qq.com/s/wy1jtKzNVdmiccd4e9N3Ew

https://medium.com/cryptoadvance/bls-signatures-better-than-schnorr-5a7fe30ea716https://medium.com/cryptoadvance/how-schnorr-signatures-may-improve-bitcoin-91655bcb4744

比特幣

簽名

本文來源:

抗量子Mint

文章作者:小南瓜hhh

我要糾錯

聲明:本文由入駐金色財經的作者撰寫,觀點僅代表作者本人,絕不代表金色財經贊同其觀點或證實其描述。

提示:投資有風險,入市須謹慎。本資訊不作為投資理財建議。

金色財經>區塊鏈>比特幣算法進化為Schnorr簽名算法是進步嗎?

Tags:SCH比特幣DSACDSccpchschain我有20個比特幣能套現嗎知乎maidsafecoinCDSD幣

芝麻開門交易所
"浮盈最多時候是我60年工資!"幣圈是天堂還是地獄?看5位炒幣人自白_比特幣

原標題:《"浮盈最多時候是我60年工資!"幣圈是天堂還是地獄?12年133萬倍收益,財富究竟給了誰?看5位炒幣人自白》 來源:券商中國 作者:王君暉 幣圈一日,人間一年.

1900/1/1 0:00:00
金色觀察|COSMOS是在加速嗎?_COS

從2019年3月COSMOS主網上線后,整個生態進展略顯遲緩,但因為COSMOS模塊化的設計,有廣泛的應用趨勢.

1900/1/1 0:00:00
礦工看漲嗎?比特幣挖礦難度創3個月來最大漲幅_OIN

來源:彩云區塊鏈,作者:irishash礦工的平均比特幣流出量持續下降。根據BTC.com的數據,比特幣的挖礦難度在1月9日增加了大約11%.

1900/1/1 0:00:00
金色午報 | 1月14日午間重要動態一覽_區塊鏈

7:00-12:00關鍵詞:2萬億美元、DOT、TwitterCEO、檢察日報1.北京:探索推動區塊鏈技術在信用領域的規模化應用;2.拜登援助計劃規模大約為2萬億美元;3.DOT突破11.

1900/1/1 0:00:00
梳理 | 美國比特幣ETF申請時間線全記錄_加密貨幣

ArxnovumInvestments在周一向加拿大的安大略省證券委員會提交了比特幣ETF申請,昨天Winklevoss旗下交易所Gemini宣布將成為這個ETF的子托管公司.

1900/1/1 0:00:00
DeFi新玩法丨打通以太坊多鏈生態系統,Connext打算這么做_VECT

北京時間1月13日,以太坊擴容項目方Connext宣布其Vector0.1.0版本已上線主網,據其表示,這標志著以太坊多鏈生態系統的開始.

1900/1/1 0:00:00
ads