A. 七大數學難題哪些與密碼學有關
代數:在古代,當算術里積累了大量的,關於各種數量問題的解法後,為了尋求有系統的、更普遍的方法,以解決各種數量關系的問題,就產生了以解方程的原理為中心問題的初等代數。 代數是由算術演變來的,這是毫無疑問的。
B. 密碼學基礎一
一、 愷撒密碼
1.簡單介紹
凱撒密碼是古時候歐洲常用的一種加密方式:英文一共26個字母,它的加密方式是將這26個字母分別平移固定的位數,
假設位數=3,那麼A=>D,B=>E,如下圖:
如果想加密一個單詞HELLO,根據上面的唯一對比,加密後的結果應該是LHOOR。顛倒字母後的順序,使得常人無法讀懂這些語句或者單詞。如何解密呢,也很簡單,只需要將收到的單詞向前平移3個位置,就可以恢復到加密前的單詞HELLO了。
2.破解
破解凱撒密碼的方法很多,有一種暴力破解的方式,就是「遍歷」。根據凱撒密碼的加密方式,平移固定的位數,26個英文字母總共可以平移的方式是26種,假如位數n=26,其實相當於沒有平移,A=>A,循環了一次。
進行暴力破解:
n=1:LHOOR=>KGNNQ
n=2:LHOOR=>JFMMP
n=3:LHOOR=>HELLO
這樣就破解了,可以推算發位數n=3,其實就是秘鑰=3,
最多嘗試25次即可推算出加密的n值等於多少(當然這里只是討論原理,不排除真實情況,可能湊巧某一個錯誤的n值解密出來的也是一個完整的單詞或一段話的情況)。
二、 替換密碼
1.簡單介紹
替換密碼和愷撒密碼原理有些類似,個人感覺相當於愷撒密碼的變種,替換密碼增加了字母替換的隨機性.
舉個簡單的例子,A=>G,B=>X,C=>K
這里ABC..等26個字母都隨機指向了「密碼」本上的另一個隨機的字母,這下就比較難反向推算出「秘鑰」是多少了,數量級完全不一樣。
簡單的算一下可能存在的情況:
A=>有25種表示方式BCD…
B=>有除A以外24種方式表示CDE..
…
那麼秘鑰的存在情況是:
N=25!種方式,遠遠大於愷撒密碼的26。
2.破解
面對25!數量級的加密方式,使用暴力破解的方式不再實用了,但是可以使用另一種方法,統計學
通過大量掃描英文書籍,可以得出如下結果(,這里只探究原理,並不追究這個統計的准確性):
26個字母在日常用語中的使用頻率並不一樣,比如字母E的使用頻率遙遙領先,字母Z使用頻率最低,這個相當於語言所殘留在文字中的指紋,很難察覺但是真實存在。
根據這個原理,掃描「隨機密碼」文本,統計出各個字母的使用頻率分布,找出使用頻率最高的那個字母,極可能就是加密後的字母E。
3.隨機加密還有很多變種,雙重加密,擦掉「指紋」使得加密方式更進一步加固,不得不感嘆古人的智慧,數學之美真奇妙。
C. 密碼學考研難度大嗎
1、密碼學專業考研難度取決於很多因素,比如考研錄取分數線、專業排名、學校排名,考研錄取比例、招生人數、學校知名度等等很多因素,而且難度的大小直接影響到考生是否能夠考研成功,所以考研難度大小是考研過程中不可忽略的一個因素。
2、 密碼學專業的學校排名是不可忽略的一個因素,專業排名靠前,專業熱門意味著競爭的激烈,勢必會增加考研的難度。另外跨專業也會增加考研的難度,尤其是文科跨理科報考研究生,對於只有一年復習的考研來說,難度還是很大的。
3、希望考生通過與研究生師哥師姐交流、考研論壇交流、網路知道交流、考研群里交流等多種渠道,一定要在確定報考院校和專業之前對每個學校的密碼學專業考研難度進行一個全面的分析,只有這樣才可能最終成功的成為研究生。
D. 密碼學問題求求求哪位大佬能解啊
全部用大寫字母(或小寫字母)構造口令,一共有26!-(26-n)!種口令,最多需嘗試26!-(26-n)!次,如果不成功,說明該系統區分大小寫。
所以最大嘗試次數為26!-(26-n)!
E. 密碼學怎麼學 感覺很難學
需要找本好書看,數學基礎當然不能少
推薦《密碼學引論》by 馮登國,裴定一
如果是英文教材先看《Handbook of Applied Cryptography》by A. Menezes, P. van Oorschot, and S. Vanstone, CRC Press, 1996.
都是好書,入門很好!
F. 密碼學:RSA(一)
密碼學是指研究信息加密,破解密碼的技術科學。 密碼學 的起源可追溯到2000年前。相傳古羅馬名將凱撒大帝為了防止敵方截獲情報,用密碼傳送情報。凱撒的做法很簡單,就是對二十幾個羅馬字母建立一張對應表。這樣,如果不知道 密碼本 ,即使截獲一段信息也看不懂。
從凱撒大帝時代到上世紀70年代這段很長的時間里,密碼學的發展非常的緩慢,因為設計者基本上靠經驗。沒有運用 數學原理 。當今的密碼學是以數學為基礎的。
上世紀70年代產生的一種加密演算法。其加密方式比較特殊,需要兩個密鑰: 公開密鑰 簡稱 公鑰 ( publickey )和 私有密鑰 簡稱 私鑰 ( privatekey )。 公鑰加密,私鑰解密;私鑰加密,公鑰解密 。這個加密演算法就是偉大的 RSA 。
要實現加密和解密,那麼就應該用一種 加密容易,破解很難 的數學運算。這個時候就用到了 mod 運算(時鍾演算法)。
如果用質數做模數( 17 ),找一個比這個模數小的數 3 ,那麼有如下演算法:
3 的 x 次方模以 17 結果永遠在 1~16 之間,在這里 3 為 17 的 原根 。由於知道結果反推 x 需要一個一個實驗並且不唯一,所以很難反推出原來的值。這里 模數 變大反推破解難度就很大。這就是離散對數問題。
任意給定正整數 n ,在 <= n 的正整數之中,有多少個與 n 構成互質關系?
計算這個值的方式叫做 歐拉函數 ,使用: φ(n) 表示
根據以上兩點得到: 如果 N 是兩個互質數 P1 和 P2 的乘積則:
φ(N)=φ(P1)* φ(P2)=(P1-1)*(P2-1)
如果兩個正整數 m 和 n 互質,那麼 m 的 φ(n) 次方減去 1 ,可以被 n 整除。
歐拉定理的特殊情況:如果兩個正整數 m 和 n 互質,而且 n 為質數!那麼 φ(n) 結果就是 n-1 。
歐拉定律 m φ(n) % n ≡ 1 (m和n互質)
由於 1 k % n ≡ 1 ,可以得到:
由於 1*m ≡ m ,可以得到:
驗證:
⚠️ 注意:換算的過程中, m 要小於 n 才會成立 。大於則相當於多饒了一圈。
如果兩個正整數 e 和 x 互質,那麼一定可以找到整數 d ,使得 ed-1 被 x 整除。
那麼: d 就是 e 對於 x 的 模反元素
則可以得到以下公式:
假設商為 k 則可以得到以下公式:
當 φ(n) 為 x 時,則:
驗證:M:4 , N:15, φ(n): 8 。
通過模反元素假設 E:3, D?
3d -1 = 8k 則 d = (8k + 1)/3 k = 4 則 D = 11,k=7 則 d = 19
整個推導過程如下:
解決密鑰傳遞的保密性問題
原理:
通過 迪菲赫爾曼密鑰交換 拆分了m e*d % n ≡ m。
總共生成 6 個數字: p1、p2、n、φ(n)、e、d
驗證
M :3 、12 ,N: 3 * 5 = 15,φ(n):8,
假設E:3,則通過模反元素計算得到 D:11,19
除了公鑰用到了 n 和 e 其餘的 4 個數字是不公開的。
目前破解 RSA 得到 d 的方式如下:
1、要想求出私鑰 d 。由於 e*d = φ(n)*k + 1 。要知道 e 和 φ(n) ;
2、 e 是知道的,但是要得到 φ(n) ,必須知道 p1 和 p2 。
3、由於 n = p1*p2 。只有將 n 因數分解才能算出。
這個時候就需要窮舉了,很難破解。
RSA 由於 m 要小於 n ,所以每次加密數據小,需要分段加密,效率不高。一般情況下用來加密大數據對稱加密的 key 。
由於 Mac 系統內置 OpenSSL (開源加密庫),我們可以直接在終端上使用命令進行 RSA 操作。 OpenSSL 中 RSA 演算法常用指令主要有三個:
生成RSA私鑰,密鑰長度為1024bit
e:65337(publicExponent)
通過公鑰加密數據,私鑰解密數據
加密:
解密:
完整命令:
enc.txt 文件 128 位元組, dec.txt 文件 20 位元組。
通過公鑰加密數據,私鑰解密數據
這個時候就變成了簽名和驗證了。
簽名:
驗證:
整個文件目錄如下:
G. 跪求密碼學高手!!急!!
好復雜呀,我不董呀
H. 密碼學試題
gcd(847,390)=1
163*847-354*390=gcd(847,390)=1
t=163
只做出了你的第一行。。。獻丑了
I. 密碼學挑戰賽難嗎
密碼學挑戰賽難。
畢竟是挑戰全國高等院校的學生。全國各高等院校全日制在校專科生、本科生、碩士研究生均可報名,專業不限。
「密碼學」學科是軍事學門類一級學科「軍隊指揮學」下的二級學科,也是在全國高校布點極少的學科之一。密碼學是研究編制密碼和破譯密碼的技術科學。
J. 密碼學怎麼學 感覺很難學
如果是高中基礎,先學高數、概率論數理統計、離散數學(最好啃掉形式語言與自動機和計算復雜性理論,否則後面肯定得補),最好會寫點代碼(Matlab也行,SAGE也行),然後啃密碼學入門書籍,到能看懂會議文章的程度怎麼地也得2年(每天6-8小時學習)。能做出點自己的東西,呃,通常得積累到等同於信息安全相關專業的碩士畢業的程度,時間因個人才能而定。從工科大三的基礎開始算的話,半年啃完Introction to Cryptography, 再花半年到一年啃完諸如Zero-Knowledge-Proof, BR-Model,IBE的東西的話,就能看懂不少新的成果和經典的文章了。接下來得接觸Cryptanalysis的東西,這時候,就必須補初等數論(包括橢圓曲線)、群論,否則針對加密演算法的數學攻擊那看得是一頭霧水。