Public-Key
同態加密:密文的相等性測試如何工作?
假設我們有一個非對稱密碼系統 $ H $ 這對於某些函式是同態的 $ F $ .
- 愛麗絲加密消息 $ m $ 用她的私鑰 $ e $ 在密碼系統中 $ H $ 並獲得密文 $ C = H(M) $
- 愛麗絲發送 $ C $ 給鮑勃
- Bob 計算 $ F $ 超過 $ C $ 並獲得 $ C’ = F(C) $
- 鮑勃發送 $ C’ $ 給愛麗絲
- 愛麗絲想檢查是否 $ C’ $ 等於某個數字 $ n $ .
假設解密操作成本很高,比加密成本高得多。Alice 可以通過比較加密來檢查相等性嗎? $ n (H(n)) $ 和 $ C’ $ ? 那可能嗎?使用哪個同態密碼系統?
不,您想要做的事情是不可能的,因為加密是隨機的:如果您要多次加密同一消息,您會得到許多不同的密文。因此,Alice 不能只比較兩個密文是否相同;即使它們解密為相同的東西,這兩個密文也會有所不同。
由於 Alice 加密了消息 $ m $ 她知道明文。現在 Bob 用 Alice 的公鑰計算 F。Alice 知道底層同態方案的密鑰並解密 $ C’ $ 並獲得基礎值。這就是同態方案的運作方式