Diffie-Hellman

為什麼在 diffie-hellman 中選擇的私鑰小於選擇的素數?

  • October 1, 2020

由於公鑰計算為 Y=(alpha^private-key)mod(chosen prime) 並且 alpha 是素數的原始根,所以當 Y 成為公鑰時,私鑰可以很容易地計算出來,對吧?因為有一個唯一的私鑰小於滿足等式的所選素數。我想我在這裡遺漏了一些東西。請幫忙。

由於公鑰計算為 Y=(alpha^private-key)mod(chosen prime) 並且 alpha 是素數的原始根,所以當 Y 成為公鑰時,私鑰可以很容易地計算出來,對吧?

人們當然希望至少對於我們選擇的“選擇的素數”來說,它不能輕易計算出來。

因為有一個唯一的私鑰小於滿足等式的所選素數。

證明方程有解和證明解是有區別的。方程有解可以用比較簡單的數論來證明;至於找到那個解決方案,最知名的算法

$$ 1 $$為非結構化解決它$$ 2 $$的值 $ p $ 需要超多項式時間,也就是說,它變慢了(因為較大的值 $ p $ 被認為)比任何多項式都快。最大的非結構化 $ p $ 已發布的已解決隨機離散對數問題的長度約為 768 位;我們目前使用的值 $ p $ 至少有 2048 位長(有時更長)。 順便說一句:我們通常不使用 $ \alpha $ 那是一個原始根;我們更喜歡具有大素數順序的值,因為這會洩漏有關我們選擇的私有值的較少數據。


$$ 1 $$:在傳統電腦上(例如您用來閱讀本網站的電腦)。有一種在多項式時間內執行的量子電腦上執行的已知算法;但是我們目前沒有足夠大且足夠可靠的量子電腦來實現該算法)。 $$ 2 $$: 事實證明,如果 $ p-1 $ 沒有任何大的素因數;我們特意選擇 $ p $ 我們在實踐中使用的值,以便 $ p-1 $ 確實有很大的素因數。

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