[Silverlight4]-自制数字签名for XAP签名(Xap code signing)
XAP签名是Silverlight4.0的功能。
乍看之下,你会不太了解他是做什么用的。
对开发人员来说,它可以确保取得用户主机某种程度上的操控权限,也确保用户下载的软件,是由你发行的。
对使用者来说,它可以看到比较安心的OOB(浏览器外执行)的安装画面,另外,由于这间开发公司是经过验证的,如果软件使用上有什么问题(例如程序导致你的数据外泄),你可以找到软件发行的公司,拿到一笔赔偿(理想状态下)。
当你在OutOfBrowserSettings.xml中加入ElevatedPermissions="Required"后,你就会发现最明显的差别会在OOB(浏览器外执行)的安装画面。
<OutOfBrowserSettings.SecuritySettings> <SecuritySettings ElevatedPermissions="Required" /> </OutOfBrowserSettings.SecuritySettings>
未加上数字签名的OOB(浏览器外执行)的安装画面会如下,OS会警告你软件有验证的问题:
加上数字签名的OOB(浏览器外执行)的安装画面会如下:
如果你要替你的软件公司申请正式的数字签名,你必须支付一年99元美金的价格,这有点类似SSL,如果你要让使用者更安心,就必须要支付一些费用。
但如果你想要自制的数字签名,提供测试使用。你可以依照以下方式制作。
1. 将makecert和signtool注册为DOS外部指令:搜寻计算机里,找到makecert和signtool 这两个档案,放到Windows/system32目录下。这样做的目的是让makecert和signtool成为DOS的外部指令,这样你就可以在任何地方,使用这两个指令。
2. 建立自制的数字签名:
到项目的ClientBin目录下
makecert -r -pe -ss Privatecertstore -n "CN=SITestCert" MyTestCert.cer
完成后,你会发现,底下多了一个MyTestCert.cer档案。Makecert还有很多可以设定的数据,请直接google makecert。
3. 将数字签名注册到xap里:
signtool sign /v /s Privatecertstore /n SITestCert SignedXap.xap
4. 安装自制的数字签名
执行MyTestCert.cer
Copyright © 2010 比比触控游戏工作室WWW.BPLUSGAME.COM