CN116346336B - 一种基于多层密钥生成中心的密钥分发方法及相关系统 - Google Patents
一种基于多层密钥生成中心的密钥分发方法及相关系统 Download PDFInfo
- Publication number
- CN116346336B CN116346336B CN202310285239.7A CN202310285239A CN116346336B CN 116346336 B CN116346336 B CN 116346336B CN 202310285239 A CN202310285239 A CN 202310285239A CN 116346336 B CN116346336 B CN 116346336B
- Authority
- CN
- China
- Prior art keywords
- pkg
- key
- private key
- primary
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000006854 communication Effects 0.000 claims abstract description 47
- 238000004891 communication Methods 0.000 claims abstract description 46
- 238000012795 verification Methods 0.000 claims abstract description 27
- 238000004422 calculation algorithm Methods 0.000 claims description 54
- 238000004590 computer program Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000012550 audit Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
- H04L63/064—Hierarchical key distribution, e.g. by multi-tier trusted parties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于多层密钥生成中心的密钥分发方法及相关系统,属于密码学领域。多层密钥生成中心包括一级PKG和多个二级PKG,密钥分发方法包括:S1,二级PKG接收用户的私钥申请请求,并检索数据库中是否存储用户的私钥,若是,则将其发送给用户;若否,执行S2;S2,二级PKG使用约定的通信协议向一级PKG转发用户的私钥申请请求;S3,一级PKG通过二级PKG的公钥验证二级PKG的身份;若验证通过,一级PKG生成用户的私钥并使用二级PKG的公钥和自身的私钥通过约定的通信协议发送给二级PKG;S4,二级PKG验证一级PKG发送的用户私钥,若验证成功,则将其存入数据库并发送给用户。如此,本发明能有效解决高并发问题,突破单一中心式的PKG存在的性能瓶颈。
Description
技术领域
本发明属于密码学领域,更具体地,涉及一种基于多层密钥生成中心的密钥分发方法及相关系统。
背景技术
SM9算法是国密算法标准中一种基于身份的密码系统,提供密钥生成服务。SM9算法以用户的公开ID作为用户的公钥,并根据用户的ID由密钥生成中心生成用户私钥。使用SM9算法替代数字证书,可以大大降低密钥管理开销。在采用SM9算法的体系中,密钥生成中心需要认证用户身份,生成用户私钥,因此被称为PKG(Private Key Generator)。但是单一中心的PKG存在高并发问题下的性能瓶颈问题。目前申请SM9私钥时并不能使用免费邮箱地址作为用户ID。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种基于多层密钥生成中心的密钥分发方法及相关系统,通过设计两级PKG的分层结构,能有效解决高并发问题,突破单一中心式的PKG存在的性能瓶颈。
为实现上述目的,第一方面,本发明提供了一种基于多层密钥生成中心的密钥分发方法,所述多层密钥生成中心包括一级PKG和多个二级PKG,所述一级PKG是可信PKG,约定两层PKG之间使用的通信协议和公共参数,所述二级PKG的公钥由一级PKG指定,所述二级PKG的私钥由一级PKG生成并写入二级PKG的配置文件;所述方法包括:S1,二级PKG接收用户的私钥申请请求,并检索数据库中是否存储所述用户的私钥,若是,则将其发送给所述用户;若否,执行S2;S2,二级PKG使用约定的通信协议向一级PKG转发所述用户的私钥申请请求;S3,一级PKG通过二级PKG的公钥验证二级PKG的身份;若验证通过,一级PKG生成所述用户的私钥并使用二级PKG的公钥和自身的私钥通过约定的通信协议发送给二级PKG;S4,二级PKG验证一级PKG发送的用户私钥,若验证成功,则将其存入数据库并发送给用户。
进一步地,所述二级PKG由一级PKG以行政方式认证、产生和部署。
进一步地,所述二级PKG的私钥由约定的通信协议定义的密码算法生成,二级PKG使用解密私钥解密其收到的非对称加密消息,二级PKG使用签名私钥对其发送的消息签名。
进一步地,所述S2中,所述约定的通信协议中,使用一级PKG的公钥作为非对称加密的密钥,二级PKG的签名私钥作为数字签名的密钥。
进一步地,所述S3中,所述约定的通信协议中,使用二级PKG的公钥作为非对称加密的密钥,一级PKG的签名私钥作为数字签名的密钥。
进一步地,所述S2包括:二级PKG使用自身的签名私钥对消息明文进行签名得到签名数据,对所述签名数据和所述消息明文进行拼接压缩得到压缩数据,利用会话密钥对所述压缩数据进行对称加密得到加密数据,再利用所述一级PKG的公钥对所述会话密钥进行加密得到加密的会话密钥;将所述加密数据和加密的会话密钥通过约定的通信协议发送给一级PKG;所述S3中,所述一级PKG通过二级PKG的公钥验证本次请求的数字签名部分,以验证二级PKG的身份,包括:一级PKG使用自身的解密私钥对所述加密的会话密钥进行解密得到解密的会话密钥,对所述加密数据进行对称解密得到解密数据,对所述解密的会话密钥和所述解密数据进行解压缩分离得到所述消息明文和所述签名数据,并利用所述二级PKG的公钥进行身份验证。
进一步地,所述约定的通信协议为后量子安全的通信协议。
第二方面,本发明提供了一种多层密钥生成中心,所述多层密钥生成中心包括一级PKG和多个二级PKG;所述一级PKG是可信PKG,用于约定两级PKG之间使用的通信协议和公共参数,以及指定二级PKG的公钥,生成二级PKG的私钥并写入二级PKG的配置文件;所述二级PKG用于,接收用户的私钥申请请求,并检索数据库中是否存储所述用户的私钥,若是,则将其发送给所述用户;若否,则使用约定的通信协议向一级PKG转发所述用户的私钥申请请求;所述一级PKG还用于,通过二级PKG的公钥验证二级PKG的身份;若验证通过,一级PKG生成所述用户的私钥并使用二级PKG的公钥和自身的私钥通过约定的通信协议发送给二级PKG;所述二级PKG还用于,验证一级PKG发送的用户私钥,若验证成功,则将其存入数据库并发送给用户。
第三方面,本发明提供了一种电子设备,包括:处理器;存储器,其存储有计算机可执行程序,所述程序在被所述处理器执行时,使得所述处理器执行如第一方面所述的基于多层密钥生成中心的密钥分发方法。
第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如第一方面所述的基于多层密钥生成中心的密钥分发方法。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明针对传统PKG的单一中心结构导致的高并发问题下PKG的性能瓶颈问题,以及量子计算机发展导致的密钥分发过程中系统安全性降低的问题,创新地提出一种多层密钥生成中心架构,将一级PKG的运行负载均衡至分布式的二级PKG群,实现在高并发问题下对PKG性能瓶颈的突破。
(2)本发明优选后量子安全通信协议的认证和密钥分发方案,在消息传输的过程中采用后量子安全的加密和签名方案,保证用户私钥的完整性和后量子安全性,实现PKG架构整体的安全性与可用性。
附图说明
图1为本发明实施例提供的一种基于多层密钥生成中心的密钥分发方法的流程示意图。
图2为本发明实施例提供的多层密钥生成中心架构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
在本发明中,本发明及附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
参阅图1,结合图2,本发明实施例提供了一种基于多层密钥生成中心的密钥分发方法,所述多层密钥生成中心包括一级PKG和多个二级PKG,所述一级PKG是可信PKG,约定两层PKG之间使用的通信协议和公共参数,所述二级PKG的公钥由一级PKG指定,所述二级PKG的私钥由一级PKG生成并写入二级PKG的配置文件;所述方法包括:
S1,二级PKG接收用户的私钥申请请求,并检索数据库中是否存储所述用户的私钥,若是,则将其发送给所述用户;若否,执行S2;
S2,二级PKG使用约定的通信协议向一级PKG转发所述用户的私钥申请请求;
S3,一级PKG通过二级PKG的公钥验证二级PKG的身份;若验证通过,一级PKG生成所述用户的私钥并使用二级PKG的公钥和自身的私钥通过约定的通信协议发送给二级PKG;
S4,二级PKG验证一级PKG发送的用户私钥,若验证成功,则将其存入数据库并发送给用户。
需要说明的是,在本发明中,一级PKG是可信PKG,换言之,无论是用户还是二级PKG会无条件信任一级PKG,采纳一级PKG公布的二级PKG信息以及公共参数。
此外,若无特别注明,本发明描述中包含通信过程的验证与加密部分,均由约定的通信协议定义。
量子计算机的诞生将破坏现有通信的安全基础,通信的安全性主要依赖安全有效的加密算法。常规的基于大整数因子分解和离散对数等问题的密码算法,其安全性在1994年Shor算法问世后面临挑战,Shor算法的关键步骤只能在量子计算机上运行。如果能够构建较大规模的量子计算机运行Shor算法,RSA此类的密码算法将在短时间内被破解。为了对抗这种威胁,后量子通信的概念被提出。后量子通信协议一般基于后量子的密码算法,例如基于格的算法和基于编码的算法。
优选地,本发明在后量子安全的通信协议的基础上,采用分层结构进行负载均衡,构建后量子安全的多层密钥生成中心架构。
如图1所示,该方案可通过一级PKG行政批准和部署的方式,实现二级PKG的授权加入与退出;该方案使用分层次的PKG结构解决高并发问题并突破传统单一PKG的性能瓶颈;该方案使用后量子的后量子安全的通信协议进行层次PKG之间的通信与认证,保证密钥分发过程中的后量子安全性。
首先介绍一级PKG和二级PKG之间通信采用的格上基于身份的签名方案。
1、Setup(N):基于输入的安全参数N,这个算法输出下列公共参数:
q=Poly(N),
其中,q是模数,决定运算过程的规模,Poly(N)是安全参数N的多项式函数;ε为系统参数,s、σ为高斯采样过程的两个参数,为渐进下界。
签名方案优选的参数取值如下:
N=512,q=223,ε=1
M=3.0
其中,N为优选的安全参数,对应该方案的安全等级,M为防止签名分布泄露私钥而设定的用于计算签名拒绝概率的参数。
2、主密钥生成算法Master_keygen(N,q):输入参数为Setup输出的N,σ>0,输出结果为主私钥msk和主公钥mpk构成的密钥对/>算法的具体步骤如下:
第1步:在中选取f,g满足/>和/>
第2步:如果或者/>重新开始;
第3步:如果<f,g>≠R,重新开始;
第4步:计算F1,G1∈R使得fG1-gF1=1;
第5步:设置Fq=qF1和Gq=qG1;
第6步:使用最近平面算法通过整数线性组合
(f,g),(xf,xg),...,(xn-1f,xn-1g)
近似计算(Fq,Gq)。令(F,G)为输出,使得存在k∈R满足(F,G)=(Fq,Gq)-k(f,g);
第7步:如果‖(F,G)‖>Nσ重新开始;
第8步:输出主私钥和主公钥/>
其中,表示Rq中的可逆元素的集合,f和g表示系数为有理数的多项式,C(f)是f的N维反循环矩阵;DΛ,σ(x)表示离散高斯分布ρσ,c(x)/ρσ,c(Λ),ρσ,c(x)为高斯函数,表示ρσ,c(Λ)定义为,对于任意格/> F为基于f进行最近平面算法计算得到的参数,G为基于g进行最近平面算法计算得到的参数。
3、用户私钥生成算法Extract(B,id):输入用户身份标识id和主密钥生成算法生成的主私钥msk,输出为用户私钥对skid=(s1,s2),其具体步骤如下:
第1步:如果skid已经存储在本地,那么进行第2步,否则进行第3步;
第2步:直接将skid交给用户;
第3步:
第4步:(s1,s2)←[(t,0)-Gaussian_Sampler(B,σ,(t,0))]其中s1,s2分别为用户的签名私钥和解密私钥满足{s1+s2*h=t};
第5步:skid←(s1,s2);
第6步:将skid交给请求私钥的用户并将私钥保存在本地。
其中,哈希函数
4、签名算法Signature(μ,h,skid):输入签名私钥sksig,公开参数h,信息μ;输出数据签名sig=(z1,z2,u),其具体步骤如下:
第1步:选择
第2步:计算u=H′(y1+h*y2,μ);
第3步:分别计算z1=y1+s1*u和z2=y2+s2*u;
第4步:计算结果以的概率返回sig=(z1,z2,u)。
其中,的定义与主密钥生成算法相同,哈希函数H′:{0,1}*→{v∈{-1,0,1}N,‖v‖1≤λ},z1,z2,u为签名数据的三个组成部分,y1、y2为高斯采样的两个结果。
5、验证算法Verification(id,μ,(z1,z2,u)):输入签名者身份id,消息μ和数字签名sig=(z1,z2,u),输出1或0表示数字签名的正确性验证的结果为正确或错误。正确性判断依据下式:
其中,h为公开参数,哈希函数H′:{0,1}*→{v∈{-1,0,1}N,‖v‖1≤λ}。当上式成立时,签名验证正确,输出1;上式不成立时,签名验证错误,输出0。
下面介绍一级PKG和二级PKG之间通信采用的格上基于身份的加密方案。
1、主私钥生成算法Master_keygen(N,q):输入公开参数N、q,算法生成主私钥和主公钥/>优选公开参数为N=512,q=230。其具体步骤如下:
第1步:根据式(1)计算高斯分布的标准差σf。
第2步:从元素满足高斯分布的采样器中采样2个系数为有理数的多项式f和g。
第3步:根据式(2)计算参数Norm,其中fg和f*g表示多项式f和g的乘法,(g,-f)表示由多项式g系数组成的向量(g)和-f系数组成的向量(-f)的拼接。
第4步:如果返回到第2步。
第5步:使用扩展欧几里得算法,计算(/>表示环/> )和满足式(3)和式(4)。
-ρf·f=Rf mod(xN+1) (3)
-ρg·g=Rg mod(xN+1) (4)
第6步:如果GCD(Rf,Rg)≠1或GCD(Rf,q)≠1,返回到第2步。
第7步:使用扩展欧几里得算法,计算满足式(5)。
u·Rf+v·Rg=1 (5)
第8步:根据式(6)和式(7)分别计算多项式F和G。
F←qvρg (6)
G←-quρf (7)
第9步:根据式(8)计算参数其中/>表示对多项式f系数的舍入。
第10步:根据式(9)和式(10)再次计算多项式F和G。
F←F-k*f (9)
G←G-k*g (10)
第11步:根据式(11)计算主公钥h。
h=g*f-1 mod q (11)
第12步:根据式(12)计算主私钥B,其中是f的N维反循环矩阵。
2、用户私钥生成算法Extract(B,id):输入主私钥和用户身份id,算法生成用户私钥/>其具体步骤如下:
第1步:使用哈希函数计算用户身份id的散列值/>
第2步:根据式(13)计算多项式s1和s2,其中s1和s2满足s1+s2*h=t,s2就是用户私钥sken。
(s1,s2)←(t,0)-Gaussian_Sampler(B,σ,(t,0)) (13)
3、加密算法Encrypt(id,m):输入用户身份id和明文m∈{0,1}m,加密算法生成密文组其具体步骤如下:
第1步:根据式(14)和(15),得到随机向量r、e1、e2和k。
r,e1,e2←{-1,0,1}N (14)
k←{0,1}N (15)
第2步:使用哈希函数计算用户身份id的散列值/>
第3步:根据式(16)计算向量其中主公钥/>
u←r*h+e1 (16)
第4步:根据式(17)计算向量
第5步:根据式(18)计算向量v,需要舍弃v的低位无效值。
第6步:输出密文组其中哈希函数H′:{0,1}N→{0,1}m。
4、解密算法Decrypt(sken,(u,v,c)):输入用户私钥密文组(u,v,c),算法生成明文m∈{0,1}m。其具体步骤如下:
第1步:根据式(19)计算向量w。
w←v-u*sken (19)
第2步:根据式(20)计算向量k。
第3步:根据式(21)计算明文m,其中哈希函数H′:{0,1}N→{0,1}m。
现将本发明结合后量子安全的通信协议作为约定的通信协议阐述一种PKG分层执行密钥分发和认证的实施方案,具体实施过程如下:
参与方1:一级密钥生成中心PKG
1)一级PKG首先完成初始化。一级PKG根据上述格上基于身份的签名方案,使用签名方案的算法和优选参数,生成签名方案的主私钥MSKsign和公开参数MPKsign,再根据上述格上基于身份的加密方案,使用加密方案的算法和优选参数,生成加密方案的主私钥MSKencrypt和公开参数MPKencrypt。一级PKG根据上述格上基于身份的加密方案,生成自身用于数据传输的签名私钥sksig和自身用于数据解密的解密私钥sken,初始化自身权威身份标识IDKGC。
2)收到候选二级PKG的加入申请后,一级PKG对该候选二级PKG进行资质审核,审核通过后以行政批准方式为二级PKG生成唯一身份标识IDkgc。一级PKG根据上述格上基于身份的签名方案,使用签名方案的算法和二级PKG的身份标识IDkgc、签名方案的主私钥MSKsign,生成二级PKG用于数据传输的签名私钥sksig,再根据上述格上基于身份的加密方案,使用加密方案的算法和二级PKG的身份标识IDkgc、加密方案的主私钥MSKencrypt,生成二级PKG用于数据传输的解密私钥sken。
3)一级PKG记录已加入的二级PKG身份标识,在官方网站上公开所有二级PKG的身份标识。每当有新的二级PKG加入,一级PKG将更新二级PKG的身份标识。
4)收到二级PKG向一级PKG发送的用户私钥加密申请请求时,根据后量子安全的通信协议,一级PKG接收密文C,从C中分离出加密数据C1和加密的会话密钥CK;根据格上基于身份的解密算法,输入CK和一级PKG的解密私钥sken,输出会话密钥K′=Dcrypt(sken,CK);使用已知的解密算法AES-1,输入加密数据C1和会话密钥K′,输出压缩数据M′1=AES-1(C1,K′);将M′1解压缩分离出签名数据S′和消息M′,(M′|S′)=PKIZIP-1(M′1);使用格上基于身份的验证算法Verification,输入发送方身份标识IDkgc、签名数据S′和消息M′,输出验证结果。
若验证成功,一级PKG根据格上基于身份的签名方案和格上基于身份的加密方案,使用签名方案的主私钥MSKsign、加密方案的主私钥MSKencrypt、消息M′中用户的身份标识IDsend和签名方案的私钥提取算法Extract,生成用户用于签名的个人私钥sksig和用户用于解密的个人私钥sken。
5)一级PKG根据后量子安全的通信协议,使用格上基于身份的签名方案、输入一级PKG的签名私钥sksig、包含用户的个人私钥的消息M,使用格上基于身份的签名算法,输出签名数据S=(z1,z2,u)=Signature(M,hsign,sksig),将签名数据S和消息M拼接,使用压缩函数PKZIP进行压缩,得到压缩数据M1=PKZIP(M|S)。使用对称加密算法加密,得到加密数据C1=AES(M1,K),其中K为对称加密所用随机数;使用格上基于身份的加密算法,输入接收方身份标识IDkgc和随机数K,输出加密的会话密钥CK=(u,v,c)=Encrypt(IDkgc,K);将CK和C1合并为密文C,并将C发送给接收方对应的二级KGC。
参与方2:二级密钥生成中心PKG
1)候选二级PKG向一级PKG申请加入,在获得行政批准后,由一级PKG分配唯一身份标识IDkgc,并由一级PKG将签名私钥sksig和解密私钥sken写入配置文件。
2)二级PKG建立分布式的密钥托管数据库,为用户私钥请求及分层密钥分发提供任务调度算法,分担一级PKG生成载荷并处理高并发问题。
3)收到用户私钥申请请求后,二级PKG在本地密钥托管数据库中检索对应用户的私钥,如果匹配成功,立即向用户返回检索到的用户私钥;如果匹配失败,二级PKG根据后量子安全的通信协议,使用格上基于身份的签名方案,输入二级PKG的签名私钥sksig、包含用户身份标识IDsend消息M,使用格上基于身份的签名算法,输出签名数据S=(z1,z2,u)=Signature(M,hsign,sksig),将签名数据S和消息M拼接,使用压缩函数PKZIP进行压缩,得到压缩数据M1=PKZIP(M|S)。使用对称加密算法加密,得到加密数据C1=AES(M1,K),其中K为对称加密所用随机数;使用格上基于身份的加密算法,输入接收方身份标识IDKGC和随机数K,输出加密的会话密钥CK=(u,v,c)=Encrypt(IDKGC,K);将CK和C1合并为密文C,并将C发送给接收方对应的一级KGC处理。
4)收到一级PKG返回的加密后的用户私钥时,二级PKG接收密文C,从C中分离出加密数据C1和加密的会话密钥CK;根据格上基于身份的解密算法,输入CK和二级PKG的解密私钥sken,输出会话密钥K′=Dcrypt(sken,CK);使用已知的解密算法AES-1,输入加密数据C1和会话密钥K′,输出压缩数据M1′=AES-1(C1,K′);将M′1解压缩分离出签名数据S′和消息M′,(M′|S′)=PKIZIP-1(M′1);使用格上基于身份的验证算法Verification,输入发送方身份标识IDKGC、签名数据S′和消息M′,输出验证结果。
若验证成功,则将消息M′2中的用户私钥存入本地密钥托管数据库,并使用后量子安全的传输方式将用户私钥发送给用户。
参与方3:用户
1)用户在申请私钥前,登录权威一级PKG官网查找服务可用的二级PKG唯一身份标识IDkgc,向二级PKG验证身份后,向其发送私钥申请请求。
2)身份验证成功后,用户获得私钥,可以使用发送方身份标识IDsend和接受方身份标识IDreceive通过后量子安全的通信协议进行后量子安全的通信。
至此,二级PKG和一级PKG之间完成双向身份认证,实现层次式的密钥请求与分发过程,与传统单一PKG结构相比,能极大地提升一级PKG的性能上限以及用户响应速度,并在此过程中保证密钥传输的后量子安全性。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于多层密钥生成中心的密钥分发方法,其特征在于,所述多层密钥生成中心包括一级PKG和多个二级PKG,所述一级PKG是可信PKG,约定两层PKG之间使用的通信协议和公共参数,所述二级PKG的公钥由一级PKG指定,所述二级PKG的私钥由一级PKG生成并写入二级PKG的配置文件;所述方法包括:
S1,二级PKG接收用户的私钥申请请求,并检索数据库中是否存储所述用户的私钥,若是,则将其发送给所述用户;若否,执行S2;
S2,二级PKG使用自身的签名私钥对消息明文进行签名得到签名数据,对所述签名数据和所述消息明文进行拼接压缩得到压缩数据,利用会话密钥对所述压缩数据进行对称加密得到加密数据,再利用所述一级PKG的公钥对所述会话密钥进行加密得到加密的会话密钥;将所述加密数据和加密的会话密钥通过约定的通信协议发送给一级PKG;
S3,一级PKG使用自身的解密私钥对所述加密的会话密钥进行解密得到解密的会话密钥,对所述加密数据进行对称解密得到解密数据,对所述解密的会话密钥和所述解密数据进行解压缩分离得到所述消息明文和所述签名数据,并利用所述二级PKG的公钥进行身份验证;若验证通过,一级PKG生成所述用户的私钥并使用二级PKG的公钥和自身的私钥通过约定的通信协议发送给二级PKG;
S4,二级PKG验证一级PKG发送的用户私钥,若验证成功,则将其存入数据库并发送给用户。
2.根据权利要求1所述的一种基于多层密钥生成中心的密钥分发方法,其特征在于,所述二级PKG由一级PKG以行政方式认证、产生和部署。
3.根据权利要求1所述的一种基于多层密钥生成中心的密钥分发方法,其特征在于,所述二级PKG的私钥由约定的通信协议定义的密码算法生成,二级PKG使用解密私钥解密其收到的非对称加密消息,二级PKG使用签名私钥对其发送的消息签名。
4.根据权利要求1所述的一种基于多层密钥生成中心的密钥分发方法,其特征在于,所述S2中,所述约定的通信协议中,使用一级PKG的公钥作为非对称加密的密钥,二级PKG的签名私钥作为数字签名的密钥。
5.根据权利要求1所述的一种基于多层密钥生成中心的密钥分发方法,其特征在于,所述S3中,所述约定的通信协议中,使用二级PKG的公钥作为非对称加密的密钥,一级PKG的签名私钥作为数字签名的密钥。
6.根据权利要求1至5任一项所述的一种基于多层密钥生成中心的密钥分发方法,其特征在于,所述约定的通信协议为后量子安全的通信协议。
7.一种多层密钥生成中心,其特征在于,所述多层密钥生成中心包括一级PKG和多个二级PKG;
所述一级PKG是可信PKG,用于约定两级PKG之间使用的通信协议和公共参数,以及指定二级PKG的公钥,生成二级PKG的私钥并写入二级PKG的配置文件;
所述二级PKG用于,接收用户的私钥申请请求,并检索数据库中是否存储所述用户的私钥,若是,则将其发送给所述用户;若否,二级PKG使用自身的签名私钥对消息明文进行签名得到签名数据,对所述签名数据和所述消息明文进行拼接压缩得到压缩数据,利用会话密钥对所述压缩数据进行对称加密得到加密数据,再利用所述一级PKG的公钥对所述会话密钥进行加密得到加密的会话密钥;将所述加密数据和加密的会话密钥通过约定的通信协议发送给一级PKG;
所述一级PKG还用于,使用自身的解密私钥对所述加密的会话密钥进行解密得到解密的会话密钥,对所述加密数据进行对称解密得到解密数据,对所述解密的会话密钥和所述解密数据进行解压缩分离得到所述消息明文和所述签名数据,并利用所述二级PKG的公钥进行身份验证;若验证通过,一级PKG生成所述用户的私钥并使用二级PKG的公钥和自身的私钥通过约定的通信协议发送给二级PKG;
所述二级PKG还用于,验证一级PKG发送的用户私钥,若验证成功,则将其存入数据库并发送给用户。
8.一种电子设备,其特征在于,包括:
处理器;
存储器,其存储有计算机可执行程序,所述程序在被所述处理器执行时,使得所述处理器执行如权利要求1-6中任一项所述的基于多层密钥生成中心的密钥分发方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一项所述的基于多层密钥生成中心的密钥分发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310285239.7A CN116346336B (zh) | 2023-03-22 | 2023-03-22 | 一种基于多层密钥生成中心的密钥分发方法及相关系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310285239.7A CN116346336B (zh) | 2023-03-22 | 2023-03-22 | 一种基于多层密钥生成中心的密钥分发方法及相关系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116346336A CN116346336A (zh) | 2023-06-27 |
CN116346336B true CN116346336B (zh) | 2024-02-06 |
Family
ID=86878409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310285239.7A Active CN116346336B (zh) | 2023-03-22 | 2023-03-22 | 一种基于多层密钥生成中心的密钥分发方法及相关系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116346336B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117272253B (zh) * | 2023-11-23 | 2024-02-23 | 北京知呱呱科技有限公司 | 一种在大语言模型生成文本中嵌入及检测数字水印的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104735064A (zh) * | 2015-03-16 | 2015-06-24 | 深圳奥联信息安全技术有限公司 | 一种标识密码系统中标识安全撤销并更新的方法 |
CN108667616A (zh) * | 2018-05-03 | 2018-10-16 | 西安电子科技大学 | 基于标识的跨云安全认证系统和方法 |
CN112187451A (zh) * | 2020-08-20 | 2021-01-05 | 如般量子科技有限公司 | 抗量子计算的通信方法、装置、设备及存储介质 |
CN114024689A (zh) * | 2022-01-05 | 2022-02-08 | 华中科技大学 | 一种基于后量子和身份标识的电子邮件收发方法和系统 |
CN114024676A (zh) * | 2022-01-05 | 2022-02-08 | 华中科技大学 | 基于身份标识的后量子加解密方法、系统、设备及介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7788484B2 (en) * | 2005-11-30 | 2010-08-31 | Microsoft Corporation | Using hierarchical identity based cryptography for authenticating outbound mail |
-
2023
- 2023-03-22 CN CN202310285239.7A patent/CN116346336B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104735064A (zh) * | 2015-03-16 | 2015-06-24 | 深圳奥联信息安全技术有限公司 | 一种标识密码系统中标识安全撤销并更新的方法 |
CN108667616A (zh) * | 2018-05-03 | 2018-10-16 | 西安电子科技大学 | 基于标识的跨云安全认证系统和方法 |
CN112187451A (zh) * | 2020-08-20 | 2021-01-05 | 如般量子科技有限公司 | 抗量子计算的通信方法、装置、设备及存储介质 |
CN114024689A (zh) * | 2022-01-05 | 2022-02-08 | 华中科技大学 | 一种基于后量子和身份标识的电子邮件收发方法和系统 |
CN114024676A (zh) * | 2022-01-05 | 2022-02-08 | 华中科技大学 | 基于身份标识的后量子加解密方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116346336A (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111314089B (zh) | 一种基于sm2的两方协同签名方法及解密方法 | |
JP5201136B2 (ja) | 匿名認証システムおよび匿名認証方法 | |
CN110247757B (zh) | 基于国密算法的区块链处理方法、装置及系统 | |
US8433897B2 (en) | Group signature system, apparatus and storage medium | |
CN108667626A (zh) | 安全的两方协作sm2签名方法 | |
CN110545279A (zh) | 兼具隐私和监管功能的区块链交易方法、装置及系统 | |
US20060177051A1 (en) | Cryptographic applications of the Cartier pairing | |
CN110113150B (zh) | 基于无证书环境的可否认认证的加密方法和系统 | |
CN114024676B (zh) | 基于身份标识的后量子加解密方法、系统、设备及介质 | |
JPH1041932A (ja) | 暗号キー回復方法及び装置 | |
EP2792098B1 (en) | Group encryption methods and devices | |
CN114726546B (zh) | 数字身份认证方法、装置、设备和存储介质 | |
CN106789087B (zh) | 确定消息的数据摘要、基于多方的数字签名的方法及系统 | |
CN111786786A (zh) | 云计算环境下支持等式判定的代理重加密方法及系统 | |
CN112383397A (zh) | 一种基于生物特征的异构签密通信方法 | |
CN116346336B (zh) | 一种基于多层密钥生成中心的密钥分发方法及相关系统 | |
WO2014030706A1 (ja) | 暗号化データベースシステム、クライアント装置およびサーバ、暗号化データ加算方法およびプログラム | |
CN112804052A (zh) | 一种基于合数阶群的用户身份加密方法 | |
Bindel et al. | The need for being explicit: Failed attempts to construct implicit certificates from lattices | |
Zhan et al. | Improved proxy re-encryption with delegatable verifiability | |
CN115442102B (zh) | 一种基于sm9算法的等式测试方法 | |
Tiwari et al. | Cryptographic hash function: an elevated view | |
JPH06112935A (ja) | 暗号通信方法 | |
Lee | Cryptanalysis of Zhu et al.’s Identity-Based Encryption with Equality Test without Random Oracles | |
Dugardin et al. | A New Fair Identity Based Encryption Scheme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |