Elliptic-Curves
尋找特定階的橢圓曲線
我希望將橢圓曲線用於承諾等加密操作。我看到大多數標準橢圓曲線像 $ \operatorname{secp256k1, sect571r1} $ 對應的位長有一定的特定和固定的順序。
但是,我需要一組非標準訂單,比如說 $ q = (2^k)n +1 $ 對於某個 $ k,n $ 為了 $ k =128, 300 $ 等等
有沒有辦法可以生成/形成任何給定順序的橢圓曲線組?當然,我需要在小組中解決離散對數問題。
有許多關於為給定順序尋找曲線的學術著作。
- 1994 - Georg-Johann LayHorst G. Zimmer -在大型有限域上構造具有給定群階的橢圓曲線
開發了一種在大型有限域上構造具有給定群階的橢圓曲線的程序。構造的一般性允許任意選擇所涉及的參數。例如,可以指定橢圓曲線的自同態環的有限域、群階或類號。這對於計算數論和密碼學中的各種應用很重要。
本文解決的任務是;
- 給定一個整數 $ m > 3 $ , 找一個素數 $ p $ 和一個在階有限域 Fp 上的橢圓曲線 E $ #E(\mathbb F_p) = m $ .
- 給定兩個整數 $ n $ 和 $ c_{max} $ , 找到一條橢圓曲線 $ E $ 在有限域上 $ \mathbb F_{2^n} $ 和 $ #E(\mathbb F_{2^n}) = c \cdot q $ 和 $ q $ 一個素數和 $ c \leq c_{max} $ . (注意二元曲線是關閉的)
- 給定一個整數 $ n > 1 $ , 判斷是否存在素數 $ p > 3 $ 和一條橢圓曲線 $ E $ 超過 $ \mathbb F_p $ 有結構 $ E(\mathbb F_p) \sim (\mathbb Z/n \mathbb Z) \times (\mathbb Z/n \mathbb Z) $ .
- 給定一個素數 $ p > 3 $ 和一個整數 $ m $ 和 $ |p+ 1 - m < 2 \sqrt p $ , 建立一個橢圓曲線 $ \mathbb F_p $ 其群階為 m 且自同態環的類數較小。
- 2001 : Erkay Savaş、Thomas A. Schmidt 和 Çetin K. Koç生成素數橢圓曲線
提出了一種用於在有限域上生成已知階橢圓曲線的複數乘法 (CM) 方法的變體。我們在素數曲線順序的輕度限制設置中給出啟發式和時序統計。這些可以被視為證實了 Koblitz 在第一類環境中的早期工作
如果您的案例直接有特定的工作,第一個引用應該會有所幫助。
- 2007 : Reinier Broker, Peter Stevenhagen建構素數階橢圓曲線
我們提出了一種非常有效的算法來構造橢圓曲線 E 和有限域 F 使得點群的階 $ E(F) $ 是一個給定的素數 N。啟發式地,這個算法只需要多項式時間 $ \mathcal{\tilde{O}}((\log N)^3) $ ,並且它是如此之快,以至於它可以有利地用於解決尋找具有規定大小的素數階點群的橢圓曲線的相關問題。我們還討論了使用高級模組化函式以通過大常數因子減少執行時間的影響,並表明最近模組化曲線的邊角性界限意味著對可以獲得的時間減少的限制。