Skip to content

Release 0.2.0#4

Merged
nacardin merged 1 commit into
masterfrom
nacardin/v0.2.0
Jun 19, 2026
Merged

Release 0.2.0#4
nacardin merged 1 commit into
masterfrom
nacardin/v0.2.0

Conversation

@nacardin

Copy link
Copy Markdown
Owner

Fixed

  • DER-encode ECDSA signatures instead of using fixed-width format.
  • Use and declare matching SHA-384 / SHA-512 signatures for P-384 and P-521 curves.
  • Build Distinguished Names structurally to prevent RDN injection and panics.
  • Set digital signature key usage correctly for non-RSA algorithms.
  • Encode IP and email SANs using IPAddress and rfc822Name types instead of DNSName.
  • Fix import of RSA private keys in PKCS#1 DER format.
  • Return errors instead of panicking for invalid serial numbers or far-future validity dates.
  • Fix panic when parsing certificates without extensions.

Added

  • Add certificate parsing functions from DER, PEM, or auto-detected bytes.
  • Add Certificate::fingerprint to compute SHA-256 digests.
  • Add Subject Key Identifier and Authority Key Identifier extensions to issued certificates.
  • Add max_path_length to CertificateParams for path constraints.
  • Add KeyPair::encode_private_key_der for PKCS#8 DER export.
  • Add KeyType enum and helper methods for key algorithm inspection.
  • Add validity bounds, duration, and remaining helper methods.
  • Add Display implementations for key pairs, types, and signature algorithms.
  • Add light log instrumentation for key and certificate operations.
  • Add an integration test verifying end-to-end TLS echo round-trips.
  • Expand CI checks with clippy, rustfmt, docs, and MSRV validation.

Changed

  • Rename and restructure public library APIs to return Result and improve parameter structures.
  • Use random 20-byte CSPRNG serial numbers by default.
  • Prevent RSA key generation under 2048 bits and strip private keys from debug output.
  • Replace OpenSSL and Botan test dependencies with pure Rust integration tests and reduce dependencies.

@nacardin nacardin changed the title Fix many issues for 0.2.0 Release 0.2.0 Jun 19, 2026
@nacardin nacardin merged commit ef7eeaa into master Jun 19, 2026
5 checks passed
@nacardin

Copy link
Copy Markdown
Owner Author

Just published 0.2.0 to crates.io.
It includes a test to make sure it works with Rustls client and server. @AlexanderSchuetz97 please let me know if it works for you.

@AlexanderSchuetz97

AlexanderSchuetz97 commented Jun 20, 2026

Copy link
Copy Markdown
Contributor

Still works as before for me, just some minor api changes. Thanks!

Good that you added a rust-tls test!

@nacardin

Copy link
Copy Markdown
Owner Author

Thanks for the feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants