Mi a különbség .pfx
és tanúsítványfájlok?
.pfx
vagy .cert
terjesztjük az ügyfél hitelesítéséhez?
Megjegyzések
- Szintén [ 1 ] , [ 2 ] , [ 3 ]
Válasz
Két objektum létezik: a privát kulcs , ami a szerver tulajdonosa , titokban tartja és új SSL kapcsolatok fogadására használja; és a nyilvános kulcs , amely matematikailag kapcsolódik a magánkulcshoz, és „nyilvános” lesz: a kapcsolat kezdeti lépéseinek részeként minden ügyfélnek elküldik.
A tanúsítvány névlegesen a nyilvános kulcs tárolója. Tartalmazza a nyilvános kulcsot, a szerver nevét, néhány további információt a szerverről és egy aláírást, amelyet egy tanúsító hatóság (CA) számított ki. Amikor a szerver elküldi a nyilvános kulcsát egy kliensnek, valóban elküldi a tanúsítványát, néhány más tanúsítvánnyal együtt (a tanúsítvány, amely tartalmazza a tanúsítványt aláíró CA nyilvános kulcsát, és a CA tanúsítványát aláíró CA tanúsítványa) tanúsítványok és így tovább). A tanúsítványok lényegében nyilvános objektumok.
Vannak, akik a “tanúsítvány” kifejezést használják mind a tanúsítvány, mind a magánkulcs megjelölésére; ez gyakori zavart okozza. Én személy szerint ragaszkodom az a szigorú meghatározás, amelyhez a tanúsítvány csak a nyilvános kulcs aláírt tárolója.
A .pfx
fájl egy PKCS # 12 archívum : egy zsák, amely sok objektumot tartalmaz, opcionális jelszóvédelemmel; de általában egy PKCS # 12 archívum tartalmaz tanúsítványt (esetleg a CA tanúsítványok válogatásával) és a megfelelő privát kulcs.
Másrészt egy .cert
(vagy .cer
vagy
) fájl általában egyetlen tanúsítványt tartalmaz, egyedül és csomagolás nélkül (nincs magánkulcs, nincs jelszóvédelem, csak a tanúsítvány).
Megjegyzések
- Az ügyfél-hitelesítés során megköveteljük az ssl kliens tanúsítvány telepítését az ügyfél böngészőjére. Ez .pfx vagy .cert fájl?
- A tanúsítványok nyilvános adatok; mindenkinek vannak. De az ügyfél-hitelesítés arról szól, hogy az ügyfél olyat tegyen, amit csak amit az ügyfél megtehet; tehát az ügyfélnek tudnia kell valamit, ami nem nyilvános, és hogy ‘ a magánkulcs. Így az ügyfélnek rendelkeznie kell magánkulccsal a tanúsítvánnyal együtt; ha a kulcsot az ügyfél böngészőjéből hozták létre, akkor a várható beállítás az, hogy a tanúsítvánnyal együtt importálja azt az ügyfélbe. Ezért egy .pfx fájl.
- .pfx fájlt kaptam az IIS szerverről, ahová a tanúsítványom telepítve van. Ez az .pfx fájl, amelyet terjeszteni kell? Mivel a CA .cert fájlt adott a szerverre telepített kulcsokkal együtt.
- @ Xsecure123 nem; ‘ két forgatókönyv van itt – és Thomas csak az ügyfél-hitelesítésért válaszolt (ahol minden ügyfélnek megvan ‘ saját tanúsítványa igazolják saját személyazonosságukat). – Úgy hangzik, mintha ‘ valami mást csinálna – úgy hangzik, mintha ‘ önaláírt tanúsítványt használna az IIS-ben, és az ügyfelek nem bíznak benne. ‘ – Ebben az esetben meg kell adnia az ügyfeleknek egy .cer fájlt a szerverről. – mert az ügyfeleknek csak a nyilvános kulcsra van szükségük, hogy megbízhassanak a szerverben. – Ha magánkulcsuk is van, akkor megszemélyesíthetik a szervert, vagy visszafejthetik ‘ forgalmát, és ezt a ‘ s nem olyasmit, amire vágysz.
- @ BrainSlugs83: Mit értesz magáncert alatt. Thomas megemlítette, hogy a tanúsítványok nyilvános adatok. Tudnál részletezni?
Válasz
Tudom, hogy ez egy éves szál, de a jövő olvasói számára , amint azt a fentiekben említettük, nem, nem terjeszti a .pfx fájlt, mert ez a fájl tartalmazza a magánkulcsot. A tanúsítványt (amely nyilvános) kivonhatja és terjesztheti a .pfx fájlból az itt leírt módszerrel: https://stackoverflow.com/questions/403174/convert-pfx-to-cer
Megjegyzések
- Hol kell biztonságosan tárolni a pfx fájlt a szerveren? Nyilván nem akarna ‘ nem akarni egy másik alkalmazást a PFX fájljával, de én nem ‘ nem gondolom, hogy ‘ az alkalmazásommal sem akarja tárolni.Csak importálná a gép certkezelőjébe, és programozottan férne hozzá?
- A @Matt magánkulcs-kezelés önmagában egy egész téma. Néhány releváns válasz megtalálható itt és itt (utóbbi ‘ nem szigorúan vonatkoznak a PFX fájlokra, de mégis újszerűek). Magát a PFX fájlt nem kell ‘ tárolni a szerveren (pl. Ha ‘ az IIS7-et használja, akkor ‘ d importálja a PFX-t; ha nem, akkor ‘ d bontsa ki a cert & privát kulcsot a PFX-ből saját fájljaikba).
Válasz
Mi a különbség a .pfx és a .cert tanúsítványfájlok között?
A @Thomas Pornin által adott válasz nagyon jó.
Terjesztünk .pfx vagy .cert kliens hitelesítéshez?
Ez az alkalmazott folyamattól függ.
Egy külső kliens hitelesítésének tanúsítvánnyal történő létrehozásának tipikus folyamata a következő: 1) az ügyfél aszimmetrikus kulcspárt generál (nyilvános és magánkulcs); 2) az ügyfél generál egy tanúsítvány-aláírási kérelmet a nyilvános kulcshoz, és elküldi azt a szervernek; 3) a szerver aláírja a nyilvános kulcsot, és visszaadja ezt az aláírást (a ” tanúsítványt “) az ügyfélnek; 4) az ügyfél a magánkulcsot és ezt a tanúsítványt együtt tárolja kulcstárában. Most, amikor az ügyfél csatlakozik a kiszolgálóhoz, bemutatja a tanúsítványt, és hitelesíti az ügyfelet.
A fenti esetben egy ” .cert ” üzenetet visszaküldik az ügyfélnek.
Belsőleg sok szervezet végzi el ezt a folyamatot alkalmazottai számára. Ebben a helyzetben a következő fordul elő: Az informatikai munkatársak a tanúsítvány-aláírási kérelemmel együtt létrehozzák a nyilvános és a magánkulcsot egy alkalmazott számára. Ezután aláírják a nyilvános kulcsot (a saját tanúsítvány-jogosultságuk használatával), és elhelyezik a kapott tanúsítványt, a hozzá tartozó magánkulccsal és az összes köztes CA tanúsítvánnyal együtt (a ” tanúsítványlánc “), a felhasználó kulcstárában.
Ebben a forgatókönyvben egy ” .pfx ” (vagy ” .pem “) megfelelő lenne, mivel minden elemet tartalmazna az ügyfél hitelesítéséhez: a privát kulcs, a tanúsítvány és a tanúsítványlánc.
Az ” tanúsítvány automatikus regisztrációja ” keresése hogy automatizálja ezt a folyamatot vállalati felhasználói és eszközei számára.