Modular-Arithmetic

有沒有列出循環群的某些元素的快速方法?

  • February 5, 2020

我正在研究應用密碼學,偶然發現了以下問題,以練習有關一致性、組等的知識。

“列出所有元素 $ x $ , 在哪裡 $ x^2 = 2 $ 在 $ \mathbb{Z}_{31} $

好的,所以天真的方法是迭代組,將元素與自身相乘並檢查其剩餘模數 $ 31 $ 將會 $ 2 $ .

因此,我們正在搜尋具有二次餘數的每個元素 $ 2 $ 在 $ \mathbb{Z}_{31} $ .

是否有任何“筆和紙”解決方案可以做到這一點,而不必迭代每個元素?有沒有可以在這裡使用的定理?

因為這是一個域,所以你知道多項式 $ x^2-2=0 $ 最多可以有 2 個根,僅此而已。您可以使用二次公式(因為域上的多項式環是一個整數域),但這需要提取平方根。但它肯定比檢查所有元素更有效。

還有如果如果 $ a $ 在 $ x^2-a $ 是一個正方形,那麼你可以考慮 $ (x^2-a)=(x-b)(x+b) $ 在哪裡 $ b^2=a. $

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