2015-12-09 69 views
0

在一次性密碼系統中,密鑰生成算法可能會輸出全零字符串,在這種情況下,任何消息的加密都只是消息本身。因此,爲了提高安全性,她建議修改密碼系統,以便重新採樣密鑰,直到事實並非如此。如何改進一次性密碼系統?

我不知道這個算法是否增加了安全性。

算法K:

Do K ←$ {0, 1}^k until k doesnt equal to 0^k 
    Return K 

太謝謝你了。

+0

這肯定會在http://crypto.stackexchange.com上得到更好的答案。其實它已經有了!請參閱Crypto.SE上的[一次性密鑰和零密鑰](http://crypto.stackexchange.com/questions/3992/one-time-pad-and-zero-key)。 – apsillers

+2

我投票結束這個問題作爲題外話題,因爲它是關於理論密碼問題,而不是關於編程問題。 – apsillers

+0

謝謝!我沒有意識到有一個加密堆棧。 – SongTianyang

回答

-1

不,它不會。這只是消除了攻擊者必須處理的一種情況,現在攻擊者開始使用額外的信息,否則它們不會有這種情況 - 輸入不可能與輸出相同。

您可以對任何墊進行相同的說法,而不僅僅是全零。想象一下,我生成一些隨機墊。我可以說:「嘿,我們不應該允許這個打擊墊,因爲攻擊者可能首先檢查這個打擊墊,如果我們碰巧使用它,他們會在第一次嘗試時使用它。」

如果攻擊者先檢查全零攻擊墊,那麼攻擊者首先檢查其他任何打擊墊都不會有利於攻擊者。對於所有可能的焊盤,任何特定焊盤正確的概率是相同的。