- +1
Comunion 區(qū)塊鏈深度學(xué)習(xí)系列|橢圓曲線數(shù)字發(fā)展史
Comunion 是一個去中心化的(DAO) 組織協(xié)作網(wǎng)絡(luò),提供面向數(shù)字時代的全新商業(yè)基礎(chǔ)設(shè)施和價值轉(zhuǎn)化機制,致力于讓勞動價值 像 資本一樣自由流通、交易和積累。
本系列內(nèi)容包含:基本概念及原理、密碼學(xué)、共識算法、錢包及節(jié)點原理、挖礦原理及實現(xiàn)。
密碼學(xué)有兩類:私鑰密碼學(xué),公鑰密碼學(xué)。也可以稱之為:對稱密碼學(xué),非對稱密碼學(xué)。
其中公鑰密碼里面有三個基本原理:公鑰加密、數(shù)字簽名、密鑰協(xié)商。
本文詳細闡述的內(nèi)容是:現(xiàn)代密碼學(xué)里面,公鑰密碼學(xué)中數(shù)字簽名中的一種——橢圓曲線數(shù)字簽名。橢圓曲線數(shù)字簽名算法(ECDSA)是使用橢圓曲線對數(shù)字簽名算法(DSA)的模擬。
學(xué)科為什么這樣分類?數(shù)字簽名是如何出現(xiàn)的?為什么產(chǎn)生?我們一起來了解一下密碼學(xué)的發(fā)展歷史。
私鑰密碼學(xué)
說起密碼學(xué),其實我們并不陌生,比如二戰(zhàn)期間德國使用的加密機,在戰(zhàn)爭期間起到了很重要的作用。從那個時候就已經(jīng)展現(xiàn)展示出了密碼學(xué)的一些作用和用處。
當時二戰(zhàn)期間德國使用的密碼機是恩尼格瑪密碼機(德語Enigma,又譯啞謎機,或謎)。這個密碼機放到當前密碼學(xué)學(xué)科里面,屬于經(jīng)典密碼學(xué)。
經(jīng)典密碼學(xué)經(jīng)典密碼是一種密碼類型,過去歷史上常用,但現(xiàn)代大部分的已經(jīng)不再使用了。經(jīng)典密碼是基于一個拼音字母(像是 A-Z)、動手操作或是簡單的設(shè)備,以使用了很多的技巧而著稱。
經(jīng)典密碼學(xué)也可能是一種簡單的密碼法,以致于其效率和安全性并不值得信賴。而我們現(xiàn)在所了解的新密碼學(xué)被稱之為現(xiàn)代密碼學(xué),也就是私鑰密碼學(xué)和公鑰密碼學(xué)。
既然現(xiàn)代密碼學(xué)中分私鑰密碼學(xué)和公鑰密碼學(xué),那么什么是私鑰密碼學(xué)呢?
也就是當使用私鑰密碼學(xué)進行加密、解密的時候,使用的密鑰是同一把。
例如,張三和李四進行通信,張三將一段明文加密,之后通過網(wǎng)絡(luò)傳播給李四,李四需要解密這段密文才能看到明文。那么在這個過程當中,張三進行加密的密鑰和李四解密使用的密鑰是相同的。
這里面存在一個很大的弊端,在這個傳輸過程中,李四獲得密鑰的方式有以下兩種:
1.張三和李四私下見面,張三將密鑰當面給李四;
2.張三將密鑰直接在線發(fā)給李四。
第一種方式,由于只有兩個人見面,所以其他人不會知道,這種方式很安全,但是很不方便,尤其是成本太大。比如一個人在中國,一個人在美國。這還是點對點,如果成千上萬的人需要傳輸,那么這種方式根本不可行。
第二種方式,通過網(wǎng)絡(luò)傳送很方便,但是嚴格來說是不安全的,因為直接傳送密鑰的話,那么相當于傳送的數(shù)據(jù)是明文,而其他人可以通過一些其他方法截獲這些數(shù)據(jù),所以存在很大的安全隱患。
在一個碩大的網(wǎng)絡(luò)系統(tǒng)當中,如果使用私鑰密碼學(xué),就會存在嚴重的問題,那就是密鑰的共享問題,因為私鑰密碼學(xué)里面加密使用的密鑰和解密使用的密鑰是同一把。要么協(xié)商成本太大,要么存在風險。
這是私鑰密碼學(xué)和其存在的問題??萍加肋h是在不斷的革新,有問題就要去解決,所以公鑰密碼學(xué)登上了歷史舞臺。

公鑰密碼學(xué)
在1976年,迪菲和赫爾曼兩個人提出了一個具有劃時代意義的思想,他們指出,在通信雙方之間不直接傳輸加密密鑰的保密通信是可能的。
也就是把密鑰分為加密的公鑰和解密的私鑰,當使用這個密鑰對傳輸數(shù)據(jù)的時候,如果用公鑰加密數(shù)據(jù)就必須用私鑰解密,如果用私鑰加密也必須用公鑰解密,否則解密將不會成功。
這是第一個實用的在非保護信道中建立共享密鑰方法,也可以簡單理解為將張三加密的密鑰和李四解密的密鑰分成兩把。
例如,張三和李四通過公鑰加密算法得到一個唯一的密鑰對(公鑰和私鑰),兩人各持一把,比如張三持公鑰,李四持私鑰。張三要給李四傳輸秘密數(shù)據(jù),那么張三通過公鑰進行加密,只有持有李四的私鑰才可以將信息進行解密。反之,李四通過私鑰進行加密,只有持有張三的公鑰才可以解密。
這樣即使信息在傳送過程中,即使被第三方截取,也不可能獲取其中的內(nèi)容。
如果在一個碩大的網(wǎng)絡(luò)系統(tǒng)當中,所有人都將自己的公鑰公開,保留自己的私鑰。那么就解決了一個問題:通信雙方都有彼此公鑰,通信時只要使用對方公鑰進行加密并且傳輸數(shù)據(jù),即便這些加密的密文是完全公開的,但是只有私鑰持有人才能解密數(shù)據(jù)內(nèi)容。

