Portál AbcLinuxu, 10. května 2025 02:12
Ahoj, snažím se podepsat digitálně PDF-ko, používám TCPDF. Pokud si vytvořím vlastní certifikát:
openssl req -new -x509 -nodes -out cert.pem -keyout key.pem -days 1098
tak dostanu dva soubory:
cert.pem a key.pem
Příkazem
cat cert.pem key.pem > certkey.pm
Na získaný certkey.pm odkazu v tride TCPDF a pdf je krasne podepsany - sice neovereny, ale to je jina vec.
Abych prave mohl posilat PDF-KA podepsany a overeny nějakou hodně znamou certifikační autoritou, zažádal jsem si on-line zaslání demo certifikátu od PostSignum.
Přišel mi .zip, který obsahuje:
certifikat.crt
PSDemoQualified.crt
PSDemoRoot.crt
PSDemoRoot.crt je kořenovej - pro ověření CA - to mi je jasný, tak jsem ve tříde TCPDF odkázal na jeden a pak druhej soubor - ale prostě to nebere, když si otevřu ty certifikáty v texťáku, tak jsou v binárce - nečitelný.
Máte někdo radu, jak dál postupovat? Díky
PSDemoQualified.crt
je podřízená certifikační autorita, váš certifikát by měl být v certifikat.crt
.
to jsem taky už zkoušel. ale něco pravděpodobně chybí, nebo jest-li se musej ty certifikáty převést nějak - nevím:
Warning: openssl_pkcs7_sign() [function.openssl-pkcs7-sign]: error getting private key in /Volumes/crypt_htdocs/vyvoj/tcpdf/tcpdf.php on line 5773
crt
se obvykle dává samotným certifikátům (bez privátního klíče), i podle té hlášky v tom souboru není privátní klíč. Normální postup je takový, že si vytvoříte pár klíčů a žádost, žádost odešlete CA a ta vám vystaví certifikát. Takže pak máte privátní klíč v jednom souboru (vznikl při generování žádosti) a certifikát v jiném souboru (certifikat.crt
). Buď daná aplikace/knihovna umí pracovat s odděleným vstupním souborem pro privátní klíč a pro certifikát, nebo si ty soubory třeba pomocí openssl
spojte do jednoho úložiště, kde bude certifikát i s privátním klíčem.
http://www.postsignum.cz/bezpecnyklic/2048_sha2.php
Zde si můžu vytvořit testovací certifikát, abych vyzkoušel podpis PDF a autorizaci s CA PostSignum...
Můžete mi napsat, jak by jste můj problém řešil vy? Děkuji
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.