One-Time-Pad

在隨機數據上擴展 OTP?

  • April 27, 2016

如果 Alice 和 Bob 都以共享的 OTP 開始 $ P_0 $ ,它是 256 字節長,而 Alice 想要發送一個 512 字節的消息,用標準 OTP((a+b)%256或類似方法)發送前 256 個字節是否安全,然後再生成另外 256 個字節的真正隨機性( $ P_1 $ ),通過 OTP 執行它並發送它的加密形式。對第二個 256 字節的塊重複,然後 $ P_1 $ 等。Bob 然後解密前 256 個字節 $ P_0 $ 並得到 $ P_1 $ 從第二個 256 字節開始。沖洗並重複等。

這對被動的夏娃來說是安全的嗎?如果不是,為什麼不呢?

不,那行不通。OTP 是安全的,因為明文知識不會為您提供有關密鑰的任何有用資訊。這是因為密鑰的位(例如 $ P_0 $ ) 永遠不會用於加密其他任何東西。

如果您以某種方式重用密鑰,那麼明文的洩漏將導致 $ P_0 $ . 洩漏 $ P_0 $ 直接洩漏 $ P_1 $ . 即通過加密的資訊而不是完美的安全性 $ P_1 $ 現在直接依賴於明文的安全性和 $ P_0 $ .

只有在密鑰流中的位相互獨立時,OTP 才是完全安全的。OTP 不允許在這方面使用捷徑。

引用自:https://crypto.stackexchange.com/questions/27285