密码配对的软件并行实现
1. Ate配对算法概述
Ate配对的计算在密码学中有着重要的应用。下面是计算Ate配对的算法1:
Algorithm 1. An algorithm to compute the Ate pairing
Input: Q ∈E(Fp), P ∈E(Fp2), s = t −1 ∈Z.
Output: e(Q, P).
f ←1, T ←P
1 for i = |s| −2 downto 0 do
2 f ←f 2 · lT,T (Q), T ←2 · T
3 if si = 1 then
4 f ←f · lT,P (Q), T ←T + P
5 return f (pk−1)/n
2. Ate配对的参数化
成功对Ate配对进行参数化需要一条椭圆曲线 $E(F_p)$,其阶 $n$ 能被某个大素数 $r$ 整除。设 $k$ 为曲线的嵌入度,是使得 $r | p^{k}-1$ 的最小正整数。Barreto - Naehrig曲线(BN - 曲线)$E(F_p) : y^2 = x^3 + b$(其中 $b \neq 0$)满足这些要求。这种曲线具有素数阶,即 $r = n$,且嵌入度 $k = 12$。此外,迹、曲线阶和 $F_p$ 的特征可以通过 $x$ 参数化:
- $t(x) = 6x^2 + 1$
- $n(x) = 36x^4 - 36x^3 + 18x^2 - 6x + 1$
- $p(x) = 36x^4 - 36x^3 + 24x^2 - 6x + 1$
超级会员免费看
订阅专栏 解锁全文
31

被折叠的 条评论
为什么被折叠?



