支持密钥托管个人文件加密保护方法、系统、设备、介质技术方案

技术编号:30760581 阅读:18 留言:0更新日期:2021-11-10 12:14
本发明专利技术属于云盘加密技术领域,公开了一种支持密钥托管个人文件加密保护方法、系统、设备、介质,所述支持密钥托管个人文件加密保护方法,包括虚拟文件、密钥管理、文件加密、目录加密、文件解密以及文件恢复。本发明专利技术通过将国密算法对个人文件进行加密之后,将受保护的文件上传到用户所要使用的云服务,理论上可以配合任何同步型网盘进行使用。本发明专利技术解决了用户将文件保存到云存储时的隐私问题。用户在本地计算机对数据进行加密,然后上传到云端服务以密文的形式保存在云存储网盘中,只有掌握文件保管库密码的人才能打开保管库,读取或者更改库中的文件内容。本发明专利技术保证了用户的隐私安全,降低了云提供商或第三方未经许可访问存储在云中的数据的风险。在云中的数据的风险。在云中的数据的风险。

【技术实现步骤摘要】
支持密钥托管个人文件加密保护方法、系统、设备、介质


[0001]本专利技术属于云盘加密
,尤其涉及一种支持密钥托管个人文件加密保护方法、系统、设备、介质。

技术介绍

[0002]目前,在当下“云计算”日渐流行的趋势下,“云存储”的应用率先被人们接收。如今各种各样云盘应用遍地开花,人们不断增加对云盘的了解,将云盘作为自己互联网生活的精彩元素之一。然而,用户在使用各种云盘的过程中,最常见的是在云端上保存常用的电影、软件、普通文档/照片等,而不敢上传真正敏感性的数据,如:涉及隐私的照片、个人敏感信息等。近年来曝光的越来越多从个人到企业,甚至到国家的安全事件,在不断刺激着人们的神经,这也促使越来越多的人们开始理性的思考信息安全问题。互联网从来没有绝对的安全,只要文件放在网上,它们都有被泄露的风险。所以,个人文件的安全保密变得越来越重要。
[0003]现在很多云同步服务都声称自己会加密储存用户资料,例如Dropbox、Google Drive等,但是这些云服务产品都不支持用户自己提供加密密钥来实现端到端加密,也就是说云服务商持有用户资料的解密密钥,这种加密或许能够防止黑客入侵,但一旦用户密码泄漏或被破解,资料就可以被查看到;或者说对于云服务商而言,用户的资料是透明的。此外还有一些像Encrypto、Boxcryptor等加密工具可以满足每次都要手工加密解密,甚至不支持云同步功能。
[0004]通过上述分析,现有技术存在的问题及缺陷为:
[0005](1)现有云存储网盘自身的加密存在一定的风险使得用户的数据和隐私被窥探窃取,不能防止云服务商解密用户的资料。
[0006](2)现有的一些加密工具需要用户每次进行手动的加密解密。
[0007](3)目前的一些加密方法无法做到云同步。
[0008]解决以上问题及缺陷的难度和意义为:为了获得更好的安全性,需要一种支持密钥托管个人文件加密保护方法,能够有效的从数据安全、用户隐私保护的角度解决数据传输、静态数据存储和第三方运维过程中的安全性问题。

技术实现思路

[0009]针对现有技术存在的问题,本专利技术提供了一种支持密钥托管个人文件加密保护方法、系统、设备、介质。
[0010]本专利技术是这样实现的,一种支持密钥托管个人文件加密保护方法,所述支持密钥托管个人文件加密保护方法包括以下步骤:
[0011]步骤一,虚拟文件:通过虚拟文件系统提供虚拟驱动器,创建保管库,用户使用任何磁盘驱动器即可在所述保管库中添加、编辑和删除文件;
[0012]此步骤的意义在于,使用虚拟文件系统创建的保管库能够使用户更方便的使用,
创建之后相当于一个独立的磁盘,能够对个人文件进行更精确的加解密。
[0013]步骤二,密钥管理:CA为用户签发独有的密钥交换证书并保存至USBkey,经过证书公钥生成主密钥KEK,并由主密钥生成加密密钥和MAC密钥;
[0014]作用在于,CA签发的密钥交换证书能够保存至USBkey中,保管库只能通过该USBkey才能够打开,解密,进而使用保管库中的文件,进一步加强了对个人文件安全性的保护。
[0015]步骤三,文件加密:将文件内容的明文分为多个块,使用带有文件内容密钥的SM4

