Parâmetros de computação criptográfica - AWS Clean Rooms

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Parâmetros de computação criptográfica

Os parâmetros de computação criptográfica estão disponíveis para colaborações usando a Computação Criptográfica para o Clean Rooms (C3R) ao criar uma colaboração. Você pode criar uma colaboração usando o AWS Clean Rooms console ou a operação CreateCollaboration da API. No console, você pode definir valores para os parâmetros em Parâmetros de computação criptográfica depois de ativar a opção Suporte à computação criptográfica. Para obter mais informações, consulte os tópicos a seguir.

Parâmetro Permitir colunas cleartext

No console, você pode definir o parâmetro Permitir colunas cleartext ao criar uma colaboração para especificar se os dados cleartext são permitidos em uma tabela com dados criptografados.

A tabela a seguir descreve os valores do parâmetro Permitir colunas cleartext.

Valor do parâmetro Descrição
Não

As colunas Cleartext não são permitidas na tabela criptografada. Todos os dados são protegidos criptograficamente.

Sim

As colunas Cleartext são permitidas na tabela criptografada.

As colunas Cleartext não são protegidas criptograficamente e são incluídas como cleartext. Você deve observar o que os dados cleartext de suas linhas podem revelar sobre os outros dados na tabela.

Para executar SUM ou AVG em colunas específicas, as colunas devem estar dentro de cleartext.

Usando a operação da API CreateCollaboration, para o parâmetro dataEncryptionMetadata, você pode definir o valor allowCleartext como true ou false. Para obter mais informações sobre operações de API, consulte a Referência de API do AWS Clean Rooms.

As colunas Cleartext correspondem às colunas que são classificadas como cleartext no esquema específico da tabela. Os dados nessas colunas não são criptografados e podem ser usados de qualquer forma. As colunas Cleartext podem ser úteis se os dados não forem confidenciais e/ou se for necessária mais flexibilidade do que uma coluna criptografada sealed ou fingerprint permite.

Parâmetro Permitir duplicatas

No console, você pode definir o parâmetro Permitir duplicatas ao criar uma colaboração para especificar se as colunas criptografadas para consultas JOIN podem conter valores não duplicados NULL.

Importante

Os parâmetros Permitir duplicatas, Permitir JOIN de colunas com nomes diferentes e Preservar valores NULL têm efeitos separados, mas relacionados.

A tabela a seguir descreve os valores do parâmetro Permitir duplicatas.

Valor do parâmetro Descrição
Não

Valores repetidos não são permitidos em uma coluna fingerprint. Todos os valores em uma única coluna fingerprint devem ser exclusivos.

Sim

Valores repetidos são permitidos em uma coluna fingerprint.

Se você precisar unir colunas com valores repetidos, defina esse valor como Sim. Quando definido como Sim, os padrões de frequência que aparecem nas colunas fingerprint da tabela C3R ou nos resultados podem implicar em algumas informações adicionais sobre a estrutura dos dados cleartext.

Usando a operação da API CreateCollaboration, para o parâmetro dataEncryptionMetadata, você pode definir o valor allowDuplicates como true ou false. Para obter mais informações sobre operações de API, consulte a Referência de API do AWS Clean Rooms.

Por padrão, se dados criptografados precisarem ser usados em consultas JOIN, o cliente de criptografia C3R exigirá que essas colunas não tenham valores duplicados. Esse requisito é um esforço para aumentar a proteção de dados. Esse comportamento pode ajudar a garantir que padrões repetidos nos dados não sejam observáveis. No entanto, se quiser trabalhar com dados criptografados em consultas JOIN e não estiver preocupado com valores duplicados, o parâmetro Permitir duplicatas pode desativar essa verificação conservadora.

Parâmetro de permissão JOIN de colunas com nomes diferentes

No console, você pode definir o parâmetro Permitir JOIN de colunas com nomes diferentes ao criar uma colaboração para especificar se as instruções JOIN entre colunas com nomes diferentes são suportadas.

Para mais informações, consulte Normalização dos nomes dos cabeçalhos das colunas .

A tabela a seguir descreve os valores do parâmetro Permitir JOIN de colunas com nomes diferentes.

Valor do parâmetro Descrição
Não

Não há suporte para junções de colunas fingerprint com nomes diferentes. Declarações JOINsó fornecem resultados precisos em colunas que têm o mesmo nome.

Importante

O valor Não fornece maior segurança das informações, mas exige que os participantes da colaboração concordem previamente com os nomes das colunas. Se duas colunas tiverem nomes diferentes quando criptografadas como colunas fingerprint e a opção Permitir JOIN de colunas com nomes diferentes estiver definida como Não, as instruções JOIN nessas colunas não produzirão resultados. Isso ocorre porque nenhum valor pós-criptografia é compartilhado entre eles.

Sim

Há suporte para junções de colunas com nomes diferentes fingerprint. Para maior flexibilidade, os usuários podem definir esse valor como Sim, o que permite instruções JOIN em colunas, independentemente do nome da coluna.

Se definido como Sim, o cliente de criptografia C3R não considera o nome da coluna ao proteger as colunas fingerprint. Como resultado, valores comuns em diferentes colunas fingerprint são observáveis na tabela C3R.

Por exemplo, se uma linha tiver o mesmo valor JOIN criptografado em uma coluna City e em uma coluna State, pode ser razoável inferir que esse valor é New York.

Usando a operação da API CreateCollaboration, para o parâmetro dataEncryptionMetadata, você pode definir o valor allowJoinsOnColumnsWithDifferentNames como true ou false. Para obter mais informações sobre operações de API, consulte a Referência de API do AWS Clean Rooms.

Por padrão, a criptografia da coluna fingerprint targetHeader é afetada pela configuração dessa coluna Etapa 4: gerar um esquema de criptografia para um arquivo tabular . Portanto, o mesmo valor cleartext tem representações criptografadas diferentes em cada coluna fingerprint diferente para a qual é criptografado.

Esse parâmetro pode ser útil para impedir a inferência de valores cleartext em alguns casos. Por exemplo, ver o mesmo valor criptografado em colunas fingerprint City e State pode ser usado para inferir razoavelmente que o valor é New York. No entanto, o uso desse parâmetro requer coordenação adicional com antecedência, para que todas as colunas a serem unidas nas consultas tenham nomes compartilhados.

Você pode usar o parâmetro Permitir JOIN de colunas com nomes diferentes para afrouxar essa restrição. Quando o valor do parâmetro é definido como Yes, ele permite que qualquer coluna criptografada JOIN seja usada em conjunto, independentemente do nome.

Parâmetro de preservação de valores NULL

No console, você pode definir o parâmetro Preservar valores NULL ao criar uma colaboração para indicar que não há nenhum valor presente para essa coluna.

A tabela a seguir descreve os valores do parâmetro Preservar valores NULL.

Valor do parâmetro Descrição
Não

Os valores NULL não são preservados. Os valores NULL não aparecem como NULL em uma tabela criptografada. Os valores NULL aparecem como valores aleatórios exclusivos em uma tabela C3R.

Sim Os valores NULL são preservados. Os valores NULL aparecem como NULL em uma tabela criptografada. Se você precisar de semântica de valores NULL SQL, você pode definir esse valor como Sim. Como resultado, as entradas NULL aparecem como NULL na tabela C3R, independentemente de a coluna estar criptografada e independentemente da configuração do parâmetro para Permitir duplicatas.

Usando a operação da API CreateCollaboration, para o parâmetro dataEncryptionMetadata, você pode definir o valor preserveNulls como true ou false. Para obter mais informações sobre operações de API, consulte a Referência de API do AWS Clean Rooms.

Quando o parâmetro Preservar valores NULL estiver definido como Não para a colaboração:

  1. As entradas NULL nas colunas cleartext permanecem inalteradas.

  2. As entradas NULL em colunas fingerprint criptografadas são criptografadas como valores aleatórios para ocultar seu conteúdo. A união em uma coluna criptografada com entradas NULL na coluna cleartext não produz nenhuma correspondência para nenhuma das entradas NULL. Nenhuma combinação é feita porque cada uma recebe seu próprio conteúdo aleatório exclusivo.

  3. As entradas NULL em colunas sealed criptografadas são criptografadas.

Quando o valor do parâmetro Preservar valores NULL é definido como Sim para a colaboração, as entradas NULL de todas as colunas permanecem inalteradas, independentemente de a coluna NULL estar criptografada.

O parâmetro Preservar valores NULL é útil em cenários como enriquecimento de dados, nos quais você deseja compartilhar a falta de informações expressas como NULL. O parâmetro Preservar valores NULL também é útil no formato fingerprint HMAC se você tiver valores NULL na coluna que deseja JOIN ou GROUP BY.

Se o valor dos parâmetros Permitir duplicatas e Preservar valores NULL estiver definido como Não, ter mais de uma entrada NULL em uma coluna fingerprint produzirá um erro e interromperá a criptografia. Se o valor de um dos parâmetros for definido como Sim, esse erro não ocorrerá.