Simple ACME client
Go to file
Dirkjan Ochtman a438e48f02 Bump base64 dependency to 0.21 2023-01-09 12:57:53 +01:00
.github Bump edition and set rust-version 2022-12-14 21:25:09 +01:00
examples Add certificate provisioning example 2022-12-14 21:25:09 +01:00
src Bump base64 dependency to 0.21 2023-01-09 12:57:53 +01:00
.gitignore Add .gitignore 2022-05-12 21:47:01 +02:00
Cargo.toml Bump base64 dependency to 0.21 2023-01-09 12:57:53 +01:00
LICENSE Add Apache 2.0 license file 2022-05-12 21:47:01 +02:00
README.md Remove example from README.md 2022-12-14 21:25:09 +01:00
deny.toml Add CI configuration 2022-05-12 21:47:01 +02:00

README.md

instant-acme: async, pure-Rust ACME client

Documentation Crates.io Build status License: Apache 2.0

instant-acme is an async, pure-Rust ACME (RFC 8555) client.

If you think this is interesting, Instant Domains is hiring experienced Rust engineers.

instant-acme is used in production at InstantDomain to help us provision TLS certificates within seconds for our customers. instant-acme relies on Tokio and rustls to implement the RFC 8555 specification.

Features

  • Store/recover your account credentials by serializing/deserializing
  • Fully async implementation with tracing support
  • Support for processing multiple orders concurrently
  • Uses hyper with rustls and Tokio for HTTP requests
  • Uses ring for ECDSA signing
  • Minimum supported Rust version: 1.51

Limitations

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

Getting started

See the examples directory for an example of how to use instant-acme.