Automatic Certificate Management Environment

ACME (ang. Automatic Certificate Management Environment) – protokół komunikacyjny służący do automatyzacji interakcji pomiędzy urzędami certyfikacji, a serwerami ich użytkowników, umożliwiający automatyczne wdrażanie infrastruktury kluczy publicznych przy bardzo niskich kosztach[1][2]. Protokół został zaprojektowany przez Internet Security Research Group (ISRG) dla swojej usługi Let’s Encrypt[1].

Logo ACME

Protokół, oparty na przekazywaniu wiadomości w formacie JSON przez HTTPS[2][3], został opublikowany jako standard internetowy w RFC 8555[4].

Implementacje edytuj

ISRG opracowało wolne i otwarte implementacje ACME: certbot to oparte na Pythonie oprogramowanie do zarządzania certyfikatami serwera przy użyciu protokołu ACME[5][6][7], a boulder to napisana w Go implementacja urzędu certyfikacji[8].

Wersje API edytuj

ACME v1 edytuj

Specyfikacja API v1 została opublikowana 12 kwietnia 2016 roku i obsługuje wydawanie certyfikatów dla w pełni kwalifikowanych nazw domen, takich jak example.com lub cluster.example.com, za to nie obsługuje certyfikatów wieloznacznch (ang. wildcard), takich jak *.example.com. Obsługa API V1 została wyłączona przez Let’s Encrypt 1 czerwca 2021 roku[9].

ACME v2 edytuj

API v2 zostało opublikowane 13 marca 2018 roku i nie jest wstecznie kompatybilne z v1. Wersja 2 obsługuje domeny wieloznaczne dzięki czemu wiele subdomen np. https://cluster01.example.com, https://cluster02.example.com, https://example.com, może używać protokółu TLS w sieciach prywatnych, w ramach jednej domeny, przy użyciu jednego, wspólnego certyfikatu[10]. Wystąpienie o taki certyfikat wymaga modyfikacji rekordu TXT domeny, co weryfikuje kontrolę nad domeną.

Przypisy edytuj

  1. a b Steven Vaughan-Nichols, Securing the web once and for all: The Let’s Encrypt Project [online], ZDNet [dostęp 2022-03-22] (ang.).
  2. a b Automatic Certificate Management Environment (ACME), IETF ACME Working Group, 20 lutego 2022 [dostęp 2022-03-22].
  3. EFF, Others Plan to Make Encrypting the Web Easier in 2015 [online], threatpost.com [dostęp 2022-03-22] (ang.).
  4. R. Barnes i inni, Automatic Certificate Management Environment (ACME), RFC 8555, IETF, marzec 2019, DOI10.17487/RFC8555, ISSN 2070-1721, OCLC 943595667 (ang.).
  5. Certbot [online], certbot-prod.eff.org [dostęp 2022-03-22].
  6. certbot/certbot, certbot, 22 marca 2022 [dostęp 2022-03-22].
  7. Announcing Certbot: EFF’s Client for Let’s Encrypt [LWN.net] [online], lwn.net [dostęp 2022-03-22].
  8. Boulder – An ACME CA, Let’s Encrypt, 22 marca 2022 [dostęp 2022-03-22].
  9. End of Life Plan for ACMEv1 [online], Let’s Encrypt Community Support, 1 czerwca 2021 [dostęp 2022-03-22] (ang.).
  10. ACME v2 API Endpoint Coming January 2018 – Let’s Encrypt [online], letsencrypt.org [dostęp 2022-03-22] (ang.).