CN106682528B - 区块链加密检索方法 - Google Patents
区块链加密检索方法 Download PDFInfo
- Publication number
- CN106682528B CN106682528B CN201611269078.9A CN201611269078A CN106682528B CN 106682528 B CN106682528 B CN 106682528B CN 201611269078 A CN201611269078 A CN 201611269078A CN 106682528 B CN106682528 B CN 106682528B
- Authority
- CN
- China
- Prior art keywords
- hash
- key
- user
- block chain
- value
- 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.)
- Active
Links
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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
Abstract
区块链加密检索方法,有权查询的用户设置一个检索码,将需要检索的要素和检索码串联,并做哈希运算,将哈希运算的结果作为key,value里放需要查询的内容,用对称密钥加密,对称密钥用有权限用户的公钥加密,查询时,用户有上述方法算出key,可查到value。key和value作为交易内容算出哈希值hash上传到区块链。
Description
技术领域
本发明涉及区块链上的隐私保护及加密状态下的检索。
背景技术
目前大多数区块链用零知识证明或同态加密效率不高,需要一种高效的在加密情况下的检索方式。
发明内容
本发明的目的是设计一种方案能够使区块链上的数据在加密的情况下可以被迅速的检索。
本方案使只有知道检索码的用户才能检索相关数据,并且可以分级管理。
本发明所采用的技术方案是:区块链加密检索方法,用户甲需要在区块链上存数据,包括检索的关键字和内容,用户甲设置一个检索码c_i,用于用户甲自己查看,或授权给乙用户查看,步骤如下:
步骤Sl,将需要检索的关键字key和检索码c_i串联,并做哈希运算,算出哈希值key_c_i,把与关键字key对应的内容value用对称密钥加密,计算内容的哈希值Hash(内容),用甲公钥加密对称密钥,用乙公钥加密对称密钥;
步骤S2,将步骤Sl获得的所有数据进行哈希运算,得出交易哈希值hash_c_i,一同写入区块链;
步骤S3,区块链上的数据下载解析分离出key_c_i和value_c_i后存入数据库;
步骤日,甲或乙知道检索码c_i,需要检索某关键字key,计算出关键字key加检索码c_i的哈
希值key_c_i;
步骤S5,在数据库中用key_c_i检索出value_c_i,将两者串联哈希后,得出交易哈希值hash_c_i,可在区块链上找到对应的Tx_c_i,找到key_c_i和value_c_i,可验证数据是否在区块链上;
步骤S6,甲或乙用自己的私钥可以解开各自公钥加密的对称密钥,用对称密钥解密加密的内容value,内容value进行哈希后和区块链上的Hash(内容)对比是否一致:
步骤S7,若想告诉其他用户,可以告诉交易哈希值hash_c_i、内容、Hash(内容),其他用户可以在区块链上直接校验内容是否是甲保存到区块链上的。
用户可以分小组,管理一小组用户的小组长可以知道其下管理的所有用户的检索码,小组长可以检索到全小组的所有数据,多个小组还可以组成大组,每个大组长可以知道其下所有小组用户的检索码。
用户的检索码用小组长的公钥加密,用大组长的公钥加密,存于value中,key用小组长的检索码与用户的特征值如证件号串联哈希后获得的hash值表示,这里大组长因为知道小组长的检索码,所以也能算出key,获得value里的数据。
用户的检索码可以由小组长的检索码加用户特征值串联哈希运算后得出的哈希值hash_id来代替,用户的特征值id可以是用户自己知道并不会忘记的一些信息,小组长告知用户检索码hash_id,用户可以用检索码hash_id查询自己的数据。
附图说明
图1是区块链上加密检索方案原理的说明图;
图2是区块链航空意外险的加密检索方案的说明图。
具体实施方式
实施例1,参照说明书附图1,本例说明区块链上加密检索方案的实现原理;用户甲需要在区块链上存数据,包括检索的关键字和内容,用户设置一个检索码c_i,用于用户甲自己查看,或授权给乙用户查看,步骤如下:
步骤Sl,将需要检索的关键字key和检索码c_i串联,并做哈希运算,算出哈希值key_c_i,把与关键字key对应的内容value用对称密钥加密,计算内容的哈希值Hash(内容),用甲公钥加密对称密钥,用乙公钥加密对称密钥;
步骤S2,将步骤Sl获得的所有数据进行哈希运算,得出交易哈希值hash_c_i,一同写入区块链;
步骤S3,区块链上的数据下载解析分离出key_c_i和value_c_i后存入数据库;
步骤S4,甲或乙知道检索码c_i,需要检索某关键字key,计算出关键字key加检索码c_i的哈
希值key_c_i;
步骤S5,在数据库中用key_c_i检索出value_c_i,将两者串联哈希后,得出交易哈希值hash_c_i,可在区块链上找到对应的Tx_c_i,找到key_c_i和value_c_i,可验证数据是否在区块链上;
步骤S6,甲或乙用自己的私钥可以解开各自公钥加密的对称密钥,用对称密钥解密加密的内容key,内容key进行哈希后和区块链上的Hash(内容)对比是否一致:
步骤S7,若想告诉其他用户,可以告诉交易哈希值hash_c_i、内容、Hash(内容),其他用户可以在区块链上直接校验内容是否是甲保存到区块链上的。
实施例2,参照说明书附图2,本例说明保险保单在区块链上的加密检索方案
监管部门、承保公司、代理公司、乘客是分级权限管理,监管部分可以看所有的数据,承保公司可以看自己下属的代理公司及乘客的信息,代理公司可以查询下属乘客的信息,乘客只能看自己的信息,代理公司的客服若不知道乘客的信息也不能查询乘客的信息:
根据信息查询要求进行加密,承保企业或代理公司将信息加密后,在经私钥签名后上传,在区块链和数据库中建立加密索引。
监管方,10家承保公司拥有不对称公私钥,用于加密的检索码,私钥和检索码各自保密保管。
每家承保公司的代理公司都有公私钥及检索码,检索码的哈希值用作加密对比检索。
每个代理公司将自己的检索码和用户的特征值ID号串联哈希后,生成用户的检索码,监管部门、承保公司、代理公司都可以获取下属相应乘客的检索码,可以检索到加密的用户信息,乘客可以向代理公司索要自己的检索码,用自己的检索码查询相应的信息,并可校验真实性。
以下是信息录入和查询的方案:
1、录入航班号,可由监管部分审批后提交,value里可保存参加承保的公司
Key_ab1234=Hash(航班号ab1234)
Value用监管公钥或承保公司加密对称密钥,密钥加密承保及代理公司名称及检索码的hash值。如果每日检索码都一致,下面第3项可以不需要。
2、录入每天的航班号
Key_ab1234_20161212=Hash(航班号ab1234+日期20161212)
Value用监管或承保公钥加密对称密钥,密钥力口密承保及代理的几家公司名称及检索码的hash值,若需要可每天用不同的检索码,保密性更好,也可以设置一段时间内有效。
3、每日各航班的购买保险的乘客及保单号,承保公司、代理公司和监管可查
Key_ab1234_20161212_za=Hash(航班号ab1234+日期20161212+众安保险代理检索码的ha s h+第几个乘客)
Value姓名+身份证+保单号对称密钥加密后保存,用众安和监管的公钥加密密钥,一同保存。
4、用乘客作为索引记录保单号,承保公司、代理公司和监管可查。
Key_Name_ID_za=Hash(姓名+身份证+年(2016或加12月)+保险代理公司的检索码,)这个Key可重复,但保单号不能重复。
Value保单号购买时间,对称密钥加密后保存,用承保公司和代理公司和监管的公钥加密密钥,一同保存。
这里可以查询某乘客在某保险代理下的2016年某月的所有保单,key可以相同,但是保单号一定不同。
5、由代理公司帮乘客查询,代理公司用自己的检索码加上乘客的信息,如乘客姓名、证件名称、证件号码串联后进行哈希运算得出哈希值作为乘客的检索码。
Hash(乘客检索码+2016年+当年第几个保单,)由代理公司提供,承保公司上传,给乘客设的检索码,用于校验数据是否在区块链上,仅相关的代理公司、承保公司、监管、乘客本人知道。算作出Hash为查询的Key。Value为用户的保单信息内容。
这里乘客可以用乘客检索码获取2016年的第几个保单或全部保单。
Claims (4)
1.区块链加密检索方法,其特征在于,用户甲需要在区块链上存数据,所述数据包括检索的关键字和内容,用户甲设置一个检索码c_i,用于用户甲自己查看,或授权给乙用户查看,步骤如下;
步骤S1,将需要检索的关键字和检索码c_i串联,并做哈希运算,算出哈希值key_c_i,把与关键字对应的内容value用对称密钥加密,计算内容的哈希值Hash(内容),用甲公钥加密对称密钥,用乙公钥加密对称密钥,得到包括对称密钥加密的内容、内容的哈希值、甲公钥加密的对称密钥、乙公钥加密的对称密钥的value_c_i;
步骤S2,将步骤S1获得的key_c_i与value_c_i串联并进行哈希运算,得出交易哈希值hash_c_i,一同写入区块链;
步骤S3,区块链上的数据下载解析分离出key_c_i和value_c_i后存入数据库;
步骤S4,甲或乙知道检索码c_i,需要检索某关键字,计算出关键字加检索码c_i的哈希值key_c_i;
步骤S5,在数据库中用key_c_i检索出value_c_i,将两者串联哈希后,得出交易哈希值hash_c_i,可在区块链上找到对应的Tx_c_i,找到key_c_i和value_c_i,可验证数据是否在区块链上;
步骤S6,甲或乙用自己的私钥可以解开各自公钥加密的对称密钥,用对称密钥解密加密的内容,内容进行哈希后和区块链上的Hash(内容)对比是否一致;
步骤S7,若想告诉其他用户,可以告诉交易哈希值hash_c_i、内容、Hash(内容),其他用户可以在区块链上直接校验内容是否是甲保存到区块链上的。
2.根据权利要求1所述区块链加密检索方法,其特征在于,用户可以分小组,管理一小组用户的小组长可以知道其下管理的所有用户的检索码,小组长可以检索到全小组的所有数据,多个小组还可以组成大组,每个大组长可以知道其下所有小组用户的检索码。
3.根据权利要求1或2所述区块链加密检索方法,其特征在于,用户的检索码用小组长的公钥加密,用大组长的公钥加密,存于value中,key用小组长的检索码与用户的特征值串联哈希后获得的hash值表示,这里大组长因为知道小组长的检索码,所以也能算出key,获得value里的数据。
4.根据权利要求1所述区块链加密检索方法,其特征在于,用户的检索码可以由小组长的检索码加用户特征值串联哈希运算后得出的哈希值hash_id来代替,用户的特征值id可以是用户自己知道并不会忘记的一些信息,小组长告知用户所述哈希值hash_id代替的检索码,用户可以用所代替的检索码查询自己的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611269078.9A CN106682528B (zh) | 2016-12-31 | 2016-12-31 | 区块链加密检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611269078.9A CN106682528B (zh) | 2016-12-31 | 2016-12-31 | 区块链加密检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106682528A CN106682528A (zh) | 2017-05-17 |
CN106682528B true CN106682528B (zh) | 2019-06-11 |
Family
ID=58848954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611269078.9A Active CN106682528B (zh) | 2016-12-31 | 2016-12-31 | 区块链加密检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106682528B (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11195177B1 (en) | 2015-08-21 | 2021-12-07 | United Services Automobile Association (Usaa) | Distributed ledger systems for tracking recurring transaction authorizations |
US11188907B1 (en) | 2015-08-21 | 2021-11-30 | United Services Automobile Association (Usaa) | ACH authorization validation using public blockchains |
US10949856B1 (en) | 2015-11-17 | 2021-03-16 | United Services Automobile Association (Usaa) | Systems and methods for adaptive learning to replicate peak performance of human decision making |
US11361286B1 (en) | 2015-11-20 | 2022-06-14 | United Services Automobile Association (Usaa) | Identifying negotiable instrument fraud using distributed ledger systems |
US10423938B1 (en) | 2015-11-20 | 2019-09-24 | United Services Automobile Association | Identifying negotiable instrument fraud using distributed ledger systems |
US10833843B1 (en) | 2015-12-03 | 2020-11-10 | United Services Automobile Association (USAA0 | Managing blockchain access |
CN107239954B (zh) * | 2017-06-07 | 2021-01-22 | 北京汇通金财信息科技有限公司 | 一种提高区块产生速度的方法及装置 |
GB201709760D0 (en) | 2017-06-19 | 2017-08-02 | Nchain Holdings Ltd | Computer-Implemented system and method |
CN109462472A (zh) * | 2017-09-06 | 2019-03-12 | 阿里巴巴集团控股有限公司 | 数据加密和解密的方法、装置和系统 |
CN108052620B (zh) * | 2017-12-15 | 2021-02-12 | 泰康保险集团股份有限公司 | 数据状态的存储系统、区块链的节点数据处理系统和方法 |
CN110086605A (zh) * | 2018-01-26 | 2019-08-02 | 北京数盾信息科技有限公司 | 一种区块链应用中链上数据的加密保护及密文检索方法 |
CN108366115A (zh) * | 2018-02-08 | 2018-08-03 | 深圳市轱辘车联数据技术有限公司 | 一种车辆obd接头管理方法、系统及相关装置 |
CN108647968A (zh) | 2018-05-10 | 2018-10-12 | 阿里巴巴集团控股有限公司 | 一种区块链数据处理方法、装置、处理设备及系统 |
CN109242674A (zh) * | 2018-06-28 | 2019-01-18 | 平安科技(深圳)有限公司 | 飞机延误补偿方法及系统、服务器和计算机可读存储介质 |
CN108962343A (zh) * | 2018-07-04 | 2018-12-07 | 南京百市通数字科技有限公司 | 一种基于区块链技术的青少年视光数据追踪方法 |
CN110708269B (zh) * | 2018-07-10 | 2022-04-12 | 北京京东尚科信息技术有限公司 | 区块链数据传输方法、区块链节点和计算机可读存储介质 |
CN109194708B (zh) * | 2018-07-24 | 2021-07-13 | 哈尔滨工程大学 | 一种基于区块链技术的分布式存储系统及其身份认证方法 |
CN109067524B (zh) * | 2018-07-31 | 2020-07-10 | 杭州复杂美科技有限公司 | 一种公私钥对生成方法及系统 |
CN109510818B (zh) * | 2018-10-29 | 2021-08-17 | 梁伟 | 区块链的数据传输系统、方法、装置、设备及存储介质 |
CN111478764A (zh) * | 2019-01-24 | 2020-07-31 | 北京京东尚科信息技术有限公司 | 区块链网络中的数据处理方法、节点及存储介质 |
CN110008738B (zh) * | 2019-02-21 | 2021-06-25 | 网易(杭州)网络有限公司 | 用于区块链合约数据的缓存方法、装置、介质和计算设备 |
CN110232080B (zh) * | 2019-05-23 | 2021-06-29 | 智慧谷(厦门)物联科技有限公司 | 一种基于区块链的快速检索方法 |
CN110474893B (zh) * | 2019-07-30 | 2021-10-08 | 同济大学 | 一种异构跨信任域密态数据安全分享方法及系统 |
CN110737905B (zh) * | 2019-09-19 | 2021-11-23 | 深圳市先河系统技术有限公司 | 数据授权方法、数据授权装置及计算机存储介质 |
US11580240B2 (en) | 2020-03-24 | 2023-02-14 | Kyndryl, Inc. | Protecting sensitive data |
CN112100234B (zh) * | 2020-08-12 | 2021-09-10 | 北京大学 | 基于随机共识的图式账本的内容寻址方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101931947A (zh) * | 2010-07-28 | 2010-12-29 | 南京航空航天大学 | 基于可搜索密文的wsn数据安全处理方法 |
CN102176709A (zh) * | 2010-12-13 | 2011-09-07 | 北京交通大学 | 一种带隐私保护的数据共享与发布的方法和装置 |
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
CN106096444A (zh) * | 2016-06-12 | 2016-11-09 | 杨鹏 | 一种基于生物信息的身份识别与社会信息记录方法及系统 |
KR101680260B1 (ko) * | 2015-12-14 | 2016-11-29 | 주식회사 코인플러그 | 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 |
-
2016
- 2016-12-31 CN CN201611269078.9A patent/CN106682528B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101931947A (zh) * | 2010-07-28 | 2010-12-29 | 南京航空航天大学 | 基于可搜索密文的wsn数据安全处理方法 |
CN102176709A (zh) * | 2010-12-13 | 2011-09-07 | 北京交通大学 | 一种带隐私保护的数据共享与发布的方法和装置 |
KR101680260B1 (ko) * | 2015-12-14 | 2016-11-29 | 주식회사 코인플러그 | 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 |
CN105743888A (zh) * | 2016-01-22 | 2016-07-06 | 河南理工大学 | 一种基于关键字搜索的代理重加密方案 |
CN106096444A (zh) * | 2016-06-12 | 2016-11-09 | 杨鹏 | 一种基于生物信息的身份识别与社会信息记录方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106682528A (zh) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106682528B (zh) | 区块链加密检索方法 | |
CN109194708B (zh) | 一种基于区块链技术的分布式存储系统及其身份认证方法 | |
US11483134B2 (en) | One-time-pad encryption system and methods adapted to block-chain transactions | |
US11652608B2 (en) | System and method to protect sensitive information via distributed trust | |
EP3195106B1 (en) | Secure storage and access to sensitive data | |
CN109074434A (zh) | 使用分布式散列表和点对点分布式分类账验证数字资产所有权的方法和系统 | |
CN109241753A (zh) | 一种基于区块链的数据共享方法和系统 | |
US20080310619A1 (en) | Process of Encryption and Operational Control of Tagged Data Elements | |
US20110078779A1 (en) | Anonymous Preservation of a Relationship and Its Application in Account System Management | |
Liu et al. | SMC: A practical schema for privacy-preserved data sharing over distributed data streams | |
CN104680076A (zh) | 用于使受保护健康信息匿名化和聚集的系统 | |
GB2484382A (en) | Generating a test database for testing applications by applying format-preserving encryption to a production database | |
US20180219836A1 (en) | Distributed Data System | |
CN112287392B (zh) | 一种具备保护隐私信息的智能合约实现方法及系统 | |
KR102342021B1 (ko) | 속성을 기반으로 한 블록체인 네트워크에서의 접근 권한 제어 시스템 및 접근 권한 제어 방법 | |
CN111885154B (zh) | 基于证书链的分布式数据安全共享方法及系统 | |
Liang | Identity verification and management of electronic health records with blockchain technology | |
Thummavet et al. | A novel personal health record system for handling emergency situations | |
Shahaab et al. | Managing gender change information on immutable blockchain in context of GDPR | |
Evfimievski et al. | Privacy-preserving data mining | |
Ulbricht et al. | CoMaFeDS: Consent management for federated data sources | |
Malin et al. | Confidentiality preserving audits of electronic medical record access | |
Guesdon et al. | Securizing data linkage in french public statistics | |
US20230370252A1 (en) | Service provision system | |
CN104618419A (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 |