黎曼猜想是否會(huì)對(duì)密碼學(xué)的安全產(chǎn)生影響區(qū)塊鏈
由于黎曼猜想和素?cái)?shù)有關(guān),也不能對(duì)一個(gè)整數(shù)進(jìn)行素?cái)?shù)分解,黎曼猜想是宏觀上對(duì)素?cái)?shù)的分布有個(gè)判斷。
最近由于黎曼猜想可能被證明,網(wǎng)上充滿了討論,甚至波及到了區(qū)塊鏈。有新聞?wù)f如果黎曼猜想被證實(shí)的話,將危及公鑰密碼學(xué)的安全。所以今天談?wù)勎覍?duì)這件事的看法。
由于互聯(lián)網(wǎng)上使用的都是公鑰密碼,所以互聯(lián)網(wǎng)也都不安全了。更具體的猜測(cè)是,由于黎曼猜想和素?cái)?shù)有關(guān),所以RSA密碼體質(zhì)將會(huì)被攻破。
以上猜測(cè)搞得人心惶惶,皆因大家的好奇心,說來也是好事。一個(gè)數(shù)學(xué)界的新聞能讓大家如此關(guān)注。我也查了國外一些網(wǎng)站的說法。
由于我是搞密碼學(xué)的,又涉足區(qū)塊鏈界,所以有些群友不斷在問我。為此我以我的理解及所查的資料,對(duì)以上說法進(jìn)行正本清源。
1. 首先我說結(jié)論。
第一,黎曼猜想早在1859年就提出,而我們用的公鑰密碼是在70年代末提出的。所以,如果黎曼猜想會(huì)對(duì)破解RSA加密算法有什么幫助的話,一定會(huì)早有論文提出。然而,至今為止也沒有看到有相關(guān)論文顯示黎曼猜想會(huì)對(duì)破解RSA有什么直接效果。
第二,區(qū)塊鏈上用的密碼算法只有兩個(gè):哈希函數(shù)和數(shù)字簽名。哈希函數(shù)和素?cái)?shù)沒有關(guān)系,所以和黎曼猜想沒有關(guān)系。數(shù)字簽名使用的是橢圓曲線上的方案,所以與大整數(shù)分解沒有關(guān)系,從而和黎曼猜想也沒有關(guān)系。
所以,黎曼猜想對(duì)公鑰密碼沒有直接的任何威脅。對(duì)區(qū)塊鏈的安全也沒有任何影響。
為了讓大家更好地理解上述結(jié)論,我們先來解釋一下什么是黎曼猜想。
2. 什么是黎曼猜想
要說清黎曼猜想,首先得說素?cái)?shù)。素?cái)?shù)在自然數(shù)中是一種特別的數(shù),它只能被1和自己整除。說白了,素?cái)?shù)沒有因子,就像一個(gè)人沒有后代(比喻略顯不恰當(dāng))。素?cái)?shù)的這種孤零零的特性,使得它是整個(gè)自然數(shù)的“基石”。因?yàn)樗荒茉俦环纸饬耍灾荒苋?gòu)造其他數(shù)。
因此有個(gè)結(jié)論,每個(gè)自然數(shù)都可以唯一地分解成有限個(gè)素?cái)?shù)的乘積。而且素?cái)?shù)的個(gè)數(shù)是無限的。
素?cái)?shù)如此特別,數(shù)學(xué)家們?cè)噲D搞清楚如何判斷一個(gè)數(shù)是素?cái)?shù)。給你一個(gè)小的數(shù),例如7,你很容易判斷它是素?cái)?shù)。但是當(dāng)給你一個(gè)很大的數(shù)字時(shí),判斷一個(gè)數(shù)是否為素?cái)?shù),是需要方法的。由此產(chǎn)生了素?cái)?shù)判定的算法。
為了更好地理解素?cái)?shù),數(shù)學(xué)家們?cè)?19 世紀(jì)便不再嘗試預(yù)測(cè)素?cái)?shù)的精確位置,轉(zhuǎn)而將素?cái)?shù)的現(xiàn)象視為一個(gè)整體。這種分析的方法就是黎曼所擅長的,他著名的猜想也由此得出。
為了理解素?cái)?shù)是如何分布的,高斯給出了一個(gè)素?cái)?shù)計(jì)數(shù)函數(shù) π(x) ,它能夠給出某個(gè)數(shù)之前的素?cái)?shù)的數(shù)量(即有多少個(gè)素?cái)?shù))。
隨后,高斯(和勒讓德獨(dú)立地)提出了素?cái)?shù)定理:當(dāng)x增長到無窮大時(shí),素?cái)?shù)計(jì)數(shù)函數(shù) π(x) 會(huì)近似于 x/ln(x) 函數(shù)。這意味著前x個(gè)整數(shù)中連續(xù)素?cái)?shù)之間的平均間隙約為 ln(x)。換句話說可以用x/ln(x)近似π(x)。
然后又出現(xiàn)了對(duì)數(shù)積分函數(shù) Li(x),數(shù)學(xué)家發(fā)現(xiàn) Li(x)能夠比x/ln(x)更好的近似π(x)。說明 Li(x)能夠更好的刻畫素?cái)?shù)的個(gè)數(shù)。
然而,素?cái)?shù)定理所預(yù)測(cè)的分布規(guī)律與實(shí)際仍然有所偏差,而且時(shí)大時(shí)小。這一切引起了黎曼的注意。
1859年,年僅33歲的黎曼發(fā)表了論文《論小于已知數(shù)的素?cái)?shù)個(gè)數(shù)》。在該文章中,黎曼定義了一個(gè)函數(shù):黎曼 zeta 函數(shù)。在論文中黎曼給出了一個(gè)推測(cè):黎曼 zeta 函數(shù)的所有非平凡零點(diǎn)可能都全部位于實(shí)部等于1/2的直線上。
具體內(nèi)容各位可以忽略。那么黎曼 zeta 函數(shù)的非平凡零點(diǎn)有什么用呢?
黎曼用 Li(x)以及zeta 函數(shù)的非平凡零點(diǎn),給出了自己的素?cái)?shù)定理,即更準(zhǔn)確地估計(jì)數(shù)字 x 以內(nèi)有多少個(gè)素?cái)?shù)。
這一精確的刻畫素?cái)?shù)個(gè)數(shù)的定理,讓黎曼大放光彩。
到此為止,我們說了黎曼猜想是什么?
簡而言之,就是給出了數(shù)字 x以內(nèi)更精確的素?cái)?shù)個(gè)數(shù)的公式。
3. RSA基于的困難問題
RSA所基于的困難問題是“大整數(shù)分解困難問題”。即給你一個(gè)大的整數(shù),對(duì)其分解為素?cái)?shù)之積是困難的。這是RSA加密算法的安全性基礎(chǔ)。
目前對(duì)大整數(shù)分解用的方法主要是數(shù)域篩法,但是這些方法都不能有效的分解大整數(shù)。
黎曼猜想是宏觀上對(duì)素?cái)?shù)的分布有個(gè)判斷,它不能直接求素?cái)?shù),也不能對(duì)一個(gè)整數(shù)進(jìn)行素?cái)?shù)分解。目前根據(jù)文獻(xiàn),黎曼猜想對(duì)于生成素?cái)?shù),例如RSA中的密鑰生成算法,是有幫助的。但是對(duì)于整數(shù)分解算法并沒有直接的提升。所以不會(huì)對(duì)RSA加密體質(zhì)有任何影響。
大家一定要區(qū)分素?cái)?shù)檢測(cè)和整數(shù)分解是兩回事。很多人都認(rèn)為是一回事,這是產(chǎn)生錯(cuò)誤的根源。
對(duì)于黎曼猜想的證明,大家更多的認(rèn)為可能會(huì)對(duì)數(shù)域的結(jié)構(gòu)有個(gè)更好的認(rèn)知。從某些方面,可能會(huì)對(duì)密碼學(xué)有所啟示。
1.TMT觀察網(wǎng)遵循行業(yè)規(guī)范,任何轉(zhuǎn)載的稿件都會(huì)明確標(biāo)注作者和來源;
2.TMT觀察網(wǎng)的原創(chuàng)文章,請(qǐng)轉(zhuǎn)載時(shí)務(wù)必注明文章作者和"來源:TMT觀察網(wǎng)",不尊重原創(chuàng)的行為TMT觀察網(wǎng)或?qū)⒆肪控?zé)任;
3.作者投稿可能會(huì)經(jīng)TMT觀察網(wǎng)編輯修改或補(bǔ)充。