CN112073173A - 一种面向区块链pki的非法签名者确定系统 - Google Patents
一种面向区块链pki的非法签名者确定系统 Download PDFInfo
- Publication number
- CN112073173A CN112073173A CN202010927553.7A CN202010927553A CN112073173A CN 112073173 A CN112073173 A CN 112073173A CN 202010927553 A CN202010927553 A CN 202010927553A CN 112073173 A CN112073173 A CN 112073173A
- Authority
- CN
- China
- Prior art keywords
- node
- digital certificate
- signature
- ring
- information
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 claims abstract description 78
- 238000000034 method Methods 0.000 claims abstract description 67
- 238000004364 calculation method Methods 0.000 claims abstract description 19
- 230000007246 mechanism Effects 0.000 claims description 33
- 230000006870 function Effects 0.000 description 20
- 238000004422 calculation algorithm Methods 0.000 description 10
- 230000009286 beneficial effect Effects 0.000 description 8
- 238000004088 simulation Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
Images
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/006—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3249—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Abstract
本申请提供了一种面向区块链PKI的非法签名者确定系统,包括:CA节点和溯源节点;CA节点生成待签名数字证书的验证公钥和验证私钥;对待签名数字证书的第一预设信息和验证公钥进行计算得到第一对称密钥;对第一随机数和CA节点的数字证书序列号进行签名以及对签名结果进行哈希计算得到第一初始值;对待签名数字证书进行环签名。溯源节点在环签名数字证书为非法环签名数字证书时,向目标环中的每个CA节点,分别发送指示主动认领信息;采用验证公钥对主动认领CA节点反馈的待验证签名信息进行验证,在无任一CA节点主动认领的情况下,通过间接验证的方式确定非法签名者。本申请在无需CA节点主动曝光身份的前提下,实现对非法签名者的确定。
Description
技术领域
本申请涉及区块链领域,尤其涉及一种面向区块链PKI的非法签名者确定系统。
背景技术
基于区块链构建公钥基础设施(Public Key Infrastructure,PKI),通过将数字证书上链实现数字证书的公开透明、分布式管理,可有效解决由第三方证书颁发机构(Certificate Authority,CA)被攻击或弱安全实践带来的安全问题,满足随着物联网、大数据、云计算等分布式计算模式日益广泛应用带来的数字证书跨域验证需求。
目前基于区块链的PKI都不允许链中CA节点匿名,以保证PKI的可信性。但是,在一些特殊的应用场景或商业CA不愿泄露商业隐私的场景下,区块链PKI需要保证CA节点的匿名性,实现数字证书的匿名管理。可是,保证CA节点的匿名性不能以降低PKI的可信性为代价。例如,在发现链上有非法签名数字证书后,必须能够准确追溯到该证书的颁发者。
可验证环签名机制是一种在必要时通过真实签名者出示一些相关数据来证明签名者真实身份的环签名机制。但是,目前可验证环签名机制无法直接用于实现数字证书的可监管匿名管理,即目前可验证环签名机制无法实现,在数字证书签发者不主动曝光身份的情况下对签发者身份的确认。
因此,目前亟需一种在数字证书签发者不主动曝光身份的情况下对非法签名者身份的确定机制。
发明内容
本申请提供了一种面向区块链PKI的非法签名者确定系统,目的在于提供在数字证书签发者不主动曝光身份的情况下对非法签名者身份的确定机制。
为了实现上述目的,本申请提供了以下技术方案:
本申请提供了一种面向区块链PKI的非法签名者确定系统,包括:CA节点和用于溯源非法签名者的溯源节点;
所述CA节点,用于在接收到对待签名数字证书的签发请求的情况下,生成所述待签名数字证书的验证公钥和验证私钥;对所述待签名数字证书的第一预设信息和所述验证公钥进行计算,得到包含所述验证公钥的第一对称密钥;对第一随机数和所述CA节点的数字证书序列号进行签名以及对签名结果进行哈希计算,得到第一初始值;依据所述第一对称密钥和所述第一初始值,对所述待签名数字证书进行环签名,得到环签名数字证书;
所述溯源节点,用于在所述环签名数字证书为非法环签名数字证书的情况下,分别向目标环中的每个CA节点,发送用于指示主动认领所述非法环签名数字证书的信息;
所述溯源节点,还用于在接收到目标CA节点发送的认领信息的情况下,向所述目标CA节点发送第一指示信息;所述第一指示信息包括第二预设信息;所述第一指示信息用于指示所述目标CA节点反馈:采用所述验证私钥对所述第二预设信息进行签名得到的待验证签名信息;
所述溯源节点,还用于采用所述验证公钥对所述待验证签名信息进行验证,在验证结果表示验证成功的情况下,确定所述目标CA节点为所述非法环签名数字证书的签名者;
所述溯源节点,还用于在每个CA节点都未发送认领信息的情况下,向所述目标环中每个CA节点分别发送第二指示信息;所述第二指示信息用于指示反馈目标信息;所述目标信息包括:CA节点的数字证书序列号,以及对所述数字证书序列号和所述第一随机数的数字签名;
所述溯源节点,还用于在接收到任一CA节点反馈的目标信息的情况下,依据该CA节点的数字证书序列号查询到的RSA公钥,验证所述数字签名是否为真;
所述溯源节点,还用于在验证为真的情况下,在该CA节点的目标信息中数字签名的哈希计算结果等于所述第一初始值的情况下,确定该CA节点为所述非法环签名数字证书的签名者。
可选的,所述溯源节点,还用于在该CA节点的目标信息中的数字签名的哈希计算结果不等于所述第一初始值的情况下,确定该CA节点不是所述非法环签名数字证书的签名者。
可选的,所述溯源节点,还用于在验证为假的情况下,确定该CA节点为恶意节点。
可选的,所述溯源节点,还用于将未反馈所述目标信息的CA节点作为恶意节点。
可选的,所述溯源节点,还用于在每个CA节点都未发送认领信息的情况下,在向所述目标环中每个CA节点发送第二指示信息之前,暂停所述目标环的环签名功能。
可选的,所述CA节点,用于依据所述第一对称密钥和所述第一初始值,对所述待签名数字证书进行环签名,得到环签名数字证书,包括:
所述CA节点,具体用于将所述第一对称密钥作为RSA环签名机制中的对称密钥,将所述第一初始值作为所述RSA环签名机制中的初始值,对所述待签名数字证书进行环签名,得到环签名数字证书。
可选的,所述第二预设信息包括:第二随机数和所述溯源节点的身份标识。
可选的,所述区块链PKI为采用节点信任增强技术的区块链PKI。
可选的,所述待签名数字证书的数字签名部分是生成的环签名。
可选的,所述待签名数字证书不包括所述CA节点的身份信息。
一方面,在本申请中,在环签名数字证书为非法环签名数字证书的情况下,溯源节点向目标环中的每个CA节点,发送指示主动认领的信息,并在接收到发送认领信息的目标CA节点的情况下,验证目标CA节点是否为非法环签名数字证书的签名者。具体验证过程包括:目标CA节点采用验证私钥对第二预设信息进行签名得到待验证签名信息,溯源节点采用验证公钥对待验证签名信息进行验证。可以看出本申请通过验证公钥和验证私钥,验证目标CA节点是否为非法环签名数字证书的签名者,并不需要目标CA节点曝光身份。
另一方面,由于本申请中对CA节点的身份信息(数字证书序列号)进行签名以及对数字签名进行哈希计算得到第一初始值,从而,保证基于第一初始值生成的环签名中含有签发者的身份信息。进而,为本申请基于环签名中的第一初始值,对签名者身份的间接确认提供了条件。其中,对签名者身份的间接确认过程包括:向目标环中每个CA节点分别发送第二指示信息,在接收到任一CA节点响应第二指示信息反馈的目标信息,并且,该CA节点反馈的目标信息中数字签名为真的情况下,如果该数字签名的哈希计算结果等于第一初始值,则确定该CA节点为非法签名者。因此,可以看出,本申请并不需要CA节点主动曝光身份。
综上所述,本申请可以在无需CA节点主动曝光身份的前提下,实现对非法签名者的确定。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种采用环签名的生成方法的流程图;
图2为本申请实施例公开的X.509标准的待签名数字证书的格式;
图3为本申请实施例公开的环签名数字证书合法性的验证方法流程图;
图4为本申请实施例公开的对非法环签名数字证书的溯源方法的流程图;
图5为本申请实施例公开的RS-MIV签名算法和RS-MIV签名验证算法的时间开销示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例对基于RSA的环签名机制进行改进,提出了一种可多次间接验证的环签名机制(Ring signature with multiple indirect verifications,RS-MIV)。具体的,RS-MIV包括环签名的生成方法(图1对应的实施例)、环签名验证方法(图3对应的实施例)、非法环签名数字证书签发者的溯源方法(图4对应的实施例)。
基于该RS-MIV机制,本申请实施例提供了一种面向区块链PKI的非法签名者确定系统,该系统包括CA节点、合法性验证节点和用于对非法签名者的溯源节点。其中,CA节点在接收到待签名数字证书的情况下,采用本申请实施例提供的环签名生成方法,对待签名数字证书进行环签名,得到环签名数字证书。合法性验证节点采用本申请实施例提供的环签名验证方法,对环签名数字证书的合法性进行验证。溯源节点,在合法性验证得到非法环签名数字证书的情况下,采用本申请实施例提供的非法环签名数字证书签发者的溯源方法,对非法签名者进行溯源。
其中,在实际中,环签名生成方法(数字证书的匿名颁发)、环签名验证方法(匿名数字证书的验证)以及非法环签名数字证书签发者的溯源方法可以采用智能合约来实现这些功能,由于智能合约具有自动化、强制运行特点,因此可保证上述功能的自动执行和安全性。
在实际中,假设环大小为r,环成员为A1,A2,A3...Ar,环成员均是CA节点,假设As为对待签名数字证书进行环签名的CA节点(1≤s≤r)。其中,每个环成员都有RSA公钥Pi=(ni,ei)(1≤i≤r)。
存在单向门限置换为:并且,假定只有Ai知道利用门限信息有效计算逆置换的方法(1≤i≤r)。存在一个被公共定义的对称加密算法E,使得对任意长度l的密钥k,函数Ek都是在bbit串上的一个置换。根据对称加密函数E可以定义复合函数Ck,v(y1,y2,...yr)。该复合函数的输入为密钥k,初始化变量v,以及r个{0,1}b上的任意值(y1,y2,...yr)。
图1为本申请实施例公开的一种环签名的生成方法,执行主体为对待签名数字证书进行签名的CA节点,可以包括以下步骤:
S101、在接收到对待签名数字证书的签发请求的情况下,生成待签名数字证书的验证公钥和验证私钥。
在本实施例中,生成的验证公钥可以表示为(nc,ec),生成的验证私钥可以表示为dc。
在本步骤中,生成待签名数字证书的公钥和私钥的方法,可以为RSA公私钥的生成方法,具体实现过程为现有技术,这里不再赘述。
S102、对待签名数字证书的第一预设信息和验证公钥进行哈希计算,得到包含验证公钥的第一对称密钥,并对第一随机数和CA节点的数字证书序列号进行预设的签名计算,得到第一初始值。
在本步骤中,待签名数字证书的第一预设信息可以为待签名数字证书主体部分,可以表示为m。若待签名数字证书采用X.509标准,则待签名数字证书的主体部分可以包括:版本号、序列号、签名算法、有效期、证书主体、证书主体的公钥信息和扩展项等。
在本步骤中,生成的第一对称密钥可以表示为k,其中,第一对称密钥是通过如下公式(1)生成的。生成的第一初始值可以表示为v,其中,第一初始值是通过如下公式(2)生成。
k=h(m,nc,ec) (1)
v=h(sig(r,Cid)) (2)
式中,h表示哈希运算,r表示第一随机数,Cid表示CA节点的数字证书序列号,sig表示数字签名算法。
S103、依据第一对称密钥和第一初始值,对待签名数字证书进行环签名,得到环签名数字证书。
在本实施例中,可以将第一对称密钥作为RSA环签名机制中的对称密钥,将第一初始值作为RSA环签名机制中的初始值,按照RSA环签名机制对待签名数字证书进行环签名,得到环签名数字证书。其中,在本实施例中,RSA环签名机制为现有的一种环签名机制。
本步骤的具体实现方式可以包括以下步骤A1~步骤A4:
A1、从{0,1}b中均匀且独立的随机选择任意值,并进行单向门限置换,得到单向门限置换值。
在本步骤中,任意值可以表示为xi,其中,1≤i≤r,i≠s。并对选择的任意值进行单向门限置换,将计算得到的结果,称为单向门限置换值,其中,单向门限置换值可以表示为yi,其中,1≤i≤r,i≠s,即得到y1,y2,...yr,其中,y1,y2,...yr不包含ys。
在本实施例中,本步骤的具体实现方式为现有技术,这里不再赘述。
A2、从Ck,v(y1,y2,...yr)=v中求解出ys。
在本步骤中,k为第一对称密钥,v为第一初始值,Ck,v(y1,y2,...yr)中的y1,y2,...yr中,除ys外剩余的都是由步骤A1计算得到的。
A4、输出环签名。
在本步骤中,生成的环签名可以表示为(P1,P2,...Pr;v;x1,x2,...xr;nc,ec,r)。
需要说明的是,本实施例中,待签名数字证书可以采用X.509标准格式,如图2示,但需要做以下修改:(1)待签名数字证书中的数字签名部分是:生成的环签名。(2)因为区块链开放共识的特点,为实现对待签名数字证书中用户隐私信息的保护,采用哈希算法对需保护的用户隐私信息进行计算,在待签名数字证书中保存用户隐私信息的哈希值。采用区块链下获取用户相关隐私信息,并与待签名数字证书中隐私信息的哈希值比较的方法,来确保所获取的用户隐私信息的正确性。(3)为了保证CA节点的匿名性,待签名数字证书中不再有CA节点(颁发者)的身份标识信息。
本实施例具有以下有益效果:
有益效果一:
在本实施例中,环签名保证了签名者的匿名性。并且,生成第一初始值的过程引入了第一随机数r,从而,可以保证生成的第一初始值的随机性。
有益效果二:
在本实施例中,通过将待签名数字证书和验证公钥一起进行环签名来保证验证公钥与待签名数字证书绑定的真实性,以防止验证公钥被伪造。
有益效果三:
在本实施例中,针对待签名数字证书,生成了唯一验证公钥和验证私钥,并且,生成的第一对称密钥中包含了验证公钥。同时,对于待签名数字证书,生成了第一初始值。将第一对称密钥作为现有技术中环签名机制中的对称密钥,将第一初始值作为现有技术中RSA的环签名机制中的初始值,即本申请提供RS-MIV环签名机制并没有对RSA的环签名机制的结构进行改进,所以依然具备基于RSA的环签名机制的所有特性。
有益效果四:
本实施例中对CA节点的身份信息(数字证书序列号)进行签名以及对数字签名进行哈希计算得到第一初始值,从而,保证基于第一初始值生成的环签名中含有签发者的身份信息。进而,为本申请基于环签名中的第一初始值,对签名者身份的间接确认提供了条件。
在本申请中,将环签名数字证书放在区块链上,当用户从链上获取一个环签名数字证书后,首先需要验证环签名数字证书的合法性。在本实施例中,采用环签名验证方法,验证环签名数字证书是否合法,具体的验证过程如图3所示,可以包括以下步骤:
S301、采用单向门限置换方法,计算环签名数字证书的环签名中每个x的单向门限置换值。
在本步骤中,得到环签名中x1,x2,...xr中每个x对应的y的取值,即得到多个单向门限置换值y1,y2,...yr。
S302、对验证公钥和环签名数字证书中的第一预设信息进行哈希计算,得到第二对称密钥。
在本步骤中,第一预设信息的含义可以参考S102中的相关描述,这里不再赘述。
本步骤的具体计算方式如公式(1),这里不再赘述。为了描述方便,将本步骤依据公式(1)计算得到的对称密钥,称为第二对称密钥。
S303、将数字证书的环签名中每个x的单向门限置换值、第二对称密钥和环签名中的第一初始值,代入复合函数中,计算得到第二初始值。
在本步骤中,将S301的计算结果、S302的计算结果和环签名中的第一初始值,代入复合函数Ck,v(y1,y2,...yr)中,将得到的结果称为第二初始值。
S304、判断第二初始值是否等于第一初始值,如果是,则执行S305,如果否,则执行S306。
在本步骤中,判断第二初始值是否等于环签名中的第一初始值,即在本步骤中,判断Ck,v(y1,y2,...yr)=v是否成立。如果是,则执行S305,如果否,则执行S306。
S305、确定环签名数字证书的环签名合法。
在本步骤中,确定环签名数字证书的环签名合法。
S306、确定环签名数字证书的环签名不合法。
在本步骤中,确定环签名数字证书的环签名不合法。用户拒绝接受该环签名数字证书。
在本申请实施例中,在得到环签名数字证书不合法的情况下,需要对非法环签名数字证书的签名者进行溯源。其中,具体溯源的过程,在图4所示的实施例中进行介绍。
需要说明的是,目前环签名数字证书的验证需要构建从根CA到证书签发CA的证书链,并实现对证书链中数字证书的一一验证。但是,在本实施例中,因为证书签发CA节点的匿名性,无法构建证书链。对此,本实施例默认区块链PKI采用了现有的节点信任增强技术。其中,节点信任增强技术在基于区块链PKI存在若干具有初始信任的根CA前提下,在任一CA节点要加入链中时,通过验证从根CA到该CA节点的证书链的方法来建立链中CA节点的信任。因此,即使本实施例无法验证数字证书的证书链,节点信任增强技术也可保证匿名签发该数字证书的CA节点的可信性。
图4为本申请实施例提供的一种对非法环签名数字证书的签名者的溯源方法,可以包括以下步骤:
S401、获取非法环签名数字证书的环签名。
本步骤的具体实现方式为现有技术,这里不再赘述。
S402、依据环签名,确定该非法环签名数字证书的签名者所在的环为目标环。
本步骤的具体实现方式为现有技术,这里不再赘述。
S403、向目标环中的每个CA节点分别发送用于指示主动认领非法环签名数字证书的信息。
在本实施例中,向目标环中的每个CA节点分别发送的信息的具体形式可以通过事先协商确定,本实施例不对信息的具体形式作限定,只要能够实现指示主动认领非法环签名数字证书的功能即可。
通过本步骤,希望接收到该消息的CA节点中,非法环签名数字证书的签名者,可以主动发送认领信息。
在本实施例中,认领信息用于表示主动认领非法环签名数字证书。在实际中,认领信息的具体形式可以通过事先协商确定,本实施例不对认领信息的具体形式作限定,只要能够实现认领信息的功能即可。
S404、判断是否接收到目标CA节点发送的认领信息,如果是,则执行S405,如果否,则执行S411。
在本步骤中,目标CA节点指发送认领信息的CA节点。
S405、向目标CA节点发送第一指示信息。
在本步骤中,第一指示信息可以包括:生成的第二随机数a、溯源节点的身份标识ID和非法环签名数字证书的序列号。
在本实施例中,第一指示信息用于指示目标CA节点将采用验证私钥对第二预设信息进行签名得到的待验证签名信息,进行反馈。其中,第二预设信息包括:第一指示信息中的第二随机数和溯源节点的身份标识。
S406、接收目标CA节点发送的待验证签名信息。
在本实施例中,目标CA节点在接收到第一指示信息的情况下,查询非法环签名数字证书序列号对应的验证私钥;采用验证私钥对第二随机数a和溯源节点的身份标识ID进行签名,得到待验证签名信息sigc(a,ID);并将待验证签名信息sigc(a,ID)发送给溯源节点。
S407、采用验证公钥对待验证签名信息进行验证,得到验证结果。
在本步骤中,验证公钥是非法环签名数字证书对应的验证公钥。本步骤中可以采用RSA算法进行验证,得到验证结果。其中,RSA算法验证的具体实现方式为现有技术,这里不再赘述。
S408、判断验证结果是否表示验证成功,如果是,则执行S409,如果否,则执行S410。
在本步骤中,如果验证结果表示验证成功,则执行S409,如果验证结果表示验证失败,则执行S410。
S409、确定目标CA节点为非法环签名数字证书的签名者。
S410、确定目标CA节点不是非法环签名数字证书的签名者。
上述S401~S410实现了通过向目标环中的每个CA节点发送用于指示主动认领非法环签名数字证书的信息,希望非法环签名数字证书的签名者可以主动认领。并且,在接收到认领信息的情况下,将对认领信息的发送者(目标CA节点)进行身份验证,即验证目标CA节点是否非法环签名数字证书的签名者。并且,对目标CA节点进行身份验证的过程中,主要是基于非法环签名数字证书的验证公钥和验证私钥,并不需要目标CA节点曝光身份。因此,本实施例可以在不需要CA节点曝光身份的情况下,实现对CA节点身份的多次验证。
在本实施例中,在对目标CA节点验证成功的情况下,需要目标CA节点撤销非法环签名数字证书。为了鼓励颁发非法环签名数字证书的CA节点主动认领非法环签名数字证书,可利用区块链的经济奖励机制对主动认领的CA节点进行奖励。
但是,在实际中,颁发非法环签名数字证书的CA节点,可能不主动认领非法环签名数字证书(即不主动发送认领信息),因此,在本实施例中,需要从目标环中的所有CA节点中,确定出颁发非法环签名数字证书的恶意CA节点。具体过程可以包括以下步骤S411-S418:
S411、暂停目标环的环签名功能。
在目标环中任意一个CA节点都未发送认领信息的情况下,执行本步骤的操作。在本步骤中,暂停目标环的环签名功能。其中,本步骤的具体实现方式为现有技术,这里不再赘述。
S412、向目标环中的每个CA节点分别发送第二指示信息。
在本实施例中,向每个CA节点分别发送的第二指示信息相同,为了描述方便,以任意一个CA节点i为例进行介绍。其中,第二指示信息用于指示该CA节点反馈目标信息。其中,目标信息包括:该CA节点的数字证书序列号Cidi,以及对该CA节点的数字证书序列号Cidi和第一随机数r的数字签名sigi(r,Cidi)。即目标信息为(Cidi,sigi(r,Cidi))。
需要说明的是,在本实施例中,第二指示信息的具体形式可以通过事先协商确定,本实施例不对第二指示信息的具体形式作限定,只要可以体现第二指示信息的功能即可。
S413、在接收到任一CA节点反馈的目标信息的情况下,依据该CA节点的数字证书序列号查询到的RSA公钥,验证目标信息中的数字签名是否为真,如果是,则执行S414,如果否,则执行S417。
在本步骤中,依据该CA节点的数字证书序列号Cidi,查询到对应的RSA公钥,并用RSA公钥验证数字签名sigi(r,Cidi)的真实性。其中,具体的验证过程为现有技术,这里不再赘述。
S414、判断目标信息中数字签名的哈希计算结果是否等于第一初始值,如果是,则执行S415,如果否,则执行S416。
在本步骤中,验证v=h(sigi(r,Cidi))是否成立,如果成立,则执行S415,如果不成立,则执行S416。
S415、确定该CA节点为非法环签名数字证书的签名者。
S416、确定该CA节点不是所述非法环签名数字证书的签名者。
S417、确定该CA节点为恶意CA节点。
S418、将未反馈目标信息的CA节点作为恶意CA节点。
在本步骤中,将未响应指示消息的CA节点也作为恶意CA节点。
在本实施例中,通过识别恶意CA节点,可实现在非法匿名数字证书签发者不配合情况下对其身份的间接确认。
在本实施例中,对恶意CA节点可采取基于区块链的经济惩罚措施,同时要求非法环签名数字证书的签名者撤销非法证书。如果恶意CA节点已经不可信,那么撤销该恶意CA节点颁发的所有环签名数字证书,将该恶意CA节点剔除出区块链PKI,同时环中的其他CA节点形成新的环。
本申请实施例具有以下有益效果:
有益效果一:
本申请实施例可实现区块链PKI中CA节点的匿名和数字证书的匿名发布、链上数字证书的匿名验证以及非法数字证书签发者的溯源,满足了实际中对CA节点可监管匿名的需求。
有益效果二:
在本申请实施例中,若Hash函数和RSA算法是安全的,则本申请实施例提供的RS-MIV机制满足匿名性,也即数字证书签发者的身份满足匿名性,而且在CA节点可信的情况下,可以实现对非法环签名数字证书的签发者身份的溯源。
为了进一步验证本申请实施例提供的技术方案的有效性,对本申请实施例进行了安全性分析及性能分析。
一、安全性分析
1、匿名性
定义AIBAnony为攻击本实施例匿名性模拟攻击游戏的敌手,AHash为攻击Hash函数的敌手,ARRS为攻击RS-MIV机制匿名性的敌手,ARSA为攻击RSA方法的敌手。定义一个多项式时间算法A∈(AHash,ARRS,ARSA),包含以上所有攻击者的能力,通过匿名模拟攻击游戏中AIBAnony和A的交互来构造A,使其能够完成以上攻击。即,如果AIBAnony成功攻击了本实施例的匿名性,那么A就能在一定概率下成功攻击其他部分,包括Hash函数、RS-MIV机制和RSA方法。
(1)初始化:方法A初始化系统,运行方案中的匿名证书发布和验证过程,然后把证书公钥PK交给攻击者AIBAnony,保留证书私钥SK和CA对于证书签名S。
(2)询问:敌手AIBAnony向方法A进行多项式有界次数询问:
1)请求询问对应匿名证书的私钥SK,方法A通过运行AHash,ARRS,ARSA在方案中攻击环签名方案和对RSA方法进行破解,将得到的私钥SK交给攻击者AIBAnony。
2)请求询问对应匿名证书的签发CA的秘密信息sig(Cid,r),方法A通过运行AHash,ARRS,ARSA在方案中进行攻击,并把得到的秘密信息返回给AIBAnony。
(3)挑战:当攻击者AIBAnony结束询问后,A选取两个节点i0,i1,并根据RSA方法生成相应的私钥然后随机选择一个比特μ∈{0,1},然后执行上述的各个部分,得到证书Cert和秘密信息sig(Cid,r),最后得到挑战证书并将并返回给A。
(4)猜测:在这里,攻击者AIBAnony还可以进行和之前一样对A进行多项式有界次数询问,但是不允许询问i0,i1的私钥,以及签发CA的秘密信息。
(5)输出:最后,攻击者AIBAnony输出一个猜测μ'∈{0,1},如果μ'=μ,则说明攻击者AIBAnony赢得了游戏,敌手AIBAnony成功的概率为
所以如果攻击者AHash成功攻击Hash函数,ARRS成功攻击RS-MIV机制匿名性,ARSA成功攻击RSA方法,则AIBAnony在实施例匿名性模拟攻击游戏中获胜,但是我们根据上述方法和RS-MIV方案的安全性可知,敌手AIBAnony攻击成功的概率可以忽略不计,因此若Hash函数和RSA方法是安全的,RS-MIV机制满足匿名性,则证书签发者的身份满足匿名性。
2、可溯源性
定义AIBAnony为攻击本实施例匿名性模拟攻击游戏的敌手,ABlc为攻击区块链不可篡改性的敌手,ARRS为攻击RS-MIV案不可伪造性和可验证性的敌手,ARSA为破解RSA公私钥的敌手。定义一个多项式时间方法A∈(ABlc,ARRS,ARSA),包含以上所以攻击者的能力,通过匿名模拟攻击游戏中AIBAnony和A的交互来构造A,使其能够完成以上攻击。即,如果AIBAnony成功攻击了本实施例中的可追溯性,那么A就能在一定概率下成功攻击其他部分,包括区块链不可篡改性,RS-MIV方案,RSA方法。
(1)初始化:方法A初始化系统,运行方案中的匿名证书发布和验证过程,然后把证书公钥PK交给攻击者AIBAnony,保留证书私钥SK和CA对于证书环签名S。
(2)询问:敌手AIBAnony向方法A进行多项式有界次数询问:
1)敌手AIBAnony请求询问节点i所拥有证书对应的私钥SK,方法A通过运行ABlc,ARRS,ARSA的各自模拟攻击游戏将获取的私钥SK发送给AIBAnony。
2)敌手AIBAnony请求询问节点i所拥有证书对应的环签名门限知识Knl,方法A通过运行ABlc,ARRS,ARSA的各自模拟攻击游戏将获取门限知识发送给AIBAnony。
3)敌手AIBAnony请求询问给节点i颁发证书的CA的秘密信息,方法A通过运行ABlc,ARRS,ARSA的各自模拟攻击游戏将获取的秘密信息发送给AIBAnony。
(3)挑战:敌手AIBAnony根据得到的信息,输出证书clCert=CLCert(SK,PK,Cert,Knl)以及CA秘密信息sig(Cid,r)。
(4)输出:如果证书输出无效或者CA秘密信息无效,那么称这次攻击成功。
所以敌手AIBAnony攻击成功的概率为:
因此,如果攻击者ABlc成功攻击区块链的不可篡改性,攻击者ARRS成功攻击RS-MIV方案,攻击者ARSA成功攻击RSA方法,则AIBAnony可以在实施例方案可追踪性模拟攻击游戏中获胜,然而根据已知组件的安全性,AIBAnony攻击成功的概率忽略不计,所以在CA节点可信的情况下,如果区块链满足不可篡改性,RS-MIV机制满足不可伪造性、可验证性,RSA方法是安全的,则在需要时可以实现对证书签发者身份的溯源。
二、性能分析
选择1024bit的RSA方法,定义E为指数运算开销,H为哈希运算开销,环的大小为r。忽略乘法、加法运算的开销,RS-MIV机制计算开销见表1。
表1
由表1可知,本实施例的总计算开销为(4r+3)E+(r+4)H,其中RS-MIV签名机制在方案中计算开销最大。
测试结果如图5所示,当环r的大小接近100时,RS-MIV签名方法耗时可达到1.2秒,而RS-MIV签名验证方法耗时约为0.3秒。但是,实际中签名方法仅在数字证书颁发时使用,不影响数字证书应用的性能,数字证书应用的运行效率只受签名验证方法的影响。并且实际应用中,需要匿名数字证书管理的CA节点不会达到非常多的数量,在参与环的节点数量有限的情况下,方法的耗时都在可接受的范围内。在实现数字证书可监管匿名管理的前提下,增加的时长对于用户而言是可接受的。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种面向区块链PKI的非法签名者确定系统,其特征在于,包括:CA节点和用于溯源非法签名者的溯源节点;
所述CA节点,用于在接收到对待签名数字证书的签发请求的情况下,生成所述待签名数字证书的验证公钥和验证私钥;对所述待签名数字证书的第一预设信息和所述验证公钥进行计算,得到包含所述验证公钥的第一对称密钥;对第一随机数和所述CA节点的数字证书序列号进行签名以及对签名结果进行哈希计算,得到第一初始值;依据所述第一对称密钥和所述第一初始值,对所述待签名数字证书进行环签名,得到环签名数字证书;
所述溯源节点,用于在所述环签名数字证书为非法环签名数字证书的情况下,分别向目标环中的每个CA节点,发送用于指示主动认领所述非法环签名数字证书的信息;
所述溯源节点,还用于在接收到目标CA节点发送的认领信息的情况下,向所述目标CA节点发送第一指示信息;所述第一指示信息包括第二预设信息;所述第一指示信息用于指示所述目标CA节点反馈:采用所述验证私钥对所述第二预设信息进行签名得到的待验证签名信息;
所述溯源节点,还用于采用所述验证公钥对所述待验证签名信息进行验证,在验证结果表示验证成功的情况下,确定所述目标CA节点为所述非法环签名数字证书的签名者;
所述溯源节点,还用于在每个CA节点都未发送认领信息的情况下,向所述目标环中每个CA节点分别发送第二指示信息;所述第二指示信息用于指示反馈目标信息;所述目标信息包括:CA节点的数字证书序列号,以及对所述数字证书序列号和所述第一随机数的数字签名;
所述溯源节点,还用于在接收到任一CA节点反馈的目标信息的情况下,依据该CA节点的数字证书序列号查询到的RSA公钥,验证所述数字签名是否为真;
所述溯源节点,还用于在验证为真的情况下,在该CA节点的目标信息中数字签名的哈希计算结果等于所述第一初始值的情况下,确定该CA节点为所述非法环签名数字证书的签名者。
2.根据权利要求1所述的系统,其特征在于,
所述溯源节点,还用于在该CA节点的目标信息中的数字签名的哈希计算结果不等于所述第一初始值的情况下,确定该CA节点不是所述非法环签名数字证书的签名者。
3.根据权利要求1所述的系统,其特征在于,
所述溯源节点,还用于在验证为假的情况下,确定该CA节点为恶意节点。
4.根据权利要求3所述的系统,其特征在于,
所述溯源节点,还用于将未反馈所述目标信息的CA节点作为恶意节点。
5.根据权利要求1所述的系统,其特征在于,
所述溯源节点,还用于在每个CA节点都未发送认领信息的情况下,在向所述目标环中每个CA节点发送第二指示信息之前,暂停所述目标环的环签名功能。
6.根据权利要求1所述的系统,其特征在于,所述CA节点,用于依据所述第一对称密钥和所述第一初始值,对所述待签名数字证书进行环签名,得到环签名数字证书,包括:
所述CA节点,具体用于将所述第一对称密钥作为RSA环签名机制中的对称密钥,将所述第一初始值作为所述RSA环签名机制中的初始值,对所述待签名数字证书进行环签名,得到环签名数字证书。
7.根据权利要求1所述的系统,其特征在于,所述第二预设信息包括:第二随机数和所述溯源节点的身份标识。
8.根据权利要求1所述的系统,其特征在于,所述区块链PKI为采用节点信任增强技术的区块链PKI。
9.根据权利要求1~8任意一项所述的系统,其特征在于,所述待签名数字证书的数字签名部分是生成的环签名。
10.根据权利要求9所述的系统,其特征在于,所述待签名数字证书不包括所述CA节点的身份信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010927553.7A CN112073173A (zh) | 2020-09-07 | 2020-09-07 | 一种面向区块链pki的非法签名者确定系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010927553.7A CN112073173A (zh) | 2020-09-07 | 2020-09-07 | 一种面向区块链pki的非法签名者确定系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112073173A true CN112073173A (zh) | 2020-12-11 |
Family
ID=73663164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010927553.7A Pending CN112073173A (zh) | 2020-09-07 | 2020-09-07 | 一种面向区块链pki的非法签名者确定系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112073173A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112560113A (zh) * | 2020-12-24 | 2021-03-26 | 珠海格力电器股份有限公司 | 一种节点签名管理方法、系统、电子设备及存储介质 |
CN113672942A (zh) * | 2021-04-29 | 2021-11-19 | 中国电子科技集团公司第三十研究所 | 一种基于区块链的pki证书跨域认证方法 |
CN114389822A (zh) * | 2022-03-22 | 2022-04-22 | 北京百度网讯科技有限公司 | 基于区块链的签名生成方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546173A (zh) * | 2011-12-19 | 2012-07-04 | 河海大学 | 基于证书的数字签名系统及签名方法 |
CN106972931A (zh) * | 2017-02-22 | 2017-07-21 | 中国科学院数据与通信保护研究教育中心 | 一种pki中证书透明化的方法 |
CN107835082A (zh) * | 2017-12-15 | 2018-03-23 | 河海大学 | 一种基于身份的可追踪环签名认证协议 |
US20180294977A1 (en) * | 2015-12-14 | 2018-10-11 | Coinplug, Inc. | System for issuing public certificate on basis of block chain, and method for issuing public certificate on basis of block chain by using same |
CN111064734A (zh) * | 2019-12-25 | 2020-04-24 | 中国科学院信息工程研究所 | 一种区块链系统用户身份匿名、可追踪方法及相应存储介质与电子装置 |
-
2020
- 2020-09-07 CN CN202010927553.7A patent/CN112073173A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546173A (zh) * | 2011-12-19 | 2012-07-04 | 河海大学 | 基于证书的数字签名系统及签名方法 |
US20180294977A1 (en) * | 2015-12-14 | 2018-10-11 | Coinplug, Inc. | System for issuing public certificate on basis of block chain, and method for issuing public certificate on basis of block chain by using same |
CN106972931A (zh) * | 2017-02-22 | 2017-07-21 | 中国科学院数据与通信保护研究教育中心 | 一种pki中证书透明化的方法 |
CN107835082A (zh) * | 2017-12-15 | 2018-03-23 | 河海大学 | 一种基于身份的可追踪环签名认证协议 |
CN111064734A (zh) * | 2019-12-25 | 2020-04-24 | 中国科学院信息工程研究所 | 一种区块链系统用户身份匿名、可追踪方法及相应存储介质与电子装置 |
Non-Patent Citations (1)
Title |
---|
李少卓: "Supervisable Anonymous Management of Digital Certificates for Blockchain PKI", 《ICPCSEE》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112560113A (zh) * | 2020-12-24 | 2021-03-26 | 珠海格力电器股份有限公司 | 一种节点签名管理方法、系统、电子设备及存储介质 |
CN113672942A (zh) * | 2021-04-29 | 2021-11-19 | 中国电子科技集团公司第三十研究所 | 一种基于区块链的pki证书跨域认证方法 |
CN113672942B (zh) * | 2021-04-29 | 2023-05-09 | 中国电子科技集团公司第三十研究所 | 一种基于区块链的pki证书跨域认证方法 |
CN114389822A (zh) * | 2022-03-22 | 2022-04-22 | 北京百度网讯科技有限公司 | 基于区块链的签名生成方法、装置、设备和存储介质 |
CN114389822B (zh) * | 2022-03-22 | 2022-06-28 | 北京百度网讯科技有限公司 | 基于区块链的签名生成方法、装置、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bagga et al. | On the design of mutual authentication and key agreement protocol in internet of vehicles-enabled intelligent transportation system | |
Gupta et al. | Quantum-defended blockchain-assisted data authentication protocol for internet of vehicles | |
CN108768652B (zh) | 一种可抗量子攻击的联盟区块链底层加密方法 | |
CN112073173A (zh) | 一种面向区块链pki的非法签名者确定系统 | |
Chen et al. | Property-based attestation without a trusted third party | |
Xu et al. | Secure multi-authority data access control scheme in cloud storage system based on attribute-based signcryption | |
CN109104284B (zh) | 一种基于环签名的区块链匿名传输方法 | |
CN112968883B (zh) | 一种安全性高的区块链异构共识方法及终端 | |
Ma et al. | Redactable blockchain in decentralized setting | |
CN112651037A (zh) | 区块链系统的链外数据访问方法和系统 | |
CN112380584B (zh) | 区块链数据更新方法、装置、电子设备和存储介质 | |
CN114124406B (zh) | 基于条件匿名环签名和隐私计算的联盟链隐私保护方法 | |
Ali et al. | ECCHSC: Computationally and bandwidth efficient ECC-based hybrid signcryption protocol for secure heterogeneous vehicle-to-infrastructure communications | |
CN110190970A (zh) | 基于公有链的可匿名撤销的环签名及其生成和撤销方法 | |
CN115345618B (zh) | 基于混合后量子数字签名的区块链交易验证方法及系统 | |
CN113268542A (zh) | 一种基于多方授权的区块链重写方法及系统 | |
Babu et al. | EV-PUF: Lightweight security protocol for dynamic charging system of electric vehicles using physical unclonable functions | |
CN110719167B (zh) | 一种基于区块链的带时效性的签密方法 | |
He et al. | A lightweight authentication and key exchange protocol with anonymity for IoT | |
Longo et al. | On the security of the blockchain BIX protocol and certificates | |
Tang et al. | Privacy-preserving authentication scheme based on zero trust architecture | |
Yan et al. | Access control scheme based on blockchain and attribute-based searchable encryption in cloud environment | |
KR101131929B1 (ko) | 공개키 기반 인증장치 및 방법 | |
Gunn et al. | Circumventing cryptographic deniability with remote attestation | |
CN109274674B (zh) | 一种具有高安全性的区块链异构共识方法及终端 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201211 |