Crate rustls_cng
source ·Expand description
§Windows CNG bridge for rustls
This crate allows you to use the Windows CNG private keys together with rustls for both the client and server sides of the TLS channel.
Rationale: In many situations, it is required to use non-exportable private certificate chains
from the Windows certificate store instead of the external PKCS8 file.
rustls-cng
can use such chains in the rustls
context.
Supported key/certificate types: RSA, ECDSA/ECDH. Supported elliptic curves: secp256r1 (prime256v1), secp384r1.
§Documentation
Documentation is available here.
§Usage
The central struct to use in rustls-cng
is CngSigningKey
, which can be constructed
from the low-level NCryptKey
handle. The instance of CngSigningKey
can then be
used in rustls
in the custom ResolvesServerCert
or ResolvesClientCert
implementation.
See the examples
directory for usage examples.
§License
Licensed under the MIT or Apache licenses (LICENSE-MIT or LICENSE-APACHE)
Modules§
- Wrapper struct for Windows CERT_CONTEXT
- Error struct
- CNG key wrapper
- SigningKey implementation
- Windows certificate store wrapper