CN112883060A - 数据校验方法、装置和电子设备 - Google Patents
数据校验方法、装置和电子设备 Download PDFInfo
- Publication number
- CN112883060A CN112883060A CN202110131353.5A CN202110131353A CN112883060A CN 112883060 A CN112883060 A CN 112883060A CN 202110131353 A CN202110131353 A CN 202110131353A CN 112883060 A CN112883060 A CN 112883060A
- Authority
- CN
- China
- Prior art keywords
- element group
- elements
- sub
- matched
- query
- 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.)
- Withdrawn
Links
Images
Classifications
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种数据校验方法、装置和电子设备,包括:获取校验请求,校验请求中包含一要素组;识别要素组包含的多个子要素组;按多个子要素组、要素组中的要素数量由低到高,依次查询每个子要素组以及要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询;在查询停止时,判定多个要素之间不匹配,或直至完成对要素组的查询并确定多个要素之间是否匹配,以响应校验请求。由于子要素组中的要素不匹配,那么必然要素组中所有元素不匹配,此时不必查询要素组中所有要素是否匹配,而对子要素组中部分要素查询的时间要远小于对要素组中所有要素查询的时间,有效提升了校验效率。
Description
技术领域
本发明涉及计算机信息处理领域,具体而言,涉及一种数据校验方法、装置、电子设备及计算机可读介质。
背景技术
在系统间协同处理业务时,需要相互传输数据,其中某些数据标识了用户的身份(包括姓名、身份证号、手机号等要素),重要程度非常高。例如,在多个系统配合处理互联网金融业务时,首先需要保证系统间传输的用户实名数据中各种要素相互匹配,因为如果用户实名数据一旦发生错误,可能对用户的利益造成重大影响。
目前的技术方案,通常要请求第三方对用户实名数据中各种要素进行校验,根据校验结果判断用户实名数据是否存在异常。该种方案的缺陷在于,直接与第三方通信对多个要素进行查询,数据量较大,占用时间较多,影响了对用户实名数据校验的效率。
因此,需要一种新的技术方案,对需要校验的数据中各元素进行校验,并确保校验效率较高。
发明内容
本发明旨在对需要校验的数据中各元素进行校验,并确保校验效率较高。
为了解决上述技术问题,本发明第一方面提出一种数据校验方法,包括:获取校验请求,所述校验请求中包含一要素组,所述要素组中具有多个要素,所述校验请求用于请求判断所述多个要素之间是否匹配;识别所述要素组包含的多个子要素组,每个子要素组中包含所述多个要素中的至少一个;按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询;在查询停止时,判定所述多个要素之间不匹配,或直至完成对所述要素组的查询并确定所述多个要素之间是否匹配,以响应所述校验请求。
根据本发明的一种优选实施方式,所述按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配包括:在所述多个子要素组中第一子要素组与第二子要素组的要素数量相同时,比较所述第一子要素组与所述第二子要素组的要素数据长度,优先选择要素数据长度较短的子要素组进行查询。
根据本发明的一种优选实施方式,所述按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配包括:在所述多个子要素组中第一子要素组与第二子要素组的要素数量相同时,评估所述第一子要素组与所述第二子要素组的要素重要程度,优先选择要素重要程度较高的子要素组进行查询。
根据本发明的一种优选实施方式,所述依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配,包括:根据所述每个子要素组或所述要素组中要素的类别,从缓存中选择记录所述类别下多组要素及其匹配结果的存储空间中,查询所述每个子要素组或所述要素组中要素之间是否匹配。
根据本发明的一种优选实施方式,还包括:在从所述存储空间中查询不到所述每个子要素组或所述要素组中要素之间是否匹配时,则从预设的第三方进行查询。
根据本发明的一种优选实施方式,还包括:根据从所述第三方获取的查询结果,将对所述存储空间进行更新。
根据本发明的一种优选实施方式,所述识别所述要素组包含的多个子要素组,包括:根据所述缓存中多个存储空间中要素的类型,识别所述要素组中对应类型的要素,形成所述多个子要素组。
根据本发明的一种优选实施方式,所述存储空间的每个要素均独立加密,所述从缓存中选择记录所述类别下多组要素及其匹配结果的存储空间中,查询所述每个子要素组或所述要素组中要素之间是否匹配包括:根据所述每个子要素组或所述要素组中预设的主要素,从所述存储空间中获取含有所述主要素的一组或多组要素及匹配结果并解密,从中识别出所述每个子要素组或所述要素组及匹配结果。
为了解决上述技术问题,本发明第二方面提出一种数据校验装置,包括:校验请求获取模块,获取校验请求,所述校验请求中包含一要素组,所述要素组中具有多个要素,所述校验请求用于请求判断所述多个要素之间是否匹配;子要素组识别模块,识别所述要素组包含的多个子要素组,每个子要素组中包含所述多个要素中的至少一个;匹配结果查询模块,按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询;校验请求相应模块,在查询停止时,判定所述多个要素之间不匹配,或直至完成对所述要素组的查询并确定所述多个要素之间是否匹配,以响应所述校验请求。
根据本发明的一种优选实施方式,所述匹配结果查询模块在所述多个子要素组中第一子要素组与第二子要素组的要素数量相同时,比较所述第一子要素组与所述第二子要素组的要素数据长度,优先选择要素数据长度较短的子要素组进行查询。
根据本发明的一种优选实施方式,所述匹配结果查询模块在所述多个子要素组中第一子要素组与第二子要素组的要素数量相同时,评估所述第一子要素组与所述第二子要素组的要素重要程度,优先选择要素重要程度较高的子要素组进行查询。
根据本发明的一种优选实施方式,所述匹配结果查询模块根据所述每个子要素组或所述要素组中要素的类别,从缓存中选择记录所述类别下多组要素及其匹配结果的存储空间中,查询所述每个子要素组或所述要素组中要素之间是否匹配。
根据本发明的一种优选实施方式,所述匹配结果查询模块在从所述存储空间中查询不到所述每个子要素组或所述要素组中要素之间是否匹配时,则从预设的第三方进行查询。
根据本发明的一种优选实施方式,还包括:查询结果更新模块,根据从所述第三方获取的查询结果,将对所述存储空间进行更新。
根据本发明的一种优选实施方式,所述子要素组识别模块根据所述缓存中多个存储空间中要素的类型,识别所述要素组中对应类型的要素,形成所述多个子要素组。
根据本发明的一种优选实施方式,所述存储空间的每个要素均独立加密,所述匹配结果查询模块根据所述每个子要素组或所述要素组中预设的主要素,从所述存储空间中获取含有所述主要素的一组或多组要素及匹配结果并解密,从中识别出所述每个子要素组或所述要素组及匹配结果。
为了解决上述技术问题,本发明第三方面提出一种电子设备,包括:处理器;以及存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行前述的方法。
为了解决上述技术问题,本发明第四方面提出一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,当所述一个或多个程序被处理器执行时,实现前述的方法。
由于本发明在接收到校验请求后,对于校验请求中的多个元素,首先识别出其中所有的子要素组,并按照要素数量由低到高的顺序查询每个子要素组、要素组是否匹配,如果发现子要素组中的要素不匹配,那么必然要素组中所有元素不匹配,此时不必查询要素组中所有要素是否匹配,而对子要素组中部分要素查询的时间要远小于对要素组中所有要素查询的时间,有效提升了校验效率。
附图说明
为了使本发明所解决的技术问题、采用的技术手段及取得的技术效果更加清楚,下面将参照附图详细描述本发明的具体实施例。但需声明的是,下面描述的附图仅仅是本发明的示例性实施例的附图,对于本领域的技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他实施例的附图。
图1是根据本发明的一个实施例的数据校验方法的流程图;
图2是根据本发明的一个实施例的数据校验方法的流程图;
图3是根据本发明的一个实施例的数据校验装置的框图;
图4是根据本发明的一个实施例的数据校验装置的框图;
图5是根据本发明的一个实施例的电子设备的框图;
图6是根据本发明的一个实施例的计算机可读存储介质的示意图。
具体实施方式
现在将参考附图来更加全面地描述本发明的示例性实施例,虽然各示例性实施例能够以多种具体的方式实施,但不应理解为本发明仅限于在此阐述的实施例。相反,提供这些示例性实施例是为了使本发明的内容更加完整,更加便于将发明构思全面地传达给本领域的技术人员。
在符合本发明的技术构思的前提下,在某个特定的实施例中描述的结构、性能、效果或者其他特征可以以任何合适的方式结合到一个或更多其他的实施例中。
在对于具体实施例的介绍过程中,对结构、性能、效果或者其他特征的细节描述是为了使本领域的技术人员对实施例能够充分理解。但是,并不排除本领域技术人员可以在特定情况下,以不含有上述结构、性能、效果或者其他特征的技术方案来实施本发明。
附图中的流程图仅是一种示例性的流程演示,不代表本发明的方案中必须包括流程图中的所有的内容、操作和步骤,也不代表必须按照图中所显示的的顺序执行。例如,流程图中有的操作/步骤可以分解,有的操作/步骤可以合并或部分合并,等等,在不脱离本发明的发明主旨的情况下,流程图中显示的执行顺序可以根据实际情况改变。
附图中的框图一般表示的是功能实体,并不一定必然与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
各附图中相同的附图标记表示相同或类似的元件、组件或部分,因而下文中可能省略了对相同或类似的元件、组件或部分的重复描述。还应理解,虽然本文中可能使用第一、第二、第三等表示编号的定语来描述各种器件、元件、组件或部分,但是这些器件、元件、组件或部分不应受这些定语的限制。也就是说,这些定语仅是用来将一者与另一者区分。例如,第一器件亦可称为第二器件,但不偏离本发明实质的技术方案。此外,术语“和/或”、“及/或”是指包括所列出项目中的任一个或多个的所有组合。
本发明提供了一种数据校验方法,包括:获取校验请求,校验请求中包含一要素组,要素组中具有多个要素,校验请求用于请求判断多个要素之间是否匹配;识别要素组包含的多个子要素组,每个子要素组中包含多个要素中的至少一个;按多个子要素组、要素组中的要素数量由低到高,依次查询每个子要素组以及要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询;在查询停止时,判定多个要素之间不匹配,或直至完成对要素组的查询并确定多个要素之间是否匹配,以响应校验请求。由于按照要素数量由低到高的顺序查询每个子要素组、要素组是否匹配,如果发现子要素组中的要素不匹配,那么必然要素组中所有元素不匹配,此时不必查询要素组中所有要素是否匹配,而对子要素组中部分要素查询的时间要远小于对要素组中所有要素查询的时间,有效提升了校验效率。
如图1所示,本发明的一个实施例中提供了一种数据校验方法,包括:
步骤S110,获取校验请求,校验请求中包含一要素组,要素组中具有多个要素,校验请求用于请求判断多个要素之间是否匹配。
在本实施例中,对校验请求的应用场景不进行限制,例如,可以是在系统间处理互联网金融业务时校验用户实名数据。在本实施例中,对要素组中的要素类型不进行限制,如果该要素组是用户实名数据,则其中的要素可以是姓名、身份证号、手机号、银行卡号等等,如果用户实名数据通过校验,则其中的姓名、身份证号、手机号、银行卡号必然相匹配。
步骤S120,识别要素组包含的多个子要素组,每个子要素组中包含多个要素中的至少一个。
在本实施例中,对划分子要素组的策略不进行限制,一般地,子要素组中的要素之间存在匹配关系,以用户实名数据为例,用户的姓名与身份证二者应当匹配,则可以将其划分为一个子要素组,而用户使用身份证办手机号,则姓名、身份证、手机号应当匹配,可以将其划分为一个子要素组。也可以提前设置好每个要素组的要素类型,例如:实名二要素(姓名+身份证号)、手机号三要素(姓名+手机号+身份证号)、.银行卡三要素(姓名+身份证号+手机号)、银行卡四要素(姓名+身份证+手机号+银行卡号)。
步骤S130,按多个子要素组、要素组中的要素数量由低到高,依次查询每个子要素组以及要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询。
步骤S140,在查询停止时,判定多个要素之间不匹配,或直至完成对要素组的查询并确定多个要素之间是否匹配,以响应校验请求。
根据本实施例的技术方案,查询较少数量元素是否匹配的效率要远高于查询较多数量要素是否匹配,因此按照要素数量由低到高,依次查询每个子要素组、要素组中的要素数量是否匹配,一般地,当要素组中存在要素不匹配的情况时,有较大概率首个子要素组中的要素即不匹配,而当子要素组中要素不匹配时,要素组中所有要素必然也不匹配,通过本实施例的技术方案,可以快速发现要素不匹配的情况,提升了校验效率。
如图2所示,本发明的一个实施例中提供了一种数据校验方法,包括:
步骤S210,获取校验请求,校验请求中包含一要素组,要素组中具有多个要素,校验请求用于请求判断多个要素之间是否匹配。
步骤S220,根据缓存中多个存储空间中要素的类型,识别要素组中对应类型的要素,形成多个子要素组,每个子要素组中包含多个要素中的至少一个。存储空间的每个要素均独立加密。
在本实施例中,可以依托redis或mysql数据库进行缓存,由于每个要素独立加密存储,实现了多级缓存,有利于降低存储成本;可以依托于MD5加密方案对数据加密,确保用户实名要素不被反解,提升了数据的安全性。在本实施例中,在本地缓存中记录不同类型的要素组合及对应的匹配结果,相比于对接第三方进行查询,效率更高。由于缓存中已经记录了可查询的要素组合类型,所以可以根据缓存中存储空间的要素类型,识别出子要素组。
在本实施例的一个具体实施方式中,匹配结果的结果值可以如下标识:1=匹配,2=不匹配,3=不存在。由于每个要素独立加密,所以对于实名二要素,可以存储三列,姓名加密串、身份证号码加密串、结果值(匹配,不匹配);而对于手机号三要素,可以存储四列,姓名加密串、身份证号码加密串、手机号加密串,结果值(匹配,不匹配);对于银行卡三要素,可以存储四列,即姓名加密串、身份证号码加密串、银行卡号加密串,结果值(匹配,不匹配);对于银行卡四要素,可以存储四列,姓名加密串、身份证号码加密串、手机号加密串,银行卡号加密串,结果值(匹配,不匹配)。
步骤S230,按多个子要素组、要素组中的要素数量由低到高,根据每个子要素组或要素组中要素的类别,从缓存中选择记录类别下多组要素及其匹配结果的存储空间中,依次查询每个子要素组或要素组中要素之间是否匹配,并在查询结果为不匹配时停止查询;在从存储空间中查询不到每个子要素组或要素组中要素之间是否匹配时,则从预设的第三方进行查询,并根据从第三方获取的查询结果,将对存储空间进行更新。
由于每个要素独立加密,所以可以根据每个子要素组或要素组中预设的主要素,从存储空间中获取含有主要素的一组或多组要素及匹配结果并解密,从中识别出每个子要素组或要素组及匹配结果。
例如,实名要素首先是验证二要素:(1)拿到需要检验的数据,先校验实名二要素,可以只传输身份证号,返回结果为空或者一些姓名加密串,然后进行姓名加密串比对,得到结论或者匹配结果为空。(2)如果结果为空,并且当前校验是二要素校验,则需要请求第三方获取校验结果,并且更新缓存。(3)如果结果是匹配或者不匹配,可以直接使用结果。对于手机号三要素校验:(1)首先进行本地二要素校验,如果返回结果是不匹配,则此次校验不通过。(2)如果返回结果为空,则需要请求第三方校验。(3)如果二要素校验为通过,则再次通过手机号三要素进行校验,返回结果为匹配、不匹配和空。(4)如果手机号三要素校验为空,则需要请求第三方查看校验结果,并且回更新缓存。(5)如果查询第三方结果为不匹配,则只更新手机号三要素的缓存。如果查询第三方结果为匹配,则同时需要更新姓名+身份证信息到实名二要素缓存。对于银行卡三要素校验:(1)进行本地实名二要素校验。(2)进行银行卡三要素校验,并且根据规则更新本地二要素。对于银行卡四要素校验:(1)本地实名二要素校验。(2)本地手机号三要素校验。(3)本地银行卡三要素校验。(4)本地银行卡四要素校验,如果不通过则进行远程四要素校验。(5)如果校验结果为匹配,则需要根据情况更新实名二要素、手机号三要素和银行卡三要素。
其中,在多个子要素组中第一子要素组与第二子要素组的要素数量相同时,可以采取以下方式:
(1)比较第一子要素组与第二子要素组的要素数据长度,优先选择要素数据长度较短的子要素组进行查询。
在本实施例中,当要素数据长度较短时,查询要素是否匹配速度较快,如果结果为不匹配,则可以结束查询,有利于提升校验响应速度。
(2)评估第一子要素组与第二子要素组的要素重要程度,优先选择要素重要程度较高的子要素组进行查询。
在本实施例中,当要素重要程度较高时,往往出现不匹配的概率也比较高,所以优先对重要程度较高的要素进行查询,有较高概率不匹配从而结束查询,相当于提升校验响应速度。
步骤S240,在查询停止时,判定多个要素之间不匹配,或直至完成对要素组的查询并确定多个要素之间是否匹配,以响应校验请求。
根据本实施例的技术方案,通过缓存数据进行要素匹配结果查询,相比于从第三方查询提升了效率,对缓存中的每个要素进行加密,提升了数据安全性。
本领域技术人员可以理解,实现上述实施例的全部或部分步骤被实现为由数据处理设备(包括计算机)执行的程序,即计算机程序。在该计算机程序被执行时,可以实现本发明提供的上述方法。而且,所述的计算机程序可以存储于计算机可读存储介质中,该存储介质可以是磁盘、光盘、ROM、RAM等可读存储介质,也可以是多个存储介质组成的存储阵列,例如磁盘或磁带存储阵列。所述的存储介质不限于集中式存储,其也可以是分布式存储,例如基于云计算的云存储。
下面描述本发明的装置实施例,该装置可以用于执行本发明的方法实施例。对于本发明装置实施例中描述的细节,应视为对于上述方法实施例的补充;对于在本发明装置实施例中未披露的细节,可以参照上述方法实施例来实现。
如图3所示,本发明的一个实施例中提供了一种数据校验装置,包括:
校验请求获取模块310,获取校验请求,校验请求中包含一要素组,要素组中具有多个要素,校验请求用于请求判断多个要素之间是否匹配。
在本实施例中,对校验请求的应用场景不进行限制,例如,可以是在系统间处理互联网金融业务时校验用户实名数据。在本实施例中,对要素组中的要素类型不进行限制,如果该要素组是用户实名数据,则其中的要素可以是姓名、身份证号、手机号、银行卡号等等,如果用户实名数据通过校验,则其中的姓名、身份证号、手机号、银行卡号必然相匹配。
子要素组识别模块320,识别要素组包含的多个子要素组,每个子要素组中包含多个要素中的至少一个。
在本实施例中,对划分子要素组的策略不进行限制,一般地,子要素组中的要素之间存在匹配关系,以用户实名数据为例,用户的姓名与身份证二者应当匹配,则可以将其划分为一个子要素组,而用户使用身份证办手机号,则姓名、身份证、手机号应当匹配,可以将其划分为一个子要素组。也可以提前设置好每个要素组的要素类型,例如:实名二要素(姓名+身份证号)、手机号三要素(姓名+手机号+身份证号)、.银行卡三要素(姓名+身份证号+手机号)、银行卡四要素(姓名+身份证+手机号+银行卡号)。
匹配结果查询模块330,按多个子要素组、要素组中的要素数量由低到高,依次查询每个子要素组以及要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询。
校验请求相应模块340,在查询停止时,判定多个要素之间不匹配,或直至完成对要素组的查询并确定多个要素之间是否匹配,以响应校验请求。
根据本实施例的技术方案,查询较少数量元素是否匹配的效率要远高于查询较多数量要素是否匹配,因此按照要素数量由低到高,依次查询每个子要素组、要素组中的要素数量是否匹配,一般地,当要素组中存在要素不匹配的情况时,有较大概率首个子要素组中的要素即不匹配,而当子要素组中要素不匹配时,要素组中所有要素必然也不匹配,通过本实施例的技术方案,可以快速发现要素不匹配的情况,提升了校验效率。
如图4所示,本发明的一个实施例中提供了一种数据校验装置,包括:
校验请求获取模块410,获取校验请求,校验请求中包含一要素组,要素组中具有多个要素,校验请求用于请求判断多个要素之间是否匹配。
子要素组识别模块420,根据缓存中多个存储空间中要素的类型,识别要素组中对应类型的要素,形成多个子要素组,每个子要素组中包含多个要素中的至少一个。存储空间的每个要素均独立加密。
在本实施例中,可以依托redis或mysql数据库进行缓存,由于每个要素独立加密存储,实现了多级缓存,有利于降低存储成本;可以依托于MD5加密方案对数据加密,确保用户实名要素不被反解,提升了数据的安全性。在本实施例中,在本地缓存中记录不同类型的要素组合及对应的匹配结果,相比于对接第三方进行查询,效率更高。由于缓存中已经记录了可查询的要素组合类型,所以可以根据缓存中存储空间的要素类型,识别出子要素组。
在本实施例的一个具体实施方式中,匹配结果的结果值可以如下标识:1=匹配,2=不匹配,3=不存在。由于每个要素独立加密,所以对于实名二要素,可以存储三列,姓名加密串、身份证号码加密串、结果值(匹配,不匹配);而对于手机号三要素,可以存储四列,姓名加密串、身份证号码加密串、手机号加密串,结果值(匹配,不匹配);对于银行卡三要素,可以存储四列,即姓名加密串、身份证号码加密串、银行卡号加密串,结果值(匹配,不匹配);对于银行卡四要素,可以存储四列,姓名加密串、身份证号码加密串、手机号加密串,银行卡号加密串,结果值(匹配,不匹配)。
匹配结果查询模块430,按多个子要素组、要素组中的要素数量由低到高,根据每个子要素组或要素组中要素的类别,从缓存中选择记录类别下多组要素及其匹配结果的存储空间中,依次查询每个子要素组或要素组中要素之间是否匹配,并在查询结果为不匹配时停止查询;在从存储空间中查询不到每个子要素组或要素组中要素之间是否匹配时,则从预设的第三方进行查询。
查询结果更新模块440,并根据从第三方获取的查询结果,将对存储空间进行更新。
由于每个要素独立加密,所以可以根据每个子要素组或要素组中预设的主要素,从存储空间中获取含有主要素的一组或多组要素及匹配结果并解密,从中识别出每个子要素组或要素组及匹配结果。
例如,实名要素首先是验证二要素:(1)拿到需要检验的数据,先校验实名二要素,可以只传输身份证号,返回结果为空或者一些姓名加密串,然后进行姓名加密串比对,得到结论或者匹配结果为空。(2)如果结果为空,并且当前校验是二要素校验,则需要请求第三方获取校验结果,并且更新缓存。(3)如果结果是匹配或者不匹配,可以直接使用结果。对于手机号三要素校验:(1)首先进行本地二要素校验,如果返回结果是不匹配,则此次校验不通过。(2)如果返回结果为空,则需要请求第三方校验。(3)如果二要素校验为通过,则再次通过手机号三要素进行校验,返回结果为匹配、不匹配和空。(4)如果手机号三要素校验为空,则需要请求第三方查看校验结果,并且回更新缓存。(5)如果查询第三方结果为不匹配,则只更新手机号三要素的缓存。如果查询第三方结果为匹配,则同时需要更新姓名+身份证信息到实名二要素缓存。对于银行卡三要素校验:(1)进行本地实名二要素校验。(2)进行银行卡三要素校验,并且根据规则更新本地二要素。对于银行卡四要素校验:(1)本地实名二要素校验。(2)本地手机号三要素校验。(3)本地银行卡三要素校验。(4)本地银行卡四要素校验,如果不通过则进行远程四要素校验。(5)如果校验结果为匹配,则需要根据情况更新实名二要素、手机号三要素和银行卡三要素。
其中,在多个子要素组中第一子要素组与第二子要素组的要素数量相同时,可以采取以下方式:
(1)比较第一子要素组与第二子要素组的要素数据长度,优先选择要素数据长度较短的子要素组进行查询。
在本实施例中,当要素数据长度较短时,查询要素是否匹配速度较快,如果结果为不匹配,则可以结束查询,有利于提升校验响应速度。
(2)评估第一子要素组与第二子要素组的要素重要程度,优先选择要素重要程度较高的子要素组进行查询。
在本实施例中,当要素重要程度较高时,往往出现不匹配的概率也比较高,所以优先对重要程度较高的要素进行查询,有较高概率不匹配从而结束查询,相当于提升校验响应速度。
校验请求相应模块450,在查询停止时,判定多个要素之间不匹配,或直至完成对要素组的查询并确定多个要素之间是否匹配,以响应校验请求。
根据本实施例的技术方案,通过缓存数据进行要素匹配结果查询,相比于从第三方查询提升了效率,对缓存中的每个要素进行加密,提升了数据安全性。
本领域技术人员可以理解,上述装置实施例中的各模块可以按照描述分布于装置中,也可以进行相应变化,分布于不同于上述实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
下面描述本发明的电子设备实施例,该电子设备可以视为对于上述本发明的方法和装置实施例的实体形式的实施方式。对于本发明电子设备实施例中描述的细节,应视为对于上述方法或装置实施例的补充;对于在本发明电子设备实施例中未披露的细节,可以参照上述方法或装置实施例来实现。
图5是根据本发明的一种电子设备的示例性实施例的结构框图。图5显示的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,该示例性实施例的电子设备200以通用数据处理设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
其中,所述存储单元220存储有计算机可读程序,其可以是源程序或都只读程序的代码。所述程序可以被处理单元210执行,使得所述处理单元210执行本发明各种实施方式的步骤。例如,所述处理单元210可以执行如图1或图2所示的步骤。
所述存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。所述存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、显示器、网络设备、蓝牙设备等)通信,使得用户能经由这些外部设备300与该电子设备200交互,和/或使得该电子设备200能与一个或多个其它数据处理设备(例如路由器、调制解调器等等)进行通信。这种通信可以通过输入/输出(I/O)接口250进行,还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)进行。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,电子设备200中可使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
图6是本发明的一个计算机可读介质实施例的示意图。如图6所示,所述计算机程序可以存储于一个或多个计算机可读介质上。计算机可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。当所述计算机程序被一个或多个数据处理设备执行时,使得该计算机可读介质能够实现本发明的上述方法,即:获取校验请求,校验请求中包含一要素组,要素组中具有多个要素,校验请求用于请求判断多个要素之间是否匹配;识别要素组包含的多个子要素组,每个子要素组中包含多个要素中的至少一个;按多个子要素组、要素组中的要素数量由低到高,依次查询每个子要素组以及要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询;在查询停止时,判定多个要素之间不匹配,或直至完成对要素组的查询并确定多个要素之间是否匹配,以响应校验请求。
通过以上的实施方式的描述,本领域的技术人员易于理解,本发明描述的示例性实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读的存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台数据处理设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明的上述方法。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明可以执行计算机程序的方法、装置、电子设备或计算机可读介质来实现。可以在实践中使用微处理器或者数字信号处理器(DSP)等通用数据处理设备来实现本发明的一些或者全部功能。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,本发明不与任何特定计算机、虚拟装置或者电子设备固有相关,各种通用装置也可以实现本发明。以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据校验方法,其特征在于,包括:
获取校验请求,所述校验请求中包含一要素组,所述要素组中具有多个要素,所述校验请求用于请求判断所述多个要素之间是否匹配;
识别所述要素组包含的多个子要素组,每个子要素组中包含所述多个要素中的至少一个;
按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询;
在查询停止时,判定所述多个要素之间不匹配,或直至完成对所述要素组的查询并确定所述多个要素之间是否匹配,以响应所述校验请求。
2.根据权利要求1所述的数据校验方法,其特征在于,所述按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配包括:
在所述多个子要素组中第一子要素组与第二子要素组的要素数量相同时,比较所述第一子要素组与所述第二子要素组的要素数据长度,优先选择要素数据长度较短的子要素组进行查询。
3.根据权利要求1-2中任一项所述的数据校验方法,其特征在于,所述按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配包括:
在所述多个子要素组中第一子要素组与第二子要素组的要素数量相同时,评估所述第一子要素组与所述第二子要素组的要素重要程度,优先选择要素重要程度较高的子要素组进行查询。
4.根据权利要求1-3中任一项所述的数据校验方法,其特征在于,所述依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配,包括:
根据所述每个子要素组或所述要素组中要素的类别,从缓存中选择记录所述类别下多组要素及其匹配结果的存储空间中,查询所述每个子要素组或所述要素组中要素之间是否匹配。
5.根据权利要求1-4中任一项所述的数据校验方法,其特征在于,还包括:
在从所述存储空间中查询不到所述每个子要素组或所述要素组中要素之间是否匹配时,则从预设的第三方进行查询。
6.根据权利要求1-5中任一项所述的数据校验方法,其特征在于,还包括:
根据从所述第三方获取的查询结果,将对所述存储空间进行更新。
7.根据权利要求1-6中任一项所述的数据校验方法,其特征在于,所述识别所述要素组包含的多个子要素组,包括:
根据所述缓存中多个存储空间中要素的类型,识别所述要素组中对应类型的要素,形成所述多个子要素组。
8.一种数据校验装置,其特征在于,包括:
校验请求获取模块,获取校验请求,所述校验请求中包含一要素组,所述要素组中具有多个要素,所述校验请求用于请求判断所述多个要素之间是否匹配;
子要素组识别模块,识别所述要素组包含的多个子要素组,每个子要素组中包含所述多个要素中的至少一个;
匹配结果查询模块,按所述多个子要素组、所述要素组中的要素数量由低到高,依次查询所述每个子要素组以及所述要素组中的要素之间是否匹配,并在查询结果为不匹配时停止查询;
校验请求相应模块,在查询停止时,判定所述多个要素之间不匹配,或直至完成对所述要素组的查询并确定所述多个要素之间是否匹配,以响应所述校验请求。
9.一种电子设备,包括:
处理器;以及
存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行根据权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,当所述一个或多个程序被处理器执行时,实现权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110131353.5A CN112883060A (zh) | 2021-01-30 | 2021-01-30 | 数据校验方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110131353.5A CN112883060A (zh) | 2021-01-30 | 2021-01-30 | 数据校验方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112883060A true CN112883060A (zh) | 2021-06-01 |
Family
ID=76052111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110131353.5A Withdrawn CN112883060A (zh) | 2021-01-30 | 2021-01-30 | 数据校验方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112883060A (zh) |
-
2021
- 2021-01-30 CN CN202110131353.5A patent/CN112883060A/zh not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9875370B2 (en) | Database server and client for query processing on encrypted data | |
CN111258966A (zh) | 一种数据去重方法、装置、设备及存储介质 | |
CN112528262A (zh) | 基于令牌的应用程序访问方法、装置、介质及电子设备 | |
US11163726B2 (en) | Context aware delta algorithm for genomic files | |
CN109901987B (zh) | 一种生成测试数据的方法和装置 | |
CN111242462B (zh) | 数据处理方法及装置、计算机存储介质、电子设备 | |
CN110618999A (zh) | 数据的查询方法及装置、计算机存储介质、电子设备 | |
CN110837635A (zh) | 一种设备验证的方法、装置、设备及存储介质 | |
CN110781134A (zh) | 数据处理方法及装置、计算机存储介质、电子设备 | |
CN110020040B (zh) | 查询数据的方法、装置和系统 | |
CN110716960A (zh) | 一种数据库查询方法、装置、设备及存储介质 | |
CN110196952B (zh) | 程序代码的搜索处理方法、装置、设备及存储介质 | |
WO2018222626A1 (en) | Expression evaluation of database statements for restricted data | |
CN112463749A (zh) | 文件分享方法、装置、介质及电子设备 | |
CN111210109A (zh) | 基于关联用户预测用户风险的方法、装置和电子设备 | |
CN112883060A (zh) | 数据校验方法、装置和电子设备 | |
CN114978646A (zh) | 一种访问权限确定方法、装置、设备和存储介质 | |
CN115310514A (zh) | 海量数据中识别目标类型数据的方法及装置 | |
CN110674491B (zh) | 用于安卓应用的实时取证的方法、装置和电子设备 | |
CN111400623A (zh) | 用于搜索信息的方法和装置 | |
CN111460273A (zh) | 信息推送方法和装置 | |
CN112800004A (zh) | 一种车牌算法库的控制方法、装置、设备和介质 | |
US11379449B2 (en) | Method, electronic device and computer program product for creating metadata index | |
CN116600031B (zh) | 报文处理方法、装置、设备及存储介质 | |
US11632380B2 (en) | Identifying large database transactions |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210601 |