CN117391702A - 账户数据的验证方法、装置、计算机设备、存储介质 - Google Patents
账户数据的验证方法、装置、计算机设备、存储介质 Download PDFInfo
- Publication number
- CN117391702A CN117391702A CN202311193428.8A CN202311193428A CN117391702A CN 117391702 A CN117391702 A CN 117391702A CN 202311193428 A CN202311193428 A CN 202311193428A CN 117391702 A CN117391702 A CN 117391702A
- Authority
- CN
- China
- Prior art keywords
- account
- account data
- stored
- verification
- data
- 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 57
- 238000013524 data verification Methods 0.000 title claims description 14
- 238000012795 verification Methods 0.000 claims abstract description 114
- 230000004044 response Effects 0.000 claims abstract description 20
- 230000008859 change Effects 0.000 claims description 46
- 238000004590 computer program Methods 0.000 claims description 22
- 238000000638 solvent extraction Methods 0.000 claims description 15
- 238000005192 partition Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/235—Update request formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Strategic Management (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
本公开涉及一种账户数据的验证方法、装置、计算机设备、存储介质。涉及区块链技术领域,所述方法包括:响应于接收账户验证对象发出的账户验证指令,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述账户验证对象为联盟链中的对象;利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据;响应于所述目标区块中存在所述账户验证指令中的进行加密后的账户数据,确定账户数据验证通过。采用本方法既能够保证账户验证时的安全性,又可以保证账户验证效率。
Description
技术领域
本公开涉及区块链技术领域,特别是涉及一种账户数据的验证方法、装置、计算机设备、存储介质。
背景技术
随着信息的快速的发展,目前各种账户的信息通常情况下会进行统一化,例如可以通过手机号登录微信、可以通过微信号登录微信等。随着金融领域的发展,在银行的账户进行核验方面,通常情况下Ⅰ类户的信息可能涉及跨行核验,目前主要方式为各家银行接入人行或银联的跨行账户验证系统进行核验。
传统技术中,各家银行均向人行或银联系统发送账户核验请求,由人行或银联将请求报文转发至对手行(即所验账户的开户行),由对手行在内部系统进行验证后返回结果。然而该种核验方式账户的核验都依赖于对手行,安全性较差。
除此之外,还存在利用区块链对账户进行验证的方式。区块链(Blockchain)技术是一种基于去中心化的对等网络的技术,其将密码学原理与共识机制相结合来保障分布式各节点的数据连贯和持续,从而实现信息即时验证、可追溯、难篡改和无法屏蔽之目的,进而创造了一套隐私、高效、安全的共享价值体系。该种方式虽然能够保证安全性,但随着账户数据的增加,在利用区块链进行验证时,验证时间长,数据存储成本高,存储大小受限制,性能较低,会额外降低账户验证的效率。
发明内容
基于此,有必要针对上述技术问题,提供一种能够保证账户验证时的安全性,又可以保证账户验证效率的账户数据的验证方法、装置、计算机设备、存储介质。
第一方面,本公开提供了一种账户数据的验证方法,所述方法包括:
响应于接收账户验证对象发出的账户验证指令,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述账户验证对象为联盟链中的对象,所述标识信息是根据所述账户数据对应的账户类型信息确定的;
利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据;
响应于所述目标区块中存在所述账户验证指令中的进行加密后的账户数据,确定账户数据验证通过。
在其中一个实施例中,所述接收账户验证对象发出的账户验证指令之前,所述方法还包括:
获取预先创建的联盟链中多个对象所对应的待存储账户数据,以及所述待存储账户数据的标识信息,所述联盟链中存在多个对象,所述联盟链中包括多个区块,所述多个区块存储在存储系统中;
根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中。
在其中一个实施例中,所述标识信息包括:待存储账户数据的账户号码;所述根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中,包括:
对所述待存储账户数据的账户号码进行取模运算,得到编码信息;
按照编码信息的数量和编码信息对所述存储系统进行分区,其中,每个分区后的存储系统存在对应的存储编号;
基于分区所述存储系统的存储编号和所述编码信息,将按照加密算法加密后的所述待存储账户数据存储在分区后的所述存储系统的区块中。
在其中一个实施例中,所述标识信息还包括:待存储账户数据的时间信息;所述根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中,包括:
按照预设的时间维度对所述存储账户数据的时间信息进行聚类处理,得到多个聚类结果;
按照所述聚类结果对所述多个区块进行分类,并将按照加密算法加密后的存储账户数据按照所述聚类结果和时间信息存储在不同的区块中。
在其中一个实施例中,所述方法还包括:
响应于接收到所述联盟链中的第一对象输出的账户变更指令,发出变更提示指令至所述联盟链中第二对象,以指示所述第二对象根据所述变更提示指令输出反馈信息,所述第二对象为所述联盟链中除所述第一对象之外的其他对象;
响应于所述反馈信息中允许账户变更的信息的数量大于预设的数量阈值,根据所述账户变更指令中的账户数据,以及账户变更指令中的账户数据的标识信息将所述账户变更指令中的账户数据存储在所述存储系统的第一区块,所述第一区块为未进行存储数据的区块。
在其中一个实施例中,所述待存储账户数据包括:待存储账户的用户的名称、账户号、所述用户的证件号,所述按照加密算法加密后的所述待存储账户数据,包括:
将所述待存储账户的用户的名称、账户号、所述用户的证件号进行拼接,将拼接后的数据按照信息摘要算法进行处理,得到加密后的所述待存储账户数据。
第二方面,本公开还提供了一种账户数据的验证装置。所述装置包括:
指令接收模块,用于响应于接收账户验证对象发出的账户验证指令,所述账户验证对象为联盟链中的对象,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述标识信息是根据所述账户数据对应的账户类型信息确定的;
区块确定模块,用于利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据;
验证结果确定模块,用于响应于所述目标区块中存在所述账户指令中的进行加密后的账户数据,确定账户数据验证通过。
第三方面,本公开还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一方法实施例中的步骤。
第四方面,本公开还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一方法实施例中的步骤。
第五方面,本公开还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一方法实施例中的步骤。
上述各实施例中,当账户验证对象需要验证账户数据时,可以发出账户验证指令。响应于接收账户验证对象发出的账户验证指令,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息。而账户验证指令中的账户数据是进行加密后的,可以保证账户数据验证时的安全性。由于标识信息与每个账户数据相对应,因此可以利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,而每个所述区块用于存储具有相同的所述标识信息的账户数据,可以提高账户数据的匹配速度。响应于所述目标区块中存在所述账户验证指令中的进行加密后的账户数据,确定账户数据验证通过。通过上述方式,利用标识信息对区块进行检索,无需遍历所有的区块,找到目标区块后,遍历目标区块中的数据即可完成对账户数据的验证,能够保证账户验证效率。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中账户数据的验证方法的应用环境示意图;
图2为一个实施例中账户数据的验证方法的流程示意图;
图3为一个实施例中S202步骤之前的流程示意图;
图4为一个实施例中S304步骤的一种实施方式的流程示意图;
图5为一个实施例中S304步骤的另一种实施方式的流程示意图;
图6为一个实施例中账户数据变更的步骤的流程示意图;
图7为另一个实施例中账户数据的验证方法的流程示意图;
图8为一个实施例中账户数据的验证装置的结构示意框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本公开,并不用于限定本公开。
需要说明的是,本文的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本文的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本公开实施例提供了一种账户数据的验证方法,可以应用于如图1所示的应用环境中。其中,多个终端102通过网络与联盟链服务器104进行通信。存储系统可以存储联盟链服务器104需要处理的数据。数据存储系统可以集成在联盟链服务器104上,也可以放在云上或其他网络服务器上。账户验证对象可以利用终端102可以向联盟链服务器104发出账户验证指令。联盟链服务器104可以接收账户验证对象利用终端102发出的账户验证指令。联盟链服务器104可以获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述账户验证对象为联盟链中的对象。所述标识信息是根据所述账户数据对应的账户类型信息确定的。联盟链服务器104可以利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据。响应于所述目标区块中存在所述账户指令中的进行加密后的账户数据,联盟链服务器104确定账户数据验证通过。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种账户数据的验证方法,以该方法应用于图1中的联盟链服务器104为例进行说明,包括以下步骤:
S202,响应于接收账户验证对象发出的账户验证指令,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述账户验证对象为联盟链中的对象,所述标识信息是根据所述账户数据对应的账户类型信息确定的。
其中,账户验证对象通常可以是金融机构,例如银行。账户验证指令通常情况下可以是对某个账号进行验证的指令,该账号通常情况下可以是银行账户。联盟链通常可以是区块链的一种模式,只针对特定某个群体的成员和有限的第三方,内部指定多个预选的节点为记账人,每个块的生成由所有的预选节点共同决定,其他接入节点可以参与交易,但不过问记账过程,其他第三方可以通过该区块链开放的API(Application ProgrammingInterface)进行限定查询。标识信息通常可以是对不同的账户数据进行区分的标识信息。标识信息可以根据账户数据的账户类型信息确定。账户类型信息可以为的账户号码,通过账户号码对每个账户数据进行唯一的标识。账户类型信息还可以为账户数据的时间信息,通过账户数据的时间信息对在某个固定时间段之间的账号数据进行标识。例如,账户创建时间在1天至5天内的账户数据使用A标识信息进行标识。
具体地,各个银行或者金融机构之间可以组成联盟链,使用联盟链进行对账户信息的各种处理。当某个银行(账户验证对象)的账户需要进行跨行验证的情况下,可以向联盟链发送账户验证指令。当联盟链接收到账户验证对象发送的账户验证指令之后。另外,为了保证账户数据的安全性。通常情况下在本公开的一些实施例中提及的账户数据均为进行加密后的账户数据。
可以获取该账户验证指令中进行加密后的账户数据和账户数据对应的标识信息。其中,账户数据对应的标识信息通常可以是在根据账户数据对应的账户类型信息来生成的。
S204,利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据。
其中,联盟链中的存储系统可以存在多个区块,区块可以用于记录各家银行的账户数据(开户、销户、账户信息变更等),以提供信息核验功能。目标区块通常可以是存储与该标识信息相同的账户数据的区块。目标区块可以为一个区块,也可以为多个区块,在本公开的一些实施例中不对目标区块的数量进行绝对限制。
具体地,联盟链中通常情况下包括了多个区块。而多个区块用来存储联盟链中所有对象的账户数据。为了提高账户数据验证的速度。在区块存储所有对象的账户数据时,可以按照标识信息,将具有相同的标识存储在一个区块中,进而在对账户数据进行验证时,可以利用标识信息来对区块进行检索,得到存储该标识信息对应的账户数据的区块。
S206,响应于所述目标区块中存在所述账户验证指令中的进行加密后的账户数据,确定账户数据验证通过。
具体地,由于目标区块中存储了包含该标识信息的所有账户数据。因此,当目标区块中存在该账户验证指令中进行加密后的账户数据时,可以确定联盟链中已经存储了该账户数据,因此账户验证对象的账户数据验证通过。
上述账户数据的验证方法中,当账户验证对象需要验证账户数据时,可以发出账户验证指令。响应于接收账户验证对象发出的账户验证指令,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息。而账户验证指令中的账户数据是进行加密后的,可以保证账户数据验证时的安全性。由于标识信息与每个账户数据相对应,因此可以利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,而每个所述区块用于存储具有相同的所述标识信息的账户数据,可以提高账户数据的匹配速度。响应于所述目标区块中存在所述账户验证指令中的进行加密后的账户数据,确定账户数据验证通过。通过上述方式,利用标识信息对区块进行检索,无需遍历所有的区块,找到目标区块后,遍历目标区块中的数据即可完成对账户数据的验证,能够保证账户验证效率。
在一个实施例中,如图3所示,所述接收账户验证对象发出的账户验证指令之前,所述方法还包括:
S302,获取预先创建的联盟链中多个对象所对应的待存储账户数据,以及所述待存储账户数据的标识信息,所述联盟链中存在多个对象,所述联盟链中包括多个区块,所述多个区块存储在存储系统中。
其中,待存储账户数据通常可以是需要存储在联盟链中的账户数据。
具体地,由于本公开的一些实施例中对账户信息进行验证的方式均是在联盟链中,因此在进行验证前。需要先根据各个对象来创建联盟链,各个对象通常可以是需要进行跨行验证的对象。然后获取对象的待存储账户数据。并根据待存储账户数据的账户类型信息来确定待存储账户数据的标识信息。通常情况下,联盟链中的多个区块存储在存储系统中。
在一些示例性的实施例中,区块中可以包括多个字段,Data、Timestamp、PrevHash和Hash。其中,Data字段存储了区块中的数据(在本公开的一些实施例中指的是可以是账户数据),Timestamp字段存储了区块的时间戳,PrevHash字段存储了前一个区块的哈希值,Hash字段存储了当前区块的哈希值。在创建新的区块时,需要将当前区块的哈希值设置为前一个区块的哈希值和当前区块的数据和时间戳的哈希值的组合,保证每个区块都是唯一的,并且保证区块之间的关联。其中Data字段存储了加密后的账户数据。
S304,根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中。
其中,加密算法可以为任何形式的加密算法,如哈希算法、摘要算法等,在本公开的一些实施例中不对加密算法进行绝对限制。
具体地,由于需要将待存储账户数据存储在区块中,每个待存储账户数据都会有其对应的标识信息。因此,可以根据待存储账户数据的标识信息将加密后的待存储账户数据存储在存储系统的多个区块中。
本实施例中,通过为了保证标识信息进行匹配的效率,可以按照标识信息将待存储账户数据进行存储。
在一个实施例中,所述标识信息包括:待存储账户数据的账户号码;如图4所示,所述根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中,包括:
S402,对所述待存储账户数据的账户号码进行取模运算,得到编码信息。
S404,按照编码信息的数量和编码信息对所述存储系统进行分区,其中,每个分区后的存储系统存在对应的存储编号。
S406,基于分区所述存储系统的存储编号和所述编码信息,将按照加密算法加密后的所述待存储账户数据存储在分区后的所述存储系统的区块中。
其中,取模运算是求两个数相除的余数。
具体地,可以将账户号码和预设的数值进行取模运算,进而得到每个待存储账户数据相对应的编码信息。可以按照编码信息的数量和编码信息对存储系统进行分区,例如编码信息为1、3、7,则可以将存储系统分为3个区,每个区对应的存储编号可以为1、3、7。将编码信息对应的加密后的账户数据存储在与存储编号相同分区中,
在一些示例性的实施例中,为提升信息匹配验证效率,可采用区块分片存储方法,将存储系统进行分区,划分为N分存储单元,每个分区后的存储单元编号分别为0/1/2/3/.../N。然后对每个待存储账户数据进行取模运算,例如,5个待存储账户数据取模运算后分别得到8、2、3、2、1五个编码信息。可以按照编码信息存储在对应的分区后的存储单元中,将8存储在编号为8的存储单元中,将两个为2的编码信息存储在编号为2的存储单元中。
在另一些示例性的实施例中,还可以先对每个待存储账户数据进行取模运算,例如,5个待存储账户数据取模运算后分别得到8、2、3、2、1五个编码信息。上述存在四种类型的编码信息,因此可以将存储系统进行分区,划分为4个存储单元。可以将每种不同类型的编码信息对应的待存储账户数据存储在不同的存储单元中。
在本实施例中,为提升信息匹配验证效率可以对账户号码进行取模运算,进而将待存储数据进行分片存储。
在一个实施例中,所述标识信息还包括:待存储账户数据的时间信息;如图5所示,所述根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中,包括:
S502,按照预设的时间维度对所述存储账户数据的时间信息进行聚类处理,得到多个聚类结果。
S504,按照所述聚类结果对所述多个区块进行分类,并将按照加密算法加密后的存储账户数据按照所述聚类结果和时间信息存储在不同的区块中。
其中,待存储账户的时间信息可以是待存储账户的创建时间、最后的使用时间等等,在本公开不同具体的类型进行限制。预设的时间维度可以根据具体的应用场景进行设置,例如可以为2维,分别代表时间长和时间短。可以为三维,分别代表新账户、正在使用的账户和老账户等。
具体地,可以按照预设的时间维度以对待存储账户数据的时间信息进行聚类数据,进而得到每个时间维度相对应的聚类结果。可以按照聚类结果对区块进行分类。例如聚类结果为2类,则区块可以分为两类,并将加密算法加密后的存储账户数据按照其时间信息所属的聚类结果存储在不同区块中。通常情况下,预设的时间维度越多,其聚类结果越多,可以将存储账户数据按照更加精细的粒度进行分区存储,能够保证后续匹配的速度。
在一些示例性的实施例中,例如存在四个待存储账户数据A1、A2、A3、A4。按照预设的时间维度对四个待存储账户数据的时间信息进行聚类,例如得到两个聚类结果。A1、A2、A4为一类,A3为一类。然后也可以将区块分为两类,每类区块中可以存在多个区块。将A1、A2、A4存储在一类区块中,将A3存储在另一类区块中。在匹配过程中,可以确定账户数据对应的标识信息属于哪类聚类结果,进而将在该聚类结果所对应的区块中进行匹配。
在本实施例中,通过按照时间维度将待存储账户数据进行分类,也能够保证检索时的效率。
在一个实施例中,如图6所示,所述方法还包括:
S602,响应于接收到所述联盟链中的第一对象输出的账户变更指令,发出变更提示指令至所述联盟链中第二对象,以指示所述第二对象根据所述变更提示指令输出反馈信息,所述第二对象为所述联盟链中除所述第一对象之外的其他对象。
其中,第一对象通常可以联盟链需要更改账户数据的对象。账户变更指令可以是新增账户数据的指令,也可是修改或者删除账户数据的指令。
具体地,当某个对象(第一对象)需要变更联盟链中存储的账户数据时,可以向联盟链中输出账户变更指令。当联盟链接收到账户变更指令时,可以确定第一对象需要变更联盟链中存储的账户数据。而联盟链中通常情况下存在共识机制。因此,联盟链通常情况下会发送变更提示指令至联盟链中第二对象。当第二对象接收到变更提示指令时,可以确定有其他对象需要变更账户信息,因此第二信息可以输出反馈信息。反馈信息可以包括:允许账户变更和不允许账户变更。
S604,响应于所述反馈信息中允许账户变更的信息的数量大于预设的数量阈值,根据所述账户变更指令中的账户数据,以及账户变更指令中的账户数据的标识信息将所述账户变更指令中的账户数据存储在所述存储系统的第一区块,所述第一区块为未进行存储数据的区块。
具体地,通常情况下每个第二对象都会输出一个反馈信息。而反馈信息仅包括两种允许账户变更和不允许账户变更。当允许账户变更的信息的数量大于预设的数量阈值可以确定大多数的第二对象允许第一对象在联盟链中变更账户数据。此时可以根据变更指令中的账户数据,以及账户变更指令中的账户数据的标识信息将所述账户变更指令中的账户数据存储在所述存储系统的第一区块。(此处的存储方式可以参见上述实施例,在此不进行重复赘述)。在区块链上,账户数据通常情况下不直接更新区块,而是将变化的情况(开户、销户、冻结等)放在一个新增的区块中(第一区块)。
在一些示例性的实施例中,当第一对象在联盟链中提交账户变更指令后,联盟链可以进行广播变更提示指令,其他对象(第二对象)收到信息后,采用PBFT共识算法进行共识验证,当第二对象允许进行变更账户信息的情况下,可以将变更的账户信息打包成区块,追加到联盟链中。通常情况下,当第二对象中大于三分之二允许第一对象进行变更账户信息即可。
在本实施例中,由于联盟链是多个对象所组成的,在变更联盟链中的账户数据时需要大多数对象统一意见,才能够变更账户数据,进一步保证账户数据的安全性。
在一个实施例中,所述待存储账户数据包括:待存储账户的用户的名称、账户号、所述用户的证件号,所述按照加密算法加密后的所述待存储账户数据,包括:
将所述待存储账户的用户的名称、账户号、所述用户的证件号进行拼接,将拼接后的数据按照信息摘要算法进行处理,得到加密后的所述待存储账户数据。
具体地,为了保证联盟链中的账户数据的安全性,可以用户的名称、账户号、所述用户的证件号等进行拼接,将拼接后的数据按照信息摘要算法进行处理,得到加密后的所述待存储账户数据,可防止信息泄露。可以理解的是,上述账户验证指令的账户数据通常也可以按照上述方式进行处理。
在一个实施例中,如图7所示,本公开实施例还提供了另一种账户数据的验证方法,所述方法包括:
S702,获取预先创建的联盟链中多个对象所对应的待存储账户数据,以及所述待存储账户数据的标识信息,所述联盟链中存在多个对象,所述联盟链中包括多个区块,所述多个区块存储在存储系统中。
S704,所述标识信息包括:待存储账户数据的账户号码。对所述待存储账户数据的账户号码进行取模运算,得到编码信息。按照编码信息的数量和编码信息对所述存储系统进行分区,其中,每个分区后的存储系统存在对应的存储编号。
S706,基于分区所述存储系统的存储编号和所述编码信息,将按照加密算法加密后的所述待存储账户数据存储在分区后的所述存储系统的区块中。
S708,所述标识信息还包括:待存储账户数据的时间信息。按照预设的时间维度对所述存储账户数据的时间信息进行聚类处理,得到多个聚类结果。按照所述聚类结果对所述多个区块进行分类,并将按照加密算法加密后的存储账户数据按照所述聚类结果和时间信息存储在不同的区块中。
S710,响应于接收账户验证对象发出的账户验证指令,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述账户验证对象为联盟链中的对象,所述标识信息是根据所述账户数据对应的账户类型信息确定的。
S712,利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据。
S714,响应于所述目标区块中存在所述账户验证指令中的进行加密后的账户数据,确定账户数据验证通过。
S716,响应于接收到所述联盟链中的第一对象输出的账户变更指令,发出变更提示指令至所述联盟链中第二对象,以指示所述第二对象根据所述变更提示指令输出反馈信息,所述第二对象为所述联盟链中除所述第一对象之外的其他对象。
S718,响应于所述反馈信息中允许账户变更的信息的数量大于预设的数量阈值,根据所述账户变更指令中的账户数据,以及账户变更指令中的账户数据的标识信息将所述账户变更指令中的账户数据存储在所述存储系统的第一区块,所述第一区块为未进行存储数据的区块。
关于本实施例中的具体实施方式可限定,可参见上述实施例,在此不进行重复赘述。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本公开实施例还提供了一种用于实现上述所涉及的账户数据的验证方法的账户数据的验证装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个账户数据的验证装置实施例中的具体限定可以参见上文中对于账户数据的验证方法的限定,在此不再赘述。
在一个实施例中,如图8所示,提供了一种账户数据的验证装置800,包括:指令接收模块802、区块模块804和验证结果确定模块806,其中:
指令接收模块802,用于响应于接收账户验证对象发出的账户验证指令,所述账户验证对象为联盟链中的对象,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述标识信息是根据所述账户数据对应的账户类型信息确定的;
区块确定模块804,用于利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据;
验证结果确定模块806,用于响应于所述目标区块中存在所述账户指令中的进行加密后的账户数据,确定账户数据验证通过。
在所述装置的一个实施例中,所述装置还包括:待存储数据获取模块,用于获取预先创建的联盟链中多个对象所对应的待存储账户数据,以及所述待存储账户数据的标识信息,所述联盟链中存在多个对象,所述联盟链中包括多个区块,所述多个区块存储在存储系统中。
数据存储模块,用于根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中。
在所述装置的一个实施例中,所述标识信息包括:待存储账户数据的账户号码;所述数据存储模块,还用于对所述待存储账户数据的账户号码进行取模运算,得到编码信息;按照编码信息的数量和编码信息对所述存储系统进行分区,其中,每个分区后的存储系统存在对应的存储编号;基于分区所述存储系统的存储编号和所述编码信息,将按照加密算法加密后的所述待存储账户数据存储在分区后的所述存储系统的区块中。
在所述装置的一个实施例中,所述标识信息还包括:待存储账户数据的时间信息;所述数据存储模块,还用于按照预设的时间维度对所述存储账户数据的时间信息进行聚类处理,得到多个聚类结果;按照所述聚类结果对所述多个区块进行分类,并将按照加密算法加密后的存储账户数据按照所述聚类结果和时间信息存储在不同的区块中。
在所述装置的一个实施例中,所述装置还包括:变更指令接收模块,用于响应于接收到所述联盟链中的第一对象输出的账户变更指令,发出变更提示指令至所述联盟链中第二对象,以指示所述第二对象根据所述变更提示指令输出反馈信息,所述第二对象为所述联盟链中除所述第一对象之外的其他对象。
变更模块,用于响应于所述反馈信息中允许账户变更的信息的数量大于预设的数量阈值,根据所述账户变更指令中的账户数据,以及账户变更指令中的账户数据的标识信息将所述账户变更指令中的账户数据存储在所述存储系统的第一区块,所述第一区块为未进行存储数据的区块。
在所述装置的一个实施例中,所述待存储账户数据包括:待存储账户的用户的名称、账户号、所述用户的证件号,所述按照加密算法加密后的所述待存储账户数据,包括:
将所述待存储账户的用户的名称、账户号、所述用户的证件号进行拼接,将拼接后的数据按照信息摘要算法进行处理,得到加密后的所述待存储账户数据。
上述账户数据的验证装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储加密后的账户数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种账户数据的验证方法。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本公开方案相关的部分结构的框图,并不构成对本公开方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述任一方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一方法实施例中的步骤。
需要说明的是,本申请所涉及的账户数据、标识信息等,均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本公开所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本公开所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本公开所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本公开的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本公开专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开构思的前提下,还可以做出若干变形和改进,这些都属于本公开的保护范围。因此,本公开的保护范围应以所附权利要求为准。
Claims (10)
1.一种账户数据的验证方法,其特征在于,所述方法包括:
响应于接收账户验证对象发出的账户验证指令,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述账户验证对象为联盟链中的对象,所述标识信息是根据所述账户数据对应的账户类型信息确定的;
利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据;
响应于所述目标区块中存在所述账户验证指令中的进行加密后的账户数据,确定账户数据验证通过。
2.根据权利要求1所述的方法,其特征在于,所述接收账户验证对象发出的账户验证指令之前,所述方法还包括:
获取预先创建的联盟链中多个对象所对应的待存储账户数据,以及所述待存储账户数据的标识信息,所述联盟链中存在多个对象,所述联盟链中包括多个区块,所述多个区块存储在存储系统中;
根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中。
3.根据权利要求2所述的方法,其特征在于,所述标识信息包括:待存储账户数据的账户号码;所述根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中,包括:
对所述待存储账户数据的账户号码进行取模运算,得到编码信息;
按照编码信息的数量和编码信息对所述存储系统进行分区,其中,每个分区后的存储系统存在对应的存储编号;
基于分区所述存储系统的存储编号和所述编码信息,将按照加密算法加密后的所述待存储账户数据存储在分区后的所述存储系统的区块中。
4.根据权利要求2所述的方法,其特征在于,所述标识信息还包括:待存储账户数据的时间信息;所述根据所述待存储账户数据的标识信息将按照加密算法加密后的所述待存储账户数据存储在所述存储系统的多个区块中,包括:
按照预设的时间维度对所述存储账户数据的时间信息进行聚类处理,得到多个聚类结果;
按照所述聚类结果对所述多个区块进行分类,并将按照加密算法加密后的存储账户数据按照所述聚类结果和时间信息存储在不同的区块中。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
响应于接收到所述联盟链中的第一对象输出的账户变更指令,发出变更提示指令至所述联盟链中第二对象,以指示所述第二对象根据所述变更提示指令输出反馈信息,所述第二对象为所述联盟链中除所述第一对象之外的其他对象;
响应于所述反馈信息中允许账户变更的信息的数量大于预设的数量阈值,根据所述账户变更指令中的账户数据,以及账户变更指令中的账户数据的标识信息将所述账户变更指令中的账户数据存储在所述存储系统的第一区块,所述第一区块为未进行存储数据的区块。
6.根据权利要求2至4中任一项所述的方法,其特征在于,所述待存储账户数据包括:待存储账户的用户的名称、账户号、所述用户的证件号,所述按照加密算法加密后的所述待存储账户数据,包括:
将所述待存储账户的用户的名称、账户号、所述用户的证件号进行拼接,将拼接后的数据按照信息摘要算法进行处理,得到加密后的所述待存储账户数据。
7.一种账户数据的验证装置,其特征在于,所述装置包括:
指令接收模块,用于响应于接收账户验证对象发出的账户验证指令,所述账户验证对象为联盟链中的对象,获取所述账户验证指令中进行加密后的账户数据和所述账户数据对应的标识信息,所述标识信息是根据所述账户数据对应的账户类型信息确定的;
区块确定模块,用于利用所述标识信息匹配所述联盟链中的多个区块,确定多个区块中目标区块,其中,所述区块中存储着所述联盟链中所有对象对应的账户数据,每个所述区块用于存储具有相同的所述标识信息的账户数据;
验证结果确定模块,用于响应于所述目标区块中存在所述账户指令中的进行加密后的账户数据,确定账户数据验证通过。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311193428.8A CN117391702A (zh) | 2023-09-15 | 2023-09-15 | 账户数据的验证方法、装置、计算机设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311193428.8A CN117391702A (zh) | 2023-09-15 | 2023-09-15 | 账户数据的验证方法、装置、计算机设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117391702A true CN117391702A (zh) | 2024-01-12 |
Family
ID=89469163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311193428.8A Pending CN117391702A (zh) | 2023-09-15 | 2023-09-15 | 账户数据的验证方法、装置、计算机设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117391702A (zh) |
-
2023
- 2023-09-15 CN CN202311193428.8A patent/CN117391702A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11270308B2 (en) | Shared blockchain data storage | |
US10892898B2 (en) | Shared blockchain data storage | |
US11057217B2 (en) | Performing parallel execution of transactions in a distributed ledger system | |
US20210014066A1 (en) | Shared blockchain data storage | |
EP3776250B1 (en) | Performing map iterations in blockchain-based system | |
CN110689349A (zh) | 一种区块链中的交易哈希值存储和搜索方法及装置 | |
WO2020098819A2 (en) | Performing map iterations in a blockchain-based system | |
CN115659417A (zh) | 审计日志存储方法、验证方法、装置和计算机设备 | |
CN114756627A (zh) | 基于联盟链的数字资产处理方法、系统和存储介质 | |
CN114116637A (zh) | 一种数据共享方法、装置、设备及存储介质 | |
CN117391702A (zh) | 账户数据的验证方法、装置、计算机设备、存储介质 | |
Li et al. | Post‐Quantum Privacy‐Preserving Provable Data Possession Scheme Based on Smart Contracts | |
CN115439118B (zh) | 一种基于区块链的数字存证管理方法 | |
CN116451199A (zh) | 访问请求处理方法、装置、设备、存储介质和计算机产品 | |
CN115859374A (zh) | 基于区块链的数据存证方法及装置 | |
CN116015609A (zh) | 业务记录存储方法、装置、计算机设备和存储介质 | |
CN117992472A (zh) | 基于区块链的教育数据管理方法、装置和计算机设备 | |
Soesanto et al. | Adaptive Shrink and Shard Architecture Design for Blockchain Storage Efficiency | |
CN116980322A (zh) | 基于行为数据的行为检测方法、装置和计算机设备 | |
CN118133331A (zh) | 芯片存储数据的隐私保护方法、装置和计算机设备 | |
CN117932687A (zh) | 基于环签名的碳排放数据调取方法、装置和计算机设备 | |
CN118313002A (zh) | 数据脱敏方法、装置、计算机设备和存储介质 | |
CN116506294A (zh) | 共识网络优化方法、装置、计算机设备和存储介质 | |
CN117149371A (zh) | 资源借调方法、装置、计算机设备、存储介质和程序产品 | |
CN118353954A (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 |