PHP小丑 发表于 2021-12-25 14:50:18

给你的软件上个“身份证”吧,论代码签名的重要性










也许老才子急于追爱,才把给用心做出来的表白小程序上个户口这么的重要事情给忘了。特别是让还没有追到手的女神看到这亮黄色的安全提醒也是让人很不安心啊。

随着数字化发展,我们日常生活和工作离不开各种各样的电脑软件,手机APP。在各类大小软件扎堆开发、流氓软件横生的情况下,个人隐私及信息安全保护已经成为我们日常生活关注的焦点。用户怎样才能信任那些在互联网上发布的软件?这时候,我们仅需要一张“软件身份证”——代码签名证书。这张证书怎么用?软件开发者可以用它来保护千辛万苦开发出来的软件代码,不被非法篡改;而用户则可以通过验证这张证书来辨别软件的发行商身份。来,往下看看。



什么是代码签名证书?
代码签名证书是提供给软件开发者,对其开发的软件代码进行数字签名的数字证书,用于验证开发者身份真实性、保护代码的完整性。用户下载软件时,能通过数字签名验证软件来源可信,确认软件没有被非法篡改或植入病毒木马,保护用户不会被病毒、恶意代码和间谍软件所侵害,也保护了软件开发者的利益,让软件能在互联网上快速安全地发布。

                                                    代码证书示意图
软件开发商可以使用代码签名证书来签名内核代码 .sys文件、ActiveX文件、.exe 和 .dll 文件、Java Applets、J2ME MIDlet、Office宏文件和运行移动操作系统(Windows Mobile 和 Symbian)的智能手机开发的移动应用软件。

                                                代码签名证书的工作原理图



谁需要代码签名证书?


随着网络安全警惕意识的空前高涨。要是我们开发的软件无法证明合法性,则大部分网络用户都不会下载。那么代码签名证书就可以激发客户和用户的信心,并提供我们要验证代码所需的证明,这就相当于我们的居民身份证,证实我这个人是存在的,是品德优良的中国公民。
第一个需要这张“身份证”的人就是软件开发人员,你可以使用代码签名证书为客户提供额外的保证,让他们知道内容的生产商并且保证没有被篡改。签名的代码还可以防止代码在分发前被身份不明的第三方篡改。
另外就是内容发布者,你可以对windows下的程序和宏文件或者其他类型的内容进行数字签名,来确保通过互联网或其他机制进行安全交付。
当指定代码片段(例如 Active X 控件、Java 小程序以及其他活动的网络脚本代码)的源码可能不明显时,代码签名尤其重要。





如何才能获取代码签名证书?




码签名证书是一种采用数字签名技术的数字证书,允许软件开发者对其可执行脚本、代码和内容进行签名,以通过互联网验证开发者的身份。所以要想实现代码签名必须首先获得数字证书才能使用这些功能。
并且代码签名证书针对不同的平台,其代码证书品种也不尽相同,因此使用者最好事先咨询正规的代码签名证书的颁发机构,可以针对不同平台的代码签名应用,提供不同的代码签名证书产品及应用解决方案。





代码签名证书的一般分类?




1.标准代码签名证书
代码签名证书(Code Signing Certificates)是为软件开发者提供的一个理想的解决方案,使得软件开发者对其软件代码进行数字签名,确保用户下载的内容来自所声明的来源。
2.   EV增强型代码签名证书
EV代码签名证书(Extended Validation Code Signing Certificates)在原代码签名证书基础上加强了对企业身份的验证。
二者的功能区分如表中所述:




认证机构
证书颁发机构(CA),是采用PKI公开密钥基础架构技术,专门提供网络身份认证服务,负责签发和管理数字证书,且具有权威性和公正性的第三方信任机构。它的作用就像我们现实生活中颁发证件的公司,如护照办理机构。证书颁发机构 (CA) 是一个向单位、个人等颁发证书的可信实体。CA 受理证书申请,根据该 CA 的策略验证申请人的信息,然后使用它的私钥把其数字签名应用于证书。最后,CA 将该证书颁发给该证书的主体。通过遵循此层次结构或验证路径,到达已知的受信任证书颁发机构,可以确保证书有效。
沃通CA专注数字证书行业十余年,持续提供全球信任的各类数字证书,支持所有浏览器和移动终端,具备最广泛的兼容性;打造数字证书生态链,为客户提供一站式高效服务。
​​沃通 EV代码签名证书​​具有普通代码签名证书的所有功能,但采用更加严格的扩展验证标准(EV验证)审核开发者身份,并采用更安全的私钥保护机制,将证书存储在USB key中,杜绝了证书被盗用的风险;由全球信任顶级根签发,广泛兼容Windows操作系统新老版本,符合微软对代码签名证书的要求,可用于所有硬件开发人员中心硬件仪表板服务。



[*]支持Win10驱动签名
[*]支持Windows内核代码签名
[*]支持Windows硬件认证,可用于建立Windows硬件开发人员中心仪表板账号
[*]支持UEFI,Kernel-mode驱动签名和 LSA 认证
[*]帮助已签名代码在SmartScreen中快速建立信誉,减少信任警告信息


沃通EV代码签名证书采用RSA 3072位以上的公钥算法和SHA 256以上的签名算法,遵循严格的EV验证标准审核签发;证书私钥存储在硬件USB Key中,保护密钥不被复制和分发,需要硬件USB Key和密码双因素认证才能进行签名;提供符合RFC 3161的时间戳,确保证书过期后,已签名的软件程序仍可正常使用。








https://blog.51cto.com/u_15078048/4829398
页: [1]
查看完整版本: 给你的软件上个“身份证”吧,论代码签名的重要性