Wymagania programu — zaufany program główny firmy MicrosoftProgram Requirements - Microsoft Trusted Root Program

1. Wprowadzenie1. Introduction

Program certyfikatów głównych firmy Microsoft obsługuje dystrybucję certyfikatów głównych, umożliwiając klientom ufanie produktom Windows.The Microsoft Root Certificate Program supports the distribution of root certificates, enabling customers to trust Windows products. Na tej stronie opisano ogólne i techniczne wymagania programu.This page describes the Program's general and technical requirements.

Uwaga

2. Dalsze wymagania programu2. Continuing Program Requirements

Wymagania dotyczące inspekcjiAudit Requirements

  1. Przed przeprowadzeniem komercyjnej operacji, a następnie corocznie, uczestnicy programu muszą zapewnić firmie Microsoft dowód kwalifikowaną kontrolę (patrz https://aka.ms/auditreqs ) dla każdego głównego, nieograniczonego podrzędnego urzędu certyfikacji i certyfikatu z podpisem własnym.Program Participants must provide to Microsoft evidence of a Qualified Audit (see https://aka.ms/auditreqs) for each root, unconstrained subordinate CA, , and cross-signed certificate, before conducting commercial operations and thereafter on an annual basis.
  2. Uczestnicy programu muszą założyć odpowiedzialność, aby upewnić się, że wszystkie nieograniczone podrzędne urzędy certyfikacji i certyfikaty z podpisem własnym spełniają wymagania dotyczące inspekcji programu.Program Participants must assume responsibility to ensure that all unconstrained subordinate CAs and cross-signed certificates meet the Program Audit Requirements.
  3. Urzędy certyfikacji muszą publicznie ujawniać wszystkie raporty inspekcji dla nieograniczonego podrzędnego urzędu certyfikacji.CAs must publicly disclose all audit reports for unconstrained subordinate CAs.

Wymagania dotyczące komunikacji i ujawnianiaCommunication and Disclosure Requirements

  1. Uczestnicy programu muszą dostarczyć firmie Microsoft tożsamości co najmniej dwóch "zaufanych agentów", które będą działać jako przedstawiciele programu i jeden ogólny alias e-mail.Program Participants must provide Microsoft the identities of at least two "Trusted Agents" to serve as representatives to the Program and one general email alias. Uczestnicy programu muszą poinformować firmę Microsoft o usunięciu lub dodaniu personelu jako zaufanego agenta.Program Participants must inform Microsoft upon the removal or addition of personnel as a Trusted Agent. Uczestnicy programu zgadzają się otrzymywać powiadomienia pocztą e-mail i muszą udzielić firmie Microsoft adresu e-mail, aby otrzymywać oficjalne powiadomienia.Program Participants agree to receive notices by e-mail and must provide Microsoft with an email address to receive official notices. Uczestnicy programu muszą wyrazić zgodę na powiadomienie, gdy firma Microsoft wyśle wiadomość e-mail lub oficjalną literę.Program Participants must agree that notice is effective when Microsoft sends an email or official letter. Co najmniej jeden z podanych kontaktów lub aliasów powinien mieć monitorowany kanał komunikacyjny 24/7 dla żądań odwołania lub innych sytuacji związanych z zarządzaniem zdarzeniami.At least one of the contacts or aliases provided should be a 24/7 monitored communications channel for revocation requests or other incident management situations.

  2. Uczestnik programu musi ujawnić pełną hierarchię PKI (nieograniczonego podrzędnego urzędu certyfikacji, niepodpisane certyfikaty główne, podrzędne urzędy certyfikacji, rozszerzeń EKU, ograniczenia certyfikatów) do firmy Microsoft rocznie, łącznie z certyfikatami wystawionymi dla urzędów certyfikacji obsługiwanymi przez zewnętrzne strony trzecie w ramach CCADB.The Program Participant must disclose its full PKI hierarchy (non-limited subordinate CA, cross-signed non-enrolled root CAs, subordinate CAs, EKUs, certificate constraints) to Microsoft on an annual basis, including certificates issued to CAs operated by external third parties within the CCADB. Uczestnicy programu muszą zachować dokładne informacje w CCADB, gdy wystąpią zmiany.Program Participants must keep this information accurate in the CCADB when changes occur. Jeśli podrzędny urząd certyfikacji nie jest publicznie ujawniany ani objęty inspekcją, musi być ograniczony do domeny.If a subordinate CA is not publicly disclosed or audited, it must be domain-constrained.

  3. Uczestnicy programu muszą poinformować firmę Microsoft za pośrednictwem poczty e-mail co najmniej 120 dni przed przekazaniem własności zarejestrowanego głównego lub podrzędnego urzędu certyfikacji łańcucha do zarejestrowanego katalogu głównego w innej jednostce lub osobie.Program Participants must inform Microsoft via email at least 120 days before transferring ownership of enrolled root or subordinate CA that chains to an enrolled root to another entity or person.

  4. Kod przyczyny musi być uwzględniony w odwołaniach dla certyfikatów pośrednich.Reason Code must be included in revocations for intermediate certificates. Urzędy certyfikacji muszą aktualizować CCADB podczas odwoływania certyfikatów pośrednich w ciągu 30 dni.CAs must update the CCADB when revoking any intermediate certificates within 30 days.

  5. Uczestnicy programu zgadzają się, że firma Microsoft może skontaktować się z klientami, którzy mogą mieć istotny wpływ na usunięcie głównego urzędu certyfikacji z programu.Program Participants agree that Microsoft may contact customers that Microsoft believes may be substantially impacted by the pending removal of a root CA from the Program.

Inne wymaganiaOther Requirements

  1. Komercyjne urzędy certyfikacji nie mogą rejestrować głównego urzędu certyfikacji w programie, który jest przeznaczony głównie do zaufania wewnętrznie w organizacji (tj. urzędów certyfikacji przedsiębiorstwa).Commercial CAs may not enroll a root CA into the Program that is intended to be primarily trusted internally within an organization (i.e. Enterprise CAs).

  2. Jeśli urząd certyfikacji używa podwykonawcy do działania dowolnego aspektu swojej firmy, urząd certyfikacji przyjmie odpowiedzialność za operacje biznesowe podwykonawcy.If a CA uses a subcontractor to operate any aspect of its business, the CA will assume responsibility for the subcontractor's business operations.

  3. Jeśli firma Microsoft, w ramach własnego uznania, identyfikuje certyfikat, którego użycie lub atrybuty są określone jako sprzeczne z celami zaufanego programu głównego, firma Microsoft powiadomi odpowiedzialny urząd certyfikacji i poprosić o odwołanie certyfikatu.If Microsoft, in its sole discretion, identifies a certificate whose usage or attributes are determined to be contrary to the objectives of the Trusted Root Program, Microsoft will notify the responsible CA and request that it revoke the certificate. Urząd certyfikacji musi odwołać certyfikat lub zażądać wyjątku od firmy Microsoft w ciągu 24 godzin od otrzymania powiadomienia firmy Microsoft.The CA must either revoke the certificate or request an exception from Microsoft within 24 hours of receiving Microsoft's notice. Firma Microsoft sprawdzi przesłany materiał i poinformuje urząd certyfikacji o swej ostatecznej decyzji o udzieleniu lub odmowie wyjątku od samego uznania.Microsoft will review submitted material and inform the CA of its final decision to grant or deny the exception at its sole discretion. W przypadku, gdy firma Microsoft nie udziela wyjątku, urząd certyfikacji musi odwołać certyfikat w ciągu 24 godzin od odmowy wyjątku.In the event that Microsoft does not grant the exception, the CA must revoke the certificate within 24 hours of the exception being denied.


3. wymagania techniczne programu3. Program Technical Requirements

Wszystkie urzędy certyfikacji w programie muszą być zgodne z wymaganiami technicznymi programu.All CAs in the Program must comply with the Program Technical Requirements. Jeśli firma Microsoft ustali, że urząd certyfikacji nie spełnia wymagań wymienionych poniżej, firma Microsoft wykryje ten urząd certyfikacji z programu.If Microsoft determines that a CA is not in compliance with the below requirements, Microsoft will exclude that CA from the Program.

A.A. Wymagania główneRoot Requirements

  1. Certyfikaty główne muszą mieć certyfikaty x. 509 v3.Root certificates must be x.509 v3 certificates.
    1. Atrybut CN musi identyfikować wydawcę i musi być unikatowy.The CN attribute must identify the publisher and must be unique.
    2. Atrybut CN musi znajdować się w języku, który jest odpowiedni dla rynku urzędu certyfikacji i możliwy do odczytania przez typowego klienta na tym rynku.The CN attribute must be in a language that is appropriate for the CA's market and readable by a typical customer in that market.
    3. Rozszerzenie podstawowych warunków ograniczających: musi być cA = true.Basic Constraints extension: must be cA=true.
    4. Rozszerzenie użycie klucza musi być obecne i musi być oznaczone jako krytyczne.Key Usage extension MUST be present and MUST be marked critical. NALEŻY ustawić pozycje bitowe dla KeyCertSign i Crlsign bit.Bit positions for KeyCertSign and cRLSign MUST be set. Jeśli klucz prywatny głównego urzędu certyfikacji jest używany do podpisywania odpowiedzi protokołu OCSP, należy ustawić bit bity digitalSignature.If the Root CA Private Key is used for signing OCSP responses, then the digitalSignature bit MUST be set.
      • Rozmiary kluczy głównych muszą spełniać wymagania opisane w temacie "wymagania dotyczące kluczy".Root Key Sizes must meet the requirements detailed in "Key Requirements".
  2. Certyfikaty, które mają zostać dodane do zaufanego magazynu głównego, muszą być certyfikatami głównymi z podpisem własnym.Certificates to be added to the Trusted Root Store MUST be self-signed root certificates.
  3. Nowo Minted główne urzędy certyfikacji muszą być ważne przez co najmniej 8 lat i maksymalnie 25 lat od daty przesłania.Newly minted Root CAs must be valid for a minimum of 8 years, and a maximum of 25 years, from the date of submission.
  4. Uczestniczące główne urzędy certyfikacji mogą nie wydać nowych 1024-bitowych certyfikatów RSA z korzeni objętych tymi wymaganiami.Participating Root CAs may not issue new 1024-bit RSA certificates from roots covered by these requirements.
  5. Wszystkie certyfikaty jednostki końcowej muszą zawierać rozszerzenie AIA z prawidłowym adresem URL protokołu OCSP.All end-entity certificates must contain an AIA extension with a valid OCSP URL. Te certyfikaty mogą również zawierać rozszerzenie CDP zawierające prawidłowy adres URL listy CRL.These certificates may also contain a CDP extension that contains a valid CRL URL. Wszystkie inne typy certyfikatów muszą zawierać rozszerzenie AIA z adresem URL protokołu OCSP lub rozszerzeniem CDP z prawidłowym adresem URL listy CRLAll other certificate types must contain either an AIA extension with an OCSP URL or a CDP extension with a valid CRL URL
  6. Klucze prywatne i nazwy podmiotów muszą być unikatowe na certyfikat główny. ponowne użycie kluczy prywatnych lub nazw podmiotów w kolejnych certyfikatach głównych przez ten sam urząd certyfikacji może spowodować problemy z nieoczekiwanym łańcuchem certyfikatu.Private Keys and subject names must be unique per root certificate; reuse of private keys or subject names in subsequent root certificates by the same CA may result in unexpected certificate chaining issues. Urzędy certyfikacji muszą generować nowy klucz i stosować nową nazwę podmiotu podczas generowania nowego certyfikatu głównego przed dystrybucją przez firmę Microsoft.CAs must generate a new key and apply a new subject name when generating a new root certificate prior to distribution by Microsoft.
  7. Urzędy certyfikacji dla instytucji rządowych muszą ograniczyć uwierzytelnianie serwera do domen najwyższego poziomu wystawionych przez rządy i mogą wydawać inne certyfikaty wyłącznie dla kodów krajów ISO3166, że kraj ma suwerenną kontrolę (patrz https://aka.ms/auditreqs sekcja III w przypadku definicji "urzędu certyfikacji rządu").Government CAs must restrict server authentication to government-issued top level domains and may only issue other certificates to the ISO3166 country codes that the country has sovereign control over (see https://aka.ms/auditreqs section III for the definition of a "Government CA"). Te TLDsy wystawione przez rządy są określane w ramach poszczególnych umów urzędu certyfikacji.These government-issued TLDs are referred to in each CA's respective contract.
  8. Wystawianie certyfikatów urzędu certyfikacji łańcucha do uczestniczącego głównego urzędu certyfikacji musi oddzielić uwierzytelnianie serwera, S/MIME, podpisywanie kodu i używanie sygnatury czasowej.Issuing CA certificates that chain to a participating Root CA must separate Server Authentication, S/MIME, Code Signing, and Time Stamping uses. Oznacza to, że pojedynczy urząd wystawiający certyfikaty nie może łączyć uwierzytelniania z serwerem przy użyciu protokołu S/MIME, podpisywania kodu lub użycia rozszerzenia EKU sygnatury czasowej.This means that a single Issuing CA must not combine server authentication with S/MIME, code signing or time stamping EKU. Dla każdego przypadku użycia należy użyć oddzielnego pośrednika.A separate intermediate must be used for each use case.
  9. Certyfikaty jednostki końcowej muszą spełniać wymagania dotyczące typu algorytmu i rozmiaru klucza dla certyfikatów subskrybentów wymienionych w załączniku A do planu bazowego forum dotyczącego plików CAB, które znajdują się w https://cabforum.org/baseline-requirements-documents/ .End-entity certificates must meet the requirements for algorithm type and key size for Subscriber certificates listed in Appendix A of the CAB Forum Baseline Requirements located at https://cabforum.org/baseline-requirements-documents/.
  10. Urzędy certyfikacji muszą deklarować jeden z następujących identyfikatorów OID zasad w certyfikacie końcowym rozszerzenia zasad certyfikatów:CAs must declare one of the following policy OIDs in its Certificate Policy extension end-entity certificate:
    1. 2.23.140.1.2.1 DVDV 2.23.140.1.2.1
    2. OV 2.23.140.1.2.2OV 2.23.140.1.2.2
    3. 2.23.140.1.1 EV.EV 2.23.140.1.1.
    4. 2.23.140.1.2.3 IVIV 2.23.140.1.2.3
    5. 2.23.140.1.3 podpisywanie kodu EVEV Code Signing 2.23.140.1.3
    6. Podpisywanie kodu bez ww 2.23.140.1.4.1Non-EV Code Signing 2.23.140.1.4.1
  11. Certyfikaty jednostek końcowych, które zawierają rozszerzenie podstawowych warunków ograniczania zgodnie z IETF RFC 5280, muszą mieć Pole cA o wartości FALSE, a pole pathLenConstraint musi być nieobecne.End-entity certificates that include a Basic Constraints extension in accordance with IETF RFC 5280 must have the cA field set to FALSE and the pathLenConstraint field must be absent.
  12. Urząd certyfikacji musi technicznie ograniczyć obiekt odpowiadający protokołu OCSP w taki sposób, że jedynym dozwolonym rozszerzeniem EKU jest podpisywanie protokołu OCSP.A CA must technically constrain an OCSP responder such that the only EKU allowed is OCSP Signing.
  13. Urząd certyfikacji musi mieć możliwość odwołania certyfikatu do określonej daty zgodnie z żądaniem firmy Microsoft.A CA must be able to revoke a certificate to a specific date as requested by Microsoft.

B.B. Wymagania dotyczące podpisuSignature Requirements

AlgorytmAlgorithm Wszystkie zastosowania z wyjątkiem podpisywania kodu i sygnatury czasowejAll Uses Except for Code Signing and Time Stamping Użycie podpisywania kodu i sygnatury czasowejCode Signing and Time Stamping Use
Algorytmy szyfrowaneDigest Algorithms ALGORYTMU SHA2 (SHA256, SHA384, SHA512)SHA2 (SHA256, SHA384, SHA512) ALGORYTMU SHA2 (SHA256, SHA384, SHA512)SHA2 (SHA256, SHA384, SHA512)
RSARSA 20482048 4096 (tylko nowe katalogi główne)4096 (New roots only)
ECC/ECDSAECC / ECDSA NIST P-256, P-384, P-521NIST P-256, P-384, P-521 NIST P-256, P-384, P-521NIST P-256, P-384, P-521

C.C. Wymagania dotyczące odwołaniaRevocation Requirements

  1. Urząd certyfikacji musi mieć udokumentowane zasady odwoływania i musi mieć możliwość odwoływania wszelkich problemów związanych z certyfikatem.The CA must have a documented revocation policy and must have the ability to revoke any certificate it issues.
  2. Urzędy certyfikacji, które wystawiają certyfikaty uwierzytelniania serwera, muszą obsługiwać następujące wymagania dotyczące obiektu odpowiadającego protokołu OCSP:CAs that issue Server Authentication certificates must support the following OCSP responder requirements:
    1. Minimalna ważność: osiem (8) godzin; Maksymalna ważność wynosząca siedem (7) dni; lubMinimum validity of eight (8) hours; Maximum validity of seven (7) days; and
    2. Następna aktualizacja musi być dostępna co najmniej osiem (8) godzin przed upływem bieżącego okresu.The next update must be available at least eight (8) hours before the current period expires. Jeśli ważność jest większa niż 16 godzin, Następna aktualizacja musi być dostępna o godzinie 1/2 okresu ważności.If the validity is more than 16 hours, then the next update must be available at ½ of the validity period.
  3. Wszystkie certyfikaty wystawiane z głównego urzędu certyfikacji muszą obsługiwać rozszerzenie punktu dystrybucji listy CRL i/lub AIA zawierające adres URL odpowiedzi protokołu OCSP.All certificates issued from a root CA must support either the CRL distribution point extension and/or AIA containing an OCSP responder URL.
  4. Urząd certyfikacji nie może wystawiać certyfikatów jednostki końcowej przy użyciu certyfikatu głównego.The CA must not use the root certificate to issue end-entity certificates.
  5. Jeśli urząd certyfikacji wystawia certyfikaty podpisywania kodu, musi użyć urzędu sygnatury czasowej zgodnego ze standardem RFC 3161, "Internet X. 509, infrastruktura kluczy publicznych Time-Stamp Protocol (TSP)".If a CA issues Code Signing certificates, it must use a Time Stamp Authority that complies with RFC 3161, "Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)."

D.D. Wymagania dotyczące certyfikatu głównego podpisywania koduCode Signing Root Certificate Requirements

  1. Certyfikaty główne, które obsługują użycie podpisywania kodu, mogą zostać usunięte z dystrybucji przez program 10 lat od daty dystrybucji certyfikatu głównego przerzucenia lub wcześniej, jeśli jest to wymagane przez urząd certyfikacji.Root certificates that support code signing use may be removed from distribution by the Program 10 years from the date of distribution of a replacement rollover root certificate or sooner, if requested by the CA.
  2. Certyfikaty główne, które pozostają w dystrybucji do obsługi tylko podpisywania kodu poza okres istnienia zabezpieczeń algorytmu (np. RSA 1024 = 2014, RSA 2048 = 2030) mogą być ustawione na wartość "Disable" w systemie operacyjnym Windows 10.Root certificates that remain in distribution to support only code signing use beyond their algorithm security lifetime (e.g. RSA 1024 = 2014, RSA 2048 = 2030) may be set to 'disable' in the Windows 10 OS.

E.E. Wymagania EKUEKU Requirements

  1. Urzędy certyfikacji muszą zapewnić biznesowe uzasadnienie dla wszystkich rozszerzeń EKU przypisanych do ich certyfikatu głównego.CAs must provide a business justification for all of the EKUs assigned to their root certificate. Uzasadnienie może być w formie publicznego dowodu na bieżącą działalność wystawiania certyfikatów typu lub typów lub plan biznesowy przedstawiający zamiar wystawienia tych certyfikatów w bliskim czasie (w ciągu roku od dystrybucji certyfikatu głównego przez program).Justification may be in the form of public evidence of a current business of issuing certificates of a type or types, or a business plan demonstrating an intention to issue those certificates in the near term (within one year of root certificate distribution by the Program).

  2. Firma Microsoft będzie włączać tylko następujące rozszerzeń EKU:Microsoft will only enable the following EKUs:

    1. Uwierzytelnianie serwera = 1.3.6.1.5.5.7.3.1Server Authentication =1.3.6.1.5.5.7.3.1
    2. Uwierzytelnianie klienta = 1.3.6.1.5.5.7.3.2Client Authentication =1.3.6.1.5.5.7.3.2
    3. Bezpieczna poczta E-mail EKU = 1.3.6.1.5.5.7.3.4Secure E-mail EKU=1.3.6.1.5.5.7.3.4
    4. Wartość EKU sygnatur czasowych = 1.3.6.1.5.5.7.3.8Time stamping EKU=1.3.6.1.5.5.7.3.8
    5. Rozszerzenie EKU podpisywania dokumentu = 1.3.6.1.4.1.311.10.3.12Document Signing EKU=1.3.6.1.4.1.311.10.3.12
    • To rozszerzenie EKU służy do podpisywania dokumentów w pakiecie Office.This EKU is used for signing documents within Office. Nie jest to wymagane do innych celów podpisywania dokumentu.It is not required for other document signing uses.

F.F. Wymagania dotyczące podpisywania kodu w trybie jądra systemu Windows 10 (KMCS)Windows 10 Kernel Mode Code Signing (KMCS) Requirements

System Windows 10 ma podwyższone wymagania dotyczące sprawdzania poprawności sterowników trybu jądra.Windows 10 has heightened requirements to validate kernel-mode drivers. Sterowniki muszą być podpisane przez firmę Microsoft i partnera programu przy użyciu wymagań dotyczących rozszerzonej weryfikacji.Drivers must be signed by both Microsoft and a Program partner using Extended Validation requirements. Wszyscy deweloperzy, którzy chcą mieć sterowniki trybu jądra zawarte w systemie Windows, muszą postępować zgodnie z procedurami opisanymi przez zespół deweloperów sprzętu firmy Microsoft.All developers who wish to have their kernel-mode drivers included in Windows must follow the procedures outlined by the Microsoft Hardware Development Team. Dokumentację programu można znaleźć tutajProgram documentation can be found here