代码签名究竟如何帮助软件发布商?

wwy*_*wyt 5 code-signing

我刚刚完成了我的应用程序首次代码签名,感谢Jeff Wilcox博客的帮助,他的分步说明,我能够在不到36小时内完成整个过程.但现在我开始想知道为什么我花了这笔钱,因为我无法看到它如何帮助软件发行商:

  1. 有黑客试图通过逆向工程和修改代码来打破程序中的保护机制.但是签名文件并不能防止这种情况发生,他们仍然可以随意修改文件的内容.

  2. 有时一些反病毒程序可能会错误地认为我的.exe文件包含病毒.对文件进行签名也无济于事.

  3. 代码签名只能告诉用户这个文件来自我,但他们仍然不知道我是好人还是坏人.所以它对用户也没有帮助.

我的结论是代码签名不是为了帮助软件发行商或用户.它只试图跟踪文件来自何处,如果它包含病毒,人们就知道是谁种植了它,就是这样!(只有当黑客无法将病毒捎带到签名的.exe文件中时才会这样.)

我的问题是:我的理解是否正确?还是我错过了什么?谢谢.

Cat*_*lus 5

签名确认代码的真实性,即这是您发布代码,并且它一直没有被篡改.这与愚蠢的代码保护无关,它可以保护用户免受冒充软件的侵害 - 图像中的单字节修改会使签名无效.信任是一个完全不同的事情(AV扫描仪可能比普通的无符号可信任信任签名的可执行文件,但这是与AV供应商讨论的东西).

  • 如果证书颁发机构(CA)正在履行职责,他们将审查申请人,至少是因为申请人的身份将得到核实.坏人喜欢匿名工作.没有安全计划是铁定的,但坏人也懒惰,如果你的房子或汽车有防盗警报,他们会找到一个没有. (2认同)