一张代码签名证书能给哪些后缀的软件签名

代码签名证书常见的签名对象包括.exe、.dll、.msi、.cab和.jar,Windows的.ps1脚本也有对应的签名方式。.msix、.appx应用包,以及驱动项目里的.sys、.cat文件,则按各自的平台要求办理和签署。选购时先确定文件后缀,再对接相应工具,产品就容易选对。

你准备发布一套软件,文件夹里有主程序、组件和安装包,就把这几类文件分别列出来。代码签名把经过核验的发布者身份与文件联系起来,方便核对发布者和文件完整性。真正落到采购上,要说清楚的是“公司准备签哪些文件、由谁来签”。

一张代码签名证书能给哪些后缀的软件签名

.exe和.dll:主程序与组件都能签

.exe是Windows可执行文件。桌面软件的主程序可以是EXE,负责安装软件的启动程序也可以是EXE。这类文件可使用Windows SDK中的SignTool等适配工具签署。

比如,研发交付“主程序.exe”和“安装程序.exe”,就把它们记为两个待签文件。主程序先完成签名,再参与打包;安装程序生成后,再签这份对外提供的安装成品。

公司提供免安装版本,就安排直接交付的EXE签名。负责人拿到研发确认的最终文件,完成签署和检查,再把这份成品放进发布目录。

.dll是动态链接库,程序会调用里面的功能。数据处理模块、设备连接模块等自研组件,可以通过DLL形式交付,也可以使用适用的代码签名证书签署。

公司独立发布、单独更新的自研DLL,值得纳入签名计划。核对组件时,能够查看与这份文件对应的企业签名。第三方已经签名的组件保留原发布方签名,清单上注明来源,后续交接也清楚。

.msi和.cab:安装包与压缩封装文件分开安排

.msi是Windows Installer安装包。企业桌面软件、管理客户端采用这种格式交付时,可以给最终MSI文件添加数字签名。

操作顺序是先处理需要签名的主程序和自研组件,再制作MSI,最后签安装包。技术人员按照这个顺序配置打包任务,程序和外层交付文件各有对应的签名。

.cab是Windows Cabinet文件,可以封装程序或安装资源。独立分发的CAB可通过支持该格式的工具签署;配合MSI使用的外部CAB,由打包人员一并配置签名和安装包中的相关记录。

询价时把格式写完整。例如,“一个MSI安装包,另带两个外部CAB”,服务人员就能围绕这套文件说明适配方式。第一次配置直接用项目成品验证,研发也容易照着实际文件继续操作。

.jar:Java项目用对应工具签署

.jar是Java应用和类库常见的封装格式。公司对外交付Java客户端、工具或组件,申请Java代码签名证书时,直接说明要签JAR文件。

Java项目的签名工具是JDK中的jarsigner。技术人员通过它给JAR签名并验证结果,按照所选产品的方式调用签名私钥。硬件或云端凭据的调用配置,与项目使用的JDK一起核对。

如果你同时发布Windows客户端和Java组件,就把EXE、DLL、JAR一起报给服务人员,确认所选证书与配套工具支持这些用途。办理同一企业签名身份后,再分别按Windows和Java的工具流程处理。

Java团队使用keytool管理密钥库和证书,实际给JAR文件执行签名的是jarsigner。把这两个工具的工作分清楚,经办人询问安装指导时,也知道要请技术人员配置哪一步。

.ps1:PowerShell脚本也可以签

.ps1是PowerShell脚本。公司用脚本安装程序、配置环境或执行维护任务,可以按PowerShell支持的方式给脚本添加代码签名。

技术人员使用Set-AuthenticodeSignature等对应命令,在配套环境中调用代码签名凭据。脚本内容确定后完成签署,再按实际执行环境检查签名与运行结果。

交付时,把脚本文件和操作说明一起保存。例如,软件安装包由一个PS1脚本辅助配置,项目清单就同时登记安装包与脚本,两份成品分别处理。以后修改脚本内容,完成新版本签名后再发布。

.msix和.appx:应用包按发布渠道配置

.msix和.appx是Windows应用包格式。企业自行分发这类应用包时,使用符合要求的签名证书,并让包清单里的Publisher与签名证书主体信息准确对应。

