【技术实现步骤摘要】
一种管理云盘文件加密与解密的系统和方法
[0001]本专利技术涉及一种管理云盘文件加密与解密的系统和方法,是一种应用与计算网络的系统和方法,是一种用于网络安全的系统和方法。
技术介绍
[0002]存储数据的安全是大众关注的主要问题之一,尤其是文件的安全性更是重中之重,文件中可能涉及到许多机密信息、不宜公开的以及敏感的信息,一旦文件被窃取,那么造成的损失是不可想象的,因此对文件进行加密后存储则是重要的保障措施。云盘管理系统具有使用方便,灵活访问等优点,已经广泛应用于各行各业,包括一个重要的使用场景:PC端、移动端和网页端可以随时访问文件、同步文件,尤其是涉密单位的使用中,往往更加关心的是数据的安全性,如果使用不经过加密的使用方式,会存在以下明显不足:通过云盘存储的文件都是明文存储,可以访问存储后端的用户都可以读取数据,包括云盘管理员。丢弃硬盘也可能导致数据泄露,因为硬盘中存储的数据是不经过加密存储的。如果加密算法过于简单则有可能导致数据泄露的风险。云盘文件通过网络传输的过程中有被窃取的风险。如何实现端到端加密,是一个需要解决的问题。
技术实现思路
[0003]为了克服现有技术的问题,本专利技术提出了一种管理云盘文件加密与解密的系统和方法。所述的系统和方法基于AES
‑
256加密算法,使用CTR模式对文件进行加密和解密。在用户端,上传文件到云盘服务系统前,首先对上传的文件进行加密处理,然后通过网络传输到云盘服务器,最后写入到存储介质中。在用户端,下载文件到本地,首先云盘服务器从存储介质中 ...
【技术保护点】
【技术特征摘要】
1.一种管理云盘文件加密与解密的系统,包括:由计算网络连接的云盘服务器和客户端,所述的云盘服务器设有存储介质和文件读写设施,所述的客户端设有文件加密和解密的设施,其特征在于,所述的文件加密和解密的设施包括:私有密钥处理模块;专属密钥处理模块;加密文件处理模块;解密私有密钥处理模块;解密专属密钥处理模块;解密文件处理模块;所述的私有密钥处理模块用于:生成salt:通过创建用户ID的原始SHA256哈希派生出私有salt;生成加密密钥:通过使用hash_hmac函数创建一个原始SHA256
‑
PBKDF2散列,该散列包含salt、500.000次迭代和目标大小为32字节的用户密码,生成加密密钥;生成初始向量:使用随机函数随机生成一个16字节字符串初始向量;加密私有密钥:基于AES
‑
256
‑
CTR加密算法,通过初始向量和加密密钥对私有密钥进行加密处理,得到加密过的私有密钥;生成验证密钥:通过创建加密密钥的原始SHA256哈希派生出一个验证密钥;生成签名:通过使用hash_hmac函数创建一个16进制SHA256
‑
HMAC散列,该散列包含加密的私有密钥和验证密钥,生成签名;形成带有加密密钥、初始向量、加密签名的密钥文件;所述的专属密钥处理模块用于:生成专属密钥:使用随机函数,生成一个随机的32字节的字符串作为专属密钥;加密专属密钥:使用公共密钥,对专属密钥进行加密处理,从而得到:加密过的专属密钥和加密封装密钥;所述的加密文件处理模块用于:将待加密的明文文件切割为文件分片块:将待加密的明文文件分成多个长度相等的文件分片块,并标记初始位置;生成初始向量:使用随机函数,对每个文件分片块随机生成一个16字节字符串初始向量,作为各个文件分片块带有起始位置标记的初始向量;通过每个文件分片块的初始向量和加密过的专属密钥,对每一个文件分片块进行加密处理,得到加密过的带有起始位置标记的私有密钥;生成验证密钥:通过创建专属加密密钥和文件分片块的起始位置的原始SHA256哈希派生出一个验证密钥;生成签名:对每个文件分片块通过使用hash_hmac函数创建一个16进制SHA256
‑
HMAC散列,该散列包含各自的加密分片块和验证密钥,生成各个文件分片块带有起始位置标记的签名;生成文件分片块体,所述的文件块体包含:带有起始位置标记的加密文件块;带有起始位置标记的初始向量;带有起始位置标记的签名;将各个分片块体合并为一个文件,形成加密文件;所述的解密私有密钥处理模块用于:读取加密过的私有密钥:从私有密钥文件中读取内容,并对文件进行分析,获取到以下
内容:加密过的私有密钥;初始化向量;加密签名;生成salt:通过创建用户ID的原始SHA256哈希派生出私有salt;生成解密密钥:通过使用hash_hmac函数创建一个原始SHA256
‑
PBKDF2散列,该散列包含salt、500.000次迭代和目标大小为32字节的密码,生成解密密钥;生成验证密钥:通过创建解密密钥的原始SHA256哈希派生出一个验证密钥;生成签名:通过使用hash_hmac函数创建一个16进制SHA256
‑
HMAC散列,该散列包含加密的私有密钥和验证密钥,生成签名,并与加密签名进行比对,如果比对相等则继续解密;如果不相同则认为解密失败,并退出;生成私有密钥:通过初始化向量和解密密钥,使用AES
‑‑
CTR解密算法解密私有密钥;所述的解密专属密钥处理模块用于:使用私有密钥和封装密钥对加密过的专属密钥进行解密,得到解密过的专属密钥;所述的解密文件处理模块用于:加密文件切割:将加密文件分成多个大小相同长度的文件块;如将文件分为多个大小为8192字节的文件块,并解析出以下内容:带有起始位置标记的加密文...
【专利技术属性】
技术研发人员:赵子兰,张广东,杜庆玉,薛金鹏,黄贤强,张跃,
申请(专利权)人:北京精一强远科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。