CN108933758B - 可分享云存储加解密方法、装置和系统 - Google Patents

可分享云存储加解密方法、装置和系统 Download PDF

Info

Publication number
CN108933758B
CN108933758B CN201710365753.6A CN201710365753A CN108933758B CN 108933758 B CN108933758 B CN 108933758B CN 201710365753 A CN201710365753 A CN 201710365753A CN 108933758 B CN108933758 B CN 108933758B
Authority
CN
China
Prior art keywords
user
file
shared
key
sharing
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
CN201710365753.6A
Other languages
English (en)
Other versions
CN108933758A (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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201710365753.6A priority Critical patent/CN108933758B/zh
Publication of CN108933758A publication Critical patent/CN108933758A/zh
Application granted granted Critical
Publication of CN108933758B publication Critical patent/CN108933758B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0442Network 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 asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/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]

Landscapes

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

Abstract

本发明公开了一种可分享云存储加解密方法、装置和系统,涉及数据通信领域。本发明用户终端将加密文件上传至服务器前利用分享用户私钥对文件加密,在被分享用户下载该加密文件后,将包含被分享用户信息的文件头发送至服务器,以便服务器根据分享用户公钥解密该加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥,被分享用户可以根据被分享用户私钥解密收到的加密的文件加密密钥,并利用文件加密密钥解密该加密文件,能够提高分享文件的安全性,同时能够使得加密文件的分享更具灵活性。

Description

可分享云存储加解密方法、装置和系统
技术领域
本发明涉及数据通信领域,尤其涉及一种可分享云存储加解密方法、装置和系统。
背景技术
对称加密算法是指加密和解密使用相同,或是关连性很强的密钥。对称加密算法速度比较快,比较适合在大量数据加密的情况下使用。
非对称加密算法需要两个密钥:公开密钥(public key)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。非对称密码加密解密速度没有对称加密解密的速度快。
对称密码体制中只有一种密钥,并且是非公开的,如果要解密就得让对方知道密钥,所以保证其安全性就是保证密钥的安全。而非对称密钥体制有两种密钥,其中一个是公开的,这样就避免了如对称加密中需要的密钥传输。
分享作为一个云存储的重要运用场景,在私有云以及公有云使用中,都会涉及实现该功能。然而随着云存储产品的快速推广,上传至公有云和私有云的文件数量越来越大,上传至云上的私有文件安全性没有任何保障,而加密后的文件又不便于分享,种种不便大大地限制了云存储的发展及云存储使用场景。另外,现普遍采用使用分组密钥对文件加密的技术,但该技术需要在对文件加密前确定被分享人身份。
发明内容
本发明要解决的一个技术问题是提供一种可分享云存储加解密方法、装置和系统,能够提高分享文件的安全性。
根据本发明一方面,提出一种可分享云存储加解密方法,包括:根据分享用户私钥生成加密文件,其中加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;将加密文件分享至服务器;从服务器下载加密文件后,若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器,以便服务器根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;接收服务器发送的根据被分享用户公钥加密的文件加密密钥;根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。
进一步的,文件基本信息包括分享用户信息;根据分享用户信息确定被分享用户是否为加密文件的所有者,若被分享用户不是加密文件的所有者,则确定需要向服务器申请文件解密。
进一步的,该方法还包括:随机生成文件加密密钥,根据分享用户私钥加密文件加密密钥从而生成加密的文件加密密钥。
进一步的,该方法还包括:根据文件加密密钥加密待分享文件从而生成加密文件信息。
进一步的,该方法还包括:向服务器发送分享用户的注册信息或被分享用户的注册信息,以便服务器保存分享用户信息或被分享用户信息;其中,服务器根据分享用户的注册信息判断分享用户是否为合法用户,若分享用户为合法用户,则保存分享用户信息;或者,根据被分享用户的注册信息判断被分享用户是否为合法用户,若被分享用户为合法用户,则保存被分享用户信息。
进一步的,该方法还包括:接收密钥管理中心发送的分享用户私钥或被分享用户私钥;其中,服务器向密钥管理中心请求分配分享用户私钥或被分享用户私钥,密钥管理中心根据分享用户的注册信息判断分享用户是否为新注册用户,若为新注册用户,则根据分享用户的注册信息生成分享用户私钥;或者,根据被分享用户的注册信息判断被分享用户是否为新注册用户,若为新注册用户,则根据被分享用户的注册信息生成被分享用户私钥。
根据本发明的另一方面,还提出一种可分享云存储加解密方法,包括:接收分享用户终端发送的加密文件,其中,加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;将加密文件发送至被分享用户终端;接收被分享用户终端发送的包含被分享用户信息的文件头;根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;将根据被分享用户公钥加密的文件加密密钥发送至被分享用户终端,以便被分享用户终端根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。
进一步的,接收被分享用户终端发送的包含被分享用户信息的文件头后,还包括:查询文件分享记录表判断被分享用户是否有权解密加密文件信息,若确定被分享用户有权解密加密文件信息,则向密钥管理中心申请分享用户公钥和被分享用户公钥;其中,文件分享记录表中包括加密文件的分享用户信息和被分享用户信息的对应关系。
进一步的,该方法还包括:接收分享用户终端发送的分享用户的注册信息或被分享用户终端发送的被分享用户的注册信息;根据分享用户的注册信息或被分享用户的注册信息分别判断分享用户或被分享用户是否为合法用户;若分享用户或被分享用户为合法用户,则保存分享用户信息或被分享用户信息。
进一步的,该方法还包括:向密钥管理中心请求分配分享用户私钥或被分享用户私钥,以便密钥管理中心将分享用户私钥发送至分享用户终端或将被分享用户私钥发送至被分享用户终端;其中,密钥管理中心根据分享用户的注册信息判断分享用户是否为新注册用户,若为新注册用户,则根据分享用户的注册信息生成分享用户私钥;或者,根据被分享用户的注册信息判断被分享用户是否为新注册用户,若为新注册用户,则根据被分享用户的注册信息生成被分享用户私钥。
根据本发明的另一方面,还提出一种用户终端,包括:加密文件生成单元,用于根据分享用户私钥生成加密文件,其中加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;分享文件上传单元,用于将加密文件分享至服务器;加密文件下载单元,用于从服务器下载加密文件;文件头上传单元,用于若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器,以便服务器根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;密钥接收单元,用于接收服务器发送的根据被分享用户公钥加密的文件加密密钥;文件解密单元,用于根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。
进一步的,文件基本信息包括分享用户信息,用户终端还包括:所有者判断单元,用于根据分享用户信息确定被分享用户是否为加密文件的所有者,若被分享用户不是加密文件的所有者,则确定需要向服务器申请文件解密。
进一步的,该用户终端还包括:文件加密密钥生成单元,用于随机生成文件加密密钥;加密文件加密密钥生成单元,用于根据分享用户私钥加密文件加密密钥从而生成加密的文件加密密钥。
进一步的,该用户终端还包括:加密文件信息生成单元,用于根据文件加密密钥加密待分享文件从而生成加密文件信息。
进一步的,该用户终端还包括:注册信息发送单元,用于向服务器发送分享用户的注册信息或被分享用户的注册信息,以便服务器保存分享用户信息或被分享用户信息;其中,服务器根据分享用户的注册信息判断分享用户是否为合法用户,若分享用户为合法用户,则保存分享用户信息;或者,根据被分享用户的注册信息判断被分享用户是否为合法用户,若被分享用户为合法用户,则保存被分享用户信息。
进一步的,该用户终端还包括:用户私钥接收单元,用于接收密钥管理中心发送的分享用户私钥或被分享用户私钥;其中,服务器向密钥管理中心请求分配分享用户私钥或被分享用户私钥,密钥管理中心根据分享用户的注册信息判断分享用户是否为新注册用户,若为新注册用户,则根据分享用户的注册信息生成分享用户私钥;或者,根据被分享用户的注册信息判断被分享用户是否为新注册用户,若为新注册用户,则根据被分享用户的注册信息生成被分享用户私钥。
根据本发明的另一方面,还提出一种服务器,包括:加密文件接收单元,用于接收分享用户终端发送的加密文件,其中,加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;加密文件发送单元,用于将加密文件发送至被分享用户终端;文件头接收单元,用于接收被分享用户终端发送的包含被分享用户信息的文件头;密钥加解密单元,用于根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;加密密钥发送单元,用于将根据被分享用户公钥加密的文件加密密钥发送至被分享用户终端,以便被分享用户终端根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。
进一步的,该服务器还包括:用户查询判断单元,用于查询文件分享记录表判断被分享用户是否有权解密加密文件信息;公钥申请发送单元,用于若确定被分享用户有权解密加密文件信息,则向密钥管理中心申请分享用户公钥和被分享用户公钥;其中,文件分享记录表中包括加密文件的分享用户信息和被分享用户信息的对应关系。
进一步的,该服务器还包括:注册信息接收单元,用于接收分享用户终端发送的分享用户的注册信息或被分享用户终端发送的被分享用户的注册信息;合法用户判断单元,用于根据分享用户的注册信息或被分享用户的注册信息分别判断分享用户或被分享用户是否为合法用户;合法用户信息保存单元,用于若分享用户或被分享用户为合法用户,则保存分享用户信息或被分享用户信息。
进一步地,该服务器还包括:私钥申请发送单元,用于向密钥管理中心请求分配分享用户私钥或被分享用户私钥,以便密钥管理中心将分享用户私钥发送至分享用户终端或将被分享用户私钥发送至被分享用户终端;其中,密钥管理中心根据分享用户的注册信息判断分享用户是否为新注册用户,若为新注册用户,则根据分享用户的注册信息生成分享用户私钥;或者,根据被分享用户的注册信息判断被分享用户是否为新注册用户,若为新注册用户,则根据被分享用户的注册信息生成被分享用户私钥。
根据本发明的另一方面,还提出一种可分享云存储加解密系统,包括密钥管理中心,上述的用户终端和上述的服务器。
根据本发明的另一方面,还提出一种可分享云存储加解密系统,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器的指令执行上述的方法。
根据本发明的另一方面,还提出一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上述的方法的步骤。
与现有技术相比,本发明用户终端将加密文件上传至服务器前利用分享用户私钥对文件加密,在被分享用户下载该加密文件后,将包含被分享用户信息的文件头发送至服务器,以便服务器根据分享用户公钥解密该加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥,被分享用户可以根据被分享用户私钥解密收到的加密的文件加密密钥,并利用文件加密密钥解密该加密文件,能够提高分享文件的安全性。另外,本发明能够使得加密文件的分享更具灵活性。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同说明书一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明可分享云存储加解密方法的一个实施例的流程示意图。
图2为本发明可分享云存储加解密方法中用户注册流程的一个实施例的示意图。
图3为本发明可分享云存储加解密方法中文件加密上传流程的一个实施例的示意图。
图4为本发明可分享云存储加解密方法中文件分享的一个示意图。
图5为本发明可分享云存储加解密方法中文件解密的一个实施例的流程示意图。
图6为本发明可分享云存储加解密方法的另一个实施例的流程示意图。
图7为本发明用户终端的一个实施例的结构示意图。
图8为本发明用户终端的另一个实施例的结构示意图。
图9为本发明服务器的一个实施例的结构示意图。
图10为本发明服务器的另一个实施例的结构示意图。
图11为本发明可分享云存储加解密系统的一个实施例的结构示意图。
图12为本发明可分享云存储加解密系统的又一个实施例的结构示意图。
图13为本发明可分享云存储加解密系统的再一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
图1为本发明可分享云存储加解密方法的一个实施例的流程示意图。该方法可以由用户终端执行,包括以下步骤:
在步骤110,根据分享用户私钥生成加密文件,其中,加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息。分享用户为将待分享文件上传分享至云端的用户,分享用户终端可以通过服务器从密钥管理中心获得用户密钥,该用户密钥作为分享用户的私钥。文件基本信息中可以包括文件所有者信息,以便在文件解密时终端甄别是否需要向服务器发送解密消息。加密的文件加密密钥为经过该分享用户私钥加密的文件加密密钥,进一步可以通过该分享用户私钥使用非对称加密方法加密该文件加密密钥。其中,文件加密密钥可以是由终端随机生成的密钥,用于加密文件。加密文件信息可以是由该加密文件密钥通过对称加密方法加密待分享文件后生成的密文。该加密文件可以封装成只有用户终端能够识别的特殊格式。
在步骤120,将加密文件分享至服务器,即将加密文件上传至云端。
在步骤130,从服务器下载加密文件后,若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器。其中,用户终端可以比对文件基本信息字段确定被分享用户是否为该加密文件的所有者,例如,分享用户A向服务器上传该加密文件时,在文件基本信息字段标有分享用户A信息,被分享用户B从云端下载该加密文件后,被分享用户终端判断被分享用户B不是该加密文件的所有者,则向服务器申请文件解密。服务器根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥。
在步骤140,接收服务器发送的根据被分享用户公钥加密的文件加密密钥。
在步骤150,根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。即被分享用户使用本人私钥解密得到的文件加密密钥后解密加密文件。
在该实施例中,用户终端将加密文件上传至服务器前利用分享用户私钥对文件加密,在被分享用户下载该加密文件后,将包含被分享用户信息的文件头发送至服务器,以便服务器根据分享用户公钥解密该加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥,被分享用户可以根据被分享用户私钥解密收到的加密的文件加密密钥,并利用文件加密密钥解密该加密文件,能够提高分享文件的安全性,同时能够使得加密文件的分享更具灵活性。
图2为本发明可分享云存储加解密方法中用户注册流程的一个实施例的示意图。本发明在进行文件加密前需要获得进行加密的私钥,实现过程如下:
在步骤210,用户终端向服务器发送用户注册信息。其中,该用户终端为用户使用端,可以为分享用户终端,也可以为被分享用户终端,即用户注册信息为分享用户的注册信息或被分享用户的注册信息。在一个实施例中,用户终端为客户端,作为软件安装在PC及移动终端上。
在步骤220,服务器根据分享用户的注册信息或被分享用户的注册信息判断分享用户和被分享用户是否为合法用户,若分享用户和被分享用户为合法用户,则保存分享用户信息和被分享用户信息。例如,在分享用户分享文件时,需要在服务器表内写入被分享用户的用户名,如果此时被分享用户并不是已经注册的合法用户,则无法向被分享用户分享该文件,从而保证文件分享时的安全性。
在步骤230,服务器向密钥管理中心请求分配密钥。其中,服务器为合法用户向密钥管理中心请求分配密钥。
在步骤240,密钥管理中心判断该用户是否为新注册用户,若为新注册用户,则根据该用户身份信息生成用户密钥,如为已注册用户,则将保存在管理中心的该用户密钥重新发送给用户终端。用户终端将该用户密钥保存在本地,作为用户私钥,从而可以加密文件加密密钥。
在该实施例中,用户终端可以获得用户私钥,从而能够使得分享用户利用分享用户私钥加密文件加密密钥以及使得被分享用户利用被分享用户私钥解密加密的文件加密密钥,从而利用文件加密密钥解密加密文件。
图3为本发明可分享云存储加解密方法中文件加密流程的一个实施例的示意图。
在步骤310,随机生成文件加密密钥K1。
在步骤320,利用分享用户私钥KPr1加密该文件加密密钥K1从而生成加密的文件加密密钥C2,其中,EKPr1(K1)=C2。
在步骤330,利用文件加密密钥K1加密待分享文件M从而生成加密文件信息C1,其中,EK1(M)=C1。
在步骤340,将文件基本信息、加密的文件加密密钥C2和加密文件信息C1封装成用户终端能够识别的加密文件格式。其中,文件基本信息中包括文件的所有者信息。
在步骤350,将该加密文件上传至云端。其中,如图4所示,云端的服务器可以维护一张文件分享记录表。其中,该文件分享记录表中包括加密文件的分享用户信息和被分享用户信息的对应关系。被分享用户在上传加密文件时也可以将被分享者信息上传至服务器。例如,用户A分享加密文件给用户B,则服务器内的文件分享记录表中包含了分享用户A和被分享用户B的对应关系。当被分享用户需要解密文件时,服务器会查询该文件分享记录表,验证申请解密文件的用户是否有权解密文件。
在上述实施例中,分享用户将文件基本信息、加密的文件加密密钥和加密文件信息封装成用户终端能够识别的加密文件格式,并上传至云端,云端服务器维护文件分享记录表,以便在被分享用户需要解密文件时,查询该文件分享记录表,验证申请解密文件的用户是否有权解密文件,使得文件分享更加安全。
图5为本发明可分享云存储加解密方法中文件解密的一个实施例的流程示意图。该方法包括以下步骤:
在步骤510,被分享用户终端从服务器下载加密文件。
在步骤520,被分享用户终端若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器。被分享用户终端将自己的用户名写入文件基本信息,其中,文件头中还包括分享用户信息和加密的文件加密密钥C2。
在步骤530,服务器查阅文件分享记录表,确定被分享用户终端可以解密加密文件后,向密钥管理中心申请分享用户公钥KP1和被分享用户公钥KP2。
在步骤540,服务器接收分享用户公钥KP1和被分享用户公钥KP2。
在步骤550,服务器利用分享用户公钥KP1解密该加密的文件加密密钥C2,得到文件加密密钥K1,其中,DKP1(C2)=K1。
在步骤560,服务器利用被分享用户公钥KP2加密解密后的文件加密密钥K1,得到加密的文件加密密钥C3,其中,EKP2(K1)=C3。
在步骤570,被分享用户终端从服务器接收加密的文件加密密钥C3。
在步骤580,根据被分享用户私钥KPr2解密该加密的文件加密密钥C3,得到文件加密密钥K1,其中,DKPr2(C3)=K1。
在步骤590,利用文件加密密钥K1解密加密文件信息C1得到待分享文件M,其中,DK1(C1)=M。
在上述实施例中,被分享用户终端从服务器下载加密文件后,若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器,以便服务器根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥,并根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。即分享用户只需授权给被分享用户,被分享用户即可解密该加密文件,从而使得文件的分享更加安全,并且无需用户从云端将加密文件下载后更换密钥进行加解密,使得加密文件的分享更具灵活性。
图6为本发明可分享云存储加解密方法的另一个实施例的流程示意图。该方法可以由服务器执行,包括以下步骤:
在步骤610,接收分享用户终端发送的加密文件。其中,加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息。分享用户终端为将待分享文件上传分享至云端的用户终端,分享用户终端可以通过服务器从密钥管理中心获得用户密钥,该用户密钥作为分享用户的私钥。文件基本信息中可以包括文件所有者信息,以便在文件解密时终端甄别是否需要向服务器发送解密消息。加密的文件加密密钥C2为经过该分享用户私钥加密的文件加密密钥,进一步可以通过该分享用户私钥使用非对称加密方法加密该文件加密密钥。其中,文件加密密钥K1可以是由终端随机生成的密钥,用于加密文件。加密文件信息可以是由该加密文件密钥K1通过对称加密方法加密待分享文件M后生成的密文C1。该加密文件可以封装成只有用户终端能够识别的特殊格式。
在步骤620,将加密文件发送至被分享用户终端。其中,被分享用户终端为想要获得该加密文件的用户终端。
在步骤630,接收被分享用户终端发送的包含被分享用户信息的文件头。其中,被分享用户终端从服务器下载加密文件后,若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器。其中,用户终端可以比对文件基本信息字段确定被分享用户是否为该加密文件的所有者。其中,服务器查阅文件分享记录表,确定被分享用户终端可以解密加密文件后,向密钥管理中心申请分享用户公钥KP1和被分享用户公钥KP2。文件分享记录表中包括加密文件的分享用户信息和被分享用户信息的对应关系。
在步骤640,根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥。例如,服务器利用分享用户公钥KP1解密该加密的文件加密密钥C2,得到文件加密密钥K1,其中,DKP1(C2)=K1;再利用被分享用户公钥KP2加密解密后的文件加密密钥K1,得到加密的文件加密密钥C3,其中,EKP2(K1)=C3。
在步骤650,将根据被分享用户公钥加密的文件加密密钥发送至被分享用户终端,以便被分享用户终端根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。例如,被分享用户终端根据被分享用户私钥KPr2解密该加密的文件加密密钥C3,得到文件加密密钥K1,其中,DKPr2(C3)=K1;再利用文件加密密钥K1解密加密文件信息C1得到待分享文件M,其中,DK1(C1)=M。
在该实施例中,服务器接收分享用户终端发送的加密文件,并将该加密文件发送至被分享用户终端,在收到被分享用户终端发送的包含被分享用户信息的文件头后,根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥,并将根据被分享用户公钥加密的文件加密密钥发送至被分享用户终端,以便被分享用户终端根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息,能够提高分享文件的安全性,同时能够使得加密文件的分享更具灵活性。
另外,该服务器还可以接收分享用户终端发送的分享用户的注册信息或被分享用户终端发送的被分享用户的注册信息;服务器可以先审核用户注册信息,判断该用户是否为合法用户,若合法,则保存该合法用户信息,并为合法用户向密钥管理中心请求分配分享用户私钥或被分享用户私钥,其中,密钥管理中心根据用户注册信息判断是否为新注册用户,若为新注册用户,则根据用户注册信息生成分享用户私钥或被分享用户私钥,并将分享用户私钥发送至分享用户终端或将被分享用户私钥发送至被分享用户终端。
在上述实施例中,能够使得用户终端获得用户私钥,从而能够使得分享用户利用分享用户私钥加密文件加密密钥以及使得被分享用户利用被分享用户私钥解密加密的文件加密密钥,从而利用文件加密密钥解密加密文件。
本发明的用户终端可以为客户端,即用户使用端,作为软件安装在PC及移动终端上,主要承担用户注册、文件加解密、发送文件分享请求等功能。下面以图7、图8为例对用户终端进行说明。
该用户终端包括:加密文件生成单元710、分享文件上传单元720、加密文件下载单元730、文件头上传单元740、密钥接收单元750和文件解密单元760,其中:
加密文件生成单元710用于根据分享用户私钥生成加密文件。其中,加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息。文件基本信息中可以包括文件所有者信息,以便在文件解密时终端甄别是否需要向服务器发送解密消息。加密的文件加密密钥为经过该分享用户私钥加密的文件加密密钥,进一步可以通过该分享用户私钥使用非对称加密方法加密该文件加密密钥。其中,文件加密密钥可以是由终端随机生成的密钥,用于加密文件。加密文件信息可以是由该加密文件密钥通过对称加密方法加密待分享文件后生成的密文。该加密文件可以封装成只有用户终端能够识别的特殊格式。
分享文件上传单元720用于将加密文件分享至服务器。即将加密文件上传至云端。
加密文件下载单元730用于从服务器下载加密文件。
文件头上传单元740用于若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器。其中,用户终端可以比对文件基本信息字段确定被分享用户是否为该加密文件的所有者,例如,分享用户A向服务器上传该加密文件时,在文件基本信息字段标有分享用户A信息,被分享用户B从云端下载该加密文件后,被分享用户终端判断被分享用户B不是该加密文件的所有者,则向服务器申请文件解密。服务器根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥。
密钥接收单元750用于接收服务器发送的根据被分享用户公钥加密的文件加密密钥。
文件解密单元760用于根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。即被分享用户使用本人私钥解密得到的文件加密密钥后解密加密文件。
在该实施例中,用户终端将加密文件上传至服务器前利用分享用户私钥对文件加密,在被分享用户下载该加密文件后,将包含被分享用户信息的文件头发送至服务器,以便服务器根据分享用户公钥解密该加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥,被分享用户可以根据被分享用户私钥解密收到的加密的文件加密密钥,并利用文件加密密钥解密该加密文件,能够提高分享文件的安全性,同时能够使得加密文件的分享更具灵活性。
在本发明的另一个实施例中,如图8所示,该用户终端还包括注册信息发送单元810和用户私钥接收单元820,其中:
注册信息发送单元810用于向服务器发送分享用户注册的信息或被分享用户的注册信息,以便服务器保存分享用户信息或被分享用户信息。其中,服务器可以先审核用户注册信息,判断该用户是否为合法用户,若合法,则保存该合法用户信息,并为合法用户向密钥管理中心请求分配密钥。密钥管理中心判断该用户是否为新注册用户,若为新注册用户,则根据该用户身份信息生成用户密钥,如为已注册用户,则将保存在管理中心的该用户密钥重新发送给用户终端。
用户私钥接收单元820用于接收密钥管理中心发送的分享用户私钥或被分享用户私钥。
在该实施例中,用户终端可以获得用户私钥,从而能够使得分享用户利用分享用户私钥加密文件加密密钥以及使得被分享用户利用被分享用户私钥解密加密的文件加密密钥,从而利用文件加密密钥解密加密文件。
在本发明的另一个实施例中,该用户终端还包括文件加密密钥生成单元830、加密文件加密密钥生成单元840和加密文件信息生成单元850,其中:
文件加密密钥生成单元830用于随机生成文件加密密钥K1。
加密文件加密密钥生成单元840用于利用分享用户私钥KPr1加密该文件加密密钥K1从而生成加密的文件加密密钥C2,其中,E KPr1(K1)=C2。
加密文件信息生成单元850用于利用文件加密密钥K1加密待分享文件M从而生成加密文件信息C1,其中,EK1(M)=C1。
加密文件生成单元710用于将文件基本信息、加密的文件加密密钥C2和加密文件信息C1封装成用户终端能够识别的加密文件格式。其中,文件基本信息中包括文件的所有者信息。
在一个实施例中,该用户终端还包括所有者判断单元860,其中,在加密文件下载单元730从服务器下载加密文件后,所有者判断单元860根据分享用户信息确定被分享用户是否为加密文件的所有者,若被分享用户不是加密文件的所有者,则确定需要向服务器申请文件解密。文件头上传单元740将包含被分享用户信息的文件头发送至服务器。即被分享用户终端将自己的用户名写入文件基本信息,其中,文件头中还包括分享用户信息和加密的文件加密密钥C2。
在上述实施例中,分享用户将文件基本信息、加密的文件加密密钥和加密文件信息封装成用户终端能够识别的加密文件格式,并上传至云端,以便安全的将加密文件分享给其他用户。
服务器可以接受用户终端请求并做出相应响应,管理用户及加密文件被分享记录表,重加密文件解密密钥。下面将以图9和图10为例对服务器进行说明。
图9为本发明服务器的一个实施例的结构示意图。该服务器包括加密文件接收单元910、加密文件发送单元920、文件头接收单元930、密钥加解密单元940和加密密钥发送单元950,其中:
加密文件接收单元910用于接收分享用户终端发送的加密文件。其中,加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息。分享用户终端为将待分享文件上传分享至云端的用户终端。
加密文件发送单元920用于将加密文件发送至被分享用户终端。其中,被分享用户终端为想要获得该加密文件的用户终端。
文件头接收单元930用于接收被分享用户终端发送的包含被分享用户信息的文件头。其中,被分享用户终端从服务器下载加密文件后,若根据文件基本信息确定需要向服务器申请文件解密,则将包含被分享用户信息的文件头发送至服务器。其中,用户终端可以比对文件基本信息字段确定被分享用户是否为该加密文件的所有者。
密钥加解密单元940用于根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥。其中,服务器查阅文件分享记录表,确定被分享用户终端可以解密加密文件后,向密钥管理中心申请分享用户公钥KP1和被分享用户公钥KP2。文件分享记录表中包括加密文件的分享用户信息和被分享用户信息的对应关系。
加密密钥发送单元950用于将根据被分享用户公钥加密的文件加密密钥发送至被分享用户终端,以便被分享用户终端根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息。例如,被分享用户终端根据被分享用户私钥KPr2解密该加密的文件加密密钥C3,得到文件加密密钥K1,其中,DKPr2(C3)=K1;再利用文件加密密钥K1解密加密文件信息C1得到待分享文件M,其中,DK1(C1)=M。
在该实施例中,服务器接收分享用户终端发送的加密文件,并将该加密文件发送至被分享用户终端,在收到被分享用户终端发送的包含被分享用户信息的文件头后,根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥,并将根据被分享用户公钥加密的文件加密密钥发送至被分享用户终端,以便被分享用户终端根据被分享用户私钥解密根据被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密加密文件信息,能够提高分享文件的安全性,同时能够使得加密文件的分享更具灵活性。
在本发明的另一个实施例中,如图10所示,该服务器还包括用户查询判断单元1010和公钥申请发送单元1020,其中:
用户查询判断单元1010用于查询文件分享记录表判断被分享用户是否有权解密加密文件信息。其中,服务器可以维护一张文件分享记录表。其中,该文件分享记录表中包括加密文件的分享用户信息和被分享用户信息的对应关系。被分享用户在上传加密文件时也可以将被分享者信息上传至服务器。例如,用户A分享加密文件给用户B,则服务器内的文件分享记录表中包含了分享用户A和被分享用户B的对应关系。当被分享用户需要解密文件时,服务器会查询该文件分享记录表,验证申请解密文件的用户是否有权解密文件。
公钥申请发送单元1020用于若确定被分享用户有权解密加密文件信息,则向所述密钥管理中心申请分享用户公钥和被分享用户公钥。从而使得密钥加解密单元940能够根据密钥管理中心发送的分享用户公钥解密加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥。
在另一个实施例中,该服务器还包括注册信息接收单元1030、合法用户判断单元1040、合法用户信息保存单元1050和私钥申请发送单元1060,其中,注册信息接收单元1030用于接收分享用户终端发送的分享用户的注册信息或被分享用户终端发送的被分享用户的注册信息。合法用户判断单元1040用于根据分享用户的注册信息和被分享用户的注册信息分别判断分享用户和被分享用户是否为合法用户。合法用户信息保存单元1050用于若分享用户和被分享用户为合法用户,则保存分享用户信息和被分享用户信息。私钥申请发送单元1060用于向密钥管理中心请求分配分享用户私钥或被分享用户私钥,其中,密钥管理中心根据分享用户的注册信息判断分享用户是否为新注册用户,若为新注册用户,则根据分享用户的注册信息生成分享用户私钥;或者,根据被分享用户的注册信息判断被分享用户是否为新注册用户,若为新注册用户,则根据被分享用户的注册信息生成被分享用户私钥,并将分享用户私钥发送至分享用户终端或将被分享用户私钥发送至被分享用户终端。
在上述实施例中,能够使得用户终端获得用户私钥,从而能够使得分享用户利用分享用户私钥加密文件加密密钥以及使得被分享用户利用被分享用户私钥解密加密的文件加密密钥,从而利用文件加密密钥解密加密文件。
图11为本发明可分享云存储加解密系统的一个实施例的结构示意图。该系统包括用户终端1110、服务器1120和密钥管理中心1130,其中,用户终端1110和服务器1120已在上述实施例中进行了详细介绍,此处不再进一步阐述。密钥管理中心1130可以管理所有合法用户密钥提供密钥的生成、保存、备份、更新、恢复、查询等密钥服务。例如,在用户终端1110需要用户密钥时,密钥管理中心1130为新注册分配根据该用户身份信息生成的密钥,为已注册用户将保存在管理中心的该用户密钥重新发送给用户终端。在服务器1120申请分享用户公钥和被分享用户公钥时,密钥管理中心1130将分享用户公钥和被分享用户公钥发送至服务器1120。
在上述实施例中,用户可在文件上传至云端前使用密钥将文件加密,在用户下载文件至本地后自动解密文件,在用户将文件分享给可信任的另一用户时,分享用户只需要授权给被分享用户,被分享用户即可解密该文件,从而提高了分享文件的安全性和灵活性。
图12为本发明可分享云存储加解密系统的又一个实施例的结构示意图。该装置包括存储器1210和处理器1220。
存储器1210可以是磁盘、闪存或其它任何非易失性存储介质。存储器用于存储图1-6所对应实施例中的指令。
处理器1220耦接至存储器1210,可以作为一个或多个集成电路来实施,例如微处理器或微控制器。该处理器1220用于执行存储器中存储的指令,提高了分享文件的安全性和灵活性。
在一个实施例中,还可以如图13所示,该可分享云存储加解密系统1300包括存储器1310和处理器1320。处理器1320通过BUS总线1330耦合至存储器1310。该可分享云存储加解密系统1300还可以通过存储接口1340连接至外部存储装置1350以便调用外部数据,还可以通过网络接口1360连接至网络或者另外一台计算机系统(未标出),此处不再进行详细介绍。
在该实施例中,通过存储器存储数据指令,再通过处理器处理上述指令,提高文件分享的安全性。
在另一个实施例中,一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现图1-6所对应实施例中的方法的步骤。本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
至此,已经详细描述了本发明。为了避免遮蔽本发明的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
可能以许多方式来实现本发明的方法以及装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法以及装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。

Claims (23)

1.一种可分享云存储加解密方法,其特征在于,包括:
根据分享用户私钥生成加密文件,其中所述加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;
将所述加密文件分享至服务器;
从所述服务器下载所述加密文件后,若根据所述文件基本信息确定需要向所述服务器申请文件解密,则将包含被分享用户信息的文件头发送至所述服务器,以便所述服务器根据密钥管理中心发送的分享用户公钥解密所述加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;
接收所述服务器发送的根据被分享用户公钥加密的文件加密密钥;
根据被分享用户私钥解密所述根据所述被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密所述加密文件信息。
2.根据权利要求1所述的方法,其特征在于,所述文件基本信息包括分享用户信息;
根据所述分享用户信息确定被分享用户是否为所述加密文件的所有者,若所述被分享用户不是所述加密文件的所有者,则确定需要向所述服务器申请文件解密。
3.根据权利要求1所述的方法,其特征在于,还包括:
随机生成文件加密密钥,根据所述分享用户私钥加密所述文件加密密钥从而生成所述加密的文件加密密钥。
4.根据权利要求3所述的方法,其特征在于,还包括:
根据所述文件加密密钥加密待分享文件从而生成所述加密文件信息。
5.根据权利要求1-4任一所述的方法,其特征在于,还包括:
向所述服务器发送分享用户的注册信息或被分享用户的注册信息,以便所述服务器保存分享用户信息或被分享用户信息;
其中,所述服务器根据所述分享用户的注册信息判断所述分享用户是否为合法用户,若所述分享用户为合法用户,则保存分享用户信息;或者,根据所述被分享用户的注册信息判断所述被分享用户是否为合法用户,若所述被分享用户为合法用户,则保存被分享用户信息。
6.根据权利要求5所述的方法,其特征在于,还包括:
接收所述密钥管理中心发送的所述分享用户私钥或所述被分享用户私钥;
其中,所述服务器向所述密钥管理中心请求分配所述分享用户私钥或所述被分享用户私钥;所述密钥管理中心根据所述分享用户的注册信息判断所述分享用户是否为新注册用户,若为新注册用户,则根据所述分享用户的注册信息生成所述分享用户私钥,或者,根据所述被分享用户的注册信息判断所述被分享用户是否为新注册用户,若为新注册用户,则根据所述被分享用户的注册信息生成所述被分享用户私钥。
7.一种可分享云存储加解密方法,其特征在于,包括:
接收分享用户终端发送的加密文件,其中,所述加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;
将所述加密文件发送至被分享用户终端;
接收所述被分享用户终端发送的包含被分享用户信息的文件头;
根据密钥管理中心发送的分享用户公钥解密所述加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;
将根据被分享用户公钥加密的文件加密密钥发送至所述被分享用户终端,以便所述被分享用户终端根据被分享用户私钥解密所述根据所述被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密所述加密文件信息。
8.根据权利要求7所述的方法,其特征在于,接收所述被分享用户终端发送的包含被分享用户信息的文件头后,还包括:
查询文件分享记录表判断被分享用户是否有权解密所述加密文件信息,若确定所述被分享用户有权解密所述加密文件信息,则向所述密钥管理中心申请所述分享用户公钥和所述被分享用户公钥;
其中,所述文件分享记录表中包括所述加密文件的分享用户信息和被分享用户信息的对应关系。
9.根据权利要求7或8所述的方法,其特征在于,还包括:
接收所述分享用户终端发送的分享用户的注册信息或所述被分享用户终端发送的被分享用户的注册信息;
根据所述分享用户的注册信息或被分享用户的注册信息分别判断所述分享用户或被分享用户是否为合法用户;
若所述分享用户或所述被分享用户为合法用户,则保存分享用户信息或被分享用户信息。
10.根据权利要求9所述的方法,其特征在于,还包括:
向所述密钥管理中心请求分配所述分享用户私钥或所述被分享用户私钥,以便所述密钥管理中心将所述分享用户私钥发送至所述分享用户终端或将所述被分享用户私钥发送至所述被分享用户终端;
其中,所述密钥管理中心根据所述分享用户的注册信息判断所述分享用户是否为新注册用户,若为新注册用户,则根据所述分享用户的注册信息生成所述分享用户私钥;或者,根据所述被分享用户的注册信息判断所述被分享用户是否为新注册用户,若为新注册用户,则根据所述被分享用户的注册信息生成所述被分享用户私钥。
11.一种用户终端,其特征在于,包括:
加密文件生成单元,用于根据分享用户私钥生成加密文件,其中所述加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;
分享文件上传单元,用于将所述加密文件分享至服务器;
加密文件下载单元,用于从所述服务器下载所述加密文件;
文件头上传单元,用于若根据所述文件基本信息确定需要向所述服务器申请文件解密,则将包含被分享用户信息的文件头发送至所述服务器,以便所述服务器根据密钥管理中心发送的分享用户公钥解密所述加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;
密钥接收单元,用于接收所述服务器发送的根据被分享用户公钥加密的文件加密密钥;
文件解密单元,用于根据被分享用户私钥解密所述根据所述被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密所述加密文件信息。
12.根据权利要求11所述的用户终端,其特征在于,所述文件基本信息包括分享用户信息,所述用户终端还包括:
所有者判断单元,用于根据所述分享用户信息确定被分享用户是否为所述加密文件的所有者,若所述被分享用户不是所述加密文件的所有者,则确定需要向所述服务器申请文件解密。
13.根据权利要求11所述的用户终端,其特征在于,还包括:
文件加密密钥生成单元,用于随机生成文件加密密钥;
加密文件加密密钥生成单元,用于根据所述分享用户私钥加密所述文件加密密钥从而生成所述加密的文件加密密钥。
14.根据权利要求13所述的用户终端,其特征在于,还包括:
加密文件信息生成单元,用于根据所述文件加密密钥加密待分享文件从而生成所述加密文件信息。
15.根据权利要求11-14任一所述的用户终端,其特征在于,还包括:
注册信息发送单元,用于向所述服务器发送分享用户的注册信息或被分享用户的注册信息,以便所述服务器保存分享用户信息或被分享用户信息;
其中,所述服务器根据所述分享用户的注册信息判断所述分享用户是否为合法用户,若所述分享用户为合法用户,则保存分享用户信息,或者,根据所述被分享用户的注册信息判断所述被分享用户是否为合法用户,若所述被分享用户为合法用户,则保存被分享用户信息。
16.根据权利要求15所述的用户终端,其特征在于,还包括:
用户私钥接收单元,用于接收所述密钥管理中心发送的所述分享用户私钥或所述被分享用户私钥;
其中,所述服务器向所述密钥管理中心请求分配所述分享用户私钥或所述被分享用户私钥;所述密钥管理中心根据所述分享用户的注册信息判断所述分享用户是否为新注册用户,若为新注册用户,则根据所述分享用户的注册信息生成所述分享用户私钥;或者,根据所述被分享用户的注册信息判断所述被分享用户是否为新注册用户,若为新注册用户,则根据所述被分享用户的注册信息生成所述被分享用户私钥。
17.一种服务器,其特征在于,包括:
加密文件接收单元,用于接收分享用户终端发送的加密文件,其中,所述加密文件包括文件基本信息、加密的文件加密密钥和加密文件信息;
加密文件发送单元,用于将所述加密文件发送至被分享用户终端;
文件头接收单元,用于接收所述被分享用户终端发送的包含被分享用户信息的文件头;
密钥加解密单元,用于根据密钥管理中心发送的分享用户公钥解密所述加密的文件加密密钥,根据被分享用户公钥加密解密后的文件加密密钥;
加密密钥发送单元,用于将根据被分享用户公钥加密的文件加密密钥发送至所述被分享用户终端,以便所述被分享用户终端根据被分享用户私钥解密所述根据所述被分享用户公钥加密的文件加密密钥后,利用文件加密密钥解密所述加密文件信息。
18.根据权利要求17所述的服务器,其特征在于,还包括:
用户查询判断单元,用于查询文件分享记录表判断被分享用户是否有权解密所述加密文件信息;
公钥申请发送单元,用于若确定所述被分享用户有权解密所述加密文件信息,则向所述密钥管理中心申请所述分享用户公钥和所述被分享用户公钥;
其中,所述文件分享记录表中包括所述加密文件的分享用户信息和被分享用户信息的对应关系。
19.根据权利要求17或18所述的服务器,其特征在于,还包括:
注册信息接收单元,用于接收所述分享用户终端发送的分享用户的注册信息或所述被分享用户终端发送的被分享用户的注册信息;
合法用户判断单元,用于根据所述分享用户的注册信息或被分享用户的注册信息分别判断所述分享用户或所述被分享用户是否为合法用户;
合法用户信息保存单元,用于若所述分享用户或所述被分享用户为合法用户,则保存分享用户信息或被分享用户信息。
20.根据权利要求19所述的服务器,其特征在于,还包括:
私钥申请发送单元,用于向所述密钥管理中心请求分配所述分享用户私钥或所述被分享用户私钥,以便所述密钥管理中心将所述分享用户私钥发送至所述分享用户终端或将所述被分享用户私钥发送至所述被分享用户终端;
其中,所述密钥管理中心根据所述分享用户的注册信息判断所述分享用户是否为新注册用户,若为新注册用户,则根据所述分享用户的注册信息生成所述分享用户私钥;或者,根据所述被分享用户的注册信息判断所述被分享用户是否为新注册用户,若为新注册用户,则根据所述被分享用户的注册信息生成所述被分享用户私钥。
21.一种可分享云存储加解密系统,其特征在于,包括密钥管理中心,权利要求11-16任一所述的用户终端和权利要求17-20任一所述的服务器。
22.一种可分享云存储加解密系统,其特征在于,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令执行如权利要求1至10任一项所述的方法。
23.一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现权利要求1至10任一项所述的方法的步骤。
CN201710365753.6A 2017-05-23 2017-05-23 可分享云存储加解密方法、装置和系统 Active CN108933758B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710365753.6A CN108933758B (zh) 2017-05-23 2017-05-23 可分享云存储加解密方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710365753.6A CN108933758B (zh) 2017-05-23 2017-05-23 可分享云存储加解密方法、装置和系统

Publications (2)

Publication Number Publication Date
CN108933758A CN108933758A (zh) 2018-12-04
CN108933758B true CN108933758B (zh) 2021-04-09

Family

ID=64450190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710365753.6A Active CN108933758B (zh) 2017-05-23 2017-05-23 可分享云存储加解密方法、装置和系统

Country Status (1)

Country Link
CN (1) CN108933758B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109639682A (zh) * 2018-12-14 2019-04-16 深圳市青葡萄科技有限公司 文件分享方法
CN109787985B (zh) * 2019-01-25 2021-07-06 广州飞傲电子科技有限公司 音乐文件上传方法、分享方法以及播放方法
CN111130778B (zh) * 2019-12-31 2022-03-11 郑州信大捷安信息技术股份有限公司 一种基于硬件的安全恢复加密数据的方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761521A (zh) * 2011-04-26 2012-10-31 上海格尔软件股份有限公司 云安全存储及共享服务平台
CN103248479A (zh) * 2012-02-06 2013-08-14 中兴通讯股份有限公司 云存储安全系统、数据保护以及共享方法
CN103795780A (zh) * 2013-12-06 2014-05-14 中国科学院深圳先进技术研究院 云存储数据的保护方法及装置
CN104917759A (zh) * 2015-05-26 2015-09-16 西安电子科技大学 基于第三方的安全文件存储和共享系统及方法
CN105072180A (zh) * 2015-08-06 2015-11-18 武汉科技大学 一种有权限时间控制的云存储数据安全共享方法
CN106254324A (zh) * 2016-07-26 2016-12-21 杭州文签网络技术有限公司 一种存储文件的加密方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102761521A (zh) * 2011-04-26 2012-10-31 上海格尔软件股份有限公司 云安全存储及共享服务平台
CN103248479A (zh) * 2012-02-06 2013-08-14 中兴通讯股份有限公司 云存储安全系统、数据保护以及共享方法
CN103795780A (zh) * 2013-12-06 2014-05-14 中国科学院深圳先进技术研究院 云存储数据的保护方法及装置
CN104917759A (zh) * 2015-05-26 2015-09-16 西安电子科技大学 基于第三方的安全文件存储和共享系统及方法
CN105072180A (zh) * 2015-08-06 2015-11-18 武汉科技大学 一种有权限时间控制的云存储数据安全共享方法
CN106254324A (zh) * 2016-07-26 2016-12-21 杭州文签网络技术有限公司 一种存储文件的加密方法及装置

Also Published As

Publication number Publication date
CN108933758A (zh) 2018-12-04

Similar Documents

Publication Publication Date Title
US11706026B2 (en) Location aware cryptography
CN106453612B (zh) 一种数据存储与共享系统
CN104852925B (zh) 移动智能终端数据防泄漏安全存储、备份方法
CN105245328B (zh) 一种基于第三方的用户及文件的密钥产生管理方法
CN111030996B (zh) 一种访问资源的方法及装置
CN106603485A (zh) 密钥协商方法及装置
CN112913189B (zh) 一种ota升级方法及装置
US10181949B2 (en) Data distributing over network to user devices
JP2016533048A5 (zh)
CN103237040A (zh) 一种存储方法、服务器和客户端
CN104852949A (zh) 基于混合加密机制的云存储数据管理方法和系统
CN112532580B (zh) 一种基于区块链及代理重加密的数据传输方法及系统
CN104917787A (zh) 基于群组密钥的文件安全共享方法和系统
CN110740038B (zh) 区块链及其通信方法、网关、通信系统和存储介质
CN108933758B (zh) 可分享云存储加解密方法、装置和系统
CN104462874B (zh) 一种支持离线共享数字资源的drm方法与系统
CN109005184A (zh) 文件加密方法及装置、存储介质、终端
US11153344B2 (en) Establishing a protected communication channel
CN114244524B (zh) 一种基于区块链的数据共享方法及系统
CN102999710A (zh) 一种安全共享数字内容的方法、设备及系统
CN109446793B (zh) 一种基于Windows agent的账户改密方法及装置
CN113193958A (zh) 一种高安全高效率的量子密钥服务方法与系统
CN114826627A (zh) 信息传输方法、企业安全网关和系统
CN110830240B (zh) 一种终端与服务器的通信方法和装置
CN113163399A (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
GR01 Patent grant
GR01 Patent grant