CN114116710A - 基于区块链的数据处理方法、装置、设备及存储介质 - Google Patents

基于区块链的数据处理方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114116710A
CN114116710A CN202111360986.XA CN202111360986A CN114116710A CN 114116710 A CN114116710 A CN 114116710A CN 202111360986 A CN202111360986 A CN 202111360986A CN 114116710 A CN114116710 A CN 114116710A
Authority
CN
China
Prior art keywords
data
target
storage
target uplink
uplink data
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
Application number
CN202111360986.XA
Other languages
English (en)
Inventor
张隆龙
王溢
傅强
马寒军
阿曼太
梁彧
蔡琳
田野
王杰
杨满智
金红
陈晓光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Eversec Beijing Technology Co Ltd
Original Assignee
Eversec Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Eversec Beijing Technology Co Ltd filed Critical Eversec Beijing Technology Co Ltd
Priority to CN202111360986.XA priority Critical patent/CN114116710A/zh
Publication of CN114116710A publication Critical patent/CN114116710A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种基于区块链的数据处理方法、装置、设备及存储介质。其中,方法包括:接收目标上链数据并获取目标上链数据的存储数据量;在确定存储数据量大于数据量阈值的情况下,将目标上链数据存储至第一存储***,并根据第一存储***对目标上链数据的存储结果获取目标上链数据的存储标识数据;将存储标识数据存储至目标区块链网络的各区块链节点中。本发明实施例可以实现对占据存储空间较大的数据进行安全存储的同时,极大地节约区块链***的存储资源,提升区块链***的利用效率。

Description

基于区块链的数据处理方法、装置、设备及存储介质
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种基于区块链的数据处理方法、装置、设备及存储介质。
背景技术
区块链是由节点参与的分布式数据库***,它的特点是不可更改、不可伪造。区块由一串使用密码学方法产生的数据块组成的,每一个区块都包含了上一个区块的Hash(哈希)值,从创始区块开始连接到当前区块,形成区块链,每一个区块都确保按照时间顺序在上一个区块之后产生。
在现有技术中的区块链***中,数据保存在区块链,处于确保数据完整性和防篡改的目的,每个节点都要保存一份完整的数据,当其中一个节点的数据丢失或者被修改时,可以从其余节点获取完整数据。
然而,在上述现有技术中,由于全部节点均需要保存一份完整的数据,随着数据量的不断增大,节点占用的存储空间也会持续增长,对承载节点的计算机造成巨大的存储资源消耗和运载负担。
发明内容
本发明实施例提供一种基于区块链的数据处理方法、装置、设备及存储介质,以实现对占据存储空间较大的数据进行安全存储的同时,极大地节约区块链***的存储资源,提升区块链***的利用效率。
第一方面,本发明实施例提供了一种基于区块链的数据处理方法,包括:
接收目标上链数据并获取所述目标上链数据的存储数据量;
在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据;
将所述存储标识数据存储至目标区块链网络的各区块链节点中。
第二方面,本发明实施例还提供了一种基于区块链的数据处理装置,包括:
数据接收模块,用于接收目标上链数据并获取所述目标上链数据的存储数据量;
数据存储模块,用于在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据;
标识上链模块,用于将所述存储标识数据存储至目标区块链网络的各区块链节点中。
第三方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的基于区块链的数据处理方法。
第四方面,本发明实施例还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所提供的基于区块链的数据处理方法。
本发明实施例通过接收需要由目标区块链网络存储的目标上链数据并获取目标上链数据的存储数据量,在确定存储数据量大于数据量阈值的情况下,将目标上链数据存储至第一存储***,并根据第一存储***对目标上链数据的存储结果获取目标上链数据的存储标识数据,从而将存储标识数据存储至目标区块链网络的各区块链节点中,避免了现有技术中将数据冗余存储至各区块链节点造成的存储资源消耗和节点设备运载负担过大的问题,实现对占据存储空间较大的数据进行安全存储的同时,极大地节约区块链***的存储资源,提升区块链***的利用效率。
附图说明
图1为本发明实施例一提供的一种基于区块链的数据处理方法的流程图。
图2为本发明实施例二提供的一种基于区块链的数据处理方法的流程图。
图3为本发明实施例二提供的一种基于区块链的数据处理方法的流程示意图。
图4为本发明实施例三提供的一种基于区块链的数据处理装置的结构示意图。
图5为本发明实施例四提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。
另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1是本发明实施例一提供的一种基于区块链的数据处理方法的流程图,本实施例可适用于基于目标区块链网络对数据进行存储的情况,该方法可以由本发明实施例提供的基于区块链的数据处理装置来执行,该装置可以由软件和/或硬件的方式来实现,并一般可集成在计算机设备中。相应的,如图1所示,该方法包括如下操作:
S110、接收目标上链数据并获取所述目标上链数据的存储数据量。
其中,目标上链数据可以是需要通过区块链网络进行存储的任意数据。存储数据量可以是目标上链数据需要占用的存储空间的大小。
相应的,若存在需要通过区块链网络进行存储的目标上链数据,例如可以是任意用户或任意与区块链网络关联的程序向区块链网络写入目标上链数据,则可以接收该目标上链数据,从而可以进一步获取目标上链数据的存储数据量。具体的,可以通过任意可实现方式获取目标上链数据的存储数据量,在此不做限定。示例性的,目标上链数据可以是交易、智能合约调用、字符串、文件、图片等各种类型的数据,则可以计算出目标上链数据的数据量大小,作为目标上链数据的存储数据量。
需要说明的是,用于实现本发明实施例所提供方法的基于区块链的数据处理装置可以与任意区块链网络相对独立部署,并可以对区块链网络进行数据读写访问,且任意用户或任意与区块链网络关联的程序向区块链网络写入目标上链数据时,目标上链数据通过该基于区块链的数据处理装置接收,而无法直接通过区块链网络对目标上链数据进行接收或上链。
S120、在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据。
其中,数据量阈值可以是区块链网络对单个目标上链数据进行存储可以消耗的最大存储空间大小。第一存储***可以是独立于区块链网络的数据存储***。存储结果可以是描述目标上链数据在第一存储***中的存储情况的数据,存储于第一存储***中的不同目标上链数据对应于不同的存储结果。存储标识数据可以是根据目标上链数据在第一存储***中的存储结果确定的可以唯一表示目标上链数据的数据。
相应的,数据量阈值可以是根据区块链节点中可用的总存储空间、区块链节点需要存储的总数据量以及对区块链节点的性能需求等预先确定的,在此不做限定。若目标上链数据的存储数据量大于数据量阈值,可以说明该目标上链数据需要占用的存储空间,超过了区块链节点存储单个目标上链数据所能消耗的最大存储空间,则该目标上链数据无法存储至区块链节点中。
因此,可以将目标上链数据存储至第一存储***。第一存储***可以是预先部署的,具有存储较大数据的能力,其可以与原本需要存储目标上链数据的区块链网络相对独立,基于区块链的数据处理装置可以对第一存储***进行数据读写访问。第一存储***对目标上链数据进行存储后,可以根据目标上链数据的存储情况得到存储结果,从而根据存储结果获取目标上链数据的存储标识数据,则该存储标识数据可以唯一表示该目标上链数据,且进一步的,根据该存储标识数据可以确定目标上链数据在第一存储***中的存储结果,从而可以根据存储结果在第一存储***中获取到目标上链数据。
需要说明的是,第一存储***在对任意目标上链数据存储后,仅可以基于目标上链数据的存储结果才能在第一存储***中获取目标上链数据,以确保第一存储***中所存储的目标上链数据的安全。
在本发明的一个可选实施例中,所述将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据,可以包括:根据所述存储数据量对所述目标上链数据进行分片处理,得到目标分片数据;将各所述目标分片数据存储至所述第一存储***,以使所述第一存储***对所述目标分片数据进行分布式存储,并分别生成各所述目标分片数据的分片标识数据;获取全部所述分片标识数据,并根据全部所述分片标识数据生成所述目标上链数据的所述存储标识数据。
其中,分片处理可以是采用任意可实现的算法将整体数据切分成多个数据分片的操作。目标分片数据可以是目标上链数据经过分片处理得到的全部数据分片。分片标识数据可以是在第一存储***中唯一表示各目标分片数据的数据。
相应的,根据目标上链数据的存储数据量,可以确定目标上链数据是否需要进行分片处理后在第一存储***中进行分布式存储,还可以确定对目标上链数据进行分片处理的具体策略,均可以根据第一存储***的性能以及存储需求确定,在此不做限定。在根据存储数据量确定对目标上链数据的分片处理后,可以通过分片处理将目标上链数据切分为多个目标分片数据,并将各目标分片数据在第一存储***中进行分布式存储,即第一存储***可以是去中心化的存储空间,可以将各目标分片数据分别存储在第一存储***的不同节点,以降低对单个节点的存储空间消耗。
进一步的,第一存储空间对任意目标分片数据进行存储后,可以生成该目标分片数据的分片标识数据,该分片标识数据可以用于在第一存储***中唯一表示该目标分片数据。因此,可以获取全部分片标识数据,并根据全部分片标识数据生成唯一确定的存储标识数据,则该存储标识数据可以唯一对应于全部分片标识数据,从而根据各分片标识数据可以在第一存储***中唯一对应于各目标分片数据,全部目标分片数据可以组成目标上链数据,即存储标识数据可以唯一表示目标上链数据。
在本发明的一个可选实施例中,第一存储***可以是IPFS(Inter PlanetaryFile System,星际文件***)。
其中,IPFS采用其分布式存储协议,基于该协议可以分布式存储多份数据,不依赖于中心节点,具有天然防灾的特性。IPFS存储目标上链数据,可以计算目标上链数据的Hash值,当多份目标上链数据内容相同时,可以自动识别并仅存储一份,极大地节省空间。
相应的,若目标上链数据的存储数据量较大,IPFS可以自动通过算法对其进行切分,将数据分片分别存储至不同的节点上,并自动根据数据分片的存储结果反馈目标上链数据对应的Hash值。
进一步的,在多节点中,仅凭存储内容的Hash值进行检索,有效防止数据被篡改。且IPFS中针对切分后存储于多节点的目标上链数据可以进行多节点并行查找,同时查找出全部分片并进行组合。IPFS可以抵挡大量的数据读写请求,自动将大量数据读写请求分散到多节点上,进一步提升数据存储效率和检索效率。
S130、将所述存储标识数据存储至目标区块链网络的各区块链节点中。
其中,目标区块链网络可以是原本需要存储目标上链数据的区块链网络。
相应的,在获取目标上链数据的存储标识数据后,可以将存储标识数据存储至目标区块链网络的各区块链节点中,则目标区块链网络基于各区块链节点可以实现对存储标识数据的安全存储。
因此,由于目标上链数据的存储标识数据可以安全存储于区块链网络的各区块链节点中,目标上链数据仅可以凭对应的存储标识数据获取,则虽然目标上链数据实际存储于第一存储***中,但区块链网络通过对其存储标识数据的安全存储,实现了对目标上链数据同等安全程度的存储,同时避免目标上链数据存储于区块链节点中占据过大的存储空间。
本发明实施例提供了一种基于区块链的数据处理方法,通过接收需要由目标区块链网络存储的目标上链数据并获取目标上链数据的存储数据量,在确定存储数据量大于数据量阈值的情况下,将目标上链数据存储至第一存储***,并根据第一存储***对目标上链数据的存储结果获取目标上链数据的存储标识数据,从而将存储标识数据存储至目标区块链网络的各区块链节点中,避免了现有技术中将数据冗余存储至各区块链节点造成的存储资源消耗和节点设备运载负担过大的问题,实现对占据存储空间较大的数据进行安全存储的同时,极大地节约区块链***的存储资源,提升区块链***的利用效率。
实施例二
图2为本发明实施例二提供的一种基于区块链的数据处理方法的流程图。本发明实施例以上述实施例为基础进行进一步拓展,在本发明实施例中,给出了根据用户的数据检索请求,在第一存储***存储的目标上链数据中检索出目标检索数据的可选的实现方式。
如图2所示,本发明实施例的方法具体包括:
S210、接收目标上链数据并获取所述目标上链数据的存储数据量。
S220、判断所述存储数据量是否大于数据量阈值,若是,则执行S230~S240,否则,执行S250。
S230、将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据。
在本发明的一个可选实施例中,在所述将所述目标上链数据存储至第一存储***之前,还可以包括:获取与所述目标上链数据对应的加密算法参数;根据所述加密算法参数对所述目标上链数据进行加密处理。
其中,加密算法参数可以是确定对目标上链数据的加密方法的参数。加密处理可以是根据加密算法参数确定的加密方法对目标上链数据进行加密的操作。
相应的,在将目标上链数据存储至第一存储***之前,可以对目标上链数据进行加密处理,则确保在目标上链数据的存储标识数据被泄露时,仅凭存储标识数据仅可以在第一存储***中获取到加密处理后的目标上链数据,仍然无法获取目标上链数据的具体内容,进一步提升目标上链数据的安全性。具体的,可以获取目标上链数据对应的加密算法参数,并根据加密算法参数确定对目标上链数据进行加密处理的具体策略,从而对其进行加密处理。加密算法参数可以是预先设定的,也可以是用户或关联程序在发送目标上链数据以进行存储时一并发送的,在此不做限定。
在本发明的一个可选实施例中,所述获取与所述目标上链数据对应的加密算法参数,可以包括:根据用户对所述目标上链数据的加密设定操作,确定目标类型加密算法;获取与所述目标类型加密算法匹配的用户密钥参数;所述根据所述加密算法参数对所述目标上链数据进行加密处理,包括:根据所述用户密钥参数,采用所述目标类型加密算法对所述目标上链数据进行所述加密处理。
其中,加密设定操作可以是用户设定对目标上链数据所采用的加密算法类型的操作。目标类型加密算法可以是用户通过加密设定操作设定类型的加密算法。用户密钥参数可以是采用目标类型加密算法进行加密处理时所需要用户提供的密钥。
相应的,用户可以通过加密设定操作设定对目标上链数据进行加密处理所采用的目标类型加密算法,则根据目标类型加密算法可以确定加密处理所需要用户提供的用户密钥参数。不同的目标类型加密算法可以匹配有不同类型或格式的用户密钥参数。用户密钥参数可以是用户预先设定的,也可以是与目标上链数据一并发送的,也可以是进行加密设定操作时提供的,在此不做限定。
进一步的,在确定目标类型加密算法和匹配的用户密钥参数后,则可以根据用户密钥参数,采用目标类型加密算法对目标上链数据进行加密处理,则加密处理后的目标上链数据存储于第一存储***,在根据其存储标识数据在第一存储***后进行检索后,需要根据用户密钥参数进行相应的解密处理,才能得到目标上链数据的真实内容。
可选的,目标类型加密算法可以包括对称加密算法、非对称加密算法和加密打包压缩算法中的至少一种;相应的,对称加密算法匹配的用户密钥参数可以是指定长度的密钥,非对称加密算法匹配的用户密钥参数可以包括公钥和私钥,加密打包压缩算法匹配的用户密钥参数可以是自定义长度的字符串。
其中,对称加密算法,例如可以包括AES(Advanced Encryption Standard,高级加密标准)和SM4国密算法,对称加密算法在加密和解密时,使用的是同一个密钥,因此在存入数据和查询数据时,均需要提交该密钥。非对称加密算法,例如可以包括RSA(Rivest-Shamir-Adleman,李维斯特-萨莫尔-阿德曼)算法和SM2国密算法,在加密和解密时,使用的密钥不是同一个,需要分别提交;在存入数据时,需要在参数中指定公钥,获取数据时,需要在参数中指定私钥。加密打包压缩算法,可以利用服务器的tar和openssl命令,附带-k参数,对提交的数据进行加密打包压缩,其加密和解密使用同一个密钥,则在存入数据和查询数据时,均需要提交该密钥。
S240、将所述存储标识数据存储至目标区块链网络的各区块链节点中。
在本发明的一个可选实施例中,所述将所述存储标识数据存储至目标区块链网络的各区块链节点中,可以包括:获取所述目标上链数据的数据属性参数;将所述数据属性参数和所述存储标识数据对应存储至所述目标区块链网络的各所述区块链节点中。
其中,数据属性参数可以是描述目标上链数据的任意属性的参数。
相应的,针对目标上链数据可以提取任意数据属性,例如可以是目标上链数据的数据类型、数据来源等,则可以获取目标上链数据的数据属性参数。在区块链节点中对目标上链数据的存储标识数据进行存储时,可以将其数据属性参数与存储标识数据对应存储,则根据目标上链数据的数据属性参数可以唯一表示区块链节点中存储的存储数据标识。
S250、将所述目标上链数据存储至目标区块链网络的各区块链节点中。
相应的,若目标上链数据的存储数据量小于或等于数据量阈值,可以说明目标上链数据占据的存储空间较小,任意区块链节点的存储空间可以对目标上链数据进行直接存储,则可以将目标上链数据存储至目标区块链网络的各区块链节点中。
S260、接收用户对目标检索数据进行检索所发送的数据检索请求。
其中,目标检索数据可以是用户需要在目标区块链网络中获取的数据。数据检索请求可以是用于对目标检索数据进行检索并获取的数据。
相应的,当用户需要获取基于区块链网络存储的任意数据时,可以发送数据检索请求,对其需要的目标检索数据进行检索并获取。数据检索请求中可以包括任意可以在目标区块链网络中唯一表示目标检索数据的数据,可以根据区块链节点对其存储的不同数据的区分标记方法确定,在此不做限定。
S270、根据所述数据检索请求确定所述目标检索数据的目标存储标识数据。
其中,目标存储标识数据可以是根据数据检索请求,在区块链节点中存储的全部存储标识数据中确定出的与数据检索请求匹配的存储标识数据。
相应的,根据数据检索请求的描述,可以在目标区块链网络中进行检索,从而根据目标区块链网络中存储的全部存储标识数据的区分标记,确定目标检索数据所描述的目标存储标识数据。
在本发明的一个可选实施例中,所述根据所述数据检索请求确定所述目标检索数据的目标存储标识数据,可以包括:获取所述数据检索请求中的检索请求参数;在所述区块链节点中的全部所述数据属性参数中,获取与所述检索请求参数一致的目标数据属性参数;在所述区块链节点中获取与所述目标数据属性参数对应的所述目标存储标识数据。
其中,检索请求参数可以是描述目标检索数据的属性的数据,可以在目标区块链网络中唯一表示目标检索数据。目标数据属性参数可以是区块链节点中的全部数据属性参数中与检索请求参数一致的数据属性参数,与目标存储标识数据对应存储于目标区块链网络的各区块链节点中。
相应的,若目标区块链网络的区块链节点对目标上链数据的存储标识数据进行存储时,对应存储了目标上链数据的数据属性参数,则用户发送的数据检索请求中可以包括检索请求参数,以根据检索请求参数,在目标区块链网络中获取与其一致的目标数据属性参数,从而获取目标区块链网络中与目标数据属性参数对应存储的目标存储标识数据,该目标存储标识数据即为目标检索数据在第一存储***中的存储情况所对应的存储标识数据。
S280、在所述第一存储***存储中查询与所述目标存储标识数据对应的所述目标上链数据,将查询出的所述目标上链数据确定为所述目标检索数据反馈至所述用户。
相应的,目标存储标识数据可以在第一存储***中唯一表示目标检索数据,则根据目标存储标识数据,在第一存储***中查询与其对应的目标上链数据,即为目标检索数据,则将查询出的目标检索数据反馈至用户,以响应用户的数据查询请求。
在本发明的一个可选实施例中,在所述接收用户对目标检索数据进行检索所发送的数据检索请求之后,还可以包括:根据所述数据检索请求,在所述目标区块链网络中存储的全部所述目标上链数据中获取所述目标检索数据。
相应的,用户获取的目标检索数据也可以是存储数据量小于或等于数据量阈值,从而直接存储于目标区块链网络的各区块链节点中的,则可以根据数据检索请求,直接在目标区块链网络中存储的全部目标上链数据中获取目标检索数据。
需要说明的是,本发明实施例对S260~S280与S210~S250之间的执行顺序不做限定,S260~S280可以在用户需要对基于区块链网络存储的数据进行检索的任意情况下执行,S210~S250可以在需要基于区块链网络对数据进行存储的任意情况下执行,对S260~S280与S210~S250的执行过程之间的关系无需限定。
示例性的,图3是本发明实施例二提供的一种基于区块链的数据处理方法的流程示意图。在一个具体的例子中,如图3所示,本发明实施例提供的基于区块链的数据处理方法可以由后台服务端执行。预先可选的,用户可以选择加密模式,若选择对称加密模式,则向后台服务端提交指定长度的密钥;若选择非对称加密模式,则向后台服务端提交公钥和私钥两个参数;若选择加密打包压缩模式,则向后台服务端提交自定义长度的字符串。预先可选的,用户还可以动态设定数据量阈值。
当用户需要基于区块链存储文件时,将文件提交至后台服务端。后台服务端可以计算数据量大小,与设定的阈值进行比较,若接收到低于该阈值大小的文件,则将文件直接上链;若接收到高于该阈值的文件,则根据用户事先选择好的加密算法对文件进行加密,将加密后的文件数据保存到IPFS中,IPFS会返回一个Hash值,后台服务端将收到的Hash值保存入区块链中。
当用户需要查询基于区块链存储的文件时,发送查询请求到后台服务端,后台服务端可以从区块链***中获取数据Hash值,并根据该Hash从IPFS中获取加密后的数据。后台服务端可以根据用户选择好的加密算法,把获取到的数据进行解密,把解密结果返回给用户。
在上述用户存储或查询数据的过程中,用户无需察觉第一存储***IPFS的存在,则数据的实际存储位置可以无需被用户知晓,进一步确保了数据存储于第一存储***的安全性。
本发明实施例提供了一种基于区块链的数据处理方法,通过接收需要由目标区块链网络存储的目标上链数据并获取目标上链数据的存储数据量,在确定存储数据量大于数据量阈值的情况下,将目标上链数据存储至第一存储***,并根据第一存储***对目标上链数据的存储结果获取目标上链数据的存储标识数据,从而将存储标识数据存储至目标区块链网络的各区块链节点中,避免了现有技术中将数据冗余存储至各区块链节点造成的存储资源消耗和节点设备运载负担过大的问题,实现对占据存储空间较大的数据进行安全存储的同时,极大地节约区块链***的存储资源,提升区块链***的利用效率;进一步地,根据用户的数据检索请求确定出目标检索数据的存储标识数据,从而自动根据存储标识数据在第一存储***中获取目标检索数据并反馈至用户,实现对访问数据的用户隐藏数据的实际存储位置,进一步提升了数据存储的安全性。
实施例三
图4为本发明实施例三提供的一种基于区块链的数据处理装置的结构示意图,如图4所示,所述装置包括:数据接收模块310、数据存储模块320和标识上链模块330。
其中,数据接收模块310,用于接收目标上链数据并获取所述目标上链数据的存储数据量。
数据存储模块320,用于在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据。
标识上链模块330,用于将所述存储标识数据存储至目标区块链网络的各区块链节点中。
在本发明实施例的一个可选实施方式中,所述装置还包括:检索请求模块,用于接收用户对目标检索数据进行检索所发送的数据检索请求;标识检索模块,用于根据所述数据检索请求确定所述目标检索数据的目标存储标识数据;数据检索模块,用于在所述第一存储***存储中查询与所述目标存储标识数据对应的所述目标上链数据,将查询出的所述目标上链数据确定为所述目标检索数据反馈至所述用户。
在本发明实施例的一个可选实施方式中,标识上链模块330,具体可以用于:获取所述目标上链数据的数据属性参数;将所述数据属性参数和所述存储标识数据对应存储至所述目标区块链网络的各所述区块链节点中。
在本发明实施例的一个可选实施方式中,标识检索模块,具体可以用于:获取所述数据检索请求中的检索请求参数;在所述区块链节点中的全部所述数据属性参数中,获取与所述检索请求参数一致的目标数据属性参数;在所述区块链节点中获取与所述目标数据属性参数对应的所述目标存储标识数据。
在本发明实施例的一个可选实施方式中,数据存储模块320,还可以用于在所述将所述目标上链数据存储至第一存储***之前,获取与所述目标上链数据对应的加密算法参数;根据所述加密算法参数对所述目标上链数据进行加密处理。
在本发明实施例的一个可选实施方式中,数据存储模块320,具体可以用于:根据用户对所述目标上链数据的加密设定操作,确定目标类型加密算法;获取与所述目标类型加密算法匹配的用户密钥参数;根据所述用户密钥参数,采用所述目标类型加密算法对所述目标上链数据进行所述加密处理。
在本发明实施例的一个可选实施方式中,数据存储模块320,具体可以用于:根据所述存储数据量对所述目标上链数据进行分片处理,得到目标分片数据;将各所述目标分片数据存储至所述第一存储***,以使所述第一存储***对所述目标分片数据进行分布式存储,并分别生成各所述目标分片数据的分片标识数据;获取全部所述分片标识数据,并根据全部所述分片标识数据生成所述目标上链数据的所述存储标识数据。
上述装置可执行本发明任意实施例所提供的基于区块链的数据处理方法,具备执行该方法相应的功能模块和有益效果。
本发明实施例提供了一种基于区块链的数据处理装置,通过接收需要由目标区块链网络存储的目标上链数据并获取目标上链数据的存储数据量,在确定存储数据量大于数据量阈值的情况下,将目标上链数据存储至第一存储***,并根据第一存储***对目标上链数据的存储结果获取目标上链数据的存储标识数据,从而将存储标识数据存储至目标区块链网络的各区块链节点中,避免了现有技术中将数据冗余存储至各区块链节点造成的存储资源消耗和节点设备运载负担过大的问题,实现对占据存储空间较大的数据进行安全存储的同时,极大地节约区块链***的存储资源,提升区块链***的利用效率。
实施例四
图5为本发明实施例四提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备12的框图。图5显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器16,存储器28,连接不同***组件(包括存储器28和处理器16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
计算机设备12典型地包括多种计算机***可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机***可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机***存储介质。仅作为举例,存储***34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图5中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
处理器16通过运行存储在存储器28中的程序,从而执行各种功能应用以及数据处理,实现本发明实施例所提供的方法:接收目标上链数据并获取所述目标上链数据的存储数据量;在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据;将所述存储标识数据存储至目标区块链网络的各区块链节点中。
实施例五
本发明实施例五提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现本发明实施例所提供的方法:接收目标上链数据并获取所述目标上链数据的存储数据量;在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据;将所述存储标识数据存储至目标区块链网络的各区块链节点中。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或计算机设备上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种基于区块链的数据处理方法,其特征在于,包括:
接收目标上链数据并获取所述目标上链数据的存储数据量;
在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据;
将所述存储标识数据存储至目标区块链网络的各区块链节点中。
2.根据权利要求1所述的方法,其特征在于,还包括:
接收用户对目标检索数据进行检索所发送的数据检索请求;
根据所述数据检索请求确定所述目标检索数据的目标存储标识数据;
在所述第一存储***存储中查询与所述目标存储标识数据对应的所述目标上链数据,将查询出的所述目标上链数据确定为所述目标检索数据反馈至所述用户。
3.根据权利要求2所述的方法,其特征在于,所述将所述存储标识数据存储至目标区块链网络的各区块链节点中,包括:
获取所述目标上链数据的数据属性参数;
将所述数据属性参数和所述存储标识数据对应存储至所述目标区块链网络的各所述区块链节点中。
4.根据权利要求3所述的方法,其特征在于,所述根据所述数据检索请求确定所述目标检索数据的目标存储标识数据,包括:
获取所述数据检索请求中的检索请求参数;
在所述区块链节点中的全部所述数据属性参数中,获取与所述检索请求参数一致的目标数据属性参数;
在所述区块链节点中获取与所述目标数据属性参数对应的所述目标存储标识数据。
5.根据权利要求1所述的方法,其特征在于,在所述将所述目标上链数据存储至第一存储***之前,还包括:
获取与所述目标上链数据对应的加密算法参数;
根据所述加密算法参数对所述目标上链数据进行加密处理。
6.根据权利要求5所述的方法,其特征在于,所述获取与所述目标上链数据对应的加密算法参数,包括:
根据用户对所述目标上链数据的加密设定操作,确定目标类型加密算法;
获取与所述目标类型加密算法匹配的用户密钥参数;
所述根据所述加密算法参数对所述目标上链数据进行加密处理,包括:
根据所述用户密钥参数,采用所述目标类型加密算法对所述目标上链数据进行所述加密处理。
7.根据权利要求1所述的方法,其特征在于,所述将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据,包括:
根据所述存储数据量对所述目标上链数据进行分片处理,得到目标分片数据;
将各所述目标分片数据存储至所述第一存储***,以使所述第一存储***对所述目标分片数据进行分布式存储,并分别生成各所述目标分片数据的分片标识数据;
获取全部所述分片标识数据,并根据全部所述分片标识数据生成所述目标上链数据的所述存储标识数据。
8.一种基于区块链的数据处理装置,其特征在于,包括:
数据接收模块,用于接收目标上链数据并获取所述目标上链数据的存储数据量;
数据存储模块,用于在确定所述存储数据量大于数据量阈值的情况下,将所述目标上链数据存储至第一存储***,并根据所述第一存储***对所述目标上链数据的存储结果获取所述目标上链数据的存储标识数据;
标识上链模块,用于将所述存储标识数据存储至目标区块链网络的各区块链节点中。
9.一种计算机设备,其特征在于,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的基于区块链的数据处理方法。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的基于区块链的数据处理方法。
CN202111360986.XA 2021-11-17 2021-11-17 基于区块链的数据处理方法、装置、设备及存储介质 Pending CN114116710A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111360986.XA CN114116710A (zh) 2021-11-17 2021-11-17 基于区块链的数据处理方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111360986.XA CN114116710A (zh) 2021-11-17 2021-11-17 基于区块链的数据处理方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN114116710A true CN114116710A (zh) 2022-03-01

Family

ID=80396225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111360986.XA Pending CN114116710A (zh) 2021-11-17 2021-11-17 基于区块链的数据处理方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114116710A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115544170A (zh) * 2022-11-22 2022-12-30 中国信息通信研究院 基于区块链的数据托管方法和装置、电子设备、介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115544170A (zh) * 2022-11-22 2022-12-30 中国信息通信研究院 基于区块链的数据托管方法和装置、电子设备、介质
CN115544170B (zh) * 2022-11-22 2023-03-14 中国信息通信研究院 基于区块链的数据托管方法和装置、电子设备、介质

Similar Documents

Publication Publication Date Title
US10439804B2 (en) Data encrypting system with encryption service module and supporting infrastructure for transparently providing encryption services to encryption service consumer processes across encryption service state changes
US10235539B2 (en) Server device, recording medium, and concealed search system
CN108133008B (zh) 数据库中业务数据的处理方法、装置、设备和存储介质
US9811678B2 (en) Method and system for transferring data and instructions through a host file system
CN106971121B (zh) 数据处理方法、装置、服务器及存储介质
CN107948152B (zh) 信息存储方法、获取方法、装置及设备
US11068446B2 (en) Multi-cloud bi-directional storage replication system and techniques
US11546348B2 (en) Data service system
CN110457945A (zh) 名单查询的方法、查询方设备、服务方设备及存储介质
CN103259762A (zh) 一种基于云存储的文件加密、解密方法及***
CN108764902B (zh) 用于存储数据的方法、节点和区块链***
CN111597567A (zh) 数据处理方法、装置、节点设备及存储介质
CN108881261B (zh) 一种容器环境下基于区块链技术的服务认证方法及***
CN111783140A (zh) 请求响应方法及装置、电子设备及计算机可读存储介质
CN111507706B (zh) 数据浏览、存储的方法、装置、计算机设备以及存储介质
CN114116710A (zh) 基于区块链的数据处理方法、装置、设备及存储介质
US20230081189A1 (en) Container management for cryptanalysis attack protection
CN116192395A (zh) 用于分散式数据存储的可信***
CN112416526A (zh) 一种直接存储访问方法、装置及相关设备
CN114860390B (zh) 容器数据管理方法、装置、程序产品、介质及电子设备
US10354062B2 (en) System and method for simultaneous forensic, acquisition, examination and analysis of a computer readable medium at wire speed
US11829498B2 (en) Real-time dynamic blockchain securitization platform
CN112579255B (zh) 虚拟机迁移的压缩保护方法、迁入迁出加速器模块和soc芯片
US20220318438A1 (en) Systems and methods for data security on a mobile device
CN114461574A (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