合数阶群双线性映射
令
Ψ
\Psi
Ψ是群的生成算法, 输入安全参数
λ
\lambda
λ输出参数
(
p
1
,
p
2
,
p
3
,
G
,
G
T
,
e
)
(p_1, p_2, p_3, G, G_T, e)
(p1,p2,p3,G,GT,e), 其中,
p
1
,
p
2
,
p
3
p_1, p_2, p_3
p1,p2,p3表示3个不同的大素数,
G
G
G和
G
T
G_T
GT表示两个
N
N
N阶循环群 (
N
=
p
1
p
2
p
3
N = p_1p_2p_3
N=p1p2p3),
e
:
G
×
G
→
G
T
e: G \times G → G_T
e:G×G→GT表示双线性映射当且仅当满足以下3个条件:
(1) 双线性:
∀
u
,
v
∈
G
\forall u, v \in G
∀u,v∈G 和
a
,
b
∈
Z
N
a,b \in Z_N
a,b∈ZN, 等式
e
(
u
a
,
v
b
)
=
e
(
u
,
v
)
a
b
e(u^a, v^b) = e(u, v)^{ab}
e(ua,vb)=e(u,v)ab成立.
(2) 非退化性:
∃
g
∈
G
,
s
t
.
e
(
g
,
g
)
\exists g \in G, st.~e(g, g)
∃g∈G,st. e(g,g) 在
G
T
G_T
GT中阶为
N
N
N.
(3) 可计算性: 对于
∀
u
,
v
∈
G
\forall u, v \in G
∀u,v∈G,
∃
\exists
∃计算e(u, v)的多项式时间算法.
衍生结论: 假设群 G p 1 , G p 2 , G p 3 G_{p_1}, G_{p_2}, G_{p_3} Gp1,Gp2,Gp3分别是群 G G G中阶为 p 1 , p 2 , p 3 p_1, p_2, p_3 p1,p2,p3的子群. 取参数 h i ∈ G p i , h j ∈ G p j , i ≠ j h_i \in G_{p_i}, h_j \in G_{p_j}, i \neq j hi∈Gpi,hj∈Gpj,i=j, 则必有 e ( h i , h j ) = 1 e(h_i, h_j) = 1 e(hi,hj)=1.
证明:
基于一个基本观察,
g
p
1
p
2
g^{p_1p_2}
gp1p2是群
G
p
3
G_{p_3}
Gp3的生成元. 这样考虑, 令
t
=
g
p
1
p
2
t = g^{p_1p_2}
t=gp1p2, 在群
G
G
G中,
g
p
1
p
2
p
3
g^{p_1p_2p_3}
gp1p2p3是生成元, 所以
t
p
3
t^{p_3}
tp3是
G
p
3
G_{p_3}
Gp3的生成元. 同理
g
p
1
p
3
g^{p_1p_3}
gp1p3是群
G
p
2
G_{p_2}
Gp2的生成元,
g
p
2
p
3
g^{p_2p_3}
gp2p3是群
G
p
1
G_{p_1}
Gp1的生成元.
所以可以用生成元表示,
h
i
=
g
i
α
i
,
h
j
=
g
j
α
j
h_i = g_i^{\alpha_i}, h_j = g_j^{\alpha_j}
hi=giαi,hj=gjαj, 其中
g
k
=
g
p
m
p
n
,
k
,
m
,
n
∈
{
1
,
2
,
3
}
,
m
≠
n
,
m
≠
k
,
n
≠
k
g_k = g^{p_mp_n}, k,m,n \in \{1,2,3\}, m \neq n, m \neq k, n \neq k
gk=gpmpn,k,m,n∈{1,2,3},m=n,m=k,n=k.
则
e
(
h
i
,
h
j
)
=
e
(
g
i
α
i
,
g
j
α
j
)
=
e
(
g
α
i
,
g
p
l
α
j
)
p
1
p
2
p
3
=
1
,
l
∈
{
1
,
2
,
3
}
e(h_i, h_j) = e(g_i^{\alpha_i}, g_j^{\alpha_j}) = e(g^{\alpha_i}, g^{p_l \alpha_j})^{p_1p_2p_3} = 1, l \in \{1,2,3\}
e(hi,hj)=e(giαi,gjαj)=e(gαi,gplαj)p1p2p3=1,l∈{1,2,3}
素数阶群双线性映射
令
Ψ
\Psi
Ψ是群的生成算法, 输入安全参数
λ
\lambda
λ输出参数
(
p
,
G
1
,
G
2
,
G
T
,
e
,
g
,
g
~
)
(p, G_1, G_2, G_T, e, g, \tilde{g})
(p,G1,G2,GT,e,g,g~), 其中,
p
p
p表示大素数,
G
1
,
G
2
G1, G_2
G1,G2和
G
T
G_T
GT表示3个
p
p
p阶循环群,
g
,
g
~
g, \tilde{g}
g,g~分别表示
G
1
,
G
2
G1, G_2
G1,G2的生成元,
e
:
G
1
×
G
2
→
G
T
e: G_1 \times G_2 → G_T
e:G1×G2→GT表示双线性映射当且仅当满足以下3个条件:
(1) 双线性:
∀
u
∈
G
1
,
v
∈
G
2
\forall u \in G_1, v \in G_2
∀u∈G1,v∈G2 和
a
,
b
∈
Z
p
a,b \in Z_p
a,b∈Zp, 等式
e
(
u
a
,
v
b
)
=
e
(
u
,
v
)
a
b
e(u^a, v^b) = e(u, v)^{ab}
e(ua,vb)=e(u,v)ab成立.
(2) 非退化性:
∃
g
∈
G
1
,
g
~
∈
G
2
,
s
t
.
e
(
g
,
g
~
)
\exists g \in G_1, \tilde{g} \in G_2, st.~e(g, \tilde{g})
∃g∈G1,g~∈G2,st. e(g,g~) 在
G
T
G_T
GT中阶为
p
p
p.
(3) 可计算性: 对于
∀
u
∈
G
1
,
v
∈
G
2
\forall u \in G_1, v \in G_2
∀u∈G1,v∈G2,
∃
\exists
∃计算e(u, v)的多项式时间算法.
补充:
若
G
1
≠
G
2
G_1 \neq G_2
G1=G2, 称该映射为非对称双线性映射,
G
1
=
G
2
G_1 = G_2
G1=G2, 则是对称双线性映射.