30、双线性配对密码学中的超椭圆曲线与泰特配对计算

双线性配对密码学中的超椭圆曲线与泰特配对计算

在密码学领域,双线性配对在构建众多公钥协议方面发挥着关键作用。本文将深入探讨双线性配对相关的超椭圆曲线构建方法以及泰特配对的计算,为密码学研究者和开发者提供有价值的参考。

1. 配对友好的超椭圆曲线构建方法

在构建配对友好的超椭圆曲线时,有多种方法可供选择,每种方法都有其特点和适用场景。

1.1 Cocks - Pinch 方法

对于类型为 JC6 的曲线,该方法有特定的输入和输出要求:
- 输入 :无平方因子整数 D(3 不能整除 D)、素数 r 的大小以及嵌入度 k,以满足所需的安全级别(已知 ρ ≈ 4)。
- 输出 :素数阶 r、素数 p 以及雅可比参数 a, b ∈ Fp,使得曲线 C6(Fp) : Y² = X⁶ + aX³ + b 的雅可比具有阶为 r 的子群,并且相对于 r 的嵌入度为 k。

具体算法步骤如下:

1. 重复以下操作:
    2. 选择规定大小的素数 r,使得三次单位根 ω、√D 和 ζᵏ ∈ Fr。
    3. 计算 n = (ζᵏ - ω)/(1 - ω) 和 y = ±(ωζᵏ + ω²)/√D ∈ Fr。
    4. 将 n 和 y 从 Fr 提升到 Z,并设置 p = (3n² + Dy²)/4。
    5. 直到 p ≡ 1 mod 3 且 p 是素数。
6. 运行复乘法(CM)方法,找到迹为 tp² 且 Δ = -3D(ny)² 的椭圆曲线 Ec(Fp²) 的 j - 不变量。具体而言,使用 3D 运行 CM 方法,找到 Weber 多项式模 p 的 2 次或 6 次因子,然后应用合适的变换以获得相应希尔伯特多项式在 Fp² 中的根。
7. 在 Fp² 中求解 j(Ec) = 2⁸3³(2c - 5)³/(c - 2)(c + 2)³,选择解 c ∈ Fp² 使得 c² ∈ Fp。选择 a, b ∈ Fp 使得 (a/c)² 不是立方,且 b = (a/c)²。因此,b 既不是平方也不是立方。
8. 返回 r, p, a, b ∈ Fp

流程图如下:

graph TD;
    A[开始] --> B[选择素数 r];
    B --> C[计算 n 和 y];
    C --> D[计算 p];
    D --> E{p ≡ 1 mod 3 且 p 是素数?};
    E -- 否 --> B;
    E -- 是 --> F[运行 CM 方法];
    F --> G[求解 j(Ec)];
    G --> H[选择 a, b];
    H --> I[返回 r, p, a, b];
    I --> J[结束];
1.2 Brezing - Weng 方法

该方法使用由分圆多项式构建的多项式环,而非有限素域 Fr。参数将是模分圆多项式的多项式,而非模素数的整数。不过,D 的选择受到限制,通常在 1 - 35 的无平方因子范围内,根据嵌入度 5 ⩽ k ⩽ 36 进行选择。

通过在不同的分圆域上进行搜索(使用 Magma)并进行基变换,得到了一些完整的曲线族,其中 ρ ≃ 3,并且恢复了之前论文中提到的构造以及其他嵌入度的新完整曲线族。

部分示例如下:
| 嵌入度 k | D | ρ | r | n | y | t′p² | p | 条件 |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| 22 | 2 | 2.8 | Φ₈₈(x) = x⁴⁰ - x³⁶ + x³² - x²⁸ + x²⁴ - x²⁰ + x¹⁶ - x¹² + x⁸ - x⁴ + 1 | 1/2(x²⁸ - x²² - x⁶ + 1) | 1/2(x¹⁷ + x¹¹) | 1/4(-x⁵⁶ + 2x⁵⁰ - x⁴⁴ + 4x³⁴ + 4x²² - x¹² + 2x⁶ - 1) | 1/8(x⁵⁶ - 2x⁵⁰ + x⁴⁴ + 8x²⁸ + x¹² - 2x⁶ + 1) | x ≡ 1 mod 2 |
| 26 | 2 | 2.33 | Φ₁₀₄(x) = x⁴⁸ - x⁴⁴ + x⁴⁰ - x³⁶ + x³² - x²⁸ + x²⁴ - x²⁰ + x¹⁶ - x¹² + x⁸ - x⁴ + 1 | 1/2(x²⁸ - x²⁶ - x² + 1) | 1/2(x¹⁵ + x¹³) | 1/4(-x⁵⁶ + 2x⁵⁴ - x⁵² + 4x³⁰ + 4x²⁶ - x⁴ + 2x² - 1) | 1/8(x⁵⁶ - 2x⁵⁴ + x⁵² + 8x²⁸ + x⁴ - 2x² + 1) | x ≡ 1 mod 2 |

然而,对于某些嵌入度(如 k ∈ {7, 17, 19, 23, 29, 31}),r 的分圆多项式次数过高,导致选择合适整数 x 使得 p(x) 和 r(x) 为素数且达到所需大小的可能性非常有限,并且 ρ 值接近 4,此时使用类似 Cocks - Pinch 方法可能更合适。

2. D = 1, 2, 3 时的配对友好曲线构造

在不同的 D 值下,超椭圆曲线会有不同的表现和分解情况。

2.1 D = 1 时的情况

当 D = 1 时,形式为 C5(Fp) 且 b 为平方的 2 次超椭圆曲线实际上会分解为 Fp 上的两条非同源椭圆曲线。以椭圆曲线 E1(Fq) 为例,其迹为 tq 且满足 (tq)² - 4q = -y²(即 D = 1),其 zeta 函数为 ZE1(T, Fq) = T² - tqT + q = (T - (tq + iy)/2)(T - (tq - iy)/2)。

4 次韦伊限制 E1(Fq) 的 zeta 函数为 ZJC5(T, Fq) = (T - iα)(T + iα)(T - iα)(T + iα) = (T² - yT + q)(T² + yT + q),其中 α = (tq + iy)/2。这表明得到的雅可比总是分解为 E1(Fq) 的两条 4 次扭转曲线。

2.2 D = 2 时的情况

对于 D = 2,考虑椭圆曲线 E(Fp),其迹为 tp 且满足 (tp)² - 4p = -2y²。8 次韦伊限制 E(Fp) 的 zeta 函数为:
Z(T, Fp) = ((T - ζ₈α)(T - ζ₇₈α)(T - ζ₅₈α)(T - ζ₃₈α))((T - ζ₃₈α)(T - ζ₅₈α)(T - ζ₇₈α)(T - ζ₈α))
= (T⁴ - 2yT³ + 2y²T² - 2ypT + p²)(T⁴ + 2yT³ + 2y²T² + 2ypT + p²)

且 #JC(Fp) = p² + 1 - 2yp + 2y² - 2y = (p - y)² + (y - 1)²,这与在 Fp⁴ 上定义同构时 JC5(Fp) 的阶一致。

2.3 D = 3 时的情况

当 D = 3 时,对于椭圆曲线 E(Fp),其迹为 tp 且满足 (tp)² - 4p = -3y²。12 次韦伊限制 E(Fp) 的 zeta 函数为:
Z(T, Fp) = ((T - ζ₁₂α)(T - ζ₁₁₁₂α)(T - ζ₇₁₂α)(T - ζ₅₁₂α))((T - ζ₅₁₂α)(T - ζ₇₁₂α)(T - ζ₁₁₁₂α)(T - ζ₁₂α))
= (T⁴ - (-p + tp(tp + 3y)/2)T² + p²)(T⁴ - (-p + tp(tp - 3y)/2)T² + p²)

可以解释为 Fp 上两条超椭圆曲线雅可比的 zeta 函数,其阶为 p² + p + 1 - tp(tp ± 3y)/2。为了应用 Cocks - Pinch 或 Brezing - Weng 方法,使用 tp ≡ -ω(ωp - 1)/i mod r,y ≡ -ω(ωp + 1)/√3 mod r,其中 ω 是三次单位根,i 是四次单位根。通过 Brezing - Weng 方法找到了 ρ = 3 的新曲线族。

3. 泰特配对计算

泰特配对在椭圆曲线密码学中具有重要应用,其计算效率与曲线模型的选择密切相关。

3.1 背景知识
  • 泰特配对的定义 :设 E 是定义在有限域 Fq 上的椭圆曲线,r 是群阶 #E(Fq) 的大素因子,k 是 E 相对于 r 的嵌入度。对于点 P ∈ E(Fq)[r] 和函数 fr,P (其除子 Div(fr,P) = r(P) - r(O)),以及点 Q ∈ E(Fqᵏ)/rE(Fqᵏ) 和 μr (Fqᵏ 中 r 次单位根群),简化的泰特配对 er 定义为 er(P, Q) = fr,P(Q)^((qᵏ - 1)/r) ∈ μr。
  • 米勒算法 :如果知道函数 hR,S 使得 Div(hR,S) = (R) + (S) - (S + R) - (O),则可以通过米勒算法迭代计算泰特配对。该算法在第 i 次迭代中计算函数 fi,P 在点 Q 处的求值,其中 Div(fi,P) = i(P) - ([i]P) - (i - 1)(O),fi,P 称为米勒函数。
3.2 雅可比曲线的泰特配对计算

对于雅可比相交曲线和特殊雅可比四次椭圆曲线 Y² = dX⁴ + Z⁴,有不同的计算方法和优化。

  • 雅可比相交曲线 :首次提出在雅可比相交曲线上计算泰特配对。利用群法则的几何解释和雅可比相交曲线的二次扭转,得到了一个加倍步骤公式。对于偶数嵌入度的配对计算,该加倍步骤比使用魏尔斯特拉斯曲线、爱德华兹曲线和雅可比四次曲线时略有效,但仍不具竞争力。
  • 雅可比四次曲线 :改进了米勒算法中在特殊雅可比四次椭圆曲线 Y² = dX⁴ + Z⁴ 上计算泰特配对的加倍和加法步骤。利用雅可比四次曲线与魏尔斯特拉斯曲线的双有理等价性以及特定的点表示,在所有具有四次扭转的曲线中取得了目前最好的结果。具体而言,在米勒算法的加倍步骤中,相对于魏尔斯特拉斯曲线和雅可比四次曲线,根据嵌入度和扩展域算术,理论上可获得 6% 到 21% 的增益。

综上所述,通过多种方法可以构建配对友好的超椭圆曲线,并且在不同类型的雅可比曲线上可以进行泰特配对的计算和优化。这些研究成果为双线性配对在密码学中的应用提供了更多的选择和可能性。未来,进一步探索这些特殊曲线的更多特性,如更高阶扭转带来的压缩等,将是一个有意义的研究方向。同时,寻找 ρ 值在 1 ⩽ ρ < 2 之间的配对友好超椭圆曲线也是一个待解决的问题。

双线性配对密码学中的超椭圆曲线与泰特配对计算

4. 不同方法构建曲线的特点总结

为了更清晰地对比 Cocks - Pinch 方法和 Brezing - Weng 方法构建配对友好超椭圆曲线的特点,我们将相关信息总结如下表:
| 方法 | 输入要求 | 参数性质 | D 的选择范围 | 适用情况 | ρ 值 |
| ---- | ---- | ---- | ---- | ---- | ---- |
| Cocks - Pinch 方法 | 无平方因子整数 D(3 不能整除 D)、素数 r 的大小、嵌入度 k | 整数 | 较宽泛 | 一般情况,尤其适用于对 r 的分圆多项式次数无限制的情况 | ≈ 4 |
| Brezing - Weng 方法 | 嵌入度 k(5 ⩽ k ⩽ 36) | 模分圆多项式的多项式 | 1 - 35 的无平方因子范围 | 部分嵌入度情况,当 r 的分圆多项式次数合适时 | ≃ 3 |

从表中可以看出,两种方法各有优劣。Cocks - Pinch 方法适用于更广泛的情况,但 ρ 值相对较大;Brezing - Weng 方法能在合适的嵌入度下获得较小的 ρ 值,但对 r 的分圆多项式次数有一定要求。

5. 不同 D 值下曲线构造的流程对比

为了更好地理解不同 D 值下曲线构造的过程,我们可以通过流程图进行对比。

