Currently, there’s no information on the adoption rate of different ACME clients. Adding a chart of the prevalence of different User-Agent headers seen in calls to the ACME API would be a nice statistic to add to the statistics page.
The code generating the statistics page doesn’t appear to be published, so I don’t know how difficult this would be.
This information would also have a small operational advantage: knowing what clients, and what client versions, are in use allows decisions to better be made whenever breaking changes are made to the ACME protocol. Although rare, the ACME protocol has yet to be finalised and there has already been a transition from the “simpleHttp” and “dvsni” challenge types to http-01 and tls-sni-01, so such changes are not unprecedented.
This is not possible since the protocol does not enforce client name nor check it.
There is only an hint in the http header if supported by the client and not using the acme reference User-Agent.
Publishing user-agent statistics is totally possible, even if it’s not officially in the specification. It doesn’t have to be enforced to have statistics.
It’s an interesting idea; I can see the usefulness of it.
The statistics page is generated from the Boulder database data several times a day. The DB doesn’t contain user-agents; those are in the logs. In a lot of ways it’s far easier to produce user-agent charts, but it’s a different process.
Automating this would be a task for another day, but I’ll pull together a quick chart for you.
Here’s the dataset for the top 100 user agents against acme-v01.api.letsencrypt.org in the last 12 hours, give or take. The “-” entry is for clients that did not provide a user agent header.