CN109845183B - 用于从客户端设备向云存储系统存储数据块的方法 - Google Patents

用于从客户端设备向云存储系统存储数据块的方法 Download PDF

Info

Publication number
CN109845183B
CN109845183B CN201780061498.4A CN201780061498A CN109845183B CN 109845183 B CN109845183 B CN 109845183B CN 201780061498 A CN201780061498 A CN 201780061498A CN 109845183 B CN109845183 B CN 109845183B
Authority
CN
China
Prior art keywords
client device
data block
storage system
cloud storage
encrypted
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
CN201780061498.4A
Other languages
English (en)
Other versions
CN109845183A (zh
Inventor
J.施奈德
M.哈万
S.奥伯迈尔
T.洛赫尔
Y-A.皮尼奥莱
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.)
ABB Schweiz AG
Original Assignee
ABB Schweiz AG
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 ABB Schweiz AG filed Critical ABB Schweiz AG
Publication of CN109845183A publication Critical patent/CN109845183A/zh
Application granted granted Critical
Publication of CN109845183B publication Critical patent/CN109845183B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/6272Protecting 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 by registering files or documents with a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0623Securing storage systems in relation to content
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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
    • H04L63/0435Network 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 wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • 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
    • H04L63/0478Network 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 applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种用于从客户端设备(1、4)向云存储系统(3)存储数据块的方法,所述方法包括以下步骤:d)在云存储系统(3)上存储经加密的第一数据块(2)和第一客户端设备(1)的第一数据块(2)的挑战,e)确定存储在云存储系统(3)上的第二客户端设备(4)的第二数据块(5)的散列是否等于第一数据块(2)的散列,f)如果是,则从云存储系统(3)向第二客户端设备(4)传输第一数据块(2)的挑战,g)在第二客户端设备(4)处提取包含在挑战中的范围处或者位置处的位,对所提取的位进行散列化,利用第一客户端设备(1)或者第二客户端设备(4)的公共密钥对散列化的位进行加密,以及从第二客户端设备(4)向云存储系统(3)上载经加密的位,以及h)在云存储系统(3)上存储来自第二客户端设备(4)的经加密的位。

Description

