Enrollment over Secure Transport ( EST)は、クライアント証明書と関連する証明機関(CA) 証明書を取得する必要がある公開鍵インフラストラクチャ(PKI) クライアントを対象としたX.509証明書管理プロトコルを記述する暗号化プロトコルです。EST は RFC 7030 で説明されています。EST はSCEP の代替として提案されており、HTTPS スタックを既に備えているデバイスに実装するのが簡単です。EST はトランスポートとして HTTPS を使用し、多くのセキュリティ属性にTLSを活用します。EST は標準化された URL を記述し、 RFC 5785で成文化されたよく知られた Uniform Resource Identifiers (URI) 定義を使用します 。
オペレーション
EST には次の操作セットがあります。
使用例
EST の基本機能は使いやすいように設計されており、REST API ではありませんが、 OpenSSLやcURLなどの簡単なツールを使用して REST のような方法で使用できます。EST で指定された認証メカニズムの 1 つ (ユーザー名:パスワード) を使用して、事前に生成された PKCS#10証明書署名要求(device.b64 として保存) で初期登録を行う簡単なコマンドは次のとおりです。
curl -v --cacert ManagementCA.cacert.pem --user username:password --data @device.b64 -o device-p7.b64 -H "Content-Type: application/pkcs10" -H "Content-Transfer-Encoding: base64" https://hostname.tld/.well-known/est/simpleenroll
発行された証明書は、Base64 でエンコードされたPKCS#7メッセージとして返され、device-p7.b64 として保存されます。
参照
- 証明書管理プロトコル(CMP)
- CMS 経由の証明書管理(CMC)
- シンプル証明書登録プロトコル(SCEP)
- 自動証明書管理環境(ACME)
参考文献
- RFC 7030、公式仕様
実装
- ライブラリ libest は、EST のクライアントおよびサーバーの実装です。
- Bouncy Castle API は、Java 用の EST API ライブラリを提供します。
- DigiCert IoT Trust Manager は、EST のサーバー実装です。
- CAソフトウェアであるEJBCAはEST機能のサブセット[1]を実装している。
- Evertrust Horizon はRFC 7030 を実装しています。
- Entrust CA PKI は EST 機能をサポートします
- Sectigo 証明書マネージャーはRFC 7030 を実装します。
- strongSwan pki --est ツールは、 EST のクライアント実装です。
- ^ 「EJBCA - Java EE 認証局」。2019 年 6 月 7 日時点のオリジナルよりアーカイブ。2019 年 6 月 7 日閲覧。
