服务端加密SSEC方式

1. SSEC方式的工作原理
SSEC全称为ServerSide Encryption with CustomerProvided Keys,即使用客户提供的密钥进行服务端加密,在这种加密方式中,用户将自己的加密密钥提供给OBS服务,由服务端使用这个密钥对数据进行加密,这样即使数据在传输过程中被拦截,没有用户的密钥也无法解读数据内容,从而保障了数据的安全性。
2. 新增头域的介绍与应用
在使用SSEC方式加密时,必须使用以下三个特定的头域:
xobsserversideencryptioncustomeralgorithm
:用于指定加密对象使用的算法,例如AES256。
xobsserversideencryptioncustomerkey
:用于提供加密对象所使用的密钥,该值为256位密钥的base64编码。
xobsserversideencryptioncustomerkeyMD5
:用于提供加密对象使用的密钥的MD5值,以确保密钥在传输过程中未出错。
这三个头域可以应用于多种操作,如上传新对象、获取对象元数据、复制对象等,还有另外三个头域专门支持在复制对象和拷贝段操作中解密源对象的场景。

3. 请求示例分析
传一个加密对象的请求为例,请求包含如下关键部分:
PUT /encryp2 HTTP/1.1 UserAgent: curl/7.29.0 Host: examplebucket.obs.cnnorth4.myhuaweicloud.com Accept: */* Date: Wed, 06 Jun 2018 09:12:00 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:mZSfafoM+llApk0HGOThlqeccu0= xobsserversideencryptioncustomeralgorithm:AES256 xobsserversideencryptioncustomerkey:K7QkYpBkM5+hca27fsNkUnNVaobncnLht/rCB2o/9Cw= xobsserversideencryptioncustomerkeyMD5:4XvB3tbNTN+tIEVa0/fGaQ== ContentLength: 5242
响应示例为:
HTTP/1.1 200 OK Server: OBS xobsrequestid: 8DF400000163D45E0017055619BD02B8 ETag: "0f91242c7f3d86f98ae572a686d0696e" xobsserversideencryptioncustomeralgorithm: AES256 xobsserversideencryptioncustomerkeyMD5: 4XvB3tbNTN+tIEVa0/fGaQ== xobsid2: 32AAAUgAIAABAAAQAAEAABAAAQAAEAABCSSAJ8bTNJV0X+Ote1PtuWecqyMh6zBJ Date: Wed, 06 Jun 2018 09:12:00 GMT ContentLength: 0
通过这些请求和响应示例可以看出,用户通过在请求中添加特定的头域来指定加密的细节,服务器响应则确认了这些加密细节,并返回了加密后对象的存储情况。
4. 相关问题与解答
问题1: SSEC方式加密是否会影响对象的访问速度?
答:不会,虽然数据在存储前需经过加密处理,但在访问时会自动解密,这个过程对用户是透明的,不会影响访问速度。
问题2: 如果丢失了加密密钥会怎样?

答:如果丢失了加密密钥,将无法恢复或访问已加密的数据,保管好密钥非常重要,建议使用安全的方式保存密钥,例如使用密钥管理服务。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复