CN112163845B - 一种跨区块链的交易身份确认方法及装置 - Google Patents
一种跨区块链的交易身份确认方法及装置 Download PDFInfo
- Publication number
- CN112163845B CN112163845B CN202011052478.0A CN202011052478A CN112163845B CN 112163845 B CN112163845 B CN 112163845B CN 202011052478 A CN202011052478 A CN 202011052478A CN 112163845 B CN112163845 B CN 112163845B
- Authority
- CN
- China
- Prior art keywords
- blockchain
- transaction
- public key
- user
- management 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012790 confirmation Methods 0.000 title abstract description 15
- 238000012795 verification Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 12
- 238000005516 engineering process Methods 0.000 description 8
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- 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/22—Payment schemes or models
- G06Q20/223—Payment schemes or models based on the use of peer-to-peer networks
-
- 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
-
- 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/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Abstract
本发明公开了一种跨区块链的交易身份确认方法及装置,其中方法为:获取第一交易的公钥和第二交易的公钥;根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息;若所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为同一用户,从而确定所述第一交易和所述第二交易为同一用户发起的交易。上述方法应用于金融科技(Fintech)时,能够确定所述第一交易和所述第二交易是否为同一用户发起的交易,从而提供了一种跨区块链的交易身份确认方法。
Description
技术领域
本发明涉及金融科技(Fintech)领域中的区块链(blockchain)领域,尤其涉及一种跨区块链的交易身份确认方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出的更高的要求。金融交易常与区块链(blockchain)技术相结合。目前随着区块链技术的发展,跨链交易的场景逐渐出现。
但是,目前的跨链解决方案中,同一个用户分别在多条区块链上有不同的身份。举例来说,一个用户在两条区块链上有两个账户,在两条区块链上发起了两笔关联交易,但交易的签名仍然是区块链上原生账户完成的。然而,这样以来,交易最终零散地分布在各个区块链上,对于同一用户在不同链上的两笔交易,并不知晓是同一用户发起的。这不利于跨链场景下交易身份的监管,是一个亟待解决的问题。
发明内容
本发明提供一种跨区块链的交易身份确认方法及装置,解决了现有技术中同一用户在不同链上的两笔交易,并不知晓是同一用户发起的问题。
第一方面,本发明提供一种跨区块链的交易身份确认方法,包括:获取第一交易的公钥和第二交易的公钥;所述第一交易为第一区块链上第一用户的交易,所述第二交易为第二区块链上第二用户的交易;所述第一交易的公钥是所述第一用户在所述第一区块链上的公钥所述第二交易的公钥是所述第二用户在所述第二区块链上的公钥;所述第一区块链和所述第二区块链均为区块链系统中的区块链;根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息;所述第一身份管理信息包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥;所述第二身份管理信息包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥;若所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为同一用户,从而确定所述第一交易和所述第二交易为同一用户发起的交易。
上述方法中,所述第一交易为第一区块链上第一用户的交易,所述第二交易为第二区块链上第二用户的交易,在并不知悉所述第一交易与所述第二交易是否为同一用户发起的情况下,可以先获取第一交易的公钥和第二交易的公钥,可以根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息所述第二交易的公钥在所述第二区块链上对应第二身份管理信息,而所述第一身份管理信息记录了所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥,所述第二身份管理信息记录了所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥,因此,如果确定了所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,便说明所述第一交易的公钥是所述第二用户在所述第一区块链上的公钥,所述第二交易的公钥是所述第一用户在所述第二区块链上的公钥,也就是说,所述第一用户和所述第二用户为同一用户,即所述第一交易和所述第二交易为同一用户发起的交易,从而提供了一种跨区块链的交易身份确认方法。
可选的,所述第一身份管理信息还包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第一用户在所述第一区块链的私有信息对该区块链的公钥进行签名得到的;所述第二身份管理信息还包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第二用户在所述第二区块链的私有信息对该区块链的公钥进行签名得到的;所述确定所述第一用户和所述第二用户为同一用户之前,还包括:确定所述第一交易的公钥在所述第二身份管理信息中对应的公钥签名验签通过及所述第二交易的公钥在所述第一身份管理信息中对应的公钥签名验签通过。
上述方法中,所述第一身份管理信息还包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥签名,且是通过私有信息对该区块链的公钥进行签名得到的,所以所述第一身份管理信息中的公钥签名可用于验证交易的公钥是否确实为某个公钥,同理所述第二身份管理信息中的公钥签名也可用于验证交易的公钥是否确实为某个公钥,从而通过增加公钥签名验签通过的环节,提升了交易身份确认的可靠性。
可选的,所述第一用户在所述第一区块链的私有信息具体为所述第一用户在所述第一区块链的私钥;所述第二用户在所述第二区块链的私有信息具体为所述第二用户在所述第二区块链的私钥。
上述方法中,所述第一用户在所述第一区块链的私有信息为所述第一用户在所述第一区块链的私钥,由于私钥是和公钥对应的私有信息,从而公钥签名公钥的耦合性更强,更方便地验证公钥签名。
可选的,所述区块链系统中各区块链的公钥签名是采用不同的签名算法得到的。
上述方式下,通过不同的签名算法,得到基于不同签名算法的公钥签名,从而提升了验签过程的安全性。
可选的,所述第一身份管理信息和所述第一交易的公钥存储在所述第一区块链的第一智能合约中;所述第二身份管理信息和所述第二交易的公钥存储在所述第二区块链的第二智能合约中;所述根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息,包括:根据所述第一交易的公钥,调用所述第一智能合约,获得所述第一身份管理信息;根据所述第二交易的公钥,调用所述第二智能合约,获得所述第二身份管理信息。
上述方式下,通过智能合约存储交易的公钥,从而锁定了访问身份管理信息的权限,根据交易的公钥,调用智能合约,才能获得身份管理信息,从而增加了身份管理信息的安全性。
可选的,所述第一交易的公钥和所述第一身份管理信息以键值对形式存储在所述第一区块链;所述第二交易的公钥和所述第二身份管理信息以键值对形式存储在所述第二区块链。
上述方式下,通过键值对形式增加了身份管理信息在区块链上的存储效率。
可选的,若确定所述第二身份管理信息不包括所述第一交易的公钥,或者所述第一身份管理信息不包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为不同用户,从而确定所述第一交易和所述第二交易为不同用户发起的交易。
上述方式下,提供了一种确定所述第一用户和所述第二用户为不同用户的方法。
第二方面,本发明提供一种跨区块链的交易身份确认装置,包括:获取模块,用于获取第一交易的公钥和第二交易的公钥;所述第一交易为第一区块链上第一用户的交易,所述第二交易为第二区块链上第二用户的交易;所述第一交易的公钥是所述第一用户在所述第一区块链上的公钥;所述第二交易的公钥是所述第二用户在所述第二区块链上的公钥;所述第一区块链和所述第二区块链均为区块链系统中的区块链;处理模块,用于根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息;所述第一身份管理信息包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥;所述第二身份管理信息包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥;所述处理模块,还用于若所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为同一用户,从而确定所述第一交易和所述第二交易为同一用户发起的交易。
可选的,所述第一身份管理信息还包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第一用户在所述第一区块链的私有信息对该区块链的公钥进行签名得到的;所述第二身份管理信息还包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第二用户在所述第二区块链的私有信息对该区块链的公钥进行签名得到的;所述处理模块还用于:确定所述第一交易的公钥在所述第二身份管理信息中对应的公钥签名验签通过及所述第二交易的公钥在所述第一身份管理信息中对应的公钥签名验签通过。
可选的,所述第一用户在所述第一区块链的私有信息具体为所述第一用户在所述第一区块链的私钥;所述第二用户在所述第二区块链的私有信息具体为所述第二用户在所述第二区块链的私钥。
可选的,所述区块链系统中各区块链的公钥签名是采用不同的签名算法得到的。
可选的,所述第一身份管理信息和所述第一交易的公钥存储在所述第一区块链的第一智能合约中;所述第二身份管理信息和所述第二交易的公钥存储在所述第二区块链的第二智能合约中;所述处理模块具体用于:根据所述第一交易的公钥,调用所述第一智能合约,获得所述第一身份管理信息;根据所述第二交易的公钥,调用所述第二智能合约,获得所述第二身份管理信息。
可选的,所述第一交易的公钥和所述第一身份管理信息以键值对形式存储在所述第一区块链;所述第二交易的公钥和所述第二身份管理信息以键值对形式存储在所述第二区块链。
可选的,所述处理模块还用于:若确定所述第二身份管理信息不包括所述第一交易的公钥,或者所述第一身份管理信息不包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为不同用户,从而确定所述第一交易和所述第二交易为不同用户发起的交易。
上述第二方面及第二方面各个可选装置的有益效果,可以参考上述第一方面及第一方面各个可选方法的有益效果,这里不再赘述。
第三方面,本发明提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个可选的方法。
第四方面,本发明提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个可选的方法。
本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种跨区块链的交易身份确认方法对应的流程示意图;
图2为本发明实施例提供的一种跨区块链的交易身份方法中身份注册的示意图;
图3为本发明实施例提供的一种跨区块链的交易身份确认装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在金融机构(银行机构、保险机构或证券机构)在进行业务(如银行的贷款业务、存款业务等)运转过程中,金融交易常与区块链(blockchain)技术相结合,同一个用户分别在多条区块链上有不同的身份。这样以来,交易最终零散地分布在各个区块链上,对于同一用户在不同链上的两笔交易,并不知晓是同一用户发起的。这不利于跨链场景下交易身份的监管。这种情况不符合银行等金融机构的需求,无法保证金融机构各项业务的高效运转。为此,如图1所示,本发明提供一种跨区块链的交易身份确认方法。
步骤101:获取第一交易的公钥和第二交易的公钥。
步骤102:根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息。
步骤103:若所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为同一用户,从而确定所述第一交易和所述第二交易为同一用户发起的交易。
需要说明的是,步骤101~步骤103中,所述第一交易为第一区块链上第一用户的交易,所述第二交易为第二区块链上第二用户的交易;所述第一交易的公钥是所述第一用户在所述第一区块链上的公钥;所述第二交易的公钥是所述第二用户在所述第二区块链上的公钥;所述第一区块链和所述第二区块链均为区块链系统中的区块链;所述第一身份管理信息包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥;所述第二身份管理信息包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥。
显然,步骤101~步骤103中是一种基于区块链原有密码体制的面向跨链场景的轻量化身份注册方法,这种方法无需引入其它的密码学体制,也无需新的机构介入,只需要在第一区块链和第二区块链中存储相应的身份管理信息,获得交易的公钥时,直接对比即可,整体来看,成本低效率高。
需要说明的是,步骤101之前,用户在每个区块链上存储有该用户在该区块链上的身份管理信息,举例来说,第一用户在第一区块链中存储第一身份管理信息,第二用户在第二区块链中存储第二身份管理信息。可以通过一个注册过程来完成,如图2所示,具体如下:
在一个存在n条区块链的跨链场景中,每条链采用各自的签名算法,用户在每条链上都存储着在该链上的身份管理信息,n为正整数。
举例来说,用户A在每条链都有一对签名公私钥(skA,pkA),可以通过以下方式注册(如通过智能合约如身份管理合约来注册)。对于区块链i,用户A使用第i条链的私钥分别对其它链的公钥进行签名,具体如下:
…
…
其中Sigi表示第i条区块链的签名算法,代表用户A在第i条链的私钥,/>代表用户A在第i条链的公钥,/>代表用户A使用其在第i条链的私钥对其在第m条链的公钥的签名结果,Hash表示一种签名算法如SHA256。
可以将n条区块链中除第i条区块链之外区块链的公钥的集合,作为用户A在第i条区块链上的身份管理信息,记为Identityi。
那么Identityi可以为其中||表示字符串拼接符号,需要说明的是,Identityi可以包括/>也可以不包括/>
对于每一条区块链,用户A都按照在第i条区块链上的步骤,创建身份管理信息,还可以得到Identity1,…,Identityi-1,Identityi+1,…,Identityn等身份管理信息。
需要说明的是,步骤101~步骤103还可以配合其他信息来联合确认交易的身份,一种可选实施方式(以下称为公钥签名的实施方式)如下:
所述第一身份管理信息还包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第一用户在所述第一区块链的私有信息对该区块链的公钥进行签名得到的;所述第二身份管理信息还包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第二用户在所述第二区块链的私有信息对该区块链的公钥进行签名得到的,基于此,在步骤103中,确定所述第一用户和所述第二用户为同一用户之前,可以执行以下步骤:
确定所述第一交易的公钥在所述第二身份管理信息中对应的公钥签名验签通过及所述第二交易的公钥在所述第一身份管理信息中对应的公钥签名验签通过。
那么Identityi可以为其中||表示字符串拼接符号。
同样的,对于每一条区块链,用户A都按照在第i条区块链上的步骤,创建身份管理信息,还可以得到Identity1,…,Identityi-1,Identityi+1,…,Identityn等身份管理信息。
公钥签名的实施方式中,私有信息具体可以如下:
所述第一用户在所述第一区块链的私有信息具体为所述第一用户在所述第一区块链的私钥;所述第二用户在所述第二区块链的私有信息具体为所述第二用户在所述第二区块链的私钥。
公钥签名的实施方式中,可以采用如下设置:
所述区块链系统中各区块链的公钥签名是采用不同的签名算法得到的。
举例来说,区块链1采用签名算法1,区块链2采用签名算法2,…,区块链n采用签名算法n,这样以来,可以增加公钥签名的多样性,进一步增加交易身份确认的可靠性。
一种可选实施方式(以下简称智能合约的实施方式)中,身份管理信息和公钥可以存储在智能合约,具体来说:
所述第一身份管理信息和所述第一交易的公钥存储在所述第一区块链的第一智能合约中;所述第二身份管理信息和所述第二交易的公钥存储在所述第二区块链的第二智能合约中。基于此,步骤102可以按照如下方式执行:
根据所述第一交易的公钥,调用所述第一智能合约,获得所述第一身份管理信息;根据所述第二交易的公钥,调用所述第二智能合约,获得所述第二身份管理信息。
需要说明的是,所述第一身份管理信息和所述第一交易的公钥在第一智能合约中存在对应关系,当调用智能合约时,通过所述第一交易的公钥便能知悉所述第一交易的公钥对应的所述第一身份管理信息;同理,通过所述第二交易的公钥便能知悉所述第二交易的公钥对应的所述第二身份管理信息。
一种可选实施方式中,身份管理信息和公钥可以按照以下方式存储:
所述第一交易的公钥和所述第一身份管理信息以键值对形式存储在所述第一区块链;所述第二交易的公钥和所述第二身份管理信息以键值对形式存储在所述第二区块链。
需要说明的是,上述实施方式既可以直接存储在区块链中,也可以与智能合约的实施方式结合,存储在智能合约中。
举例来说,将拼接好的身份管理信息以键值对(Key-Value)的方式保存到第i条链的身份管理合约,其中键Key为用户A在第i条链的公钥值Value是Identityi。
一种可选实施方式中,若确定所述第二身份管理信息不包括所述第一交易的公钥,或者所述第一身份管理信息不包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为不同用户,从而确定所述第一交易和所述第二交易为不同用户发起的交易。
结合步骤101~步骤103所述的方法及可选方法,举例来说,一种可能的过程具体如下:
获取第一交易(区块链i的交易txi)和第二交易(区块链j的交易txj),可以直接根据区块链的交易可以恢复出对应的公钥,分别为第一交易的公钥(交易txi的公钥pki)和第二交易的公钥pkj(交易txj的公钥pkj)。
然后以pki和pkj为键分别在区块链i和区块链j的身份管理合约中查询对应的身份管理信息,pki对应的身份管理信息为Identityi,pkj对应的身份管理信息为Identityj。
如果满足以下条件:
pkj∈Identityi&&Vefi(Sj)==true&&pki∈Identityj&&Vefj(Si)==true,则交易txi和txj属于同一个用户。
其中∈表示属于,&&表示并且,==表示相等,Vefi表示第i条链的签名验证方法,Si表示pki对应的公钥签名,Vefj表示第j条链的签名验证方法,Sj表示pkj对应的公钥签名,验证通过返回真(true)。
显然,通过上述方式用户不同链之间的账户以互相签名的方式两两绑定,所以不会存在用户冒认其它人账户的情况。
下面基于步骤101~步骤103所述的方法及可选方法的描述,详细介绍本申请提供的一种跨区块链的交易身份确认方法,具体如下:
举例来说,区块链系统共有三条区块链。区块链1,区块链2使用的签名算法和曲线是ECDSA-secp256k1,公钥130字节,签名130字节;区块链3使用签名算法和曲线是ECDSA-secp256r1,公钥132字节,签名258字节。需要说明的是,其公钥和签名都是以“0x”为前缀16进制的字符串。使用的哈希算法都是SHA256。用户A的注册方式如下:
用户A分别使用一条区块链的私钥对其它两条区块链的公钥进行签名,得到:
区块链1的两个签名:
区块链2的两个签名:
区块链3的两个签名:
区块链1和区块链2的签名是两个130字节的字符串,区块链3的签名是两个258字节的字符串。
拼接公钥和签名得到在三条区块链注册的身份管理信息:
区块链1的身份管理信息:
区块链2的身份管理信息:
区块链3的身份管理信息:
其中区块链1,区块链2的身份管理信息是130+130+132+130=522字节的字符串,区块链3的身份信息是130+258+130+258=776字节的字符串。
分别在三条区块链的身份管理合约以key-value方式注册身份信息:
区块链1的键值(kv)对::Identity1,key130字节,value552字节;
区块链2的键值(kv)对::Identity2,key130字节,value552字节;
区块链3的键值(kv)对::Identity3,key132字节,value776字节。
交易身份的确认方法:
获取区块链1的交易tx1和区块链2的交易tx2,恢复公钥,得到区块链1的公钥pk1和区块链2的公钥pk2。
然后以pk1和pk2为键(key)分别在区块链1和区块链2的身份管理合约中查询对应的身份管理信息,得到为Identity1和Identity2。
若满足以下条件:pk1∈Identity2&&Vef2(S1)==true&&pk2∈Identity1&&Vef1(S2)==true,则,交易tx1和tx2属于同一用户。
如图3所示,本发明提供一种跨区块链的交易身份确认装置,包括:获取模块301,用于获取第一交易的公钥和第二交易的公钥;所述第一交易为第一区块链上第一用户的交易,所述第二交易为第二区块链上第二用户的交易;所述第一交易的公钥是所述第一用户在所述第一区块链上的公钥;所述第二交易的公钥是所述第二用户在所述第二区块链上的公钥;所述第一区块链和所述第二区块链均为区块链系统中的区块链;处理模块302,用于根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息;所述第一身份管理信息包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥;所述第二身份管理信息包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥;所述处理模块302,还用于若所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为同一用户,从而确定所述第一交易和所述第二交易为同一用户发起的交易。
可选的,所述第一身份管理信息还包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第一用户在所述第一区块链的私有信息对该区块链的公钥进行签名得到的;所述第二身份管理信息还包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第二用户在所述第二区块链的私有信息对该区块链的公钥进行签名得到的;所述处理模块302还用于:确定所述第一交易的公钥在所述第二身份管理信息中对应的公钥签名验签通过及所述第二交易的公钥在所述第一身份管理信息中对应的公钥签名验签通过。
可选的,所述第一用户在所述第一区块链的私有信息具体为所述第一用户在所述第一区块链的私钥;所述第二用户在所述第二区块链的私有信息具体为所述第二用户在所述第二区块链的私钥。
可选的,所述区块链系统中各区块链的公钥签名是采用不同的签名算法得到的。
可选的,所述第一身份管理信息和所述第一交易的公钥存储在所述第一区块链的第一智能合约中;所述第二身份管理信息和所述第二交易的公钥存储在所述第二区块链的第二智能合约中;所述处理模块302具体用于:根据所述第一交易的公钥,调用所述第一智能合约,获得所述第一身份管理信息;根据所述第二交易的公钥,调用所述第二智能合约,获得所述第二身份管理信息。
可选的,所述第一交易的公钥和所述第一身份管理信息以键值对形式存储在所述第一区块链;所述第二交易的公钥和所述第二身份管理信息以键值对形式存储在所述第二区块链。
可选的,所述处理模块302还用于:若确定所述第二身份管理信息不包括所述第一交易的公钥,或者所述第一身份管理信息不包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为不同用户,从而确定所述第一交易和所述第二交易为不同用户发起的交易。
基于同一发明构思,本发明实施例还提供了一种计算机设备,包括程序或指令,当所述程序或指令被执行时,如本发明实施例提供的跨区块链的交易身份确认方法及任一可选方法被执行。
基于同一发明构思,本发明实施例还提供了一种计算机可读存储介质,包括程序或指令,当所述程序或指令被执行时,如本发明实施例提供的跨区块链的交易身份确认方法及任一可选方法被执行。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种跨区块链的交易身份确认方法,其特征在于,包括:
获取第一交易的公钥和第二交易的公钥;所述第一交易为第一区块链上第一用户的交易,所述第二交易为第二区块链上第二用户的交易;所述第一交易的公钥是所述第一用户在所述第一区块链上的公钥;所述第二交易的公钥是所述第二用户在所述第二区块链上的公钥;所述第一区块链和所述第二区块链均为区块链系统中的区块链;
根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息;所述第一身份管理信息包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥;所述第二身份管理信息包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥;
若所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为同一用户,从而确定所述第一交易和所述第二交易为同一用户发起的交易。
2.如权利要求1所述的方法,其特征在于,
所述第一身份管理信息还包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第一用户在所述第一区块链的私有信息对该区块链的公钥进行签名得到的;
所述第二身份管理信息还包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥签名,其中,任一区块链的公钥签名是根据所述第二用户在所述第二区块链的私有信息对该区块链的公钥进行签名得到的;
所述确定所述第一用户和所述第二用户为同一用户之前,还包括:
确定所述第一交易的公钥在所述第二身份管理信息中对应的公钥签名验签通过及所述第二交易的公钥在所述第一身份管理信息中对应的公钥签名验签通过。
3.如权利要求2所述的方法,其特征在于,所述第一用户在所述第一区块链的私有信息具体为所述第一用户在所述第一区块链的私钥;所述第二用户在所述第二区块链的私有信息具体为所述第二用户在所述第二区块链的私钥。
4.如权利要求2所述的方法,其特征在于,所述区块链系统中各区块链的公钥签名是采用不同的签名算法得到的。
5.如权利要求1至4任一项所述的方法,其特征在于,所述第一身份管理信息和所述第一交易的公钥存储在所述第一区块链的第一智能合约中;所述第二身份管理信息和所述第二交易的公钥存储在所述第二区块链的第二智能合约中;
所述根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息,包括:
根据所述第一交易的公钥,调用所述第一智能合约,获得所述第一身份管理信息;
根据所述第二交易的公钥,调用所述第二智能合约,获得所述第二身份管理信息。
6.如权利要求1至4任一项所述的方法,其特征在于,所述第一交易的公钥和所述第一身份管理信息以键值对形式存储在所述第一区块链;所述第二交易的公钥和所述第二身份管理信息以键值对形式存储在所述第二区块链。
7.如权利要求1至4任一项所述的方法,其特征在于,还包括:
若确定所述第二身份管理信息不包括所述第一交易的公钥,或者所述第一身份管理信息不包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为不同用户,从而确定所述第一交易和所述第二交易为不同用户发起的交易。
8.一种跨区块链的交易身份确认装置,其特征在于,包括:
获取模块,用于获取第一交易的公钥和第二交易的公钥;所述第一交易为第一区块链上第一用户的交易,所述第二交易为第二区块链上第二用户的交易;所述第一交易的公钥是所述第一用户在所述第一区块链上的公钥;所述第二交易的公钥是所述第二用户在所述第二区块链上的公钥;所述第一区块链和所述第二区块链均为区块链系统中的区块链;
处理模块,用于根据所述第一交易的公钥从所述第一区块链获取第一身份管理信息,并根据所述第二交易的公钥从所述第二区块链获取第二身份管理信息;所述第一身份管理信息包括:所述第一用户在所述区块链系统中除所述第一区块链之外区块链上的公钥;所述第二身份管理信息包括:所述第二用户在所述区块链系统中除所述第二区块链之外区块链上的公钥;
所述处理模块,还用于若所述第二身份管理信息包括所述第一交易的公钥,且所述第一身份管理信息包括所述第二交易的公钥,则确定所述第一用户和所述第二用户为同一用户,从而确定所述第一交易和所述第二交易为同一用户发起的交易。
9.一种计算机设备,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至7中任意一项所述的方法被执行。
10.一种计算机可读存储介质,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至7中任意一项所述的方法被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011052478.0A CN112163845B (zh) | 2020-09-29 | 2020-09-29 | 一种跨区块链的交易身份确认方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011052478.0A CN112163845B (zh) | 2020-09-29 | 2020-09-29 | 一种跨区块链的交易身份确认方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112163845A CN112163845A (zh) | 2021-01-01 |
CN112163845B true CN112163845B (zh) | 2024-03-22 |
Family
ID=73860787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011052478.0A Active CN112163845B (zh) | 2020-09-29 | 2020-09-29 | 一种跨区块链的交易身份确认方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112163845B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117040766B (zh) * | 2023-10-08 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108022100A (zh) * | 2017-11-29 | 2018-05-11 | 江苏安凰领御科技有限公司 | 一种基于区块链技术的交叉认证系统及方法 |
WO2018184446A1 (zh) * | 2017-04-06 | 2018-10-11 | 中国移动通信有限公司研究院 | 实现ca互信的方法、装置、系统和电子设备 |
CN108880794A (zh) * | 2018-06-15 | 2018-11-23 | 浙江华信区块链科技服务有限公司 | 跨链用户身份及其数字资产管理系统 |
CN109257342A (zh) * | 2018-09-04 | 2019-01-22 | 阿里巴巴集团控股有限公司 | 区块链跨链的认证方法、系统、服务器及可读存储介质 |
CN110519261A (zh) * | 2019-08-23 | 2019-11-29 | 东莞市盟大塑化科技有限公司 | 一种跨链操作的风险评估方法 |
CN111010381A (zh) * | 2019-12-06 | 2020-04-14 | 趣派(海南)信息科技有限公司 | 一种基于跨链的身份认证方法和系统 |
CN111027036A (zh) * | 2019-12-09 | 2020-04-17 | 武汉信安珞珈科技有限公司 | 一种基于区块链的身份关联方法 |
CN111062716A (zh) * | 2019-11-29 | 2020-04-24 | 支付宝(杭州)信息技术有限公司 | 生成区块链签名数据的方法及装置、区块链交易发起系统 |
CN111209550A (zh) * | 2020-01-13 | 2020-05-29 | 上海佩俪信息科技有限公司 | 一种区块链钱包用户身份认证方法及系统 |
CN111368340A (zh) * | 2020-01-04 | 2020-07-03 | 链农(深圳)信息科技有限公司 | 基于区块链的通证安全校验方法、装置及硬件设备 |
CN111539718A (zh) * | 2020-01-19 | 2020-08-14 | 南京邮电大学 | 一种基于侧链的区块链跨链身份认证方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190066068A1 (en) * | 2017-08-22 | 2019-02-28 | Sap Se | Transaction Platform Providing Unified Interaction with Multiple Heterogeneous Blockchains |
-
2020
- 2020-09-29 CN CN202011052478.0A patent/CN112163845B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018184446A1 (zh) * | 2017-04-06 | 2018-10-11 | 中国移动通信有限公司研究院 | 实现ca互信的方法、装置、系统和电子设备 |
CN108022100A (zh) * | 2017-11-29 | 2018-05-11 | 江苏安凰领御科技有限公司 | 一种基于区块链技术的交叉认证系统及方法 |
CN108880794A (zh) * | 2018-06-15 | 2018-11-23 | 浙江华信区块链科技服务有限公司 | 跨链用户身份及其数字资产管理系统 |
CN109257342A (zh) * | 2018-09-04 | 2019-01-22 | 阿里巴巴集团控股有限公司 | 区块链跨链的认证方法、系统、服务器及可读存储介质 |
CN110519261A (zh) * | 2019-08-23 | 2019-11-29 | 东莞市盟大塑化科技有限公司 | 一种跨链操作的风险评估方法 |
CN111062716A (zh) * | 2019-11-29 | 2020-04-24 | 支付宝(杭州)信息技术有限公司 | 生成区块链签名数据的方法及装置、区块链交易发起系统 |
CN111010381A (zh) * | 2019-12-06 | 2020-04-14 | 趣派(海南)信息科技有限公司 | 一种基于跨链的身份认证方法和系统 |
CN111027036A (zh) * | 2019-12-09 | 2020-04-17 | 武汉信安珞珈科技有限公司 | 一种基于区块链的身份关联方法 |
CN111368340A (zh) * | 2020-01-04 | 2020-07-03 | 链农(深圳)信息科技有限公司 | 基于区块链的通证安全校验方法、装置及硬件设备 |
CN111209550A (zh) * | 2020-01-13 | 2020-05-29 | 上海佩俪信息科技有限公司 | 一种区块链钱包用户身份认证方法及系统 |
CN111539718A (zh) * | 2020-01-19 | 2020-08-14 | 南京邮电大学 | 一种基于侧链的区块链跨链身份认证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112163845A (zh) | 2021-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111859348B (zh) | 一种基于用户识别模块及区块链技术的身份认证方法及装置 | |
US20210176072A1 (en) | Blockchain post-quantum signature scheme | |
CN107342867B (zh) | 签名验签方法和装置 | |
US11182851B2 (en) | Inter-ledger messaging in a blockchain | |
CN110892434B (zh) | 基于区块链网络转移数字票券 | |
WO2020134653A1 (zh) | 一种电子凭证上传的方法及装置 | |
CN109934593B (zh) | 用于实现支持多重签名的区块链系统的设计方法及设备 | |
CN106960165A (zh) | 一种基于区块链智能合约实现电子合同多方会签的方法 | |
CN116158053A (zh) | 离线交互系统和方法 | |
US11436599B2 (en) | Blockchain-based identity verification method and related hardware | |
CN109861829B (zh) | 支持动态更新的云数据公正审计系统及其审计方法 | |
CN110503434A (zh) | 基于哈希算法的数据验证方法、装置、设备和存储介质 | |
CN112488682B (zh) | 一种区块链的三方转账方法及装置 | |
CN115380303A (zh) | 基于区块链的可信平台 | |
CN113302610A (zh) | 基于区块链的可信平台 | |
CN112163845B (zh) | 一种跨区块链的交易身份确认方法及装置 | |
Gulati et al. | Self-sovereign dynamic digital identities based on blockchain technology | |
CN110598007B (zh) | 账单文件处理方法、装置、介质及电子设备 | |
WO2022206433A1 (zh) | 一种在Fabric区块链中预执行链码的方法和装置 | |
CN112184245B (zh) | 一种跨区块链的交易身份确认方法及装置 | |
CN112667743B (zh) | 应用于传输终端的数据上链方法、系统、设备、存储介质 | |
CN111353780B (zh) | 授权验证方法、装置及存储介质 | |
CN105427102A (zh) | 基于金融ic卡的认证方法及其相应的设备和系统 | |
US20230112296A1 (en) | Universal payment channels | |
CN103647650A (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 |