CN110401540A - 一种基于区块链可公开校验的门限群签名方法 - Google Patents
一种基于区块链可公开校验的门限群签名方法 Download PDFInfo
- Publication number
- CN110401540A CN110401540A CN201910676452.4A CN201910676452A CN110401540A CN 110401540 A CN110401540 A CN 110401540A CN 201910676452 A CN201910676452 A CN 201910676452A CN 110401540 A CN110401540 A CN 110401540A
- Authority
- CN
- China
- Prior art keywords
- signature
- identity information
- target
- block chain
- processing
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
-
- 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/12—Applying verification of the received information
-
- 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/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- 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/3255—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 group based signatures, e.g. ring or threshold signatures
-
- 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/3257—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 blind signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种基于区块链可公开校验的门限群签名方法、可信中心及系统,方案包括:确定待签名的目标消息;利用签名成员生成与目标消息对应的份额签名;对门限阈值数量的签名成员的份额签名进行合成,得到目标签名;将目标签名、签名成员的份额签名、签名成员的经过二次盲化处理的身份信息存储至区块链。可见,该方案可以实现根据签名信息溯源用户身份;此外,对用户身份进行了盲化处理,有效防止用户隐私泄露;最后,签名信息和盲化后的用户身份信息存储在区块链上,由于区块链具有不可撤销和不可篡改的能力,可防止第三方恶意篡改这些内容,但允许其他参与方公开校验这些信息。
Description
技术领域
本申请涉及信息安全领域,特别涉及一种基于区块链可公开校验的门限群签名方法、可信中心及系统。
背景技术
电子商务是一种专注于产品交换技术的商业活动,现在已经成为一种广受欢迎的贸易形式,但是,电子商务的安全状况一直在恶化,数十亿的帐户被黑客窃取或控制,数以万计的用户身份被泄露,甚至公开交易。
电子签名是指电文中以电子形式存在的、用于表明签名人认可其中内容的数据,是保证信息安全的重要手段。然而,在电子商务的场景下,现有签名方案要么无法实现溯源用户身份,要么无法在实现可公开校验的同时保证用户隐私,要么无法保证公开校验信息的数据安全,无法满足当前使用需求。
发明内容
本申请的目的是提供一种基于区块链可公开校验的门限群签名方法、可信中心及系统,用以解决现有签名方案无法实现溯源用户身份,且无法在实现可公开校验的同时保证用户隐私的问题。具体方案如下:
第一方面,本申请提供了一种基于区块链可公开校验的门限群签名方法,包括:
确定待签名的目标消息;
利用签名成员生成与所述目标消息对应的份额签名;其中,所述份额签名为根据所述目标消息的哈希值、所述签名成员的经过二次盲化处理的身份信息、所述签名成员的私钥生成的;所述经过二次盲化处理的身份信息为所述签名成员对自身的身份信息进行首次盲化处理之后,可信中心对所述首次盲化处理后的身份信息进行再次盲化处理得到的;所述可信中心存储有所述签名成员的原始的身份信息和所述经过二次盲化处理的身份信息;
对门限阈值数量的签名成员的所述份额签名进行合成,得到目标签名;
将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链。
优选的,在所述确定待签名的目标消息之前,还包括:
响应当前用户发出的注册请求,获取所述当前用户的身份信息;
对所述身份信息进行所述首次盲化处理,并将所述首次盲化处理后的身份信息发送至所述当前用户;
利用所述当前用户对所述首次盲化处理后的身份信息进行所述再次盲化处理,得到所述经过二次盲化处理的身份信息,并获取所述当前用户随机生成的第一部分私钥对应的公钥;
根据所述经过二次盲化处理的身份信息,为所述当前用户生成第二部分密钥,并发送至所述当前用户,以便于所述当前用户根据所述第一部分密钥和所述第二部分密钥生成最终的私钥;
将所述第一部分密钥对应的公钥、所述当前用户原始的身份信息、所述经过二次盲化处理的身份信息作为所述当前用户的个人信息,存储至所述可信中心的用户信息列表,以完成注册。
优选的,所述对所述身份信息进行所述首次盲化处理,包括:
生成预设范围内的随机数;
根据目标盲化函数和所述随机数,对所述身份信息进行首次盲化处理,所述目标盲化函数为:
IDi1=s×h(IDi)+u
其中,IDi1为第i个签名成员的所述首次盲化处理后的身份信息,s为所述可信中心的私钥,h(IDi)为第i个签名成员的原始的身份信息的哈希值,u为所述随机数。
优选的,所述将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链,包括:
对所述目标签名进行校验;
在校验通过时,将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息作为所述目标消息的签名信息,存储至所述区块链的签名信息列表中。
优选的,在所述将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链之后,还包括:
响应用户身份溯源请求,搜索所述区块链中的所述签名信息列表,以确定与所述目标签名对应的签名信息;
搜索所述可信中心中的所述用户信息列表,确定与所述签名信息对应的个人信息;
确定所述个人信息中的原始的身份信息,以作为溯源结果。
优选的,在所述确定待签名的目标消息之前,还包括:
响应当前用户发出的从签名群体撤销的请求,利用所述可信中心重新确定所述签名成员的所述第二部分私钥,并发送至所述签名成员,以便于所述签名成员根据重新确定的第二部分私钥更新自身的私钥。
优选的,所述签名成员生成与所述目标消息对应的份额签名,包括:
生成预设范围内的随机数;确定所述目标消息的哈希值;
确定与所述经过二次盲化处理的身份信息对应的临时参数;
根据目标签名函数、所述随机数、所述目标消息的哈希值、所述临时参数、所述签名成员的私钥,生成所述目标消息对应的份额签名;所述目标签名函数为:
si=ki-zdiIi
其中,si为第i个签名成员的所述份额签名,ki为第i个签名成员生成的所述随机数,z为所述目标消息的哈希值,di表示第i个签名成员的私钥,Ii表示第i个签名成员的与所述经过二次盲化处理的身份信息对应的临时参数。
优选的,所述确定与所述经过二次盲化处理的身份信息对应的临时参数,包括:
获取预先生成的与所述经过二次盲化处理的身份信息对应的临时参数,所述临时参数为:
其中,t为所述门限阈值,1≤i≤t,IDi2为第i个签名成员的所述经过二次盲化处理的身份信息,Ii为第i个签名成员的与所述经过二次盲化处理的身份信息对应的临时参数,mod表示模运算,p为预设素数。
第二方面,本申请提供了一种可信中心,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序以实现如上所述的一种基于区块链可公开校验的门限群签名方法的步骤。。
第三方面,本申请提供了一种基于区块链可公开校验的门限群签名系统,包括签名群体,还包括如上所述的可信中心,所述可信中心包括签名合成者,所述签名群体包括多个签名成员。
本申请所提供的一种基于区块链可公开校验的门限群签名方法、可信中心及系统,方案包括:确定待签名的目标消息;利用签名成员生成与目标消息对应的份额签名;对门限阈值数量的签名成员的份额签名进行合成,得到目标签名;将目标签名、签名成员的份额签名、签名成员的经过二次盲化处理的身份信息存储至区块链。其中,份额签名为根据目标消息的哈希值、签名成员的经过二次盲化处理的身份信息、签名成员的私钥生成的;所述经过二次盲化处理的身份信息为签名成员对自身的身份信息进行首次盲化处理之后,可信中心对首次盲化处理后的身份信息进行再次盲化处理得到的;可信中心存储有签名成员的原始的身份信息和经过二次盲化处理的身份信息。
可见,该方案可以在事后根据签名信息溯源用户身份,不用通过公钥加密系统生成用户身份标签,简化了密钥管理过程;此外,对用户身份进行了盲化处理,第三方不能从这些公共信息中计算用户真实身份信息,有效防止用户隐私泄露;最后,签名信息和盲化后的用户身份信息存储在区块链上,由于区块链具有不可撤销和不可篡改的能力,可防止第三方恶意篡改这些内容,但允许其他参与方公开校验这些信息,具备可靠的安全性。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例一的实现流程图;
图2为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例二的实现流程图;
图3为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例二中的用户注册过程示意图;
图4为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例二中的撤销签名成员过程示意图;
图5为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例二中的签名生成过程示意图;
图6为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例二中的签名打开过程示意图;
图7为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例二中的用户注册过程的流程示意图;
图8为本申请所提供的一种基于区块链可公开校验的门限群签名方法实施例二中的签名生成过程的流程示意图;
图9为本申请所提供的一种可信中心实施例的结构示意图;
图10为本申请所提供的一种基于区块链可公开校验的门限群签名系统实施例的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的核心是提供一种基于区块链可公开校验的门限群签名方法、可信中心及系统,实现了根据签名信息溯源用户身份信息,且对用户身份信息进行了盲化处理,保证了用户隐私,最后签名信息和盲化后的用户身份信息存储在区块链上,允许其他参与方公开校验这些信息,且可以防止第三方篡改这些公开校验消息。
下面对本申请提供的一种基于区块链可公开校验的门限群签名方法实施例一进行介绍,参见图1,实施例一包括:
S101、确定待签名的目标消息;
用户在业务处理过程中遇到电子交易或设置隐私信息时,往往需要对电子交易或隐私信息的业务数据进行签名认证,本实施例中目标消息主要指待进行签名认证的业务数据,具体可应用于电子商务领域。
S102、利用签名成员生成与所述目标消息对应的份额签名;
对于签名成员,在生成份额签名时,首先生成随机数,对目标消息求解其对应的哈希值,然后根据随机数、目标消息的哈希值、签名成员的私钥、签名成员的经过二次盲化处理的身份信息,计算得到份额签名。
其中,上述二次盲化处理的身份信息是在签名成员的注册过程中得到的。具体的注册过程包括:在用户发出注册请求后,可信中心获取该用户的身份信息,并根据身份信息判断该用户是否为已注册用户,若是,则拒绝其注册请求,否则,对身份信息进行首次盲化处理,并将首次盲化处理后的身份信息发送至该用户;用户对接收到的首次盲化处理后的身份信息进行校验,若校验通过,则对其进行再次盲化处理,得到经过二次盲化处理的身份信息,并生成第一部分密钥,将经过二次盲化处理的身份信息、第一部分私钥对应的公钥发送至可信中心;可信中心对接收到的信息进行校验,若校验通过,则根据经过二次盲化处理的身份信息为该用户分配第二部分私钥,将第二部分私钥发送至该用户,并将该用户原始的身份信息、经过二次盲化处理的身份信息、第一部分私钥对应的公钥存储至用户信息列表;用户对接收到的第二部分私钥进行校验,若校验通过,则根据第二部分私钥、第一部分私钥确定最终的私钥,以完成注册过程。
上述身份信息主要指用户的标识信息,具体可以包括以下任意一项或多项:身份证号、电子邮件、移动电话号码。
S103、对门限阈值数量的签名成员的所述份额签名进行合成,得到目标签名;
门限群签名是多重签名中的一种特别形式,即n个签名者中的t个人能够代表n个签名者签发消息,本实施例中上述门限阈值即t。具体的,在获取到大于等于门限阈值数量的份额签名后,便可以合成最终的目标签名。首先,对获取到的份额签名进行校验,若校验通过,则执行签名合成操作,为了便于后续溯源需要,同时预防第三者篡改上述目标签名,本实施例将相关签名信息存储到区块链上。作为一种优选的实施方式,在存储之前对目标签名进行校验,若校验通过则执行存储操作。
S104、将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链。
值得一提的是,本实施例基于签名代理者实现,签名代理者具体可以为可信中心,也可以为某个或某些签名成员,还可以为独立设置的代理服务器。
本实施例所提供一种基于区块链可公开校验的门限群签名方法,方案包括:确定待签名的目标消息;利用签名成员生成与目标消息对应的份额签名;对门限阈值数量的签名成员的份额签名进行合成,得到目标签名;将目标签名、签名成员的份额签名、签名成员的经过二次盲化处理的身份信息存储至区块链。可见,该方案能够实现在事后根据签名信息溯源用户身份,不用通过公钥加密系统生成用户身份标签,简化了密钥管理过程;此外,对用户身份进行了盲化处理,第三方不能从这些公共信息中计算用户真实身份信息,有效防止用户隐私泄露;最后,签名信息和盲化后的用户身份信息存储在区块链上,由于区块链具有不可撤销和不可篡改的能力,可防止第三方恶意篡改这些内容,但允许其他参与方公开校验这些信息,具备可靠的安全性。
下面开始详细介绍本申请提供的一种基于区块链可公开校验的门限群签名方法实施例二,实施例二基于上述实施例一实现,并在实施例一的基础上进行了一定程度上的拓展。
如图2所示,实施例二主要包括五个部分,分别为:系统初始化、用户注册、撤销签名成员、生成签名、打开签名,下面分别对这五个部分进行介绍:
S201、系统初始化;
可信中心初始化系统参数,主要完成两项任务:第一项是设置(t,N)门限群签名方案相关参数,构建系统模板参数;第二是生成TC的密钥信息和哈希函数等。具体过程如下:
(1)确定门限群签名方案中参与者N和门限值t的数值,其中t≤N。设置素数p、有限域Fp、生成元g。
(2)可信中心根据上一步模板参数生成密钥相关信息,首先TC选定私钥Ts=s,其对应的公钥为Tp=gsmod p。然后选定t-1次多项式aj∈[1,p-1],j=0,1,...,t-1,其中为待共享的秘密,这里设定a0=gs=f(0)为群私钥,群公钥则为
(3)选定某一单向哈希函数h:{0,1}*→Fp,目的在于将一个01字符串哈希成有限域Fp中的一个数据。
(4)最终,(s,gs,f(x))为可信中心的私密信息,而(Tp,gp,h,g,p)为公知信息。
为方便描述,本实施例中,门限签名方案的符号表示如表1所示:
表1
S202、用户注册;
当用户Ui要加入签名群体时,要执行注册过程。注册过程如图3所示,首先Ui将自己的身份信息发送至可信中心,可信中心对其进行验证,验证通过后,对身份信息进行盲化处理,并发送给用户Ui;用户Ui对身份信息进行校验并执行二次身份盲化,然后生成自己的部分密钥信息,并将上述信息发送给可信中心进行校验;可信中心收到信息后,执行校验,然后将相关信息存储到SQL数据库上,并为用户生成另一部分密钥信息,并将其发送给用户Ui;用户Ui对其进行校验后,将自己生成的密钥信息和可信中心生成的密钥信息进行合成,生成属于自己的私钥和公钥信息。
S203、撤销签名成员;
当某一签名成员Ui撤离签名群体时,此时可信中心执行大部分计算任务,将撤销消息以及附加消息向其他签名成员广播,其他签名成员只需要执行少量的计算任务,便可以完成成员撤销操作。具体过程如下:
如图4所示,首先,可信中心重新选定t-1次多项式f(x),然后为每个签名成员IDi2重新计算第二部分密钥yi=f(IDi2),并将成员撤销消息以及加密后的第二部分密钥发送给其他用户,其他用户只需要更新自身的私钥di=xi+yi,以及其对应的公钥既即可。通过这两步,可信中心就可以删除指定成员IDi2。
可以理解的是,本实施例中S202和S203之间的先后顺序可以进行适应性调整。
S204、生成签名;
对于(t,N)门限群签名方案,本实施例中此时参与成员的集合为U'={U1,U2,...,UN},只需要t≤N个签名成员的份额签名,便可以生成最终合法签名。为了方便论述,下面仅考虑其中t个签名成员,即参与的签名成员集合为U={U1,U2,...,Ut},并假设待签名的消息为消息m。
签名生成过程如图5所示,在成功注册后,签名成员首先生成消息m对应的份额签名,然后交付签名合成者进行签名合成,最后由签名验证者对合成签名进行校验,并将校验成果后的相关信息存储到区块链中。
S205、打开签名。
当发生纠纷时,可以通过访问区块链和可信中心,以从签名信息中溯源其对应的用户的身份信息。在此过程中,并不需要签名合成者和签名验证者的参与,同时利用了区块链不可篡改数据的特性,不仅增加了系统的安全性,同时通过减少了与这些角色交互次数提升了系统效率。具体过程如下:
如图6所示,对于签名信息(R,S),在对其进行溯源时需要访问区块链。当访问区块链时,需要通过(R,S)搜寻到其对应的(IDi2,ri,si)列表信息,由于IDi2是二次盲化后的身份信息,第三方并不能从中推断出用户的真实身份信息。然后访问可信中心,需要根据盲化身份信息IDi2搜寻到(Xi,IDi,IDi2)信息,进而获得用户的真实身份信息IDi。
参见图3和图7,下面以可信中心为执行主体,对前述S202中的用户注册过程进行详细介绍,具体包括以下步骤:
S701、响应用户Ui发出的注册请求,获取其身份信息IDi;
S702、判断用户Ui是否已经注册过,若未注册过,则对身份信息IDi进行首次盲化处理,并将首次盲化处理后的身份信息发送至用户Ui;
具体的,如果该用户已经注册,则直接拒绝其注册请求。上述首次盲化处理过程包括:生成并计算得到U=gumod p,最终得到首次盲化处理后的身份信息IDi1=s×h(IDi)+u,可信中心进而将(U,IDi1)发送给用户Ui。
S703、利用用户Ui对首次盲化处理后的身份信息进行再次盲化处理,得到经过二次盲化处理的身份信息;并利用用户Ui随机生成第一部分私钥,获取第一部分私钥对应的公钥;
具体的,用户Ui收到(U,IDi1)后,首先对内容进行校验,若校验没有通过,说明数据在传输过程中被篡改,可以要求可信中心重新发送上述数据;若校验通过,则随机生成第一部分私钥,并确定相应的公钥,此外,对首次盲化处理后的身份信息进行再次盲化处理。校验公式如下所示:
作为一种具体的实施方式,用户Ui随机生成自己的部分私钥,即上述第一部分私钥并得到相应的公钥然后,对首次盲化处理后的身份信息执行再次盲化处理,以增加方案的安全性。首先用户Ui随机选择并计算得到然后执行再次盲化,最终得到经过二次盲化处理的身份信息IDi2=xi×h(IDi1)+vi,用户将(Xi,Vi,IDi1,IDi2)发送至可信中心。
S704、对收到的信息进行校验,若校验通过,则将(Xi,IDi,IDi2)信息存储在用户信息列表中,并为用户分配第二部分私钥;
具体的,如果校验通过,表明此时用户已成功生成盲化身份信息,可信中心将(Xi,IDi,IDi2)信息存储在用户信息列表UL中,便于进行审计时溯源身份信息。校验公式如下所示:
此后,可信中心为用户分配第二部分私钥yi,其中:
为了防止第三方截取yi信息,例利用用户Ui的公钥信息对其进行加密。
S705、利用用户Ui对接收到的信息进行解密,得到第二部分私钥,以便用户Ui根据第一部分私钥和第二部分私钥确定最终的私钥。
用户收到后,使用私钥解密该信息,进而获取yi信息;然后用户Ui便可以生成最终的私钥。具体的,用户Ui的公钥信息可以为前述第一私钥对应的公钥Xi,相应的,私钥可以为前述第一部分私钥xi。
最终的私钥di=xi+yi,其对应的公钥信息为至此,用户的注册过程结束。
参见图5和图8,下面以签名代理者为执行主体,对前述S204中生成签名的过程进行详尽的介绍,签名代理者包括签名合成者和签名验证者,具体包括以下步骤:
S801、获取用户生成的消息m对应的份额签名;
对于用户Ui,在生成份额签名时,首先生成随机数并得到然后对消息m求解其对应的哈希值z=h(m),并计算得到份额签名:
si=ki-zdiIi
其中
值得一提的是,由于Ii的信息并不需要保密,因此可以预先计算并公布出来,以简化计算复杂度。
在用户Ui生成份额签名(ri,si)之后,获取用户Ui的份额签名(ri,si)、消息m、经过二次盲化的身份信息IDi2。
S802、在接收到大于等于t份份额签名后,签名合成者对份额签名进行校验,对校验通过的t份份额签名进行合成,得到目标签名;
在签名合成者对收到(ri,si)和IDi2进行消息校验时,首先对m求解对应的哈希值z=h(m),然后执行校验公式:
如果校验通过,则可以执行后续的签名合成操作,否则,签名合成者拒绝接收该份额签名消息。在进行签名合成时,从中选择t份校验成功的消息,并按照下式进行计算:
上述(R,S)即为最终的合成签名信息。为了对合成签名信息进行校验,需要生成
最终,签名合成者将合成签名(R,S)、消息m和W发送至签名验证者V进行最终签名校验。
S803、签名验证者对目标签名进行验证;若验证通过,则将目标签名、经过二次盲化处理的身份信息、份额签名存储至区块链。
签名验证者收到合成的目标签名等其他消息后,需要对其进行校验。首先签名验证者对接收到消息m执行哈希计算得到z=h(m),然后校验目标签名的合法性,校验公式如下:
R=gS×(gpW)z
校验成立后,签名验证者将签名成员参与的签名信息(IDi2,ri,si)和合成的最终签名信息(R,S)存储到区块链网络中,以便于溯源,同时增加信息的安全性。
综上,本实施例提供的一种基于区块链可公开校验的门限群签名方法,提出了一种基于身份的门限群签名方案,在本方案中,用户与可信中心进行双向认证,协作生成相应的签名信息,防止任何一方伪造签名信息,本方案将用户的身份证号、电子邮件或移动电话号码作为身份信息,这不仅可以允许事后根据签名信息溯源用户身份信息,而且不用通过公钥加密系统生成用户身份标签,简化了密钥管理过程。为了保护用户隐私,本方案对用户身份信息进行盲化,第三方不能通过盲化后信息获得用户身份信息。盲化后的身份信息和签名信息会被存储在区块链上,能够允许其他参与方进行公开校验,同时基于区块链的不可篡改特性,防止第三方恶意篡改这些内容。本签名方案,实现了匿名性,并能够抵御冒名攻击。另一方面,本方案具有较低的计算开销和较高的通信效率,可以有效地适配于电子商务场景。
下面对本申请实施例提供的一种可信中心进行介绍,下文描述的可信中心与上文描述的一种基于区块链可公开校验的门限群签名方法可相互对应参照。
如图9所示,该可信中心包括:
存储器901:用于存储计算机程序;
处理器902:用于执行所述计算机程序以实现以下步骤:
确定待签名的目标消息;利用签名成员生成与所述目标消息对应的份额签名;对门限阈值数量的签名成员的所述份额签名进行合成,得到目标签名;将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链。其中,所述份额签名为根据所述目标消息的哈希值、所述签名成员的经过二次盲化处理的身份信息、所述签名成员的私钥生成的;所述经过二次盲化处理的身份信息为所述签名成员对自身的身份信息进行首次盲化处理之后,可信中心对所述首次盲化处理后的身份信息进行再次盲化处理得到的;所述可信中心存储有所述签名成员的原始的身份信息和所述经过二次盲化处理的身份信息。
本实施例的可信中心用于实现前述的基于区块链可公开校验的门限群签名方法,因此该可信中心的具体实施方式可见前文中的基于区块链可公开校验的门限群签名方法的实施例部分,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例的可信中心用于实现前述的基于区块链可公开校验的门限群签名方法,因此其作用与上述方法的作用相对应,这里不再赘述。
此外,本申请还提供了一种基于区块链可公开校验的门限群签名系统,如图10所示,包括签名群体100,还包括如上所述的可信中心200,所述可信中心包括签名合成者,所述签名群体包括多个签名成员。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种基于区块链可公开校验的门限群签名方法,其特征在于,包括:
确定待签名的目标消息;
利用签名成员生成与所述目标消息对应的份额签名;其中,所述份额签名为根据所述目标消息的哈希值、所述签名成员的经过二次盲化处理的身份信息、所述签名成员的私钥生成的;所述经过二次盲化处理的身份信息为所述签名成员对自身的身份信息进行首次盲化处理之后,可信中心对所述首次盲化处理后的身份信息进行再次盲化处理得到的;所述可信中心存储有所述签名成员的原始的身份信息和所述经过二次盲化处理的身份信息;
对门限阈值数量的签名成员的所述份额签名进行合成,得到目标签名;
将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链。
2.如权利要求1所述的方法,其特征在于,在所述确定待签名的目标消息之前,还包括:
响应当前用户发出的注册请求,获取所述当前用户的身份信息;
对所述身份信息进行所述首次盲化处理,并将所述首次盲化处理后的身份信息发送至所述当前用户;
利用所述当前用户对所述首次盲化处理后的身份信息进行所述再次盲化处理,得到所述经过二次盲化处理的身份信息;并获取所述当前用户随机生成的第一部分私钥对应的公钥;
根据所述经过二次盲化处理的身份信息,为所述当前用户生成第二部分密钥,并发送至所述当前用户,以便于所述当前用户根据所述第一部分密钥和所述第二部分密钥生成最终的私钥;
将所述第一部分密钥对应的公钥、所述当前用户原始的身份信息、所述经过二次盲化处理的身份信息作为所述当前用户的个人信息,存储至所述可信中心的用户信息列表,以完成注册。
3.如权利要求2所述的方法,其特征在于,所述对所述身份信息进行所述首次盲化处理,包括:
生成预设范围内的随机数;
根据目标盲化函数和所述随机数,对所述身份信息进行首次盲化处理,所述目标盲化函数为:
IDi1=s×h(IDi)+u
其中,IDi1为第i个签名成员的所述首次盲化处理后的身份信息,s为所述可信中心的私钥,h(IDi)为第i个签名成员的原始的身份信息的哈希值,u为所述随机数。
4.如权利要求2所述的方法,其特征在于,所述将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链,包括:
对所述目标签名进行校验;
在校验通过时,将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息作为所述目标消息的签名信息,存储至所述区块链的签名信息列表中。
5.如权利要求4所述的方法,其特征在于,在所述将所述目标签名、所述签名成员的份额签名、所述签名成员的经过二次盲化处理的身份信息存储至区块链之后,还包括:
响应用户身份溯源请求,搜索所述区块链中的所述签名信息列表,以确定与所述目标签名对应的签名信息;
搜索所述可信中心中的所述用户信息列表,确定与所述签名信息对应的个人信息;
确定所述个人信息中的原始的身份信息,以作为溯源结果。
6.如权利要求1所述的方法,其特征在于,在所述确定待签名的目标消息之前,还包括:
响应当前用户发出的从签名群体撤销的请求,利用所述可信中心重新确定所述签名成员的所述第二部分私钥,并发送至所述签名成员,以便于所述签名成员根据重新确定的第二部分私钥更新自身的私钥。
7.如权利要求1-6任意一项所述的方法,其特征在于,所述签名成员生成与所述目标消息对应的份额签名,包括:
生成预设范围内的随机数;确定所述目标消息的哈希值;
确定与所述经过二次盲化处理的身份信息对应的临时参数;
根据目标签名函数、所述随机数、所述目标消息的哈希值、所述临时参数、所述签名成员的私钥,生成所述目标消息对应的份额签名;所述目标签名函数为:
si=ki-zdiIi
其中,si为第i个签名成员的所述份额签名,ki为第i个签名成员生成的所述随机数,z为所述目标消息的哈希值,di表示第i个签名成员的私钥,Ii表示第i个签名成员的与所述经过二次盲化处理的身份信息对应的临时参数。
8.如权利要求7所述的方法,其特征在于,所述确定与所述经过二次盲化处理的身份信息对应的临时参数,包括:
获取预先生成的与所述经过二次盲化处理的身份信息对应的临时参数,所述临时参数为:
其中,t为所述门限阈值,1≤i≤t,IDi2为第i个签名成员的所述经过二次盲化处理的身份信息,Ii为第i个签名成员的与所述经过二次盲化处理的身份信息对应的临时参数,mod表示模运算,p为预设素数。
9.一种可信中心,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序以实现如权利要求1-8任意一项所述的一种基于区块链可公开校验的门限群签名方法的步骤。
10.一种基于区块链可公开校验的门限群签名系统,包括签名群体,还包括如权利要求9所述的可信中心,所述可信中心包括签名合成者,所述签名群体包括多个签名成员。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910676452.4A CN110401540A (zh) | 2019-07-25 | 2019-07-25 | 一种基于区块链可公开校验的门限群签名方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910676452.4A CN110401540A (zh) | 2019-07-25 | 2019-07-25 | 一种基于区块链可公开校验的门限群签名方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110401540A true CN110401540A (zh) | 2019-11-01 |
Family
ID=68324976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910676452.4A Pending CN110401540A (zh) | 2019-07-25 | 2019-07-25 | 一种基于区块链可公开校验的门限群签名方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110401540A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111311264A (zh) * | 2020-01-22 | 2020-06-19 | 数据通信科学技术研究所 | 一种交易发送者的监管方法和系统 |
CN111541551A (zh) * | 2020-05-22 | 2020-08-14 | 杭州时戳信息科技有限公司 | 门限签名消息的处理方法、系统、存储介质及服务器 |
CN111859030A (zh) * | 2020-07-09 | 2020-10-30 | 西南交通大学 | 一种支持复合数据的公开审计方法 |
CN113111396A (zh) * | 2021-04-19 | 2021-07-13 | 湖北央中巨石信息技术有限公司 | 一种增强存储媒体安全性的方法及系统及装置及介质 |
CN115412263A (zh) * | 2022-09-06 | 2022-11-29 | 西南交通大学 | 一种基于双重盲化的拜占庭容错共识方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267308A (zh) * | 2008-04-24 | 2008-09-17 | 上海交通大学 | 具有门限追踪性的民主群签名方法 |
US20180091489A1 (en) * | 2015-08-10 | 2018-03-29 | Cisco Technology, Inc. | Group membership block chain |
CN109377360A (zh) * | 2018-08-31 | 2019-02-22 | 西安电子科技大学 | 基于加权门限签名算法的区块链资产交易转账方法 |
CN109636599A (zh) * | 2018-11-07 | 2019-04-16 | 广西师范大学 | 基于群签名的许可区块链隐私保护和监管方法 |
CN110009354A (zh) * | 2019-04-04 | 2019-07-12 | 郑州师范学院 | 一种区块链中基于群签名的投票方法 |
-
2019
- 2019-07-25 CN CN201910676452.4A patent/CN110401540A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267308A (zh) * | 2008-04-24 | 2008-09-17 | 上海交通大学 | 具有门限追踪性的民主群签名方法 |
US20180091489A1 (en) * | 2015-08-10 | 2018-03-29 | Cisco Technology, Inc. | Group membership block chain |
CN109377360A (zh) * | 2018-08-31 | 2019-02-22 | 西安电子科技大学 | 基于加权门限签名算法的区块链资产交易转账方法 |
CN109636599A (zh) * | 2018-11-07 | 2019-04-16 | 广西师范大学 | 基于群签名的许可区块链隐私保护和监管方法 |
CN110009354A (zh) * | 2019-04-04 | 2019-07-12 | 郑州师范学院 | 一种区块链中基于群签名的投票方法 |
Non-Patent Citations (2)
Title |
---|
PRATYUSH DIKSHIT ET AL.: "《Efficient weighted threshold ECDSA for securing bitcoin wallet》", 《2017 ISEA ASIA SECURITY AND PRIVACY (ISEASP)》 * |
陈立全等: "《适用于移动互联网的门限群签名方案》", 《计算机学报》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111311264A (zh) * | 2020-01-22 | 2020-06-19 | 数据通信科学技术研究所 | 一种交易发送者的监管方法和系统 |
WO2021147283A1 (zh) * | 2020-01-22 | 2021-07-29 | 数据通信科学技术研究所 | 一种交易发送者的监管方法和系统 |
CN111311264B (zh) * | 2020-01-22 | 2023-12-22 | 数据通信科学技术研究所 | 一种交易发送者的监管方法和系统 |
CN111541551A (zh) * | 2020-05-22 | 2020-08-14 | 杭州时戳信息科技有限公司 | 门限签名消息的处理方法、系统、存储介质及服务器 |
CN111541551B (zh) * | 2020-05-22 | 2023-04-18 | 杭州时戳信息科技有限公司 | 门限签名消息的处理方法、系统、存储介质及服务器 |
CN111859030A (zh) * | 2020-07-09 | 2020-10-30 | 西南交通大学 | 一种支持复合数据的公开审计方法 |
CN111859030B (zh) * | 2020-07-09 | 2023-04-28 | 西南交通大学 | 一种支持复合数据的公开审计方法 |
CN113111396A (zh) * | 2021-04-19 | 2021-07-13 | 湖北央中巨石信息技术有限公司 | 一种增强存储媒体安全性的方法及系统及装置及介质 |
CN113111396B (zh) * | 2021-04-19 | 2022-09-02 | 湖北央中巨石信息技术有限公司 | 一种增强存储媒体安全性的方法及系统及装置及介质 |
CN115412263A (zh) * | 2022-09-06 | 2022-11-29 | 西南交通大学 | 一种基于双重盲化的拜占庭容错共识方法 |
CN115412263B (zh) * | 2022-09-06 | 2024-06-11 | 西南交通大学 | 一种基于双重盲化的拜占庭容错共识方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220058655A1 (en) | Authentication system | |
Sonnino et al. | Coconut: Threshold issuance selective disclosure credentials with applications to distributed ledgers | |
EP3673609B1 (en) | Method and apparatus for obtaining input of secure multiparty computation protocol | |
CN110401540A (zh) | 一种基于区块链可公开校验的门限群签名方法 | |
TWI233739B (en) | Systems, methods and computer readable recording medium for remote password authentication using multiple servers | |
CN105553654B (zh) | 密钥信息处理方法和装置、密钥信息管理系统 | |
CN109787758B (zh) | 基于私钥池和Elgamal的抗量子计算MQV密钥协商方法和系统 | |
CN111835526B (zh) | 一种生成匿名凭证的方法及系统 | |
CN109936456B (zh) | 基于私钥池的抗量子计算数字签名方法和系统 | |
CN109728906A (zh) | 基于非对称密钥池的抗量子计算非对称加密方法和系统 | |
CN113067823B (zh) | 邮件用户身份认证和密钥分发方法、系统、设备及介质 | |
CN109560935B (zh) | 基于公共非对称密钥池的抗量子计算的签章方法和签章系统 | |
CN112380584B (zh) | 区块链数据更新方法、装置、电子设备和存储介质 | |
CN113360943A (zh) | 一种区块链隐私数据的保护方法及装置 | |
CN109905229B (zh) | 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和系统 | |
CN109413078A (zh) | 一种基于标准模型下群签名的匿名认证方案 | |
CN113364597A (zh) | 一种基于区块链的隐私信息证明方法及系统 | |
CN109495244A (zh) | 基于对称密钥池的抗量子计算密钥协商方法 | |
Diffie et al. | New Directions in cryptography (1976) | |
Epstein et al. | Security for the digital information age of medicine: Issues, applications, and implementation | |
Wu et al. | A new authenticated key agreement scheme based on smart cards providing user anonymity with formal proof | |
CN107248997A (zh) | 多服务器环境下基于智能卡的认证方法 | |
CN109728905A (zh) | 基于非对称密钥池的抗量子计算mqv密钥协商方法和系统 | |
CN111447058B (zh) | 基于中国剩余定理的图书资源访问控制方法 | |
Doshi et al. | A password based authentication scheme for wireless multimedia systems |
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 |
Application publication date: 20191101 |
|
RJ01 | Rejection of invention patent application after publication |