|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## 3.0.0 2023-07-24 |
| 4 | + |
| 5 | +### Features |
| 6 | +- Updates to the AWS Cryptographic Material Providers Library for Java, |
| 7 | + a pivotal dependency of the this library, |
| 8 | + introduce Thread Safe Cryptographic Materials Caches (CMCs): |
| 9 | + - Storm Tracking Cache |
| 10 | + Safe for use in a multi threaded environment, |
| 11 | + tries to prevent redundant or overly parallel backend calls. |
| 12 | + See [Spec changes](https://github.com/awslabs/aws-encryption-sdk-specification/blob/ce9a4062124edc5085c66a4f10742e15aa039b34/changes/2023-06-19_thread_safe_cache/change.md) for details. |
| 13 | + - Multi Threaded Cache |
| 14 | + Safe for use in a multi threaded environment, |
| 15 | + but no extra functionality |
| 16 | +- Examples for using the Enhanced Client via Lombok Annotation and TableSchemaBuilder |
| 17 | +- Detection of ignored DynamoDB Encryption Configuration Tags due to Nested Data Models |
| 18 | +- Multi Threading Example |
| 19 | + |
| 20 | +### BREAKING CHANGES |
| 21 | +- Updates to the AWS Cryptographic Material Providers Library for Java, |
| 22 | + a pivotal dependency of the this library, |
| 23 | + introduce the following breaking changes: |
| 24 | + - CMCs: |
| 25 | + - Original Cryptographic Materials Cache has been renamed to Single Threaded Cache |
| 26 | + - `CreateCryptographicMaterialsCacheInput` now ONLY accepts `CacheType`, |
| 27 | + which determines which, if any, of the three implemented CMCs will be returned. |
| 28 | + - The `DefaultCache` is `StormTrackingCache` |
| 29 | + - `CreateAwsKmsHierarchicalKeyringInput`: |
| 30 | + - no longer has a `maxCacheSize` field |
| 31 | + - now has an optional `cache` field for a `CacheType` |
| 32 | + - Hierarchical Keyring's Key Store: |
| 33 | + - The Hierarchical Keyring's Key Store's Data Structure has changed. |
| 34 | + As such, entries persisted in the Key Store with prior versions of this library are NOT compatible. |
| 35 | + Instead, we recommend Creating a new DynamoDB Table for this version of the Key Store. |
| 36 | + - The Key Store's `CreateKeyInput` now takes: |
| 37 | + - An Optional `String branchKeyIdentifier` |
| 38 | + - An Optional `EncryptionContext encryptionContext` |
| 39 | + - This `encryptionContext` will be added to the Encryption Context sent to KMS prefixed with `aws-crypto-ec:` |
| 40 | + - Creating a Key now also calls KMS:ReEncrypt |
| 41 | + - `CreateKeyStore` no longer creates a GSI |
| 42 | + - The Encryption Context used with KMS' `GenerateDataKeyWithoutPlaintext` no longer includes the discarded GSI's `status`. |
| 43 | + - More details about the Key Store's changes are available in our Specification: |
| 44 | + - [2023-07-12 Update Key Store](https://github.com/awslabs/aws-encryption-sdk-specification/tree/master/changes/2023_7_12_update-keystore-structure) |
| 45 | + - [KeyStore Specification](https://github.com/awslabs/aws-encryption-sdk-specification/blob/master/framework/branch-key-store.md) |
| 46 | + |
| 47 | +### Fix |
| 48 | +- With the Enhanced Client, Identify Only Index attributes for Sign Only, |
| 49 | + NOT all Key Attributes, such as Auto Generated Last Modified Time Stamp. |
| 50 | + |
| 51 | +### Maintenance |
| 52 | +- A variety of fixes to the libraries CI and testing |
| 53 | + |
3 | 54 | ## 3.0.0-preview-2 2023-06-09
|
4 | 55 |
|
5 | 56 | ### Fix
|
|
0 commit comments