CN112835974B - 一种链外数据可信获取与存证方法及装置 - Google Patents
一种链外数据可信获取与存证方法及装置 Download PDFInfo
- Publication number
- CN112835974B CN112835974B CN202110019210.5A CN202110019210A CN112835974B CN 112835974 B CN112835974 B CN 112835974B CN 202110019210 A CN202110019210 A CN 202110019210A CN 112835974 B CN112835974 B CN 112835974B
- Authority
- CN
- China
- Prior art keywords
- data
- request
- chain
- req
- 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.)
- Active
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/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
- 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种链外数据可信获取与存证方法及装置,包括:接收请求Req,所述请求Req由查询链外数据请求和存证请求构成;根据所述查询链外数据请求,使用链外数据访问合约对外部数据源发起调用服务;根据所述查询链外数据请求的唯一标识,查询是否存在未返回的请求Req,若存在,则继续处理所述查询链外数据请求,若不存在,则接收所述外部数据源返回的外部数据Res;结合所述请求Req、所述外部数据Res以及网络交互数据,生成电子数据文件;计算所述电子数据文件的哈希值;根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链。本发明解决了链外数据获取可靠性低、可信度差的问题,实现在不可靠网络系统环境下获取可靠数据的能力。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种链外数据可信获取与存证方法及装置。
背景技术
对于链外数据访问的安全与可信问题,通常的保障方式是权威机构背书的中心化访问控制方式,即由政府或企业提供数据访问接口,由公证处对数据真实性进行背书,然而这种方式效率低、程序复杂且成本高、安全性和可信性差的问题。
发明内容
本申请实施例的目的是提供一种链外数据可信获取与存证方法及装置,解决链外数据获取安全性、可信性差的问题,从而提高链外数据访问效率。
根据本申请实施例的第一方面,提供一种链外数据可信获取与存证方法,包括:
接收请求Req,所述请求Req由查询链外数据请求和存证请求构成;
根据所述查询链外数据请求,使用链外数据访问合约对外部数据源发起调用服务;
根据所述查询链外数据请求的唯一标识,查询是否存在未返回的请求 Req,若存在,则继续处理所述查询链外数据请求,若不存在,则接收所述外部数据源返回的外部数据Res;
结合所述请求Req、所述外部数据Res以及网络交互数据,生成电子数据文件;
计算所述电子数据文件的哈希值;
根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链。
进一步地,所述请求Req表示为Req=(t1,Src,q,Cont,CReq,σ),其中, t1表示请求时间,Src表示请求指定的外部数据源,q表示要查询的内容, Cont表示请求指定的存证合约,CReq表示请求发起方的证书信息,σ表示可配置的请求最大返回时间间隔。
进一步地,使用链外数据访问合约对外部数据源发起调用服务前,还包括:使用链外数据访问合约解析所述请求Req。
进一步地,使用链外数据访问合约对外部数据源发起调用服务,包括:
链外数据访问合约根据请求Req中的数组Src=[s1,s2…si]发起调用服务,所述调用服务根据数组Src通过TLS安全传输访问对应的外部数据源,其中si表示需调用的外部数据源。
进一步地,接收所述外部数据源返回的外部数据Res后,还包括:
解析外部数据Res。
进一步地,解析外部数据Res后,还包括:
链外数据访问合约验证解析后的所述外部数据Res返回时间与请求Req的请求时间的差是否大于最大时间间隔σ,如果小于,进行下一步,否则,此次数据访问失败。
进一步地,所述网络交互数据包括端口信息、IP信息、证书信息。
进一步地,所述链外数据访问合约使用安全散列算法。
进一步地,根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链,包括:
通过链外数据访问合约解析所述请求Req中Cont参数,获取需要调用的存证合约;
链外数据访问合约对所述存证合约发起调用,将所述电子数据文件哈希值上链。
根据本申请实施例的第二方面,提供一种链外数据可信获取与存证装置,其特征在于,包括:
接收模块,用于接收请求Req,所述请求Req由查询链外数据请求和存证请求构成;
调用模块,用于根据所述查询链外数据请求,使用链外数据访问合约对外部数据源发起调用服务;
查询判断模块,用于根据所述查询链外数据请求的唯一标识,查询是否存在未返回的请求Req,若存在,则继续处理所述查询链外数据请求,若不存在,则接收所述外部数据源返回的外部数据Res;
生成模块,用于结合所述请求Req、所述外部数据Res以及网络交互数据,生成电子数据文件;
计算模块,用于计算所述电子数据文件的哈希值;
上链模块,用于根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链。
链外数据调用通过合约进行处理,并且整个调用过程中的相关数据都会被采集进行存证,因此,本申请的实施例提供的技术方案具有以下有益效果:
由上述实施例可知,本申请针对链外数据访问安全、可信问题,独立可信中间件有效地解决链外的数据可信获取,保证了链外数据获取的完整性、真实性。
通过中间件记录完整的数据访问过程数据并上链存证相关数据,解决数据访问的不可抵赖性和数据可信问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是根据一示例性实施例示出的一种链外数据可信获取与存证方法的流程图。
图2是根据一示例性实施例示出的一种链外数据可信获取与存证装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
图1是根据一示例性实施例示出的一种链外数据可信获取与存证方法的流程图,如图1所示,该方法应用于中间件中,这里的中间件可以为智能合约,该方法可以包括以下步骤:
步骤S101,接收请求Req,所述请求Req由查询链外数据请求和存证请求构成;
具体地,所述请求Req由区块链业务系统生成,所述请求Req表示为Req =(t1,Src,q,Cont,CReq,σ),其中,t1表示请求时间,Src表示请求指定的外部数据源数组,q表示要查询的内容,Cont表示请求指定的存证合约,CReq表示请求发起方的证书信息,σ表示可配置的请求最大返回时间间隔,当外部数据返回时间与数据访问和存证请求发起时间之差大于该值,本次数据访问和存证请求失败。对链外数据查询请求进行管理和时间控制,记录查询请求相关信息,一旦查询时间超时及时进行后续查询。
步骤S102,根据所述查询链外数据请求,使用链外数据访问合约对外部数据源发起调用服务;
具体地,根据所述查询链外数据请求,可以使用链外数据访问合约解析所述请求Req,链外数据访问合约根据请求Req中的数组Src=[s1,s2…si] 发起调用服务,所述调用服务根据数组Src通过TLS安全传输访问对应的外部数据源,其中si表示需调用的外部数据源。
这样一次查询请求可以访问多个链外数据源,实现多源数据访问。
步骤S103,根据所述查询链外数据请求的唯一标识,查询是否存在未返回的请求Req,若存在,则继续处理所述查询链外数据请求,若不存在,则接收所述外部数据源返回的外部数据Res。
在接收所述外部数据源返回的外部数据Res后,还可包括:解析外部数据 Res。解析外部数据Res后,还可包括:链外数据访问合约验证解析后的所述外部数据Res返回时间与请求Req的请求时间的差是否大于最大时间间隔σ,如果小于σ,进行下一步,否则,此次数据访问失败。通过σ来控制链外数据访问的时长,有效避免链外查询请求堆积。
步骤S104,结合所述请求Req、所述外部数据Res以及网络交互数据,生成电子数据文件(Req、Res、M);其中所述网络交互数据用M表示,可包括端口信息、IP信息、证书信息等。全方位记录查询请求的相关数据,便于后续进行存证。
步骤S105,计算所述电子数据文件的哈希值;
具体地,链外数据访问合约使用安全散列算法,如SHA-256计算所述数据电子数据的哈希值H(Req、Res、M)。对查询相关的数据进行哈希计算获得相应的“数字指纹”,便于上链存储。
步骤S106,根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链。
具体地,通过链外数据访问合约解析所述请求Req中Cont参数,获取需要调用的存证合约;链外数据访问合约对所述存证合约发起调用,将所述电子数据文件哈希值上链。将链外数据访问与存证功能分别由两个合约实现了功能解耦。
本发明实施例公开的链外数据可信获取与存证方法,解决区块链链外电子数据获取难度大、存证数据可信性差的问题。本发明应用区块链技术能够在不可靠网络系统环境下对链外数据访问的电子数据进行上链存证,实现数据防篡改,增强电子数据的可信性、可用性。该方法对基于区块链的业务系统安全、可信地访问链外数据具有重要的应用价值。
与前述的一种链外数据可信获取与存证方法的实施例相对应,本申请还提供了一种链外数据可信获取与存证装置的实施例。
图2是根据一示例性实施例示出的一种链外数据可信获取与存证装置框图。参照图2,该装置包括:
接收模块21,用于接收请求Req,所述请求Req由查询链外数据请求和存证请求构成;
调用模块22,用于根据所述查询链外数据请求,使用链外数据访问合约对外部数据源发起调用服务;
查询判断模块23,用于根据所述查询链外数据请求的唯一标识,查询是否存在未返回的请求Req,若存在,则继续处理所述查询链外数据请求,若不存在,则接收所述外部数据源返回的外部数据Res;
生成模块24,用于结合所述请求Req、所述外部数据Res以及网络交互数据,生成电子数据文件;
计算模块25,用于计算所述电子数据文件的哈希值;
上链模块26,用于根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
相应的,本申请还提供一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行上述步骤S101-步骤S106。
相应的,本申请还提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行上述步骤S101-步骤S106。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种链外数据可信获取与存证方法,其特征在于,包括:
接收请求Req,所述请求Req由查询链外数据请求和存证请求构成;
根据所述查询链外数据请求,使用链外数据访问合约对外部数据源发起调用服务;
根据所述查询链外数据请求的唯一标识,查询是否存在未返回的请求Req,若存在,则继续处理所述查询链外数据请求,若不存在,则接收所述外部数据源返回的外部数据Res;
结合所述请求Req、所述外部数据Res以及网络交互数据,生成电子数据文件;
计算所述电子数据文件的哈希值;
根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链, 以上方法由可信中间件实现。
2.根据权利要求1所述的一种链外数据可信获取与存证方法,其特征在于,所述请求Req表示为Req=(t1,Src,q,Cont,CReq,σ),其中,t1表示请求时间,Src表示请求指定的外部数据源,q表示要查询的内容,Cont表示请求指定的存证合约,CReq表示请求发起方的证书信息,σ表示可配置的请求最大返回时间间隔。
3.根据权利要求1所述的一种链外数据可信获取与存证方法,其特征在于,使用链外数据访问合约对外部数据源发起调用服务前,还包括:使用链外数据访问合约解析所述请求Req。
4.根据权利要求2所述的一种链外数据可信获取与存证方法,其特征在于,使用链外数据访问合约对外部数据源发起调用服务,包括:
链外数据访问合约根据请求Req中的数组Src=[s1,s2…si]发起调用服务,所述调用服务根据数组Src通过TLS安全传输访问对应的外部数据源,其中si表示需调用的外部数据源。
5.根据权利要求2所述的一种链外数据可信获取与存证方法,其特征在于,接收所述外部数据源返回的外部数据Res后,还包括:
解析外部数据Res。
6.根据权利要求5所述的一种链外数据可信获取与存证方法,其特征在于,解析外部数据Res后,还包括:
链外数据访问合约验证解析后的所述外部数据Res返回时间与请求Req的请求时间的差是否大于最大时间间隔σ,如果小于,进行下一步,否则,此次数据访问失败。
7.根据权利要求1所述的一种链外数据可信获取与存证方法,其特征在于,所述网络交互数据包括端口信息、IP信息、证书信息。
8.根据权利要求1所述的一种链外数据可信获取与存证方法,其特征在于,所述链外数据访问合约使用安全散列算法。
9.根据权利要求1所述的一种链外数据可信获取与存证方法,其特征在于,根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链,包括:
通过链外数据访问合约解析所述请求Req中Cont参数,获取需要调用的存证合约;
链外数据访问合约对所述存证合约发起调用,将所述电子数据文件哈希值上链。
10.一种链外数据可信获取与存证装置,其特征在于,包括:
接收模块,用于接收请求Req,所述请求Req由查询链外数据请求和存证请求构成;
调用模块,用于根据所述查询链外数据请求,使用链外数据访问合约对外部数据源发起调用服务;
查询判断模块,用于根据所述查询链外数据请求的唯一标识,查询是否存在未返回的请求Req,若存在,则继续处理所述查询链外数据请求,若不存在,则接收所述外部数据源返回的外部数据Res;
生成模块,用于结合所述请求Req、所述外部数据Res以及网络交互数据,生成电子数据文件;
计算模块,用于计算所述电子数据文件的哈希值;
上链模块,用于根据存证请求,调用存证合约,将所述电子数据文件的哈希值上链,
以上模块集成为一个中间件完成链外数据可信存取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110019210.5A CN112835974B (zh) | 2021-01-07 | 2021-01-07 | 一种链外数据可信获取与存证方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110019210.5A CN112835974B (zh) | 2021-01-07 | 2021-01-07 | 一种链外数据可信获取与存证方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112835974A CN112835974A (zh) | 2021-05-25 |
CN112835974B true CN112835974B (zh) | 2022-06-17 |
Family
ID=75927761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110019210.5A Active CN112835974B (zh) | 2021-01-07 | 2021-01-07 | 一种链外数据可信获取与存证方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112835974B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109525441A (zh) * | 2018-12-24 | 2019-03-26 | 浙江超脑时空科技有限公司 | 一种区块链网络链外数据上链方法和装置 |
CN111258725A (zh) * | 2020-01-17 | 2020-06-09 | 北京百度网讯科技有限公司 | 一种基于区块链的数据处理方法、装置、设备和介质 |
US10757084B1 (en) * | 2019-03-29 | 2020-08-25 | Alibaba Group Holding Limited | Retrieving access data for blockchain networks using highly available trusted execution environments |
CN112052292A (zh) * | 2020-09-14 | 2020-12-08 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种网络内容存证方法、装置、设备及存储介质 |
CN112084234A (zh) * | 2020-09-03 | 2020-12-15 | 中国银联股份有限公司 | 数据获取方法、装置、设备和介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190236698A1 (en) * | 2018-01-26 | 2019-08-01 | Richard Postrel | Method and system for reconciling the exchange of cryptocurrencies utilizing blockchain |
-
2021
- 2021-01-07 CN CN202110019210.5A patent/CN112835974B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109525441A (zh) * | 2018-12-24 | 2019-03-26 | 浙江超脑时空科技有限公司 | 一种区块链网络链外数据上链方法和装置 |
US10757084B1 (en) * | 2019-03-29 | 2020-08-25 | Alibaba Group Holding Limited | Retrieving access data for blockchain networks using highly available trusted execution environments |
CN111258725A (zh) * | 2020-01-17 | 2020-06-09 | 北京百度网讯科技有限公司 | 一种基于区块链的数据处理方法、装置、设备和介质 |
CN112084234A (zh) * | 2020-09-03 | 2020-12-15 | 中国银联股份有限公司 | 数据获取方法、装置、设备和介质 |
CN112052292A (zh) * | 2020-09-14 | 2020-12-08 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种网络内容存证方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
张召等.链上存证、链下传输的可信数据共享平台.《大数据》.2020, * |
Also Published As
Publication number | Publication date |
---|---|
CN112835974A (zh) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109802957B (zh) | 接口对接方法、装置、计算机设备和存储介质 | |
EP3729287B1 (en) | Systems and methods for generating and maintaining immutable digital meeting records within distributed network nodes | |
US10924285B2 (en) | Method and server for providing notary service with respect to file and verifying file recorded by the notary service | |
CN110494876B (zh) | 用于在分布式网络节点内发布和追踪数字令牌的系统和方法 | |
CN110785760B (zh) | 用于登记数字文档的方法和系统 | |
CN110494877B (zh) | 用于在分布式网络节点内发布和追踪数字令牌的系统和方法 | |
CN108665372B (zh) | 基于区块链的信息处理、查询、储存方法和装置 | |
US11949789B2 (en) | Blockchain-enabled computing | |
US10372942B1 (en) | Method and server for providing notary service for file and verifying file recorded by notary service | |
KR20210080550A (ko) | 블록체인에 데이터 블록을 기록하는 방법과, 리더 회계 노드 및 매체 | |
US11546348B2 (en) | Data service system | |
CN112613010A (zh) | 一种认证服务方法、装置、服务器及认证服务系统 | |
US20220094560A1 (en) | Integrating Device Identity Into A Permissioning Framework Of A Blockchain | |
CN115186304B (zh) | 一种基于区块链的交易数据校验方法和系统 | |
CN109902493B (zh) | 脚本的下发方法及服务器 | |
CN114691669A (zh) | 一种电子存证方法、装置、电子设备及存储介质 | |
CN112835974B (zh) | 一种链外数据可信获取与存证方法及装置 | |
US20100030805A1 (en) | Propagating information from a trust chain processing | |
CN116777397A (zh) | 基于区块链的电子单据管理方法、装置、终端及存储介质 | |
CN110635915A (zh) | 一种基于多ca的高并发数字证书注册管理方法 | |
CN111552949B (zh) | 一种物联网设备加密方法、装置及电子设备 | |
CN115037521B (zh) | 服务数据验证方法、装置、计算机设备和存储介质 | |
Majd et al. | Secure and Cost Effective IoT Authentication and Data Storage Framework using Blockchain NFT | |
CN111565111B (zh) | 一种基于c/s架构的可信计算管理系统及管理方法 | |
CN117633903A (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 | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Yin Keting Inventor after: Fang Wenjing Inventor after: Tang Quan Inventor after: Zhang Dehui Inventor after: Ma Zhenjun Inventor before: Yin Keting Inventor before: Tang Quan Inventor before: Li Ye Inventor before: Zhang Dehui Inventor before: Ma Zhenjun Inventor before: Zhou Tao |
|
GR01 | Patent grant | ||
GR01 | Patent grant |