2 releases

0.1.2 Feb 25, 2023
0.1.1 Feb 25, 2023
0.1.0 Feb 24, 2023

#565 in Web programming

33 downloads per month

Apache-2.0

28KB
567 lines

small-acme: small, pure-Rust ACME client

Documentation Crates.io Build status License: Apache 2.0

This is a fork from instant-acme without async or hyper, to provide a slim, rustls based solution.

small-acme is a small, pure-Rust ACME (RFC 8555) client.

small-acme is used in production at my websites to help me provision and renew TLS certificates without any intervention. small-acme relies on ureq and rustls to implement the RFC 8555 specification.

Features

  • Store/recover your account credentials by serializing/deserializing
  • Simple blocking support (which can be used in tokio)
  • Support for processing multiple orders concurrently
  • Uses ureq with rustls for HTTP requests
  • Uses ring for ECDSA signing
  • Minimum supported Rust version: 1.64

Limitations

  • Only tested with DNS and HTTP challenges against Let's Encrypt so far (staging and production)
  • Only supports ECDSA keys for now

Getting started

See the examples directory for examples of how to use small-acme.

Dependencies

~12MB
~309K SLoC