Algorithm-Design

為什麼解決底層多項式系統會“破壞”多元密碼系統

  • January 27, 2021

我想知道為什麼解決多項式系統(直接或間接)“破壞”多元密碼系統作為數字簽名。

我意識到確切的原因因係統而異,但總的來說,據我所知,它允許攻擊者使用不屬於他們的私鑰簽署消息。我在正確的軌道上嗎?

執行 HFEv、FLASH 和 Quartz 等數字簽名的多元加密方案有一些共同點。與像在公共多元多項式的普通密碼系統中那樣加密數據相反 $ P(X) $ 給出為:

$$ P(X) = P(p_1(x_1,\ldots,x_n),\ldots,p_n(x_1,\ldots,x_n)) $$

您輸入明文位 $ x=(x_1,\ldots,x_n) $ 進入 $ P(X) $ 正確的?好吧,在處理數字簽名時,我們會做相反的事情。這是,因為我們是建築的所有者,給定 $ Y=H(m || salt) $ 在哪裡 $ m $ 是一條消息,我們可以找到發送的明文元組 $ X $ 至 $ Y=H(m || salt) $ 通過反轉結構:

$$ X=P(Y)^{-1} = S^{-1} \circ \varphi^{-1} \circ F^{-1} \circ \varphi \circ T^{-1}(Y) $$

這顯然會產生 $ X $ 這樣 $ P(X)=Y $ . 現在 Alice 發送元組 $ (m,salt, Y,X) $ Bob 驗證為 $ P(X)=Y=H(m||salt) $ .

因此,如果 Eve 想要偽造數字簽名來欺騙 Bob 認為她是 Alice,那麼 Eve 必須解決 $ \mathcal{MQ} $ -問題或多項式的同構( $ \mathcal{IP} $ ) 這兩者都相當困難。

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