5.1 D = 1 时曲线构造流程
graph TD;
    A[定义椭圆曲线 E1(Fq)] --> B[计算 zeta 函数 ZE1(T, Fq)];
    B --> C[计算 4 次韦伊限制的 zeta 函数 ZJC5(T, Fq)];
    C --> D[分解为两条 4 次扭转曲线];
    D --> E[结束];
5.2 D = 2 时曲线构造流程
graph TD;
    A[定义椭圆曲线 E(Fp)] --> B[计算 8 次韦伊限制的 zeta 函数 Z(T, Fp)];
    B --> C[计算 #JC(Fp)];
    C --> D[与 JC5(Fp) 阶对应];
    D --> E[结束];
5.3 D = 3 时曲线构造流程
graph TD;
    A[定义椭圆曲线 E(Fp)] --> B[计算 12 次韦伊限制的 zeta 函数 Z(T, Fp)];
    B --> C[解释为两条超椭圆曲线雅可比的 zeta 函数];
    C --> D[应用方法计算 tp 和 y];
    D --> E[找到新曲线族];
    E --> F[结束];

通过这些流程图,可以清晰地看到不同 D 值下曲线构造的关键步骤和差异。

6. 雅可比曲线泰特配对计算的优化策略

在雅可比曲线的泰特配对计算中,针对雅可比相交曲线和雅可比四次曲线有不同的优化策略。

6.1 雅可比相交曲线优化策略
  • 利用几何解释 :借助群法则的几何解释,得到加倍步骤公式。虽然目前在与其他曲线类型对比时竞争力不足,但在偶数嵌入度的配对计算中仍有一定优势。
  • 引入二次扭转 :对于偶数嵌入度的情况,定义并使用曲线的二次扭转,使加倍步骤效率有所提升。

具体操作步骤如下:
1. 确定曲线为雅可比相交曲线,且嵌入度为偶数。
2. 利用群法则的几何解释,推导加倍步骤公式。
3. 定义并使用曲线的二次扭转,应用于加倍步骤的计算中。

6.2 雅可比四次曲线优化策略
  • 利用双有理等价性 :利用雅可比四次曲线与魏尔斯特拉斯曲线的双有理等价性,为计算提供便利。
  • 采用特定点表示 :使用特定的点表示方法,结合双有理等价性,在米勒算法的加倍和加法步骤中取得更好的效果。

具体操作步骤如下:
1. 确定曲线为特殊雅可比四次椭圆曲线 Y² = dX⁴ + Z⁴。
2. 找到雅可比四次曲线与魏尔斯特拉斯曲线的双有理等价关系。
3. 选择合适的特定点表示方法。
4. 在米勒算法的加倍和加法步骤中应用上述等价关系和点表示方法进行计算。

7. 总结与展望

通过对配对友好超椭圆曲线的构建方法以及雅可比曲线泰特配对计算的研究,我们可以看到在双线性配对密码学领域已经取得了许多重要的成果。

不同的曲线构建方法和泰特配对计算优化策略为密码学应用提供了更多的选择。Cocks - Pinch 方法和 Brezing - Weng 方法在不同的情况下各有优势,能够满足不同的安全级别和性能要求。在不同 D 值下,曲线的分解和构造也呈现出不同的特点,为进一步研究曲线的性质提供了基础。

在雅可比曲线的泰特配对计算方面,通过对雅可比相交曲线和雅可比四次曲线的优化,提高了计算效率。尤其是雅可比四次曲线在米勒算法中的改进,取得了较好的理论增益。

然而,目前仍然存在一些问题有待解决。例如,寻找 ρ 值在 1 ⩽ ρ < 2 之间的配对友好超椭圆曲线,这将有助于进一步提高曲线的性能。此外,探索这些特殊曲线的更多特性,如更高阶扭转带来的压缩等,也将为密码学的发展提供新的思路。未来的研究可以围绕这些问题展开,不断推动双线性配对密码学的发展。

本项目采用C++编程语言结合ROS框架构建了完整的双机械臂控制系统,实现了Gazebo仿真环境下的协同运动模拟,并完成了两台实体UR10工业机器人的联动控制。该毕业设计在答辩环节获得98分的优异成绩,所有程序代码均通过系统性调试验证,保证可直接部署运行。 系统架构包含三个核心模块:基于ROS通信架构的双臂协调控制器、Gazebo物理引擎下的动力学仿真环境、以及真实UR10机器人的硬件接口层。在仿真验证阶段,开发了双臂碰撞检测算法和轨迹规划模块,通过ROS控制包实现了末端执行器的同步轨迹跟踪。硬件集成方面,建立了基于TCP/IP协议的实时通信链路,解决了双机数据同步和运动指令分发等关键技术问题。 本资源适用于自动化、机械电子、人工智能等专业方向的课程实践,可作为高年级课程设计、毕业课题的重要参考案例。系统采用模块化设计理念,控制核心硬件接口分离架构便于功能扩展,具备工程实践能力的学习者可在现有框架基础上进行二次开发,例如集成视觉感知模块或优化运动规划算法。 项目文档详细记录了环境配置流程、参数调试方法和实验验证数据,特别说明了双机协同作业时的时序同步解决方案。所有功能模块均提供完整的API接口说明,便于使用者快速理解系统架构并进行定制化修改。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
【微电网】【创新点】基于非支配排序的蜣螂优化算法NSDBO求解微电网多目标优化调度研究(Matlab代码实现)内容概要:本文围绕基于非支配排序的蜣螂优化算法(NSDBO)在微电网多目标优化调度中的应用展开研究,提出了一种改进的智能优化算法以解决微电网系统中经济性、环保性和能源效率等多重目标之间的权衡问题。通过引入非支配排序机制,NSDBO能够有效处理多目标优化中的帕累托前沿搜索,提升解的多样性和收敛性,并结合Matlab代码实现仿真验证,展示了该算法在微电网调度中的优越性能和实际可行性。研究涵盖了微电网典型结构建模、目标函数构建及约束条件处理,实现了对风、光、储能及传统机组的协同优化调度。; 适合人群:具备一定电力系统基础知识和Matlab编程能力的研究生、科研人员及从事微电网、智能优化算法应用的工程技术人员;熟悉优化算法能源系统调度的高年级本科生亦可参考。; 使用场景及目标:①应用于微电网多目标优化调度问题的研究仿真,如成本最小化、碳排放最低供电可靠性最高之间的平衡;②为新型智能优化算法(如蜣螂优化算法及其改进版本)的设计验证提供实践案例,推动其在能源系统中的推广应用;③服务于学术论文复现、课题研究或毕业设计中的算法对比性能测试。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,重点关注NSDBO算法的核心实现步骤微电网模型的构建逻辑,同时可对比其他多目标算法(如NSGA-II、MOPSO)以深入理解其优势局限,进一步开展算法改进或应用场景拓展。
内容概要:本文详细介绍了使用ENVISARscape软件进行DInSAR(差分干涉合成孔径雷达)技术处理的完整流程,涵盖从数据导入、预处理、干涉图生成、相位滤波相干性分析、相位解缠、轨道精炼重去平,到最终相位转形变及结果可视化在内的全部关键步骤。文中以Sentinel-1数据为例,系统阐述了各环节的操作方法参数设置,特别强调了DEM的获取处理、基线估算、自适应滤波算法选择、解缠算法优化及轨道精炼中GCP点的应用,确保最终获得高精度的地表形变信息。同时提供了常见问题的解决方案实用技巧,增强了流程的可操作性和可靠性。; 适合人群:具备遥感GIS基础知识,熟悉ENVI/SARscape软件操作,从事地质灾害监测、地表形变分析等相关领域的科研人员技术人员;适合研究生及以上学历或具有相关项目经验的专业人员; 使用场景及目标:①掌握DInSAR技术全流程处理方法,用于地表沉降、地震形变、滑坡等地质灾害监测;②提升对InSAR数据处理中关键技术环节(如相位解缠、轨道精炼)的理解实操能力;③实现高精度形变图的生成Google Earth可视化表达; 阅读建议:建议结合实际数据边学边练,重点关注各步骤间的逻辑衔接参数设置依据,遇到DEM下载失败等问题时可参照文中提供的多种替代方案(如手动下载SRTM切片),并对关键结果(如相干性图、解缠图)进行质量检查以确保处理精度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值