CN112000744A - 一种签名方法及相关设备 - Google Patents
一种签名方法及相关设备 Download PDFInfo
- Publication number
- CN112000744A CN112000744A CN202010903873.9A CN202010903873A CN112000744A CN 112000744 A CN112000744 A CN 112000744A CN 202010903873 A CN202010903873 A CN 202010903873A CN 112000744 A CN112000744 A CN 112000744A
- Authority
- CN
- China
- Prior art keywords
- ring
- signature
- transaction
- organization
- uplink
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000008520 organization Effects 0.000 claims abstract description 203
- 238000012795 verification Methods 0.000 claims abstract description 29
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6254—Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种签名方法及相关设备,该方法包括:在环签名组件接收到区块链中的节点发送的目标环组织的标识和待上链交易的交易信息之后,先利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;再将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。其中,因环签名组件是一个独立于区块链的组件,使得区块链依据自身存储的信息只能追溯到环证书,使得已上链交易的各个签名个体处于保密状态,能够有效地保护已上链交易的各个签名个体的隐私,使得该区块链能够应用于匿名场景。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种签名方法及相关设备。
背景技术
区块链是一种基于点对点网络传播的分布式共享数据库,而且区块链具有“不可篡改”“去中心化”“自动化执行”“追踪溯源”等特性。
然而,因区块链追踪溯源特性较强,使得任一用户能够从该区块链中获知交易相关信息(如,交易的签名用户信息),从而使得该区块链不适用于那些匿名场景。
发明内容
为了解决现有技术中存在的以上技术问题,本申请提供一种签名方法及相关设备,能够降低区块链追踪溯源的信息深度,从而使得该区块链能够应用于匿名场景。
为了实现上述目的,本申请实施例提供的技术方案如下:
本申请实施例提供一种签名方法,应用于环签名组件,所述方法包括:
接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息;
利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;
将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
可选的,所述接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息,包括:
在所述区块链中的节点依据所述待上链交易的上链配置参数,确定使用所述环签名组件对所述待上链交易进行环签名之后,接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息。
可选的,所述上链配置参数包括签名成员的隐匿等级。
可选的,所述方法还包括:
获取待入环用户提供的环参数;
在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
可选的,所述方法还包括:
根据所述目标环组织的环参数,生成所述目标环组织中各个成员的成员私钥;
和/或,
根据所述目标环组织的环参数,生成所述目标环组织的环公钥。
本申请实施例还提供了一种签名装置,所述装置包括:
接收单元,用于接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息;
签名单元,用于利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;
发送单元,用于将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
可选的,所述装置还包括:
获取单元,用于获取待入环用户提供的环参数;
添加单元,用于在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
本申请实施例还提供了一种签名系统,所述系统包括区块链和本申请实施例提供的环签名组件的任一实施方式。
本申请实施例还提供了一种设备,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行本申请实施例提供的签名方法的任一实施方式。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本申请实施例提供的签名方法的任一实施方式。
与现有技术相比,本申请实施例至少具有以下优点:
本申请实施例提供的应用于环签名组件的签名方法中,在环签名组件接收到区块链中的节点发送的目标环组织的标识和待上链交易的交易信息之后,先利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;再将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
其中,因环签名组件是一个独立于区块链的组件,使得区块链依据自身存储的信息只能追溯到环证书,从而使得该区块链依据自身存储的信息只能获知已上链交易对应的签名环组织,无法获知已上链交易的各个签名个体(也就是,签名环组织中的各个环成员),如此使得已上链交易的各个签名个体处于保密状态,如此能够有效地保护已上链交易的各个签名个体的隐私。可见,基于环签名组件实现的环签名过程能够降低区块链追踪溯源的信息深度,从而使得该区块链能够应用于匿名场景。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种签名方法的流程图;
图2为本申请实施例提供的环签名组件的应用场景示意图;
图3为本申请实施例提供的一种签名装置的结构示意图;
图4为本申请实施例提供的设备结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
方法实施例一
参见图1,该图为本申请实施例提供的一种签名方法的流程图。
本申请实施例提供的签名方法,包括S1-S4:
S1:环签名组件接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息。
环签名组件是一个能够实现环签名的组件。另外,环签名组件独立于区块链,而且环签名组件能够与区块链进行通信。
需要说明的是,本申请实施例不限定一个环签名组件的服务对象。例如,一个环签名组件可以服务区多个环组织,也可以只服务于一个环组织。
区块链通常包括多个节点,而且每一节点均可以用于接收交易信息。
待上链交易是指需要在区块链中进行交易信息上链的交易。另外,本申请实施例不限定待上链交易,也不限定待上链交易的交易信息。
目标环组织是指需要对待上链交易的交易信息进行环签名的环组织,而且上述环签名组件可以服务于该目标环组织。其中,一个环组织可以包括至少一个环成员,而且每个环成员均能够参与该环组织的管理。
另外,本申请实施例还提供了一种向目标环组织中添加环成员的过程,其具体为:环签名组件获取待入环用户提供的环参数,并在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
待入环用户是指向环签名组件请求加入目标环组织的用户。
待入环用户的环参数是指在待入环用户向环签名组件请求加入目标环组织时,需要向目标环组织提供的入环密码。
目标环组织的环参数是指加入目标环组织应该使用的标准密码。
基于上述内容可知,本申请实施例中,若待入环用户向环签名组件请求加入目标环组织,则环签名组件在获取到待入环用户提供的环参数之后,可以判断待入环用户提供的环参数与所述目标环组织的环参数是否匹配成功,以便在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织,如此能够实现目标环组织的自管理。
基于上述S1的相关内容可知,本申请实施例中,当区块链中的一个节点接收到待上链交易的交易信息之后,该节点会直接将待上链交易的交易信息以及目标环组织的标识发送给环签名组件,以使该环签名组件能够对待上链交易的交易信息进行环签名。
S2:环签名组件利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名。
成员私钥是指环组织中成员所具有的个人私钥。可见,目标环组织的成员私钥是指目标环组织中各个成员所具有的个人私钥。
另外,本申请实施例还提供了一种生成成员私钥的实施方式,其具体为:环签名组件根据所述目标环组织的环参数,生成所述目标环组织中各个成员的成员私钥。可见,目标环组织中的各个成员均具有个人私钥,而且该个人私钥均是基于目标环组织的环参数生成的。
环公钥是指环组织所具有的公共密钥,而且环组织中各个成员均持有该环公钥。另外,本申请实施例还提供了一种生成环公钥的实施方式,其具体为:环签名组件根据所述目标环组织的环参数,生成所述目标环组织的环公钥。
基于上述S2的相关内容可知,在环签名组件获取到目标环组织的标识之后,环签名组件可以先依据该目标环组织的标识,确定出该目标环组织的成员私钥和所述目标环组织的环公钥;再利用目标环组织的成员私钥和所述目标环组织的环公钥,对接收到的待上链交易的交易信息进行签名,得到所述待上链交易的环签名。其中,因目标环组织的成员私钥以及环公钥均是根据目标环组织的环参数生成的,使得区块链只能从待上链交易的环签名中解析出目标环组织的相关信息(例如,环参数),从而使得区块链无法从待上链交易的环签名中解析出目标环组织中各个成员的身份信息,如此有利于保护环组织中成员的隐私。
S3:环签名组件将所述待上链交易的环签名发送给所述区块链。
S4:在所述区块链确定所述待上链交易的环签名通过签名验证时,区块链将所述待上链交易的环签名进行上链存储。
签名验证是指由区块链执行的用于对待上链交易的环签名进行合法性验证的过程。
另外,本申请实施例不限定签名验证。例如,签名验证可以具体为:在区块链接收到待上链交易的环签名之后,区块链可以利用其上预先存储的合法的环组织签名密钥对该待上链交易的环签名进行验证,在确定区块链中预先存储的合法的环组织签名密钥中存在一个与用于生成该待上链交易的环签名的环组织签名密钥(也就是,目标环组织的成员私钥以及环公钥)匹配成功的环组织签名密钥之后,可以确定用于生成该待上链交易的环签名的环组织签名密钥是合法的,从而可以确定待上链交易的环签名通过签名验证,此时可以直接将待上链交易的环签名进行上链存储;然而,在确定区块链中预先存储的合法的环组织签名密钥中不存在与用于生成该待上链交易的环签名的环组织签名密钥(也就是,目标环组织的环组织签名密钥)匹配成功的环组织签名密钥之后,可以确定用于生成该待上链交易的环签名的环组织签名密钥是不合法的,结束当前流程并进行提示。
基于上述S1至S4的相关内容可知,在本申请实施例提供的签名方法中,在环签名组件接收到区块链中的节点发送的目标环组织的标识和待上链交易的交易信息之后,先利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;再将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
其中,因环签名组件是一个独立于区块链的组件,使得区块链依据自身存储的信息只能追溯到环证书,从而使得该区块链依据自身存储的信息只能获知已上链交易对应的签名环组织,无法获知已上链交易的各个签名个体(也就是,签名环组织中的各个环成员),如此使得已上链交易的各个签名个体处于保密状态,如此能够有效地保护已上链交易的各个签名个体的隐私。可见,基于环签名组件实现的环签名过程能够降低区块链追踪溯源的信息深度,从而使得该区块链能够应用于匿名场景。
需要说明的是,本申请实施例不限定环签名组件的应用场景,例如,环签名组件可以应用在图2所示的应用场景中。其中,环签名组件用于签名,而且环签名组件以独立功能组件提供给应用层调用。在环签名服务端中,主要通过环组织内进行自管理,首先初始化环组织,由环成员执行,生成环参数,环参数好比入组织的密码,参与方拿到环参数即可完成入环,同时通过环参数获取公私钥对,生成环签名,成员使用各自私钥和环公钥对信息进行签名等功能。环签名数据库主要用于存储环组织中成员签名信息(如成员私钥),公私钥列表等。环签名验证智能合约,考虑到链上计算成本及效率,本方案只将环签名最重要的步骤验证通过区块链智能合约完成,这样既保证了验证信息的可信,也降低了区块链网络压力,在环签名智能合约验证环节,验证者可通过环参数验证签名的合法性。
可见,图2所示的基于环签名隐私保护的区块链使用策略是一种高匿名性的隐私保护区块链策略,在某些应用场景中如军用、电子现金、匿名通信等场景可以采用该套模型,确保了在环组织内部及环组组织之间交易的合法性,同时又全面保障了环组内部参与人的匿名性,消息可验真伪,可追溯至环组织,但无法追溯至参与人。相对于区块链其他签名技术,此套模型大大提高了参与节点的匿名隐私保护的要求。
方法实施例二
实际上,不同的应用场景所需的隐匿等级(也就是,对签名个体的保密程度)不同,故可以依据待上链交易对应的隐匿等级来确定是否采用群签名组件进行签名。基于此,本申请实施例还提供了签名方法的一种可能的实施方式,在该实施方式中,该签名方法除了包括上述部分或者全部步骤以外,还包括S5-S6:
S5:区块链中的节点获取待上链交易的上链配置参数。
其中,上链配置参数用于描述对待上链交易的交易信息进行签名验证上链过程中所需依据的约束条件。
另外,本申请实施例不限定上链配置参数。例如,上链配置参数可以包括签名成员的隐匿等级。其中,签名成员的隐匿等级用于描述是否允许外界用户通过区块链获取到签名个体,而且签名成员的隐匿等级可以为高级(也就是,不允许外界用户通过区块链获取到签名个体)、中级(也就是,只允许外界用户通过区块链和群签名组件获取到签名个体)、或者低级(也就是,允许外界用户直接通过区块链获取到签名个体)。
S6:在所述区块链中的节点依据所述待上链交易的上链配置参数,确定使用所述环签名组件对所述待上链交易进行环签名之后,接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息。
基于上述S5至S6的相关内容可知,在区块链中的节点获取到待上链交易的上链配置参数之后,若该上链配置参数表征签名成员的隐匿等级为高级,则确定可以使用环签名组件对所述待上链交易进行群签名;若该上链配置参数表征签名成员的隐匿等级为中级,则确定可以使用所述群签名过程(例如,一种能够实现群签名的独立于区块链的群签名组件)对所述待上链交易进行群签名,从而可以直接将目标群组织的标识和待上链交易的交易信息发送给群签名组件,以使该群签名组件对该待上链交易进行签名;若该上链配置参数表征签名成员的隐匿等级为低级,则确定可使用现有签名过程对所述待上链交易进行群签名。可见,本申请实施例可以依据不同应用场景,选择不同的签名过程,以使被选的签名过程能够符合该应用场景对签名个体隐匿等级的限制。
另外,本申请实施例还提供了一种群签名组件,其相关内容如下:
本申请实施例提供的签名方法,包括步骤1-步骤5:
步骤1:群签名组件接收区块链中的节点发送的目标群组织的标识和待上链交易的交易信息。
群签名组件是一个能够实现群签名的组件。另外,群签名组件独立于区块链,而且群签名组件能够与区块链进行通信。
需要说明的是,本申请实施例不限定一个群签名组件的服务对象。例如,一个群签名组件可以服务于多个群组织,也可以只服务于一个群组织。
区块链通常包括多个节点,而且每一节点均可以用于接收交易信息。
待上链交易是指需要在区块链中进行交易信息上链的交易。另外,本申请实施例不限定待上链交易,也不限定待上链交易的交易信息。
目标群组织是指需要对待上链交易的交易信息进行群签名的群组织,而且上述群签名组件可以服务于该目标群组织。
实际上,一个群组织可以包括一个群主和至少一个群员。其中,群主就是该群组织的管理员,而且群主用于对该群组织进行管理(如图2所示,创建群组织、管理群成员等);而且群主具有群主私钥和群主公钥。群员就是该群组织的参与成员,而且每个群员可以持有上述群主公钥,而且每个群员均具有个人信息(如,个人私钥、个人身份等信息)。
需要说明的是,本申请实施例不限定群主的确定方式,例如,可以从一个群组织的所有成员中随机选择一个人作为群主,也可以依据应用场景中监管机构指定的群管理者确定该群组织的群主。
目标群组织的标识用于唯一标识目标群组织。另外,本申请实施例不限定目标群组织的标识,例如,目标群组织的标识可以是目标群组织的组织名称,也可以是目标群组织的组织编号。
需要说明的是,本申请实施例不限定节点获取目标群组织的标识的实施过程。例如,节点可以依据待上链交易确定目标群组织的标识,也可以直接指定目标群组织的标识。
基于上述步骤1的相关内容可知,本申请实施例中,当区块链中的一个节点接收到待上链交易的交易信息之后,该节点会直接将待上链交易的交易信息以及目标群组织的标识发送给群签名组件,以使该群签名组件能够对待上链交易的交易信息进行群签名。
步骤2:群签名组件利用所述目标群组织的群证书对所述待上链交易的交易信息进行签名,得到所述待上链交易的群签名。
群证书是指对交易信息进行群签名时所需使用的证书,而且不同的群组织具有不同的群证书。
另外,本申请实施例还提供了一种群签名组件获取目标群组织的群证书的实施方式,其具体为:群签名组件在获取到所述目标群组织的群主公钥之后,根据所述目标群组织的群主公钥生成所述目标群组织的群证书。
可见,在群签名组件中,在获取到目标群组织的群主公钥之后,可以直接利用该目标群组织的群主公钥生成该目标群组织的群证书,以使该群证书能够唯一标识该目标群组织。
在一些情况下,为了便于后续能够借助群签名组件追溯到签名个体,本申请实施例还提供了步骤2的一种实施方式,其具体为:群签名组件利用所述目标群组织的群证书对所述目标群组织的群员签名信息和所述待上链交易的交易信息进行签名,得到所述待上链交易的群签名。
其中,群员签名信息用于表征对待上链交易的交易信息进行签名的群成员,而且只有群签名组件能够从群员签名信息中解析出参与群签名过程的群成员。需要说明的是,本申请实施例不限定群员签名信息,例如,群员签名信息可以是群成员的身份标识信息。
可见,在群签名组件中,在获取到目标群组织的群证书之后,可以直接利用目标群组织的群证书对目标群组织的群员签名信息以及待上链交易的交易信息进行签名,得到待上链交易的群签名,以使该待上链交易的群签名能够携带有目标群组织的群员签名信息以及待上链交易的交易信息,从而使得区块链能够从该待上链交易的群签名中获取到目标群组织的群员签名信息以及待上链交易的交易信息。
基于上述步骤2的相关内容可知,群签名组件在接收到区块链中节点发送的目标群组织的标识和待上链交易的交易信息之后,先依据目标群组织的标识确定出目标群组织的群证书,再利用目标群组织的群证书对所述待上链交易的交易信息进行签名,得到所述待上链交易的群签名,以使该群签名能够携带有待上链交易的交易信息。
步骤3:群签名组件将所述待上链交易的群签名发送给所述区块链。
步骤4:在所述区块链确定所述待上链交易的群签名通过签名验证时,将所述待上链交易的群签名进行上链存储。
签名验证是指由区块链执行的用于对待上链交易的群签名进行合法性验证的过程。
另外,本申请实施例不限定签名验证。例如,签名验证可以具体为:在区块链接收到待上链交易的群签名之后,区块链可以利用其上预先存储的合法的群证书对该待上链交易的群签名进行群证书验证,在确定区块链中预先存储的合法的群证书中存在一个与用于生成该待上链交易的群签名的群证书(也就是,目标群组织的群证书)匹配成功的群证书之后,可以确定用于生成该待上链交易的群签名的群证书是合法的,从而可以确定待上链交易的群签名通过签名验证,此时可以直接将待上链交易的群签名进行上链存储;然而,在确定区块链中预先存储的合法的群证书中不存在与用于生成该待上链交易的群签名的群证书(也就是,目标群组织的群证书)匹配成功的群证书之后,可以确定用于生成该待上链交易的群签名的群证书是不合法的,结束当前流程并进行提示。
基于上述步骤1至步骤4的相关内容可知,在本申请实施例提供的应用于群签名组件的签名方法中,在群签名组件接收到区块链中的节点发送的目标群组织的标识和待上链交易的交易信息之后,该群签名组件先利用所述目标群组织的群证书对所述待上链交易的交易信息进行签名,得到所述待上链交易的群签名,再将该待上链交易的群签名发送给所述区块链,以使该区块链对该待上链交易的群签名进行签名验证,并在所述区块链确定所述待上链交易的群签名通过签名验证时,直接将所述待上链交易的群签名存储进行上链存储。
其中,因群签名组件是一个独立于区块链的组件,使得区块链依据自身存储的信息只能追溯到群证书,从而使得该区块链依据自身存储的信息只能获知已上链交易对应的签名群组织,无法获知已上链交易的各个签名个体(也就是,签名群员),如此使得已上链交易的各个签名个体处于保密状态,如此能够有效地保护已上链交易的各个签名个体的隐私。可见,基于群签名组件实现的群签名过程能够降低区块链追踪溯源的信息深度,从而使得该区块链能够应用于匿名场景。
在一些情况下,若想要获知群签名的签名个体,则可以向群签名组件申请。基于此,本申请实施例还提供了签名方法的一种可能的实施方式,在该实施方式中,若待上链交易的群签名是由群签名组件利用所述目标群组织的群证书对所述目标群组织的群员签名信息和所述待上链交易的交易信息进行签名得到的,则该签名方法除了包括步骤1-步骤4以外,还包括步骤5-步骤7:
步骤5:群签名组件接收所述区块链发送的签名成员查询请求。
其中,签名成员查询请求用于向群签名组件请求参与待上链交易的群签名过程的签名群员。
本申请实施例中,区块链在接收到群签名组件发送的待上链交易的群签名之后,先对该待上链交易的群签名进行解析,得到该待上链交易的群签名携带的目标群组织的群员签名信息以及待上链交易的交易信息;再依据该目标群组织的群员签名信息,生成签名成员查询请求,并将该签名成员查询请求发送给群签名组件,以使该群签名组件能够基于该签名成员查询请求进行签名群员查询及反馈。
步骤6:群签名组件根据所述签名成员查询请求携带的群员签名信息,确定签名成员。
本申请实施例中,群签名组件在获取到签名成员查询请求之后,可以依据该签名成员查询请求携带的群员签名信息,确定签名成员。其中,因群员签名信息能够准确地表征对待上链交易的交易信息进行签名的群成员,使得群签名组件能够从该群员签名信息中解析出参与待上链交易的群签名过程的签名群员。
步骤7:群签名组件将所述签名成员发送给所述区块链,以使所述区块链对所述签名成员进行上链存储。
基于上述步骤5至步骤7的相关内容可知,在群签名组件将待上链交易的群签名发送给区块链之后,该区块链可以先依据该群签名中携带的目标群组织的群员签名信息生成签名成员查询请求,并将该签名成员查询请求发送给群签名组件,以使该群签名组件基于该签名成员查询请求携带的目标群组织的群员签名信息,确定签名成员并反馈给区块链,以使该区块链能够存储该签名成员,以便后续能够在该区块链中追溯到该签名成员。
基于上述方法实施例提供的签名方法,本申请实施例还提供了一种签名装置,下面结合附图进行解释和说明。
装置实施例
装置实施例提供的签名装置的技术详情,请参照上述方法实施例。
参见图3,该图为本申请实施例提供的一种签名装置的结构示意图。
本申请实施例提供的签名装置300,包括:
接收单元301,用于接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息;
签名单元302,用于利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;
发送单元303,用于将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
在一种可能的实施方式中,所述接收单元301,具体用于:
在所述区块链中的节点依据所述待上链交易的上链配置参数,确定使用所述环签名组件对所述待上链交易进行环签名之后,接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息。
在一种可能的实施方式中,所述上链配置参数包括签名成员的隐匿等级。
在一种可能的实施方式中,所述签名装置300还包括:
获取单元,用于获取待入环用户提供的环参数;
添加单元,用于在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
在一种可能的实施方式中,所述签名装置300还包括:
生成单元,用于根据所述目标环组织的环参数,生成所述目标环组织中各个成员的成员私钥;和/或,根据所述目标环组织的环参数,生成所述目标环组织的环公钥。
基于上述签名装置300的相关内容可知,在签名装置300接收到区块链中的节点发送的目标环组织的标识和待上链交易的交易信息之后,先利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;再将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
其中,因签名装置300是一个独立于区块链的组件,使得区块链依据自身存储的信息只能追溯到环证书,从而使得该区块链依据自身存储的信息只能获知已上链交易对应的签名环组织,无法获知已上链交易的各个签名个体(也就是,签名环组织中的各个环成员),如此使得已上链交易的各个签名个体处于保密状态,如此能够有效地保护已上链交易的各个签名个体的隐私。可见,基于签名装置300实现的环签名过程能够降低区块链追踪溯源的信息深度,从而使得该区块链能够应用于匿名场景。
另外,本申请实施例还提供了一种签名系统,该系统包括区块链和本申请实施例提供的任一环签名组件。
基于上述方法实施例提供的签名方法,本申请实施例还提供了一种设备,下面结合附图进行解释和说明。
设备实施例
设备实施例提供的设备技术详情,请参照上述方法实施例。
参见图4,该图为本申请实施例提供的设备结构示意图。
本申请实施例提供的设备400,包括:处理器401以及存储器402;
所述存储器402用于存储计算机程序;
所述处理器401用于根据所述计算机程序执行上述方法实施例提供的签名方法的任一实施方式。也就是说,处理器401用于执行以下步骤:
接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息;
利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;
将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
可选的,所述接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息,包括:
在所述区块链中的节点依据所述待上链交易的上链配置参数,确定使用所述环签名组件对所述待上链交易进行环签名之后,接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息。
可选的,所述上链配置参数包括签名成员的隐匿等级。
可选的,还包括:
获取待入环用户提供的环参数;
在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
可选的,还包括:
根据所述目标环组织的环参数,生成所述目标环组织中各个成员的成员私钥;
和/或,
根据所述目标环组织的环参数,生成所述目标环组织的环公钥。
以上为本申请实施例提供的设备400的相关内容。
基于上述方法实施例提供的签名方法,本申请实施例还提供了一种计算机可读存储介质。
介质实施例
介质实施例提供的计算机可读存储介质的技术详情,请参照方法实施例。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述方法实施例提供的签名方法的任一实施方式。也就是说,该计算机程序用于执行以下步骤:
接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息;
利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;
将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
可选的,所述接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息,包括:
在所述区块链中的节点依据所述待上链交易的上链配置参数,确定使用所述环签名组件对所述待上链交易进行环签名之后,接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息。
可选的,所述上链配置参数包括签名成员的隐匿等级。
可选的,还包括:
获取待入环用户提供的环参数;
在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
可选的,还包括:
根据所述目标环组织的环参数,生成所述目标环组织中各个成员的成员私钥;
和/或,
根据所述目标环组织的环参数,生成所述目标环组织的环公钥。
以上为本申请实施例提供的计算机可读存储介质的相关内容。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (10)
1.一种签名方法,其特征在于,应用于环签名组件,所述方法包括:
接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息;
利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;
将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
2.根据权利要求1所述的方法,其特征在于,所述接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息,包括:
在所述区块链中的节点依据所述待上链交易的上链配置参数,确定使用所述环签名组件对所述待上链交易进行环签名之后,接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息。
3.根据权利要求2所述的方法,其特征在于,所述上链配置参数包括签名成员的隐匿等级。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取待入环用户提供的环参数;
在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述目标环组织的环参数,生成所述目标环组织中各个成员的成员私钥;
和/或,
根据所述目标环组织的环参数,生成所述目标环组织的环公钥。
6.一种签名装置,其特征在于,所述装置包括:
接收单元,用于接收区块链中的节点发送的目标环组织的标识和待上链交易的交易信息;
签名单元,用于利用所述目标环组织的成员私钥和所述目标环组织的环公钥对所述待上链交易的交易信息进行签名,得到所述待上链交易的环签名;
发送单元,用于将所述待上链交易的环签名发送给所述区块链,以使在所述区块链确定所述待上链交易的环签名通过签名验证时,将所述待上链交易的环签名进行上链存储。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
获取单元,用于获取待入环用户提供的环参数;
添加单元,用于在确定所述待入环用户提供的环参数与所述目标环组织的环参数匹配成功时,将所述待入环用户添加至所述目标环组织。
8.一种签名系统,其特征在于,所述系统包括区块链和权利要求1至5任一项所述的环签名组件。
9.一种设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1-5中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010903873.9A CN112000744B (zh) | 2020-09-01 | 2020-09-01 | 一种签名方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010903873.9A CN112000744B (zh) | 2020-09-01 | 2020-09-01 | 一种签名方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112000744A true CN112000744A (zh) | 2020-11-27 |
CN112000744B CN112000744B (zh) | 2024-02-06 |
Family
ID=73466206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010903873.9A Active CN112000744B (zh) | 2020-09-01 | 2020-09-01 | 一种签名方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112000744B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112600675A (zh) * | 2020-12-04 | 2021-04-02 | 网易(杭州)网络有限公司 | 基于群签名的电子投票方法及装置、电子设备、存储介质 |
CN112636926A (zh) * | 2020-12-24 | 2021-04-09 | 网易(杭州)网络有限公司 | 签名处理方法、装置和电子设备 |
CN113822673A (zh) * | 2021-11-25 | 2021-12-21 | 北京溪塔科技有限公司 | 一种基于环签名的交易报价获取方法及装置 |
CN114219491A (zh) * | 2022-02-23 | 2022-03-22 | 国网电子商务有限公司 | 一种面向区块链的隐私交易方法及相关装置 |
CN114338027A (zh) * | 2021-12-29 | 2022-04-12 | 浙江吉利控股集团有限公司 | 区块链的隐私处理方法、请求终端及存储介质 |
WO2022188611A1 (zh) * | 2021-03-12 | 2022-09-15 | 中兴通讯股份有限公司 | 信息处理方法、装置、设备和存储介质 |
CN115062063A (zh) * | 2022-07-28 | 2022-09-16 | 恒生电子股份有限公司 | 基于区块链的数据查询方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106779704A (zh) * | 2016-12-06 | 2017-05-31 | 杭州趣链科技有限公司 | 一种基于环签名的区块链匿名交易方法 |
CN108768992A (zh) * | 2018-05-17 | 2018-11-06 | 深圳前海微众银行股份有限公司 | 基于区块链的信息匿名传输方法、设备及可读存储介质 |
CN109067547A (zh) * | 2018-09-21 | 2018-12-21 | 北京计算机技术及应用研究所 | 一种基于一次性环签名的区块链隐私保护方法 |
CN109815728A (zh) * | 2018-12-21 | 2019-05-28 | 暨南大学 | 基于区块链的具有隐私保护的公平合同签署方法 |
CN109919619A (zh) * | 2019-04-30 | 2019-06-21 | 中央财经大学 | 一种区块链交易中身份隐私保护方法 |
CN110505067A (zh) * | 2019-09-11 | 2019-11-26 | 北京邮电大学 | 区块链的处理方法、装置、设备及可读存储介质 |
-
2020
- 2020-09-01 CN CN202010903873.9A patent/CN112000744B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106779704A (zh) * | 2016-12-06 | 2017-05-31 | 杭州趣链科技有限公司 | 一种基于环签名的区块链匿名交易方法 |
CN108768992A (zh) * | 2018-05-17 | 2018-11-06 | 深圳前海微众银行股份有限公司 | 基于区块链的信息匿名传输方法、设备及可读存储介质 |
CN109067547A (zh) * | 2018-09-21 | 2018-12-21 | 北京计算机技术及应用研究所 | 一种基于一次性环签名的区块链隐私保护方法 |
CN109815728A (zh) * | 2018-12-21 | 2019-05-28 | 暨南大学 | 基于区块链的具有隐私保护的公平合同签署方法 |
CN109919619A (zh) * | 2019-04-30 | 2019-06-21 | 中央财经大学 | 一种区块链交易中身份隐私保护方法 |
CN110505067A (zh) * | 2019-09-11 | 2019-11-26 | 北京邮电大学 | 区块链的处理方法、装置、设备及可读存储介质 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112600675A (zh) * | 2020-12-04 | 2021-04-02 | 网易(杭州)网络有限公司 | 基于群签名的电子投票方法及装置、电子设备、存储介质 |
CN112636926A (zh) * | 2020-12-24 | 2021-04-09 | 网易(杭州)网络有限公司 | 签名处理方法、装置和电子设备 |
CN112636926B (zh) * | 2020-12-24 | 2022-05-27 | 网易(杭州)网络有限公司 | 签名处理方法、装置和电子设备 |
WO2022188611A1 (zh) * | 2021-03-12 | 2022-09-15 | 中兴通讯股份有限公司 | 信息处理方法、装置、设备和存储介质 |
CN113822673A (zh) * | 2021-11-25 | 2021-12-21 | 北京溪塔科技有限公司 | 一种基于环签名的交易报价获取方法及装置 |
CN114338027A (zh) * | 2021-12-29 | 2022-04-12 | 浙江吉利控股集团有限公司 | 区块链的隐私处理方法、请求终端及存储介质 |
CN114338027B (zh) * | 2021-12-29 | 2024-05-28 | 浙江吉利控股集团有限公司 | 区块链的隐私处理方法、请求终端及存储介质 |
CN114219491A (zh) * | 2022-02-23 | 2022-03-22 | 国网电子商务有限公司 | 一种面向区块链的隐私交易方法及相关装置 |
CN115062063A (zh) * | 2022-07-28 | 2022-09-16 | 恒生电子股份有限公司 | 基于区块链的数据查询方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112000744B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112000744B (zh) | 一种签名方法及相关设备 | |
CN110473105B (zh) | 一种区块链交易结算方法、系统及相关设备 | |
CN108876374B (zh) | 区块链的网络身份证件认证方法和系统 | |
CN109617692B (zh) | 一种基于区块链的匿名登陆方法及系统 | |
US8689300B2 (en) | Method and system for generating digital fingerprint | |
CN108769230B (zh) | 交易数据存储方法、装置、服务器及存储介质 | |
CN108960832B (zh) | 区块链实名通信的隐私保护方法和系统 | |
CN109102404B (zh) | 区块链实名通信的隐私保护方法和系统 | |
CN110417790B (zh) | 区块链实名制排队系统及方法 | |
CN109245897B (zh) | 一种基于非交互的零知识证明的节点认证方法和装置 | |
CN110493237A (zh) | 身份管理方法、装置、计算机设备及存储介质 | |
US20210241270A1 (en) | System and method of blockchain transaction verification | |
CN113360943A (zh) | 一种区块链隐私数据的保护方法及装置 | |
CN110545274A (zh) | 一种基于人证合一的uma服务的方法、装置和系统 | |
CN110611647A (zh) | 一种区块链系统上的节点加入方法和装置 | |
CN109241762A (zh) | 基于区块链技术的资产信息获取方法、装置与计算机设备 | |
CN109104410B (zh) | 一种信息的匹配方法及装置 | |
KR20210086433A (ko) | 블록체인 네트워크를 이용한 영지식 증명 기반의 인증서 서비스 방법, 이를 이용한 인증 지원 서버 및 사용자 단말 | |
CN115688191A (zh) | 一种基于区块链的电子签章系统及方法 | |
CN110020869A (zh) | 用于生成区块链授权信息的方法、装置及系统 | |
CN112446050B (zh) | 应用于区块链系统的业务数据处理方法及装置 | |
CN112036884B (zh) | 一种签名方法及相关设备 | |
CN109327475B (zh) | 一种多层身份认证方法、装置、设备及存储介质 | |
CN110851804A (zh) | 一种基于电子合同的联盟链身份认证方式 | |
CN111931230A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |