12、椭圆曲线点数计算算法:Schoof算法及其扩展

椭圆曲线点数计算算法:Schoof算法及其扩展

1. 引言

在密码学应用中,生成适合的椭圆曲线依赖于解决大有限域上任意椭圆曲线的点数计算问题,即精确确定此类曲线上有理点的数量。本文将介绍解决该问题的成功方法,主要关注特征为2的域和大素数阶 $p$ 的域这两种情况。虽然椭圆曲线点数计算的很多理论具有普遍性,但针对这两种情况发展出的技术存在差异。

2. 不同特征域下的椭圆曲线方程
  • 特征为2的域 :我们只关注非超奇异曲线,曲线方程形式为 $Y^2 + XY = X^3 + a_5$,其中 $a_5 \in F_{2^n}$。因为扭转曲线的群阶很容易推导,所以考虑这种形式的方程就足够了。
  • 奇特征大于3的域 :感兴趣的曲线方程形式为 $Y^2 = X^3 + aX + b$,其中 $a, b \in F_q$。
3. Schoof算法
3.1 算法起源与复杂度

高效的通用点数计算算法起源于Schoof的工作。Schoof将点数计算方法的复杂度从应用BSGS算法得到的 $O(q^{1/4 + \epsilon})$(对于任意正的 $\epsilon$)显著降低到 $O(\log^8 q)$。Schoof算法是当前所有高效点数计算方案的基础。

根据Hasse定理,$#E(F_q) = q + 1 - t$,其中 $|t| \leq 2\sqrt{q}$。Schoof算法的核心是确定 $t$ 模素数 $\ell$($\ell \leq R_{max}$)的值,其中 $R_{max

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值