这个对应关系要在打包前确定。研发拿到核验后的证书主体信息,在打包配置里填写Publisher,生成应用包后签名,再使用项目的目标系统测试安装。

通过Microsoft Store分发,按商店提交与签名流程准备应用包。采购时说明“企业自行分发”还是“提交商店”,服务人员和研发就能按实际渠道对接证书与打包安排。

.sys和.cat:驱动项目单独说明用途

.sys是驱动文件常见后缀,.cat是驱动包中使用的目录文件,记录相关文件的校验信息。驱动签名项目会涉及这些文件,询价时就直接写“Windows驱动签名”。

面向现代Windows的内核驱动发布,按照微软硬件开发者平台流程完成提交和签名。企业需要的身份验证、驱动测试和文件提交,由负责驱动的技术人员按目标系统要求安排;采购证书时一并说明平台账户用途。

几种后缀放在一起,要买几张证书

同一家公司发布的多个受支持文件,可以在证书许可和产品服务范围内使用同一企业签名身份,分别通过适配工具签署。采购先看主体、平台和使用方式,再核对文件数量。

例如,一套Windows软件包含一个EXE、两个自研DLL和一个MSI安装包,办理适用的企业代码签名产品后,分别给四份成品签名。采用云签时,把预计签名量一起说明,确认对应的服务额度。

推荐安信SSL证书这两款,使用方式各有明确安排

公司在固定电脑集中签署软件,推荐GlobalSign EV代码签名证书,安信SSL证书的销售价格为4000元/年,包含Ukey硬件令牌,并提供申请与安装指导,支持国内顺丰邮寄Ukey。

公司安排专人接收和保管令牌,在签名电脑安装配套组件。研发提交待发布文件,负责人连接设备并完成授权,再使用适配工具签署。选购时说明实际后缀,首次配置按项目文件操作。

准备采用云端授权方式,推荐Certum EV代码签名证书,在安信SSL证书办理的价格为2500元/年。这款采用云签名,无需邮寄本地Ukey,日常通过配套客户端和授权使用云端受保护的签名私钥。

选择云签方案,把文件格式、操作系统、预计签名量交给服务人员,核对工具支持与服务额度。公司指定账户负责人,按产品支持的方式配置客户端,再用实际成品完成首次签署。

购买建议直接按操作习惯定:签名设备由公司集中保管,选GlobalSign EV的Ukey方案;采用云端授权操作,选Certum EV云签方案。两款按年销售,申请时配合企业身份审核,证书的实际到期日期按签发信息登记。

发布前按文件核对,更新时按新成品签名

证书开通后,先把项目文件交给技术人员,配置签名工具、SHA-256摘要和时间戳。签署完成,逐份检查签名者名称、验证结果和时间戳信息。

EXE、DLL等文件可以结合属性中的数字签名信息和验证工具核对;JAR使用对应Java工具验证;脚本和应用包按各自环境检查。安装测试与升级测试使用签署后的正式成品。

软件升级时,新的EXE、自研DLL、JAR或脚本完成签名后再交付。重新制作安装包,就在打包完成后处理外层安装文件。

代码签名证书支持哪些软件后缀常见问题

1、EXE和DLL能使用同一张代码签名证书吗?

可以。同一组织的受支持文件,在证书许可和产品服务范围内使用同一企业签名身份,再分别给EXE和自研DLL签名。

2、MSI安装包应该在哪一步签名?

先处理需要签名的主程序和自研组件,制作MSI安装包之后,再给安装包签名。安装测试使用签署后的成品。

3、Java的JAR文件用什么工具签名?

使用JDK中的jarsigner。申请时明确说明JAR用途,由技术人员按所选产品方式配置私钥调用,并验证签名结果。

4、固定电脑签软件,推荐哪款Ukey证书?

选择安信SSL证书的GlobalSign EV方案,4000元/年,包含Ukey。公司指定设备保管人与操作人员,在签名电脑配置相应工具。

5、采用云签名,推荐哪款产品?

Certum EV云签方案的年费是2500元,由安信SSL证书提供。申请时说明软件后缀、电脑系统和预计签名量,核对配套客户端与服务额度。

相关阅读:购买代码签名证书需要的资料

相关文章