CN106855930B - 一种安全可靠的大数据存储系统及方法 - Google Patents

一种安全可靠的大数据存储系统及方法 Download PDF

Info

Publication number
CN106855930B
CN106855930B CN201710005491.2A CN201710005491A CN106855930B CN 106855930 B CN106855930 B CN 106855930B CN 201710005491 A CN201710005491 A CN 201710005491A CN 106855930 B CN106855930 B CN 106855930B
Authority
CN
China
Prior art keywords
data
fingerprint value
fingerprint
comparison group
module
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
Application number
CN201710005491.2A
Other languages
English (en)
Other versions
CN106855930A (zh
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.)
Chengdu Sefon Software Co Ltd
Original Assignee
Chengdu Sefon Software 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 Chengdu Sefon Software Co Ltd filed Critical Chengdu Sefon Software Co Ltd
Priority to CN201710005491.2A priority Critical patent/CN106855930B/zh
Publication of CN106855930A publication Critical patent/CN106855930A/zh
Application granted granted Critical
Publication of CN106855930B publication Critical patent/CN106855930B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6227Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种安全可靠的大数据存储系统与方法,系统包括依次连接的前端采集设备、有线/无线传输设备和后端数据处理设备;前端采集设备包括数据采集模块和加密模块;有线/无线传输设备用于将加密数据发送至后端数据处理设备;后端数据处理设备包括解密模块、存储模块和指纹值数据库创建模块,存储模块实现加密后对对象进行通过内容比较的方式进行分段,得到多个数据片段,并建立对数据片段到对象的反相引用,或者上传数据片段并将所述指纹值更新至所述指纹值数据库。本发明在现有的加密解密的大数据系统之上,对数据存储进行改进,解决现有技术使用固定分块的形式,利用次数极少但是仍然占用大量空间,使得存储系统的整体利用率不高的问题。

Description

