Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: Kontraband 04. 02. 2016, 15:04:21

Název: Formát certifikátu X509
Přispěvatel: Kontraband 04. 02. 2016, 15:04:21
Rad by som sa spytal, ci neviete kde najdem strukturu ako vyzera format X509 certifikatu? V aplikacii mam pole bytov, ktore predstavuje dany certifikat. vo windows 10 sa neda pouzivat trieda x509certificate, ale iba trieda Certificate. A potreboval by som metodu na ziskanie Public Key, ale ta trieda ju neobsahuje. rozmyslam, ze si kluc vyparsujem z pola, ale nenasiel som strukturu, resp. neviem od akej pozicie zacina a kde konci public key.
za kazdu radu budem rad.
Název: Re:Certifikat X509
Přispěvatel: Jan Vostrý 04. 02. 2016, 15:16:29
RFC5280
Název: Re:Certifikat X509
Přispěvatel: Filip Jirsák 04. 02. 2016, 16:02:15
Třídu x509certificate určitě nepoužíváte ve Window, ale v nějakém programovacím jazyce a ta třída je z nějaké knihovny. Když prozradíte, o co se jedná, možná vám někdo dokáže poradit. Jinak X509 certifikáty se většinou ukládají v ASN.1 strukturách, a to na parsování není nic jednoduchého. Rozhodně tam nenajdete veřejný klíč tak, že by začínal na nějaké pozici a nemusel jste se starat o to, co je okolo.
Název: Re:Certifikat X509
Přispěvatel: dajo007 04. 02. 2016, 16:33:06
openssl asn1parse
Název: Re:Formát certifikátu X509
Přispěvatel: Kontraband 04. 02. 2016, 21:33:31
pouzivame .NET/C#. v novej technologii universal windows platform nie je trieda X509Certificate, iba trieda Certificate a ta nepouziva metodu GetPublicKey(). Nemam znalosti o strukture X509, ale myslel som si, ze to bude napr. ako pri TCP pakete, ze sa bude dat posuvat po bytoch.
Název: Re:Formát certifikátu X509
Přispěvatel: Filip Jirsák 05. 02. 2016, 07:08:26
pouzivame .NET/C#. v novej technologii universal windows platform nie je trieda X509Certificate, iba trieda Certificate a ta nepouziva metodu GetPublicKey().
Určitě to nějak musí jít, možná se nová třída jmenuje jinak. To opravdu není k tomu, aby si to každý programoval znovu sám.

Nemam znalosti o strukture X509, ale myslel som si, ze to bude napr. ako pri TCP pakete, ze sa bude dat posuvat po bytoch.
Ne, tak to není. Zjednodušeně řečeno se ASN.1 skládá z trojic „tag“ označující typ dané datové struktury, délka a pak vlastní obsah. Přičemž obsahem může být další vnořená trojice nebo jejich posloupnost. Takže k veřejnému certifikátu se nedostanete jinak, než že rozparsujete vše před ním a správně rozpoznáte všechny struktury.
Název: Re:Formát certifikátu X509
Přispěvatel: wajta 05. 02. 2016, 22:11:26
Zkuste použít třídu X509Certificate2, viz https://msdn.microsoft.com/en-us/library/system.security.cryptography.x509certificates.x509certificate2%28v=vs.90%29.aspx