2017-06-27 6 views
0

openssl_signを使用して私のデジタル署名を使用してpdfに署名しようとしましたが、これは機能しません。なぜopenssl_signが自分のpdfに署名していないのですか?

$private = openssl_pkey_get_private(file_get_contents("./certificate.pem")); 

$public = openssl_pkey_get_public(file_get_contents("./certificate.pem")); 

$data = file_get_contents("./mypdf.pdf"); 

openssl_sign($data, $signature, $private, OPENSSL_ALGO_SHA256); 

file_put_contents('signature.dat', $signature); 

$r = openssl_verify($data, $signature, $public, "sha256WithRSAEncryption"); 

私がAdobe Readerでpdfを開くと、pdfが署名されていないことがわかりません。誰か助けてくれますか?

答えて

1

このようにPDF形式は機能しません。署名はPDFファイルに含まれ、別個のファイルとして保存されません。

TCPDFのような既存のライブラリを使用してPDFに署名します。

関連する問題