Heim > Backend-Entwicklung > PHP-Problem > So lösen Sie das Problem mit dem PHP-Signaturfehler

So lösen Sie das Problem mit dem PHP-Signaturfehler

藏色散人
Freigeben: 2023-03-15 06:30:02
Original
2237 Leute haben es durchsucht

php-Signaturfehler liegt daran, dass der im Dokument eingebettete Signaturcontainer die ursprünglich dafür reservierte Größe überschreitet. Die Lösung besteht darin, mehr Platz für den Signaturcontainer zu reservieren.

So lösen Sie das Problem mit dem PHP-Signaturfehler

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie löse ich das Problem mit dem PHP-Signaturfehler?

Problembeschreibung:

Ich verwende TCPDF Um ein PDF-Dokument zu generieren und es zu signieren, ruft TCPDF einfach die Funktion „openssl_pkcs7_sign“ auf, die meiner Meinung nach auf der Grundlage des Quellcodes funktioniert. Bis vor Kurzem habe ich den privaten Schlüssel geändert. Zertifikat und Zertifikatskette:

$pdf->setSignature(
                $this->public_certificate_path, 
                $this->private_key_path, 
                $this->private_key_password, 
                $this->extra_certificates_path, 
                1);
Nach dem Login kopieren

Ich habe die neuen Stamm- und Zwischenzertifikate im PEM-Format in die Datei extra_certificates_path kopiert und sie sieht gut aus.

Wenn ich jetzt das signierte PDF in Adobe Reader öffne, wird es angezeigt der folgende Fehler:

打开文件时,它说<块引用>
此文件已损坏但正在修复中
上面的蓝丝带说<块引用>
认证无效
当我打开签名面板时,它显示<块引用>
由 %s 认证
错误详情说<块引用>
此签名中包含的格式或信息有错误(支持信息:SigDict/Contents 非法数据)
当我点击"证书详细信息"时,没有任何反应?
Nach dem Login kopieren

Lösung:

Eine Analyse der vom OP freigegebenen Beispieldatei kann das Problem verstehen: Der in das Dokument eingebettete Signaturcontainer überschreitet die ursprünglich dafür reservierte Größe.

Die Lösung ist also um mehr Platz für den Signaturcontainer zu reservieren.

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem mit dem PHP-Signaturfehler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage