Categories
程式開發

中科院院士王小雲:中國急需搶先制訂區塊鏈、國產操作系統等密碼協議標準與技術規範


12月7日~8日,由中國科學院學部主辦、中國信息通信研究院等單位聯合支持的“區塊鏈技術與應用”科學與技術前沿論壇在深圳舉辦。中國科學院信息技術科學部鄭志明院士、數學物理學部王小雲院士等四位院士發表主題演講,同時還有300餘名來自政府和企業界的代表出席會議,圍繞區塊鏈與數字身份、監管科技、金融應用等話題展開討論。

中科院院士王小雲:中國急需搶先制訂區塊鏈、國產操作系統等密碼協議標準與技術規範 1

中國科學院院士、國際密碼協會會士王小雲在題為“Hash函數與區塊鏈技術”的開幕報告中為大家介紹了區塊鏈的起源——密碼學,內容涵蓋了密碼學的重要性、密碼學中的哈希函數、以及區塊鏈技術運用到的密碼學原理和區塊鏈的應用領域。王院士對我國的密碼學充滿信心,“在密碼協議方面,我們國家和其他國家都是處在同一個起跑線上”,同時她也指出了我國密碼學未來的發展方向,“哪個國家先制定標準,就掌握了先機。我國亟需搶先制定物聯網、車聯網、區塊鏈、國產操作系統等密碼協議標準與技術規範。”

以下為演講全文(InfoQ在不改變原意的基礎上略有刪減,經主辦方審核):

我今天的報告是從密碼技術的角度來介紹一下區塊鏈技術,從底層技術層面介紹一下區塊鏈的密碼含義在哪裡。

密碼學的重要性

首先介紹一下密碼學的重要性,對區塊鏈技術發表一點個人感想,區塊鏈技術出來以後,從我們個人的觀望到投資者的熱情,到今天我們考慮它的技術創新,推動我們產業發展,這個過程有幾年的時間。大家都知道,最近密碼法已經出台了,密碼是保障網絡與信息安全的核心技術和基礎支撐,所有的關鍵問題都是數學問題,這是毫無疑問的。密碼領域比較特別,我對密碼領域的理解就是基礎數學、應用數學和技術應用是三個合為一體的、無法分開的。

我們每一個技術的突破都用了大量的基礎數據的研究方法和工具,突破以後,基本上行業遍地都用。大家看一下我們的計算機通信系統,我們互聯網系統的主體系統的安全性都是用密碼系統保證的,所以密碼技術是通信系統和基礎設施融合在一起的,二者是分不開的。

在80年代初期,美國微軟和IBM的密碼團隊是非常傑出的融合發展模式,我非常高興,今天我們也到了融合發展的階段。

今天我們所有的網絡,包含計算機、手機、衛星、物聯網,特別是物聯網,應該是一個國家能夠發展好新一代信息技術非常重要的環節,也是讓密碼技術提到更高水平的環節。另外還有大數據、雲計算等,現在我們的數據都上云了,但安全是怎樣的,我想大家都比較清楚。

密碼技術為什麼這麼重要?因為整個互聯網和各種網絡,信息從產生到處理到傳輸,需要四個安全屬性:機密性,就是加密算;可認證性和不可抵賴性,這是數字簽名算法;完整性,就是防數據篡改的Hash函數。Hash函數是區塊鏈的起源性技術,也是密碼學的基本工具。為什麼說是一個基本工具,我舉個例子,我們的電子簽名對一個數據庫進行簽名,花100個小時簽名才結束,首先是慢,而且不安全。那大家就會問:數字簽名有什麼用呢?這麼慢、又不安全,怎麼辦?解決辦法就是Hash函數,Hash函數對一個文件提煉出指紋就行了,它就可以把100個小時縮短成1個小時。提速100倍,並且還是安全的,這就是區塊鏈技術,所以大家不要把區塊鏈技術想像得非常神秘。

Hash函數的電子簽名技術就是標準的區塊鏈技術,它是高效而安全的,它的一個基本工具,今天的交易信息也可以達到這個效果,它是高效處理的,我們一秒鐘可以10G左右的處理速度;同時又是安全的,可以防數據篡改;當然我們同步的還有好多分佈式系統,還有好多其它跟計算機系統融合在一起的發展模式。

密碼學的發展

密碼學的發展有兩大方向:第一個方向是ENIGMA,1932年是數學方法,1939年是破譯機,導致西歐戰場提前兩到三年結束,1949年Shannon提出數碼學的圖像。對於ENIGMA密碼,如果算法公開了,就意味著這個算法破解了,最早的密碼破解就是情報人員拿到了圖紙。所以在算法公開的情況下不能破解密鑰,這是數學難題的概念,雖然沒有提出來,但數學難題的概念已經隱含了。

到了1973年~1976年,美國國家安全局形成了較為系統的對稱密碼理論體系,他們宣布即使算法公開,密碼也很難破解。

到1997年AES、DES是56次計算,大家我們我們的太空是57次計算,可以知道它的破解是高效的。而到了比特幣,我們挖12.5個比特幣需要270次計算,遠比單次破解的難度難,但是大家知道,10分鐘我們就能得到12.5個比特幣,這是計算能力的提高對密碼學的影響。 AES 128個比特幣,就意味著如果我們不用上全球的計算資源,不花費上千萬億年,就做不了,這是新一代密碼破解的安全難度。

對數學發展的研究最終發展到了密碼分析的自動化,再進一步就是人工智能的介入,所以這個領域,所有的密碼分析都可以轉化為商用密碼的特徵。密碼學出來以後,一定要發展特別的體系,你的算法是否安全、系統是否安全,系統是否有漏洞,我們只能用自動化學習的方法來進行商用密碼的特徵,這個領域我相信我們國家未來三到五年可以發展起來。

還有一個領域是公鑰密碼學的發展。計算機網絡是一到多的,互聯網時代可能一天會有一萬個人進行安全通信,一萬個人的密鑰要生成,現在密碼學一秒鐘可以同時跟很多人建立安全頻道,跟每個人都可以修出一個安全的密鑰通道,攻擊者可以加入安全通信,但它拿不到我們的密鑰,我可以給對方生成共同的加密密鑰,這就是一到多的安全通信。這個領域是對數問題、計算速率、算法速率的問題、代數幾何的問題,所以它涉及到很多領域的數學難題,而且全是最難的數學問題。我們在分析算法安全性的時候,需要跟其它的數學領域結合,所以密碼學是一個多學科交叉的領域。密碼應用推動了多個基礎數學問題研究取得突破,極大地推動密碼產業的高速發展,在基礎數學的領域,好多數學難題一千多年發展不起來,但是密碼應用使這些數學問題得到了很好的研究,並且作出了一些成果。

密碼通信協議

密碼算法設計出來以後,可以做到每個算法是安全的,但無法用單一的算法保證一個系統,所以所有的計算機網絡通信系統需要涵蓋多算法,大多數都有四個安全屬性,也就是需要三種密碼算法。我們要建立一個傳輸層的安全通信協議,就是SSL、TLS協議,TLS是SSL的升級版。

算法安全、協議安全、實現安全才能保證整個系統是安全的,實現不安全會導致非常可怕的攻擊。整個密碼領域,從算法的研究到協議的設計,到協議的運營都需要培養高水平的科技人才。

手機通信行業標準推出以後,不管是算法還是協議其實都有很多漏洞,各種攻擊方法都出現了,用了相當於沒用,其實都不安全。到了3GPP(3rd,Generation Partnership Project),就是支持3G、4G、5G安全通信。不管是3G、4G、5G,只有公開拿出來讓大家研究的才是安全的;藏著的,到目前為止,事實證明沒有一個是安全的。所以大家一定要注意,如果你認為你的協議是安全的,你不妨拿出來讓大家公開分析,有漏洞不要緊,因為現在密碼設計的能力非常強,很短時間就可以把漏洞補上,逐漸變得安全。怕的就是大家說安全,又不公開,那問題比較嚴重,如果內部的人知道,內部的人可以做一定的攻擊。

目前我們國家急需搶先制訂物聯網、車聯網、區塊鏈、國產操作系統等密碼協議標準與技術規範。實事求是地講,中國在這些領域跟任何一個國家都站在同一個起跑線上,我不認為其它國家比我們國家更先進。但是如果誰搶先在這些領域制定出密碼算法的標準與協議,就是協議的標準,肯定相對來講還是比較領先的。

區塊鏈技術起源

接下來我想講講密碼Hash函數,就是區塊鏈的起源性技術。為什麼要有Hash函數的概念? 1953年,IBM在一次歷史性討論中提出,我們對數據庫的文件進行檢索的時候,如果每個文件帶一個電子指紋,相當於人的指紋一樣,搜索的時候搜索指紋就可以搜索到文件了。 1981年,為避免電子簽名標準RSA等存在偽造攻擊,由Davis和Price提出了密碼Hash函數的概念,就是為了防止數據篡改。如果數據被篡改了,電子指紋一定會發生變化,就可以發現數據篡改問題,保證電子簽名是安全的。我們對一份文件進行簽名,只要對它的指紋進行簽名就可以。我們的指紋有多長呢,128、160、192、256、384或512比特。我們剛才說的,對一個數據庫簽名需要100個小時,現在一個小時就簽完了,還安全,何樂而不為。這是值得推廣的技術,比如可以放在交易後台的管理上,高效且安全。

區塊鍊主要是實現防數據篡改的功能。我們所有的密碼系統都是區塊鏈技術,我們現在的Blockchain,最早是Hash函數迭代過程中的一個專業術語,它是從Hash函數提出來就有的概念,這其實是一個老概念了。

當前新一代的Hash函數ISO、IEC標準,包括美國設計的的SHA-2,SHA-3,我們國家的SM3。目前我們國家的區塊鏈技術就是SM3,國產化的區塊鏈已經使用了SHA-3,因為這是唯一的標準,目前還沒有其它的標準產生。

從1979年密碼學家Ralph Merkle提出Merkle-Damgard結構,到2009年中本聰提出比特幣,區塊鏈已經經過了30年的發展,從最早的密碼學結構逐漸成熟,應用從金融領域逐漸擴展到供應鏈金融、供應鏈溯源等多個領域,解決了多個行業痛點,為我國加速普惠金融、加強供應鏈防偽溯源提供了新動力。