基于联盟链的抗量子计算隐式证书颁发方法及系统技术方案

技术编号:23055849 阅读:29 留言:0更新日期:2020-01-07 15:40
本申请涉及一种基于联盟链的抗量子计算隐式证书颁发方法及系统,实施在相互通信的联盟链成员之间,所述联盟成员包括客户端和服务端,其特征在于,各方均配置有密钥卡,所述密钥卡中均存储有算法参数以及服务端公钥池,所述服务端的密钥卡存储有服务端秘密共享私钥池以及客户端公钥池,所述客户端公钥池中储存有与各所述客户端一一对应的客户端单元,所述客户端单元包括与对应客户端的用户名、身份标识、公钥更新状态以及隐式证书,通过将私钥参数通过秘密共享的方式进行存储,进一步提高了安全性。

An implicit certificate issuing method and system for quantum computing resistance based on alliance chain

【技术实现步骤摘要】
基于联盟链的抗量子计算隐式证书颁发方法及系统
本申请涉及联盟链领域,特别是涉及一种基于联盟链的抗量子计算隐式证书颁发方法及系统。
技术介绍
区块链是一种全新的分布式基础架构与计算范式,利用有序的链式数据结构存储数据,利用共识算法更新数据,利用密码学技术保障数据安全。在基于区块链的交易中,确保交易的数据安全和客户的隐私是区块链能够进一步发展的必要条件。为此,密码学技术尤其是公钥密钥学在区块链中得到了广泛的应用。而联盟链是区块链的一个分支,所以它本身也是一个分布式的,去中心化的公共数据库,跟其他链的区别就是它是针对特定群体的成员和有限的第三方,其内部指定多个预选节点为记账人,其共识过程受到预选节点控制的区块链。现有技术存在的问题:1.基于隐式证书密码学及其数字签名容易被量子计算机破解。2.基于隐式证书密码学的隐式证书生成服务器的私钥被窃取的风险很高,而且由于隐式证书生成服务器掌握整个系统最关键的私钥,可以对其他用户的隐式证书进行伪造。3.所有用户的隐式证书需要类似CA的中心服务器来维护,受DOS攻击风险较高。
技术实现思路
基于此,有必要针对上述技术问题,提供一种基于联盟链的抗量子计算隐式证书颁发方法及系统。一种基于联盟链的抗量子计算隐式证书颁发方法,基于联盟链的抗量子计算隐式证书颁发方法,实施在相互通信的联盟链成员之间,所述联盟成员包括客户端和服务端,各方均配置有密钥卡,所述密钥卡中均存储有算法参数以及服务端公钥池,所述服务端的密钥卡存储有服务端秘密共享私钥池以及客户端公钥池,所述客户端公钥池中储存有与各所述客户端一一对应的客户端单元,所述客户端单元包括与对应客户端的用户名、身份标识、公钥更新状态以及隐式证书;所述抗量子计算隐式证书颁发方法包括在所述服务端进行如下步骤:生成客户端私钥以及客户端公钥指针随机数;根据所述客户端公钥指针随机数进行哈希计算,得到随机数哈希值;根据所述客户端私钥以及算法参数进行计算,得到客户端私钥参数;根据所述客户端公钥指针随机数在所述客户端公钥池中取出第一公钥;根据所述客户端私钥参数以及第一公钥计算,得到客户端公钥参数;根据所述客户端公钥参数、客户端的身份标识以及客户端私钥生成时间进行计算,得到客户端的隐式证书;根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,得私钥参数;将所述服务端公钥池、客户端公钥指针随机数、客户端私钥以及私钥参数存入相应客户端密钥卡的对应存储区,完成对客户端的密钥卡颁发。可选的,所述服务端包括提供相应服务的多个Endorser,所述根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,得私钥参数在Endorser中进行,所述步骤包括:各所述Endorser根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,分别得到私钥参数分量;根据多个私钥参数分量,得到私钥参数。可选的,各所述Endorser根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,分别得到私钥参数分量包括:根据客户端公钥指针随机数以及随机数哈希值分别结合指针函数得到第一指针和第二指针;根据所述第一指针和第二指针在所述服务端秘密共享私钥池中第一私钥以及第二私钥;根据所述隐式证书进行哈希计算,得到隐式证书哈希值;根据所述第一私钥、第二私钥以及隐式证书哈希值进行计算,得到私钥参数分量。可选的,所述客户端公钥指针随机数为生成客户端私钥的时间。可选的,所述抗量子计算隐式证书颁发方法包括在所述客户端进行如下步骤:根据所述客户端私钥、客户端公钥指针随机数进行相应计算,得到隐式证书;根据所述隐式证书进行哈希计算,得到隐式证书哈希值;根据所述隐式证书哈希值、客户端私钥以及客户端私钥参数进行计算,得到实际私钥;根据所述客户端公钥指针随机数进行哈希计算,得到随机数哈希值;根据所述随机数哈希值在所述客户端公钥池中取出第二公钥;根据所述隐式证书哈希值、第二公钥以及客户端公钥参数进行计算,得到实际公钥。可选的,所述抗量子计算隐式证书颁发方法还包客户端的密钥卡实施公钥更新,所述多个服务端包括提供相应服务的Orderer以及Committer,在实施公钥更新具体包括:其中一个客户端为User,所述User向多个Endorser提出交易,所述交易信息中包含有所述User的密钥卡中生成的更新信息;多个所述Endorser接收到交易后,经过验证后,根据所述更新信息生成新私钥参数以及新隐式证书,并将所述新私钥参数以及新隐式证书写入交易应答发送至User;User对交易应答进行验证,从验证为有效的交易应答中获取所述新私钥参数以及新隐式证书,还利用有效的交易应答制作背书并经由Orderer发送给Committer;Committer收到背书后,相应生成交易通知发送给User,还根据背书对世界状态中相对应的客户端公钥池单元进行更新;User接收交易通知后根据所述更新信息、新私钥参数以及新隐式证书生成新实际公私钥,并对密钥卡进行相应更新,以完成公钥更新。可选的,所述更新信息包括:新客户端私钥参数以及随机数;所述随机数由User的密钥卡中的随机数发生器生成;所述新客户端私钥参数,由User的密钥卡中的随机数发生器生成的新客户端私钥以及算法参数得到。可选的,当User与Endorser进行交互时,以及Committer发送交易通知时,交互的消息中签名均利用私钥进行签名,再根据密钥卡中生成的随机在所述服务端公钥池中提取偏移公钥对所述签名进行偏移加密。可选的,所述客户端的隐式证书为公开状态,所述抗量子计算隐式证书颁发方法还包括在客户端中获取另一客户端的实际公钥,具体包括:获取另一客户端的隐式证书,并从隐式证书中获取客户端私钥的生成时间;根据所述隐式证书进行哈希计算,得到隐式证书哈希值;根据客户端私钥的生成时间进行计算,得到客户端公钥指针随机数;根据客户端公钥指针随机数进行哈希计算,得到随机数哈希值;根据所述随机数哈希值在所述客户端公钥池中取出第二公钥;根据所述隐式证书哈希值、第二公钥以及客户端公钥参数进行计算,得到实际公钥。本专利技术还提供了一种基于联盟链的抗量子计算隐式证书颁发系统,包括实施在相互通信的联盟链成员,所述联盟成员包括客户端和服务端,各方均配置有密钥卡,所述密钥卡中均存储有算法参数,所述服务端的密钥卡密钥卡存储有服务端公钥池、服务端秘密共享私钥池以及客户端公钥池,所述客户端公钥池中储存有与各所述客户端一一对应的客户端单元,各所述客户端单元包括相应的用户名、身份标识、公钥更新状态以及隐式证书;所述联盟链包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述基于联盟链的抗量子计算隐式证书颁发方法。本文档来自技高网...

【技术保护点】
1.基于联盟链的抗量子计算隐式证书颁发方法,实施在相互通信的联盟链成员之间,所述联盟成员包括客户端和服务端,其特征在于,各方均配置有密钥卡,所述密钥卡中均存储有算法参数以及服务端公钥池,所述服务端的密钥卡存储有服务端秘密共享私钥池以及客户端公钥池,所述客户端公钥池中储存有与各所述客户端一一对应的客户端单元,所述客户端单元包括与对应客户端的用户名、身份标识、公钥更新状态以及隐式证书;/n所述抗量子计算隐式证书颁发方法包括在所述服务端进行如下步骤:/n生成客户端私钥以及客户端公钥指针随机数;/n根据所述客户端公钥指针随机数进行哈希计算,得到随机数哈希值;/n根据所述客户端私钥以及算法参数进行计算,得到客户端私钥参数;/n根据所述客户端公钥指针随机数在所述客户端公钥池中取出第一公钥;/n根据所述客户端私钥参数以及第一公钥计算,得到客户端公钥参数;/n根据所述客户端公钥参数、客户端的身份标识以及客户端私钥生成时间进行计算,得到客户端的隐式证书;/n根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,得私钥参数;/n将所述服务端公钥池、客户端公钥指针随机数、客户端私钥以及私钥参数存入相应客户端密钥卡的对应存储区,完成对客户端的密钥卡颁发。/n...

