一种基于区块链的PKI保护CA隐私的方法技术

技术编号:38726195 阅读:6 留言:0更新日期:2023-09-08 23:18
本发明专利技术公开了一种基于区块链的PKI保护CA隐私的方法,该方法首先生成用户的私钥和公钥,以及相应的参数,签发CA生成对消息m的可链接环签名。其次域所有者执行证书注册操作,并且在证书到期之前向环CA申请更新证书,验证通过后为域所有者执行证书更新。然后域所有者的个人信息发生变更、证书的私钥丢失或泄漏时向环CA申请撤销证书,验证通过后为域所有者执行证书撤销。最后当客户端向域发起TLS连接请求时,客户端验证该证书的有效性与真实性,证书验证通过后,客户端与域建立TLS连接。本发明专利技术防止了攻击者针对高价值目标域的签发CA发起攻击,提高了PKI系统的安全性,提升了证书快速响应的效率。应的效率。应的效率。

【技术实现步骤摘要】
一种基于区块链的PKI保护CA隐私的方法


[0001]本专利技术属于区块链技术应用领域,主要涉及一种基于区块链的PKI保护CA隐私的方法。

技术介绍

[0002]如今,随着互联网的普及,人们越来越重视网络通信中的隐私和安全。作为网络通信中常用的加密协议,传输层安全协议(TLS)为网络通信提供安全性和数据完整性。特别是TLS中的身份认证和安全通信是建立在公钥基础设施(PKI)的基础上的。PKI使用公钥数字证书来验证网站的身份,它的核心组件是证书颁发机构(CA),CA负责颁发、管理和撤销证书。因此,PKI的安全性在很大程度上依赖于向网站颁发TLS证书的CA。
[0003]然而,近年来CA出现的诸多安全漏洞给现实中的安全通信带来了极大的挑战,例如CA单点故障、高价值域容易受针对性攻击、注册中心(RA)审核不严、CA权利过大可为网络中的任何域颁发证书等问题。
[0004]区块链的引入为解决传统PKI中所出现的问题或挑战提供了思路,区块链的去中心化、不可篡改、可追溯等特性与PKI体系很好地契合,同时兼顾了低成本信任和公共可审计性,为解决CA的单点故障和CA的不当行为提供了解决方案。
[0005]但是,已有的基于区块链的PKI方案仍存在单个CA的权利过大,签发CA存在隐私泄露等问题,以及区块链所带来的证书操作效率不高,证书响应缓慢问题。

技术实现思路

[0006]针对上述问题,本专利技术提出了一种基于区块链的PKI保护CA隐私的方法,使用可链接环签名与基于区块链的PKI相结合,解决签发CA容易遭受攻击和基于区块链的PKI中证书响应缓慢问题,提升了PKI系统的安全性。
[0007]本专利技术的一种基于区块链的PKI保护CA隐私的方法,包括如下步骤。
[0008]步骤1:生成系统参数,生成用户的私钥和公钥,以及椭圆曲线相应的参数。
[0009]步骤2:生成可链接环签名,签发CA利用私钥sk
π
和同级CA公钥列表L生成对消息m的可链接环签名。
[0010]步骤3:证书注册,域所有者的信息经RA审核通过后,环CA为域所有者执行证书注册操作。
[0011]步骤4:证书更新,域所有者在证书到期之前向环CA申请更新证书,环CA验证通过后为域所有者执行证书更新操作。
[0012]步骤5:证书撤销,域所有者的个人信息发生变更、证书的私钥丢失或泄漏时向环CA申请撤销证书,环CA验证通过后为域所有者执行证书撤销操作。
[0013]步骤6:证书验证,当客户端向域发起TLS连接请求时,客户端通过区块链和CRL验证该证书的有效性与真实性,证书验证通过后,客户端与域建立TLS连接。
[0014]进一步地,步骤1包括如下具体步骤:
[0015]步骤1.1:选择一个大素数p,E(F
p
)是定义在有限域F
p
上的椭圆曲线;给定一个椭圆曲线上的点构成的加法群该群的阶为质数q,设G是群的生成元。
[0016]步骤1.2:为两个安全的哈希函数。
[0017]步骤1.3:随机选取用户的私钥为计算公钥为PK
i
=sk
i
·
G。
[0018]进一步地,步骤2包括如下具体步骤:
[0019]步骤2.1:签发CA随机选取n

1个同级CA的公钥和自身的公钥组成公钥列表L={PK1,PK2,...,PK
n
},签发CA为第π(1≤π≤n)个用户,签发CA利用私钥sk
π
和同级CA公钥列表L生成对消息m的可链接环签名。
[0020]步骤2.2:计算链接标签Qπ=sk
π
·
H
p
(PK
π
)。
[0021]步骤2.3:选择一个随机数计算c
π+1
=H1(L,Q
π
,m,k
π
·
G,k
π
·
H
p
(PK
π
))。
[0022]步骤2.4:选择一个随机数和标量c
i
,计算L
i
=s
i
·
G+c
i
·
PK
i
;R
i
=s
i
·
H
p
(PK
i
)+c
i
·
Q
π
;c
i+1
=H1(L,Q
π
,m,L
i
,R
i
);其中记c1=c
n+1

