Próbálok privát-nyilvános kulcspárokat létrehozni, és a nyilvános kulcsokat tanúsítvánnyá alakítani, amelyek hozzáadhatók a privát üzletembe.
Privát & nyilvános kulcs előállításához: openssl rsa -in private.pem -outform PEM -pubout -out public_key.pem
Most én megpróbálom ezt tanúsítvánnyá konvertálni:
openssl x509 -outform der -in public_key.pem -out public.cer
De hibát kapok:
7962:error:0906D06C:PEM routines:PEM_read_bio:no start line:/BuildRoot/Library/Caches/com.apple.xbs/Sources/OpenSSL098/OpenSSL098-64.30.2/src/crypto/pem/pem_lib.c:648:Expecting: TRUSTED CERTIFICATE
Minden oktatóanyag azt mutatja, hogy a pem-et crt-vé kell konvertálnom, mielőtt hozzáadnék egy truststore-hoz.
Válasz
Nem lehet ” “nyilvános kulcs átalakítása tanúsítvánnyá. A tanúsítvány tartalmazza a nyilvános kulcsot, de tartalmaz további információkat, például a tárgyat, a kibocsátót, amikor a tanúsítvány érvényes stb. És a tanúsítványt a kibocsátó aláírja. Ezért inkább egy tanúsítvány-aláírási kérelem (CSR) létrehozására lenne szükség, amely tartalmazza a nyilvános kulcsot, de tartalmazza az összes további információt is. Ezt a CSR-t ezt követően egy tanúsító hatóságnak (CA) kell aláírnia, amely ezt követően a tanúsítványt eredményezi.
Egy egyszerű, önaláírt tanúsítvány létrehozásához, amelyet nem bíz meg egyetlen böngésző sem, lásd: Hogyan lehet önaláírt tanúsítványt létrehozni openssl-lel? .
Megjegyzések
- Tehát ebben a példában: openssl req -x509 -newkey rsa: 4096 -keyout key.pem -out cert.pem -days A 365 key.pem magán- és nyilvános kulcsot egyaránt tartalmaz?
- @ user1692342: Nem ' nem vagyok biztos benne, hogy a megjegyzésben szereplő kérdés hogyan viszonyul az eredeti kérdéshez. De: key.pem az a privát kulcs, amely tartalmazza a nyilvános kulcsot , és a nyilvános kulcs is szerepel a cert.pem fájlban.
Válasz
Nem lehet nyilvános kulcsot tanúsítvánnyá konvertálni.
Az eredeti parancsok nem fognak működni, mivel a PEM kódolás / fájl formátum várhatóan tartalmazza az alábbiak szerint titkosított tanúsítvány szöveget:
—– TANÚSÍTVÁNY KEZDÉSE —–
A tanúsítvány adatai itt
—– VÉGE TANÚSÍTVÁNY —–
Ezért, ha megtekinti az eredeti .PEM fájlt, és valami mást (például BEGIN RSA …) lát, akkor az helytelen.
Most a szál címének megfelelően egy PEM-et CRT-fájlformátumba kívánnak konvertálni . Vegye figyelembe, hogy az x509 tanúsítványok két kódolásban lehetnek – DER és PEM. Ezenkívül a PEM lehet .CRT, .CER és .PEM formátumban is.
Ezért ha ezt a hibát látja, akkor arra is van esély, hogy a DER kódolású tanúsítványokat PEM kódolású tanúsítványként kezeli. A oldalon található utasításokat követve megpróbálhatja megnézni, hogy valójában DER-e van-e kódolva.