【技术特征摘要】
1.基于联盟链的抗量子计算隐式证书颁发方法,实施在相互通信的联盟链成员之间,所述联盟成员包括客户端和服务端,其特征在于,各方均配置有密钥卡,所述密钥卡中均存储有算法参数以及服务端公钥池,所述服务端的密钥卡存储有服务端秘密共享私钥池以及客户端公钥池,所述客户端公钥池中储存有与各所述客户端一一对应的客户端单元,所述客户端单元包括与对应客户端的用户名、身份标识、公钥更新状态以及隐式证书;
所述抗量子计算隐式证书颁发方法包括在所述服务端进行如下步骤:
生成客户端私钥以及客户端公钥指针随机数;
根据所述客户端公钥指针随机数进行哈希计算,得到随机数哈希值;
根据所述客户端私钥以及算法参数进行计算,得到客户端私钥参数;
根据所述客户端公钥指针随机数在所述客户端公钥池中取出第一公钥;
根据所述客户端私钥参数以及第一公钥计算,得到客户端公钥参数;
根据所述客户端公钥参数、客户端的身份标识以及客户端私钥生成时间进行计算,得到客户端的隐式证书;
根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,得私钥参数;
将所述服务端公钥池、客户端公钥指针随机数、客户端私钥以及私钥参数存入相应客户端密钥卡的对应存储区,完成对客户端的密钥卡颁发。


2.根据权利要求1所述抗量子计算隐式证书颁发方法,其特征在于,所述服务端包括提供相应服务的多个Endorser,所述根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,得私钥参数在Endorser中进行,所述步骤包括:
各所述Endorser根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,分别得到私钥参数分量;
根据多个私钥参数分量,得到私钥参数。


3.根据权利要求2所述抗量子计算隐式证书颁发方法,其特征在于,各所述Endorser根据所述客户端公钥指针随机数、随机数哈希值以及隐式证书进行计算,分别得到私钥参数分量包括:
根据客户端公钥指针随机数以及随机数哈希值分别结合指针函数得到第一指针和第二指针;
根据所述第一指针和第二指针在所述服务端秘密共享私钥池中第一私钥以及第二私钥;
根据所述隐式证书进行哈希计算,得到隐式证书哈希值;
根据所述第一私钥、第二私钥以及隐式证书哈希值进行计算,得到私钥参数分量。


4.根据权利要求2所述抗量子计算隐式证书颁发方法,其特征在于,所述客户端公钥指针随机数为生成客户端私钥的时间。


5.根据权利要求1所述抗量子计算隐式证书颁发方法,其特征在于,所述抗量子计算隐式证书颁发方法包括在所述客户端进行如下步骤:
根据所述客户端私钥、客户端公钥指针随机数进行相应计算,得到隐式证书;
根据所述隐式证书进行哈希计算,得到隐式证书哈希值;
根据所述隐式证书哈希值、客户端私钥以及客户端私钥参数进行计算,得到实际私钥;
根据所述客户端公钥指针随机数进行哈希计算,得到随机数哈希值;
根据所述随机数哈希值在所述客户端公钥池中取出第二公钥;
根据所述隐式证书哈希值、第二公钥以及客户端公钥参数进行计算,得到实...

【专利技术属性】
技术研发人员:富尧钟一民杨羽成
申请(专利权)人:如般量子科技有限公司南京如般量子科技有限公司
类型:发明
国别省市:浙江;33

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

1