CN110781509A - 数据验证方法、装置、存储介质和计算机设备 - Google Patents
数据验证方法、装置、存储介质和计算机设备 Download PDFInfo
- Publication number
- CN110781509A CN110781509A CN201911031370.0A CN201911031370A CN110781509A CN 110781509 A CN110781509 A CN 110781509A CN 201911031370 A CN201911031370 A CN 201911031370A CN 110781509 A CN110781509 A CN 110781509A
- Authority
- CN
- China
- Prior art keywords
- user
- data
- target data
- verification
- account
- 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
Images
Classifications
-
- 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/602—Providing cryptographic facilities or services
-
- 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/604—Tools and structures for managing or administering access control systems
Abstract
本申请涉及一种数据验证方法、装置、计算机可读存储介质和计算机设备,所述方法包括:获取数据验证请求;所述数据验证请求携带待验证的目标数据、以及通过与所述目标数据对应的用户私钥加密得到的用户签名;从区块链网络中查找与所述目标数据相关联的用户公钥;通过查找到的用户公钥解密所述用户签名得到解密数据;当所述解密数据与所述待验证的目标数据匹配时,在所述区块链网络中广播所述目标数据和用户签名,以进行共识操作;在所述目标数据和用户签名通过共识后,判定所述目标数据通过验证。本申请提供的方案可以实现对目标数据进行安全可靠的验证,可操作性高。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据验证方法、装置、存储介质和计算机设备。
背景技术
随着计算机技术的发展,出现了越来越多具有不同功能的应用程序。用户可通过用户账号和账号密码登录相应的应用程序以实现相关功能。但一旦用户忘记了账号密码则无法通过用户账号登录相应的应用程序,在这种情况下,用户可发起账号密保验证,当验证通过后可找回用户账号和相应的账号密码。对于账号密保验证系统而言,最关注的是用户账号和账号密码的安全问题,必须要保证是账号拥有方发起的账号密保验证才能通过验证,否则存在安全隐患。
传统的账号密保验证方式,通过存储用户的密保问题答案,期望用户记住多个问题的答案,这样在进行账号密保验证时,直接验证用户输入的答案是否正确来判断账号密保验证的发起者是否为该用户账号的拥有方。但传统的通过保密问题来确保发起者的正确性,常常会因为时间的原因,用户忘记原有密保问题的答案,而导致账号密保验证失败,存在可操作性差的问题。
发明内容
基于此,有必要针对用户忘记原有密保问题的答案,而导致账号密保验证失败,存在可操作性差的技术问题,提供一种数据验证方法、装置、计算机可读存储介质和计算机设备。
一种数据验证方法,应用于区块链网络中的区块链节点,包括:
获取数据验证请求;所述数据验证请求携带待验证的目标数据、以及通过与所述目标数据对应的用户私钥加密得到的用户签名;
从区块链网络中查找与所述目标数据相关联的用户公钥;
通过查找到的用户公钥解密所述用户签名得到解密数据;
当所述解密数据与所述待验证的目标数据匹配时,在所述区块链网络中广播所述目标数据和用户签名,以进行共识操作;
在所述目标数据和用户签名通过共识后,判定所述目标数据通过验证。
一种数据验证装置,所述装置包括:
第一获取模块,用于获取数据验证请求;所述数据验证请求携带待验证的目标数据、以及通过与所述目标数据对应的用户私钥加密得到的用户签名;
查找模块,用于从区块链网络中查找与所述目标数据相关联的用户公钥;
解密模块,用于通过查找到的用户公钥解密所述用户签名得到解密数据;
共识模块,用于当所述解密数据与所述待验证的目标数据匹配时,在所述区块链网络中广播所述目标数据和用户签名,以进行共识操作;
判定模块,用于在所述目标数据和用户签名通过共识后,判定所述目标数据通过验证。
在一个实施例中,所述目标数据包括用户账号,所述数据验证装置还包括:
所述第一获取模块,还用于从用户终端获取通过已登录的用户账号所触发的数据保护请求;所述数据保护请求携带所述用户账号、以及与所述用户账号对应的账号密码;
第一生成模块,用于根据所述用户账号和账号密码生成对应的用户密钥对,并将所述用户密钥对写入所述区块链节点中的数据区块;所述用户密钥对包括用户私钥和用户公钥;
反馈模块,用于响应于所述数据保护请求,反馈所述用户密钥对;反馈的所述用户密钥对用于传递至所述用户终端,并触发所述用户终端保存所述用户密钥对。
在一个实施例中,所述第一获取模块,还用于获取节点公钥查询请求;所述反馈模块,还用于响应于所述节点公钥查询请求,查找本地的节点公钥并反馈;反馈的所述节点公钥用于传递至数据验证请求发起方,并指示所述数据验证请求发起方通过所述节点公钥加密待验证的目标数据得到目标数据密文。
在一个实施例中,所述第一获取模块,还用于获取携带目标数据密文和用户签名的数据验证请求;通过与所述节点公钥对应的节点私钥解密所述目标数据密文,得到待验证的所述目标数据。
在一个实施例中,所述数据验证请求还携带与所述用户私钥对应的用户公钥;所述解密模块,还用于比对查找到的用户公钥和所述数据验证请求中携带的用户公钥;当所述查找到的用户公钥和所述数据验证请求中携带的用户公钥一致时,通过所述用户公钥解密所述用户签名得到所述解密数据。
在一个实施例中,所述解密数据包括第一哈希摘要;所述解密模块,还用于通过查找到的用户公钥解密所述用户签名,得到与所述目标数据对应的第一哈希摘要;对所述待验证的目标数据进行哈希运算,得到对应的第二哈希摘要;当所述第一哈希摘要与所述第二哈希摘要一致时,判定所述解密数据与所述待验证的目标数据匹配。
在一个实施例中,所述目标数据包括用户账号,所述反馈模块还用于响应于所述数据验证请求,向安全中心平台反馈表示所述用户账号通过验证的反馈信息;所述反馈信息用于指示所述安全中心平台向用户终端发送与所述用户账号对应的账号密码,和/或,提供用于重置密码的密码重置接口。
在一个实施例中,所述数据验证装置还包括第一存储模块,其中,
所述第一获取模块,还用于确定获取所述数据验证请求的时间信息、以及数据验证请求发起方对应的网络地址;
所述第一生成模块,还用于基于所述目标数据、表示所述目标数据通过验证的反馈信息、所述时间信息和所述网络地址,生成数据验证日志;
所述第一存储模块,用于在所述数据验证日志通过共识后,将所述数据验证日志写入所述区块链节点中的数据区块。
在一个实施例中,所述目标数据包括用户账号,所述第一获取模块还用于接收账号密码更新请求;所述账号密码更新请求携带所述用户账号和对应的更新密码;
所述第一生成模块,还用于根据所述用户账号和更新密码生成对应的用户更新密钥对,并将所述用户更新密钥对写入所述区块链节点中的数据区块;所述用户更新密钥对包括用户更新私钥和用户更新公钥;
所述反馈模块,还用于响应于所述账号密码更新请求,反馈所述用户更新密钥对;反馈的所述用户更新密钥对用于传递至所述用户终端,并触发所述用户终端将所述用户更新密钥对替换所述用户密钥对进行保存。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取数据验证请求;所述数据验证请求携带待验证的目标数据、以及通过与所述目标数据对应的用户私钥加密得到的用户签名;
从区块链网络中查找与所述目标数据相关联的用户公钥;
通过查找到的用户公钥解密所述用户签名得到解密数据;
当所述解密数据与所述待验证的目标数据匹配时,在所述区块链网络中广播所述目标数据和用户签名,以进行共识操作;
在所述目标数据和用户签名通过共识后,判定所述目标数据通过验证。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取数据验证请求;所述数据验证请求携带待验证的目标数据、以及通过与所述目标数据对应的用户私钥加密得到的用户签名;
从区块链网络中查找与所述目标数据相关联的用户公钥;
通过查找到的用户公钥解密所述用户签名得到解密数据;
当所述解密数据与所述待验证的目标数据匹配时,在所述区块链网络中广播所述目标数据和用户签名,以进行共识操作;
在所述目标数据和用户签名通过共识后,判定所述目标数据通过验证。
上述数据验证方法、装置、计算机可读存储介质和计算机设备,在接收到携带有待验证的目标数据和用户签名的数据验证请求后,从区块链网络中查找与目标数据相关联的用户公钥,并通过查找到的用户公钥来验证目标数据和用户签名。由于该用户签名是通过与目标数据对应的用户私钥加密生成,而理论上只有该目标数据的拥有方拥有该用户私钥。当验证通过则说明该数据验证请求的发起方、与该目标数据的拥有方是匹配的,该数据验证请求是合法的。并且,在验证通过后在区块链网络中广播目标数据和用户签名,可以通过区块链网络中的其他节点进行共识操作,在共识通过后再确定该目标数据通过验证,可进一步保障目标数据验证的安全性。这样可避免用户记忆复杂的密保问题答案,通过用户私钥即可实现对目标数据进行安全可靠的验证,可操作性高。
一种数据验证方法,包括:
获取待验证的目标数据、以及与所述目标数据对应的用户私钥;
通过所述用户私钥加密所述目标数据,得到用户签名;
根据所述待验证的目标数据和所述用户签名生成数据验证请求;
将所述数据验证请求传递至区块链网络中的区块链节点;所述数据验证请求用于指示所述区块链节点通过区块链网络中与所述目标数据相关联的用户公钥对所述目标数据和用户签名进行验证;
当验证通过后,接收所述区块链节点反馈的表示验证通过的反馈信息。
一种数据验证装置,包括:
第二获取模块,用于获取待验证的目标数据、以及与所述目标数据对应的用户私钥;
加密模块,用于通过所述用户私钥加密所述目标数据,得到用户签名;
第二生成模块,用于根据所述待验证的目标数据和所述用户签名生成数据验证请求;
传递模块,用于将所述数据验证请求传递至区块链网络中的区块链节点;所述数据验证请求用于指示所述区块链节点通过区块链网络中与所述目标数据相关联的用户公钥对所述目标数据和用户签名进行验证;
接收模块,用于当验证通过后,接收所述区块链节点反馈的表示验证通过的反馈信息。
在一个实施例中,所述目标数据包括用户账号,所述数据验证装置还包括第二存储模块,其中,
所述第二获取模块,还用于获取用于重置密码的密码重置接口;通过所述密码重置接口获取输入的更新密码;
所述第二生成模块,还用于根据所述用户账号和所述更新密码生成账号密码更新请求;
所述传递模块,还用于将所述账号密码更新请求传递至所述区块链节点;所述账号密码更新请求用于指示所述区块链节点根据所述用户账号和更新密码生成对应的用户更新密钥对并存储;所述用户更新密钥对包括用户更新私钥和用户更新公钥;
所述接收模块,还用于接收所述区块链节点反馈的所述用户更新秘钥对;
所述第二存储模块,用于将所述用户更新密钥对替换用户密钥对进行保存。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取待验证的目标数据、以及与所述目标数据对应的用户私钥;
通过所述用户私钥加密所述目标数据,得到用户签名;
根据所述待验证的目标数据和所述用户签名生成数据验证请求;
将所述数据验证请求传递至区块链网络中的区块链节点;所述数据验证请求用于指示所述区块链节点通过区块链网络中与所述目标数据相关联的用户公钥对所述目标数据和用户签名进行验证;
当验证通过后,接收所述区块链节点反馈的表示验证通过的反馈信息。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取待验证的目标数据、以及与所述目标数据对应的用户私钥;
通过所述用户私钥加密所述目标数据,得到用户签名;
根据所述待验证的目标数据和所述用户签名生成数据验证请求;
将所述数据验证请求传递至区块链网络中的区块链节点;所述数据验证请求用于指示所述区块链节点通过区块链网络中与所述目标数据相关联的用户公钥对所述用户签名进行验证;
当验证通过后,接收所述区块链节点反馈的表示验证通过的反馈信息。
上述数据验证方法、装置、计算机可读存储介质和计算机设备,通过用户私钥加密待验证的目标数据,得到用户签名,并根据目标数据和用户签名生成数据验证请求。将数据验证请求传递至区块链网络中的区块链节点,以通过区块链节点从区块链网络中查找与目标数据相关联的用户公钥,并通过该用户公钥对用户签名进行验证。当验证通过后,接收区块链节点反馈的表示验证通过的反馈信息。由于该用户签名是通过与目标数据对应的用户私钥加密生成,而理论上只有该目标数据的拥有方拥有该用户私钥。当验证通过则说明该数据验证请求的发起方、与该目标数据的拥有方是匹配的,该数据验证请求是合法的。并且,通过区块链网络进行验证时,会通过区块链网络的共识,可进一步保障目标数据验证的安全性。这样,通过用户私钥实现对目标数据的验证,避免用户记忆复杂的密保问题答案,既保障了数据安全又提高了可操作性。
附图说明
图1为一个实施例中数据验证方法的应用环境图;
图2为一个实施例中数据验证方法的流程示意图;
图3为一个实施例中区块链网络的底层架构图;
图4为一个具体实施例中数据验证方法的流程示意图;
图5为一个实施例中数据验证方法的流程示意图;
图6为另一个具体实施例中数据验证方法的流程示意图;
图7为一个实施例中数据验证方法的时序图;
图8为一个实施例中数据验证装置的结构框图;
图9为另一个实施例中数据验证装置的结构框图;
图10为一个实施例中数据验证装置的结构框图;
图11为另一个实施例中数据验证装置的结构框图;
图12为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中数据验证方法的应用环境图。参照图1,该数据验证方法应用于数据验证系统。该数据验证系统包括终端110、安全中心平台120和区块链网络。区块链网络中包括多个区块链节点130,各个区块链节点间两两可以进行数据传递。终端110和安全中心平台120通过网络连接,安全中心平台120和区块链节点130通过网络连接。安全中心平台120具体可以是终端也可以是服务器。其中,终端具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。区块链节点130可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种数据验证方法。本实施例主要以该方法应用于上述图1中的区块链网络中的区块链节点130来举例说明。参照图2,该数据验证方法具体包括如下步骤:
S202,获取数据验证请求;数据验证请求携带待验证的目标数据、以及通过与目标数据对应的用户私钥加密得到的用户签名。
其中,区块链节点是区块链网络中的一个数据处理节点。区块链网络是运行区块链技术的载体和组织方式。区块链技术,简称BT(Blockchain technology),也被称为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个节点均可参与数据记录。区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
目标数据是待验证的数据,对于不同的应用场景,该目标数据具体可以是不同的业务数据。比如,对于账号密保验证场景,当用户遗忘账号密码时,需要找回用户对应的用户账号和账号密码,此时目标数据就可以是用户账号,而区块链节点需保障待验证的用户账号为本人账号才能通过验证。对于某些金融领域的应用场景,比如银行业务办理、或保险业务办理等场景,需要对用户的关键信息和敏感信息进行二次验证时,对应的目标数据就可以是与用户相关的关键信息和敏感信息。
具体地,区块链节点可接收其他计算机设备发送的数据验证请求。该数据验证请求携带待验证的目标数据、以及通过与目标数据对应的用户私钥加密得到的用户签名。
在一个实施例中,区块链节点可接收用户终端触发的数据验证请求。用户终端可展示交互界面,在该交互界面中展示具有不同功能的控件,比如交互界面中可展示用于发起数据验证请求的验证控件。用户可通过点击、按压或双击该验证控件,以触发用户终端向区块链节点发起数据验证请求。
在一个实施例中,获取数据验证请求之前,该数据验证方法还包括反馈节点公钥的步骤,该步骤具体包括:获取节点公钥查询请求;响应于节点公钥查询请求,查找本地的节点公钥并反馈;反馈的节点公钥用于传递至数据验证请求发起方,并指示数据验证请求发起方通过节点公钥加密待验证的目标数据得到目标数据密文。
其中,数据验证请求发起方是发起数据验证请求的计算机设备,当用户终端可直接与区块链节点通信时,该数据验证请求发起方具体可以是用户终端;当用户终端需要通过安全中心平台与区块链节点通信时,该数据验证请求发起方具体可以是安全中心平台。
具体地,当需要进行数据验证时,数据验证请求发起方可向区块链节点发送节点公钥查询请求。区块链节点在接收到该节点公钥查询请求后,可查找对应的节点公钥并反馈至数据验证请求发起方。数据验证请求发起方可通过节点公钥加密待验证的目标数据得到目标数据密文。进而,区块链节点可获取携带目标数据密文和用户签名的数据验证请求;通过与节点公钥对应的节点私钥解密目标数据密文,得到待验证的目标数据。
在一个实施例中,用户终端可展示交互界面,在该交互界面中展示具有不同功能的控件,比如交互界面中可展示用于发起节点公钥查询请求的查询控件。用户可通过点击、按压或双击该查询控件,以触发用户终端向区块链节点发起节点公钥查询请求。
在一个实施例中,数据验证请求发起方通过节点公钥加密目标数据得到目标数据密文后,可对目标数据进行哈希运算得到对应的哈希摘要,并通过用户私钥加密对应的哈希摘要得到用户签名。数据验证请求发起方将目标数据密文和用户签名发送至区块链节点。区块链节点接收到目标数据密文后可通过相应的节点私钥解密目标数据密文得到目标数据。这样,在进行目标数据的验证过程中,可通过节点公钥加密目标数据后传输,可保障只有对应的区块链节点才能通过节点私钥解密得到目标数据,保障了目标数据在传输过程中的安全性。
在一个实施例中,目标数据包括待验证的用户账号,数据验证请求包括账号密保验证请求,该账号密保验证请求用于找回与用户账号对应的账号密码。当用户遗忘账号密码时,可根据预先存储的用户私钥,发起账号密保验证请求。
在一个实施例中,用户终端可对用户账号进行哈希运算,得到对应的哈希摘要,再通过用户私钥加密哈希摘要得到用户签名。用户终端可根据用户账号和用户签名生成账号密保验证请求,并将该账号密保验证请求发送至安全中心平台,通过安全中心平台将账号密保验证请求转发至区块链网络中的区块链节点。
在另一个实施例中,用户终端可将用户账号和用户私钥提交至安全中心平台,安全中心平台根据用户私钥加密该用户账号得到对应的用户签名,并根据用户账号和用户签名生成账号密保验证请求,通过安全中心平台将账号密保验证请求发送至区块链网络中的区块链节点。
在一个实施例中,当用户通过用户账号登录用户终端时,也就是用户并未遗忘账号密码前,可通过用户账号触发数据保护请求。用户终端将已登录的用户账号、及相应的账号密码发送至安全中心平台,通过安全中心平台转发至区块链节点。区块链节点接收到用户账号和账号密码后,根据用户账号和账号密码生成对应的用户密钥对,并将用户密钥对写入数据区块。区块链节点可将用户密钥对反馈至用户终端,用户终端存储用户密钥对。其中,用户密钥对包括用户私钥和用户公钥。可以理解,用户公钥可通过用户私钥生成,比如,用户私钥经过椭圆曲线算法可生成用户公钥,此算法为非对称单向加密算法,可通过用户私钥可以生成用户公钥,但是无法通过用户公钥反向推出用户私钥。
S204,从区块链网络中查找与目标数据相关联的用户公钥。
具体地,区块链节点接收到数据验证请求后,可从本地存储的数据区块或其他区块链节点所存储的数据区块中,查找与目标数据相关联的用户公钥。与目标数据相关联的用户公钥可以是预先生成和保存的。
在一个实施例中,数据验证请求发起方可提前将待保护的目标数据发送至区块链节点,区块链节点根据待保护的目标数据生成对应的用户密钥对。该用户密钥对包括用户私钥和用户公钥。区块链节点可将用户密钥对反馈至数据验证请求发起方,并将目标数据与对应的用户密钥对关联后写入数据区块。这样,在数据验证请求发起方需要进行数据验证时,可通过接收的用户私钥加密目标数据得到用户签名,而区块链节点也可通过区块链网络中存储的用户公钥进行解密,以验证该数据验证请求发起方是否为该目标数据的拥有方。
在一个实施例中,目标数据包括用户账号,步骤S202之前,该数据验证方法还包括获取用户密钥对的步骤,该步骤具体包括:从用户终端获取通过已登录的用户账号所触发的数据保护请求;数据保护请求携带用户账号、以及与用户账号对应的账号密码;根据用户账号和账号密码生成对应的用户密钥对,并将用户密钥对写入区块链节点中的数据区块;用户密钥对包括用户私钥和用户公钥;响应于数据保护请求,反馈用户密钥对;反馈的用户密钥对用于传递至用户终端,并触发用户终端保存用户密钥对。
具体地,当用户通过用户账号登录用户终端时,也就是用户并未遗忘账号密码前,可通过用户账号触发数据保护请求,数据保护请求携带用户账号、以及与用户账号对应的账号密码。区块链节点接收到用户终端发送的数据保护请求后,可根据用户账号和账号密码生成对应的用户密钥对。其中,区块链节点根据用户账号和账号密码生成对应的用户私钥的方式不限,比对,可对用户账号和账号密码进行哈希处理,得到用户私钥,或者,区块链节点可对用户账号、账号密码、用户手机号、及用户身份证号码等进行处理以生成用户私钥等,本申请实施例在此不做限定。
进而,区块链节点可将该用户账号和用户密钥对关联后写入区块链节点中的数据区块,并记录对应的区块地址。或者区块链节点可将用户密钥对写入区块链节点中的数据区块,并将该用户账号和区块地址关联存储,以便后续可方便快捷地查找与用户账号对应的用户公钥。响应于数据保护请求,区块链节点可反馈用户密钥对,反馈的用户密钥对用于传递至用户终端,并触发用户终端保存用户密钥对。
在一个实施例中,区块链节点接收到数据保护请求后,可对用户账号和账号密码进行安全验证。对用户账号和账号密码进行安全验证具体可以是验证该用户账号是否为安全账号。比如根据该用户账号对应的用户历史行为数据确定该用户账号是否存在安全风险,当该用户账号对应的安全风险值低于预设安全风险值时,则判定该用户账号未安全账号。当该用户账号该用户账号通过安全验证后,区块链节点根据用户账号和账号密码生成对应的用户私钥,并根据用户私钥生成对应的用户公钥。
上述实施例中,已登录的用户账号通过预先触发数据保护请求,以获取对应的用户密钥对,从而可实现后续基于用于私钥所发起的数据验证请求。这样,接收根据用户私钥所发起数据验证请求,通过对应的用户公钥进行验证,可方便快捷准确地辨别数据验证请求发起方是否为待验证的目标数据的拥有方。
S206,通过查找到的用户公钥解密用户签名得到解密数据。
具体地,区块链节点可通过查找到的用户公钥,对用户签名进行解密操作。当通过查找到的用户公钥可执行对用户签名的解密操作时,则执行后续步骤S208。当通过查找到的用户公钥无法执行对用户签名的解密操作时,则说明该目标数据与用户私钥不是对应关系,也就是该数据验证请求发起方不是该目标数据的拥有方,区块链节点可直接判定该目标数据未通过验证。
在一个实施例中,数据验证请求还携带与用户私钥对应的用户公钥;步骤S206,也就是通过查找到的用户公钥解密用户签名得到解密数据的步骤具体包括:比对查找到的用户公钥和数据验证请求中携带的用户公钥;当查找到的用户公钥和数据验证请求中携带的用户公钥一致时,通过用户公钥解密用户签名得到解密数据。
具体地,数据验证请求携带目标数据、用户签名和用户公钥。区块链节点接收到数据验证请求后,从区块链网络中查找与目标数据相关联的用户公钥。当查找到的用户公钥与数据验证请求中携带的用户公钥一致时,再执行通过用户公钥解密用户签名得到解密数据的步骤。当查找到的用户公钥与数据验证请求中携带的用户公钥不一致时,则直接判定该目标数据未通过验证。这样,通过比对查找到的用户公钥和数据验证请求中携带的用户公钥是否一致,可初步判断数据验证请求发起方是否为该目标数据的拥有方。
S208,当解密数据与待验证的目标数据匹配时,在区块链网络中广播目标数据和用户签名,以进行共识操作。
其中,解密数据与目标数据匹配具体可以是解密数据与目标数据一致,或解密数据与目标数据各自对应的哈希摘要一致。具体地,区块链节点通过查找到的用户公钥解密用户签名得到解密数据后,可将解密数据与待验证的目标数据进行比对,确定解密数据与目标数据间是否存在差异。当解密数据与待验证的目标数据匹配时,可判定该目标数据通过第一轮的验证。进而区块链节点可在区块链网络中广播该目标数据和用户签名。区块链网络中其他的区块链节点接收到广播的信息后,可执行共识操作。
在一个实施例中,接收到广播的目标数据和用户签名的区块链节点可通过共识算法对目标数据和用户签名进行计算,在超过预设数量的区块链节点的计算结果一致时,则可认为目标数据和用户签名通过共识。其中,预设数量具体可以是区块链节点的总数量的一半。在另一个实施例中,只有所有的区块链节点都达成一致时,才判定目标数据和用户签名通过共识。
在一个实施例中,步骤S206,也就是通过查找到的用户公钥解密用户签名得到解密数据的步骤具体包括:通过查找到的用户公钥解密用户签名,得到与目标数据对应的第一哈希摘要。该数据验证方法还包括判断解密数据和待验证的目标数据是否匹配的步骤,该步骤具体包括:对待验证的目标数据进行哈希运算,得到对应的第二哈希摘要;当第一哈希摘要与第二哈希摘要一致时,判定解密数据与待验证的目标数据匹配。
具体地,区块链节点可通过查找到的用户公钥解密用户签名,得到与目标数据对应的第一哈希摘要。区块链节点可对数据验证请求中携带的目标数据进行哈希处理,得到对应的第二哈希摘要。比对第一哈希摘要和第二哈希摘要,当第一哈希摘要和第二哈希摘要一致时,则可判定该目标数据通过第一轮的验证。进而区块链节点可在区块链网络中广播该目标数据和用户签名。区块链网络中其他的节点接收到广播的信息后,可执行共识操作。这样,通过比对有目标数据所确定的哈希摘要,一旦目标数据有微小的差异,各自哈希得到的哈希摘要都会差异巨大,可以方便快捷且准确地对目标数据进行验证。
在一个实施例中,区块链节点可在区块链网络中广播目标数据、用户签名和用户公钥。区块链网络中其他的节点收到广播信息后,根据广播中的用户公钥对用户签名进行解密得到与目标数据对应的第一哈希摘要。然后对目标数据进行同样的哈希运算得到第二哈希摘要,最后判断第一哈希摘要和第二哈希摘要是否相等。如果相等则校验成功。如果所有的节点都反馈至区块链节点的信息都表示校验成功,则区块链节点可判定广播的信息通过共识,也就是该目标数据通过验证,否则验证失败。
S210,在目标数据和用户签名通过共识后,判定目标数据通过验证。
具体地,在目标数据和用户签名通过共识后,判定目标数据通过验证。在一个实施例中,区块链网络中的各区块链节点可采取合适的共识算法对广播的目标数据和用户签名进行共识运算,当超过预设数量的区块链节点达成共识时,则判定广播的目标数据和用户签名通过共识。进而区块链节点可判定目标数据通过验证,也就是可确定数据验证请求发起方是该目标数据的拥有方。
其中,区块链网络中的共识算法常用的有POW(Proof of Work,工作量证明)、POS(Proof of Stake,权益证明)、DPOS(Delegated Proof of Stake,委任权益证明)、及PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错算法)等等,本申请实施例在此不做限定。
上述数据验证方法,在接收到携带有待验证的目标数据和用户签名的数据验证请求后,从区块链网络中查找与目标数据相关联的用户公钥,并通过查找到的用户公钥来验证目标数据和用户签名。由于该用户签名是通过与目标数据对应的用户私钥加密生成,而理论上只有该目标数据的拥有方拥有该用户私钥。当验证通过则说明该数据验证请求的发起方、与该目标数据的拥有方是匹配的,该数据验证请求是合法的。并且,在验证通过后在区块链网络中广播目标数据和用户签名,可以通过区块链网络中的其他节点进行共识操作,在共识通过后再确定该目标数据通过验证,可进一步保障目标数据验证的安全性。这样可避免用户记忆复杂的密保问题答案,通过用户私钥即可实现对目标数据进行安全可靠的验证,可操作性高。
在一个实施例中,目标数据包括用户账号,该数据验证方法还包括向安全中心平台发送反馈信息的步骤,该步骤具体包括:响应于数据验证请求,向安全中心平台反馈表示用户账号通过验证的反馈信息;反馈信息用于指示安全中心平台向用户终端发送与用户账号对应的账号密码,和/或,提供用于重置密码的密码重置接口。
具体地,目标数据包括用户账号,当该用户账号通过验证后,区块链节点可响应于该数据验证请求,向安全中心平台反馈表示目标数据通过验证的反馈信息。安全中心平台接收到反馈信息后,可向用户终端发送与该用户账号对应的账号密码,和/或,安全中心平台提供用于重置密码的密码重置接口。这样,用户终端在接收到账号密码后,可通过相应的用户账号和账号密码实现登录。或者,用户终端获取密码重置接口后,可通过该密码重置接口输入更新密码,用更新密码替代原有的账号密码。
在一个实施例中,当解密数据与待验证的目标数据不匹配,或目标数据和用户签名并未通过共识时,区块链节点可判定目标数据未通过验证。区块链节点可向安全中心平台反馈表示目标数据未通过验证的反馈信息。安全中心平台将表示目标数据未通过验证的反馈信息传递至用户终端。此时,表示数据验证请求发起方并不是该目标数据的拥有方。当目标数据为用户账号时,表示发起数据验证请求的用户并不是该用户账号的拥有方,所以安全中心平台拒绝提供账号密码或密码重置接口,降低了用户账号被盗号的风险,提高了用户账号的安全。
上述实施例中,当用户账号通过验证后,可向安全中心平台反馈表示用户账号通过验证的反馈信息,以使得安全中心平台向用户终端发送与用户账号对应的账号密码,和/或,提供用于重置密码的密码重置接口,这样,用户即可在忘记账号密码的情况下找回该用户账号。
在一个实施例中,该数据验证方法还包括记录账号保密验证日志的步骤,该步骤具体包括:确定获取数据验证请求的时间信息、以及数据验证请求发起方对应的网络地址;基于目标数据、表示目标数据通过验证的反馈信息、时间信息和网络地址,生成数据验证日志;在数据验证日志通过共识后,将数据验证日志写入区块链网络中的数据区块。
具体地,在目标数据通过验证后,区块链节点可确定接收该数据验证请求的时间信息、以及数据验证请求发起方对应的网络地址。进而基于目标数据、表示目标数据通过验证的反馈信息、时间信息和网络地址,生成数据验证日志。区块链节点可在区块链网络中广播该数据验证日志,以对该数据验证日志进行共识操作,在数据验证日志通过共识后,区块链节点可将数据验证日写入区块链网络中新生成的数据区块。
在一个实施例中,目标数据包括用户账号。在用户账号通过验证后,区块链节点可基于用户账号、表示用户账号通过验证的反馈信息、时间信息和网络地址,生成账号保密验证日志。区块链节点可在区块链网络中广播该账号保密验证日志,以对该账号保密验证日志进行共识操作,在账号保密验证日志通过共识后,区块链节点可将账号保密验证日写入数据区块。
在一个实施例中,区块链节点执行向安全中心平台发送反馈信息的步骤,与执行记录账号保密验证日志的步骤的先后顺序不做限定,记录账号保密验证日志的步骤可以在向安全中心平台发送反馈信息的步骤之前、之后或同时执行,本申请实施例对此不做限定。
上述实施例中,区块链节点可根据此次数据验证的结果生成相应的数据验证日志,并存储在区块链网络中,以便后续可实现数据追溯。
在一个实施例中,目标数据包括用户账号,该数据验证方法还包括账号密码更新的步骤,该步骤具体包括:接收账号密码更新请求;账号密码更新请求携带用户账号和对应的更新密码;根据用户账号和更新密码生成对应的用户更新密钥对,并将用户更新密钥对写入区块链节点中的数据区块;用户更新密钥对包括用户更新私钥和用户更新公钥;响应于账号密码更新请求,反馈用户更新密钥对;反馈的用户更新密钥对用于传递至用户终端,并触发用户终端将用户更新密钥对替换用户密钥对进行保存。
具体地,区块链节点可接收账号密码更新请求。该账号密码更新请求携带用户账号和对应的更新密码。该账号密码更新请求通过用户终端上已登录的用户账号触发,或者通过安全中心平台提供的用于重置密码的密码重置接口触发。
区块链节点接收到账号密码更新请求后,可根据用户账号和更新密码生成对应的用户更新密钥对,并将用户更新密钥对写入区块链节点中的数据区块。响应于账号密码更新请求,区块链节点可反馈用户更新密钥对。安全中心平台接收到用户更新密钥对后再发送至用户终端。用户终端可将用户更新密钥对替换原有的用户密钥对进行保存。
在一个实施例中,区块链节点可根据用户账号和更新密码生成对应的用户私钥,并根据用户私钥生成对应的用户更新公钥。其中,区块链节点根据用户账号和更新密码生成对应的用户更新私钥的方式不限,比对,可对用户账号和更新密码进行哈希处理,得到用户更新私钥,或者,区块链节点可对用户账号、更新密码、用户手机号、及用户身份证号码等进行处理以生成用户更新私钥等,本申请实施例在此不做限定。
在一个实施例中,区块链节点可将该用户账号和用户更新密钥对关联后写入数据区块,并记录对应的区块地址。或者区块链节点可将用户更新密钥对写入数据区块,并将该用户账号和对应的区块地址关联存储,以便后续可方便快捷地查找与用户账号对应的用户更新公钥。
上述实施例中,根据用户账号和更新密码可生成对应的用户更新密钥对,并将更新的用户更新密钥对反馈至用户终端。这样,当用户修改账号密码或重置账号密码时,可对应获取相应的用户更新密钥对,以便后续在遗忘密码时可基于用户更新密钥对发起数据验证请求,安全快捷地找回用户账号。
在一个实施例中,参考图3,图3为一个实施例中区块链网络的底层架构图。区块链网络的底层架构包括逻辑层、网络层和存储层。其中,逻辑层是核心层,负责整个账号密保验证方法的逻辑处理。网络层是区块链技术的底层技术,和存储层合在一起构成整个区块链网络的底层架构。区块链技术中的许多特性在网络层实现,比如分布式算法,加密算法等都在网络层实现,网络层还有一个主要作用就是按照使用的共识算法选择节点记账,保证数据安全。存储层在区块链网络中用于记录账本信息,此处,将区块链网络的存储层和网络层分开处理,可将网络层的I/O(Input/Output,输入/输出)和存储层的I/O分离开,可以对两种I/O在各自的机器上面做定制优化,以提高整个区块链系统的性能。其中,网络层和存储层中包括多个处理节点,比如处理节点1、处理节点2……处理节点N等,该多个处理节点具体可以是本申请实施例中的区块链节点,或者是区块链网络中参与共识操作的共识节点。各个处理节点可产生和保存数据区块,比如区块0、区块1……区块N等。
如图3所示,当该数据验证方法应用于账号密保验证场景时,区块链节点可接收账号密码验证请求。通过图3中所示的逻辑层执行相应的代码以实现本申请实施例中的数据验证方法。可以理解,在其他的一些实施例中,该区块链网络的架构图中还可包括中控层,中控层包括资源管理模块和监控模块,负责各个节点的硬件/软件资源的监控、以及业务日志的记录等。该中控层还可用于与其他的计算机设备进行通信,以将资源监控的状况及业务日志等同步传输至其他的计算机设备。
如图4所示,在一个具体地实施例中,该数据验证方法包括以下内容:当接收到数据验证请求时,随机从区块链网络中确定区块链节点来辅助验证过程。该区块链节点对数据验证请求中的用户账号和用户签名进行校验,当校验通过后在区块链网络中广播该数据验证请求,以使得区块链网络中的其他的节点进行校验。当任一区块链节点校验失败,则此次用户账号验证失败。当数据验证请求通过各区块链节点的校验后,接收数据验证请求的区块链节点可根据此次校验的全过程生成数据交易日志,生成一个新的区块记录数据交易日志,并向全网广播。该区块链节点可向安全中心平台反馈表示验证通过的反馈信息。
如图5所示,在一个实施例中,提供了一种数据验证方法。本实施例主要以该方法应用于数据验证请求发起方来进行举例说明,该数据验证请求发起方具体可以是上述图1中的用户终端110或安全中心平台120。参照图5,该数据验证方法具体包括如下步骤:
S502,获取待验证的目标数据、以及与目标数据对应的用户私钥。
具体地,当需要验证目标数据时,用户终端可从本地或其他的计算机设备处或待验证的目标数据、以及预先存储的与目标数据对应的用户私钥。用户终端可单独执行该数据验证方法,也可将目标数据和用户私钥发送至安全中心平台,通过安全中心平台执行该数据验证方法。
在一个实施例中,用户终端可提前将待保护的目标数据发送至区块链节点,区块链节点根据待保护的目标数据生成对应的用户密钥对。该用户密钥对包括用户私钥和用户公钥。区块链节点可将用户密钥对反馈至用户终端,并将目标数据与对应的用户密钥对关联后写入数据区块。这样,在用户终端需要进行数据验证时,可从本地存储的数据中查找到与目标数据对应的用户私钥。
S504,通过用户私钥加密目标数据,得到用户签名。
具体地,用户终端可通过用户私钥加密目标数据得到用户签名。在一个实施例中,用户终端可对目标数据进行哈希运算,得到对应的哈希摘要,并通过用户私钥加密对应的哈希摘要得到用户签名。
在一个实施例中,用户终端可将待验证的目标数据和用户私钥发送至安全中心平台,安全中心平台根据用户私钥对于目标数据进行加密,得到用户签名。安全中心平台可对目标数据进行哈希运算,得到对应的哈希摘要,并通过用户私钥加密对应的哈希摘要得到用户签名。
S506,根据待验证的目标数据和用户签名生成数据验证请求。
具体地,用户终端或安全中心平台可根据待验证的目标数据和用户签名生成数据验证请求。
S508,将数据验证请求传递至区块链网络中的区块链节点;数据验证请求用于指示区块链节点通过区块链网络中与目标数据相关联的用户公钥对目标数据和用户签名进行验证。
具体地,当用户终端生成数据验证请求时,可将该数据验证请求发送至安全中心平台,通过安全中心平台转发至区块链网络中的区块链节点。当安全中心平台生成数据验证请求时,安全中心平台可直接将该数据验证请求发送至区块链网络中的区块链节点。
在一个实施例中,区块链网络中包括多于一个的区块链节点。安全中心平台可将数据验证请求随机发送至任意一个区块链节点。或者,安全中心平台可将数据验证请求发送至预先配置的相对应的区块链节点。
区块链节点接收到数据验证请求后,可通过区块链网络中与目标数据相关联的用户公钥对用户签名进行验证。其中,区块链节点对目标数据和用户签名进行验证的过程可参考前述实施例中步骤S204-S206的相关描述,本申请实施例在此不做限定。
S510,当验证通过后,接收区块链节点反馈的表示验证通过的反馈信息。
具体地,当目标数据和用户签名都通过校验时,区块链节点可判定目标数据通过验证,进而区块链节点可生成表示目标数据通过验证的反馈信息。区块链节点可将表示验证通过的反馈信息发送至安全中心平台,安全中心平台接收到表示验证通过的反馈信息后再转发至用户终端。
在一个实施例中,目标数据包括用户账号,当该用户账号通过验证后,区块链节点可响应于该数据验证请求,向安全中心平台反馈表示目标数据通过验证的反馈信息。安全中心平台接收到反馈信息后,可向用户终端发送与该用户账号对应的账号密码,和/或,安全中心平台提供用于重置密码的密码重置接口。这样,用户终端在接收到账号密码后,可通过相应的用户账号和账号密码实现登录。或者,用户终端获取密码重置接口后,可通过该密码重置接口输入更新密码,用更新密码替代原有的账号密码。
上述数据验证方法,通过用户私钥加密待验证的目标数据,得到用户签名,并根据目标数据和用户签名生成数据验证请求。将数据验证请求传递至区块链网络中的区块链节点,以通过区块链节点从区块链网络中查找与目标数据相关联的用户公钥,并通过该用户公钥对用户签名进行验证。当验证通过后,接收区块链节点反馈的表示验证通过的反馈信息。由于该用户签名是通过与目标数据对应的用户私钥加密生成,而理论上只有该目标数据的拥有方拥有该用户私钥。当验证通过则说明该数据验证请求的发起方、与该目标数据的拥有方是匹配的,该数据验证请求是合法的。并且,通过区块链网络进行验证时,会通过区块链网络的共识,可进一步保障目标数据验证的安全性。这样,通过用户私钥实现对目标数据的验证,避免用户记忆复杂的密保问题答案,既保障了数据安全又提高了可操作性。
在一个实施例中,目标数据包括用户账号,方法还包括存储用户更新密钥对的步骤,该步骤具体包括:获取用于重置密码的密码重置接口;通过密码重置接口获取输入的更新密码;根据用户账号和更新密码生成账号密码更新请求;将账号密码更新请求传递至区块链节点;账号密码更新请求用于指示区块链节点根据用户账号和更新密码生成对应的用户更新密钥对并存储;用户更新密钥对包括用户更新私钥和用户更新公钥;接收区块链节点反馈的用户更新秘钥对;将用户更新密钥对替换用户密钥对进行保存。
具体地,目标数据包括用户账号,在该用户账号通过验证后,安全中心平台可提供密码重置接口供用户终端使用。用户可通过密码重置接口输入更新密码。当该数据验证方法通过用户终端执行时,用户终端可在用户终端本地根据用户账号和更新密码生成账号密码更新请求,并通过安全中心平台将账号密码更新请求传递至区块链网络中的区块链节点。区块链节点可根据用户账号和更新密码生成对应的用户更新密钥对并写入数据区块。区块链节点可将用户更新密钥对反馈至安全中心平台,安全中心平台将用户更新密钥对替换原有的用户密钥对进行保存,并将用户更新密钥对传递至用户终端,用户终端也将用户更新密钥对替换原有的用户密钥对进行保存。
当该数据验证方法通过安全中心平台执行时,安全中心平台可通过密码重置接口获取用户终端传递的用户账号和更新密码。安全中心平台可根据用户账号和更新密码生成账号密码更新请求,并将账号密码更新请求发送至区块链网络中的区块链节点。区块链节点可根据用户账号和更新密码生成对应的用户更新密钥对并写入数据区块。区块链节点可将用户更新密钥对反馈至安全中心平台,安全中心平台将用户更新密钥对替换原有的用户密钥对进行保存,并将用户更新密钥对传递至用户终端,用户终端也将用户更新密钥对替换原有的用户密钥对进行保存。
其中,关于区块链节点根据用户账号和更新密码生成对应的用户更新密钥对并写入数据区块的具体内容,可参考前述实施例中的相关描述,此处就不再赘述。
上述实施例中,需要重置账号密码时,可将用户账号和更新密码上传至区块链节点,以使得区块链节点根据用户账号和更新密码可生成对应的用户更新密钥对,并存储用户更新密钥对。这样,当用户修改账号密码或重置账号密码时,可对应获取相应的用户更新密钥对,以便后续在遗忘密码时可基于用户更新密钥对发起数据验证请求,安全快捷地找回用户账号。
在一个具体应用场景中,参考图6,图6为一个具体实施例中数据验证方法的流程示意图。如图6所示,当用户遗忘账号密码,丢失用户账号时,用户可登陆安全中心平台,通过安全中心平台请求找回用户账号。安全中心平台向区块链节点发起账号密保验证请求。区块链节点侧进行密保流程,基于区块链技术验证账号验证请求是否合法。当验证通过后可通过安全中心平台返回账号密码或提供密码重置接口。这样,用户就可找回自己的用户账号。
在一个具体地实施例中,参考图7,图7为一个实施例中数据验证方法的时序图。参考图7,当用户账号处于登录状态时,用户可申请账号保护。用户终端向安全中心平台发送用户账号和账号密码,安全中心平台将用户账号和账号密码转发至区块链节点。区块链节点根据用户账号和账号密码生成用户密钥对,并将用户密钥对写入数据区块。区块链节点向安全中心平台反馈用户密钥对。安全中心平台将用户密钥对反馈至用户终端。用户终端可将用户密钥对存储在终端本地或其他计算机设备中。当用户遗失账号密码时,用户终端可通过用户密钥对中的用户私钥加密用户账号,得到用户签名。并将用户账号和用户签名发送至安全中心平台。安全中心平台将用户账号和用户签名转发至区块链节点。区块链节点从区块链网络中查找与该用户账号关联的用户公钥,并通过用户公钥对用户签名进行解密得到解密数据。区块链节点比对解密数据和用户账号,当解密数据和用户账号匹配时,区块链节点可在区块链网络中广播用户账号和用户签名以进行共识操作。当通过共识后,区块链节点可判定该用户账号通过验证,并反馈表示验证通过的反馈信息至安全中心平台。安全中心平台接收到反馈信息后可向用户终端反馈与该用户账号对应的账户密码,或者,提供密码重置接口。这样,用户就可找回该账号了。
图2为一个实施例中数据验证方法的流程示意图。应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图8所示,在一个实施例中,提供了数据验证装置800,包括第一获取模块801、查找模块802、第一解密模块803、共识模块804和判定模块805。
第一获取模块801,用于获取数据验证请求;数据验证请求携带待验证的目标数据、以及通过与目标数据对应的用户私钥加密得到的用户签名。
查找模块802,用于从区块链网络中查找与目标数据相关联的用户公钥。
解密模块803,用于通过查找到的用户公钥解密用户签名得到解密数据。
共识模块804,用于当解密数据与待验证的目标数据匹配时,在区块链网络中广播目标数据和用户签名,以进行共识操作。
判定模块805,用于在目标数据和用户签名通过共识后,判定目标数据通过验证。
在一个实施例中,目标数据包括用户账号,该数据验证装置还包括:
第一获取模块801还用于从用户终端获取通过已登录的用户账号所触发的数据保护请求;数据保护请求携带用户账号、以及与用户账号对应的账号密码。
第一生成模块806,用于根据用户账号和账号密码生成对应的用户密钥对,并将用户密钥对写入区块链节点中的数据区块;用户密钥对包括用户私钥和用户公钥。
反馈模块807,用于响应于数据保护请求,反馈用户密钥对;反馈的用户密钥对用于传递至用户终端,并触发用户终端保存用户密钥对。
在一个实施例中,第一获取模块801还用于获取节点公钥查询请求。反馈模块807还用于响应于节点公钥查询请求,查找本地的节点公钥并反馈;反馈的节点公钥用于传递至数据验证请求发起方,并指示数据验证请求发起方通过节点公钥加密待验证的目标数据得到目标数据密文。
在一个实施例中,第一获取模块801还用于获取携带目标数据密文和用户签名的数据验证请求;通过与节点公钥对应的节点私钥解密目标数据密文,得到目标数据。
在一个实施例中,数据验证请求还携带与用户私钥对应的用户公钥;解密模块803还用于比对查找到的用户公钥和数据验证请求中携带的用户公钥;当查找到的用户公钥和数据验证请求中携带的用户公钥一致时,通过用户公钥解密用户签名得到解密数据。
在一个实施例中,解密数据包括第一哈希摘要;解密模块803还用于通过查找到的用户公钥解密用户签名,得到与目标数据对应的第一哈希摘要。解密模块803还用于对待验证的目标数据进行哈希运算,得到对应的第二哈希摘要;当第一哈希摘要与第二哈希摘要一致时,判定解密数据与待验证的目标数据匹配。
在一个实施例中,目标数据包括用户账号,反馈模块807还用于响应于数据验证请求,向安全中心平台反馈表示用户账号通过验证的反馈信息;反馈信息用于指示安全中心平台向用户终端发送与用户账号对应的账号密码,和/或,提供用于重置密码的密码重置接口。
参考图9,在一个实施例中,该数据验证装置800还包括第一存储模块808,其中:第一获取模块801还用于确定获取数据验证请求的时间信息、以及数据验证请求发起方对应的网络地址。第一生成模块806还用于基于目标数据、表示目标数据通过验证的反馈信息、时间信息和网络地址,生成数据验证日志。第一存储模块808,用于在数据验证日志通过共识后,将数据验证日志写入区块链节点中的数据区块。
在一个实施例中,目标数据包括用户账号,第一获取模块801还用于接收账号密码更新请求;账号密码更新请求携带用户账号和对应的更新密码。第一生成模块806还用于根据用户账号和更新密码生成对应的用户更新密钥对,并将用户更新密钥对写入区块链节点中的数据区块;用户更新密钥对包括用户更新私钥和用户更新公钥。反馈模块807还用于响应于账号密码更新请求,反馈用户更新密钥对;反馈的用户更新密钥对用于传递至用户终端,并触发用户终端将用户更新密钥对替换用户密钥对进行保存。
上述数据验证装置,在接收到携带有待验证的目标数据和用户签名的数据验证请求后,从区块链网络中查找与目标数据相关联的用户公钥,并通过查找到的用户公钥来验证目标数据和用户签名。由于该用户签名是通过与目标数据对应的用户私钥加密生成,而理论上只有该目标数据的拥有方拥有该用户私钥。当验证通过则说明该数据验证请求的发起方、与该目标数据的拥有方是匹配的,该数据验证请求是合法的。并且,在验证通过后在区块链网络中广播目标数据和用户签名,可以通过区块链网络中的其他节点进行共识操作,在共识通过后再确定该目标数据通过验证,可进一步保障目标数据验证的安全性。这样可避免用户记忆复杂的密保问题答案,通过用户私钥即可实现对目标数据进行安全可靠的验证,可操作性高。
如图10所示,在一个实施例中,提供了数据验证装置1000,包括第二获取模块1001、加密模块1002、第二生成模块1003、传递模块1004和接收模块1005。
第二获取模块1001,用于获取待验证的目标数据、以及与目标数据对应的用户私钥。
加密模块1002,用于通过用户私钥加密目标数据,得到用户签名。
第二生成模块1003,用于根据待验证的目标数据和用户签名生成数据验证请求。
传递模块1004,用于将数据验证请求传递至区块链网络中的区块链节点;数据验证请求用于指示区块链节点通过区块链网络中与目标数据相关联的用户公钥对目标数据和用户签名进行验证。
接收模块1005,用于当验证通过后,接收区块链节点反馈的表示验证通过的反馈信息。
如图11,在一个实施例中,目标数据包括用户账号,该数据验证装置1000还包括第二存储模块1006,其中:
第二获取模块1001还用于获取用于重置密码的密码重置接口;通过密码重置接口获取输入的更新密码。
第二生成模块1003还用于根据用户账号和更新密码生成账号密码更新请求。
传递模块1004还用于将账号密码更新请求传递至区块链节点;账号密码更新请求用于指示区块链节点根据用户账号和更新密码生成对应的用户更新密钥对并存储;用户更新密钥对包括用户更新私钥和用户更新公钥。
接收模块1005还用于接收区块链节点反馈的用户更新秘钥对。
第二存储模块1006,用于将用户更新密钥对替换用户密钥对进行保存。
上述数据验证装置,通过用户私钥加密待验证的目标数据,得到用户签名,并根据目标数据和用户签名生成数据验证请求。将数据验证请求传递至区块链网络中的区块链节点,以通过区块链节点从区块链网络中查找与目标数据相关联的用户公钥,并通过该用户公钥对用户签名进行验证。当验证通过后,接收区块链节点反馈的表示验证通过的反馈信息。由于该用户签名是通过与目标数据对应的用户私钥加密生成,而理论上只有该目标数据的拥有方拥有该用户私钥。当验证通过则说明该数据验证请求的发起方、与该目标数据的拥有方是匹配的,该数据验证请求是合法的。并且,通过区块链网络进行验证时,会通过区块链网络的共识,可进一步保障目标数据验证的安全性。这样,通过用户私钥实现对目标数据的验证,避免用户记忆复杂的密保问题答案,既保障了数据安全又提高了可操作性。
图12示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110、安全中心平台120或区块链节点130。如图12所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现数据验证方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行数据验证方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的数据验证装置可以实现为一种计算机程序的形式,计算机程序可在如图12所示的计算机设备上运行。计算机设备的存储器中可存储组成该数据验证装置的各个程序模块,比如,图8所示的第一获取模块、查找模块、第一解密模块、共识模块和判定模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的数据验证方法中的步骤。还比如,图10所示的第二获取模块、第二加密模块、第二生成模块、传递模块和接收模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的数据验证方法中的步骤。
例如,图12所示的计算机设备可以通过如图8所示的数据验证装置中的第一获取模块执行步骤S202。计算机设备可通过查找模块执行步骤S204。计算机设备可通过第一解密模块执行步骤S206。计算机设备可通过共识模块执行步骤S208。计算机设备可通过判定模块执行步骤S210。
例如,图12所示的计算机设备可以通过如图10所示的数据验证装置中的第二获取模块执行步骤S502。计算机设备可通过第二加密模块执行步骤S504。计算机设备可通过第二生成模块执行步骤S506。计算机设备可通过传递模块执行步骤S508。计算机设备可通过接收模块执行步骤S510。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据验证方法的步骤。此处数据验证方法的步骤可以是上述各个实施例的数据验证方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据验证方法的步骤。此处数据验证方法的步骤可以是上述各个实施例的数据验证方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种数据验证方法,应用于区块链网络中的区块链节点,包括:
获取数据验证请求;所述数据验证请求携带待验证的目标数据、以及通过与所述目标数据对应的用户私钥加密得到的用户签名;
从区块链网络中查找与所述目标数据相关联的用户公钥;
通过查找到的用户公钥解密所述用户签名得到解密数据;
当所述解密数据与所述待验证的目标数据匹配时,在所述区块链网络中广播所述目标数据和用户签名,以进行共识操作;
在所述目标数据和用户签名通过共识后,判定所述目标数据通过验证。
2.根据权利要求1所述的方法,其特征在于,所述目标数据包括用户账号,所述获取数据验证请求之前,所述方法还包括:
从用户终端获取通过已登录的用户账号所触发的数据保护请求;所述数据保护请求携带所述用户账号、以及与所述用户账号对应的账号密码;
根据所述用户账号和账号密码生成对应的用户密钥对,并将所述用户密钥对写入所述区块链节点中的数据区块;所述用户密钥对包括用户私钥和用户公钥;
响应于所述数据保护请求,反馈所述用户密钥对;反馈的所述用户密钥对用于传递至所述用户终端,并触发所述用户终端保存所述用户密钥对。
3.根据权利要求1所述的方法,其特征在于,所述获取数据验证请求之前,所述方法还包括:
获取节点公钥查询请求;
响应于所述节点公钥查询请求,查找本地的节点公钥并反馈;
反馈的所述节点公钥用于传递至数据验证请求发起方,并指示所述数据验证请求发起方通过所述节点公钥加密待验证的目标数据得到目标数据密文。
4.根据权利要求3所述的方法,其特征在于,所述获取数据验证请求包括:
获取携带目标数据密文和用户签名的数据验证请求;
通过与所述节点公钥对应的节点私钥解密所述目标数据密文,得到待验证的所述目标数据。
5.根据权利要求1所述的方法,其特征在于,所述数据验证请求还携带与所述用户私钥对应的用户公钥;
所述通过查找到的用户公钥解密所述用户签名得到解密数据,包括:
比对查找到的用户公钥和所述数据验证请求中携带的用户公钥;
当所述查找到的用户公钥和所述数据验证请求中携带的用户公钥一致时,通过所述用户公钥解密所述用户签名得到所述解密数据。
6.根据权利要求1所述的方法,其特征在于,所述解密数据包括第一哈希摘要;所述通过查找到的用户公钥解密所述用户签名得到解密数据,包括:
通过查找到的用户公钥解密所述用户签名,得到与所述目标数据对应的第一哈希摘要;
所述方法还包括:
对所述待验证的目标数据进行哈希运算,得到对应的第二哈希摘要;
当所述第一哈希摘要与所述第二哈希摘要一致时,判定所述解密数据与所述待验证的目标数据匹配。
7.根据权利要求1所述的方法,其特征在于,所述目标数据包括用户账号,所述方法还包括:
响应于所述数据验证请求,向安全中心平台反馈表示所述用户账号通过验证的反馈信息;所述反馈信息用于指示所述安全中心平台向用户终端发送与所述用户账号对应的账号密码,和/或,提供用于重置密码的密码重置接口。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定获取所述数据验证请求的时间信息、以及数据验证请求发起方对应的网络地址;
基于所述目标数据、表示所述目标数据通过验证的反馈信息、所述时间信息和所述网络地址,生成数据验证日志;
在所述数据验证日志通过共识后,将所述数据验证日志写入所述区块链节点中的数据区块。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述目标数据包括用户账号,所述方法还包括:
接收账号密码更新请求;所述账号密码更新请求携带所述用户账号和对应的更新密码;
根据所述用户账号和更新密码生成对应的用户更新密钥对,并将所述用户更新密钥对写入所述区块链节点中的数据区块;所述用户更新密钥对包括用户更新私钥和用户更新公钥;
响应于所述账号密码更新请求,反馈所述用户更新密钥对;反馈的所述用户更新密钥对用于传递至所述用户终端,并触发所述用户终端将所述用户更新密钥对替换所述用户密钥对进行保存。
10.一种数据验证方法,包括:
获取待验证的目标数据、以及与所述目标数据对应的用户私钥;
通过所述用户私钥加密所述目标数据,得到用户签名;
根据所述待验证的目标数据和所述用户签名生成数据验证请求;
将所述数据验证请求传递至区块链网络中的区块链节点;所述数据验证请求用于指示所述区块链节点通过区块链网络中与所述目标数据相关联的用户公钥对所述目标数据和用户签名进行验证;
当验证通过后,接收所述区块链节点反馈的表示验证通过的反馈信息。
11.根据权利要求10所述的方法,其特征在于,所述目标数据包括用户账号,所述方法还包括:
获取用于重置密码的密码重置接口;
通过所述密码重置接口获取输入的更新密码;
根据所述用户账号和所述更新密码生成账号密码更新请求;
将所述账号密码更新请求传递至所述区块链节点;所述账号密码更新请求用于指示所述区块链节点根据所述用户账号和更新密码生成对应的用户更新密钥对并存储;所述用户更新密钥对包括用户更新私钥和用户更新公钥;
接收所述区块链节点反馈的所述用户更新秘钥对;
将所述用户更新密钥对替换用户密钥对进行保存。
12.一种数据验证装置,其特征在于,所述装置包括:
第一获取模块,用于获取数据验证请求;所述数据验证请求携带待验证的目标数据、以及通过与所述目标数据对应的用户私钥加密得到的用户签名;
查找模块,用于从区块链网络中查找与所述目标数据相关联的用户公钥;
解密模块,用于通过查找到的用户公钥解密所述用户签名得到解密数据;
共识模块,用于当所述解密数据与所述待验证的目标数据匹配时,在所述区块链网络中广播所述目标数据和用户签名,以进行共识操作;
判定模块,用于在所述目标数据和用户签名通过共识后,判定所述目标数据通过验证。
13.一种数据验证装置,包括:
第二获取模块,用于获取待验证的目标数据、以及与所述目标数据对应的用户私钥;
加密模块,用于通过所述用户私钥加密所述目标数据,得到用户签名;
第二生成模块,用于根据所述待验证的目标数据和所述用户签名生成数据验证请求;
传递模块,用于将所述数据验证请求传递至区块链网络中的区块链节点;所述数据验证请求用于指示所述区块链节点通过区块链网络中与所述目标数据相关联的用户公钥对所述目标数据和用户签名进行验证;
接收模块,用于当验证通过后,接收所述区块链节点反馈的表示验证通过的反馈信息。
14.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至11中任一项所述方法的步骤。
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至11中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911031370.0A CN110781509B (zh) | 2019-10-28 | 2019-10-28 | 数据验证方法、装置、存储介质和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911031370.0A CN110781509B (zh) | 2019-10-28 | 2019-10-28 | 数据验证方法、装置、存储介质和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110781509A true CN110781509A (zh) | 2020-02-11 |
CN110781509B CN110781509B (zh) | 2021-07-06 |
Family
ID=69386957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911031370.0A Active CN110781509B (zh) | 2019-10-28 | 2019-10-28 | 数据验证方法、装置、存储介质和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110781509B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835783A (zh) * | 2020-07-22 | 2020-10-27 | 东莞市盟大塑化科技有限公司 | 数据调阅方法、装置和计算机设备 |
CN111988324A (zh) * | 2020-08-25 | 2020-11-24 | 广州鲁邦通物联网科技有限公司 | 一种数据通讯方法、系统、设备及存储介质 |
CN112073467A (zh) * | 2020-08-11 | 2020-12-11 | 东软集团股份有限公司 | 基于区块链的数据传输方法、装置、存储介质及电子设备 |
CN113709128A (zh) * | 2021-08-19 | 2021-11-26 | 山东新一代信息产业技术研究院有限公司 | 一种基于区块链的iros系统通信方法及设备 |
CN113935069A (zh) * | 2021-12-10 | 2022-01-14 | 北京百度网讯科技有限公司 | 一种基于区块链的数据验证方法、装置、设备及存储介质 |
CN114362969A (zh) * | 2022-03-17 | 2022-04-15 | 北京百度网讯科技有限公司 | 一种基于区块链的数据验证方法、装置、设备及存储介质 |
CN115242440A (zh) * | 2020-07-16 | 2022-10-25 | 华北电力科学研究院有限责任公司 | 一种基于区块链的物联网设备可信调用方法、装置及设备 |
CN115333761A (zh) * | 2022-03-29 | 2022-11-11 | 中国船舶重工集团公司第七一一研究所 | 应用于船舶的设备通信方法、装置及服务器 |
WO2023226126A1 (zh) * | 2022-05-26 | 2023-11-30 | 中国电子信息产业集团有限公司第六研究所 | 一种可编程逻辑控制器安全认证方法 |
CN117251883A (zh) * | 2023-11-02 | 2023-12-19 | 中国南方电网有限责任公司 | 数据可靠性验证方法、装置、计算机设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105227319A (zh) * | 2015-10-23 | 2016-01-06 | 浪潮电子信息产业股份有限公司 | 一种验证服务器的方法及装置 |
CN109255661A (zh) * | 2018-09-27 | 2019-01-22 | 王国俊 | 一种基于区块链的业务数据认证方法及系统 |
CN109257177A (zh) * | 2018-08-07 | 2019-01-22 | 航天信息股份有限公司 | 密钥生成方法、系统、移动终端、服务器及存储介质 |
CN109951489A (zh) * | 2019-03-27 | 2019-06-28 | 深圳市网心科技有限公司 | 一种数字身份认证方法、设备、装置、系统及存储介质 |
CN110378100A (zh) * | 2019-06-13 | 2019-10-25 | 招银云创(深圳)信息技术有限公司 | 密码找回方法、装置、服务器和可读存储介质 |
-
2019
- 2019-10-28 CN CN201911031370.0A patent/CN110781509B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105227319A (zh) * | 2015-10-23 | 2016-01-06 | 浪潮电子信息产业股份有限公司 | 一种验证服务器的方法及装置 |
CN109257177A (zh) * | 2018-08-07 | 2019-01-22 | 航天信息股份有限公司 | 密钥生成方法、系统、移动终端、服务器及存储介质 |
CN109255661A (zh) * | 2018-09-27 | 2019-01-22 | 王国俊 | 一种基于区块链的业务数据认证方法及系统 |
CN109951489A (zh) * | 2019-03-27 | 2019-06-28 | 深圳市网心科技有限公司 | 一种数字身份认证方法、设备、装置、系统及存储介质 |
CN110378100A (zh) * | 2019-06-13 | 2019-10-25 | 招银云创(深圳)信息技术有限公司 | 密码找回方法、装置、服务器和可读存储介质 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242440A (zh) * | 2020-07-16 | 2022-10-25 | 华北电力科学研究院有限责任公司 | 一种基于区块链的物联网设备可信调用方法、装置及设备 |
CN115242440B (zh) * | 2020-07-16 | 2024-01-26 | 华北电力科学研究院有限责任公司 | 一种基于区块链的物联网设备可信调用方法、装置及设备 |
CN111835783A (zh) * | 2020-07-22 | 2020-10-27 | 东莞市盟大塑化科技有限公司 | 数据调阅方法、装置和计算机设备 |
CN112073467A (zh) * | 2020-08-11 | 2020-12-11 | 东软集团股份有限公司 | 基于区块链的数据传输方法、装置、存储介质及电子设备 |
CN111988324A (zh) * | 2020-08-25 | 2020-11-24 | 广州鲁邦通物联网科技有限公司 | 一种数据通讯方法、系统、设备及存储介质 |
CN113709128A (zh) * | 2021-08-19 | 2021-11-26 | 山东新一代信息产业技术研究院有限公司 | 一种基于区块链的iros系统通信方法及设备 |
CN113935069A (zh) * | 2021-12-10 | 2022-01-14 | 北京百度网讯科技有限公司 | 一种基于区块链的数据验证方法、装置、设备及存储介质 |
CN113935069B (zh) * | 2021-12-10 | 2022-04-05 | 北京百度网讯科技有限公司 | 一种基于区块链的数据验证方法、装置、设备及存储介质 |
CN114362969A (zh) * | 2022-03-17 | 2022-04-15 | 北京百度网讯科技有限公司 | 一种基于区块链的数据验证方法、装置、设备及存储介质 |
US11755567B1 (en) | 2022-03-17 | 2023-09-12 | Beijing Baidu Netcom Science Technology Co., Ltd. | Blockchain-based data verification method and apparatus, device, and storage medium |
CN114362969B (zh) * | 2022-03-17 | 2022-06-10 | 北京百度网讯科技有限公司 | 一种基于区块链的数据验证方法、装置、设备及存储介质 |
CN115333761A (zh) * | 2022-03-29 | 2022-11-11 | 中国船舶重工集团公司第七一一研究所 | 应用于船舶的设备通信方法、装置及服务器 |
CN115333761B (zh) * | 2022-03-29 | 2023-09-26 | 中国船舶集团有限公司第七一一研究所 | 应用于船舶的设备通信方法、装置及服务器 |
WO2023226126A1 (zh) * | 2022-05-26 | 2023-11-30 | 中国电子信息产业集团有限公司第六研究所 | 一种可编程逻辑控制器安全认证方法 |
CN117251883A (zh) * | 2023-11-02 | 2023-12-19 | 中国南方电网有限责任公司 | 数据可靠性验证方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110781509B (zh) | 2021-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110781509B (zh) | 数据验证方法、装置、存储介质和计算机设备 | |
US20210297240A1 (en) | Systems and methods for distributed data storage and delivery using blockchain | |
CN109684790B (zh) | 软件启动方法、软件授权验证方法、设备和存储介质 | |
CN109471844B (zh) | 文件共享方法、装置、计算机设备和存储介质 | |
CN110493261B (zh) | 基于区块链的验证码获取方法、客户端、服务器及存储介质 | |
CN109325342B (zh) | 身份信息管理方法、装置、计算机设备和存储介质 | |
CN110912712B (zh) | 基于区块链的业务操作风险认证方法和系统 | |
CN111242617B (zh) | 用于执行交易正确性验证的方法及装置 | |
US10482236B1 (en) | Methods, mediums, and systems for establishing and using security questions | |
CN112632581A (zh) | 用户数据处理方法、装置、计算机设备及存储介质 | |
CN109347813B (zh) | 物联网设备登录方法、系统、计算机设备和存储介质 | |
CN110768784B (zh) | 密码传输方法、装置、计算机设备和存储介质 | |
CN112613076B (zh) | 保护隐私的多方数据处理的方法、装置和系统 | |
CN111651794A (zh) | 基于联盟链的电子数据管理方法、装置和存储介质 | |
CN114239046A (zh) | 数据共享方法 | |
CN112308561A (zh) | 基于区块链的存证方法、系统、计算机设备和存储介质 | |
JP2017531951A (ja) | セキュリティチェックのための方法、デバイス、端末およびサーバ | |
CN110727949A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN112860778A (zh) | 桌面应用程序的数据库管理方法、装置、设备和介质 | |
CN115348107A (zh) | 物联网设备安全登陆方法、装置、计算机设备和存储介质 | |
CN110597820A (zh) | 基于区块链的信息处理方法、装置、存储介质和设备 | |
CN111628985A (zh) | 安全访问控制方法、装置、计算机设备和存储介质 | |
CN114448722B (zh) | 跨浏览器登录方法、装置、计算机设备和存储介质 | |
CN114238915A (zh) | 数字证书添加方法、装置、计算机设备和存储介质 | |
CN111125734B (zh) | 一种数据处理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40020930 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |