我应该签署我的DLL吗?

twk*_*twk 10 dll code-signing authenticode

我有一个C++ Windows应用程序.我签署了我们的安装程序和我的可执行文件,但我目前没有签署我的DLL(例如zlib1.dll).签署这些并不是什么大不了的事,但有人可以解释一下这样做的好处吗?例如,如果所有依赖项都已签名,我的程序是否会与AV或防火墙软件有任何不同?用户会得到任何不同的警告吗?

341*_*008 10

您的程序与AV或防火墙不会有任何不同.他们将检查您已签名的可执行文件的签名.在您自己验证这些签名之前签署您的dll是最有意义的.这确保了运行时所有dll的完整性.建议的安全做法是对您发布的所有二进制文件进行签名,并在运行时验证其签名.如果您的dll将被其他产品使用,那么您必须签署它们,因为这些产品将要验证其真实性和完整性.

  • 隐式链接怎么样?有没有办法验证该设置中的签名,或者是否有必要将所有DLL加载转换为显式链接(即LoadLibraryEx调用)? (5认同)