03.03 數學家為何對素數著迷,素數規律如何關係著人類的信息安全?

以前我唱過歌給禰聽


素數的定義。如果一個數只能被1和它本身整除,那麼這個數叫做素數(1除外)。至於1為什麼不是素數,我在之前的一篇文章中已經做了回答。

素數的判斷方法。有一種方法叫做篩法。這個篩怎麼理解,我們可以把它理解成篩子。篩子大家都見過吧,所有的數在篩子中一過,合數都漏下去了,篩子中剩下的數就是素數。

下面我為大家演示一下什麼叫做篩法?從最簡單的情況開始,已知第一個素數是2;2+1等於3,我們把3叫做2的後繼數。3不能被2整除,所以3也是素數,於是我們就得到了兩個素數2和3;3的後繼數是4,很顯然4能被2整除,所以4是個合數;4的後繼數是5,5不能被2整除,也不能被3整除,所以5也是一個素數。只要後繼數能被之前發現的任意一個素數整除,它就不是素數;不能被之前發現的所有素數整除,那麼它才是一個新的素數。我們將這個新的素數添加到素數表中,然後繼續進行下去。

僅憑觀察很難看出一個比較大的數是素數還是合數,比如101、401、601、701,都是素數,但301和901卻不是素數,因為301等於7×43、901等於17×53。這兩個數冷眼一看,很像是素數,我列豎式算了好一陣兒,終於給分解出來了。

數學家並不滿足用篩法去尋找素數,因為用篩法,帶有一定的盲目性,並且隨著數的增大,計算量也會越來越大。數學家,一直渴望找出素數的分佈規律,以便更好的掌握素數。

素數的分佈情況。1到1000之間有168個素數。1000到2000之間,有135個素數。2000到3000之間有127個素數。3000到4000之間有120個素數。4000到5000之間有119個素數。隨著自然數的變大,素數越來越稀疏。至今數學家也沒有找到素數分佈的確切規律。雖然素素越來越稀疏,但早在古希臘時代,歐幾里得在幾何原本中就已經證明了素數有無窮多個。

關於素數,有好多的猜想沒有解決。

一、哥德巴赫猜想,任意一個充分大的偶數,都可以表示成兩個素數之和。

二、梅森素數是否有無窮多個?如果能證明梅森素數有無窮多個,自然也就證明了有無窮多個完全數。



三、孿生素數,是不是有無窮多個?什麼叫孿生素數?3和5,5和7,11和13,17和19,類似這樣相差為2的一對素數叫孿生素數。從孿生素數又引申到三生素數,如果三個素數甲、乙、丙,乙比甲多2,而丙又比乙多4,這樣的三個數叫做三生素數。比如5、7和11,11,13和17。三生素數是不是有無窮多個,也是一個未解之謎。

與素數有關的好多問題都沒有解決,這也是數學家著迷於素數的一個原因。如果人們進一步發現了素數的分佈規律,這些問題或許有望得到解決。

素數與現代密碼學的關係。現代密碼學的原理是非對稱加密,大家都知道密鑰這個詞。對稱加密算法中,加密和解密的密鑰是一樣的,面臨的密鑰分發的難題,一旦密鑰洩露,密碼很容易被破解。非對稱加密的密鑰分公鑰和私鑰,其中公鑰是公開的,誰都可以用公鑰對信息進行加密,但知道公鑰卻不能解密,解密需要私鑰。有一種方法叫RSA算法,原理就是兩個素數(比較大的)相乘求積很容易,已知其積分解素因數卻非常難。即便使用計算機也需要好幾年,並且密鑰還會定期更換,這樣最大限度的保障了信息的安全。


多元視角


素數也叫質數,大家在小學時就學過,就是隻能被1和它本身整除的數,例如2,3,5,7,11,13,17,19,23等。這原本是一個非常簡單的概念,但許多數學家卻對素數情有獨鍾,廢寢忘食地研究這些素數之間的規律和最大素數。

目前已知最大的素數是(2的82589933次)-1,這個數字的位數將近2500萬位,在2018年由帕特里克·拉羅什發現;日本的一家出版社為了紀念此前,2017年時發現的最大素數,還出版了一本書,名字就叫最大的素數,全書的內容就是一串數字,4天時間賣到脫銷;美國也曾有科研機構懸賞10萬美元,尋求更大的素數。

很多讀者有疑惑:純粹研究這些數字既不能讓百姓吃飽飯,對我們生活也沒影響,並且歐幾里得在他的《幾何原本》中也證明,素數是無限多的,那研究素數有什麼意義呢?

素數與信息安全

素數最主要的應用在密碼學-RSA加密,它在網絡安全領域中相當重要,利用素數對信息進行加密可以保護國家情報和戰時的軍事機密,使安全性大大提高。

舉個例子,數字60我們可以將它分解成2×30,而30又可以分解成2×3×5,也就是說數字60可以由2,3,5這幾個素數構成,這幾個數字是不能繼續分解的,整個過程被稱為60的質因數分解。根據這個道理,如果將幾個極大的素數a,b,c相乘,得到數字A。對於一個不知道任何信息的外部人員來說,想要對A質因數分解是相當困難的,重點是數學界也沒有找到對極大數的快速質因數分解的算法。所以在戰爭時期,重要信息加入大量素數進行加密,哪怕被敵方截獲也無法破解獲得真實情報。

