Skip to content

v0.10.0-beta.1 - Breaking Changes to ECDH-KEM Implementation

Pre-release
Pre-release

Choose a tag to compare

@NoCentralHub NoCentralHub released this 26 Jul 12:18
· 259 commits to master since this release

⚠️ Breaking Changes

This release contains breaking changes to the ECDH-KEM implementation that make it incompatible with previous versions.

What's Changed

🔥 Breaking: ECDH-KEM KDF Parameter Update

  • Removed KEM_KDF_VERSION constant from all ECDH implementations
  • KDF info strings no longer include version information:
    • Before: "ECDH-P256-KEM v2.0.0"
    • After: "ECDH-P256-KEM"
  • Affects all ECDH curves: B-283k, K-256, P-192, P-224, P-256, P-384, P-521

⚡ Impact

  • Incompatible with v0.9.x: Systems using different versions cannot communicate
  • Existing encrypted data from v0.9.x cannot be decrypted with v0.10.x
  • All systems must be updated together to maintain interoperability

🔧 Technical Details

The change simplifies version management by removing redundant version constants from the codebase. Version information is now managed exclusively through Cargo dependencies.

📦 Affected Crates

  • dcrypt-kem - All ECDH implementations

🚀 Migration Guide

  1. Ensure all communicating systems are updated to v0.10.0-beta.1 simultaneously
  2. Re-encrypt any stored data that needs to be accessible with the new version
  3. Update any test vectors or hardcoded expected values that depend on KEM outputs

⚠️ Beta Notice

This is a beta release and has not been independently audited. Not recommended for production use.

Full Changelog: v0.9.0-beta.3...v0.10.0-beta.1