七牛云存储系统支持在数据写入磁盘之前,在对象级别上应用数据加密的保护策略,再将得到的加密数据持久化保存下来。用户访问数据时,在拥有对象访问权限的前提下,自动对保存的加密数据进行解密并把原始数据返回。加密和解密这一操作过程都是在服务端完成,可以有效保护静态数据。
支持说明
支持由七牛云存储完全托管的服务端加密功能:
- 是否加密是对象的属性,对对象数据加密,元数据不加密
- 每个用户一对主密钥(明文数据密钥&密文数据密钥),由私有云存储负责,用于RSA加密机制对随机密钥进行加密。(服务端负责定期更换,历史的由历史密钥加解密,新的密钥生成后,新数据用新密钥加密)。
- 通过随机密钥使用AES-256(256 位高级加密标准)加密算法来加密数据。随机密钥是每次上传时自动生成的随机数数据。
主密钥与随机密钥分开保存。主密钥只有指定的服务可以获取。
MD5和ETag保存的是加密前的。为计算数据加密前的MD5,分片上传的临时数据明文分块存放,分片上传完成后对完整数据进行加密存储。
加密过程
加密过程:
- 上传时生成随机密钥,通过AES-256算法加密文件,加密后数据存入磁盘
- 使用用户的主密钥加密随机密钥,加密后的随机密钥存入RS服务
解密过程
解密过程:
- 访问对象时,获取加密后的随机密钥和加密后的对象数据
- 使用用户的主密钥解密随机密钥
- 使用解密后的随机密钥解密对象数据
设置
系统支持在空间级别设置开启或关闭服务端加密。
在空间设置界面,找到「服务端加密」设置框,点击开关按钮即可开启/关闭当前空间的服务端加密功能。
文档反馈
(如有产品使用问题,请提交工单)