用于从客户端设备向云存储系统存储数据块的方法
技术领域
本发明涉及用于从客户端设备向云存储系统存储数据块的方法,该方法包括以下步骤:在云存储系统上存储经加密的第一数据块和第一客户端设备的第一数据块的挑战(challenge),以及确定存储在云存储系统上的第二客户端设备的第二数据块的散列是否等于第一数据块的散列。
背景技术
工业设备和整个控制系统的数据备份可以存储在云中,例如,云存储系统上。在关于本地控制系统的问题的情况下,包括操作系统、控制系统和客户特定配置的数据可以从存储于云中的远程备份进行恢复。通常,在不同客户之间以及在不同备份之间存在相当大量类似的或者甚至同样的备份数据,例如,操作系统文件、控制系统软件、标准软件等。
一般地,朝向权衡保密性对比空间来设计云存储系统:一方面,如果数据以经加密的方式进行存储,客户拥有加密密钥。然而,来自每个租户(tenant)的经加密的数据通常不同,并且取决于加密算法,甚至从备份到备份也不同。另一方面,以未经加密的方式存储数据的云存储系统可以通过消除重复数据的存储而显著地减少存储空间。实际上,备份存储空间可以针对操作系统文件、控制系统软件和标准软件而减少90-95%。
在未经加密的情况下存储备份数据面临客户接受度的问题:客户不情愿将其敏感数据发送给在没有保护的情况下存储它的未知服务器。除此之外,高度复杂的针对性攻击可能如今使云受损。因而,在此区域中提供的任何云必须在甚至使得服务提供商不能够在没有牵涉到客户的情况下重构客户所拥有的数据的明确文本的此类程度下提供数据保密性。
US2013/246790A1描述了一种存储方法,包括:利用存储密钥对数据进行加密以获得经加密的数据,利用两个不同的加密方法对存储密钥进行加密以分别地生成个人密钥和数据密钥,以及在服务器中保存经加密的数据、个人密钥和数据密钥,其中个人密钥可以利用来自拥有数据的用户的密钥进行解密以获得存储密钥,并且数据密钥可以利用未经加密的数据进行解密以获得存储密钥。
然而,如之前所概述,存储利用客户的密钥加密的数据的简明直接的方法面临巨大数据重复的问题:不同客户的大量数据是相同的,并且存在相同客户的每日备份之间的甚至更多的重复。重复由于针对数据存储的成本而减少总体利润。例如,如果每天或者甚至每小时上载完整的服务器图像,则备份还花费更长的时间并且要求更多的带宽。
发明内容
因此,本发明的目标是提供一种用于存储经加密的数据的方法,所述经加密的数据甚至跨各客户也不重复,由此存储空间的服务提供商不能够对数据进行解密,并且由此客户不能查明其他人存储什么。
本发明的目标通过独立权利要求的特征来解决。优选的实施例在从属权利要求中描述。
因而,通过一种用于从客户端设备向云存储系统存储数据块的方法来解决该目标,该方法包括以下步骤:
d)在云存储系统上存储经加密的第一数据块和第一客户端设备的第一数据块的挑战,
e)确定存储在云存储系统上的第二客户端设备的第二数据块的散列是否等于第一数据块的散列,
f)如果是,则从云存储系统向第二客户端设备传输第一数据块的挑战,
g)在第二客户端设备处提取包含在挑战中的范围处或者位置处的位,对所提取的位进行散列化,利用第一客户端设备或者第二客户端设备的公共密钥对散列化的位进行加密,以及从第二客户端设备向云存储系统上载经加密的位,以及
h)在云存储系统上存储来自第二客户端设备的经加密的位。
因此,本发明的关键点在于,对备份数据进行加密,而同时避免甚至跨各客户的重复数据。方法因此是遭受重复问题的任何种类的备份服务的关键促成者,同时维持敏感数据的保密性。方法提供了增加的利润,因为存储成本显著降低。从客户的角度来看,在发生故障时,方法确保了低恢复时间,因为它仅需要从备份服务下载恢复图像。相比于其中需要重新安装完整服务器和/或应用软件的解决方案,方法减少了生产停工时间,并且因此提供了用于在这种保险方面投资的极大动机。相比于本地备份,方法确保了永久的、省事的备份。客户不需要注意备份的数据完整性或者核实备份已经作出,而是可以将这个服务外包给云存储系统提供商。
客户端设备是能够访问文件并且跨网络连接与云存储系统通信的计算设备。例如,客户端设备可以被提供为台式计算机、膝上型计算机、服务器、平板计算机、掌上型计算机、智能电话、机顶盒或游戏操控台。云存储系统可以被提供为包括用于存储数据块的多个硬驱动的服务器。客户端设备优选地通过通信网络与云存储系统耦合,所述通信网络诸如局域网、无线网络或者广域网。
存储步骤优选地包括在云存储系统上保存经加密的第一数据块和第一数据块的挑战。确定步骤优选地包括在第二数据块的散列与第一数据块的所存储的散列之间进行比较,并且在比较导致相等(相应地同一性)的情况下揭示正面响应。传输步骤优选地包括在云存储系统上存储第一数据块的挑战的副本。提取步骤优选地包括用于隔离所述位或者范围的逻辑操作。
根据另一优选的实施例,方法包括在步骤d)到h)之前的以下另外的步骤:
a)确定第一客户端设备的第一数据块的散列是否存储在云存储系统上,
b)如果否,则从云存储系统向第一客户端设备提供针对第一数据块的上载请求,以及
c)响应于此,在第一客户端设备处利用随机生成的对称密钥对第一数据块进行加密,创建第一数据块的位范围或者第一数据块的随机选择的位位置处的散列化的位的挑战并且利用第一客户端设备的私人密钥对挑战进行加密,以及从第一客户端设备向云存储系统上载经加密的第一数据块和挑战。
使用数据块的散列是有利的,因为散列表示用于每个数据块的简短且最有可能的唯一元数据。通过使用强散列函数,计算对应于给定散列的数据块是不可行的,并且因而是安全的措施。另外,通过询问数据块中的随机选择的位位置或者范围处的位的散列而创建挑战是有利的,因为如果数据块是以兆字节的量级而相当大的话,以及如果选择随机范围的话,攻击者检索正确的散列是不可行的。
根据另外优选的实施例,方法包括以下另外的步骤:i)从云存储系统向第一客户端设备发送挑战和经加密的位。
根据另一优选的实施例,方法包括以下另外的步骤:
j)在第一客户端设备处提取包含在挑战中的范围处或者位置处的位,对所提取的位进行散列化,利用第二客户端设备的公共密钥对散列化的位进行加密,并且将经加密的位与在步骤c)中创建的挑战进行比较,或者包括步骤i),与在步骤i)中接收的挑战进行比较,
k)如果比较导致相等,利用第二客户端设备的公共密钥对在步骤c)中使用的对称密钥进行加密,并且从第一客户端设备向云存储系统发送经加密的对称密钥连同第一数据块的位范围或者第一数据块的随机选择的位位置处的散列化的位的新挑战,
l)在云存储系统上存储新挑战和经加密的对称密钥。
通过将旧挑战和从第二客户端设备接收的响应转发给第一客户端设备,云存储系统可以请求第一客户端设备核实所接收的结果。利用步骤j)到l),第一客户端设备然后可以通过计算给定范围处的位的散列而核实第二客户端的拥有权的要求。替换地,第一客户端设备可以追踪其当前发布的挑战并且存储散列。
根据另外优选的实施例,方法包括以下另外的步骤:
m)从云存储系统向第二客户端设备发送经加密的对称密钥,
n)利用第二客户端的私人密钥来解密对称密钥并且存储第二客户端设备的对称密钥。
云存储系统将经加密的密钥发送给优选地由第一客户端设备签名的第二客户端设备,使得第二客户端设备可以核实真实性。因为利用第二客户端的私人密钥来加密对称密钥,所以第二客户端设备可以解密它并且存储它以供随后使用。
根据另一优选的实施例,方法包括以下另外的步骤:
o)从第一客户端或第二客户端向云存储系统发送针对第一数据块的下载请求,
p)响应于此,将经加密的第一数据块从云存储系统发送给第一客户端或第二客户端设备,
q)在第一客户端或第二客户端设备处利用对称密钥来对所接收的第一数据块进行解密。
步骤o)到q)提供了一种用于第一数据块的检索机制。优选地,第一或第二客户端设备发送第一数据块的散列。作为对其的返回,云存储系统发送经加密的第一数据块。第一或第二客户端设备然后可以通过使用对应的对称密钥来恢复第一数据块。
根据另外优选的实施例,方法包括以下另外的步骤:
如果不能访问第一客户端设备以用于执行步骤i)或步骤j),则从云存储系统向第二客户端设备提供针对第二数据块的上载请求,
响应于此,在第二客户端设备处利用另外随机生成的对称密钥来对第二数据块进行加密,创建第二数据块的位范围或者第二数据块的随机选择的位位置处的散列化的位的另外的挑战并且利用第二客户端设备的私人密钥对另外的挑战进行加密,以及从第一第二设备向云存储系统上载经加密的第二数据块和另外的挑战,
在云存储系统处临时地存储经加密的第二数据块和另外的挑战,
一旦可以再次访问第一客户端设备,则执行步骤i)或者步骤i)和j),并且如果比较成功,则从云存储系统删除临时存储的经加密的第二数据块以及另外的挑战。
如果例如由于故障或者网络停工时间而不能达到第一客户端设备,则第二客户端设备可不具有对相应数据块的访问,直至第一客户端设备为第二客户端设备的拥有权的要求进行担保为止。为了解决这样的情况并且为了使得方法与客户端设备的可用性无关,在接收到第一数据块的散列之后,云存储系统发布上载请求,并且临时地存储相同数据块的多个副本,直至已经核实拥有相同数据块的所有客户端设备为止。此后,数据块的“额外”副本可以被删除。
根据另一优选的实施例,方法包括以下另外的步骤:在云存储系统处执行关于来自第二客户端设备的所上载的挑战和所上载的经加密的位的同态化加密。同态化加密已经被证明是特别有利和有效的。根据另外优选的实施例,方法包括以下另外的步骤:通过第一客户端设备、第二客户端设备和/或云存储系统响应于上载而发送和确认。
根据另一优选的实施例,方法包括用于供应第一客户端设备的公共密钥和/或第二客户端设备的公共密钥的公共密钥基础设施。这样的公共密钥基础设施优选地经由通信网络与客户端设备和/或云存储系统连接。
根据另外优选的实施例,第一数据块和/或第二数据块包括0.5、1、2或5MB的大小。根据另一优选的实施例,向每个第一数据块和/或每个第二数据块提供单独的对称密钥。
附图说明
本发明的这些和其它方面将根据下文描述的实施例是显而易见的并且参照下文描述的实施例进行阐述。
在附图中:
图1以示意图示出了用于执行根据本发明的优选实施例的方法的布置,以及
图2到6示出了用于根据本发明的优选实施例的方法的不同流程图。
具体实施方式
图1示出了根据本发明的优选实施例的方法的基本机构。当第一客户端设备1想要将敏感第一数据块2上载到云存储系统3上时,第一客户端设备1首先向云存储系统3发送以第一数据块2的散列的形式的明码文本元数据以检查第一数据块2是否已经存储于云存储系统3上(步骤1.1)。此元数据是简短的并且唯一地标识第一数据块2。如果第一数据块2尚未存在于云存储系统3上,则第一客户端设备1在接收到上载请求(步骤1.2)时以经加密的形式连同加密材料向云存储系统3发送第一数据块2(步骤1.3)。随后,云存储系统3存储经加密的第一数据块2外加加密材料(步骤1.4)。
如果第二客户端设备4想要存储第二数据块5,则云存储系统3使用由第二客户端设备4提供的元数据(步骤2.1)来检查云存储系统3是否已经存储第二数据块5。如果云存储系统3之前未曾看到此元数据,即云存储系统3接收到针对新块(即第二数据块5)的上载请求,则实施如针对第一客户端设备1那样的相同步骤(步骤1.2到1.4)。否则,云存储系统3针对与第二客户端设备4的挑战-响应交换而使用加密材料(步骤2.2到2.3)以核实第二客户端设备4想要上载的第二数据块5和所存储的第一数据块2相同。因而,第二客户端设备4证明了相同数据块2的拥有权,而没有揭示关于第一数据块2的内容的任何信息。如果核实成功,则第二客户端设备4被添加为第一数据块2的拥有者,授予第二客户端设备4在未来访问它的权利(步骤2.4)。
方法确保每个单独的数据块2、5不仅只存储一次,而且还只被转移到云存储系统3一次,这将带宽使用最小化,同时在云存储系统3不知晓关于数据块2、5本身的内容的任何事物(除了从数据导出的元数据之外)的方面保证了数据块2、5的数据的保密性。因为与发送文件相反地来逐块地发送数据,所以具有对云存储系统3的访问的攻击者还不能推断关于所存储的数据块2、5的大小的任何事物,因为所有数据块2、5具有相等的大小。
取决于加密挑战的实现,有利的是使云存储系统3与作为第一数据块2的原始上载者的第一客户端设备1进行交互,以便准许对通过所述拥有权测试的第二客户端设备4的访问,如随后所述。如果不能(始终)达到第一客户端设备1,则第二客户端设备4可不具有对第一数据块2的访问,直至第一客户端设备1为第二客户端设备4的拥有权的要求进行担保为止。
对之前描述的基本方案的延迟容忍变形解决了这个问题:在接收到元数据之后,云存储系统3总是发布上载请求,并且临时地存储相同数据块2、5的多个副本,直至已经核实拥有相同数据块2、5的所有客户端设备1、4为止。此时,可以删除数据块5的额外一个(或多个)副本。此方案的优点清楚地在于,不存在对客户端1、4的可用性的依赖性。然而,在云存储系统3处临时地使用稍微更多的盘空间,并且还由于相同数据块2、5的重复上载而消耗更多的带宽。总体上,云存储系统3上的空间要求显著地降低,同时保持所存储的数据的保密性。
图2示出了之前描述的用于在云存储系统3中存储第一数据块2和用于第一数据块2的挑战的方法的更为具体的实施例。将数据项目的散列用作针对每个数据项目的简短且(更有可能地)唯一的元数据。在给定强散列函数的情况下,计算与给定散列对应的数据块是不可行的。使用新的随机生成的对称密钥来对每个数据块2、5进行加密。第一客户端设备1持有对称密钥。因为对称密钥是小的,所以密钥存储不要求大量的空间。
通过询问第一数据块2中的随机选择的位位置或范围处的位的散列来实现挑战。如果第一数据块2相当大(例如以兆字节的量级)并且选择随机范围,则攻击者得到正确的散列是不可行的。图2示出了使用基于范围的散列和加密挑战的插入机制。要指出,第一客户端设备1(相应地客户端A)对挑战签名,使得可以核实其真实性,即通过公共密钥基础设施6。
第二客户端设备4(相应地客户端B)可以通过提取在挑战中给定的范围处的位、使它们散列化、利用其自身的公共密钥加密结果以及将所签名的结果发送给云存储系统3而证明它拥有相同的数据块2、5,参见图3,示出了第二客户端设备2设法在云存储系统3上存储相同的数据块5。替代再次存储数据块5,第二客户端设备4必须通过向挑战提交正确的响应而证明它具有数据块5。替换地,它还可以使用第一客户端设备1的公共密钥来对结果加密。
云存储系统3然后可以通过将旧挑战和从第二客户端设备4接收的响应转发给第一客户端设备1来请求第一客户端设备1核实所接收的结果。第一客户端设备1通过计算给定范围处的位的散列、利用第二客户端设备4的公共密钥对此散列加密以及检查相等来核实第二客户端设备4的拥有权的要求。
替换地,第一客户端设备1可以追踪其当前发布的挑战并且存储散列。在这个情况下,第一客户端设备1必须仅利用第二客户端设备4的公共密钥来对散列加密,以核实第二客户端4确实拥有相同的数据块2、5。如果校验成功,则第一客户端设备1利用第二客户端设备4的公共密钥来对用来加密此块的对称密钥K进行加密,并且将它连同用于相同数据块2、5的新挑战发送到云存储系统3。云存储系统3存储新挑战和经加密的密钥K,参见图4。
最后,云存储系统3将经加密的密钥K发送给第二客户端设备4。此消息被第一客户端设备1签名,使得第二客户端设备4可以核实消息的真实性。因为利用第二客户端设备4的公共密钥来对块密钥K加密,所以第二客户端设备4可以解密它并且存储它以供随后使用,参见图5。
数据块检索机制以类似的方式工作。第一客户端设备1通过发送块元数据(例如,数据块2、5的散列)来询问特定数据块2、5。云存储系统3返回经加密的数据块2、5。第一客户端设备1然后可以使用对应的对称密钥来恢复第一数据块2,参见图6。
虽然已经在附图和前面的描述中详细地图示和描述了本发明,但是这样的图示和描述要被视为是说明性或示例性且非约束性的;本发明不限于所公开的实施例。在实施所要求保护的发明时,本领域技术人员可以根据附图、公开内容和随附权利要求的研究而理解和实现对所公开的实施例的其它变化。在权利要求中,词语“包括”不排除其它元件或步骤,并且不定冠词“一”或“一个”不排除多个。在相互不同的从属权利要求中记载某些措施的仅有事实并不指示这些措施的组合不能用来获益。权利要求中的任何参考符号不应当被解释为限制范围。
参考符号列表
1 第一客户端设备
2 第一数据块
3 云存储系统
4 第二客户端设备
5 第二数据块
6 公共密钥基础设施

Claims (10)

1.用于从客户端设备(1、4)向云存储系统(3)存储数据块的方法,所述方法包括以下步骤:
d)在云存储系统(3)上存储第一客户端设备(1)的经加密的第一数据块(2)、所述第一数据块(2)的挑战和散列,
e)确定存储在云存储系统(3)上的第二客户端设备(4)的第二数据块(5)的散列是否等于第一数据块(2)的散列,
f)如果是,则从云存储系统(3)向第二客户端设备(4)传输第一数据块(2)的挑战,
g)在第二客户端设备(4)处提取包含在挑战中的范围处或者位置处的位,对所提取的位进行散列化,利用第一客户端设备(1)或者第二客户端设备(4)的公共密钥来对散列化的位进行加密,以及从第二客户端设备(4)向云存储系统(3)上载经加密的位,
h)在云存储系统(3)上存储来自第二客户端设备(4)的经加密的位,
i)从云存储系统(3)向第一客户端设备(1)发送挑战和经加密的位,
j)在第一客户端设备(1)处提取包含在挑战中的范围处或者位置处的位,对所提取的位进行散列化,取决于在步骤g)中选择的密钥而利用第一客户端设备(1)的公共密钥或第二客户端设备(4)的公共密钥来对散列化的位进行加密,并且将如此这般经加密的位与在步骤i)中接收的经加密的位进行比较,
k)如果比较导致相等,则利用第二客户端设备(4)的公共密钥来对被用于加密第一数据块(2)的随机生成的对称密钥进行加密,并且从第一客户端设备(1)向云存储系统(3)发送经加密的对称密钥连同第一数据块(2)的位范围或者第一数据块(2)的随机选择的位位置处的散列化的位的新挑战,以及
l)在云存储系统(3)上存储新挑战和经加密的对称密钥。
2.根据权利要求1所述的方法,包括以下的另外的步骤:
a)确定第一客户端设备(1)的第一数据块(2)的散列是否存储在云存储系统(3)上,
b)如果否,则从云存储系统(3)向第一客户端设备(1)提供针对第一数据块(2)的上载请求,
c)响应于此,在第一客户端设备(1)处利用随机生成的对称密钥对第一数据块(2)进行加密,使数据块(2)散列化,创建第一数据块(2)的位范围或者第一数据块(2)的随机选择的位位置处的散列化的位的挑战并且利用第一客户端设备(1)的私人密钥对挑战进行加密,以及从第一客户端设备(1)向云存储系统(3)上载经加密的第一数据块(2)、散列化的数据块(2)和挑战。
3.根据前述权利要求1-2中任一项所述的方法,包括以下另外的步骤:
m)从云存储系统(3)向第二客户端设备(4)发送经加密的对称密钥,
n)利用第二客户端设备(4)的私人密钥来解密对称密钥并且存储第二客户端设备(4)的对称密钥。
4.根据前述权利要求1-2中任一项所述的方法,包括以下另外的步骤:
o)从第一客户端或第二客户端设备(1、4)向云存储系统(3)发送针对第一数据块(2)的下载请求,
p)响应于此,将经加密的第一数据块(2)从云存储系统(3)发送到第一客户端或第二客户端设备(1、4),
q)在第一客户端或第二客户端设备(1、4)处利用对称密钥来对所接收的第一数据块(2)进行解密。
5.根据前述权利要求1-2中任一项所述的方法,包括以下另外的步骤:
如果不能访问第一客户端设备(1)以用于执行步骤i)或步骤j),则从云存储系统(3)向第二客户端设备(4)提供针对第二数据块(5)的上载请求,
响应于此,在第二客户端设备(4)处利用另外随机生成的对称密钥来对第二数据块(5)进行加密,创建第二数据块(5)的位范围或者第二数据块(5)的随机选择的位位置处的散列化的位的另外的挑战并且利用第二客户端设备(4)的私人密钥对另外的挑战进行加密,以及从第二设备(4)向云存储系统(3)上载经加密的第二数据块(5)和另外的挑战,
在云存储系统(3)处临时地存储经加密的第二数据块(5)和另外的挑战,
一旦能够再次访问第一客户端设备(1),则执行步骤i)或者步骤i)和j),并且如果比较成功,则从云存储系统(3)删除临时存储的经加密的第二数据块(5)以及另外的挑战。
6.根据权利要求1所述的方法,包括以下另外的步骤:
在云存储系统(3)处执行关于来自第二客户端设备(4)的所上载的挑战和所上载的经加密的位的同态化加密。
7.根据前述权利要求1、2和6中任一项所述的方法,包括以下另外的步骤:
通过第一客户端设备(1)、第二客户端设备(4)和/或云存储系统(3)响应于上载请求而发送确认。
8.根据前述权利要求1、2和6中任一项所述的方法,包括用于供应第一客户端设备(1)的公共密钥和/或第二客户端设备(4)的公共密钥的公共密钥基础设施(6)。
9.根据前述权利要求1、2和6中任一项所述的方法,其中第一数据块(2)和/或第二数据块(5)包括0.5、1、2或5MB的大小。
10.根据前述权利要求1、2和6中任一项所述的方法,其中向每一个第一数据块(2)和/或每一个第二数据块(5)提供单独的对称密钥。
CN201780061498.4A 2016-08-03 2017-07-31 用于从客户端设备向云存储系统存储数据块的方法 Active CN109845183B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16182643 2016-08-03
EP16182643.3 2016-08-03
PCT/EP2017/069286 WO2018024658A1 (en) 2016-08-03 2017-07-31 Method for storing data blocks from client devices to a cloud storage system

Publications (2)

Publication Number Publication Date
CN109845183A CN109845183A (zh) 2019-06-04
CN109845183B true CN109845183B (zh) 2021-08-10

Family

ID=56615864

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780061498.4A Active CN109845183B (zh) 2016-08-03 2017-07-31 用于从客户端设备向云存储系统存储数据块的方法

Country Status (4)

Country Link
US (1) US10685141B2 (zh)
EP (1) EP3494662B1 (zh)
CN (1) CN109845183B (zh)
WO (1) WO2018024658A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11755499B2 (en) 2018-05-31 2023-09-12 Secturion Systems, Inc. Locally-stored remote block data integrity
US11314888B2 (en) * 2018-06-29 2022-04-26 Vmware, Inc. Multi-key, cloud-specific security
CN109471723B (zh) * 2018-10-23 2023-10-27 三六零科技集团有限公司 一种用于对任务的处理结果进行验证的方法及系统
DE102019201922A1 (de) 2019-02-14 2020-08-20 Robert Bosch Gmbh Verfahren und Vorrichtung zum Verarbeiten von in einer Speichereinrichtung gespeicherten Daten
US20200313859A1 (en) * 2019-03-29 2020-10-01 Accenture Global Solutions Limited Cryptologic Blockchain-Based Off-Chain Storage Verification
CN112487461B (zh) * 2020-12-07 2023-06-09 重庆电子工程职业学院 一种数据加密方法
CN114760061B (zh) * 2020-12-29 2023-09-05 深信服科技股份有限公司 数据上传的方法、装置、设备及存储介质
CN114338152B (zh) * 2021-12-27 2024-04-12 上海市数字证书认证中心有限公司 数据处理方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011076463A1 (en) * 2009-12-23 2011-06-30 International Business Machines Corporation Deduplication of encrypted data
US8099605B1 (en) * 2006-06-05 2012-01-17 InventSec AB Intelligent storage device for backup system
CN104144048A (zh) * 2013-05-10 2014-11-12 华为技术有限公司 一种可信云存储环境下的密钥管理方法、装置和系统
CN104994069A (zh) * 2015-05-25 2015-10-21 南京信息工程大学 基于数据重复性验证的云存储数据完整性证明方法
CN105320899A (zh) * 2014-07-22 2016-02-10 北京大学 一种面向用户的云存储数据完整性保护方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7792300B1 (en) * 2003-09-30 2010-09-07 Oracle America, Inc. Method and apparatus for re-encrypting data in a transaction-based secure storage system
US8848924B2 (en) * 2008-06-27 2014-09-30 University Of Washington Privacy-preserving location tracking for devices
US9614924B2 (en) * 2008-12-22 2017-04-04 Ctera Networks Ltd. Storage device and method thereof for integrating network attached storage with cloud storage services
US8751789B2 (en) * 2010-09-17 2014-06-10 International Business Machines Corporation General purpose distributed encrypted file system
EP2710510A4 (en) * 2011-05-14 2015-05-06 Bitcasa Inc CLOUD FILE SYSTEM WITH SERVER DEPLOYMENT OF USER UNKNOWN ENCRYPTED FILES
CN102629940A (zh) * 2012-03-19 2012-08-08 天津书生投资有限公司 一种存储方法、系统和装置
US9031229B1 (en) * 2012-03-26 2015-05-12 Newline Software, Inc. Computer-implemented system and method for providing data privacy in a cloud using discrete homomorphic encryption
JP5990110B2 (ja) * 2013-01-29 2016-09-07 Kddi株式会社 暗号化状態確認システム、暗号化状態確認方法およびプログラム
EP2779520B1 (en) * 2013-03-11 2019-01-16 Idemia Identity & Security France A process for obtaining candidate data from a remote storage server for comparison to a data to be identified
US9237014B2 (en) * 2013-05-28 2016-01-12 Hong Kong Applied Science & Technology Research Institute Company, Limited Partial CipherText updates using variable-length segments delineated by pattern matching and encrypted by fixed-length blocks
US9558374B2 (en) * 2015-01-14 2017-01-31 Netapp, Inc. Methods and systems for securing stored information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8099605B1 (en) * 2006-06-05 2012-01-17 InventSec AB Intelligent storage device for backup system
WO2011076463A1 (en) * 2009-12-23 2011-06-30 International Business Machines Corporation Deduplication of encrypted data
CN104144048A (zh) * 2013-05-10 2014-11-12 华为技术有限公司 一种可信云存储环境下的密钥管理方法、装置和系统
CN105320899A (zh) * 2014-07-22 2016-02-10 北京大学 一种面向用户的云存储数据完整性保护方法
CN104994069A (zh) * 2015-05-25 2015-10-21 南京信息工程大学 基于数据重复性验证的云存储数据完整性证明方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
云存储中远程用户匿名认证及密钥协商研究;董哲明;《中国优秀硕士学位论文期刊全文数据库》;20151015;全文 *

Also Published As

Publication number Publication date
EP3494662A1 (en) 2019-06-12
WO2018024658A1 (en) 2018-02-08
CN109845183A (zh) 2019-06-04
US10685141B2 (en) 2020-06-16
EP3494662B1 (en) 2020-09-16
US20190171847A1 (en) 2019-06-06

Similar Documents

Publication Publication Date Title
CN109845183B (zh) 用于从客户端设备向云存储系统存储数据块的方法
US20230161897A1 (en) Systems and Methods for a Cryptographic File System Layer
CN108259169B (zh) 一种基于区块链云存储的文件安全分享方法及系统
US10877850B2 (en) Systems and methods of transmitting data
US9547774B2 (en) System and method for distributed deduplication of encrypted chunks
EP3078179B1 (en) Data transfer optimizations
US9088538B2 (en) Secure network storage
EP3062261B1 (en) Community-based de-duplication for encrypted data
JP2018160919A (ja) 要求によって供給される鍵を用いたデータセキュリティ
CN104603740A (zh) 归档数据识别
US20050289655A1 (en) Methods and systems for encrypting, transmitting, and storing electronic information and files
US11018859B2 (en) Deduplication of client encrypted data
CN109241754B (zh) 一种基于区块链的云文件重复数据删除方法
KR101285281B1 (ko) 자가조직 저장매체의 보안 시스템 및 그 방법
Kim et al. Client‐Side Deduplication to Enhance Security and Reduce Communication Costs
US20120250857A1 (en) Method and apparatus of securely processing data for file backup, de-duplication, and restoration
CN110955909B (zh) 个人数据保护方法及区块链节点
Periasamy et al. Secure and duplication detection in cloud using cryptographic hashing method
KR101790757B1 (ko) 암호데이터를 저장하는 클라우드 시스템 및 그 방법
Reddy et al. Secure Data Deduplication by Using Convergent Key
Bhadrappa et al. Implementation of De-Duplication Algorithm
Begum et al. Improving Security on Cloud Based Deduplication System
KR101492328B1 (ko) 보상 서비스 제공 방법 및 그 시스템
KR20230108155A (ko) 합성곱 신경망(CNN: Convolutional Neual Network) 기반 영상 가치 판단 및 블록체인 기술을 이용한 데이터의 분산 저장 방법
Kesalkar et al. Survey of Data Deduplication By Using Cloud Computing

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
GR01 Patent grant
GR01 Patent grant