CN113553611A - 文件加密存储方法和系统、用户终端、云平台和存储介质 - Google Patents
文件加密存储方法和系统、用户终端、云平台和存储介质 Download PDFInfo
- Publication number
- CN113553611A CN113553611A CN202010337506.7A CN202010337506A CN113553611A CN 113553611 A CN113553611 A CN 113553611A CN 202010337506 A CN202010337506 A CN 202010337506A CN 113553611 A CN113553611 A CN 113553611A
- Authority
- CN
- China
- Prior art keywords
- file
- key
- user
- cloud platform
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000012986 modification Methods 0.000 claims description 21
- 230000004048 modification Effects 0.000 claims description 21
- 238000012423 maintenance Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 10
- 239000002699 waste material Substances 0.000 description 4
- 238000011084 recovery Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
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)
Abstract
本公开涉及一种文件加密存储方法和系统、用户终端、云平台和存储介质。该方法包括:获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥;根据用户口令对第一密钥进行加密得到第二密钥;将用户标识、文件标识、加密文件和第二密钥发送至云平台;云平台判断云平台是否已存在所述文件标识对应的加密文件;云平台在已存在所述文件标识对应的加密文件的情况下,在文件存储列表增加一条文件存储信息,文件存储路径为所述文件标识对应的加密文件的存储路径。本公开可以实现对用户存储到云平台的文件进行加密的同时,能够对存储到云平台的重复文件去重。
Description
技术领域
本公开涉及网络技术与安全领域,特别涉及一种文件加密存储方法和系统、用户终端、云平台和存储介质。
背景技术
随着云计算的发展,云存储逐渐在社会生产和生活中起到越来越重要的作用。
发明内容
发明人通过研究发现:如何保证云平台内存储的用户数据信息安全是一个挑战,同时云存储中存在着大量的重复数据,造成了资源的浪费,数据去重和加密存储很难找到合适的平衡点。
鉴于以上技术问题中的至少一项,本公开提供了一种文件加密存储方法和系统、用户终端、云平台和存储介质,可以实现云平台文件加密存储,提高用户数据安全性。
根据本公开的一个方面,提供一种文件加密存储方法,包括:
用户终端获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥;
用户终端根据用户口令对第一密钥进行加密得到第二密钥;
用户终端将用户标识、文件标识、加密文件和第二密钥发送至云平台;
云平台判断云平台是否已存在所述文件标识对应的加密文件;
在云平台已存在所述文件标识对应的加密文件的情况下,云平台在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件和文件存储路径,文件存储路径为所述文件标识对应的加密文件的存储路径。
在本公开的一些实施例中,所述文件加密存储方法还包括:
在云平台不存在所述文件标识对应的加密文件的情况下,云平台存储所述文件标识对应的加密文件,并在文件存储列表增加一条文件存储信息。
在本公开的一些实施例中,所述文件加密存储方法还包括:
用户终端向云平台发送文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;
云平台根据文件存储列表,查询并返回用户标识和用户指定文件的文件标识所对应的加密文件和第二密钥;
用户终端采用用户口令解密第二密钥得到第一密钥;
用户终端使用第一密钥解密加密文件得到文件原文。
在本公开的一些实施例中,所述文件加密存储方法还包括:
用户终端获取文件原文的特征值,根据文件原文的特征值生成第三密钥;
用户终端判断第三密钥与第一密钥是否一致;
用户终端在第三密钥与第一密钥一致的情况下,判定指定文件无损,解密正常;
用户终端在第三密钥与第一密钥不一致的情况下,判定文件有损,解密有误。
在本公开的一些实施例中,所述文件加密存储方法还包括:
用户终端向云平台发送用户口令修改请求,其中,用户口令修改请求包括用户标识;
云平台将文件存储列表中所有该用户标识对应的所有第二密钥返回给用户终端;
用户终端利用旧用户口令解密所有第二密钥得到相应的第一密钥;
用户终端利用新用户口令对所有第一密钥进行加密得到新的第二密钥,将所有新的第二密钥发送给云平台;
云平台使用所有新的第二密钥更新存储列表中对应的第二密钥。
根据本公开的另一方面,提供一种用户终端,包括:
文件加密模块,用于获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥;根据用户口令对第一密钥进行加密得到第二密钥;并将用户标识、文件标识、加密文件和第二密钥发送至云平台,触发云平台判断云平台是否已存在所述文件标识对应的加密文件,在云平台已存在所述文件标识对应的加密文件的情况下,在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件和文件存储路径,文件存储路径为所述文件标识对应的加密文件的存储路径,在云平台不存在所述文件标识对应的加密文件的情况下,存储所述文件标识对应的加密文件,并在文件存储列表增加一条文件存储信息。
在本公开的一些实施例中,所述用户终端还包括:
文件解密模块,用于向云平台发送文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;接收云平台根据文件存储列表,查询并返回的加密文件和第二密钥,其中,所述加密文件和第二密钥为用户标识和用户指定文件的文件标识所对应的加密文件和第二密钥;采用用户口令解密第二密钥得到第一密钥;使用第一密钥解密加密文件得到文件原文。
在本公开的一些实施例中,文件解密模块,还用于获取文件原文的特征值,根据文件原文的特征值生成第三密钥;判断第三密钥与第一密钥是否一致;在第三密钥与第一密钥一致的情况下,判定指定文件无损,解密正常;在第三密钥与第一密钥不一致的情况下,判定文件有损,解密有误。
在本公开的一些实施例中,所述用户终端还包括:
口令管理模块,用于向云平台发送用户口令修改请求,其中,用户口令修改请求包括用户标识;接收云平台返回的、文件存储列表中所有该用户标识对应的所有第二密钥;利用旧用户口令解密所有第二密钥得到相应的第一密钥;利用新用户口令对所有第一密钥进行加密得到新的第二密钥,将所有新的第二密钥发送给云平台,并指示云平台使用所有新的第二密钥更新存储列表中对应的第二密钥。
根据本公开的另一方面,提供一种云平台,包括:
文件去重模块,用于判断云平台是否已存在所述文件标识对应的加密文件;在云平台已存在所述文件标识对应的加密文件的情况下,在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户终端发送的用户标识、文件标识、加密文件和文件存储路径,文件存储路径为所述文件标识对应的加密文件的存储路径,用户终端根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥,根据用户口令对第一密钥进行加密得到第二密钥。
在本公开的一些实施例中,文件去重模块,还用于在云平台不存在所述文件标识对应的加密文件的情况下,在云平台存储所述文件标识对应的加密文件,并在文件存储列表增加一条文件存储信息。
在本公开的一些实施例中,所述云平台还包括:
文件存储列表维护模块,用于接收用户终端发送的文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;根据文件存储列表,查询并返回用户标识和用户指定文件的文件标识所对应的加密文件和第二密钥给用户终端,以便用户终端采用用户口令解密第二密钥得到第一密钥,使用第一密钥解密加密文件得到文件原文。
在本公开的一些实施例中,所述云平台还包括:
文件存储列表维护模块,用于接收用户终端发送的用户口令修改请求,其中,用户口令修改请求包括用户标识;将文件存储列表中所有该用户标识对应的所有第二密钥返回给用户终端;使用用户终端发送的所有新的第二密钥更新存储列表中对应的第二密钥,其中,所述新的第二密钥是用户终端利用旧用户口令解密所有第二密钥得到相应的第一密钥,利用新用户口令对所有第一密钥进行加密得到的。
根据本公开的另一方面,提供一种文件加密存储系统,包括如上述任一实施例所述的用户终端和如上述任一实施例所述的云平台。
根据本公开的另一方面,提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例所述的文件加密存储方法。
本公开可以实现云平台文件加密存储,提高用户数据安全性。通过本公开可实现相同文件在云平台的去重存储,减少云平台存储资源的浪费。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开文件加密存储方法一些实施例的示意图。
图2为本公开文件加密存储方法另一些实施例的示意图。
图3为本公开文件加密存储方法又一些实施例的示意图。
图4为本公开文件加密存储方法又一些实施例的示意图。
图5为本公开文件加密存储系统一些实施例的示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本公开文件加密存储方法一些实施例的示意图。优选的,本实施例可由本公开文件加密存储系统执行。该方法包括以下步骤:
步骤11,用户终端获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥。
在本公开的一些实施例中,所述特征值可以为杂凑值(即哈希值)。
在本公开的一些实施例中,一个待存储文件对应唯一的特征值。一个待存储文件对应唯一的第一密钥。
步骤12,用户终端根据用户口令(用户密码)对第一密钥进行加密得到第二密钥。
在本公开的一些实施例中,用户口令可以为用户登陆密码。
在本公开的一些实施例中,用户口令可以是用户专门用于加密文件加密密钥的一个密码(口令)。
在本公开的一些实施例中,用户口令不能遗失,不支持密码找回。
步骤13,用户终端将用户标识、文件标识、加密文件和第二密钥发送至云平台。
步骤14,云平台判断云平台是否已存在所述文件标识对应的加密文件。
步骤15,在云平台已存在所述文件标识对应的加密文件的情况下,云平台在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件和文件存储路径,文件存储路径为所述文件标识对应的加密文件的存储路径。
图2为本公开文件加密存储方法另一些实施例的示意图。优选的,本实施例可由本公开文件加密存储系统执行。图2实施例给出了文件加密存储业务流程。该方法包括以下步骤:
步骤21,用户终端获取待存储文件的特征值H,根据待存储文件的特征值H生成第一密钥FK,使用第一密钥FK对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥。
在本公开的一些实施例中,所述特征值H可以为杂凑值(即哈希值)。
在本公开的一些实施例中,一个待存储文件对应唯一的特征值H。一个待存储文件对应唯一的第一密钥FK。
步骤22,用户终端根据用户口令(用户密码)对第一密钥FK进行加密得到第二密钥K。
在本公开的一些实施例中,用户口令可以为用户登陆密码。
在本公开的一些实施例中,用户口令可以是用户专门用于加密文件加密密钥的一个密码(口令)。
在本公开的一些实施例中,用户口令不能遗失,不支持密码找回。
步骤23,用户终端将用户标识(用户ID)、文件标识(文件ID)、加密文件F和第二密钥K发送至云平台。
步骤24,云平台判断云平台是否已存在所述文件标识对应的加密文件F。在云平台已存在所述文件标识对应的加密文件F的情况下,执行步骤25;否则,在云平台不存在所述文件标识对应的加密文件F的情况下,执行步骤26。
步骤25,云平台在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件F和文件存储路径,文件存储路径为所述文件标识对应的加密文件F的存储路径,即,文件存储路径指向已存在的加密文件。
步骤26,云平台存储所述文件标识对应的加密文件F,并更新文件存储列表。
在本公开的一些实施例中,步骤26中,所述更新文件存储列表包括在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件F和文件存储路径,文件存储路径为所述文件标识对应的加密文件F的存储路径。
用户ID | 加密后的文件加密密钥 | 文件 | 加密后的文件位置 |
user1 | K1=ENC(FK1,PW1) | file1 | path1 |
user1 | K2=ENC(FK2,PW1) | file2 | path2 |
user2 | K3=ENC(FK1,PW2) | file1 | path1 |
表1
表1为本公开一个实施例中一个文件存储列表的示例。如表1所示,文件file1的文件加密密钥(第一密钥)均为FK1,而用户user1用其口令PW1加密FK1得到K1,用户user2用其口令PW2加密FK1得到K3,同时加密后的文件存储位置均为path1。文件file2的文件加密密钥(第一密钥)均为FK2,用户user1存储文件file2使用的文件加密密钥则为FK2,用PW1加密后为K2,加密文件存储在path2。
从表1可知,同一存储文件(例如file1)的第一密钥相同,对应的加密后的文件存储位置相同。不同用户针对同一存储文件的用户口令不同,第二密钥也不相同。同一用户的(例如user1)的用户口令相同。
基于本公开上述实施例提供的文件加密存储方法,适用于所有需要文件加密存储的云平台存储场景,并可以实现文件去重保存,与文件相关的文件加密密钥加密后存储在云平台中,云平台或恶意第三方无法直接获得文件加密密钥,进而无法解密用户存储的加密文件。
通过本公开上述实施例可实现云平台文件加密存储,提高用户数据安全性。
通过本公开上述实施例可实现相同文件在云平台的去重存储,减少云平台存储资源的浪费。
图3为本公开文件加密存储方法又一些实施例的示意图。优选的,本实施例可由本公开文件加密存储系统执行。图3实施例给出了文件下载解密业务流程。该方法包括以下步骤:
步骤31,用户终端向云平台发送文件下载请求,其中,文件下载请求包括用户标识(用户ID)和用户指定文件的文件标识(文件ID)。
步骤32,云平台根据文件存储列表,查询并返回用户标识和用户指定文件的文件标识所对应的加密文件F和第二密钥K。
步骤33,用户终端采用用户口令PW解密第二密钥K得到第一密钥FK。
步骤34,用户终端使用第一密钥FK解密加密文件得到文件原文。
步骤35,用户终端获取文件原文的特征值H*,根据文件原文的特征值H*生成第三密钥FK*;用户终端判断第三密钥FK*与第一密钥FK是否一致。在第三密钥与第一密钥一致的情况下,执行步骤36;否则,在第三密钥与第一密钥不一致的情况下,执行步骤37。
步骤36,用户终端判定指定文件无损,解密正常。
步骤37,用户终端判定文件有损,解密有误。
图4为本公开文件加密存储方法又一些实施例的示意图。优选的,本实施例可由本公开文件加密存储系统执行。图4实施例给出了文件修改登陆密码流程。该方法包括以下步骤:
步骤41,用户终端向云平台发送用户口令修改请求,其中,用户口令修改请求包括用户标识(用户ID)。
步骤42,云平台将文件存储列表中所有该用户标识对应的所有第二密钥K1,K2...,Kn返回给用户终端。
步骤43,用户终端利用旧用户口令PW解密所有第二密钥K1,K2...,Kn得到相应的第一密钥FK1,FK2...,FKn。
步骤44,用户终端利用新用户口令PW*对所有第一密钥FK1,FK2...,FKn进行加密得到新的第二密钥FK1*,FK2*...,KFn*,将所有新的第二密钥K1*,K2*...,Kn*发送给云平台。
步骤45,云平台使用所有新的第二密钥K1*,K2*...,Kn*更新存储列表中对应的第二密钥K1,K2...,Kn。
步骤46,云平台告知用户终端更新成功。
本公开上述实施例适用于所有需要文件加密存储的云平台存储场景,并可以实现文件去重保存,与文件相关的文件加密密钥加密后存储在云平台中,云平台或恶意第三方无法直接获得文件加密密钥,进而无法解密用户存储的加密文件。
本公开上述实施例提出的基于用户登录密码支持去重的云平台文件加密存储方法,在实现对用户存储到云平台的文件进行加密的同时,能够对存储到云平台的重复文件去重,并且保证文件加密密钥在云平台的安全存储。
本公开上述实施例利用待存储文件本身产生文件加密密钥,通过用户登陆密码(口令)加密存储上述文件加密密钥,实现文件在云平台的加密存储及相同文件去重服务。
图5为本公开文件加密存储系统一些实施例的示意图。如图5所示,本公开文件加密存储系统可以包括用户终端51和云平台52,其中:
用户终端51,用于获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥FK,使用第一密钥FK对待存储文件进行加密,其中,第一密钥FK为待存储文件的文件加密密钥;根据用户口令对第一密钥FK进行加密得到第二密钥K;并将用户标识、文件标识、加密文件F和第二密钥K发送至云平台。
云平台52,用于判断云平台是否已存在所述文件标识对应的加密文件F,在云平台已存在所述文件标识对应的加密文件F的情况下,在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件F和文件存储路径,文件存储路径为所述文件标识对应的加密文件F的存储路径,在云平台不存在所述文件标识对应的加密文件F的情况下,存储所述文件标识对应的加密文件F,并在文件存储列表增加一条文件存储信息。
基于本公开上述实施例提供的文件加密存储系统,适用于所有需要文件加密存储的云平台存储场景,并可以实现文件去重保存,与文件相关的文件加密密钥加密后存储在云平台中,云平台或恶意第三方无法直接获得文件加密密钥,进而无法解密用户存储的加密文件。
根据本公开的另一方面,还提供一种用户终端,如图5所示,其中:用户终端51可以包括文件加密模块511、文件解密模块512和口令管理模块513,其中:
文件加密模块511,用于计算文件杂凑值(Hash Value)生成文件加密密钥FK,对文件加密,再用用户口令PW对FK加密得到K。
在本公开的一些实施例中,文件加密模块511,用于获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥FK,使用第一密钥FK对待存储文件进行加密,其中,第一密钥FK为待存储文件的文件加密密钥;根据用户口令对第一密钥FK进行加密得到第二密钥K;并将用户标识、文件标识、加密文件F和第二密钥K发送至云平台,触发云平台判断云平台是否已存在所述文件标识对应的加密文件F,在云平台已存在所述文件标识对应的加密文件F的情况下,在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件F和文件存储路径,文件存储路径为所述文件标识对应的加密文件F的存储路径,在云平台不存在所述文件标识对应的加密文件F的情况下,存储所述文件标识对应的加密文件F,并在文件存储列表增加一条文件存储信息。
文件解密模块512,用于利用用户口令PW对K解密得到FK,用FK解密文件得到明文。
在本公开的一些实施例中,文件解密模块512,可以用于向云平台发送文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;接收云平台根据文件存储列表,查询并返回的加密文件F和第二密钥K,其中,所述加密文件F和第二密钥K为用户标识和用户指定文件的文件标识所对应的加密文件F和第二密钥K;采用用户口令解密第二密钥K得到第一密钥FK;使用第一密钥FK解密加密文件F得到文件原文。
在本公开的一些实施例中,文件解密模块512,还可以用于获取文件原文的特征值,根据文件原文的特征值生成第三密钥;判断第三密钥与第一密钥FK是否一致;在第三密钥与第一密钥FK一致的情况下,判定指定文件无损,解密正常;在第三密钥与第一密钥FK不一致的情况下,判定文件有损,解密有误。
口令管理模块513,用于当用户修改用户口令时,上报云平台修改所有相关的K。
在本公开的一些实施例中,口令管理模块513可以用于口令管理模块,用于向云平台发送用户口令修改请求,其中,用户口令修改请求包括用户标识;接收云平台返回的、文件存储列表中所有该用户标识对应的所有第二密钥K1,K2...,Kn;利用旧用户口令PW解密所有第二密钥K1,K2...,Kn得到相应的第一密钥FK1,FK2...,FKn;PW*对所有第一密钥FK1,FK2...,FKn进行加密得到新的第二密钥FK1*,FK2*...,KFn*,将所有新的第二密钥K1*,K2*...,Kn*发送给云平台,并指示云平台使用所有新的第二密钥K1*,K2*...,Kn*更新存储列表中对应的第二密钥K1,K2...,Kn。
通过本公开上述实施例可实现云平台文件加密存储,提高用户数据安全性。
通过本公开上述实施例可实现相同文件在云平台的去重存储,减少云平台存储资源的浪费。
通过本公开上述实施例能够解决多用户多文件情况下,文件加密密钥的管理和安全存储。
根据本公开的另一方面,提供一种云平台,如图5所示,本公开云平台52可以包括文件去重模块521和文件存储列表维护模块522,其中:
文件去重模块521,用于判断上传的加密文件是否有重复,确定直接存储还是仅更新文件存储列表。
在本公开的一些实施例中,文件去重模块521可以用于判断云平台是否已存在所述文件标识对应的加密文件F;在云平台已存在所述文件标识对应的加密文件F的情况下,在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户终端发送的用户标识、文件标识、加密文件F和文件存储路径,文件存储路径为所述文件标识对应的加密文件F的存储路径,用户终端根据待存储文件的特征值生成第一密钥FK,使用第一密钥FK对待存储文件进行加密,其中,第一密钥FK为待存储文件的文件加密密钥,根据用户口令对第一密钥FK进行加密得到第二密钥K。
在本公开的一些实施例中,文件去重模块521可以用于在云平台不存在所述文件标识对应的加密文件F的情况下,在云平台存储所述文件标识对应的加密文件F,并在文件存储列表增加一条文件存储信息。
文件存储列表维护模块522,用于存储用户ID、加密后的文件加密密钥、文件ID、加密文件路径信息,在用户修改用户口令PW后,对该用户的所有K进行更新,确保新口令之后能正常解密。
在本公开的一些实施例中,文件存储列表维护模块522可以用于接收用户终端发送的文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;根据文件存储列表,查询并返回用户标识和用户指定文件的文件标识所对应的加密文件F和第二密钥K给用户终端,以便用户终端采用用户口令解密第二密钥K得到第一密钥FK,使用第一密钥FK解密加密文件F得到文件原文。
在本公开的一些实施例中,文件存储列表维护模块522可以用于接收用户终端发送的用户口令修改请求,其中,用户口令修改请求包括用户标识;将文件存储列表中所有该用户标识对应的所有第二密钥K1,K2...,Kn返回给用户终端;使用用户终端发送的所有新的第二密钥K1*,K2*...,Kn*更新存储列表中对应的第二密钥K1,K2...,Kn,其中,所述新的第二密钥K1*,K2*...,Kn*是用户终端利用旧用户口令PW解密所有第二密钥K1,K2...,Kn得到相应的第一密钥FK1,FK2...,FKn,利用新用户口令PW*对所有第一密钥FK1,FK2...,FKn进行加密得到的新的第二密钥K1*,K2*...,Kn*。
本公开上述实施例可以实现对用户存储到云平台的文件进行加密的同时,能够对存储到云平台的重复文件去重,并且保证文件加密密钥在云平台的安全存储。
根据本公开的另一方面,提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例(例如图1-图4任一实施例)所述的文件加密存储方法。
本公开上述实施例提出的计算机可读存储介质,在实现对用户存储到云平台的文件进行加密的同时,能够对存储到云平台的重复文件去重,并且保证文件加密密钥在云平台的安全存储。
在上面所描述的用户终端和云平台可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指示相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。
Claims (15)
1.一种文件加密存储方法,其特征在于,包括:
用户终端获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥;
用户终端根据用户口令对第一密钥进行加密得到第二密钥;
用户终端将用户标识、文件标识、加密文件和第二密钥发送至云平台;
云平台判断云平台是否已存在所述文件标识对应的加密文件;
在云平台已存在所述文件标识对应的加密文件的情况下,云平台在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件和文件存储路径,文件存储路径为所述文件标识对应的加密文件的存储路径。
2.根据权利要求1所述的文件加密存储方法,其特征在于,还包括:
在云平台不存在所述文件标识对应的加密文件的情况下,云平台存储所述文件标识对应的加密文件,并在文件存储列表增加一条文件存储信息。
3.根据权利要求1或2所述的文件加密存储方法,其特征在于,还包括:
用户终端向云平台发送文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;
云平台根据文件存储列表,查询并返回用户标识和用户指定文件的文件标识所对应的加密文件和第二密钥;
用户终端采用用户口令解密第二密钥得到第一密钥;
用户终端使用第一密钥解密加密文件得到文件原文。
4.根据权利要求3所述的文件加密存储方法,其特征在于,还包括:
用户终端获取文件原文的特征值,根据文件原文的特征值生成第三密钥;
用户终端判断第三密钥与第一密钥是否一致;
用户终端在第三密钥与第一密钥一致的情况下,判定指定文件无损,解密正常;
用户终端在第三密钥与第一密钥不一致的情况下,判定文件有损,解密有误。
5.根据权利要求1或2所述的文件加密存储方法,其特征在于,还包括:
用户终端向云平台发送用户口令修改请求,其中,用户口令修改请求包括用户标识;
云平台将文件存储列表中所有该用户标识对应的所有第二密钥返回给用户终端;
用户终端利用旧用户口令解密所有第二密钥得到相应的第一密钥;
用户终端利用新用户口令对所有第一密钥进行加密得到新的第二密钥,将所有新的第二密钥发送给云平台;
云平台使用所有新的第二密钥更新存储列表中对应的第二密钥。
6.一种用户终端,其特征在于,包括:
文件加密模块,用于获取待存储文件的特征值,根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥;根据用户口令对第一密钥进行加密得到第二密钥;并将用户标识、文件标识、加密文件和第二密钥发送至云平台,触发云平台判断云平台是否已存在所述文件标识对应的加密文件,在云平台已存在所述文件标识对应的加密文件的情况下,在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户标识、文件标识、加密文件和文件存储路径,文件存储路径为所述文件标识对应的加密文件的存储路径,在云平台不存在所述文件标识对应的加密文件的情况下,存储所述文件标识对应的加密文件,并在文件存储列表增加一条文件存储信息。
7.根据权利要求6所述的用户终端,其特征在于,还包括:
文件解密模块,用于向云平台发送文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;接收云平台根据文件存储列表,查询并返回的加密文件和第二密钥,其中,所述加密文件和第二密钥为用户标识和用户指定文件的文件标识所对应的加密文件和第二密钥;采用用户口令解密第二密钥得到第一密钥;使用第一密钥解密加密文件得到文件原文。
8.根据权利要求7所述的用户终端,其特征在于,还包括:
文件解密模块,还用于获取文件原文的特征值,根据文件原文的特征值生成第三密钥;判断第三密钥与第一密钥是否一致;在第三密钥与第一密钥一致的情况下,判定指定文件无损,解密正常;在第三密钥与第一密钥不一致的情况下,判定文件有损,解密有误。
9.根据权利要求6-8中任一项所述的用户终端,其特征在于,还包括:
口令管理模块,用于向云平台发送用户口令修改请求,其中,用户口令修改请求包括用户标识;接收云平台返回的、文件存储列表中所有该用户标识对应的所有第二密钥;利用旧用户口令解密所有第二密钥得到相应的第一密钥;利用新用户口令对所有第一密钥进行加密得到新的第二密钥,将所有新的第二密钥发送给云平台,并指示云平台使用所有新的第二密钥更新存储列表中对应的第二密钥。
10.一种云平台,其特征在于,包括:
文件去重模块,用于判断云平台是否已存在所述文件标识对应的加密文件;在云平台已存在所述文件标识对应的加密文件的情况下,在文件存储列表增加一条文件存储信息,其中,所述文件存储信息包括用户终端发送的用户标识、文件标识、加密文件和文件存储路径,文件存储路径为所述文件标识对应的加密文件的存储路径,用户终端根据待存储文件的特征值生成第一密钥,使用第一密钥对待存储文件进行加密,其中,第一密钥为待存储文件的文件加密密钥,根据用户口令对第一密钥进行加密得到第二密钥。
11.根据权利要求10所述的云平台,其特征在于,
文件去重模块,还用于在云平台不存在所述文件标识对应的加密文件的情况下,在云平台存储所述文件标识对应的加密文件,并在文件存储列表增加一条文件存储信息。
12.根据权利要求10或11所述的云平台,其特征在于,还包括:
文件存储列表维护模块,用于接收用户终端发送的文件下载请求,其中,文件下载请求包括用户标识和用户指定文件的文件标识;根据文件存储列表,查询并返回用户标识和用户指定文件的文件标识所对应的加密文件和第二密钥给用户终端,以便用户终端采用用户口令解密第二密钥得到第一密钥,使用第一密钥解密加密文件得到文件原文。
13.根据权利要求10或11所述的云平台,其特征在于,还包括:
文件存储列表维护模块,用于接收用户终端发送的用户口令修改请求,其中,用户口令修改请求包括用户标识;将文件存储列表中所有该用户标识对应的所有第二密钥返回给用户终端;使用用户终端发送的所有新的第二密钥更新存储列表中对应的第二密钥,其中,所述新的第二密钥是用户终端利用旧用户口令解密所有第二密钥得到相应的第一密钥,利用新用户口令对所有第一密钥进行加密得到的。
14.一种文件加密存储系统,其特征在于,包括如权利要求6-9中任一项所述的用户终端和如权利要求10-13中任一项所述的云平台。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1-5中任一项所述的文件加密存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010337506.7A CN113553611A (zh) | 2020-04-26 | 2020-04-26 | 文件加密存储方法和系统、用户终端、云平台和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010337506.7A CN113553611A (zh) | 2020-04-26 | 2020-04-26 | 文件加密存储方法和系统、用户终端、云平台和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113553611A true CN113553611A (zh) | 2021-10-26 |
Family
ID=78129822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010337506.7A Pending CN113553611A (zh) | 2020-04-26 | 2020-04-26 | 文件加密存储方法和系统、用户终端、云平台和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113553611A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500541A (zh) * | 2022-04-15 | 2022-05-13 | 天津市职业大学 | 一种多路检验运算去冗余的云计算系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103685162A (zh) * | 2012-09-05 | 2014-03-26 | 中国移动通信集团公司 | 文件存储和共享方法 |
CN104468664A (zh) * | 2013-09-18 | 2015-03-25 | 中兴通讯股份有限公司 | 一种上传文件到云存储系统的方法、下载方法及装置 |
CN105245328A (zh) * | 2015-09-09 | 2016-01-13 | 西安电子科技大学 | 一种基于第三方的用户及文件的密钥产生管理方法 |
US20170193032A1 (en) * | 2016-01-04 | 2017-07-06 | Electronics And Telecommunications Research Institute | Method and apparatus for deduplicating encrypted data |
US20180025167A1 (en) * | 2015-02-13 | 2018-01-25 | Nec Europe Ltd. | Method for storing a data file of a client on a storage entity |
US20180285583A1 (en) * | 2015-10-14 | 2018-10-04 | Finalcode, Inc. | File encrypting apparatus, file decrypting apparatus, system and program |
CN108985109A (zh) * | 2018-07-27 | 2018-12-11 | 阿里巴巴集团控股有限公司 | 一种数据存储方法及装置 |
CN109005184A (zh) * | 2018-08-17 | 2018-12-14 | 上海小蚁科技有限公司 | 文件加密方法及装置、存储介质、终端 |
CN109194663A (zh) * | 2018-09-13 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种基于云计算的文件存储及下载的方法及装置 |
-
2020
- 2020-04-26 CN CN202010337506.7A patent/CN113553611A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103685162A (zh) * | 2012-09-05 | 2014-03-26 | 中国移动通信集团公司 | 文件存储和共享方法 |
CN104468664A (zh) * | 2013-09-18 | 2015-03-25 | 中兴通讯股份有限公司 | 一种上传文件到云存储系统的方法、下载方法及装置 |
US20180025167A1 (en) * | 2015-02-13 | 2018-01-25 | Nec Europe Ltd. | Method for storing a data file of a client on a storage entity |
CN105245328A (zh) * | 2015-09-09 | 2016-01-13 | 西安电子科技大学 | 一种基于第三方的用户及文件的密钥产生管理方法 |
US20180285583A1 (en) * | 2015-10-14 | 2018-10-04 | Finalcode, Inc. | File encrypting apparatus, file decrypting apparatus, system and program |
US20170193032A1 (en) * | 2016-01-04 | 2017-07-06 | Electronics And Telecommunications Research Institute | Method and apparatus for deduplicating encrypted data |
CN108985109A (zh) * | 2018-07-27 | 2018-12-11 | 阿里巴巴集团控股有限公司 | 一种数据存储方法及装置 |
CN109005184A (zh) * | 2018-08-17 | 2018-12-14 | 上海小蚁科技有限公司 | 文件加密方法及装置、存储介质、终端 |
CN109194663A (zh) * | 2018-09-13 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种基于云计算的文件存储及下载的方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114500541A (zh) * | 2022-04-15 | 2022-05-13 | 天津市职业大学 | 一种多路检验运算去冗余的云计算系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10015150B2 (en) | Systems and methods for Smartkey information management | |
CN106664202B (zh) | 提供多个设备上的加密的方法、系统和计算机可读介质 | |
US9779269B1 (en) | Storage system comprising per-tenant encryption keys supporting deduplication across multiple tenants | |
US9634999B1 (en) | Mobile device key management | |
CN106453612B (zh) | 一种数据存储与共享系统 | |
CN108200172B (zh) | 一种支持安全数据去重与删除的云存储系统及方法 | |
US11457018B1 (en) | Federated messaging | |
CN101515319B (zh) | 密钥处理方法、密钥密码学服务系统和密钥协商方法 | |
US10116442B2 (en) | Data storage apparatus, data updating system, data processing method, and computer readable medium | |
US11349659B2 (en) | Transmitting an encrypted communication to a user in a second secure communication network | |
KR20170081504A (ko) | 암호 데이터의 중복 제거 방법 및 장치 | |
KR101979267B1 (ko) | 클라우드 저장 기반 암호화 시스템 및 방법 | |
CN111475845A (zh) | 非结构化数据身份授权访问系统及方法 | |
CN111639357B (zh) | 一种加密网盘系统及其认证方法和装置 | |
CN104079539B (zh) | 一种数据保密存储方法及客户端 | |
US10791196B2 (en) | Directory lookup for federated messaging with a user from a different secure communication network | |
CN105553661B (zh) | 密钥管理方法和装置 | |
CN109831405B (zh) | 一种云平台上的文件保护方法及装置 | |
CN108494724B (zh) | 基于多授权机构属性加密算法的云存储加密系统 | |
CN114189337A (zh) | 一种固件烧录方法、装置、设备以及存储介质 | |
US9762388B2 (en) | Symmetric secret key protection | |
CN113553611A (zh) | 文件加密存储方法和系统、用户终端、云平台和存储介质 | |
CN108881269B (zh) | 一种种子密钥的管理方法、系统及令牌厂商生产装置 | |
CN105518696A (zh) | 对数据存储器执行操作 | |
US11368442B2 (en) | Receiving an encrypted communication from a user in a second secure communication network |
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 |