[0023]步骤2.5:计算s
π
=(k
π

c
π
·
sk
π
)mod q。
[0024]步骤2.6:输出可链接环签名σ
L
(m)=(Q
π
,c1,s1,...,s
n
)。
[0025]进一步地,步骤3包括如下具体步骤:
[0026]步骤3.1:根CA在区块链中注册,子CA根据根CA颁发的证书注册在区块链中,以此来公开各CA的公钥。
[0027]步骤3.2:当域所有者的信息经注册中心RA审核通过后,签发CA使用自身私钥、公钥和其他同级CA的公钥组成的环CA对进行证书注册交易进行环签名,并将证书注册交易提交到区块链中等待验证节点验证。
[0028]步骤3.3:验证节点验证交易,将交易打包至区块并广播到网络中,随后将交易所在区块号发送给环CA。
[0029]步骤3.4:环CA根据区块号生成X.509证书,证书操作的字段值为证书注册,证书存储在星际文件系统(IPFS)中。
[0030]进一步地,步骤5包括如下具体步骤:
[0031]步骤5.1:当域所有者的个人信息发生变更、证书的私钥丢失或泄漏时,域所有者向环CA提出证书撤销请求。
[0032]步骤5.2:此时环CA中的签发CA只有通过了Link(L,M1,M2,σ1,Q1,σ2,Q2)

linked|unlinked链接性算法的验证才能对该证书进行后续的操作,即谁签发谁才有权利撤销。
[0033]步骤5.3:维护一个全局状态表certRevRequest,键为证书序列号,值为证书状态0或1,证书默认状态为1,当域所有者提交了证书撤销申请,证书状态更改为0。
[0034]步骤5.4:环CA签署此撤销申请并发布到区块链中,根据交易所在区块号生成X.509证书,证书操作的字段值为证书撤销,证书存储在IPFS中。
[0035]步骤5.5:环CA将此证书发送到签发CA的证书撤销列表(CRL)中,CRL保存着已撤销证书的序列号和撤销日期。
[0036]本专利技术具有以下优点本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链的PKI保护CA隐私的方法,其特征在于,包括如下步骤:步骤1:生成用户的私钥和公钥,以及椭圆曲线相应的参数;步骤2:签发CA利用私钥sk
π
和同级证书颁发机构CA公钥列表L生成对消息m的可链接环签名;步骤3:域所有者的信息经注册中心RA审核通过后,环CA为域所有者执行证书注册操作;步骤4:域所有者在证书到期之前向环CA申请更新证书,环CA验证通过后为域所有者执行证书更新操作;步骤5:域所有者的个人信息发生变更、证书的私钥丢失或泄漏时向环CA申请撤销证书,环CA验证通过后为域所有者执行证书撤销操作;步骤6:当客户端向域发起传输层安全协议TLS连接请求时,客户端通过区块链和证书撤销列表CRL验证该证书的有效性与真实性,证书验证通过后,客户端与域建立TLS连接。2.根据权利要求1所述的基于区块链的PKI保护CA隐私的方法,其特征在于,步骤1具体过程如下:步骤1.1:选择一个大素数p,E(F
p
)是定义在有限域F
p
上的椭圆曲线;给定一个椭圆曲线上的点构成的加法群该群的阶为质数q,设G是群的生成元;步骤1.2:为两个安全的哈希函数;步骤1.3:随机选取用户的私钥为计算公钥为PK
i
=sk
i
·
G。3.根据权利要求2所述的基于区块链的PKI保护CA隐私的方法,其特征在于,步骤2具体过程如下:步骤2.1:签发CA随机选取n

1个同级CA的公钥和签发CA自身的公钥,组成公钥列表L={PK1,PK2,...,PK
n
},签发CA为第π(1≤π≤n)个用户,签发CA利用私钥sk
π
和同级CA公钥列表L生成对消息m的可链接环签名;步骤2.2:计算链接标签Q
π
=sk
π
·
H
p
(PK
π
);步骤2.3:选择一个随机数计算c
π+1
=H1(L,Q
π
,m,k
π
·
G,k
π
·
H
p
(PK
π
));步骤2.4:选择一个随机数和标量c
i
,计算L
i
=s
i
·
G+c
i
·
PK
i
;R
i
=s
i
·
H
p
(PK
i
)+c
i
·
Q
π
;c
i+1
=H1(L,Q
π
,m,L
i
,R
i
);其中记c1=c
n+1
;步骤2.5:计算s
π
=(k
π

c
π
·
sk
π
)mod q;步骤2.6:输出可链接环签名σ
L
(m)=(Q
π
,c1,s1,...,s
n...

【专利技术属性】
技术研发人员:游林梁伟彪林传旭饶志远陆逸胡耿然
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1