Puncte:0

Windows nu creează atribuirea „Container cheie” atunci când adaugă certificat legat de Cavium (AWS CloudHSMv2)

drapel cn

Am două sisteme Windows legate de AWS CloudHSM v2 (cavium HSM). Pe unul, am generat CSR-ul și accept/adaugat certificatul achiziționat cu acel CSR. Pot semna și cheia privată este extrasă corect din HSM prin intermediul containerului de chei.

Cealaltă semnare este sistemul meu de semnare de producție și funcționează corect cu certificatul existent, dar când încerc să adaug noul certificat, nu Container cheie este configurat. Sunt obișnuit să am nevoie să rulez procesul de reparare, dar în acest caz nu am niciun ID pentru a furniza fișierul.

  1. Autentifica „\Program Files\Amazon\CloudHSM\tools\set_cloudhsm_credentials.exe” --user REDACTAT --parola „...”
  2. Adăugați certificatul certutil -addstore my-new-cert.crt
  3. Eliminați detaliile magazinului certutil -store my > cert_store_details.txt
    Număr de serie: EXTERGAT
    Emitent: CN=DigiCert Trusted G4 Code Signing RSA4096 SHA384 2021 CA1, O=DigiCert, Inc., C=US
     Nu înainte de: 25.01.2022 ora 00:00
     NotAfter: 25.01.2023 23:59
    Subiect: CN=EXPURAT, C=US, NUMĂR DE SERIE=EXPURAT, OID.1.3.6.1.4.1.311.60.2.1.2=Delaware, OID.1.3.6.1.4.1.311.60.2.1.3=US, OID.2.5. 4.15=Organizare privată
    Certificat non-rădăcină
    Cert Hash(sha1): EXPURAT
    Nicio informație cheie despre furnizor
    Nu se găsesc certificatul și cheia privată pentru decriptare.

În mod normal, aș crea un repair.txt așa cu Container cheie id între = și & pe Container cu toate acestea, nu am una dintre acestea, așa că nu am noroc

        [Proprietăți]
        11 = "" ; Adăugați proprietatea nume prietenos
        2 = "{text}" ; Adăugați proprietatea informații despre furnizorul cheie
        _continue_="Container="&"
        _continue_="Provider=Cavium Key Storage Provider&"
        _continue_="Flags=0&"
        _continue_="KeySpec=2"    

Dacă fac doar o reparație certutil -reparați-mi „EXPURAT” apoi mi se cere un smart card. Ah, și această mașină este un Windows Core 2016 (deci nu există UI sau UI limitat).

Puncte:0
drapel cn

Ok, iată răspunsul de la asistența AWS - sperăm că îl vor adăuga în documentele lor

  1. Determinați mânerele fișierelor CloudHSM pentru cheia privată și publică (puteți face acest lucru eliminând modulul din certificat și folosind instrumentele hsm pentru a căuta cheia. Cu toate acestea, am raportat mânerele înainte de a-mi genera CSR-ul și după, astfel încât să le pot adăuga la documentația mea sigură - așa că nu a trebuit să fac asta

  2. Creați un container KSP

C:\Program Files\Amazon\CloudHSM>import_key.exe -din HSM 
  -privateKeyHandle <mâner cheie privată> -publicKeyHandle <mâner cheie publică>

Aceasta ar trebui să scoată ceva similar cu: „A reprezentat 1 pereche de taste în Cavium Key Storage Provider.”

Dacă primiți un mesaj de eroare „n3fips_password is not set” asigurați-vă că ați setat acreditările de conectare pentru HSM pe sistemul dumneavoastră, așa cum este detaliat în [4] de mai jos.

  1. Rulați următoarea comandă pentru a verifica că noul container de chei se află în furnizorul dvs. de stocare a cheilor:
C:\Program Files\Amazon\CloudHSM>certutil -key -csp "Cavium Key Storage provider"

„Cavius ​​Key Storage Provider” s-ar putea să nu fie numele dat containerului pentru chei. Acest nume este preluat din rezultatul generat de la primul pas.

Dacă containerul a fost creat cu succes, rezultatul ar trebui să fie similar cu următorul:

Furnizor Cavium Key Storage:
  <numele containerului cheie>
  RSA


CertUtil: comanda -key a fost finalizată cu succes.
  1. Creați un repair.txt astfel încât să putem actualiza magazinul de certificate pentru a utiliza containerul
[Proprietăți]
11 = "" ; Adăugați proprietatea nume prietenos
2 = "{text}" ; Adăugați proprietatea informații despre furnizorul cheie
_continue_="Container=<key container name>&"
_continue_="Provider=Cavium Key Storage Provider&"
_continue_="Flags=0&"
_continue_="KeySpec=2"
  1. Asigurați-vă că daemonul client CloudHSM încă rulează și utilizați certutil verb -repairstore pentru a actualiza numărul de serie al certificatului. Această comandă ar arăta ceva similar cu următorul:
certutil -repairstore my <certificat serial number> repair.txt
  1. După repararea depozitului de certificate, rulați următoarea comandă pentru a verifica dacă certificatul a fost asociat cu succes cu noul container de chei:
certutil -store my

Te vei aștepta la așa ceva

================ Certificat 0 ================
Număr de serie: <număr de serie al certificatului>
Emitent: CN=MYRootCA
 Nu înainte de: 05.02.2020 13:38
 NotAfter: 05.02.2021 13:48
Subiect: CN=www.mydomain.com, OU=Managementul certificatelor, O=Tehnologia informației, L=Houston, S=Texas, C=SUA
Certificat non-rădăcină
Cert Hash(sha1): 5a...24
  Container cheie = CNGRSAPriv-...d
  Furnizor = Furnizor de stocare a cheilor Cavium
Cheia privată NU este exportabilă
Testul de criptare a trecut
CertUtil: comanda -store a fost finalizată cu succes.

Dacă Container cheie = CNGRSAPriv-...d arată containerul potrivit, atunci știți că relația cert KSP este bună

Dacă vezi Cheia privată NU este exportabilă și Testul de criptare a trecut știți că utilizați mânerele de fișier curent.

Dacă utilizați signtool, va trebui să adăugați /sm pentru a-l forța să folosească magazinul de mașini și nu magazinul utilizatorului, deoarece procesul de mai sus generează containerul legat de depozitul de mașini. Nu există nicio opțiune în jurul asta.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.