AWS Crypto Tools Documentation
Cryptography is hard to do safely and correctly. The AWS Crypto Tools
libraries are designed to help everyone do cryptography right, even without special expertise.
Our client-side encryption libraries help you to protect your sensitive data at its source using
secure cryptographic algorithms, envelope encryption, and signing.
Use the AWS Encryption SDK to encrypt all types of data in your applications.
Use the AWS Database Encryption SDK or the Legacy DynamoDB Encryption Client to encrypt and sign database records in your applications.
Use the Amazon S3 Encryption Client to encrypt your Amazon S3 objects before uploading them to Amazon S3.
- Learn how to use the AWS Encryption SDK, a client-side encryption library for all types of data. It makes best-practice client-side encryption easier, so you can focus on the core functionality of your application. Use these libraries with any cryptographic service provider, including AWS Key Management Service or AWS CloudHSM, but the libraries do not require AWS or any AWS service.
- Learn how to use the AWS Database Encryption SDK, a set of software libraries that enable you to include client-side encryption in your database design. The encryption and signing features are easy to incorporate into your existing applications. Use these libraries with any cryptographic service provider, including AWS Key Management Service or AWS CloudHSM, but the libraries do not require AWS or any AWS service.
- Learn how to use the Amazon S3 Encryption Client, a client-side encryption library designed especially for Amazon S3 objects. With the Amazon S3 Encryption Client, you can encrypt your Amazon S3 objects before uploading them to Amazon S3. Use these libraries with any cryptographic service provider, including AWS Key Management Service or AWS CloudHSM, but the libraries do not require AWS or any AWS service.
Join Us on GitHub
- Amazon Corretto Crypto Provider
- AWS Encryption SDK for C
- AWS Encryption SDK for Java
- AWS Encryption SDK for JavaScript
- AWS Encryption SDK for .NET
- AWS Encryption SDK for Python
- AWS Encryption SDK Command Line Interface
- AWS Encryption SDK Developer Guide
- AWS Encryption SDK Specification
- AWS Database Encryption SDK for DynamoDB – Java
- DynamoDB Encryption Client for Python
- Amazon S3 Encryption Client for Java
Learn about AWS Cryptography Services
Read Our Blog Posts
- Improved client-side encryption: Explicit KeyIds and key commitment
- How to enable encryption in a browser with the AWS Encryption SDK for JavaScript and Node.js
- Amazon Introduces Amazon Corretto Crypto Provider (ACCP)
- How to decrypt ciphertexts in multiple regions with the AWS Encryption SDK in C
- How to encrypt and sign DynamoDB data in your application
- How to encrypt and decrypt your data with the AWS Encryption CLI
- AWS Encryption SDK: how to decide if data key caching is right for your application
- New AWS Encryption SDK for Python simplifies multiple master key encryption
PrivacySite termsCookie preferences
© 2025, Amazon Web Services, Inc. or its affiliates. All rights reserved.