一种安全可靠的大数据存储系统及方法
技术领域
本发明涉及一种安全可靠的大数据存储系统及方法。
背景技术
云计算是一种全新的领先信息技术,结合IT技术和互联网实现超级计算和存储能力,而推动云计算兴起的动力是高速互联网和虚拟化技术的发展,更加廉价且功能强劲的芯片及硬盘、数据中心的发展。云计算可以看作是分布式计算、并行计算、效用计算、网络存储、虚拟化、负载均衡等传统计算机和网络技术发展融合的产物。云计算涉及的关键技术有很多,包括:通信、大规模分布式存储技术、海量数据处理技术、资源管理、虚拟化技术等。
大数据(bigdata),或称巨量资料,指的是所涉及的资料量规模巨大到无法通过目前主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯。大数据具有4V特点:Volume(大量)、Velocity(高速)、Variety(多样)、Value(价值)。大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。
内容寻址存储(Content Addressed Storage,CAS)是由美国EMC公司2002年4月率先提出的针对固定内容存储需求的先进的网络存储技术。CAS具有面向对象存储特征,基于磁记录技术,它按照所存储数据内容的数字指纹寻址,具有良好的可搜索性、安全性、可靠性和扩展性。EMC同时推出了其CAS产品Centera,并成为CAS存储技术的代表性产品。之后,一些存储公司相继推出了相关的产品,使CAS技术备受关注。
现有技术的加密操作并不进行双层加密,只在数据传输或者数据存储时进行加密。同时,现有技术的CAS,通常直接对对象进行固定分块的方式进行数据分片,采用该方式虽然可以节约分块的时间,然而如果是采用该种方法,会存在特别多固定分块,其利用次数极少但是仍然占用大量空间,使得存储系统的整体利用率不高,尤其是在大数据的基础上以及对于各种常用属性的组合的时候会产生上述问题。
发明内容
本发明的目的在于克服现有技术的不足,提供一种安全可靠的大数据存储系统及方法,采用双层加密操作,分别在数据传输之前以及数据存储之前进行加密,并且对数据存储进行改进。
本发明的目的是通过以下技术方案来实现的:
一种安全可靠的大数据存储系统,包括依次连接的前端采集设备、有线/无线传输设备和后端数据处理设备;所述的前端采集设备包括数据采集模块和加密模块,所述的数据采集模块用于采集数据,所述的加密模块用于对采集到的数据进行加密处理;所述的有线/无线传输设备用于将加密数据发送至后端数据处理设备;所述的后端数据处理设备包括解密模块、存储模块和指纹值数据库创建模块,所述的解密模块用于对接收到的数据进行解密处理,所述的存储模块实现将对象流中的对象进行加密后通过内容比较的方式进行分段,得到多个数据片段,并建立对数据片段到对象的反相引用,或者上传数据片段并将所述指纹值更新至所述指纹值数据库;所述的指纹值数据库创建模块用于获取大量与待存储数据类型相同的数据,对数据进行与存储模块相同的加密后再进行不同长度的分段,得到多组数据片段,计算数据片段的指纹值并上传至指纹值数据库;
所述的存储模块包括:
加密单元:用于对待存储的文件进行加密,并将加密后得到的对象发送至比较组获取单元;其中,加密前的文件为F=(d1,d2,......,dN),是包含N个消息的串,加密后的文件为F'=(e1,e2,......,eN+1),ei为di加密后的消息,其中加密的消息I为初始向量,EK(i)表示基于密钥的加密算法,eN+1表示之前所有加密消息e1,e2,......,eN的密钥K和哈希的异或函数,即其中H(i)是加密算法;
比较组获取单元:用于获取比较组,所述的比较组为对象的第m位至m+X位;其中,m为比较组的初始位,m的初始值为0,X为固定步长;
比较组指纹值计算单元:用于计算比较组对应的指纹值;
映射关系对应表生成单元:用于对比较组指纹值计算单元计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
判断与处理单元:用于调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:
(1)如果能够对应:则将缓存中的指纹值进行更新,将比较组更新为m~m+X+p*n位,同时返回比较组获取单元,其中p为m未更新的情况下的能够对应的总次数,n为每次能够对应后增加的增加步长;
(2)如果不能够对应,则进一步判断缓存中是否存在指纹值:
如果缓存中存在指纹值,则建立所述指纹值对应的数据片段到所述对象的反向引用,同时清空缓存,将比较组的初始位m更新为m+X+(p-1)*n+1,完成后返回比较组获取单元;
如果缓存中不存在指纹值,则上传所述对象的前X位的数据片段,并将对应的指纹值更新至所述指纹值数据库,将比较组的初始位m更新为m+X+1,完成后返回比较组获取单元;
结束判断单元:用于判断是否完成整个对象的分段,如果是则结束。
所述的后端数据处理设备还包括:数据分析模块,用于对数据存储的数据按照模型进行分析。
所述的存储模块还包括一个长度判断与数据处理单元:如果对象的最后一位大于m+X,则进入比较组获取单元;否则:直接计算m位~对象最后一位的指纹值;按照计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:如果是,则建立所述指纹值对应的数据片段到所述对象的反向引用;如果否,则上传所述指纹值对应的数据片段,并将所述指纹值更新至所述指纹值数据库。
所述的存储模块还包括一个对象头/尾判断单元:用于判断对象头/尾是否与为指纹值数据库中常用的数据头/尾,如果是则快速获取指纹值并建立所述指纹值对应的数据片段到所述对象的反向引用,并去掉常用的数据头/尾后进入比较组获取单元。
所述的比较组限制有最大值Y,当在能够对应的同时,满足X+p*n小于等于Y而X+(p+1)*n大于Y,则直接进入不能够对应并且缓存中存在指纹值的情况。
一种安全可靠的大数据存储方法,包括存储步骤和指纹值数据库创建步骤,所述的存储步骤包括以下子步骤:
S1:前端采集设备的数据采集模块采集数据,前端采集设备的加密模块对采集到的数据进行加密处理;
S2:有线/无线传输设备将加密数据发送至后端数据处理设备;
S3:后端数据处理设备的解密模块对接收到的数据进行解密处理,后端数据处理设备的存储模块对数据进行存储,包括以下子步骤:
S31:接收待存储的数据,在进行加密操作得到对象后进入步骤S32;其中,加密前的文件为F=(d1,d2,......,dN),是包含N个消息的串,加密后的文件为F'=(e1,e2,......,eN+1),ei为di加密后的消息,其中加密的消息I为初始向量,EK(i)表示基于密钥的加密算法,eN+1表示之前所有加密消息e1,e2,......,eN的密钥K和哈希的异或函数,即其中H(i)是加密算法;
S32:将对象流中的对象进行通过内容比较的方式进行分段,得到多个数据片段,并建立对数据片段到对象的反相引用,或者上传数据片段并将所述指纹值更新至所述指纹值数据库,包括以下子步骤:
S321:获取比较组,所述的比较组为对象的第m位至m+X位;其中,m为比较组的初始位,m的初始值为0,X为固定步长;
S322:计算比较组对应的指纹值;
S323:按照步骤S322计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
S324:调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:
(1)如果能够对应:
则将缓存中的指纹值进行更新,将比较组更新为m~m+X+p*n位,同时返回步骤S322,其中p为m未更新的情况下的能够对应的总次数,n为每次能够对应后增加的增加步长;
(2)如果不能够对应,则对判断缓存中是否存在指纹值:
(2-1)如果缓存中存在指纹值,则建立所述指纹值对应的数据片段到所述对象的反向引用,同时清空缓存,将比较组的初始位m更新为m+X+(p-1)*n+1,完成后返回步骤S321;
(2-2)如果缓存中不存在指纹值,则上传所述对象的前X位的数据片段,并将对应的指纹值更新至所述指纹值数据库,将比较组的初始位m更新为m+X+1,完成后返回步骤S321;
S33:当完成整个对象的分段,则结束;
所述的指纹值数据库创建步骤包括:获取大量与待存储数据类型相同的数据,对数据进行与存储模块相同的加密后再进行不同长度的分段,得到多组数据片段,计算数据片段的指纹值并上传至指纹值数据库。
一种安全可靠的大数据存储方法还包括步骤S4数据分析:对数据处理得到的数据按照模型进行分析。
在步骤S321所述的获取比较组之前,还包括一个判断步骤:如果对象的最后一位大于m+X,则进入步骤S321;否则:
S01:直接计算m位~对象最后一位的指纹值;
S02:按照计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
S03:调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:如果是,则建立所述指纹值对应的数据片段到所述对象的反向引用;如果否,则上传所述指纹值对应的数据片段,并将所述指纹值更新至所述指纹值数据库。
在步骤S31和步骤S32之间还包括一个对象头/尾判断步骤,用于判断对象头/尾是否与为指纹值数据库中常用的数据头/尾,如果是则快速获取指纹值并建立所述指纹值对应的数据片段到所述对象的反向引用,并去掉常用的数据头/尾后进入步骤S32。
所述的比较组限制有最大值Y,在步骤S324中,当在能够对应的同时,满足X+p*n小于等于Y而X+(p+1)*n大于Y,则直接进入不能够对应并且缓存中存在指纹值的情况。
本发明的有益效果是:
(1)本发明采用双层加密操作,分别在数据传输之前以及数据存储之前进行不同方式的加密,使得在传输过程和存储过程中分别可以提高安全性;同时,还解决现有技术使用固定分块的形式,导致特别多固定分块,其利用次数极少但是仍然占用大量空间,使得存储系统的整体利用率不高的问题,采用内容对比的方式对对象进行分段,当寻找到相同的指纹值时进行长度增加与再判断,直到下一次的指纹值不同,提高存储系统的利用率。
(2)本发明还包括一个常用头/尾判断,当分析到对象的头/尾属于常用头/尾时可快速进行获取。
附图说明
图1为本发明结构方框图;
图2为本发明存储步骤流程图;
图3为步骤S32流程图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案:
如图1所示,一种安全可靠的大数据存储系统,包括依次连接的前端采集设备、有线/无线传输设备和后端数据处理设备;所述的前端采集设备包括数据采集模块和加密模块,所述的数据采集模块用于采集数据,所述的加密模块用于对采集到的数据进行加密处理,在本实施例中,加密模块进行的加密优选为MD5;所述的有线/无线传输设备用于将加密数据发送至后端数据处理设备;所述的后端数据处理设备包括解密模块、存储模块和指纹值数据库创建模块,所述的解密模块用于对接收到的数据进行解密处理,所述的存储模块实现将对象流中的对象进行加密后通过内容比较的方式进行分段,得到多个数据片段,并建立对数据片段到对象的反相引用,或者上传数据片段并将所述指纹值更新至所述指纹值数据库;所述的指纹值数据库创建模块用于获取大量与待存储数据类型相同的数据,对数据进行与存储模块相同的加密后再进行不同长度的分段,得到多组数据片段,计算数据片段的指纹值并上传至指纹值数据库;
所述的存储模块包括:
加密单元:用于对待存储的文件进行加密,并将加密后得到的对象发送至比较组获取单元;其中,加密前的文件为F=(d1,d2,......,dN),是包含N个消息的串,加密后的文件为F'=(e1,e2,......,eN+1),ei为di加密后的消息,其中加密的消息I为初始向量,EK(i)表示基于密钥的加密算法,eN+1表示之前所有加密消息e1,e2,......,eN的密钥K和哈希的异或函数,即其中H(i)是加密算法;
在本实施例中,EK(i)优选为AES,H(i)优选为SHA,K为从块分组密码中随机选取的密钥。
比较组获取单元:用于获取比较组,所述的比较组为对象的第m位至m+X位;其中,m为比较组的初始位,m的初始值为0,X为固定步长;
比较组指纹值计算单元:用于计算比较组对应的指纹值;
映射关系对应表生成单元:用于对比较组指纹值计算单元计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
判断与处理单元:用于调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:
(1)如果能够对应:则将缓存中的指纹值进行更新,将比较组更新为m~m+X+p*n位,同时返回比较组获取单元,其中p为m未更新的情况下的能够对应的总次数,n为每次能够对应后增加的增加步长;
其中,所述的X和n的值可调节。具体地,n的值越小计算的精度越高,X的值根据常用数据的长度的均值进行选择。在不考虑计算量的情况下,n优选取1。
(2)如果不能够对应,则进一步判断缓存中是否存在指纹值:
如果缓存中存在指纹值,则建立所述指纹值对应的数据片段到所述对象的反向引用,同时清空缓存,将比较组的初始位m更新为m+X+(p-1)*n+1,完成后返回比较组获取单元;
此条为当进行了多次后的增加,用上一次的指纹值进行反向引用。
如果缓存中不存在指纹值,则上传所述对象的前X位的数据片段,并将对应的指纹值更新至所述指纹值数据库,将比较组的初始位m更新为m+X+1,完成后返回比较组获取单元;
此条为进行第一次比较就不对应时候的新写入。
结束判断单元:用于判断是否完成整个对象的分段,如果是则结束。
优选的,在上传所述对象的前X位的数据片段时,根据数据片段的指纹值将数据片段存储到不同的存储单元中。
采用该种方式对新的数据片段进行分类存储,以实现分布式存储。比如可以选取多个范围值,当数据片段的指纹值落在某个范围内就存储于对应的存储单元中。这样可以使得在数据比较阶段降低一定量的工作,或者在后期的数据获取阶段降低一定量的工作。
在本实施例中,所述的后端数据处理设备还包括:数据分析模块,用于对数据存储的数据按照模型进行分析。
在本实施例中,所述的存储模块还包括一个长度判断与数据处理单元:如果对象的最后一位大于m+X,则进入比较组获取单元;否则:直接计算m位~对象最后一位的指纹值;按照计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:如果是,则建立所述指纹值对应的数据片段到所述对象的反向引用;如果否,则上传所述指纹值对应的数据片段,并将所述指纹值更新至所述指纹值数据库。
此处用于判断对象的最大值,如果已经计算到对象的最后一位则不再进行下一次的计算。
在本实施例中,所述的存储模块还包括一个对象头/尾判断单元:用于判断对象头/尾是否与为指纹值数据库中常用的数据头/尾,如果是则快速获取指纹值并建立所述指纹值对应的数据片段到所述对象的反向引用,并去掉常用的数据头/尾后进入比较组获取单元。
此处用于对常用的头尾进行判断,比如对于网站类的存储常用的头“http://www.”就可以进行快速与后面的内容进行分开。
在本实施例中,所述的比较组限制有最大值Y,当在能够对应的同时,满足X+p*n小于等于Y而X+(p+1)*n大于Y,则直接进入不能够对应并且缓存中存在指纹值的情况。
基于上述系统的实现,本实施例还提供一种安全可靠的大数据存储方法,包括存储步骤和指纹值数据库创建步骤,所述的存储步骤如图2所示,包括以下子步骤:
S1:前端采集设备的数据采集模块采集数据,前端采集设备的加密模块对采集到的数据进行加密处理;
S2:有线/无线传输设备将加密数据发送至后端数据处理设备;
S3:后端数据处理设备的解密模块对接收到的数据进行解密处理,后端数据处理设备的存储模块对数据进行存储,包括以下子步骤:
S31:接收待存储的数据,在进行加密操作得到对象后进入步骤S32;其中,加密前的文件为F=(d1,d2,......,dN),是包含N个消息的串,加密后的文件为F'=(e1,e2,......,eN+1),ei为di加密后的消息,其中加密的消息I为初始向量,EK(i)表示基于密钥的加密算法,eN+1表示之前所有加密消息e1,e2,......,eN的密钥K和哈希的异或函数,即其中H(i)是加密算法;
S32:将对象流中的对象进行通过内容比较的方式进行分段,得到多个数据片段,并建立对数据片段到对象的反相引用,或者上传数据片段并将所述指纹值更新至所述指纹值数据库,如图3所示,包括以下子步骤:
S321:获取比较组,所述的比较组为对象的第m位至m+X位;其中,m为比较组的初始位,m的初始值为0,X为固定步长;
S322:计算比较组对应的指纹值;
S323:按照步骤S322计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
S324:调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:
(1)如果能够对应:
则将缓存中的指纹值进行更新,将比较组更新为m~m+X+p*n位,同时返回步骤S322,其中p为m未更新的情况下的能够对应的总次数,n为每次能够对应后增加的增加步长;
(2)如果不能够对应,则对判断缓存中是否存在指纹值:
(2-1)如果缓存中存在指纹值,则建立所述指纹值对应的数据片段到所述对象的反向引用,同时清空缓存,将比较组的初始位m更新为m+X+(p-1)*n+1,完成后返回步骤S321;
(2-2)如果缓存中不存在指纹值,则上传所述对象的前X位的数据片段,并将对应的指纹值更新至所述指纹值数据库,将比较组的初始位m更新为m+X+1,完成后返回步骤S321;
S33:当完成整个对象的分段,则结束;
所述的指纹值数据库创建步骤包括:获取大量与待存储数据类型相同的数据,对数据进行与存储模块相同的加密后再进行不同长度的分段,得到多组数据片段,计算数据片段的指纹值并上传至指纹值数据库。
对应地,一种安全可靠的大数据存储方法还包括步骤S4数据分析:对数据处理得到的数据按照模型进行分析。
对应地,在步骤S321所述的获取比较组之前,还包括一个判断步骤:如果对象的最后一位大于m+X,则进入步骤S321;否则:
S01:直接计算m位~对象最后一位的指纹值;
S02:按照计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
S03:调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:如果是,则建立所述指纹值对应的数据片段到所述对象的反向引用;如果否,则上传所述指纹值对应的数据片段,并将所述指纹值更新至所述指纹值数据库。
对应地,在步骤S31和步骤S32之间还包括一个对象头/尾判断步骤,用于判断对象头/尾是否与为指纹值数据库中常用的数据头/尾,如果是则快速获取指纹值并建立所述指纹值对应的数据片段到所述对象的反向引用,并去掉常用的数据头/尾后进入步骤S32。
对应地,所述的比较组限制有最大值Y,在步骤S324中,当在能够对应的同时,满足X+p*n小于等于Y而X+(p+1)*n大于Y,则直接进入不能够对应并且缓存中存在指纹值的情况。

