$$ 05 $$
這里為了描述方便,稱上面公開的n為“公開信息”,稱e為“公鑰”,d為“私鑰”。
我們設(shè)原文為m,加密后的密文為c,求余運算用%表示,那么:
加密過程c=(m^e)%n,
解密過程m=(c^d)%n。
·
可能你已經(jīng)發(fā)現(xiàn)了,這個方法,只能用來加密數(shù)字,而且數(shù)字必須要比n小。
由于需要足夠的加密強度,牛郎的p和q都取了十位數(shù),那么n是個接近20位的數(shù)字,一般數(shù)字都會比它小。
這并不難,因為之前牛郎已經(jīng)設(shè)計了字典,每個字在字典中的索引,都可以表示為數(shù)字。
·
一切準(zhǔn)備就緒,是不是可以開始了呢?
是的。但是也要考慮,牛郎現(xiàn)在要將加密思路給織女講一遍,這個是可能被王母竊聽的。
所以,需要提前做一點準(zhǔn)備。
·
牛郎先是個織女發(fā)了一封“公開的”私信,內(nèi)容很簡單:“靜觀其變”。
接著,
·
牛郎用之前的隨機算法,加上“費馬小定理”,得到了長度為一百位的素數(shù)p和q。
對,你沒看錯,牛郎想要絕對的安全,所以花了3天時間,真的找到了兩個一百位長的素數(shù)。
接著,牛郎計算出了公開信息n和公鑰e,將這兩者通過喜鵲網(wǎng)絡(luò),廣播了出去。
沒錯,就是廣播,所有人都會收到的那種,包括王母:
牛郎
n
e
·
只有短短的三行,一行文字,兩行數(shù)字。
最后,牛郎又給織女發(fā)了一封“公開的”私信:“靜觀其變”。
·
----
$$ 06 $$
織女沒有回復(fù)。三天以后,牛郎的兩行數(shù)字到底代表什么,眾說紛紜,整個天庭里傳的沸沸揚揚。
而也有一些打探到小道消息的人,說牛郎給織女發(fā)過“靜觀其變”,很可能這個專門做給王母看的,想引誘王母出手。
但具體想要王母出手做什么呢?沒人能猜得到。
·
其實,牛郎的目的,已經(jīng)達到一半了。
雖然現(xiàn)在沒有人知道自己的加密算法,但自己的公鑰已經(jīng)是眾人皆知,無法被篡改的了。
換句話說,牛郎出其不意地讓織女拿到了“絕對是來自牛郎的公鑰”,規(guī)避了王母冒充自己的風(fēng)險。
而且,織女只要用這個公鑰加密,信息就只有牛郎能夠解密,這就保證了安全。
·
但是很可惜,目前算法只有自己知道,所以自己才可以再眾人毫不知情狀態(tài)下發(fā)送廣播。
一旦算法公開,很可能下一個人也會廣播:織女 n e ,
只是,這個信息,真的是來自織女還是其他人偽造的,就不得而知了。
·
所以說,我們,算是成功了一半。
·
怎么才能在王母毫無反應(yīng)的情況下,拿到織女的公鑰呢?
這個已經(jīng)超出數(shù)學(xué)領(lǐng)域了,可能需要一點心理學(xué)上的技巧。
于是牛郎修書一封:
·
織女:
我已找到了萬全的加密方法,此法僅你能解。
全網(wǎng)廣播就是為了氣氣王母,讓她什么都知道卻就是解不出來。
第一行是兩個素數(shù)的積,而這兩個素數(shù)都不大于第二行的數(shù)字。
這兩個素數(shù)的最后兩位,就是約定見面的日期。
盼十天之內(nèi)回復(fù)。
·
----
$$ 07 $$
可想而知,織女收到了信件,而王母自然也監(jiān)聽到了一份備份。
·
王母看了信件,明白牛郎織女的通信可能進入最后日期的溝通階段了。
但這牛郎很囂張呀,這么簡單的事情,還能難得到我王母?
既然這樣,這牛郎是不是有什么“話外之音”要傳遞?
萬一牛郎明面上是說這個,實際上在偷偷暗示織女另一個時間,該怎么辦?
于是王母趕緊找來語言分析師深入分析。
·
一群專家討論了一天,并沒發(fā)現(xiàn)什么特別之處,都是瞎猜。
這時,有人提出:
“最危險的地方就是最安全的地方,萬一牛郎就是利用了王母您的多疑,然后真的就與織女定了這個時間呢?”
·
王母沉思,覺得也有可能。這樣的話,先求出這兩個素數(shù),看看最后兩位是什么。
很可能秘密就在其中。
王母趕緊召集自己的部下:“巴戈,解密這事就交個你了,明天告訴我結(jié)果?!?p> ·
大將巴戈領(lǐng)旨后,覺得不難,隨便派了幾個部下計算。結(jié)果,第二天,竟然還沒算出來。
巴戈急了,趕緊命令麾下所有將士一起計算,務(wù)必完成王母任務(wù)。
·
可惜,還是失敗了。夜里,巴戈垂頭喪氣地向王母匯報:“屬下無能,屬下求不出來。”
王母這才意識到問題的嚴(yán)重性,看來,很可能牛郎真的用了這兩個素數(shù)。
突然,王母一拍桌子:“壞了,牛郎大概利用了我的大意,想打時間差,十天可能是個幌子?!?p> ·
----
$$ 08 $$
接著,王母有鎮(zhèn)定下來:
“牛郎啊牛郎”王母自言自語,“你這題目雖難,但天庭人才輩出,可不是吃素的?!?p> “傳令,召集天庭數(shù)學(xué)專家,爭取3天之內(nèi)解決問題!”
“就算織女再快,也終究是一個人,不可能超過我這一群專家的?!?p> ·
專家們整整想了3天,并無找到解決方案。
最終,專家們只得派代表想王母請罪:“王母息怒,臣等無法解答。”
這讓王母怎么息怒:“一群廢物!這都五天過去了,都讓你們耽誤了!”
數(shù)學(xué)專家說:“雖然我們解不出來,但是我們可以肯定,織女也解不出來?!?p> 王母滿是疑惑:“為什么?”
“因為,質(zhì)因數(shù)分解只能逐個試商,就算集合整個天庭之力,也至少要計算百年。”
·
王母再次拍桌子:“既然是無解的問題,你們怎么不早說!”
“那您也沒早問呀……”
忽然大殿之外傳來喊聲:“報——”
一名探子快步走入堂前,呈上文書:“下午織女發(fā)起了全網(wǎng)廣播,怕是牛郎也已經(jīng)收到了?!?p> 王母打開文書,只見上面寫著:
·
牛郎:
我思索3天自認(rèn)為算不出來,你既來信,必有解答之法。
我按你的格式,將日期藏在質(zhì)數(shù)后兩位,并計算得到了2個數(shù)字 n e,
現(xiàn)在換你來求解日期了呢~
·
王母不甘心,同時也覺得牛郎不可能比自己的專家都厲害。
王母把新的文書扔給專家代表:“再給你們?nèi)欤獠怀鰜砭筒挥没貋砹?。?