您好,登錄后才能下訂單哦!
本篇內容介紹了“php簽名出錯怎么解決”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
php簽名出錯是因為嵌入到文檔中的簽名容器超出了原來為它預留的大小,其解決方法就是為簽名容器預留更多空間即可。
本文操作環境:Windows7系統、PHP7.1版、DELL G3電腦
如何解決php 簽名出錯問題?
問題描述:
我正在使用 TCPDF 生成一個 pdf 文檔并對其進行簽名.TCPDF 本身只是調用 PHP 的 openssl_pkcs7_sign 函數,這在我看來是基于 源代碼.
直到最近一切正常.然后我改變了證書提供者.我剛剛更新了私鑰、證書和證書鏈:
$pdf->setSignature( $this->public_certificate_path, $this->private_key_path, $this->private_key_password, $this->extra_certificates_path, 1);
我在 extra_certificates_path 文件中以 PEM 格式復制了新的根證書和中間證書.我使用 openssl 驗證了這個文件,看起來不錯.
現在,當我在 Adobe Reader 中打開已簽名的 PDF 時,它會顯示以下錯誤:
打開文件時,它說<塊引用> 此文件已損壞但正在修復中 上面的藍絲帶說<塊引用> 認證無效 當我打開簽名面板時,它顯示<塊引用> 由 %s 認證 錯誤詳情說<塊引用> 此簽名中包含的格式或信息有錯誤(支持信息:SigDict/Contents 非法數據) 當我點擊"證書詳細信息"時,沒有任何反應?
解決辦法:
分析OP共享的示例文件可以理解問題:嵌入到文檔中的簽名容器超出了原來為它預留的大小.
因此,解決方案是為簽名容器預留更多空間.
“php簽名出錯怎么解決”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。