Claims (10)

1.一种安全可靠的大数据存储系统,其特征在于:包括依次连接的前端采集设备、有线/无线传输设备和后端数据处理设备;所述的前端采集设备包括数据采集模块和加密模块,所述的数据采集模块用于采集数据,所述的加密模块用于对采集到的数据进行加密处理;所述的有线/无线传输设备用于将加密数据发送至后端数据处理设备;所述的后端数据处理设备包括解密模块、存储模块和指纹值数据库创建模块,所述的解密模块用于对接收到的数据进行解密处理,所述的存储模块实现将对象流中的对象进行加密后通过内容比较的方式进行分段,得到多个数据片段,并建立对数据片段到对象的反相引用,或者上传数据片段并将指纹值更新至所述指纹值数据库;所述的指纹值数据库创建模块用于获取大量与待存储数据类型相同的数据,对数据进行与存储模块相同的加密后再进行不同长度的分段,得到多组数据片段,计算数据片段的指纹值并上传至指纹值数据库;
所述的存储模块包括:
加密单元:用于对待存储的文件进行加密,并将加密后得到的对象发送至比较组获取单元;其中,加密前的文件为F=(d1,d2,......,dN),是包含N个消息的串,加密后的文件为F’=(e1,e2,......,eN+1),ei为di加密后的消息,其中加密的消息I为初始向量,EK(i)表示基于密钥的加密算法,eN+1表示之前所有加密消息e1,e2,......,eN的密钥K和哈希的异或函数,即其中H(i)是加密算法;
比较组获取单元:用于获取比较组,所述的比较组为对象的第m位至m+X位;其中,m为比较组的初始位,m的初始值为0,X为固定步长;
比较组指纹值计算单元:用于计算比较组对应的指纹值;
映射关系对应表生成单元:用于对比较组指纹值计算单元计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
判断与处理单元:用于调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:
(1)如果存在:则将缓存中的指纹值进行更新,将比较组更新为m~m+X+p*n位,同时返回比较组获取单元,其中p为m未更新的情况下的能够对应的总次数,n为每次能够对应后增加的增加步长;
(2)如果不存在,则进一步判断缓存中是否存在指纹值:
如果缓存中存在指纹值,则建立所述指纹值对应的数据片段到所述对象的反向引用,同时清空缓存,将比较组的初始位m更新为m+X+(p-1)*n+1,完成后返回比较组获取单元;
如果缓存中不存在指纹值,则上传所述对象的前X位的数据片段,并将对应的指纹值更新至所述指纹值数据库,将比较组的初始位m更新为m+X+1,完成后返回比较组获取单元;
结束判断单元:用于判断是否完成整个对象的分段,如果是则结束。
2.根据权利要求1所述的一种安全可靠的大数据存储系统,其特征在于:所述的后端数据处理设备还包括:数据分析模块,用于对数据存储的数据按照模型进行分析。
3.根据权利要求1所述的一种安全可靠的大数据存储系统,其特征在于:所述的存储模块还包括一个长度判断与数据处理单元:如果对象的最后一位大于m+X,则进入比较组获取单元;否则:直接计算m位~对象最后一位的指纹值;按照计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:如果是,则建立所述指纹值对应的数据片段到所述对象的反向引用;如果否,则上传所述指纹值对应的数据片段,并将所述指纹值更新至所述指纹值数据库。
4.根据权利要求1所述的一种安全可靠的大数据存储系统,其特征在于:所述的存储模块还包括一个对象头/尾判断单元:用于判断对象头/尾是否为指纹值数据库中常用的数据头/尾,如果是则快速获取指纹值并建立所述指纹值对应的数据片段到所述对象的反向引用,并去掉常用的数据头/尾后进入比较组获取单元。
5.根据权利要求1所述的一种安全可靠的大数据存储系统,其特征在于:所述的比较组限制有最大值Y,当在能够对应的同时,满足X+p*n小于等于Y而X+(p+1)*n大于Y,则直接进入不能够对应并且缓存中存在指纹值的情况。
6.一种安全可靠的大数据存储方法,其特征在于:包括存储步骤和指纹值数据库创建步骤,所述的存储步骤包括以下子步骤:
S1:前端采集设备的数据采集模块采集数据,前端采集设备的加密模块对采集到的数据进行加密处理;
S2:有线/无线传输设备将加密数据发送至后端数据处理设备;
S3:后端数据处理设备的解密模块对接收到的数据进行解密处理,后端数据处理设备的存储模块对数据进行存储,包括以下子步骤:
S31:接收待存储的数据,在进行加密操作得到对象后进入步骤S32;其中,加密前的文件为F=(d1,d2,......,dN),是包含N个消息的串,加密后的文件为F’=(e1,e2,......,eN+1),ei为di加密后的消息,其中加密的消息I为初始向量,EK(i)表示基于密钥的加密算法,eN+1表示之前所有加密消息e1,e2,......,eN的密钥K和哈希的异或函数,即其中H(i)是加密算法;
S32:将对象流中的对象进行通过内容比较的方式进行分段,得到多个数据片段,并建立对数据片段到对象的反相引用,或者上传数据片段并将指纹值更新至所述指纹值数据库,包括以下子步骤:
S321:获取比较组,所述的比较组为对象的第m位至m+X位;其中,m为比较组的初始位,m的初始值为0,X为固定步长;
S322:计算比较组对应的指纹值;
S323:按照步骤S322计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
S324:调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:
(1)如果能够对应:
则将缓存中的指纹值进行更新,将比较组更新为m~m+X+p*n位,同时返回步骤S322,其中p为m未更新的情况下的能够对应的总次数,n为每次能够对应后增加的增加步长;
(2)如果不能够对应,则判断缓存中是否存在指纹值:
(2-1)如果缓存中存在指纹值,则建立所述指纹值对应的数据片段到所述对象的反向引用,同时清空缓存,将比较组的初始位m更新为m+X+(p-1)*n+1,完成后返回步骤S321;
(2-2)如果缓存中不存在指纹值,则上传所述对象的前X位的数据片段,并将对应的指纹值更新至所述指纹值数据库,将比较组的初始位m更新为m+X+1,完成后返回步骤S321;
S33:当完成整个对象的分段,则结束;
所述的指纹值数据库创建步骤包括:获取大量与待存储数据类型相同的数据,对数据进行与存储模块相同的加密后再进行不同长度的分段,得到多组数据片段,计算数据片段的指纹值并上传至指纹值数据库。
7.根据权利要求6所述的一种安全可靠的大数据存储方法,其特征在于:还包括步骤S4数据分析:对数据处理得到的数据按照模型进行分析。
8.根据权利要求6所述的一种安全可靠的大数据存储方法,其特征在于:在步骤S321所述的获取比较组之前,还包括一个判断步骤:如果对象的最后一位大于m+X,则进入步骤S321;否则:
S01:直接计算m位~对象最后一位的指纹值;
S02:按照计算得到的指纹值生成反映所述指纹值与对应的存储位置的映射关系对应表;
S03:调用指纹值数据库,判断所述指纹值数据库中是否存在所述指纹值:如果是,则建立所述指纹值对应的数据片段到所述对象的反向引用;如果否,则上传所述指纹值对应的数据片段,并将所述指纹值更新至所述指纹值数据库。
9.根据权利要求6所述的一种安全可靠的大数据存储方法,其特征在于:在步骤S31和步骤S32之间还包括一个对象头/尾判断步骤,用于判断对象头/尾是否为指纹值数据库中常用的数据头/尾,如果是则快速获取指纹值并建立所述指纹值对应的数据片段到所述对象的反向引用,并去掉常用的数据头/尾后进入步骤S32。
10.根据权利要求6所述的一种安全可靠的大数据存储方法,其特征在于:所述的比较组限制有最大值Y,在步骤S324中,当在能够对应的同时,满足X+p*n小于等于Y而X+(p+1)*n大于Y,则直接进入不能够对应并且缓存中存在指纹值的情况。
CN201710005491.2A 2017-01-04 2017-01-04 一种安全可靠的大数据存储系统及方法 Active CN106855930B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710005491.2A CN106855930B (zh) 2017-01-04 2017-01-04 一种安全可靠的大数据存储系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710005491.2A CN106855930B (zh) 2017-01-04 2017-01-04 一种安全可靠的大数据存储系统及方法

Publications (2)

Publication Number Publication Date
CN106855930A CN106855930A (zh) 2017-06-16
CN106855930B true CN106855930B (zh) 2019-12-31

Family

ID=59126781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710005491.2A Active CN106855930B (zh) 2017-01-04 2017-01-04 一种安全可靠的大数据存储系统及方法

Country Status (1)

Country Link
CN (1) CN106855930B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111310217B (zh) * 2020-02-26 2023-04-11 超越科技股份有限公司 数据安全采集汇总方法、计算机设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1736030A (zh) * 2002-10-30 2006-02-15 河床技术股份有限公司 用于存储器中数据压缩的基于内容的分段模式及包括等级分段表示的传输
CN103198264A (zh) * 2013-03-14 2013-07-10 厦门市美亚柏科信息股份有限公司 一种加密文件系统数据的恢复方法和装置
CN104601681A (zh) * 2014-12-31 2015-05-06 乐视网信息技术(北京)股份有限公司 一种文件分片的处理方法和装置
CN104636673A (zh) * 2015-03-10 2015-05-20 四川中科腾信科技有限公司 一种在大数据背景下的数据安全存储方法
CN104917609A (zh) * 2015-05-19 2015-09-16 华中科技大学 一种基于用户感知的高效安全数据去重方法及系统
CN105183400A (zh) * 2015-10-23 2015-12-23 浪潮(北京)电子信息产业有限公司 一种基于内容寻址的对象存储方法和系统
CN105653209A (zh) * 2015-12-31 2016-06-08 浪潮(北京)电子信息产业有限公司 一种对象存储数据传输方法及装置
KR20160134173A (ko) * 2015-05-15 2016-11-23 동국대학교 산학협력단 대용량 데이터 처리를 위한 레거시 데스크탑 기반 파일의 분산 저장 시스템 및 방법
CN106203171A (zh) * 2016-06-03 2016-12-07 中国电子科技网络信息安全有限公司 大数据平台安全索引系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924439B2 (en) * 2009-09-01 2014-12-30 Verizon Patent And Licensing Inc. System for and method of partial file hashing

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1736030A (zh) * 2002-10-30 2006-02-15 河床技术股份有限公司 用于存储器中数据压缩的基于内容的分段模式及包括等级分段表示的传输
CN103198264A (zh) * 2013-03-14 2013-07-10 厦门市美亚柏科信息股份有限公司 一种加密文件系统数据的恢复方法和装置
CN104601681A (zh) * 2014-12-31 2015-05-06 乐视网信息技术(北京)股份有限公司 一种文件分片的处理方法和装置
CN104636673A (zh) * 2015-03-10 2015-05-20 四川中科腾信科技有限公司 一种在大数据背景下的数据安全存储方法
KR20160134173A (ko) * 2015-05-15 2016-11-23 동국대학교 산학협력단 대용량 데이터 처리를 위한 레거시 데스크탑 기반 파일의 분산 저장 시스템 및 방법
CN104917609A (zh) * 2015-05-19 2015-09-16 华中科技大学 一种基于用户感知的高效安全数据去重方法及系统
CN105183400A (zh) * 2015-10-23 2015-12-23 浪潮(北京)电子信息产业有限公司 一种基于内容寻址的对象存储方法和系统
CN105653209A (zh) * 2015-12-31 2016-06-08 浪潮(北京)电子信息产业有限公司 一种对象存储数据传输方法及装置
CN106203171A (zh) * 2016-06-03 2016-12-07 中国电子科技网络信息安全有限公司 大数据平台安全索引系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Hadoop的海量数据存储平台设计与开发;崔杰 等;《计算机研究与发展》;20121231(第49期);全文 *

Also Published As

Publication number Publication date
CN106855930A (zh) 2017-06-16

Similar Documents

Publication Publication Date Title
CN109451006B (zh) 一种数据传输方法、装置、服务器及计算机存储介质
CN106933701A (zh) 用于数据备份的方法及设备
CN111026788A (zh) 一种混合云中基于同态加密的多关键词密文排序检索方法
CN106817358B (zh) 一种用户资源的加密、解密方法和设备
CN108011857B (zh) 数据动态加密传输配置方法和装置
WO2018191712A1 (en) Wan optimized micro-service based deduplication
Wei et al. Information guided data sampling and recovery using bitmap indexing
CN108737353B (zh) 一种基于数据分析系统的数据加密方法及装置
CN106855930B (zh) 一种安全可靠的大数据存储系统及方法
CN112436943A (zh) 基于大数据的请求去重方法、装置、设备及存储介质
CN109325369B (zh) 一种建筑结构试验数据时间字段加密存储与检索的方法
CN108241639A (zh) 一种数据去重方法
CN116578656A (zh) 一种基于交互可视化的多维数据分析方法
US10409517B2 (en) Method and device for data backup
CN108600573B (zh) 基于树形BoW模型的密文JPEG图像检索方法
CN116521969A (zh) 一种数据检索方法、服务端、系统及相关设备
CN117439744A (zh) 基于业务安全等级的业务数据传输方法及装置
TW202311996A (zh) 用於資料壓縮的系統以及方法
CN114943021A (zh) 一种tb级增量数据筛选方法和装置
CN111130788B (zh) 数据处理方法和系统、数据读取方法和iSCSI服务器
CN114490773A (zh) 一种基于云平台的数据查询方法及云端数据管理系统
US11133823B2 (en) Quantum compression service using superdense encoding
CN110647585A (zh) 一种起到自动筛选和备份功能的数据部署系统
WO2017186049A1 (zh) 信息处理方法和装置
Yarmilko et al. Transforming Big Data: A Novel Arithmetic Compression Method Based on Symbol Frequency

Legal Events

Date Code Title Description
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