我正在尝试使用PHP对PDF文档进行数字签名。我买了证书(不使用自签名)。我得到的是CER和PEM文件。我试图使用TCPDF库生成签名的PDF但没有成功。完美的解决方案是将签名添加到现有文档(pdf)。有什么建议吗?
答案 0 :(得分:3)
您可能想查看此帖子Digitally signing a PDF, using PHP, Zend, and openssl
作者在问题的第一个答案下发布了他的解决方案。
答案 1 :(得分:0)
Is this pdf digital signed correctly? PHP/TCPDF
如果您要创建pdf文件并对其进行签名,则此问题将解决您的问题。当我尝试签署现有的pdf时,我的问题也来了。我不知道如何在TCPDF库中使用/导入现有的pdf。
答案 2 :(得分:0)
让我为许多开发人员面临的这个古老问题提供新的视角,以便它对于寻求解决方案的某些机构很有用。
PEM或PFX或P12文件存储私钥,并且不再被认为是安全的。某些国家/地区不允许创建PFX文件,并且直接在USB令牌或智能卡之类的加密设备上颁发数字证书,在这些设备中,私钥是在该硬件内部生成的,永远不会离开。数据(或说要签名的哈希)在此硬件内部发送以进行签名。因此,需要在发生签名的地方(例如客户端的浏览器)使用这种硬件。
请参考我的答案https://stackoverflow.com/a/55676351/9659885,以检查如何从客户端浏览器上的加密设备获取哈希签名。
用于登录PHP; PDF签名库很容易在Java中获得。使用Javabridge通过从Apache代理访问在tomcat上运行的Java服务。