Three-Pass-Protocol

已知密文和明文,找到對方的三通協議密鑰?

  • August 1, 2017

如果我是參與三通協議的第二方(為簡單起見,假設為 Shamir 的三通協議),則:

  1. Bob 給我發了一個密文
  2. 我將其加密並發回
  3. 他刪除了他的加密並將其發回給我
  4. 我完全解密

使用步驟 1(密文)和 4(明文)中的資訊,我確定 Bob 使用的密鑰有多難?

我知道這是一個有點深奧的案例,但我很好奇。

確定 Bob 使用的密鑰對我來說有多難?

這本質上是離散對數問題;Bob 的鍵是一個值 $ b $ ,他的加密機制是計算值 $ P^b \bmod p $ . 給定 $ P $ , $ P^b \bmod p $ , 恢復 $ b $ 是離散對數的定義。

實際上,你得到了兩對用 Bob 的密鑰加密的值;明文(在第 1 步中加密,在第 4 步中恢復)和交換的密文(在第 2 步中加密並在第 3 步中解密);然而,擁有多對實際上並沒有使離散對數問題變得更容易。

因此,如果組足夠大以使三遍算法安全(例如,足夠大以至於有人聽到步驟 2 和 3 中的值無法恢復 Bob 的密鑰),它也足夠大以使您恢復對稱密鑰也不可行。

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