簽名是一種非對稱加密算法的用法,即使用不同的加密密鑰與解密密鑰,而由已知加密密鑰推導出解密密鑰在計算上是不可行的。簽名是用非對稱算法的私鑰簽名,然后用私鑰對應的公鑰來驗證簽名,的主要作用是確定發送方的身份。
除了簽名,非對稱加密算法還有一個用處是加密和解密,加密則是用公鑰來對信息加密,然后用對應的私鑰進行解密,主要作用是向接收方傳遞加密的信息。簽名和加密的作用和算法都不相同,因此需要加以區別。
1簽名與驗簽
簽名算法可以在不泄露發送者本身的私鑰的情況下,通過公鑰和簽名信息來確認發送者持有對應的私鑰。簽名還可將發送者的身份和信息綁定,防止其他人冒充發送者,因此這樣處理可保證信息的防篡改的同時認證發送者的身份。目前常用的簽名驗簽算法有RSA數字簽名和橢圓曲線數字簽名,其中橢圓曲線數字簽名是區塊鏈中應用最多的方法。
1.1RSA數字簽名
RSA是被研究得最廣泛的公鑰算法,從提出到現在已有四十年的歷史,經歷了各種攻擊考驗。RSA的安全性主要依賴大數分解,優勢是秘鑰長度可以增加到任意長度。RSA運算方式造成了簽名內容如果較短,會被很容易修改為攻擊者想要的內容,所以一般還需要將簽名內容進行一次哈希運算,并填充至和私鑰差不多的長度。此外,隨著計算能力的增長,為防止被破解,秘鑰長度也需要不斷增長,目前認為安全的秘鑰長度是2048bit。同時RSA的私鑰生成需要兩個質數的組合,因此尋找更長私鑰的計算速度也更慢。
報告:區塊鏈等技術深入應用為在線娛樂帶來發展機遇:7月30日,中國音像與數字出版協會游戲出版工作委員會和中國游戲產業研究院聯合發布《2020年1-6月中國游戲產業報告》,報告稱,5G、云計算、虛擬化技術、編碼技術、人工智能、區塊鏈、數據中心等一系列互聯網新技術的深入應用,將為在線娛樂和云端經濟帶來新的發展機遇。這些新技術將加快云游戲及 AR、VR等多終端游戲的發展和升級迭代,能有效提升用戶體驗。(界面)[2020/7/30]
1.2橢圓曲線數字簽名
橢圓曲線算法是利用在有限域上的橢圓曲線的離散對數問題來加密或簽名的。橢圓曲線的秘鑰和RSA不同,有效范圍會受橢圓曲線參數的限制,因此不能像RSA一樣可以通過增加私鑰長度來提高安全性,對于安全性不夠的曲線,必須修改橢圓曲線的參數,不如RSA靈活。和RSA算法比,橢圓曲線的優勢在于:私鑰可以選取有效范圍內的任意數,私鑰的生成速度遠快于RSA算法的私鑰。最重要的是相同秘鑰長度的橢圓曲線安全性能高很多,因此達到相同安全等級需要的橢圓曲線秘鑰的長度遠小于RSA秘鑰的長度,因此占用的存儲空間相對較小,對于存儲比較受限的區塊鏈來說,橢圓曲線更適用。這里用橢圓曲線對簽名算法進行簡單介紹,因為橢圓曲線的簽名方法和加解密的方法區別明顯,而RSA的簽名和加解密算法模式近似,容易引起混淆,在此不做介紹。
外匯局山西省分局深入推進跨境金融區塊鏈服務平臺試點工作:疫情期間,外匯局山西省分局深入推進國家外匯管理局推出的跨境金融區塊鏈服務平臺的試點工作,專題調研全省中小微外貿企業融資現狀;深入宣傳,促進更多中小微外貿企業了解區塊鏈平臺融資的便利性;加強推動,鼓勵銀行對中小微外貿企業建立專營服務機制;及時引導,推進銀行主動對接中小微外貿企業,開展出口應收賬款融資;“點對點”輔導,加快推進地方法人銀行上線區塊鏈平臺,挖掘中小微外貿企業融資需求。通過外匯局的有效措施,銀行對中小企業融資的積極性有了明顯提高,企業對區塊鏈融資的便利性也越來越了解,銀行擴大了對中小微企業的融資規模,企業獲得了便捷的融資,實現了“一項政策、多方共贏”。截至今年3月底,16家銀行加入了區塊鏈平臺,全省通過區塊鏈平臺累計放款7.65億美元。山西省涉外中小微外貿企業復工復產1458戶,復工率達91%。(金融時報)[2020/4/9]
1.3非對稱簽名驗簽算法
簽名算法最主要的思路就是利用算法的單向性,使私鑰和隨機數被隱藏起來,然后用公開信息計算獲得一致的結果來驗證簽名的有效性。
動態 | 區塊鏈等技術已經在平安銀行多項業務中深入運用:據人民網消息,據統計,平安集團每年都拿出營收的1%來投入科研,基于這樣的科技優勢,目前,互聯網、大數據、區塊鏈、人工智能、物聯網等前沿技術,在平安銀行的現金管理、互聯網支付結算、電子政務、貿易融資等產品和業務中都已有深入運用。此外,區塊鏈的應用降低了銀行的管理和運營成本和提高了風險控制能力。以平安銀行的供應鏈應收賬款服務平臺“SAS”為例,該平臺通過區塊鏈技術確認交易的真實性,從而給核心企業上游的中小企業發放貸款。[2018/11/6]
如圖所示,藍線為簽名所需要的數據,經過單向門的數據可被隱藏,未經過單向門的數據需要小心處理;紅線是驗簽的數據,這些數據對驗簽者都是公開的。
下面不考慮乘法在有限域橢圓曲線上的具體算法,以SEC的橢圓曲線簽名算法來簡單介紹一下簽名的過程。SEC是一個橢圓曲線的標準,一些常用的曲線,如secp256k1、secp256r1都是這個標準下的。其他橢圓曲線算法的流程都差別不大,但是簽名的方式有區別,如國密SM2的簽名和驗簽計算的方式和SEC的不一樣,給消息進行哈希算法的流程也更多。RSA簽名則沒有隨機數的流程。
動態 | 金融時報:未來區塊鏈等技術與銀行業的融合一定會越來越深入:據金融時報今日刊文指出,銀行業“變革的思維”,還體現在科技與傳統銀行的結合上。未來,云計算、大數據、區塊鏈與銀行業的融合一定會越來越深入。數據和信息會成為未來銀行的生命線。擁有數據和信息,就能精準勾畫出消費者所需要的場景,從而提高銀行服務和產品的覆蓋范圍與個性化程度,進而滿足金融消費者的獲得感、幸福感和安全感。并且,數字技術與普惠金融、小微金融、消費金融相結合,可以產生事半功倍的效果,因為小微企業與消費者是最需要數字技術所帶來的金融服務便利性的客戶群體。[2018/9/8]
1.3.1私鑰簽名
簽名算法多次用到了算法的單向性,可以看做一個單向的門,經過計算相當于從一邊穿過單向門,但是并不能通過運算再走回去。比如私鑰為k,公鑰K可通過橢圓曲線乘法算出:
kG(x,y)=K(x',y'),其中G為橢圓曲線基點,但知道公鑰K和基點G是無法反推出私鑰k的。橢圓曲線乘法和哈希算法都是這種單向門。簽名的過程為(其中有小寫字母的為數值,大寫字母為點):
馬耳他區塊鏈暨比特幣大會:深入探討國家區塊鏈戰略及數字貨幣立法問題:上周,在馬耳他圣朱利安舉辦了馬耳他區塊鏈暨比特幣大會(Blockchain & Bitcoin Conference Malta),對涉及加密數字貨幣、區塊鏈和ICO等問題進行了深入探討。馬耳他政府的高級官員和國家區塊鏈戰略制定者們出席了本次會議。據悉,本次大約吸引400位業內人士參會,包括行業開發人員、投資人、企業家、銀行和信貸機構代表、以及金融科技專家、律師和記者等。觀眾聽取了20位嘉賓的演講,同時也有15家公司登臺進行了展示。[2017/12/13]
取隨機數r,計算橢圓曲線乘法:r*G(x,y)=R(x",y");
計算消息m的哈希值h:Hash(m)=h;
3根據隨機數r,哈希值h和私鑰k,計算s=(h+k*Rx)/r,其中Rx為R點x軸的數值;
將消息m和簽名(Rx,s)發送給驗證者。
需要注意的是第三步s的計算是數值計算,利用隨機數隱藏私鑰,并非哈希或橢圓曲線乘法這種單向性的運算。因此每次簽名隨機數r必須更換,否則對不同信息用相同的隨機數簽名就可以推算出私鑰,而且隨機數r的質量將影響私鑰的保密性。
1.3.2公鑰驗簽
驗簽是通過公鑰K(x',y')、消息哈希h和簽名值(Rx,s)來推算簽名值是否由公鑰K對應的私鑰k簽名。驗簽的過程為:
根據收到的消息m,計算哈希值h:Hash(m)=h;
根據收到的公鑰、簽名和哈希值h計算:R’=hG(x,y)/s+RxK(x',y')/s;
驗證R‘x是否等于Rx。
公鑰驗簽的原理是用公鑰、簽名和哈希值構造出算法,使計算結果能回到原來選取的隨機數上:
R’=h*G(x,y)/s+Rx*K(x',y')/s
=h*G/s+Rx*(k*G)/s=(h+k*Rx)G/s
=(h+k*Rx)G*(r/(h+k*Rx))
=r*G
因此驗簽是否成功的標志是R'x和Rx是否相同。
這里都是最簡化的推導方式,沒有把求模運算和具體的橢圓曲線加法和乘法等涉及到的運算考慮進去,實際計算中關于數值的計算要求模,因此最后R’可能算出的是R的對稱點,而對稱點的y軸坐標不同但是x軸相同。還有,數值除法也并不是常規的運算,而是將除數轉換成模逆元再做乘法。
2.加密與解密
非對稱加密的作用是將信息通過公鑰加密傳遞給私鑰持有者。非對稱加密和簽名相反,信息是經過隱藏的,發送方也并不和身份綁定,主要的功能是傳輸信息而不是確定身份。非對稱加密的效率比對稱加密低很多,主要的優勢是接收方不需要將秘鑰通過交換協議或者直接傳輸給信息發送方。和簽名類似,非對稱加密也有RSA和橢圓曲線的方法。加密同樣利用算法的單向性,使消息和隨機數被隱藏起來,然后用私鑰計算將加密的消息提取出來。
如圖所示,藍線為簽名所需要的數據,經過單向門的數據可被隱藏,未經過單向門的數據需要小心處理;紅線是驗簽的數據,這些數據是要傳給解密者或者解密者本身持有的。解密流程中私鑰為解密方單獨持有,隨機數和消息由加密方生成和提供。
2.1公鑰加密
加密也用到單向門的特性將隨機數隱藏,具體流程為:
取隨機數r,計算橢圓曲線乘法:r*G(x,y)=R(x',y');
將消息m編碼到橢圓曲線上,獲取橢圓曲線上的點M(x",y");
用隨機數r和接收方的公鑰K,計算橢圓曲線乘法:r*K(x,y);
計算橢圓曲線加法得出加密點S(x"',y"')=M(x",y")+r*K(x,y),并和R(x',y')一起發送給接收方;
加密中編碼的方式有很多種,比如用M點做對稱加密的密鑰,然后將用該密鑰加密后的信息一起發送給接收方,接收方用私鑰解密出M后,再用M解密對稱加密的信息。
2.2私鑰解密
私鑰解密是通過加密內容,隨機點R和私鑰k來還原出編碼M的過程,具體流程為:
根據發送方傳輸的S(x"',y"'),R(x',y')和接收方自己的私鑰k,計算S(x"',y"')-k*R(x',y')還原M(x",y");
用編碼M解出消息m;
私鑰解密的原理是用私鑰和加密相關的消息還原出編碼點M:S(x"',y"')-k*R(x',y')=M(x",y")+r*K(x,y)-k*R(x',y')
=M(x",y")+r*k*G-k*r*G(x',y')
=M(x",y")
然后根據M還原出加密的消息。
注:原文作者是Bankless分析師LucasCampbell。為了慶祝以太坊的5歲生日,我們做了一個有趣的實驗.
1900/1/1 0:00:00DeFi協議Compound已經發布了自己的價格預言機OpenPriceFeed,一個無需許可的、可升級的喂價機制.
1900/1/1 0:00:00本文為萬向區塊鏈蜂巢學院線上公開課第21期內容。在本期公開課中,AlphaWallet聯合創始人兼CEO張中南分享了區塊鏈NFT相關知識點,包括:通證和權益的關系;區塊鏈NFT的誤區;非同質權益.
1900/1/1 0:00:00作者:金色財經Jason如今越來越多的人對抵押協議和以太坊2.0的推出感到興奮,一些加密項目也正在推動新一輪的抵押服務,這有助于解決權益證明網絡中諸多流動性問題.
1900/1/1 0:00:00作者|哈希派分析團隊 分析師:比特幣的主導率已達到頂峰,山寨幣的表現可能會優于大盤:金色財經報道,TradingView 的數據顯示,BTC主導率從第一季度的 42% 上升至 48%.
1900/1/1 0:00:008月11日消息,今日,去中心化交易所Uniswap處理了一筆異常的40,000ETH大額交易,以其450美元的成交價計算,這筆交易的價值大約達到了1800萬美元.
1900/1/1 0:00:00