您的位置:首页 > 其它

[Silverlight4]-自制数字签名for XAP签名(Xap code signing)

2010-04-24 15:48 190 查看
XAP签名是Silverlight4.0的功能。

乍看之下,你会不太了解他是做什么用的。

对开发人员来说,它可以确保取得用户主机某种程度上的操控权限,也确保用户下载的软件,是由你发行的。

对使用者来说,它可以看到比较安心的OOB(浏览器外执行)的安装画面,另外,由于这间开发公司是经过验证的,如果软件使用上有什么问题(例如程序导致你的数据外泄),你可以找到软件发行的公司,拿到一笔赔偿(理想状态下)。

当你在OutOfBrowserSettings.xml中加入ElevatedPermissions="Required"后,你就会发现最明显的差别会在OOB(浏览器外执行)的安装画面。

<OutOfBrowserSettings.SecuritySettings>

<SecuritySettings ElevatedPermissions="Required" />

</OutOfBrowserSettings.SecuritySettings>


.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

未加上数字签名的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











内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: