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á.
O que é o AWS Encryption SDK?
O AWS Encryption SDK é uma biblioteca de criptografia do lado do cliente projetada para facilitar a criptografia e a descriptografia de dados para todos usando os padrões do setor e as melhores práticas do setor. Ele permite que você se concentre na funcionalidade principal do aplicativo, em vez de sobre como melhor criptografar e descriptografar os dados. O AWS Encryption SDK é fornecido gratuitamente sob a licença do Apache 2.0.
As AWS Encryption SDK respostas a perguntas como as seguintes para você:
-
Qual algoritmo de criptografia devo usar?
-
Como, ou em qual modo, devo usar esse algoritmo?
-
Como faço para gerar a chave de criptografia?
-
Como faço para proteger a chave de criptografia e onde devo armazená-la?
-
Como posso tornar meus dados criptografados portáteis?
-
Como faço para garantir que o destinatário pretendido possa ler meus dados criptografados?
-
Como posso garantir que meus dados criptografados não sejam modificados entre o momento em que são gravados e o momento em que são lidos?
-
Como faço para usar as chaves de dados que o AWS KMS retorna?
Com o AWS Encryption SDK, você define um provedor de chaves mestras ou um token de autenticação que determine quais chaves de encapsulamento usar para proteger seus dados. Em seguida, você criptografa e descriptografa seus dados usando métodos simples fornecidos pelo. AWS Encryption SDK AWS Encryption SDK O cuida do resto.
Sem isso AWS Encryption SDK, você pode se esforçar mais na criação de uma solução de criptografia do que na funcionalidade principal do seu aplicativo. Ele AWS Encryption SDK responde a essas perguntas fornecendo as seguintes coisas.
- Uma implementação padrão que segue as melhores práticas de criptografia
-
Por padrão, o AWS Encryption SDK gera uma chave de dados exclusiva para cada objeto de dados que ele criptografa. Isso segue a melhor prática de criptografia de usar chaves de dados exclusivas para cada operação de criptografia.
Ele AWS Encryption SDK criptografa seus dados usando um algoritmo de chave simétrica, autenticado e seguro. Para obter mais informações, consulte Suítes de algoritmos compatíveis no AWS Encryption SDK.
- Uma estrutura para proteção de chaves de dados com chaves de encapsulamento
-
O AWS Encryption SDK protege as chaves de dados que criptografam seus dados criptografando-as sob uma ou mais chaves de encapsulamento. Ao fornecer uma estrutura para criptografar chaves de dados com mais de uma chave de encapsulamento, o AWS Encryption SDK ajuda a tornar seus dados criptografados portáteis.
Por exemplo, criptografe dados com uma entrada de AWS KMS key no AWS KMS e uma chave do seu HSM on-premises. É possível usar qualquer uma das duas chaves de encapsulamento para descriptografar os dados, caso alguma não esteja disponível ou o chamador não tenha permissão para usar as duas chaves.
- Uma mensagem formatada que armazena chaves de dados criptografadas com os dados criptografados
-
Ele AWS Encryption SDK armazena os dados criptografados e a chave de dados criptografados juntos em uma mensagem criptografada que usa um formato de dados definido. Isso significa que você não precisa acompanhar ou proteger as chaves de dados que criptografam seus dados, pois elas AWS Encryption SDK fazem isso por você.
Algumas implementações de linguagem do AWS Encryption SDK exigem um AWS SDK, mas o AWS Encryption SDK não requer uma Conta da AWS e não depende de nenhum AWS serviço do. Você Conta da AWS só precisa de um se optar por usar AWS KMS keyspara proteger seus dados.
Desenvolvido em repositórios de código aberto
O AWS Encryption SDK é desenvolvido em repositórios de código aberto no. GitHub É possível usar esses repositórios para visualizar o código, ler e enviar problemas e encontrar informações específicas para sua implementação de linguagem.
AWS Encryption SDK for C — aws-encryption-sdk-c
AWS Encryption SDK para o.NET — diretório.NET
do aws-encryption-sdk
repositório.AWS CLI de criptografia — aws-encryption-sdk-cli
AWS Encryption SDK for Java — aws-encryption-sdk-java
AWS Encryption SDK para JavaScript — aws-encryption-sdk-javascript
AWS Encryption SDK for Python — aws-encryption-sdk-python
AWS Encryption SDK para Rust — diretório Rust
do repositório. aws-encryption-sdk
AWS Encryption SDK para Go — diretório Go
do aws-encryption-sdk
repositório
Compatibilidade com bibliotecas e serviços de criptografia
O AWS Encryption SDK é suportado em várias linguagens de programação. As implementações de linguagem são interoperáveis É possível criptografar com uma implementação de linguagem e descriptografar com outra. A interoperabilidade pode estar sujeita às restrições de linguagem. Em caso afirmativo, essas restrições estarão descritas no tópico sobre a implementação de linguagem. Além disso, ao criptografar e descriptografar, é necessário usar tokens de autenticação compatíveis ou chaves mestras e provedores de chaves mestras. Para obter detalhes, consulte Compatibilidade dos tokens de autenticação.
No entanto, eles AWS Encryption SDK não podem interoperar com outras bibliotecas. Como cada biblioteca retorna dados criptografados em um formato diferente, você não pode criptografar com uma biblioteca e descriptografar com outra.
- DynamoDB Encryption Client e criptografia do lado do cliente do Amazon S3
O AWS Encryption SDK não pode descriptografar dados criptografados pelo DynamoDB Encryption Client ou pela criptografia do lado do cliente do Amazon S3. Essas bibliotecas não podem descriptografar a mensagem criptografada retornada pelo. AWS Encryption SDK
- AWS Key Management Service (AWS KMS)
Eles AWS Encryption SDK podem usar chaves AWS KMS keysde dados para proteger seus dados, incluindo chaves KMS multirregionais. Por exemplo, você pode configurar o AWS Encryption SDK para criptografar os dados sob uma ou mais AWS KMS keys em sua Conta da AWS. No entanto, você deve usar o AWS Encryption SDK para descriptografar esses dados.
AWS Encryption SDK Não é possível descriptografar o texto cifrado que as operações Encrypt ou retornam. AWS KMSReEncrypt Da mesma forma, a operação AWS KMSDecrypt não pode descriptografar a mensagem criptografada que ela retorna. AWS Encryption SDK
O AWS Encryption SDK suporta somente chaves KMS de criptografia simétrica. Não é possível usar uma chave assimétrica do KMS para criptografia ou assinatura no AWS Encryption SDK. O AWS Encryption SDK gera suas próprias chaves de assinatura ECDSA para pacotes de algoritmos que assinam mensagens.
Suporte e manutenção
O AWS Encryption SDK usa a mesma política de manutenção que o AWS SDK da e as ferramentas usam, incluindo suas fases de versionamento e ciclo de vida. Como prática recomendada, você deve usar a versão mais recente do AWS Encryption SDK para sua linguagem de programação e atualizá-la à medida que novas versões forem lançadas. Quando uma versão exige alterações significativas, como a atualização de AWS Encryption SDK versões anteriores à 1.7. x para as versões 2.0. x e posteriormente, fornecemos instruções detalhadas para ajudá-lo.
Cada implementação de linguagem de programação do AWS Encryption SDK é desenvolvida em um GitHub repositório separado de código aberto. É provável que o ciclo de vida e a fase do suporte de cada versão variem entre os repositórios. Por exemplo, uma determinada versão do AWS Encryption SDK pode estar na fase de disponibilidade geral (suporte completo) em determinada linguagem de programação, mas estar na end-of-support fase em uma linguagem de programação diferente. Recomendamos que você use uma versão totalmente compatível sempre que possível e evite versões que já não sejam compatíveis.
Para encontrar a fase do ciclo de vida das AWS Encryption SDK versões do para sua linguagem de programação, consulte o SUPPORT_POLICY.rst
arquivo em cada AWS Encryption SDK repositório do.
AWS Encryption SDK for C — Support_policy.rst
AWS Encryption SDK for .NET: SUPPORT_POLICY.rst
AWS Encryption SDK for Java — Support_policy.rst
AWS Encryption SDK para JavaScript — Support_policy.rst
AWS Encryption SDK for Python — Support_policy.rst
Para obter mais informações, consulte Versões do AWS Encryption SDK e AWS SDKs e a política de manutenção de ferramentas no Guia de referência de ferramentas AWS SDKs e ferramentas.
Saiba mais
Para obter mais informações sobre criptografia do AWS Encryption SDK lado do cliente, experimente essas fontes.
-
Para obter ajuda com os termos e conceitos usados neste SDK, consulte Conceitos no AWS Encryption SDK.
-
Para obter as diretrizes de práticas recomendadas, consulte Melhores práticas para o AWS Encryption SDK.
-
Para obter informações sobre como o SDK funciona, consulte Saiba como o SDK funciona.
-
Para obter exemplos que mostram como configurar opções no AWS Encryption SDK, consulteConfigurando o AWS Encryption SDK.
-
Para obter informações técnicas, consulte a AWS Encryption SDK referência.
Para obter as especificações técnicas do AWS Encryption SDK, consulte a AWS Encryption SDK Especificação
em GitHub. -
Para obter respostas às suas perguntas sobre como usar o AWS Encryption SDK, leia e poste no Fórum de discussão sobre ferramentas de AWS criptografia
da.
Para obter informações sobre implementações do AWS Encryption SDK em diferentes linguagens de programação.
-
C: Veja AWS Encryption SDK for C a documentação em AWS Encryption SDK C
e o aws-encryption-sdk-c repositório ativado GitHub. -
C#/.NET: Consulte AWS Encryption SDK para o.NET e ative o aws-encryption-sdk-net
diretório do aws-encryption-sdk
repositório. GitHub -
Interface de linha de comando: consulteAWS Encryption SDK interface de linha de comando, leia os documentos
da CLI de AWS criptografia e aws-encryption-sdk-cli do repositório em. GitHub -
Java: vejaAWS Encryption SDK for Java, o AWS Encryption SDK Javadoc
e o aws-encryption-sdk-java repositório ativado. GitHub JavaScript: Veja AWS Encryption SDK para JavaScript e ative o aws-encryption-sdk-javascript
repositório. GitHub -
Python: veja AWS Encryption SDK for Python a documentação do AWS Encryption SDK Python
e o repositório em. aws-encryption-sdk-python GitHub
Enviar comentários
Os seus comentários são bem-vindos. Se você tiver uma pergunta ou comentário, ou um problema a relatar, use os seguintes recursos.
-
Se você descobrir uma potencial vulnerabilidade de segurança no AWS Encryption SDK, notifique a AWS segurança da
. Não crie um GitHub problema público. -
Para fornecer feedback sobre o AWS Encryption SDK, registre um problema no GitHub repositório da linguagem de programação que você está usando.
-
Para fornecer comentários sobre esta documentação, use os links Feedback nesta página. Você também pode registrar um problema ou contribuir para aws-encryption-sdk-docs
o repositório de código aberto desta documentação em. GitHub