Appx代码签名指南
一、APPX是什么文件格式?
appx实际上就是安装文件压缩包,将我们平时常见的一些安装文件打包起来,其中包含DLL文件库、CAT数字签名文件、多个XML文件信息文件等,是一个准备好分配和安装的应用程序包。
appxs首次在Windows 8中引入,为了保护系统的安全,Windows 10系统使用Windows UWP平台认证机制管理.Appx应用的运行。所有从Windows应用商店下载的.Appx应用均可直接顺利运行,而对于尚未取得该认证的来历不明的.Appx应用,安装时会出现“安装失败”的提示。上传至微软应用商店前,需要使用有效的代码签名证书对Appx文件进行数字签名。
二、如何进行appx数字签名?
1、签名准备
应用包
若要了解手动创建应用包的详细信息,请参阅使用 MakeAppx.exe 工具创建应用包。
有效的签名证书
申请有效的代码签名证书,请查看沃通代码签名证书。
签名工具
下载安装SignTool签名工具
2、数字签名
举例:
查看我的证书使用者信息如下:
![](https://pic3.zhimg.com/80/v2-3256701429fb1923af68180ea3034bfe_720w.jpg)
Xml的publisher写法如下:
![](https://pic2.zhimg.com/80/v2-10958eefbda414dafac5bc6a0a9402e5_720w.jpg)
签名:
Cmd进入makeappx.exe目录
第一步:makeappx.exe pack /v /h SHA256 /d C:\Users\***\Desktop\appx /p 123.appx(/d后面是xml的目录,/p 后面是appx的目录,没写的就会在makeappx.exe的目录)
第二步:signtool sign /v /a /sha1 证书指纹值 /fd sha256 123.appx
3、要点总结
第一步/h sha256指定的算法和第二步/fd sha256要一致;注意xml的写法,不然会报错。
注意:如果公司名称中带有,时,Publisher里面需要用";将公司名称引用起来,举例CN=WoTrus CACo., Ltd.,则在Publisher里面要变成CN=";WoTrus CACo., Ltd.";
按上述步骤,到沃通官网申请使用有效的代码签名证书对Appx应用包进行签名后,即可将你的应用包上传至微软应用商店。
参考
- MakeAppx.exe 工具创建应用包 https://docs.microsoft.com/zh-cn/windows/msix/package/create-app-package-with-makeappx-tool
- 代码签名证书 wosign.com/price_code.htm