一 什麼是一次性密碼本
只要通過暴力破解法對金鑰空間進行遍歷,無論是什麼密文總有一天都能夠被破譯,然而,一次性密碼本是個例外。即使用暴力破解法遍歷整個金鑰空間,一次性密碼本也絕對無法被破解。
二 一次性密碼本的加密
三 一次性密碼本的解密
四 一次性密碼本是無法破譯的
我們假設對一次性密碼本的密文嘗試進行暴力破解,那麼總有一天我們會嘗試到和加密時相同的金鑰,也就能解密出明文midnight,這是毋庸置疑的事實。然而即使我們能夠解密出midnight這個字元,我們也無法判斷它是否是正確的明文。
所謂暴力破解,就是按順序將所有的金鑰都嘗試一遍,並判斷所得到的是不是正確的明文的方法。然而,在一次性密碼本中,由於我們無法判斷得到的是不是正確的明文,因此一次性密碼本是無法破譯的。
五 為什麼一次性密碼本沒有被使用
1 金鑰配送問題
如果能有一種方法將金鑰安全地傳送出去,那麼豈不是也可以用同樣的方法來安全傳送明文嗎?
2 金鑰儲存問題
如果有辦法安全儲存與明文一樣長的金鑰,那不是也有辦法安全儲存明文本身嗎?也就是說,從一開始我們根據就不需要密碼。
3 金鑰的重用
在一次性密碼本中絕對不能重用過去用過的隨機位元序列,一次性密碼本中的「一次性」也正是由此而來。這是因為作為金鑰的位元序列一旦洩密,過去所有的機密通訊內容將全部被解密。
4 金鑰的同步
當明文很長時,一次性密碼本也會跟著變長。如果明文是乙個大小為100mb的檔案,則金鑰的大小也一定是100mb。而且在通訊過程中,傳送者和接收者的金鑰的位元序列不允許任何錯位,否則錯位的位元後的所有資訊將無法解密。
5 金鑰的生成
在一次性密碼本中,需要生成大量的隨機數。這裡的隨機數並不是通過電腦程式生成的偽隨機數,而必須是無重複性的真正隨機數。
多次使用同乙個一次性密碼本的破解
正確地使用一次性密碼本進行加密,在理論上是無法破解的。需要注意的是,許多對稱式加密演算法本質上是通過一定的演算法來將金鑰作為偽隨機數發生器的種子來產生 近似於 一次性密碼本的序列,因此類似的問題也需要予以重視 不要重複使用同乙個一次性密碼本 或金鑰 來加密不同的明文資料。以基本的一次性密碼本加密演算...
密碼學第三講 對稱密碼(XOR與一次性密碼本)
計算機的操作物件並不是文字,而是由0和1排列而成的位元序列。無論是文字,影象,還是程式,都是由位元序列來表示的。加密就是將表示明文的位元序列轉換為表示密文的位元序列。xor全稱為exclusiveor,中文叫異或。舉例 0 xor 0 0 0 xor 1 1 1 xor 0 1 1 xor 1 0 ...
一次性成功
沒有人能隨隨便便成功 最近察覺到自己思維的乙個誤區,希望實現的目標第一次就成功,順順利利跳過失敗。這是大家都想要的結局,美好的期望總被現實的波浪所淹沒,因為失敗是避免不了的。一次性成功的想法導致焦慮,困惑,自我懷疑,這個時候如果放低要求換個角度思考,第一次失敗又如何,如果失敗了倒下了哪有怎樣?只要自...