Commutative-Encryption

是否有傳遞密碼(對稱和非對稱)

  • February 18, 2016

假設 Alice 擁有已使用 Bob 的密鑰加密的資訊。她希望 Bob 在不知道他剛剛解密的內容的情況下解密它。所以她用她的密鑰加密並發送給他,他用他的密鑰解密,然後發回,她用她的密鑰解密。

是否有一個可以使用的分組密碼?

實際上,有 Pohlig-Hellman 密碼(可以追溯到 70 年代)可以做到這一點。它是這樣工作的:

  • 有一個大的公共黃金地段 $ p $ (DLOG 問題很難解決)
  • 密鑰是一個整數 $ x $ 這是相對質數 $ p-1 $
  • 加密消息 $ M $ 帶鑰匙 $ x $ , 我們計算 $ C = M^x \bmod p $
  • 解密消息 $ C $ 帶鑰匙 $ x $ , 我們計算 $ M = C^{x^{-1} \bmod p-1} \bmod p $

應該清楚的是,加密和解密過程(對於固定密鑰)是彼此相反的,這使得 Alice 和 Bob 可以精確地按照您的要求進行操作;如果愛麗絲有 $ M^b $ ,她可以給鮑勃, $ (M^b)^a = M^{ab} $ ; Bob 計算 $ (M^{ab})^{b^{-1}} = M^a $ ,然後將其發回給 Alice,Alice 可以恢復 $ M $

您正在尋找的術語是commutative encryption

例如,以下內容適用*於計數器模式下*的任何分組密碼,它使用交換操作(異或)進行加密:Alice,給定密文 $ (\mathit{IV}_0,\mathit{cipher}_0) $ 在 Bob 的密鑰下對應於一些 $ \mathit{message} $ , 對密文進行超級加密 $ \mathit{cipher}_0 $ 使用新的初始化向量 $ \mathit{IV}_1 $ 就像她用任何明文來獲得新的密文一樣 $ \mathit{cipher}_1 $ , 並傳遞密文 $ (\mathit{IV}_0,\mathit{cipher}_1) $ 給鮑勃。他繼續使用他的密鑰對其進行解密以獲得結果 $ \mathit{cipher}_2 $ ,也就是現在原來的加密 $ \mathit{message} $ 在具有初始化向量的 Alice 的密鑰下 $ \mathit{IV}_1 $ . Alice 可以使用她的密鑰來恢復 $ \mathit{message} $ 從 $ (\mathit{IV}_1,\mathit{cipher}_2) $ , 但 Bob 看到的只是他密文的加密 $ \mathit{cipher}_0 $ 以及原始消息的加密(都在 Alice 的密鑰下),這不會對好的密碼(即那些能夠抵抗選擇明文攻擊的密碼)構成安全風險。

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