CN109508411A - 区块链快速检索方法 - Google Patents
区块链快速检索方法 Download PDFInfo
- Publication number
- CN109508411A CN109508411A CN201811264831.4A CN201811264831A CN109508411A CN 109508411 A CN109508411 A CN 109508411A CN 201811264831 A CN201811264831 A CN 201811264831A CN 109508411 A CN109508411 A CN 109508411A
- Authority
- CN
- China
- Prior art keywords
- block
- address
- file
- name
- retrieving
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种区块链快速检索方法,包括以下步骤:S1:区块链***进行区块存储时,将该区块的区块名、该区块的所有交易参与者对应的地址存入区块名文件中;S2:当输入指定的一个或多个交易参与者姓名时,通过检索用户文件,分别获取各交易参与者的地址;S3:通过所述地址检索所述区块名文件,获取一个与输入条件匹配的区块名列表;S4:区块链***逐一解析所述列表中对应的区块,直至检索出目标区块。本发明通过扩展区块存储的处理过程、增加区块名文件,建立了一种基于交易参与者地址的、类似于关系数据库的表索引机制,极大地提高了区块检索效率,扩展了区块链的应用领域。
Description
技术领域
本发明涉及区块链技术领域,特别是涉及一种区块链快速检索方法。
背景技术
支撑“比特币”交易的区块链中,区块链的检索只能从“链尾”向“链首”进行顺序检索,当链中区块数量非常大时,检索到一个早期的区块(接近链首的区块)的时间耗费将是非常可观的,而区块检索是区块链提供相关技术服务的基础,现有的顺序检索方法导致区块检索时间的不均衡性和效率低下,限制了区块链技术的推广应用。
因此亟需提供一种新型的区块链检索方法来解决上述问题。
发明内容
本发明所要解决的技术问题是提供一种区块链快速检索方法,能够极大地提升区块链检索的效率,扩展区块链技术的推广应用。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种区块链快速检索方法,包括以下步骤:
S1:区块链***进行区块存储时,将该区块的区块名、该区块的所有交易参与者对应的地址存入区块名文件中;
S2:当输入指定的一个或多个交易参与者姓名时,通过检索用户文件,分别获取各交易参与者的地址;
S3:通过所述地址检索所述区块名文件,获取一个与输入条件匹配的区块名列表;
S4:区块链***逐一解析所述列表中对应的区块,直至检索出目标区块。
在本发明一个较佳实施例中,所述区块名文件的存储结构依次为区块名、分隔符、地址、分隔符、本条记录按顺序组成字符串的HASH256值、结束符。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种区块名文件,用于所述区块链快速检索方法中,包括
区块名,代表该区块的文件名称;
至少一个地址,每个地址代表本区块一个交易参与者的交易地址;
本条记录按顺序组成字符串的HASH256值,用于验证本记录中的数据是否被篡改;
至少两个分隔符,用于分隔区块名、地址、本条记录按顺序组成字符串的HASH256值的符号;
结束符,代表本条记录结束。
在本发明一个较佳实施例中,
所述区块名为32字节的十六进制数;
所述地址为20字节的十六进制数;
所述本条记录按顺序组成字符串的HASH256值为32字节的十六进制数。
本发明的有益效果是:
(1)本发明通过扩展区块存储的处理过程、增加区块名文件,建立了一种基于交易参与者地址的、类似于关系数据库的表索引机制,极大地提高了区块检索效率,扩展了区块链的应用领域;
(2)所述区块名文件存储了区块名、交易参与者对应的地址,而不是交易参与者“姓名”,有效保护了交易参与者的隐私。
附图说明
图1是本发明区块链快速检索方法一较佳实施例的流程图;
图2是所述区块名文件的存储结构示意图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图1,本发明实施例包括:
一种区块链快速检索方法,包括以下步骤:
S1:区块链***进行区块存储时,将该区块的区块名、该区块的所有交易参与者对应的地址存入区块名文件中;
在正常区块存储过程中,获取该区块的文件名(如:blk00008.dat),提取该区块的所有交易参与者的“地址”,存入“区块名文件”中,使得“区块名文件”中记录了该区块的区块名和所有交易参与者。如图2所示,所述区块名文件包括
区块名,代表该区块的文件名称,为32字节的十六进制数;
至少一个地址,每个地址代表本区块一个交易参与者的交易地址,为20字节的十六进制数,多个参与者则有多个地址;
本条记录按顺序组成字符串的HASH256值,用于验证本记录中的数据是否被篡改,为32字节的十六进制数;
至少两个分隔符“;”,用于分隔区块名、地址、本条记录按顺序组成字符串的HASH256值的符号;
结束符“#”,代表本条记录结束。
所述区块名文件的内容按二进制存储,其存储结构依次为区块名、分隔符、地址、分隔符、本条记录按顺序组成字符串的HASH256值、结束符。
S2:输入指定的一个或多个交易参与者姓名,通过检索用户文件,分别获取各交易参与者的地址;
所述用户文件是区块链***既有的文件,由“监管节点”负责管理,其中记载了用户姓名与其地址的对照关系。相比于用户文件,所述区块名文件存储了区块名、交易参与者对应的地址,而不是交易参与者“姓名”,有效保护了交易参与者的隐私。
S3:通过所述地址检索所述区块名文件,获取一个与输入条件匹配的区块名列表;
S4:区块链***逐一解析所述列表中对应的区块,直至检索出目标区块。
下面以一实施例具体说明该检索方法:
假定现有“用户文件”中所列“用户姓名”及对应“地址”如下:
…… | 用户姓名 | 地址 | …… |
…… | ZhangSan | 135aded4e2c1fd5cd7ea2cf4ea7e2bc3edc9ae5df | …… |
…… | LiSi | 391ef5239da2a3904cda1fd995fb7c4377487ea9 | …… |
…… | WangWu | 1e1ef54374cd7e90477487ea9f523da1fd5fb37f | …… |
…… | ZhaoLiu | 1ad2cf4ea7dc9ae5dfe2bc3ed4e2c1fd5cd7ea35 | …… |
…… | ZhangWei | 35f4ea7dc9ae3b9da2a390d91e5f3d67f89a4312 | …… |
…… | LiuQiang | 34cda1fd995fb7c4377487ea991ef5239da2a390 | …… |
…… | WangFang | 3df5239da2a390995fb7c4377487ea991e4cda1f | …… |
…… | XiaoLong | 17ea9f523da1fd5fb37fe1ef54374cd7e9047748 | …… |
…… | HuYaPing | 3377487ea991e4cda1fdf5239da2a390995fb7c4 | …… |
…… | ZhouHong | 1ed4e2c1fd5cd7ea35ad2cf4ea7dc9ae5dfe2bc3e | …… |
…… | …… | …… |
假定已经产生10个区块,其区块文件如下:
blk00000.dat
blk00001.dat
blk00002.dat
blk00003.dat
blk00004.dat
blk00005.dat
blk00006.dat
blk00007.dat
blk00008.dat
blk00009.dat
则,监管节点在上述区块生成并存储时,同时形成了所述区块名文件,其内容如下:
blk00000.dat;1ed4e2c1fd5cd7ea35ad2cf4ea7dc9ae5dfe2bc3e;3df5239da2a390995fb7c4377487ea991e4cda1f;7be56cdbf6cc760aa485d359888bcc32d80845505346e1fda348ffffe43bae7a#blk00001.dat;135aded4e2c1fd5cd7ea2cf4ea7e2bc3edc9ae5df;1e1ef54374cd7e90477487ea9f523da1fd5fb37f;4874d0f515e0daa7f4b3206ded55bfbeeda8addc95eba3c991bf90a17a55d595#blk00002.dat;3377487ea991e4cda1fdf5239da2a390995fb7c4;1e1ef54374cd7e90477487ea9f523da1fd5fb37f;2b2203c82f0dd0f34a7ead2c1098cbd544a8a79275d5e15b4e62d838c13aab9f#blk00003.dat;34cda1fd995fb7c4377487ea991ef5239da2a390;17ea9f523da1fd5fb37fe1ef54374cd7e9047748;d1389041f753778d6f2043fcfa23fd4d918df131f2d3ff75ca3b36db225fa0df#blk00004.dat;135aded4e2c1fd5cd7ea2cf4ea7e2bc3edc9ae5df;391ef5239da2a3904cda1fd995fb7c4377487ea9;1934ec3471abb161137b3d97ca0daec57a1f76ec1341e1bf1e1daa325c05e0e2#blk00005.dat;3df5239da2a390995fb7c4377487ea991e4cda1f;1ed4e2c1fd5cd7ea35ad2cf4ea7dc9ae5dfe2bc3e;6a9271b3b6745a276e24e3f92e6ee09759017e396dfa5536eb6f8bcbbbd03dcd#blk00006.dat;1ed4e2c1fd5cd7ea35ad2cf4ea7dc9ae5dfe2bc3e;1ad2cf4ea7dc9ae5dfe2bc3ed4e2c1fd5cd7ea35;abc9802a3d9de14e6dce8ca0a0ecb7977dded928c32a5976b474e7e41bc8d21c#blk00007.dat;1ed4e2c1fd5cd7ea35ad2cf4ea7dc9ae5dfe2bc3e;35f4ea7dc9ae3b9da2a390d91e5f3d67f89a4312;4fa33716b6951509cd44ec422c1ea1b3def62543c5b3814604a2ad768cf59664#blk00008.dat;1ad2cf4ea7dc9ae5dfe2bc3ed4e2c1fd5cd7ea35;1ed4e2c1fd5cd7ea35ad2cf4ea7dc9ae5dfe2bc3e;ff8d7fab6e842437d28e5ad5dbf861121c96412d4b1de3f589cb12e9e630cc69#blk00009.dat;34cda1fd995fb7c4377487ea991ef5239da2a390;17ea9f523da1fd5fb37fe1ef54374cd7e9047748;e126d9585a4598beb0b8c2441f7aa1a141d4840fdeb854ee4910c9fa84ef775c#
当输入交易参与者姓名,例如:ZhangSan和LiSi,则快速检索过程如下:
(1)打开“用户文件”,分别获取ZhangSan和LiSi的“地址”,分别为:
135aded4e2c1fd5cd7ea2cf4ea7e2bc3edc9ae5df和
391ef5239da2a3904cda1fd995fb7c4377487ea9
(2)检索“区块名文件”:
(2.1)将该文件分割为以“#”为行结束符的若干行;
(2.2)用
135aded4e2c1fd5cd7ea2cf4ea7e2bc3edc9ae5df;391ef5239da2a3904cda1fd995fb7c4377487ea9按顺序完整匹配各行;
(3)得到的匹配行为:
blk00004.dat;135aded4e2c1fd5cd7ea2cf4ea7e2bc3edc9ae5df;391ef5239da2a3904cda1fd995fb7c4377487ea9;1934ec3471abb161137b3d97ca0daec57a1f76ec1341e1bf1e1daa325c05e0e2#
(4)表示与ZhangSan和LiSi相关的区块为blk00004.dat
(5)命中目标区块blk00004.dat。
本发明通过扩展区块存储的处理过程、增加区块名文件,建立了一种基于交易参与者地址的、类似于关系数据库的表索引机制,极大地提高了区块检索效率,扩展了区块链的应用领域。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (4)
1.一种区块链快速检索方法,包括以下步骤:
S1:区块链***进行区块存储时,将该区块的区块名、该区块的所有交易参与者对应的地址存入区块名文件中;
S2:当输入指定的一个或多个交易参与者姓名时,通过检索用户文件,分别获取各交易参与者的地址;
S3:通过所述地址检索所述区块名文件,获取一个与输入条件匹配的区块名列表;
S4:区块链***逐一解析所述列表中对应的区块,直至检索出目标区块。
2.根据权利要求1所述的区块链快速检索方法,其特征在于,所述区块名文件的存储结构依次为区块名、分隔符、地址、分隔符、本条记录按顺序组成字符串的HASH256值、结束符。
3.一种区块名文件,用于权利要求1或2任一项所述区块链快速检索方法,其特征在于,包括:
区块名,代表该区块的文件名称;
至少一个地址,每个地址代表本区块一个交易参与者的交易地址;
本条记录按顺序组成字符串的HASH256值,用于验证本记录中的数据是否被篡改;
至少两个分隔符,用于分隔区块名、地址、本条记录按顺序组成字符串的HASH256值的符号;
结束符,代表本条记录结束。
4.根据权利要求3所述的区块名文件,其特征在于,
所述区块名为32字节的十六进制数;
所述地址为20字节的十六进制数;
所述本条记录按顺序组成字符串的HASH256值为32字节的十六进制数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811264831.4A CN109508411A (zh) | 2018-10-29 | 2018-10-29 | 区块链快速检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811264831.4A CN109508411A (zh) | 2018-10-29 | 2018-10-29 | 区块链快速检索方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109508411A true CN109508411A (zh) | 2019-03-22 |
Family
ID=65746945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811264831.4A Pending CN109508411A (zh) | 2018-10-29 | 2018-10-29 | 区块链快速检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109508411A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506661A (zh) * | 2020-04-22 | 2020-08-07 | 腾讯科技(深圳)有限公司 | 一种内容访问管理方法、装置和存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999618A (zh) * | 2012-11-30 | 2013-03-27 | 深圳市络道科技有限公司 | 基于地址归户的个人行为属性信息库建立方法及*** |
CN107273556A (zh) * | 2017-08-23 | 2017-10-20 | 上海点融信息科技有限责任公司 | 区块链数据索引方法和设备 |
CN107729371A (zh) * | 2017-09-12 | 2018-02-23 | 深圳先进技术研究院 | 区块链的数据索引及查询方法、装置、设备及存储介质 |
CN107947940A (zh) * | 2017-11-29 | 2018-04-20 | 树根互联技术有限公司 | 一种数据交换的方法及装置 |
CN107943951A (zh) * | 2017-11-24 | 2018-04-20 | 中钞***产业发展有限公司杭州区块链技术研究院 | 一种区块链业务信息的检索方法及*** |
CN108027867A (zh) * | 2015-07-14 | 2018-05-11 | Fmr有限责任公司 | 计算高效的转账处理、审计以及搜索装置、方法和*** |
US20180268504A1 (en) * | 2017-03-15 | 2018-09-20 | Factom | Indexing Mortgage Documents via Blockchains |
US20180268151A1 (en) * | 2017-03-19 | 2018-09-20 | International Business Machines Corporation | Automatic generating analytics from blockchain data |
-
2018
- 2018-10-29 CN CN201811264831.4A patent/CN109508411A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999618A (zh) * | 2012-11-30 | 2013-03-27 | 深圳市络道科技有限公司 | 基于地址归户的个人行为属性信息库建立方法及*** |
CN108027867A (zh) * | 2015-07-14 | 2018-05-11 | Fmr有限责任公司 | 计算高效的转账处理、审计以及搜索装置、方法和*** |
US20180268504A1 (en) * | 2017-03-15 | 2018-09-20 | Factom | Indexing Mortgage Documents via Blockchains |
US20180268151A1 (en) * | 2017-03-19 | 2018-09-20 | International Business Machines Corporation | Automatic generating analytics from blockchain data |
CN107273556A (zh) * | 2017-08-23 | 2017-10-20 | 上海点融信息科技有限责任公司 | 区块链数据索引方法和设备 |
CN107729371A (zh) * | 2017-09-12 | 2018-02-23 | 深圳先进技术研究院 | 区块链的数据索引及查询方法、装置、设备及存储介质 |
CN107943951A (zh) * | 2017-11-24 | 2018-04-20 | 中钞***产业发展有限公司杭州区块链技术研究院 | 一种区块链业务信息的检索方法及*** |
CN107947940A (zh) * | 2017-11-29 | 2018-04-20 | 树根互联技术有限公司 | 一种数据交换的方法及装置 |
Non-Patent Citations (2)
Title |
---|
凌锋著: "《一本书读懂区块链》", 31 July 2018, 台海出版社 * |
杨茂江: "基于密码和区块链技术的数据交易平台设计", 《信息通信技术》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506661A (zh) * | 2020-04-22 | 2020-08-07 | 腾讯科技(深圳)有限公司 | 一种内容访问管理方法、装置和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12003536B2 (en) | Method for the automated creation of a phishing document addressed to a predefined person | |
CN105630938A (zh) | 一种智能问答*** | |
AU2013366088B2 (en) | Searchable data archive | |
EP1026603A3 (en) | Apparatus and method for depersonalizing information | |
CN107862782A (zh) | 基于以太坊区块链的抽签方法及装置 | |
CN104036187B (zh) | 计算机病毒类型确定方法及其*** | |
Rossetto et al. | Where did all the trees come from? A novel multispecies approach reveals the impacts of biogeographical history and functional diversity on rain forest assembly | |
EP1304628A3 (en) | Method and apparatus for selecting and reproducing information | |
CN106708841B (zh) | 网站访问路径的聚合方法和装置 | |
CN104750783B (zh) | 一种广告投放方法 | |
CN107870927A (zh) | 文件评估方法和装置 | |
CN110109874A (zh) | 一种基于区块链的无中心分布式文件检索方法 | |
CN104915388B (zh) | 一种基于谱聚类和众包技术的图书标签推荐方法 | |
CN106033438A (zh) | 舆情数据存储方法和服务器 | |
KR20200046456A (ko) | 개인의 유전자 표현형이 적용된 컬러드 코인 | |
CN107169003B (zh) | 一种数据关联方法及装置 | |
CN107783974A (zh) | 数据处理***及方法 | |
CN109508411A (zh) | 区块链快速检索方法 | |
CN106933919A (zh) | 数据表的连接方法及装置 | |
EP1480129A3 (en) | Database search information output method | |
Sokoloff et al. | Morphology and development of the gynoecium in Centrolepidaceae: the most remarkable range of variation in Poales | |
CN108416610A (zh) | 用户历史反馈信息形成方法及广告投放频次控制方法 | |
CN107784588A (zh) | 保险用户信息合并方法和装置 | |
CN109118378A (zh) | 基于企业过程数据的保险风险评估方法 | |
CN103870462B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190322 |
|
RJ01 | Rejection of invention patent application after publication |