Skip to content

Releases: sinofseven/oidc-jwks-converter

v0.2.0

18 May 10:02

Choose a tag to compare

v0.2.0

Highlights

The biggest change in this release is expanded distribution options. With official Homebrew formula and crates.io publishing, installation is now much easier than ever before.

New Features

Multiple Installation Methods

oidc-jwks-converter is now available through 4 installation methods:

# Homebrew (macOS / Linux)
brew tap sinofseven/luciferous-tap
brew install oidc-jwks-converter

# crates.io
cargo install oidc-jwks-converter

See the README for all installation options including binary releases and building from source.

Changes

Dependency Updates

Crate Old New
reqwest 0.11 0.13 (rustls)
thiserror 1.0 2.0

The reqwest upgrade to rustls removes the OpenSSL dependency, improving security and portability across platforms.

Build & CI Improvements

  • Improved Linux ARM64 / ARM32 build stability using rust-musl-cross Docker image
  • Added Ubuntu 24 compatibility
  • Optimized Cargo registry and GitHub Actions caching for faster builds
  • Separated architecture-specific cache for better performance

Notes

  • No breaking changes — fully compatible with v0.1.0
  • No known issues

Full Changelog

v0.1.0...v0.2.0

v0.1.0

14 May 12:21

Choose a tag to compare

Added

  • JWKS Fetching: Automatically fetch JSON Web Key Set (JWKS) from OpenID Connect (OIDC) providers
  • PEM Conversion: Convert JWKS public keys to PEM format for use with standard cryptographic libraries
  • RSA Support: Handle RSA public keys (RSASSA-PKCS1-v1.5)
  • EC Support: Handle Elliptic Curve public keys (P-256 only)
  • Batch Processing: Process multiple keys from a JWKS endpoint in a single run
  • Graceful Handling: Automatically skip unsupported key types and continue processing
  • Directory Creation: Automatically create output directory if it doesn't exist
  • Async Support: Non-blocking I/O using Tokio for improved performance
  • Comprehensive Testing: 20 unit and integration tests covering core functionality

Supported

  • Platforms: Linux (x86_64, ARM64, ARM32), macOS (Apple Silicon), Windows
  • Key Types and Algorithms:
    • RSA keys: All RSA key sizes (2048-bit and higher) with any signing algorithm (RS256, RS384, RS512, etc.)
    • EC keys: P-256 curve (secp256r1) only
  • Signing Algorithms: RS256, RS384, RS512 (RSA), ES256 (EC P-256)

Known Limitations

  • EC Curves: Only P-256 (secp256r1) elliptic curves are supported. Other curves (P-384, P-521, etc.) are not supported and will be skipped.
  • Unsupported Algorithms: ES384, ES512, and other non-standard key types will be skipped during processing
  • Key Operations: This tool is designed for public key extraction only. Private key operations are not supported.

Full Changelog

https://github.com/sinofseven/oidc-jwks-converter/commits/v0.1.0