ACMEとは、Automatic Certificate Management Environment の略で、Let's Encryptの中で使われているプロトコルです。HTTPS + JSONが使用されます。
Let's Encryptでは、2015/12/3にPublic Betaがアナウンスされたことで、今現在すでに15万以上のDV証明書(ドメインの所有証明)が発行されています。
IETFのdraft段階であり、github上にもWorking Areaがあるようです。
→2019/3にRFC8555となっているようです。
ここのblogが非常に詳しくて勉強になります。
SOTA: Go言語でLet's EncryptのACMEを理解する
なるほどなるほど、このSOTA blogによると
- 各操作を行うためのURIを知る
- クライアントの登録を行う
- 認証(ドメイン所有の確認)を行う
- 証明書(Certification)を発行する
の4つのステップがあるようです。
通信するJSONには署名が必要で、そこにJWKやJWSを使うとのこと。
JWxに関しては同blogでも紹介されている“GoでOAuth2/OpenIDとJOSE (JWA/JWT/JWK/JWS/JWE)”がためになります。
JWT(JSON Web Token)なるキーワードはこれまで小耳に挟んだことはありましたが、そうか、こういうところで使うものなのか。なるほど。
参考
おわり。