13、低内存并行版Matsuo、Chao和Tsujii算法解析

低内存并行版Matsuo、Chao和Tsujii算法解析

1. 引言

小亏格曲线的雅可比矩阵如今已成为公钥密码学的重要工具,计算此类曲线的Zeta函数仍是该领域的核心问题之一。对于椭圆曲线,Schoof算法及其后续改进给出了初步解决方案;若定义域的特征较小,Satoh算法能显著提升计算速度。对于高亏格曲线,在小特征情况下,基于Mestre或Kedlaya算法的方法在理论和实践上都能给出令人满意的解决方案,但在大特征情况下,问题仍较为棘手。理论上,Pila算法及其改进能给出多项式时间的解决方案,但目前仅在亏格为2的曲线上转化为实用算法。

本文聚焦于类似Schoof的亏格2算法的最后部分。计算雅可比矩阵阶数的基本任务是计算特征多项式对足够多小素数或素数幂的约简,可通过研究雅可比矩阵的挠得到相关信息,中等特征时还可使用Cartier - Manin算子。利用Weil界收集模信息,直到特征多项式已知,但在最后阶段切换到小步大步(BSGS)算法更为高效。

若特征多项式已知模某个整数,使用标准BSGS技术计算雅可比矩阵阶数的时间复杂度与相关参数有关。2002年,Matsuo、Chao和Tsujii提出的算法(简称MCT算法)能加速BSGS计算,但空间复杂度较高,最大示例需12GB中央内存。标准BSGS技术有低内存、可并行的概率性变体,本文应用Matsuo等人的思想改进了相关变体,得到一个概率性算法,预期运行时间约为MCT算法的3倍,但几乎无需内存且可直接并行。

2. 亏格2超椭圆曲线的MCT算法

2.1 弗罗贝尼乌斯自同态的特征多项式

设$C$是定义在有限域$\mathbb{F}_q$上的亏格2曲线,其雅可比矩阵群记为$J(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值