CN116012009A - 基于区块链的交易验证方法、装置、电子设备和可读介质 - Google Patents
基于区块链的交易验证方法、装置、电子设备和可读介质 Download PDFInfo
- Publication number
- CN116012009A CN116012009A CN202111230060.9A CN202111230060A CN116012009A CN 116012009 A CN116012009 A CN 116012009A CN 202111230060 A CN202111230060 A CN 202111230060A CN 116012009 A CN116012009 A CN 116012009A
- Authority
- CN
- China
- Prior art keywords
- verification
- public key
- information
- transaction
- key
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请涉及一种基于区块链的交易验证方法。该方法包括:接收密钥更新请求,密钥更新请求中包括识别信息以及目标公钥,其中,识别信息用于唯一标识接收节点;将识别信息对应的待更新公钥更新为目标公钥;向共识节点发送交易请求,其中,交易请求中包含识别信息以及验证信息,验证信息为使用目标公钥对应的目标私钥签名后生成的;接收共识节点发送的公钥查询请求,其中,公钥查询请求中包含识别信息;根据公钥查询请求向共识节点发送目标公钥,以使共识节点根据目标公钥对验证信息进行验证。该方法能够在面对公钥对应的私钥出现不可用的情况时,可以将公钥替换为新公钥,因此,能够避免用户资产受到损失,提升区块链系统的可用性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于区块链的交易验证方法、装置、电子设备和可读介质。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链中的每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
在相关技术中,在进行区块链交易时,资产转出方通常利用资产接收方公开的公钥来对交易的资产进行加密。资产接收方在需要接收资产时,则采用私钥进行解密,以便使用得到的资产。
资产接收方的私钥信息通常由资产接收方进行离线保存。然而,一旦私钥出现遗失或者数据损坏等情况导致私钥不可用,则资产接收方就无法利用所得到的资产,从而造成用户收到损失,影响区块链系统的可用性。
发明内容
基于上述技术问题,本申请提供一种基于区块链的交易验证方法、装置、电子设备和可读介质,以在面对公钥对应的私钥出现不可用的情况时,可以将公钥替换为新公钥,利用新公钥对应的私钥来进行交易验证以进行交易,因此,能够避免用户资产受到损失,提升区块链系统的可用性。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供一种基于区块链的交易验证方法,包括:
接收密钥更新请求,所述密钥更新请求中包括识别信息以及目标公钥,其中,所述识别信息用于唯一标识接收节点;
将所述识别信息对应的待更新公钥更新为所述目标公钥;
向共识节点发送交易请求,其中,所述交易请求中包含所述识别信息以及验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
接收所述共识节点发送的公钥查询请求,其中,所述公钥查询请求中包含所述识别信息;
根据所述公钥查询请求向所述共识节点发送所述目标公钥,以使所述共识节点根据所述目标公钥对所述验证信息进行验证。
根据本申请实施例的一个方面,提供一种基于区块链的交易验证装置,包括:
更新请求接收模块,用于接收密钥更新请求,所述密钥更新请求中包括识别信息以及目标公钥,其中,所述识别信息用于唯一标识接收节点;
公钥更新模块,用于将所述识别信息对应的待更新公钥更新为所述目标公钥;
交易请求发送模块,用于向共识节点发送交易请求,其中,所述交易请求中包含所述识别信息以及验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
查询请求接收模块,用于接收所述共识节点发送的公钥查询请求,其中,所述公钥查询请求中包含所述识别信息;
公钥发送模块,用于根据所述公钥查询请求向所述共识节点发送所述目标公钥,以使所述共识节点根据所述目标公钥对所述验证信息进行验证。
在本申请的一些实施例中,在以上方案的基础上,所述密钥更新请求还包含操作者身份类型、操作者签名、操作者校验信息以及操作者校验签名,所述操作者身份类型用于标识所述密钥更新请求的发起方的身份,所述操作者校验签名是根据所述目标私钥对所述操作者校验信息进行签名得到的;公钥更新模块,包括:
操作者公钥确定单元,用于根据所述身份类型,确定所述密钥更新请求的发起方的操作者公钥;
身份校验单元,用于根据所述操作者公钥,对所述操作者签名进行身份校验,得到身份校验结果;
密钥校验单元,用于根据所述目标公钥、所述操作者校验信息以及所述操作者校验签名进行密钥校验,得到密钥校验结果;
公钥更新单元,用于若所述身份校验结果和所述密钥校验均指示校验通过,则将所述识别信息对应的待更新公钥更新为所述目标公钥。
在本申请的一些实施例中,在以上方案的基础上,所述密钥更新请求还包含管理员标识,操作者公钥确定单元,包括:
接收节点公钥获取子单元,用于若所述身份类型指示所述密钥更新请求的发起方为所述接收节点,则获取所述待更新公钥作为操作者公钥;
管理员公钥获取子单元,用于若所述身份类型指示所述密钥更新请求的发起方为管理员节点,则获取所述管理员标识对应的管理员公钥作为所述操作者公钥。
在本申请的一些实施例中,在以上方案的基础上,身份校验单元包括:
操作者公钥签名子单元,用于根据所述操作者公钥对所述密钥更新请求进行签名,得到身份签名结果;
身份校验通过子单元,用于若所述身份签名结果与所述操作者签名一致,则生成身份校验结果以用于指示身份校验通过;
身份校验失败子单元,用于若所述身份签名结果与所述操作者签名不一致,则生成身份校验结果以用于指示身份校验失败。
在本申请的一些实施例中,在以上方案的基础上,密钥校验单元包括:
操作者校验签名验证子单元根据所述目标公钥,对所述操作者校验签名进行验证,得到签名验证结果;
密钥校验通过子单元,用于若所述签名验证结果与所述操作者校验信息一致,则生成密钥校验结果以用于指示密钥校验通过;
密钥校验失败子单元,用于若所述签名验证结果与所述操作者校验信息不一致,则生成密钥校验结果以用于指示密钥校验失败。
在本申请的一些实施例中,在以上方案的基础上,基于区块链的交易验证装置还包括:
管理信息更新请求接收模块,用于接收管理信息更新请求,所述管理信息更新请求包括管理者身份类型、管理者身份签名、新增管理员标识、新增管理员公钥、管理者校验信息以及管理者校验签名,其中,所述管理者身份类型用于标识所述管理信息更新请求的发起方的身份,所述管理者校验签名是根据所述新增管理员公钥对应的新增管理员私钥对所述管理者校验信息进行签名得到的;
管理方公钥确定模块,用于根据所述管理者身份类型,确定所述管理信息更新请求的发起方的管理方公钥;
管理者身份校验模块,用于根据所述管理方公钥,对所述管理者身份签名进行身份校验,得到管理者校验结果;
密钥校验身份校验模块,用于根据所述新增管理员公钥、所述管理者校验信息以及所述管理者校验签名进行密钥校验,得到管理信息校验结果;
管理信息更新模块,用于若所述管理者校验结果和所述管理信息校验结果均指示校验通过,则根据所述新增管理员标识和所述新增管理员公钥,更新所述识别信息对应的管理信息。
在本申请的一些实施例中,在以上方案的基础上,基于区块链的交易验证装置还包括:
信息发送模块,用于向服务节点发送所述识别信息和所述待更新公钥,以使所述服务节点存储所述识别信息和所述待更新公钥的映射关系,所述服务节点用于根据所述识别信息获取所述待更新公钥;
服务地址信息接收模块,用于接收所述服务节点发送的服务地址信息,所述服务地址信息用于唯一标识所述服务节点;
服务地址索引更新模块,用于根据所述识别信息和所述服务地址信息之间的映射关系,更新所述区块链的服务地址索引。
在本申请的一些实施例中,在以上方案的基础上,交易请求发送模块包括:
历史交易信息获取单元,用于根据所述识别信息,从区块链中获取所述识别信息对应的历史交易信息;
历史交易信息签名单元,用于根据所述目标私钥,对所述历史交易信息进行签名,得到所述验证信息;
根据所述识别信息以及所述验证信息,生成所述交易请求并且向共识节点发送所述交易请求。
根据本申请实施例的一个方面,提供一种基于区块链的交易验证方法,包括:
接收交易请求,所述交易请求中包含识别信息、交易地址信息和验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
根据所述识别信息和所述交易地址信息进行交易地址校验,得到地址验证结果;
根据所述识别信息,从服务节点获取所述识别信息对应的目标公钥;
根据所述目标公钥以及所述验证信息进行合法性校验,得到合法性校验结果;
根据所述地址验证结果和所述合法性校验,确定交易验证结果。
根据本申请实施例的一个方面,提供一种基于区块链的交易验证装置,其特征在于,包括:
交易请求接收模块,用于接收交易请求,所述交易请求中包含识别信息、交易地址信息和验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
交易地址校验模块,用于根据所述识别信息和所述交易地址信息进行交易地址校验,得到地址验证结果;
目标公钥获取模块,用于根据所述识别信息,从服务节点获取所述识别信息对应的目标公钥;
合法性校验模块,用于根据所述目标公钥以及所述验证信息进行合法性校验,得到合法性校验结果;
交易验证结果模块,用于确定根据所述地址验证结果和所述合法性校验,确定交易验证结果。
在本申请的一些实施例中,在以上方案的基础上,目标公钥获取模块包括:
服务地址信息查询单元,用于根据所述识别信息,从区块链的服务地址索引中查询服务地址信息,所述地址索引表用于存储识别信息与服务地址信息之间的映射关系;
识别信息发送单元,用于根据所述服务地址信息,向所述服务地址信息对应的服务节点发送所述识别信息,以获取所述识别信息对应的目标公钥。
在本申请的一些实施例中,在以上方案的基础上,交易地址校验模块包括:
散列计算单元,用于对所述识别信息进行散列计算,得到散列值;
地址验证通过单元,用于若所述散列值与所述交易地址信息一致,则生成地址验证结果以用于指示地址验证通过;
地址验证失败单元,用于若所述散列值与所述交易地址信息不一致,则生成地址验证结果以用于指示地址验证失败。
在本申请的一些实施例中,在以上方案的基础上,合法性校验模块包括:
签名校验单元,用于根据所述目标公钥,对所述验证信息进行校验,得到签名校验结果;
合法性验证通过单元,用于若所述签名校验结果与所述识别信息对应的历史交易信息一致,则确定合法性验证通过;
法性验证失败单元,用于若所述交易签名结果与所述识别信息对应的历史交易信息不一致,则确定合法性验证失败。
根据本申请实施例的一个方面,提供一种电子设备,该电子设备包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,该处理器配置为经由执行可执行指令来执行如以上技术方案中的基于区块链的交易验证方法。
根据本申请实施例的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,当该计算机程序被处理器执行时实现如以上技术方案中的基于区块链的交易验证方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的基于区块链的交易验证方法。
在本申请的实施例中,根据识别信息来对待更新公钥进行更新,在利用更新后的公钥发起交易请求来完成交易验证。本方案采用识别信息来代替公钥散列值以标识交易节点,在面对公钥对应的私钥出现不可用的情况时,可以将公钥替换为新公钥,利用新公钥对应的私钥来进行交易验证以进行交易,因此,能够避免用户资产受到损失,提升区块链系统的可用性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
在附图中:
图1是本发明实施例提供的分布式系统100应用于区块链系统的一个可选的结构示意图;
图2为本申请实施例中区块的一个组成结构示意图;
图3为本申请实施例中基于区块链的交易验证方法的示意流程图;
图4为本申请实施例中密钥更新流程的示意流程图;
图5为本申请实施例中管理信息更新请求的示意流程图;
图6为本申请实施例中合约发布过程和校验过程的示意流程图;
图7示意性地示出了本申请实施例中的区块链的交易验证装置的组成框图;
图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,本申请所提供的交易验证方法可应用于区块链系统,区块链(Blockchain)是一种由多方共同维护,使用密码学保证传输和访问安全,能够实现数据一致存储、难以篡改、防止抵赖的记账技术,也称为分布式账本技术(DistributedLedgerTechnology)。典型的区块链以块-链结构存储数据。
本申请具体可以应用于区块链的公有链、私有链或者联盟链等各类区块链的实现形式,其中,公有链中没有官方组织或者管理机构来进行集中监管,也不依靠固定的核心服务器来提供区块链服务,区块链按照区块链规则运行,所有加入区块链的节点均按照区块链规则接入,节点之间的交易则按照规则规定的共识机制来运行。常见的公有链的形式例如包括量子等虚拟资源。私有链是由组织或者个人建立并且拥有的区块链形式,通常在例如组织内部或者受许可的若干用户等规定范围内使用。私有链中通常对节点的修改、读取或者交易等权限进行限制,并且可以存在若干个关键节点来进行共识和记账的过程,而其他节点则不参与记账。联盟链通常是若干组织联合建立的区块链,并且由建立区块链的组织共同使用和管理。通常联盟链中的各个参与组织都会指定若干和节点作为共识节点,各个组织指定的共识节点共同进行记账过程,而其他的节点之间的交易过程由共识节点来进行记账。
本申请提出了一种基于区块链的交易验证方法,该方法本发明实施例涉及的系统可以是由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式系统。
以分布式系统为区块链系统为例,参见图1,图1是本发明实施例提供的分布式系统100应用于区块链系统的一个可选的结构示意图,由多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端形成,节点之间形成组成的点对点(P2P,Peer ToPeer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
参见图1示出的区块链系统中各节点的功能,涉及的功能包括:
1)路由,节点具有的基本功能,用于支持节点之间的通信。
节点除具有路由功能外,还可以具有以下功能:
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
例如,应用实现的业务包括:
2.1)钱包,用于提供进行虚拟资源的交易的功能,包括发起交易(即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询虚拟资源地址中剩余的虚拟资源;
2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
2.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的虚拟资源转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。
分布式节点中包括交易节点和共识节点,然而,应理解的是,交易节点和共识节点仅是对于节点的身份进行划分,而非对分布式节点的分类,一个分布式节点可以具有一个或者多个身份、在不同身份之间切换或者在不同的场景下具有不同身份。例如,一个节点在进行交易时的身份是交易节点,但该节点也可以作为共识节点对其他节点的交易过程进行验证和记账,需要说明的是,图1中所示的分布式节点的数目仅为示意性的,根据实际需要可以部署任意数目的分布式节点。
在本申请的一个实施例中,分布式节点可以根据区块链网络的交易规则生成交易信息,并且在区块链网络中广播该交易信息。区块链网络中的共识节点在接收到交易信息后对交易进行验证,并且广播验证结果。当区块链网络中的共识节点按照规则对该交易信息达成共识之后,则可以根据该交易信息进行记账,并且通知区块链网络中其他网络节点设备更新记账信息。
用户可以通过客户端等设备访问上述区块链中的任意一个网络节点设备,并且通过该网络节点设备发起交易请求。用户在区块链网络中会拥有一个钱包地址,该钱包地址通常与一对公钥和私钥中的公钥相关联,而用户则需要利用其所拥有的私钥解锁钱包地址所对应的资产,以便发起交易请求来消费。交易过程中会生成一个解锁脚本和一个锁定脚本,解锁脚本用于解锁之前转移给该用户的钱包地址的资产,而锁定脚本用于表示向其他用户的钱包地址交易资产并且对交易出的资产进行锁定。而接收资产的接收方在想要进行其他交易时,再利用其私钥将交易目标是其钱包地址的资产解锁来进行交易。需要说明的是,客户端部署于终端设备上,其中,终端设备包含但不仅限于车载终端、平板电脑、笔记本电脑、掌上电脑、手机及个人电脑(personalcomputer,PC),此处不做限定。
请参阅图2,图2为本申请实施例中区块的一个组成结构示意图,如图所示,区块链由多个区块组成,区块是在区块链网络中的数据组织单元,由链表来将区块进行串联。区块包括区块头和区块主体,区块头包括前一区块的哈希值、本区块时间戳、区块高度以及其他信息(例如,区块主体的Merkle数根,难度目标和随机值等)。区块主体包括交易信息,比如“A向B转账50个虚拟资源”,每条交易信息对应一个哈希值,哈希值能够唯一而精准地标识某条交易信息。一笔交易中会包括交易目标的地址、金额、引用交易的哈希值、解锁脚本和锁定脚本等信息。
参见图2,图2是本发明实施例提供的区块结构(Block Structure)一个可选的示意图,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
结合上述介绍,下面将对本申请中基于区块链的交易验证方法进行介绍,基于区块链的交易验证方法可以由计算机设备,请参阅图3,图3为本申请实施例中基于区块链的交易验证方法的示意流程图,本申请实施例中基于区块链的交易验证方法可以包括如下步骤:
步骤S301,接收密钥更新请求,所述密钥更新请求中包括识别信息以及目标公钥,其中,所述识别信息用于唯一标识接收节点。
在本实施例中,接收节点接收密钥更新请求。接收节点即用户所拥有的区块链账户,用户在访问某个具体的网络节点设备时,该设备则可以被认为是接收节点。识别信息用于唯一标识接收节点,其通常采用可读性高且便于记忆的信息来进行,例如,可以采用用户的手机号码、邮件地址等信息来作为识别信息。密钥更新请求通常是由用户发现其区块链账户所对应的私钥信息不可用时发起的,以更新区块链账户对应的加密信息。具体地,用户需要生成新的公私钥对,并且根据公钥和其区块链账户的识别信息来发起密钥更新请求。
步骤S302,将所述识别信息对应的待更新公钥更新为所述目标公钥。
接收节点将识别信息对应的待更新公钥更新为目标公钥。待更新公钥即用户的区块链账户之前使用的公钥,该待更新公钥对应的私钥即用户遗失的私钥。具体地,该更新过程可以根据资产接收者(即用户)所发布的智能合约执行。智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转该智能合约用于管理识别信息与公钥之间的映射关系。接收节点根据智能合约将识别信息对应的待更新公钥替换为新生成的目标公钥。在一些实施例中,在替换公钥之前,还需要对密钥更新请求进行验证,以便确认发起请求的发起方具有相对应的权限,验证过程通常包括验证发起方的身份以及验证目标公钥的正确性等过程。
步骤S303,向共识节点发送交易请求,其中,所述交易请求中包含所述识别信息以及验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的。
接收节点向共识节点发送交易请求。交易请求可以是由用户主动发起或者由客户端自动发起。交易请求用于向交易目标的区块链账户转出资产,可以理解的是,交易请求中还会包含与交易目标的区块链账户相关联的信息,在本实施例中,即交易目标的区块链账户的标识信息。例如,A要将5个虚拟资源交易给B,则交易信息中会包含B的区块链账户的识别信息,诸如B的手机号等。在生成交易请求的过程中,接收节点会利用用户提供的目标私钥来对交易进行签名。交易签名的过程通常是根据签名协议来对交易中的若干字段的内容运行签名算法,从而得到签名结果,该签名结果即验证信息。在进行共识的过程中,共识节点根据验证信息来确认发起交易的发起方确实是资产输出账户的拥有人。
在交易请求中通常包括两部分内容,即解锁脚本和锁定脚本。其中,解锁脚本通常包括上述的识别信息以及验证信息,以便于将其他账户转出给用户的区块链账户的资产结果。锁定脚本用于将其资产输出给本次交易的目标账户,因此,锁定脚本中包含根据目标账户的识别信息生成的加密地址以及一系列操作码,以用于目标账户在后续的交易过程中根据操作码来解锁和使用在本次交易中得到的资产。
步骤S304,接收所述共识节点发送的公钥查询请求,其中,所述公钥查询请求中包含所述识别信息。
接收节点接收共识节点发送的公钥查询请求,公钥查询请求中包含所述识别信息。共识节点在接收到交易请求后,会对交易请求进行相关的验证过程,在验证的过程中,共识节点会根据交易请求中的识别信息获取到用于查询公钥的查询服务所在的地址。该查询公钥的功能具体可以是上文所提及的资产接收者(即用户)所发布的智能合约的一部分。在区块链或其他存储空间中可以存储识别信息与智能合约地址之间的对应关系,共识节点则通过访问区块链或存储空间来查询识别信息对应的智能合约地址。共识节点根据查询到的地址来发送公钥查询请求,以便于获取验证所需的公钥。可以理解的是,用于接收公钥查询请求的服务可以是独立于接收节点的单独服务,并且由独立的服务器来执行。
步骤S305,根据所述公钥查询请求向所述共识节点发送所述目标公钥,以使所述共识节点根据所述目标公钥对所述验证信息进行验证。
接收节点根据公钥查询请求,获取标识信息对应的目标公钥,并且将目标公钥发送给公式节点。共识节点在获取到目标公钥后,根据目标公钥对所接收到的交易信息进行验证。如果验证通过并且共识节点之间达成了共识,则会在将交易记录到区块链中,如果未通过,则交易失败。
在本申请的实施例中,根据识别信息来对待更新公钥进行更新,在利用更新后的公钥发起交易请求来完成交易验证。本方案采用识别信息来代替公钥散列值以标识交易节点,在面对公钥对应的私钥出现不可用的情况时,可以将公钥替换为新公钥,利用新公钥对应的私钥来进行交易验证以进行交易,因此,能够避免用户资产受到损失,提升区块链系统的可用性。
下面对本申请中密钥更新的整体流程进行介绍。为了便于介绍,请参阅图4,图4为本申请实施例中密钥更新流程的示意流程图。具体地,首先,在步骤401中,需要判断发起密钥更新请求的发起方的身份类型。根据不同身份类型,分别在步骤402中用合约发布者的公钥对密钥更新请求进行签名,或者在403和404中获取管理员标识对应的管理员公钥,并且用管理员公钥对密钥更新请求进行签名。在步骤405中,验证生成的签名与密钥更新请求中携带的操作者签名是否一致。如果不一致,则直接报错,流程结束。如果一致,则在步骤406中,用目标公钥对密钥更新请求携带的随机数(即操作者校验信息)进行签名,并且随后在步骤407中,判断生成的签名与密钥更新请求中携带的操作者校验签名是否一致。如果不一致,则直接报错,流程结束。若一致,则在步骤408中,将待更新公钥替换为目标公钥,以完成密钥更新的过程。
在本申请的一些实施例中,在以上实施例的基础上,密钥更新请求还包含操作者身份类型、操作者签名、操作者校验信息以及操作者校验签名,操作者身份类型用于标识密钥更新请求的发起方的身份,操作者校验签名是根据目标私钥对操作者校验信息进行签名得到的;上述步骤S302.将所述识别信息对应的待更新公钥更新为所述目标公钥,可以包括以下步骤:
根据所述身份类型,确定所述密钥更新请求的发起方的操作者公钥;
根据所述操作者公钥,对所述操作者签名进行身份校验,得到身份校验结果;
根据所述目标公钥、所述操作者校验信息以及所述操作者校验签名进行密钥校验,得到密钥校验结果;
若所述身份校验结果和所述密钥校验均指示校验通过,则将所述识别信息对应的待更新公钥更新为所述目标公钥。
在本实施例中,密钥更新请求还包含操作者身份类型、操作者签名、操作者校验信息以及操作者校验签名。在资产接收者(即用户)所发布的智能合约规定,可以进行密钥更新请求的发起方包括两种身份,合约发布者,即资产接收者,也就是拥有私钥的用户本人,以及预先约定的管理员。管理员也具有管理员标识以及对应的公钥和私钥,而管理员标识与管理员公钥的映射关系可以保存是可以通过智能合约获取到的,通常保存在区块链中或者在智能合约地址所对应的设备中。因此,密钥更新请求中包括操作者身份类型,通常是合约发布者、管理员以及其他,其中其他身份不具备更新密钥的权限。操作者签名是密钥更新请求的发起方利用私钥进行签名得到的,操作者校验签名是根据目标私钥对操作者校验信息进行签名得到的。操作者校验信息和操作者校验签名主要用于对所提供的新生成的公钥和私钥进行校验,其中,操作者校验信息可以采用随机数或者其他的预设信息。
接收节点根据身份类型,确认密钥更新请求的发起方是合约发布者还是管理员,并且获取对应的操作者公钥。根据操作者公钥,接收节点对操作者签名进行身份校验,得到身份校验结果。身份校验的目的在于核对发起密钥更新请求的账户具有正确的权限。具体地,操作者签名是根据私钥进行签名的结果,取决于操作者的身份不同,该私钥可以是合约发布者的私钥或者管理员的私钥。采用对应的操作者公钥对相同内容进行签名(例如按照相同的签名规则对密钥更新请求进行签名),得到签名结果与操作者签名相匹配,则可以确认发起密钥更新请求的账户具有正确的权限,可以进行公钥更新。
接收节点还需要验证密钥更新请求中包含的公钥是否正确,从而防止请求被篡改。具体地,接收节点根据目标公钥、操作者校验信息以及操作者校验签名进行密钥校验,得到密钥校验结果。操作者校验签名是根据目标私钥对操作者校验信息进行签名得到的。接收节点根据目标公钥对操作者校验信息进行签名,得到签名结果,若该签名结果与操作者校验签名匹配,则表示密钥更新请求中的公钥是正确的。
若身份校验结果和密钥校验均指示校验通过,则表示该密钥更新过程是合法的,接收节点将识别信息对应的待更新公钥更新为目标公钥。在之后的过程中,其他节点根据识别信息向接收节点查询公钥时,接收节点将会返回目标公钥以用于进行验证和交易等区块链操作。
在本申请的实施例中,对发起密钥更新请求的操作者的身份以及请求内容都进行了验证,从而确保密钥更新请求是由具有权限的用户发起,并且内容没有被篡改,从而确保密钥更新过程的正确性和安全性。
在本申请的一些实施例中,在以上实施例的基础上,密钥更新请求还包含管理员标识;上述步骤,根据身份类型,确定密钥更新请求的发起方的操作者公钥,可以包括以下步骤:
若身份类型指示密钥更新请求的发起方为接收节点,则获取待更新公钥作为操作者公钥;
若身份类型指示密钥更新请求的发起方为管理员节点,则获取管理员标识对应的管理员公钥作为操作者公钥。
在本实施例中,密钥更新请求中的身份类型包括两种,接收节点和管理员节点。接收节点为该密钥更新请求所针对的账户的拥有者连接的节点。当密钥更新请求中的身份类型为,即可以理解为密钥更新请求是由资产接收者,即合约发布者发起的。在此类情况中,通常是原有的私钥虽然仍可用,但资产拥有者处于安全性考虑等原因(例如怀疑私钥泄露)而更新公钥的情况。因此,若身份类型指示密钥更新请求的发起方为接收节点,则获取待更新公钥作为操作者公钥。对于一个账户的识别信息,其对应的操作者公钥通常是唯一的,因此可以直接获取操作者公钥。
管理员节点为智能合约中预先约定的具有更新其他节点的公钥的权限的节点。因此,当密钥更新请求中的身份类型为管理员节点,即可以理解为密钥更新请求是由管理员发起的。在此类情况中,通常是原私钥已经不可用,例如已经丢失或者数据损坏,用户通过系统外的方式委托管理员来对其账户对应的公钥进行更新,以便进行交易。因此,若身份类型指示密钥更新请求的发起方为管理员节点,则获取管理员标识对应的管理员公钥作为操作者公钥。具体地,管理员公钥可以根据管理员标识按照资产接收者发布的智能合约来获取。根据智能合约,接收节点会维护管理员标识与管理员公钥的对应关系。接收节点可以维护多个管理员标识和对应的管理员公钥,并且通过管理员标识来查询对应的管理员公钥。
可以理解的是,上述的两种身份为具有进行密钥更新的权限的身份,区块链中的节点还可以具有其他身份,例如交易节点、共识节点等,此类身份发起的密钥更新请求将会失败。
在本申请的实施例中,可以通过资产接收方和管理员两种渠道来进行密钥更新,从而允许用户自行更新公钥,能够增加更新过程的灵活性。
在本申请的一些实施例中,在以上实施例的基础上,上述步骤,根据操作者公钥,对操作者签名进行身份校验,得到身份校验结果,可以包括以下步骤:
根据操作者公钥对密钥更新请求进行签名,得到身份签名结果;
若身份签名结果与操作者签名一致,则生成身份校验结果以用于指示身份校验通过;
若身份签名结果与操作者签名不一致,则生成身份校验结果以用于指示身份校验失败。
具体地,操作者签名为根据私钥进行签名得到的结果,因此,接收节点可以根据操作者公钥对密钥更新请求进行签名。具体地,根据操作者签名和操作者公钥进行签名运算,可以得到身份签名结果。具体地,签名预算的方式可以是从密钥更新请求中取出预设字段来进行加密。若该身份签名结果与操作者签名一致,则表示密钥更新请求的发起者的是合法的,进而生成身份校验结果以用于指示身份校验通过。若身份签名结果与操作者签名不一致,则表示密钥更新请求的发起者的是不合法的,因此生成身份校验结果以用于指示身份校验失败。
可以理解的是,操作者公钥与用于得到操作者签名的私钥是一对对应公钥和私钥,因此,验证的过程还可以采用解码的方式,即利用操作者公钥对操作者签名进行解码,在根据解码得到的内容与密钥更新请求中的信息相比较,若根据解码得到的内容与密钥更新请求中的信息向匹配,则表示身份验证通过,若不匹配,则身份验证失败。
在本实施例中,通过操作者公钥和操作者签名来对操作者的身份进行校验,由于操作者签名是基于私钥产生的,因此,可以通过身份检测来确保密钥更新请求的发起方具有更新公钥的权限,从而提升系统的安全性。
在本申请的一些实施例中,在以上实施例的基础上,上述步骤,根据目标公钥、操作者校验信息以及操作者校验签名进行密钥校验,得到密钥校验结果,可以包括以下步骤:
根据目标公钥,对操作者校验签名进行验证,得到签名验证结果;
若签名验证结果与操作者校验信息一致,则生成密钥校验结果以用于指示密钥校验通过;
若签名验证结果与操作者校验信息不一致,则生成密钥校验结果以用于指示密钥校验失败。
具体地,操作者校验信息以及操作者校验签名用于对目标公钥正确进行校验。其中,操作者校验信息可以是随机数或其他指定信息。随机数由发起密钥更新请求的发起方设置,并且由发起方利用目标私钥来签名,得到操作者校验签名。操作节点在验证时,根据目标公钥,对操作者校验签名进行签名运算,得到签名验证结果。取决于具体的实现方式,该签名运算也可以是解码运算。将该签名验证结果与操作者校验信息相比对,若签名验证结果与操作者校验信息一致,则表示目标公钥与用于生成操作者校验签名的私钥是相匹配的,即正确公钥,因此生成密钥校验结果以用于指示密钥校验通过。若签名验证结果与操作者校验信息不一致,则表示目标公钥无法对操作者校验签名进行正确,则生成密钥校验结果以用于指示密钥校验失败。
在本实施例中,通过操作者校验信息和操作者校验签名来对目标公钥的进行校验,从而能够确保目标公钥与发起方所拥有的目标私钥相匹配,从而能够更新的公钥的准确性,防止第三方替换目标公钥来攻击系统,提高系统的安全性。
下面对本申请中密钥更新的整体流程进行介绍。为了便于介绍,请参阅图5,图5为本申请实施例中管理信息更新请求的示意流程图。具体地,首先,在步骤501中,需要判断发起管理信息更新请求的发起方的身份类型。根据不同身份类型,分别在步骤502中用合约发布者的公钥对管理信息更新请求进行签名,或者在503和504中获取管理员标识对应的管理员公钥,并且用管理员公钥对管理信息更新请求进行签名。在步骤505中,验证生成的签名与管理信息更新请求中携带的管理者身份签名是否一致。如果不一致,则直接报错,流程结束。如果一致,则在步骤506中,用新增管理员公钥对管理信息更新请求携带的随机数(即管理者校验信息)进行签名,并且随后在步骤507中,判断生成的签名与管理信息更新请求中携带的管理者校验签名是否一致。如果不一致,则直接报错,流程结束。若一致,则在步骤508中,将新增管理员标识和新增管理员公钥加入到管理员列表,以完成管理信息更新的过程。
在本申请的一些实施例中,在以上实施例的基础上,本申请的方法还可以包括以下步骤:
接收管理信息更新请求,管理信息更新请求包括管理者身份类型、管理者身份签名、新增管理员标识、新增管理员公钥、管理者校验信息以及管理者校验签名,其中,管理者身份类型用于标识管理信息更新请求的发起方的身份,管理者校验签名是根据新增管理员公钥对应的新增管理员私钥对管理者校验信息进行签名得到的;
根据管理者身份类型,确定管理信息更新请求的发起方的管理方公钥;
根据管理方公钥,对管理者身份签名进行身份校验,得到管理者校验结果;
根据新增管理员公钥、管理者校验信息以及管理者校验签名进行密钥校验,得到管理信息校验结果;
若管理者校验结果和管理信息校验结果均指示校验通过,则根据新增管理员标识和新增管理员公钥,更新识别信息对应的管理信息。
具体地,在本实施例中,根据管理信息更新请求来更新识别信息对应的管理信息。管理信息中保存对该识别信息的公钥具有更新权限的管理员标识以及对应的管理员公钥。管理信息更新请求包括管理者身份类型、管理者身份签名、新增管理员标识、新增管理员公钥、管理者校验信息以及管理者校验签名,其中,管理者身份类型与上文描述的操作者身份类型的作用相同,同样用于表示合约发布者以及管理员,管理者校验信息以及管理者校验签名在用于校验新增管理员公钥是否正确。其中,管理者校验信息通常是随机数或者其他预设信息,而管理者校验签名是根据新增管理员公钥对应的新增管理员私钥对管理者校验信息进行签名得到的。相较于密钥更新请求,管理信息更新请求的主要区别在于包括新增管理员标识,以用于表示新增的管理员。
可以理解,获取管理方公钥、进行管理者身份校验以及管理密钥校验的过程与上述针对于密钥更新请求的描述的方式是相同的。若管理者校验结果和管理信息校验结果均指示校验通过,则根据新增管理员标识和新增管理员公钥,更新识别信息对应的管理信息。
应理解的是,管理信息更新请求也可以对现有的管理员标识对应的密钥进行更新,只要将新增管理员标识替换为现有的管理员标识即可。
在本实施例中,通过管理信息更新请求来对管理员进行管理,从而能够维护具有修改密钥权限的用户,允许合约发布者之外的受信用户来更新密钥,从而在合约发布者的私钥丢失的情况下利用受信任的管理员来更新密钥,确保更新过程的可靠性。
在本申请的一些实施例中,在以上实施例的基础上,本申请的方法还可以包括以下步骤:
向服务节点发送识别信息和待更新公钥,以使服务节点存储识别信息和待更新公钥的映射关系,服务节点用于根据识别信息获取待更新公钥;
接收服务节点发送的服务地址信息,服务地址信息用于唯一标识服务节点;
根据识别信息和服务地址信息之间的映射关系,更新区块链的服务地址索引。
在本实施例中,用于执行资源接收者发布的智能合约的节点为服务节点。但该区分仅为功能上的逻辑划分,实际上服务节点可以与资源接收者的接收节点运行在同一个物理设备上,或者运行在不同的物理设备上。
操作节点向服务节点发送识别信息和待更新公钥,以使服务节点存储识别信息和待更新公钥的映射关系。具体地,服务节点会根据识别信息和待更新公钥,生成智能合约。该智能合约中包括识别信息与待更新公钥的对应关系、识别信息对应的管理员列表、提供根据识别信息查询公钥的功能、提供更新识别信息对应的公钥的功能以及对管理员列表进行更新的功能。服务节点在生成智能合约后,会向操作节点发送智能合约的服务地址信息,服务地址信息用于根据识别信息获取待更新公钥。具体地,智能合约所提供的上述所有功能均通过该服务地址信息来访问。操作节点在接收到服务地址信息后,会对区块链中的服务地址索引进行更新,服务地址索引中存储有区块链中各个识别信息和服务地址信息之间的映射关系。在交易的共识过程中,共识节点会根据识别信息从服务地址索引中检索服务地址信息,再根据服务地址信息来查询公钥以便于进行共识的验证过程。
在本申请的方案中,服务地址信息集中存储在区块链中,从而可以供其他节点在需要时根据识别信息查询对应的公钥信息,避免了将服务地址信息保存在固定服务器上带来的性能瓶颈和服务地址索引损坏而无法交易的风险,提升系统的鲁棒性。
在本申请的一些实施例中,在以上实施例的基础上,上述步骤S303,向共识节点发送交易请求,可以包括以下步骤:
根据识别信息,从区块链中获取识别信息对应的历史交易信息;
根据目标私钥,对历史交易信息进行签名,得到验证信息;
根据识别信息以及验证信息,生成交易请求并且向共识节点发送交易请求。
具体地,根据识别信息,从区块链中获取识别信息对应的历史交易信息。识别信息对应的历史交易信息是在之前完成的交易的接收方为识别信息对应的账户的交易信息。例如,在之前的交易中,有三个用户B、C、D分别将虚拟资源转出给用户A,则根据用户A的识别信息可以获取到用户B、C、D的交易信息。三次交易分别会输出三个锁定脚本将资金锁定起来,用户A则需要对应地提供三个解锁脚本来解锁这些资金以便使用。可以理解,用户A仅需要用户B和C转出的金额进行交易,则可以仅提供针对与用户B和用户C的交易的解锁脚本,而不提供解锁用户D的交易的解锁脚本。
接收节点根据目标私钥,对历史交易信息进行签名,得到验证信息。签名过程按照签名算法来执行,具体地,可以对历史交易信息中所涉及的交易标识来进行签名,交易标识用于唯一标识一笔交易。根据识别信息以及验证信息,生成交易请求并且向共识节点发送交易请求。可以理解的是,在区块链中,一笔普通的交易中通常需要解锁脚本来解锁输入内容以及锁定脚本来规定输入内容。在本实施例中,根据目标私钥以及验证信息,可以生成对输入交易的解锁脚本,还可以根据交易接收方的目标识别信息进行加密计算,得到交易地址信息。具体地,交易接收方的目标识别信息可以是根据用户提供的。加密计算的具体方式可以采用哈希算法等加密算法。例如,若识别信息为手机号,则对手机号进行哈希计算,得到结果即为交易地址信息。根据交易地址信息可以生成对输出交易的锁定脚本。可以理解的是,输出交易中还会包括其他的内容,例如转出金额、一系列的操作码以及用于区块链的运行和计算的其他信息,关于此类信息可以按照相关技术中的内容进行调整,本文不做限定。
在本实施例中,在生成交易请求时,根据识别信息来生成交易地址信息,从而在后续的交易中可以利用识别信息来进行交易,通过将交易地址与公钥解锁,从而可以将识别信息设置为有具体含义的内容,以便于记忆,提升交易信息的可读性。
下面将对本申请中另一个实施例中的基于区块链的交易验证方法进行介绍,基于区块链的交易验证方法可以由计算机设备执行,并且由区块链中共识节点对应的计算机设备执行,本申请实施例中基于区块链的交易验证方法可以包括如下步骤:
接收交易请求,交易请求中包含识别信息、交易地址信息和验证信息,验证信息为使用目标公钥对应的目标私钥签名后生成的;
根据识别信息和交易地址信息进行交易地址校验,得到地址验证结果;
根据识别信息,从服务节点获取识别信息对应的目标公钥;
根据目标公钥以及验证信息进行合法性校验,得到合法性校验结果;
根据地址验证结果和合法性校验,确定交易验证结果。
具体地,共识节点接收交易请求,交易请求中包含识别信息、交易地址信息和验证信息,验证信息为使用目标公钥对应的目标私钥签名后生成的。加请求中包括中的识别信息和验证信息对应于解锁脚本的内容,而交易地址信息对应于锁定脚本的内容。
共识节点根据识别信息和交易地址信息进行交易地址校验,得到地址验证结果。交易地址信息为向识别信息对应的用户转账的历史交易中的加密过后的交易地址信息。该交易地址信息是基于识别信息生成的信息。地址验证结果指示当前的识别信息是否为交易请求中想要解锁的交易的转账目标。
共识节点根据识别信息,从服务节点获取识别信息对应的目标公钥,具体地,共识节点可以通过服务节点发布的智能合约来查询到识别信息对应的目标公钥。根据目标公钥以及验证信息进行合法性校验,得到合法性校验结果。合法性交易用于验证目标公钥与对验证信息进行加密的目标私钥之间的对应关系。
根据地址验证结果和合法性校验,确定交易验证结果。当地址验证结果和合法性校验都通过时,交易验证结果为通过。若地址验证结果和合法性校验中的任一个失败,则交易验证结果为失败。
在区块链中,根据共识规则,共识节点验证通过的情况达到共识规则规定的通过条件时,则表示该交易成功,共识节点可以将该交易的信息记录到区块链中。
在本申请的实施例中,共识节点根据识别信息来查询目标公钥进行相应的验证操作,从而能够确保能够利用识别信息来进行区块链交易,提升方案的可行性。
下面对本申请实施例中的合约发布过程和校验过程进行整体描述。请参阅图6,图6为本申请实施例中合约发布过程和校验过程的示意流程图。如6所示,资产接收者会在步骤611中生成智能合约,智能合约中包括识别信息与公钥的映射、管理员列表、公钥查询服务、公钥更新服务以及管理员更新服务。在步骤612中该智能合约会被发布区块链中,并且在步骤613中识别信息与智能合约地址会更新到服务地址索引中。在共识过程中,共识节点会在步骤621中验证解锁脚本中的识别信息与锁定脚本中的交易地址信息是否一致,随后在步骤622中根据服务地址索引查询到服务地址信息。在步骤623中,共识节点利用服务地址信息查询识别信息对应的公钥。然后,在步骤624中,共识节点根据公钥对交易进行签名,得到签名结果与解锁脚本中的签名比对,根据比对结果来确定交易验证结果。
在本申请的一些实施例中,在以上实施例的基础上,上述步骤,根据识别信息和交易地址信息进行交易地址校验,得到地址验证结果,可以包括以下步骤:
根据识别信息,从区块链的服务地址索引中查询服务地址信息,地址索引表用于存储识别信息与服务地址信息之间的映射关系;
根据服务地址信息,向服务地址信息对应的服务节点发送识别信息,以获取识别信息对应的目标公钥。
具体地,地址索引表用于存储识别信息与服务地址信息之间的映射关系。共识节点根据识别信息,从区块链的服务地址索引中查询服务地址信息。服务地址信息对应于服务节点,服务节点中包含合约发布者发布的智能合约,以用于查询识别信息对应的目标公钥。因此,共识节点根据服务地址信息,向服务地址信息对应的服务节点发送识别信息。服务节点则根据识别信息获取对应的目标公钥,并且向共识节点发送该目标公钥。
在本申请的实施例中,通过服务地址索引查询服务地址信息,在根据服务地址信息查询到目标公钥,服务地址索引存储在区块链中,可以避免服务地址索引中的信息被篡改而导致公钥查询过程被干扰。提升系统的稳定性。
在本申请的一些实施例中,在以上实施例的基础上,上述步骤,根据识别信息和交易地址信息进行交易地址校验,得到地址验证结果,可以包括以下步骤:
对识别信息进行散列计算,得到散列值;
若散列值与交易地址信息一致,则生成地址验证结果以用于指示地址验证通过;
若散列值与交易地址信息不一致,则生成地址验证结果以用于指示地址验证失败。
具体地,交易地址信息是历史交易的资产转出方根据识别信息进行散列计算得到的。在地址验证时,共识节点对识别信息进行散列计算,得到散列值。散列值与交易地址信息相比较。若散列值与交易地址信息一致,识别信息对应的账户是交易地址信息指示的账户,则生成地址验证结果以用于指示地址验证通过。若散列值与交易地址信息不一致,识别信息对应的账户并非交易地址信息指示的账户,用户不能使用该交易中的资产,因此生成地址验证结果以用于指示地址验证失败。
在本申请的实施例中,提供了进行地址验证的具体实施方式,提升的方案的可实施性。
在本申请的一些实施例中,在以上实施例的基础上,上述步骤,根据目标公钥以及验证信息进行合法性校验,得到合法性校验结果,可以包括以下步骤:
根据目标公钥,对验证信息进行校验,得到签名校验结果;
若签名校验结果与识别信息对应的历史交易信息一致,则确定合法性验证通过;
若交易签名结果与识别信息对应的历史交易信息不一致,则确定合法性验证失败。
具体地,验证信息是利用私钥进行加密的到的。共识节点可以根据目标公钥,对验证信息进行签名校验,从而得到签名校验结果。该签名校验结果实际是加密时获取的历史交易信息。将签名校验结果与识别信息对应的历史交易信息相比较,其中识别信息对应的历史交易信息是本次交易的交易请求中所引用的历史交易。若签名校验结果与识别信息对应的历史交易信息一致,则表示提供验证信息的用户是资产的合法接收者,可以解锁交易的资产,因此确定合法性验证通过。若交易签名结果与识别信息对应的历史交易信息不一致,则表示提供验证信息的用户并非资产的合法接收者而不能解锁交易的资产,则确定合法性验证失败。
在本申请的实施例中,提供了进行签名校验的具体实施方式,提升的方案的可实施性。
应当注意,尽管在附图中以特定顺序描述了本申请中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
以下介绍本申请的装置实施,可以用于执行本申请上述实施例中的区块链的交易验证方法。图7示意性地示出了本申请实施例中的区块链的交易验证装置的组成框图。如图7所示,基于区块链的交易验证装置700主要可以包括:
更新请求接收模块710,用于接收密钥更新请求,所述密钥更新请求中包括识别信息以及目标公钥,其中,所述识别信息用于唯一标识接收节点;
公钥更新模块720,用于将所述识别信息对应的待更新公钥更新为所述目标公钥;
交易请求发送模块730,用于向共识节点发送交易请求,其中,所述交易请求中包含所述识别信息以及验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
查询请求接收模块740,用于接收所述共识节点发送的公钥查询请求,其中,所述公钥查询请求中包含所述识别信息;
公钥发送模块750,用于根据所述公钥查询请求向所述共识节点发送所述目标公钥,以使所述共识节点根据所述目标公钥对所述验证信息进行验证。
在本申请的一些实施例中,在以上方案的基础上,所述密钥更新请求还包含操作者身份类型、操作者签名、操作者校验信息以及操作者校验签名,所述操作者身份类型用于标识所述密钥更新请求的发起方的身份,所述操作者校验签名是根据所述目标私钥对所述操作者校验信息进行签名得到的;公钥更新模块720,包括:
操作者公钥确定单元,用于根据所述身份类型,确定所述密钥更新请求的发起方的操作者公钥;
身份校验单元,用于根据所述操作者公钥,对所述操作者签名进行身份校验,得到身份校验结果;
密钥校验单元,用于根据所述目标公钥、所述操作者校验信息以及所述操作者校验签名进行密钥校验,得到密钥校验结果;
公钥更新单元,用于若所述身份校验结果和所述密钥校验均指示校验通过,则将所述识别信息对应的待更新公钥更新为所述目标公钥。
在本申请的一些实施例中,在以上方案的基础上,所述密钥更新请求还包含管理员标识,操作者公钥确定单元,包括:
接收节点公钥获取子单元,用于若所述身份类型指示所述密钥更新请求的发起方为所述接收节点,则获取所述待更新公钥作为操作者公钥;
管理员公钥获取子单元,用于若所述身份类型指示所述密钥更新请求的发起方为管理员节点,则获取所述管理员标识对应的管理员公钥作为所述操作者公钥。
在本申请的一些实施例中,在以上方案的基础上,身份校验单元包括:
操作者公钥签名子单元,用于根据所述操作者公钥对所述密钥更新请求进行签名,得到身份签名结果;
身份校验通过子单元,用于若所述身份签名结果与所述操作者签名一致,则生成身份校验结果以用于指示身份校验通过;
身份校验失败子单元,用于若所述身份签名结果与所述操作者签名不一致,则生成身份校验结果以用于指示身份校验失败。
在本申请的一些实施例中,在以上方案的基础上,密钥校验单元包括:
操作者校验签名验证子单元根据所述目标公钥,对所述操作者校验签名进行验证,得到签名验证结果;
密钥校验通过子单元,用于若所述签名验证结果与所述操作者校验信息一致,则生成密钥校验结果以用于指示密钥校验通过;
密钥校验失败子单元,用于若所述签名验证结果与所述操作者校验信息不一致,则生成密钥校验结果以用于指示密钥校验失败。
在本申请的一些实施例中,在以上方案的基础上,基于区块链的交易验证装置700还包括:
管理信息更新请求接收模块,用于接收管理信息更新请求,所述管理信息更新请求包括管理者身份类型、管理者身份签名、新增管理员标识、新增管理员公钥、管理者校验信息以及管理者校验签名,其中,所述管理者身份类型用于标识所述管理信息更新请求的发起方的身份,所述管理者校验签名是根据所述新增管理员公钥对应的新增管理员私钥对所述管理者校验信息进行签名得到的;
管理方公钥确定模块,用于根据所述管理者身份类型,确定所述管理信息更新请求的发起方的管理方公钥;
管理者身份校验模块,用于根据所述管理方公钥,对所述管理者身份签名进行身份校验,得到管理者校验结果;
密钥校验身份校验模块,用于根据所述新增管理员公钥、所述管理者校验信息以及所述管理者校验签名进行密钥校验,得到管理信息校验结果;
管理信息更新模块,用于若所述管理者校验结果和所述管理信息校验结果均指示校验通过,则根据所述新增管理员标识和所述新增管理员公钥,更新所述识别信息对应的管理信息。
在本申请的一些实施例中,在以上方案的基础上,基于区块链的交易验证装置700还包括:
信息发送模块,用于向服务节点发送所述识别信息和所述待更新公钥,以使所述服务节点存储所述识别信息和所述待更新公钥的映射关系,所述服务节点用于根据所述识别信息获取所述待更新公钥;
服务地址信息接收模块,用于接收所述服务节点发送的服务地址信息,所述服务地址信息用于唯一标识所述服务节点;
服务地址索引更新模块,用于根据所述识别信息和所述服务地址信息之间的映射关系,更新所述区块链的服务地址索引。
在本申请的一些实施例中,在以上方案的基础上,交易请求发送模块730包括:
历史交易信息获取单元,用于根据所述识别信息,从区块链中获取所述识别信息对应的历史交易信息;
历史交易信息签名单元,用于根据所述目标私钥,对所述历史交易信息进行签名,得到所述验证信息;
根据所述识别信息以及所述验证信息,生成所述交易请求并且向共识节点发送所述交易请求。
根据本申请实施例的一个方面,提供一种基于区块链的交易验证装置,其特征在于,包括:
交易请求接收模块,用于接收交易请求,所述交易请求中包含识别信息、交易地址信息和验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
交易地址校验模块,用于根据所述识别信息和所述交易地址信息进行交易地址校验,得到地址验证结果;
目标公钥获取模块,用于根据所述识别信息,从服务节点获取所述识别信息对应的目标公钥;
合法性校验模块,用于根据所述目标公钥以及所述验证信息进行合法性校验,得到合法性校验结果;
交易验证结果模块,用于确定根据所述地址验证结果和所述合法性校验,确定交易验证结果。
在本申请的一些实施例中,在以上方案的基础上,目标公钥获取模块包括:
服务地址信息查询单元,用于根据所述识别信息,从区块链的服务地址索引中查询服务地址信息,所述地址索引表用于存储识别信息与服务地址信息之间的映射关系;
识别信息发送单元,用于根据所述服务地址信息,向所述服务地址信息对应的服务节点发送所述识别信息,以获取所述识别信息对应的目标公钥。
在本申请的一些实施例中,在以上方案的基础上,交易地址校验模块包括:
散列计算单元,用于对所述识别信息进行散列计算,得到散列值;
地址验证通过单元,用于若所述散列值与所述交易地址信息一致,则生成地址验证结果以用于指示地址验证通过;
地址验证失败单元,用于若所述散列值与所述交易地址信息不一致,则生成地址验证结果以用于指示地址验证失败。
在本申请的一些实施例中,在以上方案的基础上,合法性校验模块包括:
签名校验单元,用于根据所述目标公钥,对所述验证信息进行校验,得到签名校验结果;
合法性验证通过单元,用于若所述签名校验结果与所述识别信息对应的历史交易信息一致,则确定合法性验证通过;
法性验证失败单元,用于若所述交易签名结果与所述识别信息对应的历史交易信息不一致,则确定合法性验证失败。
需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图8示出的电子设备的计算机系统800仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统800包括中央处理单元(Central Processing Unit,CPU)801,其可以根据存储在只读存储器(Read-Only Memory,ROM)802中的程序或者从储存部分808加载到随机访问存储器(Random Access Memory,RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有系统操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(Input/Output,I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分807;包括硬盘等的储存部分808;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入储存部分808。
特别地,根据本申请的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (16)
1.一种基于区块链的交易验证方法,其特征在于,包括:
接收密钥更新请求,所述密钥更新请求中包括识别信息以及目标公钥,其中,所述识别信息用于唯一标识接收节点;
将所述识别信息对应的待更新公钥更新为所述目标公钥;
向共识节点发送交易请求,其中,所述交易请求中包含所述识别信息以及验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
接收所述共识节点发送的公钥查询请求,其中,所述公钥查询请求中包含所述识别信息;
根据所述公钥查询请求向所述共识节点发送所述目标公钥,以使所述共识节点根据所述目标公钥对所述验证信息进行验证。
2.根据权利要求1所述的方法,其特征在于,所述密钥更新请求还包含操作者身份类型、操作者签名、操作者校验信息以及操作者校验签名,所述操作者身份类型用于标识所述密钥更新请求的发起方的身份,所述操作者校验签名是根据所述目标私钥对所述操作者校验信息进行签名得到的;所述将所述识别信息对应的待更新公钥更新为所述目标公钥,包括:
根据所述身份类型,确定所述密钥更新请求的发起方的操作者公钥;
根据所述操作者公钥,对所述操作者签名进行身份校验,得到身份校验结果;
根据所述目标公钥、所述操作者校验信息以及所述操作者校验签名进行密钥校验,得到密钥校验结果;
若所述身份校验结果和所述密钥校验均指示校验通过,则将所述识别信息对应的待更新公钥更新为所述目标公钥。
3.根据权利要求2所述的方法,其特征在于,所述密钥更新请求还包含管理员标识,所述根据所述身份类型,确定所述密钥更新请求的发起方的操作者公钥,包括:
若所述身份类型指示所述密钥更新请求的发起方为所述接收节点,则获取所述待更新公钥作为操作者公钥;
若所述身份类型指示所述密钥更新请求的发起方为管理员节点,则获取所述管理员标识对应的管理员公钥作为所述操作者公钥。
4.根据权利要求2所述的方法,其特征在于,所述根据所述操作者公钥,对所述操作者签名进行身份校验,得到身份校验结果,包括:
根据所述操作者公钥对所述密钥更新请求进行签名,得到身份签名结果;
若所述身份签名结果与所述操作者签名一致,则生成身份校验结果以用于指示身份校验通过;
若所述身份签名结果与所述操作者签名不一致,则生成身份校验结果以用于指示身份校验失败。
5.根据权利要求2所述的方法,其特征在于,所述根据所述目标公钥、所述操作者校验信息以及所述操作者校验签名进行密钥校验,得到密钥校验结果,包括:
根据所述目标公钥,对所述操作者校验签名进行验证,得到签名验证结果;
若所述签名验证结果与所述操作者校验信息一致,则生成密钥校验结果以用于指示密钥校验通过;
若所述签名验证结果与所述操作者校验信息不一致,则生成密钥校验结果以用于指示密钥校验失败。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收管理信息更新请求,所述管理信息更新请求包括管理者身份类型、管理者身份签名、新增管理员标识、新增管理员公钥、管理者校验信息以及管理者校验签名,其中,所述管理者身份类型用于标识所述管理信息更新请求的发起方的身份,所述管理者校验签名是根据所述新增管理员公钥对应的新增管理员私钥对所述管理者校验信息进行签名得到的;
根据所述管理者身份类型,确定所述管理信息更新请求的发起方的管理方公钥;
根据所述管理方公钥,对所述管理者身份签名进行身份校验,得到管理者校验结果;
根据所述新增管理员公钥、所述管理者校验信息以及所述管理者校验签名进行密钥校验,得到管理信息校验结果;
若所述管理者校验结果和所述管理信息校验结果均指示校验通过,则根据所述新增管理员标识和所述新增管理员公钥,更新所述识别信息对应的管理信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向服务节点发送所述识别信息和所述待更新公钥,以使所述服务节点存储所述识别信息和所述待更新公钥的映射关系,所述服务节点用于根据所述识别信息获取所述待更新公钥;
接收所述服务节点发送的服务地址信息,所述服务地址信息用于唯一标识所述服务节点;
根据所述识别信息和所述服务地址信息之间的映射关系,更新所述区块链的服务地址索引。
8.根据权利要求1所述的方法,其特征在于,所述向共识节点发送交易请求,包括:
根据所述识别信息,从区块链中获取所述识别信息对应的历史交易信息;
根据所述目标私钥,对所述历史交易信息进行签名,得到所述验证信息;
根据所述识别信息以及所述验证信息,生成所述交易请求并且向共识节点发送所述交易请求。
9.一种基于区块链的交易验证方法,其特征在于,包括:
接收交易请求,所述交易请求中包含识别信息、交易地址信息和验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
根据所述识别信息和所述交易地址信息进行交易地址校验,得到地址验证结果;
根据所述识别信息,从服务节点获取所述识别信息对应的目标公钥;
根据所述目标公钥以及所述验证信息进行合法性校验,得到合法性校验结果;
根据所述地址验证结果和所述合法性校验,确定交易验证结果。
10.根据权利要求9所述的方法,其特征在于,所述根据所述识别信息,从服务节点获取所述识别信息对应的目标公钥,包括:
根据所述识别信息,从区块链的服务地址索引中查询服务地址信息,所述地址索引表用于存储识别信息与服务地址信息之间的映射关系;
根据所述服务地址信息,向所述服务地址信息对应的服务节点发送所述识别信息,以获取所述识别信息对应的目标公钥。
11.根据权利要求9所述的方法,其特征在于,根据所述识别信息和所述交易地址信息进行交易地址校验,得到地址验证结果,包括:
对所述识别信息进行散列计算,得到散列值;
若所述散列值与所述交易地址信息一致,则生成地址验证结果以用于指示地址验证通过;
若所述散列值与所述交易地址信息不一致,则生成地址验证结果以用于指示地址验证失败。
12.根据权利要求9所述的方法,其特征在于,所述根据所述目标公钥以及所述验证信息进行合法性校验,得到合法性校验结果,包括:
根据所述目标公钥,对所述验证信息进行校验,得到签名校验结果;
若所述签名校验结果与所述识别信息对应的历史交易信息一致,则确定合法性验证通过;
若所述交易签名结果与所述识别信息对应的历史交易信息不一致,则确定合法性验证失败。
13.一种基于区块链的交易验证装置,其特征在于,包括:
更新请求接收模块,用于接收密钥更新请求,所述密钥更新请求中包括识别信息以及目标公钥,其中,所述识别信息用于唯一标识接收节点;
公钥更新模块,用于将所述识别信息对应的待更新公钥更新为所述目标公钥;
交易请求发送模块,用于向共识节点发送交易请求,其中,所述交易请求中包含所述识别信息以及验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
查询请求接收模块,用于接收所述共识节点发送的公钥查询请求,其中,所述公钥查询请求中包含所述识别信息;
公钥发送模块,用于根据所述公钥查询请求向所述共识节点发送所述目标公钥,以使所述共识节点根据所述目标公钥对所述验证信息进行验证。
14.一种基于区块链的交易验证装置,其特征在于,包括:
交易请求接收模块,用于接收交易请求,所述交易请求中包含识别信息、交易地址信息和验证信息,所述验证信息为使用所述目标公钥对应的目标私钥签名后生成的;
交易地址校验模块,用于根据所述识别信息和所述交易地址信息进行交易地址校验,得到地址验证结果;
目标公钥获取模块,用于根据所述识别信息,从服务节点获取所述识别信息对应的目标公钥;
合法性校验模块,用于根据所述目标公钥以及所述验证信息进行合法性校验,得到合法性校验结果;
交易验证结果模块,用于确定根据所述地址验证结果和所述合法性校验,确定交易验证结果。
15.一种电子设备,其特征在于,包括:
处理器;
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至12中任意一项所述的于区块链的交易验证方法。
16.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至12中任一项所述的于区块链的交易验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111230060.9A CN116012009A (zh) | 2021-10-21 | 2021-10-21 | 基于区块链的交易验证方法、装置、电子设备和可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111230060.9A CN116012009A (zh) | 2021-10-21 | 2021-10-21 | 基于区块链的交易验证方法、装置、电子设备和可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116012009A true CN116012009A (zh) | 2023-04-25 |
Family
ID=86021675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111230060.9A Pending CN116012009A (zh) | 2021-10-21 | 2021-10-21 | 基于区块链的交易验证方法、装置、电子设备和可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116012009A (zh) |
-
2021
- 2021-10-21 CN CN202111230060.9A patent/CN116012009A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11533164B2 (en) | System and method for blockchain-based cross-entity authentication | |
US11025435B2 (en) | System and method for blockchain-based cross-entity authentication | |
US11477032B2 (en) | System and method for decentralized-identifier creation | |
EP3665857B1 (en) | Blockchain architecture with record security | |
WO2021000420A1 (en) | System and method for blockchain-based cross-entity authentication | |
CN111144881A (zh) | 对资产转移数据的选择性访问 | |
CN109614813B (zh) | 基于区块链的隐私交易方法、装置及其应用方法、装置 | |
WO2019161412A1 (en) | Systems and methods for decentralized certificate hierarchy using a distributed ledger to determine a level of trust | |
JP2022534023A (ja) | コンピュータで実施されるシステムおよび方法 | |
JP2023503607A (ja) | 自動デジタル証明書検証のための方法およびデバイス | |
US11863689B1 (en) | Security settlement using group signatures | |
CN114978635A (zh) | 跨域认证方法及装置、用户注册方法及装置 | |
CN113706261A (zh) | 一种基于区块链的电力交易方法、装置及系统 | |
CN116975901A (zh) | 基于区块链的身份验证方法、装置、设备、介质及产品 | |
CN115705601A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN112163917B (zh) | 基于区块链的票据处理方法、装置、介质及电子设备 | |
CN117221337A (zh) | 区块链共识方法、装置、介质及电子设备 | |
CN116012009A (zh) | 基于区块链的交易验证方法、装置、电子设备和可读介质 | |
CN112381646B (zh) | 基于区块链的隐私交易及其应用方法和装置 | |
CN116091063A (zh) | 交易处理方法、电子设备及可读存储介质 | |
CN117057788A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40083874 Country of ref document: HK |