本科畢業設計作完以後,一直以爲本身須要系統來學習一下密碼學,密碼學是一個古老的學科,前人已經研究了太多太多,而伴隨着量子計算的逐漸發展,以前制定出來的密碼算法都面臨着被淘汰的危險。今天記錄一下根據密碼分析者知道信息的多少,密碼學中分爲常見的幾種攻擊模式,以及它們主要用於什麼場合。算法
在介紹攻擊模式以前,首先須要瞭解攻擊者想要的是什麼?它們想要明文消息,想知道加密的算法。然而,更多的是密鑰。大多數狀況下,咱們認爲加密算法是公開的。函數
惟密文攻擊是最容易防範的,密碼分析者已知的信息是「加密算法」和「密文」—最少的信息量。這種狀況其實是比較少見的,由於攻擊者面對實際的狀況多多少少會得知一些明文的數據格式或者能捕獲到一些明文以及其對應的密文。學習
已知明文攻擊中分析者還得知了「用與待解的密文同一密鑰加密的一個或多個明密文對」。比較常見的例子是「可能詞攻擊」,攻擊者處理一些特定的信息,他可能知道其中的一些信息,好比電子金融消息每每有標準化的文件頭或者標誌,一個完整的會計文件放在文件最前面的關鍵詞應該是固定的。這樣大大減少了破解的難度,並且在這種環境下咱們要求加密必定不能是線性的,不然就能夠經過一部分對應關係推出了全局的關係,保密性將不復存在。加密
選擇明文攻擊中分析者能夠獲取「自行選擇的一些明文以及對應的明文(在統一密鑰環境下)」。若是分析者可以經過某種方式得到信源系統,讓發送方在發送的消息中插入一端由他選擇的信息就能夠實現選擇明文攻擊。一個例子就是差分密碼分析(經過分析特定明文差分對相對應密文差分影響來得到儘量大的密鑰。它能夠用來攻擊任何由迭代一個固定的輪函數的結構的密碼以及不少分組密碼(包括DES),它是由Biham和Shamir於1991年提出的選擇明文攻擊。- 來自百度百科)設計
詳細能夠了解差分分析.get
選擇密文攻擊中分析者能夠選擇得到一些密文以及對應的明文,這種攻擊主要攻擊公開密鑰密碼體制,特別是攻擊其數字簽名。it
此時攻擊者得到了更強的攻擊能力,在攻擊時不只能夠構造多個明文獲取相應的密文,還能夠構造多個密文獲取相應的明文。也就是以上兩種攻擊的結合體。百度