沈葉華
我在上一篇科普小品《質(zhì)數(shù)冥冥中保護(hù)著“周期蟬”》(見本刊2019年第2期)談到一個(gè)有趣的生物現(xiàn)象,雖然“周期蟬”天敵無數(shù),但它能從上百萬年世世代代活下來,它生存本能的“質(zhì)數(shù)周期法”這個(gè)殺手锏功不可沒。質(zhì)數(shù)與其他合數(shù)、奇數(shù)、偶數(shù)、整數(shù)、自然數(shù)、完全數(shù)等砌起數(shù)學(xué)的殿堂,質(zhì)數(shù)更是數(shù)學(xué)殿堂的特殊石磚。那么,質(zhì)數(shù)特殊在哪里?我們玩?zhèn)€小游戲來看看。
假如我們有7個(gè)蘋果,怎樣把它們擺放開來?我們可以這樣擺:
無論怎樣,都無法把7個(gè)蘋果擺整齊,都無法把它們平均地排列(總有一個(gè)冒出來),因此我們說:7是質(zhì)數(shù)。但如果我們有1 2個(gè)蘋果,我們可以這樣擺:也可以這樣擺:
至少有一種方法能把12個(gè)蘋果平均地排列,因此我們說:12不是質(zhì)數(shù),是合數(shù)??疵靼踪|(zhì)數(shù)與合數(shù)的區(qū)別嗎?質(zhì)數(shù)是個(gè)體,不可平均分割;合數(shù)是組合,可以整齊地分切。
因此說,合數(shù)是質(zhì)數(shù)與質(zhì)數(shù)的乘積,合數(shù)全由質(zhì)數(shù)產(chǎn)生。
2×2×7=28
2×17=34
2×2×2×2× 3= 48
2×2×3×5= 60
5×31=155
2,3,5,7,1 7,3 1不都是質(zhì)數(shù)?28,34,48,60,1 55不都是合數(shù)?大家找一找,算一算,有哪一個(gè)合數(shù)不是數(shù)個(gè)質(zhì)數(shù)的乘積?
如果將質(zhì)數(shù)、合數(shù)比擬為食物,質(zhì)數(shù)像食材,如雞蛋、豬肉各是一種原材料(質(zhì)數(shù)),雞蛋不能分解為“雞”+“蛋”,豬肉不能分解為“豬”+“肉”;相對(duì)地,合數(shù)像菜式,如雞蛋餃,就是用雞蛋漿裹著豬肉末煎炸出來的(合數(shù))。
我們知道,奇數(shù)、偶數(shù)在數(shù)軸上排隊(duì),一前一后,互相穿插,很有規(guī)律。質(zhì)數(shù)藏身數(shù)軸中,要找出它,就像在廣袤的森林里要找出你所需的樹,得一棵棵去找。下圖黃色的為質(zhì)數(shù),看看:它們有時(shí)聚在一塊,有時(shí)離得遠(yuǎn)遠(yuǎn)的,相隔的距離像很隨意。
那么,質(zhì)數(shù)在數(shù)軸上的分布有規(guī)律可循嗎?從公元前300年起,人類一直孜孜不倦地尋找質(zhì)數(shù)的分布規(guī)律,至今仍未發(fā)現(xiàn)。
因此,發(fā)現(xiàn)新質(zhì)數(shù)仍是件費(fèi)時(shí)費(fèi)力的苦差事——即使今天有了電腦,有了互聯(lián)網(wǎng),有了搜索質(zhì)數(shù)的專業(yè)軟件——特別是隨著質(zhì)數(shù)趨向無窮大,它們分布得越來越稀疏。
比如,已知的最大質(zhì)數(shù):2 77232917-1=467 333 183 359 231...730 618 069762 1 79 0 7 1,共有2 3 249 425位,也就是說,如果中間不省略,要寫多長?寫滿9000頁紙,約9套《紅樓夢(mèng)》書那么厚。這個(gè)質(zhì)數(shù)是一位美國數(shù)學(xué)發(fā)燒友花了14年業(yè)余時(shí)間,在2018年年初發(fā)現(xiàn)的。
人類至今既未發(fā)現(xiàn)找質(zhì)數(shù)的快速方法,也未發(fā)現(xiàn)整數(shù)分解的簡捷辦法,如此一來,檢驗(yàn)一個(gè)大數(shù)是質(zhì)數(shù)還是合數(shù),就非常費(fèi)勁了。在1536年,人們以為267-1是質(zhì)數(shù),直到1903年,才分解出它的因子,證明它是合數(shù):
267-1= 147 573 952 589 676 412 927= 761 838 257 287×1 93 707 72 1
分解267-1足足花了3個(gè)多世紀(jì)。
質(zhì)數(shù)呀質(zhì)數(shù),人類研究你已有2 300年,但至今好像仍只看到你的表象,未能完全揭開你的面紗。
人類畢竟是萬物之靈,雖對(duì)質(zhì)數(shù)的學(xué)問還未窮盡,但懂它多少就利用它多少吧,快讓它為我們效勞,這沒說的。
那就讓質(zhì)數(shù)管管我們今天的腰包吧??赡苣銜?huì)說,不懂得質(zhì)數(shù)又如何,還不是一樣曉得掏腰包買東西?但當(dāng)今此言差矣。
現(xiàn)在我們進(jìn)行網(wǎng)購,在電腦上輸入銀行卡號(hào),為什么它不會(huì)被黑客盜走?因?yàn)榻?jīng)過了電腦的加密與網(wǎng)站的解密。電腦用什么加密,網(wǎng)站用什么解密?兩個(gè)質(zhì)數(shù)、一個(gè)合數(shù):這兩個(gè)質(zhì)數(shù)的乘積正是這個(gè)合數(shù),例如:N =pxq,N是合數(shù),p和q是質(zhì)數(shù)。
我們輸入銀行卡號(hào),電腦用合數(shù)(N)和銀行卡號(hào)摻合一起,然后發(fā)送出去,網(wǎng)站收到這堆混亂信息后,用質(zhì)數(shù)(p和q)進(jìn)行分解,讀出銀行卡號(hào)。也就是說,必需使用p和q才能分解N,才能解讀原信息。這樣一來,即使信息在傳送途中被黑客盜走,黑客沒有p和q,無法分解N,也就無法讀取銀行卡號(hào)。
黑客不會(huì)自己動(dòng)手分解N嗎?這就是前面提到的:人類至今未掌握合數(shù)分解的簡捷辦法,仍在使用笨方法。例如:分解合數(shù)5609,求出它的兩個(gè)因子,就沒有直接求得的方法,只能從2開始除,5 609÷2=? 5609÷3=? 5609÷5=?……一個(gè)個(gè)數(shù)除上去,一直除到71 (5609÷71=79) 5609才能被整除,才分解出它的兩個(gè)因子:71和79。
7 1和79不過區(qū)區(qū)兩位,網(wǎng)絡(luò)加密使用的是數(shù)百位、上千位的大質(zhì)數(shù)。為什么是大質(zhì)數(shù)?質(zhì)數(shù)越大,它們被黑客強(qiáng)力分解出來的難度也越高??纯?,下面這個(gè)合數(shù)共617位,是兩個(gè)質(zhì)數(shù)的乘積,要將它們分解出來?想想就令黑客望而卻步了。
這就是保衛(wèi)著網(wǎng)絡(luò)通信安全的門神大將:RSA加密算法及其工作原理。RSA加密算法是3位美國數(shù)學(xué)家在1977年創(chuàng)立的。我們今天之所以能信任互聯(lián)網(wǎng):瀏覽網(wǎng)頁,不擔(dān)心信息被黑客刪改;進(jìn)行網(wǎng)購、電子商務(wù),不操心錢被偷走,資金被轉(zhuǎn)移……多虧了RSA加密算法的嚴(yán)防死守,牢不可破。再細(xì)細(xì)想:RSA的防守武器不正是利用質(zhì)數(shù)分布的隨意性,大質(zhì)數(shù)難以被分解出來這些個(gè)大特性嗎?