這樣的神人可以讓RSA秘鑰系統形同虛設,
因為RSA秘鑰系統的加密性依賴於人類難以分解兩個超大素數的乘積。
RSA秘鑰系統的原理:
首先找到兩個超級大的素數
,求它們的乘積
,進而求尤拉函式
對於任何一個公鑰
,設定私鑰為
,其中
滿足
,即
是
的逆元。
當張三要發一個資訊
給李四的時候,張三首先將資訊
使用公鑰
加密為
滿足
然後有私鑰
的李四可以將資訊解密為
解密過程原理:
根據費馬小定理
因此
。
如果第三方截獲了密文
,他卻無法利用公鑰
得到
從而無法恢復原資訊。
這裡就是假設別人無法在短時間內分解
,也就無法計算
和
。但如果有題目中那樣的神人,RSA秘鑰系統分分鐘被瓦解。
二十年之後,這個人應該仍舊具有觀賞價值。
雖然現在RSA加密仍然可用,但大概等量子計算機發展一下,過個十年二十年的,量子計算機應該也能做到“見到一個整數就能立刻分解質因數”
二十年之後,可能量子計算機就能完全代替這個人的工作了。
那時候我們對那個人的看法,就跟現在看玩速算的夥計一樣,好看,但比不過電腦
不過值得一提的,如果真的是“見到一個整數就能立刻分解質因數”,“見到質數同時立刻能辨別出來”
或許ta可以試試找找梅森素數。
找到一個好像是3000美金的樣子。
如果看見“整數的表示式”也算看見整數,那這個人想賺錢還是挺容易的
(……就是GIMPS倒了八輩子血黴了……)
恭喜這位神人,可以破譯世界上一大片加密系統了,也就是現在依舊被大量使用的RSA加密演算法,在這個神人眼中等同於算1+1。
RSA加密演算法的可靠性完全依賴於
極大整數做因式分解
的困難性上。比如兩個質數34849與128563,我們很輕鬆就能算出他們的乘積是4480291987。但是對於4480291987,我們很難得對這個數進行因式分解得到34849與128563這兩個質因數。
正式因為目前人類做極大整數因式分解極其困難,所以RSA演算法才有可靠性。雖然RSA演算法發明都好幾十年了,計算機的算力比起當年提升了好幾個數量級,但是人類依舊沒有什麼好法子能夠做極大整數因式分解,所以RSA加密演算法依舊被廣泛使用。現在這位神人出現直接動搖了RSA演算法的核心,降維打擊了所有依賴於RSA的加密系統,自然就能破解各種資料。
不過現在加密演算法也是多種多樣了,攻擊的辦法也是層出不窮,比如時間攻擊跟彩虹表。所以現在也有很多其他的加密演算法,比如橢圓曲線加密演算法。這位神人出身之後雖然能夠一口氣攻破各種RSA加密通訊,不過只要給程式設計師們一些時間換成別的加密演算法,這位神人起碼在這個方面就很難再有發揮了。
如果真有這種人,比起讓他去破譯密碼,更有價值的事是搞清楚他這種能力的本質是。
因為這個現象說明自然界有能力在常數時間對任意大數做分解,這實在是匪夷所思。
這個本質很可能直接關聯於宇宙的本質。
人們會非常惋惜質因數的分解尚未被證明是NP完全的(逃)