CN112565434A - 一种基于默克尔哈希树的云存储安全去重方法及装置 - Google Patents

一种基于默克尔哈希树的云存储安全去重方法及装置 Download PDF

Info

Publication number
CN112565434A
CN112565434A CN202011430056.2A CN202011430056A CN112565434A CN 112565434 A CN112565434 A CN 112565434A CN 202011430056 A CN202011430056 A CN 202011430056A CN 112565434 A CN112565434 A CN 112565434A
Authority
CN
China
Prior art keywords
user
file
cloud server
convergence
key
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
CN202011430056.2A
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.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
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 Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN202011430056.2A priority Critical patent/CN112565434A/zh
Publication of CN112565434A publication Critical patent/CN112565434A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种基于默克尔哈希树的云存储安全去重方法,网关服务器计算需要上传文件的标签,并把标签上传至云服务器;云服务器判断上传的标签是否已经存在;若存在,则云服务器运行所有权证明协议进行所有权验证,用户验证通过后才允许访问云服务器数据;若不存在,网关服务器对需上传的文件分块为n个数据块,并且构建默克尔哈希树、收敛密钥计算、加密。本发明基于默克尔哈希树与网关服务器提出一种云存储安全去重方法,在用户和云服务器之间架设网关服务器对上传的文件进行流量混淆,以抵抗攻击者;通过采用密钥链的机制来抵抗诚实但好奇的服务器从用户上传的隐私数据得到有价值的信息的同时降低了用户本地保存文件的数量和大小。

Description

一种基于默克尔哈希树的云存储安全去重方法及装置
技术领域
本发明涉及计算机技术领域,更具体地,涉及一种基于默克尔哈希树的云存储安全去重方法及装置。
背景技术
随着社会和计算机技术的不断发展,用户所产生的数据呈几何式增长,因此用户会优先选择把数据存放到云盘上以释放存储数据所需的磁盘空间。随着时间的推移,云盘的数据量也将会不断地上升,而面对如此庞大的数据量,如何对这些数据进行高效而安全地存储成为了每一个云服务提供商非常迫切需要解决的课题。数据去重技术又称为重复数据删除技术,它可以分为对文件的去重和对数据块的去重,该技术可以把数据集合中的文件或者文件中数据块的重复的部分进行删除,仅保留一份副本以及指向该副本的索引;这样做的好处在于可以在不影响用户使用数据的情况下,减轻云服务提供商对数据的存储压力,同时节省用户的网络带宽,提升了云服务的效率和质量。
专利CN201810922552等目前已有的云存储去重方案主要存在以下技术缺点在于:1)由于任何能访问该数据的用户都能根据数据内容计算得到收敛密钥,因此密文可能会遭受离线的字典攻击;2)仅适用于保护高级别不可预测的数据;3)并未考虑到去重过程中的侧信道攻击问题;4)攻击者可以通过上传特定文件到云服务器,根据去重是否发生以此可以得知云存储服务器中是否存在相同的文件;5)并未考虑到文件所有权的证明问题。
发明内容
本发明为克服上述现有技术所述的缺陷,提供一种基于默克尔哈希树的云存储安全去重方法及装置。通过采用密钥链的机制来抵抗诚实但好奇的服务器从用户上传的隐私数据得到有价值的信息的同时降低了用户本地保存文件的数量和大小。
为解决上述技术问题,本发明的技术方案如下:
一种基于默克尔哈希树的云存储安全去重方法,包括以下步骤:
S1:在用户上传文件时,文件首先上传到网关服务器;
S2:网关服务器计算需要上传文件的标签T,并把标签T上传至云服务器;云服务器判断上传的标签是否已经存在;
若不存在,网关服务器对需上传的文件分块为n个数据块{Bi}(1≤i≤n),执行步骤S3;
若存在,则云服务器运行所有权证明协议进行所有权验证,用户验证通过后才允许访问云服务器数据;
S3:网关服务器分别计算出n个数据块的标签{ti}(1≤i≤n),随后网关服务器使用数据块的标签来构建默克尔哈希树,即把数据块的标签作为默克尔哈希树的叶子节点来构建完整的默克尔哈希树;
S4:网关服务器分别对n个数据块进行收敛密钥的计算Ki=KeyGen(Bi),利用收敛密钥得到数据块的密文Ci=Encrypt(Ki,Bi),随后使用密钥链机制对收敛密钥进行加密,即使用前一个数据块的收敛密钥加密后一个数据块的收敛密钥;网关服务器把第一个数据块的收敛密钥K1发送回给用户并删除本地存放的文件;并将其余的数据块密文和收敛密钥密文全都上传到云服务器中,同时把用户信息上传到云服务器中做授权记录以实现用户下载文件的功能。
优选地,所述方法还包括:
为了抵抗攻击者监控网关服务器和云服务器之间的网络流量信息,当文件标签T不存在于云服务器时,网关服务器在上传数据块和收敛密钥密文前,要先对数据块密文和收敛密钥密文经过调制器进行流量混淆,即随机化目标流量特征字段、字符和部分流量统计特征信息,使得混淆后的文件流量不是攻击者所上传文件的真实流量,这样可以抵抗攻击者上传特定文件通过监控网络流量状态分析去重是否发生以此判断云服务器中是否存在相同文件的攻击。
优选地,随机化流量混淆即利用加密、随机填充、随机时延调整、位运算方法随机化目标流量特征字段、字符和部分流量统计特征等信息,使观察者难以从观测流量集中识别目标流量的状态称为随机化流量混淆;
随机化混淆技术在发送端、接收端分别部署调制器、解调器,调制器和解调器作为调制解调模块集成在客户端和服务端;调制器负责随机化运算,解调器负责随机化逆运算,随机化与逆随机化运算能够形式化地描述为:P=Random-1(P′,E-1,F-1,A-1,S-1,B-1),其中,P′是随机化报文,Random()为随机化运算,Random–1()为Random()的逆运算,E为加密参数,E–1为解密参数,F为填充参数,F–1为去填充参数,A为报文间隔调整参数,A–1为去报文间隔调整参数,S为分割参数,S–1为合并参数,B为位运算参数,B–1为逆位运算参数;
混淆算法的实现过程为:客户端发送报文P,经过调制器转换为P′,P′经网络到达解调器,解调器将P′逆随机化还原P并转发给服务端。
本发明在用户和云服务器之间架设网关服务器对上传的文件进行流量混淆,以抵抗攻击者进行网络流量的监控和直接参与云服务器的挑战应答过程。
优选地,所述方法还包括:
当用户请求下载文件F时,云服务器先查看该用户是否具有访问文件的权限;若用户无访问权限则拒绝下载操作,若用户有访问权限则把数据块密文{Bi}和收敛密钥的密文返回给用户;用户接收到密文数据后利用收敛密钥K1对收敛密钥密文进行解密以此得到收敛密钥K2,以此类推用户可解密出所有数据块的收敛密钥,随后用户使用收敛密钥对所有数据块进行解密即可得到文件F。
优选地,步骤S3中,所述默克尔哈希树包括根节点、中间节点和叶子节点,把数据块的标签作为叶子节点,叶子节点与其兄弟节点成对组合,对每一对节点进行哈希运算得到父节点,以此从下往上逐层运算,最终会得到唯一的根节点,默克尔哈希树用于验证数据的完整性和用户所有权。
优选地,步骤S4中,收敛加密算法是一种确定性的加密算法,为了确保相同的数据可以生成相同的密钥,收敛加密算法的收敛密钥由数据内容产生,构成收敛加密的基础算法为:
1)收敛密钥生成算法:KeyGen(Bi)=>Ki,输入明文Bi,输出收敛密钥Ki;
2)加密算法:Encrypt(Ki,Bi)=>Ci,输入收敛密钥Ki和明文Bi,输出加密后的密文Ci;
3)解密算法:Decrypt(Ki,Ci)=>Bi:输入收敛密钥Ki和密文Ci,输出明文Bi;
4)标签生成:算法TagGen(Bi)=>T,明文Bi作为输入,输出文件的标识T。
优选地,步骤S2中,所有权验证步骤如下:
1)服务器发起挑战:随机选择k个数据块标签向网关服务器发起挑战,并将挑战信息发送给网关服务器;
2)网关服务器根据云服务器提出的挑战,计算出相应的验证完整性证据并将证据发回给云服务器;
3)云服务器验证完整性证据的正确性,若验证通过,云服务器返回验证成功信息,此时网关服务器发送用户信息到云服务器同时把把第一个数据块的收敛密钥返回给用户,云服务器会记录用户信息并授权其访问数据,网关服务器会删除本地文件;若验证不通过则拒绝用户访问数据。
一种基于默克尔哈希树的云存储安全去重装置,所述装置为网关服务器,包括:
上传请求接收模块:用于接收用户发送的将文件上传到云服务器的请求;
标签计算模块:用于计算用户需要上传的文件的标签T,并把标签T上传至云服务器,由云服务器判断上传的标签是否已经存在;
文件分块模块:用于在标签不存在于云服务器时,对需上传的文件分块为n个数据块{Bi}(1≤i≤n);
默克尔哈希树构建模块:用于计算出n个数据块的标签{ti}(1≤i≤n),并使用数据块的标签来构建默克尔哈希树,即把数据块的标签作为默克尔哈希树的叶子节点来构建完整的默克尔哈希树;
收敛密钥计算和加密模块:用于分别对n个数据块进行收敛密钥的计算Ki=KeyGen(Bi),利用收敛密钥得到数据块的密文Ci=Encrypt(Ki,Bi),随后使用密钥链机制对收敛密钥进行加密,即使用前一个数据块的收敛密钥加密后一个数据块的收敛密钥;把第一个数据块的收敛密钥K1发送回给用户并删除本地存放的文件;并将其余的数据块密文和收敛密钥密文全都上传到云服务器中,同时把用户信息上传到云服务器中做授权记录以实现用户下载文件的功能。
优选地,所述装置还包括:
流量混淆模块:用于在上传数据块和收敛密钥密文前,对数据块密文和收敛密钥密文经过调制器进行流量混淆,即随机化目标流量特征字段、字符和部分流量统计特征信息,使得混淆后的文件流量不是攻击者所上传文件的真实流量,这样可以抵抗攻击者上传特定文件通过监控网络流量状态分析去重是否发生以此判断云服务器中是否存在相同文件的攻击。
优选地,所述装置还包括:
下载请求接收模块:当用户请求下载文件F时,下载请求接收模块查看该用户是否具有访问文件的权限;若用户无访问权限则拒绝下载操作,若用户有访问权限则把数据块密文{Bi}和收敛密钥的密文返回给用户;用户接收到密文数据后利用收敛密钥K1对收敛密钥密文进行解密以此得到收敛密钥K2,以此类推用户可解密出所有数据块的收敛密钥,随后用户使用收敛密钥对所有数据块进行解密即可得到文件F。
与现有技术相比,本发明技术方案的有益效果是:本发明提供一种基于默克尔哈希树的云存储安全去重方法,在用户上传文件时,文件首先上传到网关服务器;网关服务器计算需要上传文件的标签,并把标签上传至云服务器;云服务器判断上传的标签是否已经存在;若存在,则云服务器运行所有权证明协议进行所有权验证,用户验证通过后才允许访问云服务器数据;若不存在,网关服务器对需上传的文件分块为n个数据块,并且构建默克尔哈希树、收敛密钥计算、加密。通过采用密钥链的机制来抵抗诚实但好奇的服务器从用户上传的隐私数据得到有价值的信息的同时降低了用户本地保存文件的数量和大小。
附图说明
图1为实施例1的方法所运用的系统模型。
图2为实施例1的方法流程图。
图3为实施例2的装置的示意图。
具体实施方式
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本发明实施例提供一种基于默克尔哈希树的云存储安全去重方法,该方法所运用的系统模型包括:用户和云服务器和网关服务器,系统模型架构如附图1所示。
云服务器:为用户提供外包数据服务的实体,在用户上传重复的数据文件时,云服务器会对文件数据进行安全去重以降低存储成本和节省用户上传带宽。
用户:为了节省本地存储空间,把数据外包存储到云服务器中,并且可随时访问数据的实体。
网关服务器:为用户代理上传文件、进行文件所有权验证,代理云服务器给用户授权,以及进行文件上传流量混淆。
如图2所示,本实施例提供的基于默克尔哈希树的云存储安全去重方法,包括以下步骤:
S1:在用户上传文件时,文件首先上传到网关服务器;
S2:网关服务器计算需要上传文件的标签T,并把标签T上传至云服务器;云服务器判断上传的标签是否已经存在;
若不存在,网关服务器对需上传的文件分块为n个数据块{Bi}(1≤i≤n),执行步骤S3;
若存在,则云服务器运行所有权证明协议进行所有权验证,用户验证通过后才允许访问云服务器数据;
S3:网关服务器分别计算出n个数据块的标签{ti}(1≤i≤n),随后网关服务器使用数据块的标签来构建默克尔哈希树,即把数据块的标签作为默克尔哈希树的叶子节点来构建完整的默克尔哈希树;
S4:网关服务器分别对n个数据块进行收敛密钥的计算Ki=KeyGen(Bi),利用收敛密钥得到数据块的密文Ci=Encrypt(Ki,Bi),随后使用密钥链机制对收敛密钥进行加密,即使用前一个数据块的收敛密钥加密后一个数据块的收敛密钥;网关服务器把第一个数据块的收敛密钥K1发送回给用户并删除本地存放的文件;并将其余的数据块密文和收敛密钥密文全都上传到云服务器中,同时把用户信息上传到云服务器中做授权记录以实现用户下载文件的功能。
所述方法还包括:
为了抵抗攻击者监控网关服务器和云服务器之间的网络流量信息,当文件标签T不存在于云服务器时,网关服务器在上传数据块和收敛密钥密文前,要先对数据块密文和收敛密钥密文经过调制器进行流量混淆,即随机化目标流量特征字段、字符和部分流量统计特征信息,使得混淆后的文件流量不是攻击者所上传文件的真实流量,这样可以抵抗攻击者上传特定文件通过监控网络流量状态分析去重是否发生以此判断云服务器中是否存在相同文件的攻击。
随机化流量混淆即利用加密、随机填充、随机时延调整、位运算方法随机化目标流量特征字段、字符和部分流量统计特征等信息,使观察者难以从观测流量集中识别目标流量的状态称为随机化流量混淆;
随机化混淆技术在发送端、接收端分别部署调制器、解调器,调制器和解调器作为调制解调模块集成在客户端和服务端;调制器负责随机化运算,解调器负责随机化逆运算,随机化与逆随机化运算能够形式化地描述为:P=Random-1(P′,E-1,F-1,A-1,S-1,B-1),其中,P′是随机化报文,Random()为随机化运算,Random–1()为Random()的逆运算,E为加密参数,E–1为解密参数,F为填充参数,F–1为去填充参数,A为报文间隔调整参数,A–1为去报文间隔调整参数,S为分割参数,S–1为合并参数,B为位运算参数,B–1为逆位运算参数;
混淆算法的实现过程为:客户端发送报文P,经过调制器转换为P′,P′经网络到达解调器,解调器将P′逆随机化还原P并转发给服务端。
本发明在用户和云服务器之间架设网关服务器对上传的文件进行流量混淆,以抵抗攻击者进行网络流量的监控和直接参与云服务器的挑战应答过程。
所述方法还包括:
当用户请求下载文件F时,云服务器先查看该用户是否具有访问文件的权限;若用户无访问权限则拒绝下载操作,若用户有访问权限则把数据块密文{Bi}和收敛密钥的密文返回给用户;用户接收到密文数据后利用收敛密钥K1对收敛密钥密文进行解密以此得到收敛密钥K2,以此类推用户可解密出所有数据块的收敛密钥,随后用户使用收敛密钥对所有数据块进行解密即可得到文件F。
步骤S3中,所述默克尔哈希树包括根节点、中间节点和叶子节点,把数据块的标签作为叶子节点,叶子节点与其兄弟节点成对组合,对每一对节点进行哈希运算得到父节点,以此从下往上逐层运算,最终会得到唯一的根节点,默克尔哈希树用于验证数据的完整性和用户所有权。
步骤S4中,收敛加密算法是一种确定性的加密算法,为了确保相同的数据可以生成相同的密钥,收敛加密算法的收敛密钥由数据内容产生,构成收敛加密的基础算法为:
1)收敛密钥生成算法:KeyGen(Bi)=>Ki,输入明文Bi,输出收敛密钥Ki;
2)加密算法:Encrypt(Ki,Bi)=>Ci,输入收敛密钥Ki和明文Bi,输出加密后的密文Ci;
3)解密算法:Decrypt(Ki,Ci)=>Bi:输入收敛密钥Ki和密文Ci,输出明文Bi;
4)标签生成:算法TagGen(Bi)=>T,明文Bi作为输入,输出文件的标识T。
步骤S2中,所有权验证步骤如下:
1)服务器发起挑战:随机选择k个数据块标签向网关服务器发起挑战,并将挑战信息发送给网关服务器;
2)网关服务器根据云服务器提出的挑战,计算出相应的验证完整性证据并将证据发回给云服务器;
3)云服务器验证完整性证据的正确性,若验证通过,云服务器返回验证成功信息,此时网关服务器发送用户信息到云服务器同时把把第一个数据块的收敛密钥返回给用户,云服务器会记录用户信息并授权其访问数据,网关服务器会删除本地文件;若验证不通过则拒绝用户访问数据。
本实施例为克服上述现有技术所述的缺陷,提供一种基于默克尔哈希树的云存储安全去重方法。本发明的目的在于针对目前云存储去重技术中存在的缺陷,基于默克尔哈希树与网关服务器,在用户和云服务器之间架设网关服务器对上传的文件进行流量混淆,以抵抗攻击者进行网络流量的监控和直接参与云服务器的挑战应答过程;通过采用密钥链的机制来抵抗诚实但好奇的服务器从用户上传的隐私数据得到有价值的信息的同时降低了用户本地保存文件的数量和大小;而在文件标签相同时,增加了所有权验证过程以避免攻击者通过文件标签或部分信息得到文件访问权限。
实施例2
如图3所示,一种基于默克尔哈希树的云存储安全去重装置,所述装置为网关服务器,包括:
上传请求接收模块:用于接收用户发送的将文件上传到云服务器的请求;
标签计算模块:用于计算用户需要上传的文件的标签T,并把标签T上传至云服务器,由云服务器判断上传的标签是否已经存在;
文件分块模块:用于在标签不存在于云服务器时,对需上传的文件分块为n个数据块{Bi}(1≤i≤n);
默克尔哈希树构建模块:用于计算出n个数据块的标签{ti}(1≤i≤n),并使用数据块的标签来构建默克尔哈希树,即把数据块的标签作为默克尔哈希树的叶子节点来构建完整的默克尔哈希树;
收敛密钥计算和加密模块:用于分别对n个数据块进行收敛密钥的计算Ki=KeyGen(Bi),利用收敛密钥得到数据块的密文Ci=Encrypt(Ki,Bi),随后使用密钥链机制对收敛密钥进行加密,即使用前一个数据块的收敛密钥加密后一个数据块的收敛密钥;把第一个数据块的收敛密钥K1发送回给用户并删除本地存放的文件;并将其余的数据块密文和收敛密钥密文全都上传到云服务器中,同时把用户信息上传到云服务器中做授权记录以实现用户下载文件的功能。
所述装置还包括:
流量混淆模块:用于在上传数据块和收敛密钥密文前,对数据块密文和收敛密钥密文经过调制器进行流量混淆,即随机化目标流量特征字段、字符和部分流量统计特征信息,使得混淆后的文件流量不是攻击者所上传文件的真实流量,这样可以抵抗攻击者上传特定文件通过监控网络流量状态分析去重是否发生以此判断云服务器中是否存在相同文件的攻击。
所述装置还包括:
下载请求接收模块:当用户请求下载文件F时,下载请求接收模块查看该用户是否具有访问文件的权限;若用户无访问权限则拒绝下载操作,若用户有访问权限则把数据块密文{Bi}和收敛密钥的密文返回给用户;用户接收到密文数据后利用收敛密钥K1对收敛密钥密文进行解密以此得到收敛密钥K2,以此类推用户可解密出所有数据块的收敛密钥,随后用户使用收敛密钥对所有数据块进行解密即可得到文件F。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (10)

1.一种基于默克尔哈希树的云存储安全去重方法,其特征在于,包括以下步骤:
S1:在用户上传文件时,文件首先上传到网关服务器;
S2:网关服务器计算需要上传文件的标签T,并把标签T上传至云服务器;云服务器判断上传的标签是否已经存在;
若不存在,网关服务器对需上传的文件分块为n个数据块{Bi}(1≤i≤n),执行步骤S3;
若存在,则云服务器运行所有权证明协议进行所有权验证,用户验证通过后才允许访问云服务器数据;
S3:网关服务器分别计算出n个数据块的标签{ti}(1≤i≤n),随后网关服务器使用数据块的标签来构建默克尔哈希树,即把数据块的标签作为默克尔哈希树的叶子节点来构建完整的默克尔哈希树;
S4:网关服务器分别对n个数据块进行收敛密钥的计算Ki=KeyGen(Bi),利用收敛密钥得到数据块的密文Ci=Encrypt(Ki,Bi),随后使用密钥链机制对收敛密钥进行加密,即使用前一个数据块的收敛密钥加密后一个数据块的收敛密钥;网关服务器把第一个数据块的收敛密钥K1发送回给用户并删除本地存放的文件;并将其余的数据块密文和收敛密钥密文全都上传到云服务器中,同时把用户信息上传到云服务器中做授权记录以实现用户下载文件的功能。
2.根据权利要求1所述的基于默克尔哈希树的云存储安全去重方法,其特征在于,所述方法还包括:
为了抵抗攻击者监控网关服务器和云服务器之间的网络流量信息,当文件标签T不存在于云服务器时,网关服务器在上传数据块和收敛密钥密文前,要先对数据块密文和收敛密钥密文经过调制器进行流量混淆,即随机化目标流量特征字段、字符和部分流量统计特征信息,使得混淆后的文件流量不是攻击者所上传文件的真实流量,这样可以抵抗攻击者上传特定文件通过监控网络流量状态分析去重是否发生以此判断云服务器中是否存在相同文件的攻击。
3.根据权利要求2所述的基于默克尔哈希树的云存储安全去重方法,其特征在于,随机化流量混淆即利用加密、随机填充、随机时延调整、位运算方法随机化目标流量特征字段、字符和部分流量统计特征等信息,使观察者难以从观测流量集中识别目标流量的状态称为随机化流量混淆;
随机化混淆技术在发送端、接收端分别部署调制器、解调器,调制器和解调器作为调制解调模块集成在客户端和服务端;调制器负责随机化运算,解调器负责随机化逆运算,随机化与逆随机化运算能够形式化地描述为:P=Random-1(P′,E-1,F-1,A-1,S-1,B-1),其中,P′是随机化报文,Random()为随机化运算,Random–1()为Random()的逆运算,E为加密参数,E–1为解密参数,F为填充参数,F–1为去填充参数,A为报文间隔调整参数,A–1为去报文间隔调整参数,S为分割参数,S–1为合并参数,B为位运算参数,B–1为逆位运算参数;
混淆算法的实现过程为:客户端发送报文P,经过调制器转换为P′,P′经网络到达解调器,解调器将P′逆随机化还原P并转发给服务端。
4.根据权利要求1所述的基于默克尔哈希树的云存储安全去重方法,其特征在于,所述方法还包括:
当用户请求下载文件F时,云服务器先查看该用户是否具有访问文件的权限;若用户无访问权限则拒绝下载操作,若用户有访问权限则把数据块密文{Bi}和收敛密钥的密文返回给用户;用户接收到密文数据后利用收敛密钥K1对收敛密钥密文进行解密以此得到收敛密钥K2,以此类推用户可解密出所有数据块的收敛密钥,随后用户使用收敛密钥对所有数据块进行解密即可得到文件F。
5.根据权利要求1所述的基于默克尔哈希树的云存储安全去重方法,其特征在于,步骤S3中,所述默克尔哈希树包括根节点、中间节点和叶子节点,把数据块的标签作为叶子节点,叶子节点与其兄弟节点成对组合,对每一对节点进行哈希运算得到父节点,以此从下往上逐层运算,最终会得到唯一的根节点,默克尔哈希树用于验证数据的完整性和用户所有权。
6.根据权利要求1所述的基于默克尔哈希树的云存储安全去重方法,其特征在于,步骤S4中,收敛加密算法是一种确定性的加密算法,为了确保相同的数据可以生成相同的密钥,收敛加密算法的收敛密钥由数据内容产生,构成收敛加密的基础算法为:
1)收敛密钥生成算法:KeyGen(Bi)=>Ki,输入明文Bi,输出收敛密钥Ki;
2)加密算法:Encrypt(Ki,Bi)=>Ci,输入收敛密钥Ki和明文Bi,输出加密后的密文Ci;
3)解密算法:Decrypt(Ki,Ci)=>Bi:输入收敛密钥Ki和密文Ci,输出明文Bi;
4)标签生成:算法TagGen(Bi)=>T,明文Bi作为输入,输出文件的标识T。
7.根据权利要求1所述的基于默克尔哈希树的云存储安全去重方法,其特征在于,步骤S2中,所有权验证步骤如下:
1)服务器发起挑战:随机选择k个数据块标签向网关服务器发起挑战,并将挑战信息发送给网关服务器;
2)网关服务器根据云服务器提出的挑战,计算出相应的验证完整性证据并将证据发回给云服务器;
3)云服务器验证完整性证据的正确性,若验证通过,云服务器返回验证成功信息,此时网关服务器发送用户信息到云服务器同时把把第一个数据块的收敛密钥返回给用户,云服务器会记录用户信息并授权其访问数据,网关服务器会删除本地文件;若验证不通过则拒绝用户访问数据。
8.一种基于默克尔哈希树的云存储安全去重装置,其特征在于,所述装置为网关服务器,包括:
上传请求接收模块:用于接收用户发送的将文件上传到云服务器的请求;
标签计算模块:用于计算用户需要上传的文件的标签T,并把标签T上传至云服务器,由云服务器判断上传的标签是否已经存在;
文件分块模块:用于在标签不存在于云服务器时,对需上传的文件分块为n个数据块{Bi}(1≤i≤n);
默克尔哈希树构建模块:用于计算出n个数据块的标签{ti}(1≤i≤n),并使用数据块的标签来构建默克尔哈希树,即把数据块的标签作为默克尔哈希树的叶子节点来构建完整的默克尔哈希树;
收敛密钥计算和加密模块:用于分别对n个数据块进行收敛密钥的计算Ki=KeyGen(Bi),利用收敛密钥得到数据块的密文Ci=Encrypt(Ki,Bi),随后使用密钥链机制对收敛密钥进行加密,即使用前一个数据块的收敛密钥加密后一个数据块的收敛密钥;把第一个数据块的收敛密钥K1发送回给用户并删除本地存放的文件;并将其余的数据块密文和收敛密钥密文全都上传到云服务器中,同时把用户信息上传到云服务器中做授权记录以实现用户下载文件的功能。
9.根据权利要求8所述的基于默克尔哈希树的云存储安全去重装置,其特征在于,所述装置还包括:
流量混淆模块:用于在上传数据块和收敛密钥密文前,对数据块密文和收敛密钥密文经过调制器进行流量混淆,即随机化目标流量特征字段、字符和部分流量统计特征信息,使得混淆后的文件流量不是攻击者所上传文件的真实流量,这样可以抵抗攻击者上传特定文件通过监控网络流量状态分析去重是否发生以此判断云服务器中是否存在相同文件的攻击。
10.根据权利要求8所述的基于默克尔哈希树的云存储安全去重方法,其特征在于,所述装置还包括:
下载请求接收模块:当用户请求下载文件F时,下载请求接收模块查看该用户是否具有访问文件的权限;若用户无访问权限则拒绝下载操作,若用户有访问权限则把数据块密文{Bi}和收敛密钥的密文返回给用户;用户接收到密文数据后利用收敛密钥K1对收敛密钥密文进行解密以此得到收敛密钥K2,以此类推用户可解密出所有数据块的收敛密钥,随后用户使用收敛密钥对所有数据块进行解密即可得到文件F。
CN202011430056.2A 2020-12-09 2020-12-09 一种基于默克尔哈希树的云存储安全去重方法及装置 Pending CN112565434A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011430056.2A CN112565434A (zh) 2020-12-09 2020-12-09 一种基于默克尔哈希树的云存储安全去重方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011430056.2A CN112565434A (zh) 2020-12-09 2020-12-09 一种基于默克尔哈希树的云存储安全去重方法及装置

Publications (1)

Publication Number Publication Date
CN112565434A true CN112565434A (zh) 2021-03-26

Family

ID=75060782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011430056.2A Pending CN112565434A (zh) 2020-12-09 2020-12-09 一种基于默克尔哈希树的云存储安全去重方法及装置

Country Status (1)

Country Link
CN (1) CN112565434A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114143098A (zh) * 2021-12-03 2022-03-04 建信金融科技有限责任公司 数据存储方法和数据存储装置
CN115001818A (zh) * 2022-06-01 2022-09-02 国际关系学院 抗随机块生成攻击的轻量级云数据安全去重方法
CN115879136A (zh) * 2023-02-09 2023-03-31 蒲惠智造科技股份有限公司 云端数据保护方法
CN116599650A (zh) * 2023-07-14 2023-08-15 民航成都电子技术有限责任公司 一种密文去重方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761596A (zh) * 2011-04-28 2012-10-31 汤姆森许可贸易公司 在在线存储系统中上载文件的方法及相应在线存储系统
CN105915332A (zh) * 2016-07-04 2016-08-31 广东工业大学 一种云存储加密及去重复方法及其系统
CN106612320A (zh) * 2016-06-14 2017-05-03 四川用联信息技术有限公司 云存储中一种加密数据的去重方法
CN108494552A (zh) * 2018-03-16 2018-09-04 西安电子科技大学 支持高效收敛密钥管理的云存储数据去重方法
CN109491591A (zh) * 2018-09-17 2019-03-19 广东工业大学 一种适于多云存储系统的信息扩散方法
CN110677487A (zh) * 2019-09-30 2020-01-10 陕西师范大学 一种支持隐私和完整性保护的外包数据去重云存储方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761596A (zh) * 2011-04-28 2012-10-31 汤姆森许可贸易公司 在在线存储系统中上载文件的方法及相应在线存储系统
CN106612320A (zh) * 2016-06-14 2017-05-03 四川用联信息技术有限公司 云存储中一种加密数据的去重方法
CN105915332A (zh) * 2016-07-04 2016-08-31 广东工业大学 一种云存储加密及去重复方法及其系统
CN108494552A (zh) * 2018-03-16 2018-09-04 西安电子科技大学 支持高效收敛密钥管理的云存储数据去重方法
CN109491591A (zh) * 2018-09-17 2019-03-19 广东工业大学 一种适于多云存储系统的信息扩散方法
CN110677487A (zh) * 2019-09-30 2020-01-10 陕西师范大学 一种支持隐私和完整性保护的外包数据去重云存储方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
姚忠将等: "流量混淆技术及相应识别、追踪技术研究综述", 《软件学报》 *
张桂鹏等: "一种混合云环境下基于Merkle哈希树的数据安全去重方案", 《计算机科学》 *
郎为民等: "大数据中心安全数据去重解决方案研究", 《电信快报》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114143098A (zh) * 2021-12-03 2022-03-04 建信金融科技有限责任公司 数据存储方法和数据存储装置
CN114143098B (zh) * 2021-12-03 2023-08-15 建信金融科技有限责任公司 数据存储方法和数据存储装置
CN115001818A (zh) * 2022-06-01 2022-09-02 国际关系学院 抗随机块生成攻击的轻量级云数据安全去重方法
CN115001818B (zh) * 2022-06-01 2024-01-26 国际关系学院 抗随机块生成攻击的轻量级云数据安全去重方法
CN115879136A (zh) * 2023-02-09 2023-03-31 蒲惠智造科技股份有限公司 云端数据保护方法
CN116599650A (zh) * 2023-07-14 2023-08-15 民航成都电子技术有限责任公司 一种密文去重方法、装置、设备及存储介质
CN116599650B (zh) * 2023-07-14 2023-10-13 民航成都电子技术有限责任公司 一种密文去重方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN107800688B (zh) 一种基于收敛加密的云端数据去重和完整性审计方法
Hur et al. Secure data deduplication with dynamic ownership management in cloud storage
CN110213042B (zh) 一种基于无证书代理重加密的云数据去重方法
CN112565434A (zh) 一种基于默克尔哈希树的云存储安全去重方法及装置
US9164926B2 (en) Security control method of network storage
CN111523133A (zh) 一种区块链与云端数据协同共享方法
CN111526197A (zh) 一种云端数据安全共享方法
KR101082917B1 (ko) 원격 컴퓨팅 환경에서 사용자 데이터의 무결성 검증 방법 및 그 시스템
WO2018049601A1 (zh) 一种面向雾计算的外包访问控制方法及其系统
Mukundan et al. Replicated Data Integrity Verification in Cloud.
Pardeshi et al. Improving data integrity for data storage security in cloud computing
Yu et al. Provable data possession supporting secure data transfer for cloud storage
CN113259317B (zh) 一种基于身份代理重加密的云存储数据去重方法
Li et al. A data assured deletion scheme in cloud storage
CN108494552B (zh) 支持高效收敛密钥管理的云存储数据去重方法
Ma et al. A secure and efficient data deduplication scheme with dynamic ownership management in cloud computing
Kamboj et al. DEDUP: Deduplication system for encrypted data in cloud
CN113656818A (zh) 满足语义安全的无可信第三方云存储密文去重方法与系统
Balaji et al. Data Security and Deduplication Framework for Securing and Deduplicating Users’ Data in Public and Private Cloud Environment.
CN112954388A (zh) 一种数据文件的获取方法、装置、终端设备和存储介质
Hoffmann et al. Towards an architecture for end-to-end-encrypted file synchronization systems
CN115484031B (zh) 基于sgx的无可信第三方云存储密文去重方法及系统
Tang et al. Fuzzy Deduplication Scheme Supporting Pre-verification of Label Consistency
CN117768245B (zh) 一种全链路数据安全保护方法及系统
Jacob et al. Secured and reliable file sharing system with de-duplication using erasure correction code

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20210326