CN111539728A - 基于计算机软件实现匿名化身份验证的方法 - Google Patents
基于计算机软件实现匿名化身份验证的方法 Download PDFInfo
- Publication number
- CN111539728A CN111539728A CN202010358530.9A CN202010358530A CN111539728A CN 111539728 A CN111539728 A CN 111539728A CN 202010358530 A CN202010358530 A CN 202010358530A CN 111539728 A CN111539728 A CN 111539728A
- Authority
- CN
- China
- Prior art keywords
- data
- value
- hash
- identity verification
- data provider
- 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
- 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
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
Abstract
本发明涉及一种基于计算机软件实现匿名化身份验证的方法,包括以下步骤:数据使用方通过哈希算法对查询数据进行哈希处理;数据提供方在数据库中根据哈希字符串进行模糊查询;数据使用方生成随机掩码r,使用RSA公钥进行加密;数据提供方通过私钥d对此值盲签名,并将其传输至数据使用方;数据使用方去除随机掩码r;数据使用方再次进行哈希处理;判断是否在数据提供方返回的sid列表中,如果是,则身份核验通过;否则,身份核验不确定。采用了本发明的基于计算机软件实现匿名化身份验证的方法,保护了身份信息和敏感信息,查询方和被查询方的数据都不会泄露给对方。本发明保证了数据使用方调用数据提供方的身份核验服务时,数据使用方不暴露的身份数据给数据提供方。
Description
技术领域
本发明涉及数据处理领域,尤其涉及身份验证领域,具体是指一种基于计算机软件实现匿名化身份验证的方法。
背景技术
身份信息有几种,一类是二要素信息,包涵身份证、姓名;一类是三要素信息,包涵身份证、姓名和银行卡。在众多的业务场景中,如注册、支付、贷款等都需要核实用户身份的真实性。这些信息都是及其敏感信息,无论是查询方还是被查询方,都要避免数据的泄露给对方。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种满足安全性高、操作简便、适用范围较为广泛的基于计算机软件实现匿名化身份验证的方法。
为了实现上述目的,本发明的基于计算机软件实现匿名化身份验证的方法如下:
该基于计算机软件实现匿名化身份验证的方法,其主要特点是,所述的方法包括以下步骤:
(1)数据使用方通过哈希算法对查询数据进行哈希处理,取前几位字符作为分片查询值;
(2)数据提供方根据查询的分片,在数据库中根据哈希字符串进行模糊查询,并返回该分片下所有的sid列表至数据使用方;
(3)数据使用方生成随机掩码r,使用公钥进行加密,将需要查询的id和name的哈希串转为大整型数据hash_id_value,将re×hash_id_value的值传输至数据提供方;
(4)数据提供方通过私钥d对此值盲签名,获取值r×(hash_id_valued),并将其传输至数据使用方;
(5)数据使用方获取值r×(hash_id_valued),去除随机掩码r,得到值hash_id_valued;
(6)数据使用方再次进行哈希处理,得到值H[hash_id_valued],即为需要查询身份数据的sid值;
(7)判断再次哈希处理后的值是否在数据提供方返回的sid列表中,如果是,则身份核验通过;否则,身份核验不确定。
较佳地,所述的步骤(2)中还包括以下步骤:
(2.1)判断数据提供方是否在数据库中查询到结果,如果是,则继续步骤(3);否则,身份核验结果未命中。
较佳地,所述的步骤(1)中的数据提供方持有私钥d,数据使用方持有公钥e。
较佳地,所述的方法还包括对数据提供方数据进行处理的步骤,具体包括以下步骤:
(1-1)在数据提供方的数据表中增加HASH_ID字段列表和SID字段列表;
(1-2)通过哈希算法将数据表信息按一定的顺序编排,进行哈希处理,将哈希处理后的字符串保存至HASH_ID字段中;
(1-3)将hash_id转为大整型数值hash_id_value,使用私钥匙d对值hash_id_value进行签名,得到一个大整型数值hash_id_valued,对该值通过哈希算法进行处理,得到字符串,并将处理后的字符串存储至SID字段中。
较佳地,所述的数据提供方包含二要素数据表,所述的二要素数据表包含身份证信息ID和姓名信息NAME。
较佳地,所述的数据提供方还包含三要素数据表,所述的三要素数据表包含身份证信息ID、姓名信息NAME和银行卡信息CARD。
较佳地,所述的方法中的数据提供方包含两个服务接口check和blind_sign,所述的服务接口check用于查询命中的sid列表,所述的服务接口blind_sign用于对数据进行盲签名。
采用了本发明的基于计算机软件实现匿名化身份验证的方法,保护了身份信息和敏感信息,查询方和被查询方的数据都不会泄露给对方。本发明保证了数据使用方调用数据提供方的身份核验服务时,数据使用方不暴露的身份数据给数据提供方,数据提供方也获取不到甲方查询的数据,能广泛应用于数据安全领域,适用范围广泛。
附图说明
图1为本发明的基于计算机软件实现匿名化身份验证的方法的流程图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
本发明的基于计算机软件实现匿名化身份验证的方法,其中包括以下步骤:
(1)数据使用方通过哈希算法对查询数据进行哈希处理,取前几位字符作为分片查询值;
(2)数据提供方根据查询的分片,在数据库中根据哈希字符串进行模糊查询,并返回该分片下所有的sid列表至数据使用方;
(2.1)判断数据提供方是否在数据库中查询到结果,如果是,则继续步骤(3);否则,身份核验结果未命中;
(3)数据使用方生成随机掩码r,使用公钥进行加密,将需要查询的id和name的哈希串转为大整型数据hash_id_value,将re×hash_id_value的值传输至数据提供方;
(4)数据提供方通过私钥d对此值盲签名,获取值r×(hash_id_valued),并将其传输至数据使用方;
(5)数据使用方获取值r×(hash_id_valued),去除随机掩码r,得到值hash_id_valued;
(6)数据使用方再次进行哈希处理,得到值H[hash_id_valued],即为需要查询身份数据的sid值;
(7)判断再次哈希处理后的值是否在数据提供方返回的sid列表中,如果是,则身份核验通过;否则,身份核验不确定。
作为本发明的优选实施方式,所述的步骤(1)中的数据提供方持有私钥d,数据使用方持有公钥e。
所述的方法还包括对数据提供方数据进行处理的步骤,具体包括以下步骤:
(1-1)在数据提供方的数据表中增加HASH_ID字段列表和SID字段列表;
(1-2)通过哈希算法将数据表信息按一定的顺序编排,进行哈希处理,将哈希处理后的字符串保存至HASH_ID字段中;
(1-3)将hash_id转为大整型数值hash_id_value,使用私钥匙d对值hash_id_value进行签名,得到一个大整型数值hash_id_valued,对该值通过哈希算法进行处理,得到字符串,并将处理后的字符串存储至SID字段中。
作为本发明的优选实施方式,所述的数据提供方包含二要素数据表,所述的二要素数据表包含身份证信息ID和姓名信息NAME。
作为本发明的优选实施方式,所述的数据提供方还包含三要素数据表,所述的三要素数据表包含身份证信息ID、姓名信息NAME和银行卡信息CARD。
作为本发明的优选实施方式,所述的方法中的数据提供方包含两个服务接口check和blind_sign,所述的服务接口check用于查询命中的sid列表,所述的服务接口blind_sign用于对数据进行盲签名。
本发明的具体实施方式中,数据使用方,简称甲方,对核实客户身份有需要的一方,如金融公司、电子商务平台、会员服务、教育、旅游、保险等商业机构等。数据提供方,简称乙方,即拥有身份数据一方,如运营商、政务等组织机构。本发明要保证甲方调用乙方身份核验服务时,甲方不暴露的身份数据给乙方,乙方也获取不到甲方查询的数据。
一、基础环境
乙方生成一对RSA公、私钥匙对,乙方拥有私钥:(d,N),简称为d;把公钥给甲方:(e,N),简称e。
二、乙方数据处理
乙方存储了原始的二要素数据表如T1:ID(身份证)、NAME(姓名),如:
ID | NAME |
1234**** | 张三 |
5678**** | 李四 |
改造过程:
1、在原始表T1中增加2列HASH_ID、SID
2、选择一种哈希算法,如MD5、SHA256等,H表示hash算法
3、使用哈希算法,把身份信息按一定的顺序编排,如id+name或name+id都可,进行哈希,把哈希后字符串(即hash_id)保存到HASH_ID字段中
4、把hash_id转为大整型数值hash_id_value,再使用私钥匙d对hash_id_value进行签名,得到一个大整型数值(hash_id_valued),再对此进行一次哈希算法,得到字符串,存储到SID中
改造后的T1表,如:
ID | NAME | HASH_ID | SID |
1234**** | 张三 | H(ID+NAME)字符串 | H[hash_id_value<sup>d</sup>] |
5678**** | 李四 | H(ID+NAME)字符串 | H[hash_id_value<sup>d</sup>] |
以MD5为例,HASH后的ID,均匀分布在理论空间3236上(即1.5e+54),使用SHA256空间更大,原理一样。
对于三要素或四要素的身份核验,解决方案把三要素id、name、card或四要素id、name、mobile、card信息按一定顺序编排,再选择一种哈希算法,其他过程一样。本发明仅对二要素过程进行说明。
三、本发明的基于计算机软件实现匿名化身份验证的方法,如图1所示,其中,包括以下步骤:
1、甲方在服务时,不能直接使用id、name来查询,而是采用和乙方使用同样的哈希算法,对查询数据进行哈希处理,即:HASH(id+name),得到的结果再取前面的几个字符作为分片查询值,如8个字符;
2、乙方根据查询的分片,在库中根据哈希字符串,进行模糊查询,返回该片下所有的sid列表;
3、甲方生成一个随机掩码r,是一个大整型数值,使用公钥对e进行加密得到值re,再把要查询的id、name的哈希串转为大整型hash_id_value,把re×hash_id_value请求给乙方;
4、乙方收到re×hash_id_value,使用私钥d对此值盲签名,得到[re×hash_id_value]d,即r×(hash_id_valued),返回给甲方,此时乙方对随机掩码r和hash_id_value也是未知的;
5、甲方获取到值后,即r×[hash_id_valued],去除在第3步设置的随机掩码r,得到hash_id_valued;
6、甲方对去除随机掩码后的值,再进行一次哈希H[hash_id_valued],这个值就是要查询身份数据的sid值,对比在第二步中乙方返回的sid列表是否在其中;
在此过程中,乙方需要2个服务接口:
四、结果输出
乙方的身份库存在不完整的情况,甲方获取到数据后,有3种可能:
1、在第二步没有任何值命中,即为空值,结果为:未命中;
2、在第六步得到的sid,在第二步sid中存在,结果为:身份核验通过;
3、第六步得到的sid,在第二步sid中不存在,结果为:不确定;
甲方业务根据结果来判断和使用。
采用了本发明的基于计算机软件实现匿名化身份验证的方法,保护了身份信息和敏感信息,查询方和被查询方的数据都不会泄露给对方。本发明保证了数据使用方调用数据提供方的身份核验服务时,数据使用方不暴露的身份数据给数据提供方,数据提供方也获取不到甲方查询的数据,能广泛应用于数据安全领域,适用范围广泛。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
Claims (7)
1.一种基于计算机软件实现匿名化身份验证的方法,其特征在于,所述的方法包括以下步骤:
(1)数据使用方通过哈希算法对查询数据进行哈希处理,取前几位字符作为分片查询值;
(2)数据提供方根据查询的分片,在数据库中根据哈希字符串进行模糊查询,并返回该分片下所有的sid列表至数据使用方;
(3)数据使用方生成随机掩码r,使用公钥进行加密,将需要查询的id和name的哈希串转为大整型数据hash_id_value,将re×hash_id_value的值传输至数据提供方;
(4)数据提供方通过私钥d对此值盲签名,获取值r×(hash_id_valued),并将其传输至数据使用方;
(5)数据使用方获取值r×(hash_id_valued),去除随机掩码r,得到值hash_id_valued;
(6)数据使用方再次进行哈希处理,得到值H[hash_id_valued],即为需要查询身份数据的sid值;
(7)判断再次哈希处理后的值是否在数据提供方返回的sid列表中,如果是,则身份核验通过;否则,身份核验不确定。
2.根据权利要求1所述的基于计算机软件实现匿名化身份验证的方法,其特征在于,所述的步骤(2)中还包括以下步骤:
(2.1)判断数据提供方是否在数据库中查询到结果,如果是,则继续步骤(3);否则,身份核验结果未命中。
3.根据权利要求1所述的基于计算机软件实现匿名化身份验证的方法,其特征在于,所述的步骤(1)中的数据提供方持有私钥d,数据使用方持有公钥e。
4.根据权利要求1所述的基于计算机软件实现匿名化身份验证的方法,其特征在于,所述的方法还包括对数据提供方数据进行处理的步骤,具体包括以下步骤:
(1-1)在数据提供方的数据表中增加HASH_ID字段列表和SID字段列表;
(1-2)通过哈希算法将数据表信息按一定的顺序编排,进行哈希处理,将哈希处理后的字符串保存至HASH_ID字段中;
(1-3)将hash_id转为大整型数值hash_id_value,使用私钥匙d对值hash_id_value进行签名,得到一个大整型数值hash_id_valued,对该值通过哈希算法进行处理,得到字符串,并将处理后的字符串存储至SID字段中。
5.根据权利要求4所述的基于计算机软件实现匿名化身份验证的方法,其特征在于,所述的数据提供方包含二要素数据表,所述的二要素数据表包含身份证信息ID和姓名信息NAME。
6.根据权利要求4所述的基于计算机软件实现匿名化身份验证的方法,其特征在于,所述的数据提供方还包含三要素数据表,所述的三要素数据表包含身份证信息ID、姓名信息NAME和银行卡信息CARD。
7.根据权利要求1所述的基于计算机软件实现匿名化身份验证的方法,其特征在于,所述的方法中的数据提供方包含两个服务接口check和blind_sign,所述的服务接口check用于查询命中的sid列表,所述的服务接口blind_sign用于对数据进行盲签名。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010358530.9A CN111539728B (zh) | 2020-04-29 | 2020-04-29 | 基于计算机软件实现匿名化身份验证的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010358530.9A CN111539728B (zh) | 2020-04-29 | 2020-04-29 | 基于计算机软件实现匿名化身份验证的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111539728A true CN111539728A (zh) | 2020-08-14 |
CN111539728B CN111539728B (zh) | 2021-05-28 |
Family
ID=71975296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010358530.9A Active CN111539728B (zh) | 2020-04-29 | 2020-04-29 | 基于计算机软件实现匿名化身份验证的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111539728B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112039891A (zh) * | 2020-08-31 | 2020-12-04 | 深圳前海微众银行股份有限公司 | 一种区块链共享异常数据的方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140012739A1 (en) * | 2012-07-05 | 2014-01-09 | Index Systems, Inc. | Electronic commerce network with transactions analytics |
CN105429941A (zh) * | 2015-10-27 | 2016-03-23 | 西安电子科技大学 | 多接收者身份匿名签密方法 |
CN110225023A (zh) * | 2019-06-06 | 2019-09-10 | 湖南大学 | 一种可追踪的匿名认证方法和系统 |
CN110266499A (zh) * | 2019-07-08 | 2019-09-20 | 西南交通大学 | 一种基于盲签名的无线体域网匿名认证与密钥协商方法 |
-
2020
- 2020-04-29 CN CN202010358530.9A patent/CN111539728B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140012739A1 (en) * | 2012-07-05 | 2014-01-09 | Index Systems, Inc. | Electronic commerce network with transactions analytics |
CN105429941A (zh) * | 2015-10-27 | 2016-03-23 | 西安电子科技大学 | 多接收者身份匿名签密方法 |
CN110225023A (zh) * | 2019-06-06 | 2019-09-10 | 湖南大学 | 一种可追踪的匿名认证方法和系统 |
CN110266499A (zh) * | 2019-07-08 | 2019-09-20 | 西南交通大学 | 一种基于盲签名的无线体域网匿名认证与密钥协商方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112039891A (zh) * | 2020-08-31 | 2020-12-04 | 深圳前海微众银行股份有限公司 | 一种区块链共享异常数据的方法及装置 |
CN112039891B (zh) * | 2020-08-31 | 2024-04-09 | 深圳前海微众银行股份有限公司 | 一种区块链共享异常数据的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111539728B (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210152357A1 (en) | Method and device for identity verification | |
US10382965B2 (en) | Identity verification using computer-implemented decentralized ledger | |
US8006084B2 (en) | Apparatus and method for managing plurality of certificates | |
CN107342867A (zh) | 签名验签方法和装置 | |
CN111770199B (zh) | 一种信息共享方法、装置及设备 | |
US11128479B2 (en) | Method and apparatus for verification of social media information | |
CN110209691B (zh) | 一种数据处理方法及装置 | |
US11621851B2 (en) | Block chain proof for identification | |
CN115544579B (zh) | 一种双随机数据混淆查询方法、装置和系统 | |
CN110598433A (zh) | 基于区块链的防伪信息处理方法、装置 | |
CN115080537B (zh) | 多租户的数据分库方法、装置、存储介质、芯片装置及电子设备 | |
CN112328486A (zh) | 接口自动化测试方法、装置、计算机设备及存储介质 | |
CN111539728B (zh) | 基于计算机软件实现匿名化身份验证的方法 | |
CN114065156A (zh) | 基于零知识证明的数据处理方法、系统、终端及存储介质 | |
WO2022252880A1 (zh) | 数据处理方法及其装置、系统、存储介质 | |
CN113254979B (zh) | 一种保护业务隐私的可信审查系统及计算机存储介质 | |
WO2023172190A1 (en) | Method and apparatus for accessing data in a plurality of machine readable medium | |
CN114614972A (zh) | 数据对齐方法、系统、电子装置及存储介质 | |
WO2006036699A2 (en) | Concept based message security system | |
CN114793156B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN116090020B (zh) | 基于区块链的信息存储方法和装置、电子设备和存储介质 | |
TWI765538B (zh) | 資料查詢方法、區塊鏈系統、共用裝置及查詢裝置 | |
US11682021B2 (en) | Enhanced security for transaction requests utilizing automatic source identification | |
CN117407907A (zh) | 数据查询方法、装置、设备、存储介质及计算机产品 | |
CN117371023A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |