Announcing uacme, a lightweight ACMEv2 client written in C

#1

Hello

uacme is an open source, lightweight ACMEv2 client, written in plain C with minimal dependencies. I just released version 1.0 at the following address

An html version of the man page is available https://ndilieto.github.io/uacme.1.html

I believe at this time uacme is the only ACMEv2 compatible client written in plain C. The only dependencies are libcurl and gnutls.

6 Likes
#2

it’s small enough for use in Openwrt(80k), but not guntls is quite big in router world (additional 600kB from installing gnutls) Could you add version that use libmbedtls?

3 Likes
#3

It is feasible. Give me some time and I’ll see what I can do.

2 Likes
#4

As you requested I’ve added support for mbedTLS as an alternative to GnuTLS. You can switch at configure stage:

./configure --with-mbedtls

Note, you will probably need to also recompile libcurl with mbedTLS support, otherwise it may pull OpenSSL or GnuTLS.

Let me know if it works for you.

3 Likes
#5

Nearly a week ago I submitted a pull request https://github.com/letsencrypt/website/pull/503 to get this listed at https://letsencrypt.org/docs/client-options but so far it has not been even reviewed yet. Is there anything I didn’t do right in the pull request?

#6

I guess it’s a good question who is responsible for reviewing these. @jple, do you know who can review and update these? Over at

I see six pending pull requests related to the list of ACME clients (of which @ndilieto’s is the most recent).

#7

I got a request to add support for building with OpenSSL, which I added to the master branch with commit 656b6e53. I’d appreciate any third party testing before I make a proper release.

BTW, the pull request on the Let’s Encrypt client page is stil pending…

#8

Manpage link updated to https://ndilieto.github.io/uacme
Also added README.md including getting started instructions

1 Like
#9

A user requested ECC key/certificate support which I’ve just committed in the github repo. For more info see

As usual I’d appreciate third party testing before releasing it properly.

2 Likes
#10

New version 1.0.11 available with support for ACME account key rollover:

1 Like