Public-Key

使用 Trace 區分二元擴展域上的橢圓曲線中的點

  • February 21, 2022

讓 $ E $ 是一條橢圓曲線 $ 𝑦^2 + xy ≡ 𝑥^3+𝑎𝑥^2+𝑏 $ (Weierstrass 曲線)(在這種情況下,具有特徵 2)在二元擴展場上 $ 𝐺𝐹(2^{m}) $ 用構造多項式 $ 𝑓(𝑧) $ 是一個不可約的原始多項式 $ GF(2) $ , 然後讓 $ P(x_p,y_p) $ 成為曲線上的一個點。

我已經看到各種實現和討論(就像底部的這個答案)提到了這些點 $ P $ 可以用場跡函式來區分,並且“可以證明,對於曲線的素數階子群中的點, $ x_p $ 座標必須等於軌跡 $ a $ 從橢圓曲線方程“,即

$ Tr(x_p) = \begin{cases} \mbox{a,} & \mbox{if } P \in E \ \mbox{1,} & \mbox{otherwise} \end{cases} $

儘管如此,我還是找不到任何相關的參考書目可以從數學的角度清楚地解釋為什麼這是成立的。誰能提供這背後的相關理論?此外,Trace 能夠反映點是否在曲線上所需的基本限制和條件是什麼?

感謝您的時間,

這是我可以根據這裡的橢圓曲線註釋得出的結論:https ://crypto.stanford.edu/pbc/notes/elliptic/explicit.html ,給出一個點 $ P=(x_1,y_1) $ 和由定義的曲線 $$ Y^2+a_1XY = X^3+a_2X^2+a_4X+a_6 $$ 然後 $ x $ - 座標 $ 2P $ 是(誰)給的

$$ x_2 = \lambda^2 + a_1\lambda - a_2 - 2x_1 $$

在你的情況下, $ a_1=1 $ . 還 $ 2x_1=0 $ 因為該欄位具有特徵 2,我們可以出於相同的原因將所有減號切換為加號。因此,公式變為:

$$ x_2=\lambda^2 + \lambda + a $$

的踪跡 $ x_2 $ 將會 $ \text{tr}(\lambda^2) + \text{tr}(\lambda)+\text{tr}(a) $ . 自從 $ \text{tr}(\lambda^2) = \text{tr}(\lambda) $ , 這表示 $ \text{tr}(x)=\text{tr}(a) $ . 因此,對於任何一點 $ P $ 在曲線上,如果 $ P=2Q $ 對於一些 $ Q $ ,那麼軌跡 $ P $ 的 $ x $ -座標等於軌跡 $ a $ .

如果我們有一個奇階循環子群 $ n $ , 然後 $ 2 $ 有一些逆 $ 2^{-1} $ 模組 $ n $ . 因此,從任何一點開始 $ P $ 在這個子組中,我們知道 $ 2(2^{-1}P)=P $ , 所以存在一個點 $ Q=2^{-1}P $ 這樣 $ P=2Q $ ,因此它的 $ x $ -座標具有相同的軌跡 $ a $ .

通常,子群的每個元素 $ 2E(GF(2^m)) = {x+x : x\in E(GF(2^m))} $ 都會有同樣的痕跡。

其他點呢?我不知道。這可能是要點 $ P $ 不等於 $ 2Q $ 對於任何 $ Q $ 仍然可以有跟踪等於 $ \text{tr}(a) $ ,或者你可以證明他們不能。

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