pbc

 

 

 

An Introduction to Pairing-Based Cryptography学习笔记

mutourend 2020-04-15 21:29:06 594 收藏 5
分类专栏: 基础理论
版权
Alfred Menezes 2005年论文《An Introduction to Pairing-Based Cryptography》。

1. DLP & DHP & BDHP &DDHP
显然地,DHP可reduce in polynomial time to the DLP,在某些特殊情况下,DLP亦可reduce in polynomial time to the DHP。

1.1 DLP
自1975年发明了公钥密码学以来,DLP(discrete logarithm problem)就被广泛研究。
DLP in an additively-written group G = < P > G=<P>G=<P> of order n nn为:已知P 和 Q P和QP和Q,找到相应的整数x ∈ [ 0 , n − 1 ] x\in[0,n-1]x∈[0,n−1],使得Q = x P Q=xPQ=xP。
在精心选择的groups【如multiplicative group of a finite field或者是the group of points on an elliptic curve defined over a finite field】中,人们相信DLP是难以破解的。

1.2 DHP
DHP(Diffie-Hellman problem)为:已知P , a P , b P P, aP, bPP,aP,bP,求得a b P abPabP。
DHP基于的场景为W. Diffie 和 M. Hellman 1976年论文《New directions in cryptography》构建的双方公钥交换。详细的思路为Alice拥有私钥a aa,将对应的公钥a P aPaP发送给Bob;Bob拥有私钥b bb,将相应的公钥b P bPbP发送给Alice,基于各自的私钥Bob和Alice可构建一致的公钥K = a b P K=abPK=abP。对于双方传输中存在的窃听者Eva,其仅知P , a P , b P P, aP, bPP,aP,bP,是否可计算获得a b P abPabP值?

若想推广至三方公钥共识,则可采用two-round两轮方式来实现:

是否可将上图的Three-party two-round key agreement protocol转化为Three-party one-round key agreement protocol呢?答案是:2000年,Joux[32] 借助bilinear pairings实现很简单就实现了Three-party one-round key agreement protocol。【另外两个基于pairings的主要应用为: identity-based encryption scheme (D. Boneh和M. Franklin 2001年论文《Identity-based encryption from the Weil pairing》);short signature scheme(D. Boneh, B. Lynn和H. Shacham 2001年论文《Short signatures from the Weil pairing》)。】

1.3 BDHP
BDHP(bilinear Diffie-Hellman problem)为:【pairing-based protocols的security依赖于BDHP的难度。】

BDHP的难度意味着DHP在G 1 G_1G
1

和G 2 G_2G
2

中的难度。

 

1.4 DDHP
DDHP(decisional Diffie-Hellman problem)为:


2. PBC——pairing-based cryptography
2.1 Bilinear pairings
Bilinear pairing定义及属性为:


2.2 Joux’s three-party one-round key agreement protocol

Alice, Bob和Chris三方共享的公钥为K = e ^ ( b P , c P ) a = e ^ ( P , P ) a b c K=\hat{e}(bP,cP)^a=\hat{e}(P,P)^{abc}K=
e
^
(bP,cP)
a
=
e
^
(P,P)
abc
。对于窃听者Eva来说,需要解决BDHP难题才能获取K KK值。

借助multilinear map e ^ n : G 1 l − 1 ↦ G T \hat{e}_n:G_1^{l-1}\mapsto G_T
e
^

n

:G
1
l−1

↦G
T

,该协议可扩展至l − l-l−party one-round protocol。尽管当l > 3 l>3l>3时,相应的multilinear map可能不存在。


2.3 BLS short signature scheme
大多数的discrete logarithm signature schemes(如DSA)都是EIGamal signature scheme的变种,其签名最终都是由a pair of integers modulo n组成(n为the order of the underlying group G 1 = < P > G_1=<P>G
1

=<P>)。
BLS short signature scheme(D. Boneh, B. Lynn和H. Shacham 2004年论文《Short signatures from the Weil pairing》),其签名最终仅需由一个单独的group element组成。(而且该group element可大约以the same number of bits as an integer modulo n nn)。采用的是a bilinear pairing e ^ \hat{e}
e
^
on ( G 1 , G T ) (G_1, G_T)(G
1

,G
T

) for which the DHP in G 1 G_1G
1

