Encryption
具有不同一次性密碼的兩個人可以安全地交換這樣的消息嗎?
Alice 有一條消息,生成一次性便箋,加密她的消息並將其發送給 Bob。Bob 生成他自己的一次性密碼本,再次加密消息,然後將其發送回 Alice。然後,Alice 使用她的一次性密碼本解密此消息,並將其發送回 Bob,然後 Bob 最後一次使用他的一次性密碼本解密它。
我看到這種技術的唯一問題是:
- 它很容易受到中間人的攻擊。
- 它需要在發件人和收件人之間來回發送消息兩次。
- 如果您想用它與多人交流,它的擴展性就不好。
- 需要一種生成加密安全隨機數的方法。
這種加密方法有名字嗎?
如果我們忽略它容易受到中間人攻擊的事實,這種加密資訊的方法在理論上是否安全?
為什麼這種方法沒有被廣泛使用,即上面列出的哪些問題或其他問題使這種方法無法用於生產?
一般方案稱為三通協議,適用於所有可交換密碼。其中一些是安全的,但異或(和模組化添加)是不安全的選擇。
你的方案:
A->B: $ c_1 = m \oplus a $
B->A: $ c_2 = c_1 \oplus b $
A->B: $ c_3 = c_2 \oplus a $
B 計算 $ m = c_3 \oplus b $
攻擊者看到所有 $ c_1 $ , $ c_2 $ 和 $ c_3 $ . 所以他們可以計算:
$ c_1 \oplus c_2 \oplus c_3 = (m \oplus a) \oplus c_2 \oplus (c_2 \oplus a) = m $
從而恢復消息。