密鑰協(xié)商
密鑰協(xié)商是將上文提出的思想進行實現(xiàn)的過程,兩人或多人即使沒有任何關(guān)系,也可以通過公開的、不安全的通信網(wǎng)絡(luò)進行交互,共同建立會話密鑰,任何一個參與者均對結(jié)果產(chǎn)生影響,不需要任何可信的第三方。
其中會話密鑰由每個協(xié)議參與者分別產(chǎn)生的參數(shù)通過一定的計算得出,這就是密鑰協(xié)商協(xié)議。
密鑰協(xié)商協(xié)會的生產(chǎn)方式可以分為兩種:證書型和證書型。
證書型,是指在會話密鑰的產(chǎn)生過程中,由一個可信的證書中心給參與密鑰協(xié)商的各方主體分別發(fā)放一個證書,此證書中含有各方的公鑰,ID及其他信息。優(yōu)點是比較成熟,應(yīng)用面廣泛,公私鑰均有利于統(tǒng)一管理。其缺點是強中心化,因此計算代價巨大,并且證書還需要維護。
無證書型,是指各方在進行會話密鑰的協(xié)商過程中不需要證書的參與,不需要可信證的書中心參與,這樣減少了計算量,同時安全性和證書型處于同一級別。其唯一缺點是設(shè)計起來比較復(fù)雜,因此現(xiàn)在無證書型是密鑰協(xié)商協(xié)議的主流種類。
數(shù)字簽名
數(shù)字簽名是只有信息的發(fā)送者才能產(chǎn)生的別人無法偽造的一段數(shù)字串,這段數(shù)字串同時也是對信息的發(fā)送者發(fā)送信息真實性的一個有效證明。其作用是用來做數(shù)據(jù)認證的,它能夠鑒定數(shù)據(jù)在網(wǎng)絡(luò)當中傳播是否被篡改。
每一種簽名體制其實都根植于一個數(shù)學(xué)問題,當使用公鑰加密完成之后,只有私鑰擁有者才能解密,而其他人不能解密,其原理是基于數(shù)學(xué)問題的困難性。
我們通過代表性的公鑰加密發(fā)展史來理解一下:
RSA_DSA,是基于整數(shù)分解問題設(shè)計的加密體制,這里的整數(shù)是很大的,比如是2^256長的比特串,此種加密體制沒有涉及到數(shù)字簽名。
ElGamal_DSA,是基于離散對數(shù)問題設(shè)計的加密體制。
EC_DSA,是基于有限運算的運算對數(shù)問題設(shè)計的加密體制。
Lattice_DSA,是基于最短象限的尋找問題設(shè)計的加密體制。
這四種加密體制出現(xiàn)的時間也是遵循從上到下的順序,前三者在量子攻擊面前是十分脆弱的,最后 Lattice_DSA 的出現(xiàn)就是為了抵御量子攻擊,當然現(xiàn)階段量子計算機從成熟到應(yīng)用還有很長的一段時間。
數(shù)字簽名和公鑰的一些聯(lián)系:簽名者使用私鑰進行簽名,簽名的私鑰僅對自簽名者公開,公鑰是公開的,每個人都可以用公鑰對私鑰擁有者產(chǎn)生的簽名進行驗證,來驗證是否是有私鑰擁有者簽署的。
有些朋友會問,在區(qū)塊鏈系統(tǒng)系統(tǒng)當中,為什么主要使用的是橢圓曲線數(shù)字簽名算法(ECDSA),而不是其它的呢?

如上圖所示,在橢圓曲線密碼體制中,當私鑰長度為160位比特長度的時候,其安全級別是80位(這里的80指的是2的80次方),當私鑰長度為256位比特長度的時候,其安全級別是128位。
這里可以對比一下其他密碼體制,比如 Elgamal 要想達到128位安全級別的話,其私鑰長度是3072位,是橢圓曲線私鑰長度的12倍。
而私鑰的長度對密碼體制的影響是:私鑰的長度越長,密碼系統(tǒng)里面的加解密、簽名、驗簽算法等,其效率越低。因此,在同樣的安全級別下,區(qū)塊鏈系統(tǒng)使用了私鑰更短、效率更高的橢圓曲線。
所以,之所以在區(qū)塊鏈系統(tǒng)中主要使用的是橢圓曲線數(shù)字簽名算法,主要是因為在數(shù)字簽名算法中,橢圓曲線數(shù)字簽名算法能夠以相對較短的密鑰長度達到更高的安全級別。
本文為澎湃號作者或機構(gòu)在澎湃新聞上傳并發(fā)布,僅代表該作者或機構(gòu)觀點,不代表澎湃新聞的觀點或立場,澎湃新聞僅提供信息發(fā)布平臺。申請澎湃號請用電腦訪問http://renzheng.thepaper.cn。





- 報料熱線: 021-962866
- 報料郵箱: news@thepaper.cn
互聯(lián)網(wǎng)新聞信息服務(wù)許可證:31120170006
增值電信業(yè)務(wù)經(jīng)營許可證:滬B2-2017116
? 2014-2025 上海東方報業(yè)有限公司