is intractable。BLS short signature scheme具有可aggregated属性。

 


2.4 Identity-based encryption scheme
若Bob通过使用Alice的公钥对消息m mm加密后秘密传送给Alice,Alice使用私钥对加密后的消息进行解密,其中存在如下问题:如何保证Bob所拥有的公钥真的是Alice的,而不是其它attacker的,从而避免本指定给Alice的消息不被attacker decrypt?
传统地,在大规模的公钥分发过程中,通常会引入CA(certifying authority),CA为公钥颁发证书,证书中包含Alice的标识信息、Alice的公钥以及CA对该标识信息的签名。任何具有CA公钥的人可验证证书的签名,从而可确认Alice公钥的真实性。但是在实际证书管理时,存在很多问题:如Bob如何获得Alice的证书?Bob如何确认Alice的公钥仍然有效,CA未对其证书进行撤销(如因离职或私钥泄露等原因)?
1984年,Shamir[51]首次引入了身份密码学的概念,用于解决证书管理中的各种问题。Shamir提议Alice的公钥包含其标识信息I D A ID_AID
A

(如Alice的email address)。可信第三方(TTP, trusted third party)使用其私钥,基于I D A ID_AID
A

来生成Alice的私钥,同时秘密将该私钥发送给Alice。Bob则使用Alice的I D A ID_AID
A

和TTP的公钥来加密消息。Bob可在Alice生成其公私钥对之前对消息进行加密。标识信息I D A ID_AID
A

中可包含credit rating, employment status, minimum age requirement以及date等信息,TTP可根据这些标识信息来决定是否给Alice分发相应的私钥。

D. Boneh和M. Franklin 在2001年论文《Identity-based encryption from the Weil pairing》中提出的identity-based encryption scheme,是第一个使用的identity-based encryption scheme,该scheme采用的是a bilinear pairing e ^ \hat{e}
e
^
on ( G 1 , G T ) (G_1, G_T)(G
1

,G
T

) for which the BDHP is intractable。


上述实现,可防止窃听,但是无法抵抗chosen-ciphertext attacks:

通过以下改进,可解决chosen-ciphertext attacks问题:

Identity-based encryption scheme有以下缺陷:需要有安全通道用于私钥传输;需要TTP可信第三方来生成所有的私钥等。

Identitiy-based和certificate-based的身份管理系统的优劣势可参见论文:K. Paterson and G. Price, “A comparison between traditional public key infrastructures and identity-based cryptography”, Information Security Technical Report, 8(3) (2003), 57–72.

3. Elliptic curves

若所选择的Elliptic curve的embedding degree是小的时,采用subexponential-time index-calculus算法解决F q k F_{q^k}F
q
k


域内的DLP问题比采用Pollard’s rho method解决ECDLP in

更易达成。在k ∈ { 1 , 2 , 3 , 4 , 6 } k\in\{1,2,3,4,6\}k∈{1,2,3,4,6}的supersingular curves中也确实如此。
而对于大多数的prime order over prime fields的elliptic curves,其k ≈ n k\approx nk≈n,则其ECDLP并不存在Weil和Tate pairing攻击问题。
所以,自20世纪90年代初起,已达成共识,具有low embedding degree的elliptic curve不适合用于discrete log protocols中。但是,low embedding degree的elliptic curve在高效实现pairing-based protocols中至关重要。

4. Tate pairing

 

5. PBC 曲线的选择

现有的pairing曲线有:bls12_377、bls12_381、edwards_bls12、edwards_sw6、jubjub、mnt6、sw6等。【zexe中有针对这些曲线做过实现。】
————————————————
版权声明:本文为CSDN博主「mutourend」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/mutourend/article/details/105544862

posted @ 2021-04-14 16:35  zJanly  阅读(519)  评论(0编辑  收藏  举报