Import std.net.acme
std.net.acme
std.net.acme: what automatic HTTPS needs of ACME (RFC 8555), as Let's Encrypt speaks it. Acme's CertificateRequest makes the certificate signing request an order is finalized with, as DER, for a P-256 key and the DNS names it's for; its Jwk and Thumbprint give an account key's JWK (RFC 7517) and its thumbprint (RFC 7638), and KeyAuthorization what an HTTP-01 challenge's response is. AcmeClient, in acme_client.fb, goes through an order with a CA.
std/net/acme.fb
Types
Acme
struct
Public Struct Acme
What ACME needs that isn't a request to a CA. Acme isn't made: it's only its Static Methods.
-
The JWK (RFC 7517) of
key's public key,keybeing an ECDSA P-256 key, private or public: its curve, its type, and its point's x and y in base64url, in that order, which its thumbprint takes. Panics for a key of another kind. -
key's JWK thumbprint (RFC 7638): SHA-256 of its JWK's members, in order, without spaces, in base64url. -
@PanicsAtCaller Public Static Method KeyAuthorization(token: String, accountKey: Key): Stringstatic method #What an HTTP-01 challenge's response is: its token, then ".", then the account key's thumbprint.
-
@PanicsAtCaller Public Static Method CertificateRequest(key: Key, names: String[]): UInt8[]static method #A certificate signing request (PKCS #10) of
key, an ECDSA P-256 private key, which signs it, fornames, DNS names, which its subjectAltName lists, in order, where ACME's CAs read them, and whose subject's common name is the first name that fits in one, 64 bytes, as certbot's is, since some readers, mbedTLS's among them, don't take an empty subject. Panics for a key of another kind or a public one, no names, or a name that isn't a DNS name of ASCII letters, digits, and hyphens, as an IDN's A-label is, maybe with "*." first, for a wildcard, whose labels neither start nor end with a hyphen, and whose last isn't all digits, as an IPv4 address's is.
Report an issue with this page or with FutureBlitz on GitHub.