如何将时间戳证书添加到Linux上已签名的PE文件?
我需要在Linux上对PE文件(实际上是EFI)进行数字签名和时间戳.我找到了3个用于签署PE文件的工具:pesign,osslsigncode和signcode(mono),但它似乎不适合我的需求.问题是,密钥在硬件令牌上,无法导出.因此,我必须创建一个证书数据库,在那里添加令牌驱动程序条目并通过此DB工作.只有pesign允许这样做,但它不支持时间戳. osslsigncode和signcode支持时间戳,但是他们无法使用数据库. Windows signttool.exe可以作为单独的步骤执行签名和时间戳.所以我想,我可能会使用pesign对文件进行签名,然后只使用其他工具对其进行时间戳.但正如我所发现的,osslsigncode和signcode不支持单独的时间戳(在osslsigncode项目中它列在TODO文件中,但在存储库中没有它的迹象). 我错过了一些工具吗?有没有太低级别的库可以让我自己编写这样的程序吗? (首选,C/C++ / Perl / Python.)我试图从osslsigncode获取时间戳代码,但未能轻易地从之前的步骤中删除它(删除现有签名并添加新签名). 附:我也尝试在wine下运行signtool.exe,但1)未能使它工作,2)我不确定它是否合法允许(我不擅长分析EULA). 最佳答案
自2015年3月起,osslsigncode中有一个patch,允许您通过PKCS#11令牌上的密钥签署代码.它还不是官方发布的一部分.所以你必须自己构建它,但它对我来说就像魅力一样.
示例调用如下所示:
-pkcs11module开关将PKCS#11库作为参数,-key的参数采用slotID:keyID格式. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- linux安装MySQL-5.6.22-1.el6.i686.rpm-bundle.tar
- linux – nginx:[emerg]未知指令“”在/etc/nginx/sites-e
- 科普帖:Linux操作系统
- linux – SVN错误403禁止
- linux – 在shell中解析ps和grep输出
- nfsv4 linux c中的并发文件访问
- linux – 在rsync中,如何排除与模式匹配的所有目录?
- linux-device-driver – 如何调用compat_ioctl或unlocked_i
- linux – 如何在shell脚本中使用grep来查找文件内的单词
- linux – 如何在bash脚本中传递两个参数或参数