對於素數的獲取,數學家考慮從毫無規律的圓周率中尋找,生成拼接素數,產生真正完全的隨機數字。這比電腦產生的隨機數字都安全,畢竟電腦也是由程序設計出來的,產生的隨機數其實並非真正的隨機數。

看似與我們生活毫不相關的素數,其實時刻都在保護國家安全。

素數與機械工業

素數之間的分佈規律也有其它用處,例如機械齒輪的齒數,一大一小兩個齒輪之間的設計和素數有很大關係。大小齒輪的齒數都是素數,可以增加兩齒輪內兩個相同的齒相遇次數的最小公倍數,說的簡單一些就是能使磨損更均勻一些,可以增加耐用度減少機械故障,汽車齒輪的齒數就是按照這個規律設計的,這和人類生活緊密相關。

素數與生物

從實踐中發現,農藥的使用週期以素數次數的使用最為合理。這考慮了害蟲體內產生的抗藥性、害蟲的繁殖週期、噴灑農藥後害蟲對農作物的損害情況等綜合考慮的結果。

科學家還發現許多物種的生命週期和素數有一定關係,如果某地需要引進新物種,就必須降低此物種和天敵相遇的幾率,就需要提前通過生命週期和素數的關係進行演算。


科學薛定諤的貓


在數學中,質數(也可以叫素數)是指那些只能被1和自身整除的自然數(大於1),例如,2、19、61、193,這些數只能被分解為自身與1相乘,除此之外,沒有其他兩個數相乘會得到這個數。顯然,任意兩個質數的乘積是一個合數,只要知道任意兩個質數,把它們相乘很容易就能得到結果。

然而,如果把一個由兩個質數相乘得到的合數分解為兩個質數卻不是一件容易的事情,尤其是當這個數特別大的時候。舉個例子,38很容易可以質因數分解為兩個質數——2和19,而要把11773質因數分解為兩個質數——61和193難度就更大了,但如果要把68100029質因數分解為兩個質數6899和9871更為困難。隨著質數的增大,把一個大數進行質因數分解的難度就會更大。質數可以很大,人類現在找到的最大質數為2^77232917−1,這個質數的位數高達2325萬位。對於一個很大的數進行質因數分解極為困難,就連強大的超級計算機也很難算出來。

正是基於這樣的特性,麻省理工學院的三位數學家發明了著名的RSA加密算法,這在商業加密中廣泛應用,我們的銀行卡信息加密就是基於此方法。簡單來說這種原理如下:已知n是兩個質數的乘積,m是需要加密的信息,那麼,m^e除以n可以求出餘數c,這個過程很容易。但反過來,如果有人竊聽到n、e和c,想要計算出m極為困難,除非竊聽者可以把n質因數分解為兩個質數。但上面已經說過了,把一個很大的數質因數分解為兩個質數非常困難。在目前的RSA加密算法中,如果要破解這種加密算法,需要把位數達到309位的大數質因數分解為兩個質數。而如果未來這種加密算法繼續升級,這種大數的位數可以達到617位。


火星一號


以1為原點,順時針或逆時針將數字轉起來,素數基本都在雙曲線x^2-y^2的漸近線上,雙曲線上的特點是雙曲線上的點兩個焦點的距離之差衡定,每個數字將擁有一對二維整數對對應,1剛好既不是質又不合,直角座標具有平移性,平移性,平移性,重要的事情說三遍


頑石212553404


在估算術中,算術大師把素數定義為,陰性或陽性且有生育能力的數叫素數。先講數性,估算術中,把

1、4、7定為陰性數,2、5、8定為中性數,3、6、9定為陽性數,把0定為虛性數。也就是說,兩位以上的素數尾數必須是1、3、7、9。要認可兩位以上的數是否是素數,是一步看尾數是不是1、3、7、9,如果是,再查這個數有沒有親數,也就是說看能不能被其它數整除。如果沒有,就是素一數,如果有,就是假素數。例11、13、17、19明顯就是素數,21、23、27、29,21有3和7親數,27有3和9親數,故21和27是假素數。31、33、37、39,33有3和11親數,39有3和13親數,故33、39是假素數。依次類推很快就能確定該數是否為素數。尾數為2、4、5、8、0的數,不用驗算,百分之百的不是素數。我覺得,我國秦估算術比外國數學家的算法,要先進的多了,有不同看法的請談談你的看法。


何傳人


如何判斷一個大數X是否為素數,迄今為止數學界除了篩選法的確沒有更好的方法,篩選法必須從3開始到X的平方根取整為止的質數逐個試除,因而效率很低,即便是大型計算機也難以勝任。

這裡有一個猜想,有興趣的朋友可驗證一下。

對於任意素數X,(除2,5外)其倒數為無限循環小數。(已證明),若其循環節長度為P,則必定有:

(X-1)/P=INT((X-1)/P)

即素數倒數的循環節長度可整除素數減一。

反之,若對於任意整數X,若其上式成立,可否判定該數為素數。

關於計算機處理計算倒數循環節長度的方法其實不難,其本上就是小學除法的演變。


德本


密碼學中對於信息的保護起著重要作用,比如rsa加密就使用到了素數的特性


用戶51347955529


發現最大最大素數獎多少,去不了美國,與美國交流不了


分享到:


相關文章: