skillfed

aws-cryptographic-material-providers

AWS Cryptographic Material Providers Library for Python

aws-cryptographic-material-providers v1.11.2 540.4K downloads/30d#6,105 on PyPI
License unclear Active released

What it is and what it does

This is AWS's cryptographic materials provider library for Python, designed to manage encryption keys and derived cryptographic material in AWS-integrated applications. It abstracts key management operations—including generation, derivation, and caching—and provides integration points with AWS KMS for key storage and rotation. The library is built on four internal AWS cryptography modules (dynamodb, kms, primitives, and standard-library) and exposes a MaterialProviders client that applications use to create keyrings and crypto materials managers.

The library targets modern Python (3.11+) and is actively maintained. It handles both simple and complex key hierarchies, supports envelope encryption patterns, and provides thread-safe client and manager implementations—though KMS-backed keyrings themselves are not thread-safe due to boto3 session constraints. It's intended for developers building encrypted storage, messaging, or data processing systems that need AWS-native key management without managing raw cryptographic keys directly.

Use it for:

  • Encrypt data at rest in S3 or DynamoDB using AWS KMS-managed keys without handling raw key material
  • Implement envelope encryption in multi-tenant applications where each tenant's data is encrypted with derived keys
  • Build encrypted messaging or event systems that cache cryptographic material to reduce KMS API calls
  • Integrate encryption into data pipelines that require key rotation and audit trails via AWS KMS

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides cryptographic material management and key derivation for AWS-integrated encryption workflows, handling key generation, caching, and integration with AWS KMS.

Yes, if you are building AWS-integrated applications that need encryption with centralized key management. The library is actively maintained, has no known vulnerabilities, and low install friction. Install with caution only if your license terms are unclear—verify the actual license before adopting in a commercial project, since the metadata does not declare it explicitly.

Install

aws-cryptographic-material-providers on PyPI

pip

pip install aws-cryptographic-material-providers

uv

uv add aws-cryptographic-material-providers

poetry

poetry add aws-cryptographic-material-providers

Installing aws-cryptographic-material-providers

Before you install

Low friction installation as a pure Python wheel. Actively maintained with recent releases. Requires cryptography >= 43.0.1 and boto3 >= 1.35.42 as runtime dependencies, plus system-level prerequisites for the cryptography library on some platforms.

License in practice

License treatment is unclear in the package metadata, so you should verify the actual license terms before adopting this in a commercial or copyleft-sensitive project.

Quickstart

pip install aws-cryptographic-material-providers

from aws_cryptographic_material_providers.material_providers import MaterialProviders

client = MaterialProviders()
# Use client to create keyrings and crypto materials managers

Requires Python 3.11 or later; cryptography >= 43.0.1 and boto3 >= 1.35.42 must be installed. KMS-based keyrings are not thread-safe when shared across threads.

Verify before relying

  • Exact license terms and SPDX identifier (metadata shows 'unclear' treatment)
  • Whether thread-safe keyring implementations with caching support are planned
  • Performance characteristics and throughput limits for high-volume key derivation

Package facts

License not declared (unclear)
Python support supports the current Python release (<4.0.0,>=3.11.0)
Install friction low — pure-Python wheel
Runtime dependencies 4 — aws-cryptography-internal-dynamodb, aws-cryptography-internal-kms, aws-cryptography-internal-primitives, aws-cryptography-internal-standard-library
Maintenance actively maintained — 172 days since the last release
First released
Downloads 540,368/month — #6,105 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: aws_cryptographic_material_providers-1.11.2-py3-none-any.whl

Programming Language :: Python :: 3Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12

Tags

AWS KMS key managementcryptographic material providersenvelope encryption AWSkey derivation and cachingAWS encryption materials librarycryptographic key managementAWS data key generation
aws-integrationkey-managementenvelope-encryption

More Cryptography packages