Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2022-11-14 GMT+08:00

Encriptação do lado do servidor (SSE-C)

No modo SSE-C, o OBS usa as chaves e os valores MD5 fornecidos pelos clientes para encriptação no servidor.

O OBS não armazena suas chaves de encriptação. Se perdeu as chaves de encriptação, perdeu os objetos. Seis cabeçalhos são adicionados para apoiar SSE-C.

A tabela a seguir lista cabeçalhos que são necessários quando você usa SSE-C para criptografar objetos.

Tabela 1 Campos de cabeçalho usados para criptografar objetos no modo SSE-C

Elemento

Descrição

x-obs-server-side-encryption-customer-algorithm

Indica um algoritmo de encriptação. O cabeçalho é usado no modo SSE-C.

Exemplo: x-obs-server-encryption-customer-algorithm:AES256

x-obs-server-side-encryption-customer-key

Indica a chave usada para criptografar um objeto. O cabeçalho é usado no modo SSE-C. O valor do cabeçalho é uma chave de 256 bits ou 512 bits codificada em Base64.

Exemplo: x-obs-server-encryption-side-customer-key:K7QkYpBkM5+hcs27fsNkUnNVaobncnLht/rCB2o/9Cw=

x-obs-server-side-encryption-customer-key-MD5

Indica o valor MD5 da chave usada para criptografar um objeto. O cabeçalho é usado no modo SSE-C. O valor do elemento é um hash MD5 Base64 codificado. O valor MD5 é usado para verificar se ocorre algum erro durante a transmissão da chave.

Exemplo: x-obs-server-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ==

Operações de API às quais os cabeçalhos recém-adicionados se aplicam:

  • PutObject
  • PostObject
  • "CopyObject" (os cabeçalhos recém-adicionados se aplicam aos objetos de destino)
  • HeadObject
  • GetObject
  • InitiateMultipartUpload
  • UploadPart
  • UploadPart-Copy (os cabeçalhos recém-adicionados se aplicam aos componentes de destino)

A tabela a seguir lista três cabeçalhos adicionados às operações CopyObject e UploadPart-Copy para dar suporte a objetos de origem criptografados usando SSE-C.

Tabela 2 Campos de cabeçalho para objetos de origem criptografados pelo SSE-C

Elemento

Descrição

x-obs-copy-source-server-side-encryption-customer-algorithm

Indica o algoritmo usado para descriptografar um objeto de origem. O cabeçalho é usado no modo SSE-C.

Exemplo: x-obs-server-encryption-customer-algorithm:AES256

x-obs-copy-source-server-side-encryption-customer-key

Indica a chave usada para descriptografar um objeto de origem. O cabeçalho é usado no modo SSE-C.

Exemplo: x-obs-copy-source-server-encryption-side-algorithm:K7QkYpBkM5+hcs27fsNkUnNVaobncnLht/rCB2o/ 9Cw=

x-obs-copy-source-server-side-encryption-customer-key-MD5

Indica o valor MD5 da chave usada para descriptografar um objeto de origem. O cabeçalho é usado no modo SSE-C. O valor MD5 é usado para verificar se ocorre algum erro durante a transmissão da chave.

Exemplo: x-obs-copy-source-server-encryption-side-customer-key:4XvB3tbNTN+tIEVa0/fGaQ==

Solicitação de exemplo 1

Carregue um objeto com o modo de encriptação SSE-C.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
PUT /encryp2 HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
Date: Wed, 06 Jun 2018 09:12:00 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:mZSfafoM+llApk0HGOThlqeccu0=
x-obs-server-side-encryption-customer-algorithm:AES256
x-obs-server-side-encryption-customer-key:K7QkYpBkM5+hcs27fsNkUnNVaobncnLht/rCB2o/9Cw=
x-obs-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ==
Content-Length: 5242

[5242 Byte object contents]

Resposta de exemplo 1

1
2
3
4
5
6
7
8
9
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: 8DF400000163D45E0017055619BD02B8
ETag: "0f91242c7f3d86f98ae572a686d0696e"
x-obs-server-side-encryption-customer-algorithm: AES256
x-obs-server-side-encryption-customer-key-MD5: 4XvB3tbNTN+tIEVa0/fGaQ==
x-obs-id-2: 32AAAUgAIAABAAAQAAEAABAAAQAAEAABCSSAJ8bTNJV0X+Ote1PtuWecqyMh6zBJ
Date: Wed, 06 Jun 2018 09:12:00 GMT
Content-Length: 0

Solicitação de exemplo 2

Copie o objeto encriptado SSE-C e salve-o como o objeto encriptado KMS.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
PUT /kmsobject HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
Date: Wed, 06 Jun 2018 09:20:10 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:mZSfafoM+llApk0HGOThlqeccu0=
x-obs-copy-source-server-side-encryption-customer-algorithm:AES256
x-obs-copy-source-server-side-encryption-customer-key:K7QkYpBkM5+hcs27fsNkUnNVaobncnLht/rCB2o/9Cw=
x-obs-copy-source-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ==
x-obs-server-side-encryption: kms
x-obs-copy-source: /examplebucket/encryp2
Content-Length: 5242

[5242 Byte object contents]

Resposta de exemplo 2

1
2
3
4
5
6
7
8
9
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: BB7800000164848E0FC70528B9D92C41
ETag: "1072e1b96b47d7ec859710068aa70d57"
x-obs-server-side-encryption: kms
x-obs-server-side-encryption-kms-key-id: region:783fc6652cf246c096ea836694f71855:key/522d6070-5ad3-4765-9737-9312ddc72cdb
x-obs-id-2: 32AAAUJAIAABAAAQAAEAABAAAQAAEAABCTkkRzQXs9ECzZcavVRncBqqYNkoAEsr
Date: Wed, 06 Jun 2018 09:20:10 GMT
Content-Length: 0

Solicitação de exemplo 3

O URL contém a assinatura e o objeto encriptado SSE-C é carregado.

PUT /encrypobject?AccessKeyId=H4IPJX0TQTHTHEBQQCEC&Expires=1532688887&Signature=EQmDuOhWLUrzrzRNZxwS72CXeXM%3D HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
x-obs-server-side-encryption-customer-algorithm: AES256
x-obs-server-side-encryption-customer-key:K7QkYpBkM5+hcs27fsNkUnNVaobncnLht/rCB2o/9Cw=
x-obs-server-side-encryption-customer-key-MD5:4XvB3tbNTN+tIEVa0/fGaQ==
Content-Length: 5242
Expect: 100-continue

[5242 Byte object contents]

Resposta de exemplo 3

1
2
3
4
5
6
7
8
9
HTTP/1.1 100 Continue
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: 804F00000164DB5E5B7FB908D3BA8E00
ETag: "1072e1b96b47d7ec859710068aa70d57"
x-obs-server-side-encryption-customer-algorithm: AES256
x-obs-server-side-encryption-customer-key-MD5: 4XvB3tbNTN+tIEVa0/fGaQ==
x-obs-id-2: 32AAAUJAIAABAAAQAAEAABAAAQAAEAABCTlpxILjhVK/heKOWIP8Wn2IWmQoerfw
Content-Length: 0