CN113077254A - 基于生物特征重置区块链账户密钥的方法和装置 - Google Patents
基于生物特征重置区块链账户密钥的方法和装置 Download PDFInfo
- Publication number
- CN113077254A CN113077254A CN202110334943.8A CN202110334943A CN113077254A CN 113077254 A CN113077254 A CN 113077254A CN 202110334943 A CN202110334943 A CN 202110334943A CN 113077254 A CN113077254 A CN 113077254A
- Authority
- CN
- China
- Prior art keywords
- account
- biometric
- user
- blockchain
- node
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000004590 computer program Methods 0.000 claims description 3
- 238000000151 deposition Methods 0.000 abstract description 7
- 238000012795 verification Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 6
- 238000012856 packing Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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/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
- 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/64—Protecting data integrity, e.g. using checksums, certificates or 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/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
- G06Q20/40145—Biometric identity checks
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Storage Device Security (AREA)
Abstract
本说明书实施例提供了一种向区块链中存入用户生物特征的方法和装置及重置账户密钥的方法和装置,所述存入用户生物特征的方法包括:获取所述第一用户的生物特征;获取信任用户列表,所述信任用户列表中包括至少一个第二用户的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户;以及向区块链节点发送交易,以使得区块链中的各个节点分别在账户数据库中设置与所述第一账户对应的生物特征和信任用户列表。
Description
本申请为2019年3月29日提交的申请号为201910250773.8,名为“基于生物特征重置区块链账户密钥的方法和装置”的发明专利申请的分案申请。
技术领域
本说明书实施例涉及区块链技术领域,更具体地,涉及一种向区块链中存入用户生物特征的方法和装置、以及一种重置区块链账户密钥的方法和装置。
背景技术
在新一代区块链中,例如在以太坊中,新增了账户的概念,其中,由用户创建的账户为以太坊中的外部账户。通常,每个外部账户拥有一对公私钥,其中,私钥用于进行数字签名,公钥用于验证签名。另外,在各个节点中,在节点本地的数据库中以状态树的形式维持区块链中全部账户的数据表,该状态树为账户地址与账户内容之间的映射,所述账号内容包括,账户余额、账户密钥信息(哈希值)等。用户在进行交易之前,可通过查询状态树而获取对方余额、验证对方密钥信息等。然而,在以太坊中,用户在创建好账户之后必须保存好私钥,如果丢失或忘记私钥,用户将不能访问其账户,即,用户没有重置私钥或找回私钥的功能。而在现有技术的EOS区块链中,使用两个私钥的方式来进行密钥重置,其中,一个私钥用于进行数字签名,另一个私钥用于进行密钥重置。然而,密钥的增多增加了密钥的管理和使用成本。
因此,需要一种更有效的在区块链中重置账户密钥的方案。
发明内容
本说明书实施例旨在提供一种更有效的重置区块链账户密钥的方法和装置,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种向区块链中存入用户生物特征的方法,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述方法通过与第一用户的第一账户对应的区块链客户端执行,包括:
获取所述第一用户的生物特征;
获取信任用户列表,所述信任用户列表中包括至少一个第二用户各自的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户;以及
向区块链中任一全节点发送用于设置生物特征的第一交易,以使得区块链中的各个全节点分别在其本地的账户数据库中设置与所述第一账户对应的生物特征和信任用户列表,其中,所述第一交易的数据字段中包括所述生物特征和所述信任用户列表。
在一个实施例中,获取所述第一用户的生物特征包括,从生物特征采集装置接收所述第一用户的生物特征。
在一个实施例中,所述生物特征包括以下至少一种特征:人脸、指纹和虹膜。
在一个实施例中,所述数据字段中包括生物特征密文,所述生物特征密文通过由所述客户端以预先获取的所述各个全节点共同协商的第一加密密钥对所述生物特征进行加密而获取。
本说明书另一方面提供一种向区块链中存入用户生物特征的方法,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述方法通过区块链中作为全节点的第一节点执行,包括:
从区块链中接收由第一账户发出的用于设置生物特征的第一交易,其中,所述第一交易的数据字段中至少包括与第一账户对应的生物特征和信任用户列表;
在对所述第一交易的数字签名的验证通过之后,在本地的账户数据库中添加与所述第一账户对应的生物特征和信任用户列表;以及
将所述第一交易打包到区块中并发送给区块链中的至少一个全节点。
在一个实施例中,在本地的账户数据库中添加与所述第一账户对应的生物特征和信任用户列表包括,在本地的账户数据库中添加与所述第一账户对应的生物特征密文和信任用户列表,其中,所述生物特征密文通过由所述第一节点以所述各个全节点共同协商的第二加密密钥对所述生物特征进行加密而获取。
在一个实施例中,所述账户数据库为具有MPT树结构的状态树,其中,在本地的账户数据库中添加与所述第一账户对应的生物特征和信任用户列表包括,在本地的所述状态树中的与第一账户对应的叶子节点的值中添加所述生物特征和信任用户列表,并相应地更新所述状态树中与所述叶子节点相关的已有节点的值。
本说明书另一方面提供一种重置区块链账户密钥的方法,其中,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述各个全节点分别在其本地账户数据库中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述方法通过与第二账户对应的区块链客户端执行,包括:
获取所述第一用户的第二生物特征;
获取所述第一账户的第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥;以及
向区块链中任一全节点发送用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括所述第二生物特征和所述第二公钥,以使得区块链中的各个全节点以所述第二公钥替换其本地存储的所述第一账户的第一公钥。
在一个实施例中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文通过由所述客户端以预先获取的所述各个全节点共同协商的第三加密密钥对所述第二生物特征进行加密而获取。
本说明书另一方面提供一种重置区块链账户密钥的方法,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述各个全节点分别在其本地账户数据库中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述方法通过区块链中作为全节点的第二节点执行,包括:
从区块链中接收由所述第二账户发出的用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括与第一账户对应的第二生物特征和第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥;
在对所述第二交易的数字签名的验证通过之后,确定所述第二账户的账户标识是否在所述信任用户列表中,并确定所述第二生物特征与所述第一生物特征是否一致;
在确定所述第二账户的账户标识在所述信任用户列表中、且所述第二生物特征与所述第一生物特征一致的情况中,以所述第二公钥替换本地存储的所述第一账户的第一公钥;以及
将所述第二交易打包到区块中并发送给区块链中的至少一个全节点。
在一个实施例中,所述各个全节点分别在其本地的账户数据库中存储有与所述第一账户对应的第一生物特征密文,其中,所述第一生物特征密文以所述各个全节点共同协商的第二加密密钥加密,所述方法还包括,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第二解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
在一个实施例中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文以所述各个全节点共同协商的第三加密密钥加密,所述方法还包括,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第三解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
在一个实施例中,所述账户数据库中还存储有所述第一账户的公钥哈希值,所述方法还包括,在以所述第二公钥替换本地存储的所述第一账户的第一公钥之后,更新本地的账户数据库中的所述第一账户的公钥哈希值。
本说明书另一方面提供一种向区块链中存入用户生物特征的装置,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述装置部署在与第一用户的第一账户对应的区块链客户端,包括:
第一获取单元,配置为,获取所述第一用户的生物特征;
第二获取单元,配置为,获取信任用户列表,所述信任用户列表中包括至少一个第二用户各自的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户;以及
发送单元,配置为,向区块链中任一全节点发送用于设置生物特征的第一交易,以使得区块链中的各个全节点分别在其本地的账户数据库中设置与所述第一账户对应的生物特征和信任用户列表,其中,所述第一交易的数据字段中包括所述生物特征和所述信任用户列表。
在一个实施例中,所述第一获取单元还配置为,从生物特征采集装置接收所述第一用户的生物特征。
本说明书另一方面提供一种向区块链中存入用户生物特征的装置,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述装置部署在区块链中作为全节点的第一节点,包括:
接收单元,配置为,从区块链中接收由第一账户发出的用于设置生物特征的第一交易,其中,所述第一交易的数据字段中至少包括与第一账户对应的生物特征和信任用户列表;
添加单元,配置为,在对所述第一交易的数字签名的验证通过之后,在本地的账户数据库中添加与所述第一账户对应的生物特征和信任用户列表;以及
打包单元,配置为,将所述第一交易打包到区块中并发送给区块链中的至少一个全节点。
在一个实施例中,所述添加单元还配置为,在本地的账户数据库中添加与所述第一账户对应的生物特征密文和信任用户列表,其中,所述生物特征密文通过由所述第一节点以所述各个全节点共同协商的第二加密密钥对所述生物特征进行加密而获取。
在一个实施例中,所述账户数据库为具有MPT树结构的状态树,其中,所述添加单元还配置为,在本地的所述状态树中的与第一账户对应的叶子节点的值中添加所述生物特征和信任用户列表,并相应地更新所述状态树中与所述叶子节点相关的已有节点的值。
本说明书另一方面提供一种重置区块链账户密钥的装置,其中,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述各个全节点分别在其本地账户数据库中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述装置部署在与第二账户对应的区块链客户端,包括:
第一获取单元,配置为,获取所述第一用户的第二生物特征;
第二获取单元,配置为,获取所述第一账户的第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥;以及
发送单元,配置为,向区块链中任一全节点发送用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括所述第二生物特征和所述第二公钥,以使得区块链中的各个全节点以所述第二公钥替换其本地存储的所述第一账户的第一公钥。
在一个实施例中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文通过由所述客户端以预先获取的所述各个全节点共同协商的第三加密密钥对所述第二生物特征进行加密而获取。
本说明书另一方面提供一种重置区块链账户密钥的装置,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述各个全节点分别在其本地账户数据库中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述装置部署在区块链中作为全节点的第二节点,包括:
接收单元,配置为,从区块链中接收由所述第二账户发出的用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括与第一账户对应的第二生物特征和第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥;
确定单元,配置为,在对所述第二交易的数字签名的验证通过之后,确定所述第二账户的账户标识是否在所述信任用户列表中,并确定所述第二生物特征与所述第一生物特征是否一致;
替换单元,配置为,在确定所述第二账户的账户标识在所述信任用户列表中、且所述第二生物特征与所述第一生物特征一致的情况中,以所述第二公钥替换本地存储的所述第一账户的第一公钥;以及
打包单元,配置为,将所述第二交易打包到区块中并发送给区块链中的至少一个全节点。
在一个实施例中,所述各个全节点分别在其本地的账户数据库中存储有与所述第一账户对应的第一生物特征密文,其中,所述第一生物特征密文以所述各个全节点共同协商的第二加密密钥加密,所述装置还包括,第一解密单元,配置为,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第二解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
在一个实施例中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文以所述各个全节点共同协商的第三加密密钥加密,所述装置还包括,第二解密单元,配置为,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第三解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
在一个实施例中,所述账户数据库中还存储有所述第一账户的公钥哈希值,所述装置还包括,更新单元,配置为,在以所述第二公钥替换本地存储的所述第一账户的第一公钥之后,更新本地的账户数据库中的所述第一账户的公钥哈希值。
本说明书另一方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项方法。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
在根据本说明书实施例的方案中,通过结合用户生物特征及相应的账户数据库中对账户内容的配置,实现了区块链中的重置账户密钥的功能,相比于现有技术中使用两个私钥用于密钥重置的方案,节省了密钥的管理成本,方便了用户的操作。
附图说明
通过结合附图描述本说明书实施例,可以使得本说明书实施例更加清楚:
图1示出根据本说明书实施例的区块链账户维护系统;
图2示出根据本说明书实施例的一种向区块链中存入用户生物特征的方法;
图3示出根据本说明书实施例的一种重置区块链账户密钥的方法;
图4示出根据本说明书实施例的在第一客户端、第二客户端和区块链平台之间实施图2和图3所示方法的交互示意图;
图5示出根据本说明书实施例的一种向区块链中存入用户生物特征的装置500;
图6示出根据本说明书实施例的一种向区块链中存入用户生物特征的装置600;
图7示出根据本说明书实施例的一种重置区块链账户密钥的装置700;
图8示出根据本说明书实施例的一种重置区块链账户密钥的装置800。
具体实施方式
下面将结合附图描述本说明书实施例。
图1示出根据本说明书实施例的区块链账户维护系统。如图1所示,所述系统中包括构成区块链的多个全节点(图中示意示出6个全节点),这些节点两两相连,其中例如包括节点11、节点12和节点13,所述区块链为联盟链,其中的各个全节点为联盟链中可参与共识的节点,其相当于区块链平台的各个服务器,并且所述各个全节点是可信任节点,其与至少一个可信任机构相对应。所述系统还包括区块链的客户端14、客户端15,所述客户端例如为区块链中的轻钱包节点,其依赖于上述各个全节点进行交易。其中,客户端14例如为第一用户的第一账户的客户端,客户端15例如为第二用户的第二账户的客户端。
在该区块链中,每个全节点本地都维护有账户数据库,其例如为图中右下部分所示的状态树,该状态树例如为MPT树,该MPT树的叶子节点为各个账户的账户内容(如包括账户余额、账户生物特征信息、信任账户列表、账户密钥信息等信息),MPT树在叶子节点上方的各个父节点包括账户的至少一个地址字符和对应于其全部子节点的哈希值,其中,该MPT树的根节点的值为该树的状态根。通过该状态树,节点在本地可通过账户地址获取用户的生物特征以用于重置用户的密钥。可以理解,所述账户数据库不限于为MPT状态树的形式,也可以为其它数据库形式,如Merkle树、Trie树等。
例如,上述第一用户可通过其客户端14向任一全节点发送设置生物特征的交易,从而使得区块链中的各个全节点分别在其本地的账户数据库中设置与所述第一账户对应的生物特征和信任用户列表。
图中左下部示意示出了由客户端14发送的交易Tx,假设客户端14为第一用户Bob的客户端,(0xf5e…)为新生成的Bob的账户地址,客户端14将该交易发送给节点11,节点11的账户地址为(0x6f8…),其中“Data”为该交易中的数据字段,其例如为与所述第一用户的第一账户对应的生物特征和信任用户列表,图中的数字签名“0x93a”为通过第一账户的私钥对该交易中的数据字段进行加密所获取的加密数据。
节点11在接收到该交易之后,用预先获取的第一账户的公钥验证该交易的数字签名,以验证交易数据的未被篡改,并将该交易发送给区块链中的其它全节点(例如节点12),从而扩散到区块链中的每个全节点。节点13例如被确定为该交易的记账节点,其在验证该交易数字签名之后,更新其本地的账户状态树,即,在状态树中更新与该账户地址对应的叶子节点的值,即在该叶子节点中增加所述生物特征和信任用户列表,并更新该状态树的其它相关节点的值,其中包括根节点的状态根(state root),并将该交易打包到区块中以存入区块链中,其中,所述区块的区块头中包括所述更新的状态根。节点13将新生成的区块发送给所述区块链中的至少一个全节点之后,在经过预定数目的全节点的验证之后达成共识,从而在区块链中生成新的区块,各个节点根据新生成的区块更新其本地的账户状态树,从而达到全网一致。
所述信任用户列表例如包括上述第二用户的第二账户的账户标识,当第一用户丢失私钥希望重置密钥(即公钥)时,第一用户可通过第二用户进行第一账户密钥重置。第二用户在采集第一用户的生物特征之后,可通过与其第二账户对应的客户端15向区块链中任一全节点(例如节点11)发送用于重置第一账户公钥的第二交易,以使得区块链中的各个全节点以第一用户的新的公钥替换其本地存储的所述第一用户的之前使用的公钥。
下面将详细描述上述区块链账户密钥重置过程。
图2示出根据本说明书实施例的一种向区块链中存入用户生物特征的方法,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述方法通过第一用户的与第一账户对应的区块链客户端执行,包括:
在步骤S202,获取所述第一用户的生物特征;
在步骤S204,获取信任用户列表,所述信任用户列表中包括至少一个第二用户各自的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户;以及
在步骤S206,向区块链中任一全节点发送用于设置生物特征的第一交易,以使得区块链中的各个全节点分别在其本地的账户数据库中设置与所述第一账户对应的生物特征和信任用户列表,其中,所述第一交易的数据字段中包括所述生物特征和所述信任用户列表。
如上文所述,所述区块链为联盟链,所述区块链的各个全节点与至少一个信任机构相对应,其相当于是区块链平台的各个服务器,用于提供区块链中的存储功能和运算功能,如存储账户状态树、存储区块、验证交易、记账、共识等。用户以从其客户端(即区块链轻节点)向这些全节点发送交易的方式向区块链中存入其生物特征,即在各个全节点的账户状态树中分别存入其生物特征,从而用户在需要重置密钥时可通过各个全节点基于其本地的该用户的生物特征进行密钥重置。而各个全节点基于区块链架构保证了其各自的数据库中的数据的不可篡改性,相比于普通服务器增加了安全性。
下面具体描述该方法的各个步骤的实施过程。
首先,在步骤S202,获取所述第一用户的生物特征。
所述生物特征可以为人脸、指纹、虹膜等生物特征中的一种或多种特征。可通过对应的特征采集装置采集相应的生物特征。例如,可通过相机采集人脸、虹膜等特征,通过指纹采集装置采集指纹等。所述客户端可以指用户的终端,也可以指用户终端上的APP。在客户端为用户终端的情况中,该客户端可自带上述各种特征采集装置,以进行特征采集并获取相应的特征,或者该客户端可与相应的特征采集装置连接,并从该特征采集装置接收相应的特征。
在步骤S204,获取信任用户列表,所述信任用户列表中包括至少一个第二用户各自的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户。
所述第一用户在向区块链存入生物特征的同时,会存入该信任用户列表,以用于通过该第二用户进行基于生物特征的密钥重置。也就是说,第二用户是第一用户的可信任用户。例如,所述第一用户和第二用户可以为夫妻关系,第一用户的隐私信息可以不用对第二用户保留,从而,第一用户在丢失密钥时,可通过第二用户重置密钥。所述至少一个第二用户各自的账户标识例如为各个第二用户的区块链账户地址,可以理解,该账户标识不限于为账户地址,只要其与第二用户是唯一对应的即可,例如,用户的区块链账户地址是实名认证的,从而所述账户标识可以为第二用户的身份标识等等。
在步骤S206,向区块链中任一全节点发送用于设置生物特征的第一交易,以使得区块链中的各个全节点分别在其本地的账户数据库中设置与所述第一账户对应的生物特征和信任用户列表,其中,所述第一交易的数据字段中包括所述生物特征和所述信任用户列表。
如图1中所示,所述第一交易例如包括以下三个字段“From”、“To”和“Data”。其中“From”字段可填入发送者的账户地址,即第一账户的账户地址,其例如为图1中Bob的账户地址。“To”字段中可填入待发送节点的账户地址,例如图1中节点11的账户地址。可以理解,第一用户不限于将该交易发送给节点11,而是可以发送给区块链中的任一全节点。“Data”字段即交易中的数据字段,对于该第一交易,其数据字段中包括上述获取的生物特征和信任用户列表。
为了保证该交易的不可篡改性,第一用户将使用第一账户的私钥对该交易进行数字签名。客户端14在将带有上述数字签名的第一交易发送给节点11之后,节点11利用预先获取的第一账户的公钥对该数字签名进行解密以用于验证该数据字段未被篡改。节点11在对第一交易数字签名的验证通过之后,将该第一交易发送给其连接的至少一个全节点,从而将第一交易广播到区块链中。如图1中所示,节点13例如为用于存储该第一交易的记账节点,节点13在从区块链接收到该由第一账户发出的第一交易之后,首先与节点11一样地验证该交易的数字签名,并在验证通过之后更新本地的账户数据库。该账户数据库例如为MPT树结构,可将该账户数据库称为状态树。具体是,节点13在状态树中更新与该账户地址对应的叶子节点,即在与该账户地址对应的叶子节点中添加与该账户对应的生物特征和信任用户列表字段信息,并相应地更新该状态树中与该叶子节点相关的已有节点的值,所述相关节点包括该状态树的根节点,该根节点的值为该状态树的状态根,所述叶子节点的值为与该账户地址对应的账户内容。
在更新所述第一账户的账户内容之后,所述账户内容至少包括以下字段:所述账户标识、所述账户的余额、用户生物特征、信任用户列表,所述账户内容不限于包括上述字段,例如,所述账户内容还可包括所述第一公钥的哈希值等字段信息。
节点13在更新状态树之后,如果该第一交易是将要打包的区块中的最后一个交易,节点13将该状态树的状态根写到该区块的区块头中的状态根字段中,另外还如本领域中已知的,在该区块头中还填入交易根、收据根等,从而生成一个新的区块,将该区块存入本地区块数据块中,并将该新生成的区块广播到区块链中,以存入到区块链中。
区块链中的预定数目的其它全节点在接收到该新生成的区块之后,通过区块头中的状态根、交易根、收据根等对该区块进行验证,并在验证通过之后,与节点13类似地更新本地的状态树,将该区块存入本地区块数据块中,从而对该区块的生成达成共识。区块链中的其它全节点然后可直接下载该区块,并基于该区块更新本地的状态树。
在一个实施例中,在所述第一交易的数据字段中包括生物特征密文,所述生物特征密文通过由所述客户端14以预先获取的所述各个全节点共同协商的第一加密密钥对所述生物特征进行加密而获取。相应地,节点13可在本地账户状态树中存入该生物特征密文,并且在存入区块链的区块中也包括该生物特征密文,从而可进一步保护用户的隐私安全。
在一个实施例中,节点13在将第一用户的生物特征设置到状态树中的相应账户内容中之前,使用各个全节点共同协商的第二加密密钥对该生物特征进行加密,并将加密的生物特征设置到状态树中。在一个实施例中,如上文所述,在所述第一交易的数据字段中包括生物特征密文,所述生物特征密文通过由所述客户端14以预先获取的所述各个全节点共同协商的第一加密密钥对所述生物特征进行加密而获取,出于安全的考虑,节点13首先使用各个全节点共同协商的第一解密密钥对该生物特征密文进行解密,以获取生物特征的明文,再使用各个全节点共同协商的第二加密密钥对该生物特征进行加密,以获取新的生物特征密文并存入状态树中。
图3示出根据本说明书实施例的一种重置区块链账户密钥的方法,其中,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述各个全节点分别在其本地账户数据库中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述方法通过与第二账户对应的区块链客户端执行,包括:
在步骤S302,获取所述第一用户的第二生物特征;
在步骤S304,获取所述第一账户的第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥;以及
在步骤S306,向区块链中任一全节点发送用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括所述第二生物特征和所述第二公钥,以使得区块链中的各个全节点以所述第二公钥替换其本地存储的所述第一账户的第一公钥。
例如如图1中所示,客户端14在进行图2所示方法之后,使得区块链中各个全节点分别在其账户数据库中存入与第一账户对应的生物特征和信任用户列表之后,其中所述信任用户列表中包括第二用户的第二账户,从而,当第一用户丢失私钥时,其可以通过第二用户的客户端重置密钥。
具体是,首先,在步骤S302,获取所述第一用户的第二生物特征。例如,如图1所示,第一用户可来到客户端15所在地,以进行生物特征的采集,或者,第一用户可自行采集生物特征之后以安全的方式将该生物特征发送给第二用户的客户端15。这里,以第二生物特征表示通过客户端15获取的第一用户的生物特征,以与上文中通过客户端14获取的并存入状态树中的第一用户的生物特征(在此将其表示为第一生物特征)相区分。
在步骤S304,获取所述第一账户的第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥。
例如,客户端15可从客户端14接收重新生成的第一账户的第二公钥。或者,可由第二用户从第一用户获取该第二公钥,并由第二用户在客户端15输入该第二公钥等等。
在步骤S306,向区块链中任一全节点发送用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括所述第二生物特征和所述第二公钥,以使得区块链中的各个全节点以所述第二公钥替换其本地存储的所述第一账户的第一公钥。
与上述第一交易类似地,第二交易的“From”字段可填入例如图1中客户端15对应的第二账户的账户地址,“To”字段中可填入待发送节点的账户地址,例如图1中节点11的账户地址,“Data”字段中包括上述获取的所述第二生物特征和所述第二公钥。
同样地,为了保证该交易的不可篡改性,第二用户将使用第二账户的私钥对该第二交易进行数字签名。客户端15在将带有上述数字签名的第二交易发送给节点11之后,节点11利用预先获取的第二账户的公钥对该数字签名进行解密以用于验证该数据字段未被篡改。节点11在对第二交易数字签名的验证通过之后,将该第二交易发送给其连接的至少一个全节点,从而将第一交易广播到区块链中。
如图1中所示,节点13例如为用于存储该第二交易的记账节点,节点13在从区块链接收到该由第二账户发出的第二交易之后,首先与节点11一样地验证该交易的数字签名,并在验证通过之后,确定所述第二账户(客户端15对应的账户)的账户标识是否在第一账户的信任用户列表中,并确定所述第二生物特征与所述第一生物特征是否一致。具体是,节点13可从本地的账户状态树中获取与第一账户对应的信任用户列表和第一生物特征,从而基于该信任用户列表确定所述第二账户的账户标识是否在所述信任用户列表中,通过将第二交易中的第二生物特征与第一生物特征进行比较,从而确定所述第二生物特征与所述第一生物特征是否一致。在确定所述第二账户的账户标识在所述信任用户列表中、且所述第二生物特征与所述第一生物特征一致的情况中,节点13以所述第二公钥替换本地存储的所述第一账户的第一公钥,并将所述第二交易打包到区块中并发送给区块链中的至少一个全节点。在账户状态树中包括公钥哈希值的情况中,节点13还可以相应地更新本地状态树中的公钥哈希值。
区块链中的预定数目的其它全节点在接收到该新生成的区块之后,在对该区块验证通过之后,在本地存储该区块,与节点13类似地更新本地的第一用户的公钥,并对该区块的生成达成共识。区块链中的其它全节点然后可直接下载该区块,并基于该区块更新本地的第一用户的公钥。
在一个实施例中,所述各个全节点分别在其本地的账户数据库中存储有与所述第一账户对应的第一生物特征密文,其中,所述第一生物特征密文以所述各个全节点共同协商的第二加密密钥加密,从而,节点13在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第二解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
在一个实施例中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文通过由所述第二用户的客户端以预先获取的所述各个全节点共同协商的第三加密密钥对所述第二生物特征进行加密而获取,从而,节点13在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第三解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
图4示出根据本说明书实施例的在第一客户端、第二客户端和区块链平台之间实施图2和图3所示方法的交互示意图。如图4中所示,第一客户端(例如图1中的客户端14)在步骤S402获取第一用户的生物特征,并在步骤S404获取第一用户的信任用户列表,在步骤S406,第一客户端将包括生物特征和信任用户列表的第一交易发送给区块链平台,这里,所述区块链平台可以具体为区块链中的任一全节点。在步骤S408,区块链平台根据第一交易将第一用户的生物特征和信任用户列表添加到平台的账户状态树中,这里,该平台的账户状态树可以具体为各个全节点本地的账户状态树。第二客户端(例如图1中的客户端15)在步骤S410获取第一用户的生物特征,并在步骤S412获取新的公钥,以用于进行对第一用户的密钥重置,在步骤S414,第二客户端将包括生物特征和新公钥的第二交易发送给区块链平台,这里,同样地,所述区块链平台可以具体为区块链中的任一全节点。在步骤S416,区块链平台验证第二客户端对应的第二用户的账户标识是否在第一用户的信任用户列表中、以及第二交易中的生物特征与状态树中存入的第一用户的生物特征是否一致,这里的区块链平台可具体为区块链中任一全节点,在步骤S418,在验证通过的情况中,区块链平台重置第一用户的公钥,即使用第二交易中的新的公钥替换第一用户原有的公钥,这里的区块链平台可具体为区块链中各个全节点。
图5示出根据本说明书实施例的一种向区块链中存入用户生物特征的装置500,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述装置部署在与第一用户的第一账户对应的区块链客户端,包括:
第一获取单元51,配置为,获取所述第一用户的生物特征;
第二获取单元52,配置为,获取信任用户列表,所述信任用户列表中包括至少一个第二用户各自的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户;以及
发送单元53,配置为,向区块链中任一全节点发送用于设置生物特征的第一交易,以使得区块链中的各个全节点分别在其本地的账户数据库中设置与所述第一账户对应的生物特征和信任用户列表,其中,所述第一交易的数据字段中包括所述生物特征和所述信任用户列表。
在一个实施例中,所述第一获取单元51还配置为,从生物特征采集装置接收所述第一用户的生物特征。
图6示出根据本说明书实施例的一种向区块链中存入用户生物特征的装置600,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述装置部署在区块链中作为全节点的第一节点,包括:
接收单元61,配置为,从区块链中接收由第一账户发出的用于设置生物特征的第一交易,其中,所述第一交易的数据字段中至少包括与第一账户对应的生物特征和信任用户列表;
添加单元62,配置为,在对所述第一交易的数字签名的验证通过之后,在本地的账户数据库中添加与所述第一账户对应的生物特征和信任用户列表;以及
打包单元63,配置为,将所述第一交易打包到区块中并发送给区块链中的至少一个全节点。
在一个实施例中,所述添加单元62还配置为,在本地的账户数据库中添加与所述第一账户对应的生物特征密文和信任用户列表,其中,所述生物特征密文通过由所述第一节点以所述各个全节点共同协商的第二加密密钥对所述生物特征进行加密而获取。
在一个实施例中,所述账户数据库为具有MPT树结构的状态树,其中,所述添加单元62还配置为,在本地的所述状态树中的与第一账户对应的叶子节点的值中添加所述生物特征和信任用户列表,并相应地更新所述状态树中与所述叶子节点相关的已有节点的值。
图7示出根据本说明书实施例的一种重置区块链账户密钥的装置700,其中,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述各个全节点分别在其本地账户数据库中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述装置部署在与第二账户对应的区块链客户端,包括:
第一获取单元71,配置为,获取所述第一用户的第二生物特征;
第二获取单元72,配置为,获取所述第一账户的第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥;以及
发送单元73,配置为,向区块链中任一全节点发送用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括所述第二生物特征和所述第二公钥,以使得区块链中的各个全节点以所述第二公钥替换其本地存储的所述第一账户的第一公钥。
图8示出根据本说明书实施例的一种重置区块链账户密钥的装置800,所述区块链为联盟链,并且所述区块链中的各个全节点为所述区块链的共识节点,所述各个全节点分别在其本地账户数据库中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述装置部署在区块链中作为全节点的第二节点,包括:
接收单元81,配置为,从区块链中接收由所述第二账户发出的用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括与第一账户对应的第二生物特征和第二公钥,所述第二公钥将用于替换所述第一账户已有的第一公钥;
确定单元82,配置为,在对所述第二交易的数字签名的验证通过之后,确定所述第二账户的账户标识是否在所述信任用户列表中,并确定所述第二生物特征与所述第一生物特征是否一致;
替换单元83,配置为,在确定所述第二账户的账户标识在所述信任用户列表中、且所述第二生物特征与所述第一生物特征一致的情况中,以所述第二公钥替换本地存储的所述第一账户的第一公钥;以及
打包单元84,配置为,将所述第二交易打包到区块中并发送给区块链中的至少一个全节点。
在一个实施例中,所述各个全节点分别在其本地的账户数据库中存储有与所述第一账户对应的第一生物特征密文,其中,所述第一生物特征密文以所述各个全节点共同协商的第二加密密钥加密,所述装置还包括,第一解密单元85,配置为,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第二解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
在一个实施例中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文以所述各个全节点共同协商的第三加密密钥加密,所述装置还包括,第二解密单元86,配置为,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第三解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
在一个实施例中,所述账户数据库中还存储有所述第一账户的公钥哈希值,所述装置还包括,更新单元87,配置为,在以所述第二公钥替换本地存储的所述第一账户的第一公钥之后,更新本地的账户数据库中的所述第一账户的公钥哈希值。
本说明书另一方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项方法。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
在根据本说明书实施例的方案中,通过结合用户生物特征及相应的账户数据库中对账户内容的配置,实现了区块链中的重置账户密钥的功能,相比于现有技术中使用两个私钥用于密钥重置的方案,节省了密钥的管理成本,方便了用户的操作。
需要理解,本文中的“第一”,“第二”等描述,仅仅为了描述的简单而对相似概念进行区分,并不具有其他限定作用。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (28)
1.一种向区块链中存入用户生物特征的方法,所述方法通过与第一用户的第一账户对应的区块链客户端执行,包括:
获取所述第一用户的生物特征;
获取信任用户列表,所述信任用户列表中包括至少一个第二用户的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户;以及
向区块链节点发送交易,以使得在区块链中的各个节点分别在账户数据库中设置与所述第一账户对应的生物特征和信任用户列表。
2.根据权利要求1所述的方法,其中,获取所述第一用户的生物特征包括,从生物特征采集装置接收所述第一用户的生物特征。
3.根据权利要求1所述的方法,其中,所述生物特征包括以下至少一种特征:人脸、指纹和虹膜。
4.根据权利要求1所述的方法,其中,所述数据字段中包括生物特征密文,所述生物特征密文通过由所述客户端以预先获取的所述各个全节点共同协商的第一加密密钥对所述生物特征进行加密而获取。
5.一种向区块链中存入用户生物特征的方法,包括:
区块链节点接收由第一账户发出的交易;
根据所述交易在账户数据库中添加与所述第一账户对应的生物特征和信任用户列表。
6.根据权利要求5所述的方法,其中,在账户数据库中添加与所述第一账户对应的生物特征和信任用户列表包括,在账户数据库中添加与所述第一账户对应的生物特征密文和信任用户列表,其中,所述生物特征密文通过由所述第一节点以所述各个全节点共同协商的第二加密密钥对所述生物特征进行加密而获取。
7.根据权利要求5所述的方法,其中,所述账户数据库为具有MPT树结构的状态树,其中,在账户数据库中添加与所述第一账户对应的生物特征和信任用户列表包括,在所述状态树中的与第一账户对应的叶子节点的值中添加所述生物特征和信任用户列表,并相应地更新所述状态树中与所述叶子节点相关的已有节点的值。
8.一种重置区块链账户密钥的方法,所述区块链中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述方法通过与第二账户对应的区块链客户端执行,包括:
获取所述第一用户的第二生物特征;
获取所述第一账户的第二公钥;以及
向区块链节点发送第二交易,其中,所述第二交易的数据字段中包括所述第二生物特征和所述第二公钥,以使得区块链中的各个节点将所述第一账户的公钥重置为所述第二公钥。
9.根据权利要求8所述的方法,其中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文通过由所述客户端以预先获取的所述各个全节点共同协商的第三加密密钥对所述第二生物特征进行加密而获取。
10.一种重置区块链账户密钥的方法,所述区块链中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,所述方法包括:
区块链节点接收由所述第二账户发出的用于重置第一账户公钥的第二交易,其中,所述第二交易的数据字段中包括与第一账户对应的第二生物特征和第二公钥;
在确定所述第二账户的账户标识在所述信任用户列表中、且所述第二生物特征与所述第一生物特征一致的情况中,将所述第一账户的公钥重置为所述第二公钥。
11.根据权利要求10所述的方法,其中,所述各个全节点分别在其本地的账户数据库中存储有与所述第一账户对应的第一生物特征密文,其中,所述第一生物特征密文以所述各个全节点共同协商的第二加密密钥加密,所述方法还包括,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第二解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
12.根据权利要求10所述的方法,其中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文以所述各个全节点共同协商的第三加密密钥加密,所述方法还包括,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第三解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
13.根据权利要求10所述的方法,其中,所述区块链中还存储有所述第一账户的公钥哈希值,所述方法还包括,在将所述第一账户的公钥重置为所述第二公钥之后,更新所述第一账户的公钥哈希值。
14.一种向区块链中存入用户生物特征的装置,所述装置部署在与第一用户的第一账户对应的区块链客户端,包括:
第一获取单元,配置为,获取所述第一用户的生物特征;
第二获取单元,配置为,获取信任用户列表,所述信任用户列表中包括至少一个第二用户的账户标识,所述至少一个第二用户为预设的所述第一用户的信任用户;以及
发送单元,配置为,向区块链节点发送交易,以使得区块链中的各个节点分别在账户数据库中设置与所述第一账户对应的生物特征和信任用户列表。
15.根据权利要求14所述的装置,其中,所述第一获取单元还配置为,从生物特征采集装置接收所述第一用户的生物特征。
16.根据权利要求14所述的装置,其中,所述生物特征包括以下至少一种特征:人脸、指纹和虹膜。
17.根据权利要求14所述的装置,其中,所述数据字段中包括生物特征密文,所述生物特征密文通过由所述客户端以预先获取的所述各个全节点共同协商的第一加密密钥对所述生物特征进行加密而获取。
18.一种向区块链中存入用户生物特征的装置,所述装置部署于区块链节点,包括:
接收单元,配置为,接收由第一账户发出的交易;
添加单元,配置为,根据所述交易在账户数据库中添加与所述第一账户对应的生物特征和信任用户列表。
19.根据权利要求18所述的装置,其中,所述添加单元还配置为,在账户数据库中添加与所述第一账户对应的生物特征密文和信任用户列表,其中,所述生物特征密文通过由所述第一节点以所述各个全节点共同协商的第二加密密钥对所述生物特征进行加密而获取。
20.根据权利要求18所述的装置,其中,所述账户数据库为具有MPT树结构的状态树,其中,所述添加单元还配置为,在所述状态树中的与第一账户对应的叶子节点的值中添加所述生物特征和信任用户列表,并相应地更新所述状态树中与所述叶子节点相关的已有节点的值。
21.一种重置区块链账户密钥的装置,所述区块链中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,其中,所述信任用户列表中包括第二用户的第二账户的账户标识,所述装置部署在与第二账户对应的区块链客户端,包括:
第一获取单元,配置为,获取所述第一用户的第二生物特征;
第二获取单元,配置为,获取所述第一账户的第二公钥;以及
发送单元,配置为,向区块链节点发送第二交易,其中,所述第二交易的数据字段中包括所述第二生物特征和所述第二公钥,以使得区块链中的各个节点将所述第一账户的公钥重置为所述第二公钥。
22.根据权利要求21所述的装置,其中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文通过由所述客户端以预先获取的所述各个全节点共同协商的第三加密密钥对所述第二生物特征进行加密而获取。
23.一种重置区块链账户密钥的装置,所述区块链中存储有与第一用户的第一账户对应的第一生物特征和信任用户列表,所述装置部署于区块链节点,包括:
接收单元,配置为,接收由所述第二账户发出的第二交易,其中,所述第二交易的数据字段中包括与第一账户对应的第二生物特征和第二公钥;
替换单元,配置为,在确定所述第二账户的账户标识在所述信任用户列表中、且所述第二生物特征与所述第一生物特征一致的情况中,将所述第一账户的公钥重置为所述第二公钥。
24.根据权利要求23所述的装置,其中,所述各个全节点分别在其本地的账户数据库中存储有与所述第一账户对应的第一生物特征密文,其中,所述第一生物特征密文以所述各个全节点共同协商的第二加密密钥加密,所述装置还包括,第一解密单元,配置为,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第二解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
25.根据权利要求23所述的装置,其中,所述第二交易的数据字段中包括第二生物特征密文,所述第二生物特征密文以所述各个全节点共同协商的第三加密密钥加密,所述装置还包括,第二解密单元,配置为,在确定所述第二生物特征与所述第一生物特征是否一致之前,使用所述各个全节点共同协商的第三解密密钥对所述第一生物特征密文解密,以获取所述第一生物特征。
26.根据权利要求23所述的装置,其中,所述区块链中还存储有所述第一账户的公钥哈希值,所述装置还包括,更新单元,配置为,在将所述第一账户的公钥重置为所述第二公钥之后,更新所述第一账户的公钥哈希值。
27.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-13中任一项的所述的方法。
28.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110334943.8A CN113077254A (zh) | 2019-03-29 | 2019-03-29 | 基于生物特征重置区块链账户密钥的方法和装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910250773.8A CN110009352B (zh) | 2019-03-29 | 2019-03-29 | 基于生物特征重置区块链账户密钥的方法和装置 |
CN202110334943.8A CN113077254A (zh) | 2019-03-29 | 2019-03-29 | 基于生物特征重置区块链账户密钥的方法和装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910250773.8A Division CN110009352B (zh) | 2019-03-29 | 2019-03-29 | 基于生物特征重置区块链账户密钥的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113077254A true CN113077254A (zh) | 2021-07-06 |
Family
ID=67169061
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910250773.8A Active CN110009352B (zh) | 2019-03-29 | 2019-03-29 | 基于生物特征重置区块链账户密钥的方法和装置 |
CN202110334943.8A Pending CN113077254A (zh) | 2019-03-29 | 2019-03-29 | 基于生物特征重置区块链账户密钥的方法和装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910250773.8A Active CN110009352B (zh) | 2019-03-29 | 2019-03-29 | 基于生物特征重置区块链账户密钥的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN110009352B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324789A1 (en) * | 2014-05-06 | 2015-11-12 | Case Wallet, Inc. | Cryptocurrency Virtual Wallet System and Method |
WO2018119585A1 (zh) * | 2016-12-26 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 区块链的权限控制方法、装置、系统及节点设备 |
CN108288158A (zh) * | 2018-01-29 | 2018-07-17 | 张天 | 一种基于区块链技术的存储方法、计算机可读存储介质 |
KR101904208B1 (ko) * | 2018-04-24 | 2018-10-04 | (주)에스씨씨 | 블록체인 기반의 암호화폐와 전자지갑 관리 시스템 |
CN108712395A (zh) * | 2018-04-27 | 2018-10-26 | 腾讯科技(深圳)有限公司 | 基于区块链的账号管理方法、装置、服务器及存储介质 |
US20180337771A1 (en) * | 2017-05-19 | 2018-11-22 | International Business Machines Corporation | Policy enforcement via peer devices using a blockchain |
CN109194708A (zh) * | 2018-07-24 | 2019-01-11 | 哈尔滨工程大学 | 一种基于区块链技术的分布式存储系统及其身份认证方法 |
US20190036913A1 (en) * | 2017-07-26 | 2019-01-31 | Secret Double Octopus Ltd. | System and method for temporary password management |
CN109493024A (zh) * | 2018-09-29 | 2019-03-19 | 杭州复杂美科技有限公司 | 数字资产托管方法、设备和存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101780635B1 (ko) * | 2016-04-28 | 2017-09-21 | 주식회사 코인플러그 | 인증 정보의 생성, 등록, 파기 방법 및 인증 지원 서버 |
CN108418680B (zh) * | 2017-09-05 | 2021-12-07 | 矩阵元技术(深圳)有限公司 | 一种基于安全多方计算技术的区块链密钥恢复方法、介质 |
CN107528688B (zh) * | 2017-09-30 | 2020-04-21 | 矩阵元技术(深圳)有限公司 | 一种基于加密委托技术的区块链密钥保管及恢复方法、装置 |
CN107623569A (zh) * | 2017-09-30 | 2018-01-23 | 矩阵元技术(深圳)有限公司 | 基于秘密共享技术的区块链密钥托管和恢复方法、装置 |
WO2019127530A1 (zh) * | 2017-12-29 | 2019-07-04 | 深圳前海达闼云端智能科技有限公司 | 账户统一方法、装置及存储介质 |
CN108512661A (zh) * | 2018-04-02 | 2018-09-07 | 成都零光量子科技有限公司 | 一种区块链用户私钥的安全防护方法 |
CN108876332B (zh) * | 2018-06-04 | 2020-09-22 | 清华大学 | 一种基于生物特征标记认证的区块链安全交易方法及装置 |
CN109005186B (zh) * | 2018-08-20 | 2020-12-11 | 杭州复杂美科技有限公司 | 一种隔离用户身份信息的方法、系统、设备和存储介质 |
CN109409893A (zh) * | 2018-08-20 | 2019-03-01 | 杭州复杂美科技有限公司 | 一种信任系统及其构建方法、设备及存储介质 |
-
2019
- 2019-03-29 CN CN201910250773.8A patent/CN110009352B/zh active Active
- 2019-03-29 CN CN202110334943.8A patent/CN113077254A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324789A1 (en) * | 2014-05-06 | 2015-11-12 | Case Wallet, Inc. | Cryptocurrency Virtual Wallet System and Method |
WO2018119585A1 (zh) * | 2016-12-26 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 区块链的权限控制方法、装置、系统及节点设备 |
US20180337771A1 (en) * | 2017-05-19 | 2018-11-22 | International Business Machines Corporation | Policy enforcement via peer devices using a blockchain |
US20190036913A1 (en) * | 2017-07-26 | 2019-01-31 | Secret Double Octopus Ltd. | System and method for temporary password management |
CN108288158A (zh) * | 2018-01-29 | 2018-07-17 | 张天 | 一种基于区块链技术的存储方法、计算机可读存储介质 |
KR101904208B1 (ko) * | 2018-04-24 | 2018-10-04 | (주)에스씨씨 | 블록체인 기반의 암호화폐와 전자지갑 관리 시스템 |
CN108712395A (zh) * | 2018-04-27 | 2018-10-26 | 腾讯科技(深圳)有限公司 | 基于区块链的账号管理方法、装置、服务器及存储介质 |
CN109194708A (zh) * | 2018-07-24 | 2019-01-11 | 哈尔滨工程大学 | 一种基于区块链技术的分布式存储系统及其身份认证方法 |
CN109493024A (zh) * | 2018-09-29 | 2019-03-19 | 杭州复杂美科技有限公司 | 数字资产托管方法、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110009352A (zh) | 2019-07-12 |
CN110009352B (zh) | 2021-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11005653B2 (en) | Integrated method and device for storing and sharing data | |
CN110084068B (zh) | 区块链系统及用于区块链系统的数据处理方法 | |
CN112019591B (zh) | 一种基于区块链的云数据共享方法 | |
US10951423B2 (en) | System and method for distribution of identity based key material and certificate | |
US9996480B2 (en) | Resilient device authentication system with metadata binding | |
US9698974B2 (en) | Method for creating asymmetrical cryptographic key pairs | |
KR102307574B1 (ko) | 블록체인을 기반으로 한 클라우드 데이터 저장 시스템 및 데이터 저장 방법 | |
KR20190012969A (ko) | 블록체인을 기반으로 한 데이터 접근 관리 시스템 및 데이터 접근 관리 방법 | |
CN109981255B (zh) | 密钥池的更新方法和系统 | |
CN110837491B (zh) | 一种区块链金融大数据处理系统及方法 | |
US20100005318A1 (en) | Process for securing data in a storage unit | |
CN110268679A (zh) | 基于区块链的认证方法和系统 | |
CN110971411B (zh) | 一种基于sotp技术对私钥乘加密的sm2同态签名方法 | |
CN104392185B (zh) | 在云环境日志取证中实现数据完整性验证的方法 | |
CN113312574A (zh) | 一种基于区块链的云数据完整性审计方法 | |
CN110740038B (zh) | 区块链及其通信方法、网关、通信系统和存储介质 | |
CN107332858A (zh) | 云数据存储方法 | |
CN109905384B (zh) | 数据迁移方法及系统 | |
CN112446039A (zh) | 区块链交易处理方法、装置、设备和存储介质 | |
CN110932850A (zh) | 通信加密方法及系统 | |
CN116668072A (zh) | 一种基于多权限属性基加密的数据安全共享方法及系统 | |
CN102892113B (zh) | 层级型无线传感网络内节点间数据进行安全传输的方法 | |
CN110009352B (zh) | 基于生物特征重置区块链账户密钥的方法和装置 | |
CN107819578B (zh) | 基于属性的可验证外包解签密方法及其系统 | |
CN116155483A (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 |