CTR进行加密;使用规范化格式C中的UTF

8对文件的明文名称进行编码,以获取唯一的二进制表示形式,使用SM4

SIV加密名称;
[0016]作用在于,文件在本地进行加密,然后以密文的形式同步到云网盘中,解决了云盘中个人文件泄露的风险。即使云盘中的文件泄露,攻击者也无法获取文件的真实内容,从而更好地保障了个人的数据隐私。
[0017]步骤四,目录加密:每个目录都有一个在文件名加密过程中需要的唯一ID,使用SM4

SIV加密目录ID以加密目录层次结构;创建加密目录ID的SM3哈希以获得统一的长度;使用Base32对哈希进行编码以获得一串可打印的字符;根据Base32编码的哈希构造目录路径。
[0018]作用在于,对文件的目录进行加密,以保证文件实际存储位置的安全性,确保攻击者不会获取到文件的实际保存路径。
[0019]步骤五,文件解密:用户使用USBkey进行身份验证,解密时系统根据主密钥KEK加密生成的加密密钥和MAC密钥使用相应的解密算法对文件进行解密;
[0020]作用在于,解密时使用USBkey验证身份通过之后解密打开保管库,解锁后,在虚拟文件系统驱动下,保管库就可以像任何其他硬盘驱动器或U盘一样与本地的机密文件进行交互。由于保管库中的文件是在本地解锁之后进行解密的,所以解决了用户个人文件的安全问题。
[0021]步骤六,文件恢复:将密钥交换证书托管至国密CA,当用户USBKey丢失或损坏时,从CA处恢复密钥交换证书,并找回保存至云服务的全部文件。
[0022]作用在于,将密钥交换证书托管至CA在用户的USBkey出现故障时,可以有CA恢复公钥,且用于文件加密的主密钥KEK是使用该公钥加密生成的,所以用户可以重新获取主密钥进而找回加密文件的密钥。
[0023]进一步,步骤一中,所述虚拟文件,包括:
[0024]用户在创建的保管库中使用任何磁盘驱动器添加、编辑和删除个人文件;文件被透明地加密和解密,不存在未加密的副本;每次打开保管库访问虚拟驱动器内的文件时,均即时加密和解密所述文件。
[0025]进一步,步骤一中,用户在创建保险库时,随机生成一个加密密钥和一个身份验证的MAC主密钥,同时由可信任的国密CA为用户签发独有的密钥交换证书和数字签名证书,将证书导出并存储至USBkey,并将密钥交换证书托管至CA,使用密钥交换证书中的公钥生成主密钥KEK,并按照SM4

WRAP使用KEK对加密密钥和MAC主密钥进行Wrap加密;加密后的密钥记录在Json文件中,该文件即可相当于保险库的密码表;用户需要打开保险库时,提供口令并依照Json文件中的参数实现对加密文件的解密;在具体的加密过程中,对文件的名称、头
文件和文件本身分别进行加密。
[0026]进一步,步骤二中,所述密钥管理,还包括:
[0027]随机生成一个加密密钥和一个身份验证的MAC密钥,由可信任的国密CA为用户签发独有的密钥交换证书,将证书导出并存储至USBkey,并将密钥交换证书托管至CA,使用密钥交换证书中的公钥加密生成用户独有的主密钥KEK,并按照SM4

WRAP算法使用KEK对加密密钥和MAC主密钥进行Wrap加密。
[0028]进一步,步骤三中,所述文件加密,包括文件内容加密和文件名加密;
[0029]其中,所述文件内容加密,文件头存储文件内容加密所需的某些元数据可用于文件内容加密,由72个字节组成;在报头有效载荷加密期间使用的16字节随机数;24字节SM4

CTR加密有效载荷,包括8字节填充1以供将来使用和本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种支持密钥托管个人文件加密保护方法,其特征在于,所述支持密钥托管个人文件加密保护方法包括以下步骤:步骤一,虚拟文件:通过虚拟文件系统提供虚拟驱动器,创建保管库,用户使用任何磁盘驱动器即可在所述保管库中添加、编辑和删除文件;步骤二,密钥管理:CA为用户签发独有的密钥交换证书并保存至USBkey,经过该证书的公钥生成主密钥KEK,并由主密钥生成加密密钥和MAC密钥;步骤三,文件加密:将文件内容的明文分为多个块,使用带有文件内容密钥的SM4

CTR进行加密;使用规范化格式C中的UTF

8对文件的明文名称进行编码,以获取唯一的二进制表示形式,使用SM4

SIV加密名称;步骤四,目录加密:每个目录都有唯一的ID,使用SM4

SIV加密目录ID;步骤五,文件解密:用户使用USBkey进行身份验证,解密时系统根据主密钥KEK加密生成的加密密钥和MAC密钥使用相应的解密算法对文件进行解密;步骤六,文件恢复:将密钥交换证书托管至国密CA,当用户USBKey丢失或损坏时,从CA处恢复密钥交换证书,并找回保存至云服务的全部文件。2.如权利要求1所述支持密钥托管个人文件加密保护方法,其特征在于,步骤一中,所述虚拟文件,包括:用户在创建的保管库中使用任何磁盘驱动器添加、编辑和删除个人文件;文件被透明地加密和解密,不存在未加密的副本;每次打开保管库访问虚拟驱动器内的文件时,均即时加密和解密所述文件。3.如权利要求1所述支持密钥托管个人文件加密保护方法,其特征在于,步骤一中,用户在创建保险库时,随机生成一个加密密钥和一个身份验证的MAC主密钥,同时由可信任的国密CA为用户签发独有的密钥交换证书和数字签名证书,将证书导出并存储至USBkey,并将密钥交换证书托管至CA,使用密钥交换证书中的公钥生成主密钥KEK,并按照SM4

WRAP使用KEK对加密密钥和MAC主密钥进行Wrap加密;加密后的密钥记录在Json文件中,该文件即可相当于保险库的密码表;用户需要打开保险库时,提供口令并依照Json文件中的参数实现对加密文件的解密;在具体的加密过程中,对文件的名称、头文件和文件本身分别进行加密。4.如权利要求1所述支持密钥托管个人文件加密保护方法,其特征在于,步骤二中,所述密钥管理,还包括:随机生成一个加密密钥和一个身份验证的MAC密钥,由可信任的国密CA为用户签发独有的密钥交换证书,将证书导出并存储至USBkey,并将密钥交换证书托管至CA,使用密钥交换证书中的公钥加密生成用户独有的主密钥KEK,并按照SM4

WRAP算法使用KEK对加密密钥和MAC主密钥进行Wrap加密。5.如权利要求1所述支持密钥托管个人文件加密保护方法,其特征在于,步骤三中,所述文件加密,包括文件内容加密和文件名加密;其中,所述文件内容加密,文件头存储文件内容加密所需的某些元数据可用于文件内容加密,由72个字节组成;在报头有效载荷加密期间使用的16字节随机数;24字节SM4

CTR加密有效载荷,包括8字节填充1以供将来使用和16字节的文件内容密钥;32字节的前40字节头部MAC;将明文分解成多个块,每个块最多32KiB+48字节,包括16字节随机数,使用SM4

CTR和文件内容密钥最多32KiB加密有效负载,以及32字节MAC,包括文件头随机数,将此块
绑定到文件头;块号为8字节大端整数,随机数和加密的有效载荷;加密的块被加入并保留明文块的顺序;所述文件名加密,文件的明文名称使用标准化形式C中的UTF

8进行编码,以获得唯一的二进制表示;使用SM4

SIV来加密名称,父文件夹的目录ID作为关联数据传递。6.如权利要求1所述支持密钥托管个人文件加密保护方法,其特征在于,步骤四中,所述目录加密,包括:每个目录都有一个在文件名加密过程中需要的唯一ID,根目录的目录ID是空字符串;对于所有其他目录,它是最多36个A...

【专利技术属性】
技术研发人员:苏锐丹田向奎丁浩樊凯李晖
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1