Skip to content

[C#] AppEncryption v0.11.0

Latest

Choose a tag to compare

@aka-bo aka-bo released this 10 Apr 19:01
· 6 commits to main since this release
23944f3

What's Changed

Security Fix

  • Cross-Region Intermediate Key Cache Pollution: Fixed a bug in multi-region setups using WithKeySuffix where the read path (WithIntermediateKeyForRead) would cache cross-region intermediate keys by timestamp only. The write path's GetLast() could then return a cross-region key with a later timestamp, causing EncryptPayload to produce a mismatched KeyMeta (local region keyId + cross-region created timestamp) that cannot be decrypted. The same fix was applied to the system key read path (WithExistingSystemKey). Cross-region reads still work correctly — keys are fetched from the metastore but no longer cached when they belong to a different region. Port of the Java fix from v0.4.0.

Build & Infrastructure

  • NuGet Audit Warnings: Suppressed NuGet audit warnings (NU1901-NU1904) across all projects to prevent transitive dependency advisories from breaking builds

Dependency Updates

  • AWSSDK.DynamoDBv2: Updated to v4.0.15 (from v4.0.9.6)
  • AWSSDK.KeyManagementService: Updated to v4.0.9.1 (from v4.0.7.1)
  • AWSSDK.SecurityToken: Updated to v4.0.5.10 (from v4.0.4.1)
  • JunitXml.TestLogger: Updated to v7.1.0 (from v7.0.2)
  • Microsoft.Extensions.Caching.Memory: Updated to v10.0.5 (from v10.0.0)
  • Microsoft.Extensions.Logging.Abstractions: Updated to v10.0.5 (from v10.0.0)
  • Microsoft.Extensions.Logging.Console: Updated to v10.0.5 (from v10.0.0)
  • Microsoft.NET.Test.Sdk: Updated to v18.3.0 (from v18.0.1)
  • MySql.Data: Updated to v9.6.0 (from v9.5.0)
  • System.Text.Encodings.Web: Updated to v10.0.5 (from v10.0.0)
  • System.Text.Json: Updated to v10.0.5 (from v10.0.0)
  • Testcontainers.DynamoDb: Updated to v4.11.0 (from v4.8.1)
  • Testcontainers.MySql: Updated to v4.11.0 (from v4.8.1)
  • Xunit.SkippableFact: Updated to v1.5.61 (from v1.5.23)

Development & Testing

  • Added regression test for cross-region intermediate key cache pollution scenario
  • Multiple dependency maintenance updates via Dependabot

Full Changelog: csharp/AppEncryption/v0.10.0...csharp/AppEncryption/v0.11.0