包签名和代码签名之间的区别

时间:2015-07-01 07:55:33

标签: visual-studio-2013 windows-store-apps code-signing assembly-signing sideloading

使用VS2013和Windows 8.1

我有从Verisign购买的.cer和.pfx文件。我是新手来存储应用程序。我有几个问题

  1. 签署包和代码签名之间有什么区别(使用Package.appxmanifest的VS 2013打包选项卡完成) - 到目前为止我的理解 (a)我猜这与使用signtool.exe工具类似吗? (b)两者都将公钥(.cer)安装到证书存储区(mmc)并用私钥(.pfx)签署appx所以我需要在现场机器中手动安装.cer文件才能安装我的应用程序? (c)代码签名是为了确保代码没有被篡改,但我们是否需要为所有主要商店应用程序和其他使用部分的dfferent项目(.dll)执行此操作

  2. 我们是否需要包和代码签名以便在客户端计算机上发布商店应用程序?

  3. 由于某些链接信息,我不能使用用于代码签名的包签名的相同.pfx。这是不是应该使用不同的.pfx,这是一种正常的方式吗?

1 个答案:

答案 0 :(得分:2)

对于常规Windows应用商店应用:

  1. 您无需手动对Windows应用商店进行签名。

  2. 没有。 Windows应用商店将自动对包进行签名。

  3. 代码签名适用于Windows Classic应用程序或驱动程序,而不适用于Windows应用商店应用。

  4. 对于侧载应用:

    Windows store enterprise apps可以由您的PC上信任的任何证书颁发机构签署(将安装该应用程序)。最好与visual studio签约。有is documantation for个确切的程序。 如果您将使用Verisign证书进行签名,则无需安装除应用程序之外的任何内容,因为Windows中已经信任verisign root。 Visual studio只签署应用程序包。