18

在 Visual Studio 项目设置中,您可以选择一个强名称密钥文件来对程序集进行签名。创建新文件时,您可以选择使用密码保护它。你什么时候应该这样做?什么时候不应该?

我在想,如果项目是托管在 Codeplex 或类似项目上的开源项目,那么用密码保护它可能就不那么聪明了。还是应该保护它?如果密钥文件受到保护,人们将无法下载源代码并进行编译吗?或者,这究竟是如何工作的?

4

1 回答 1

15

通常,如果您不信任有权访问它的人,则应使用密码对其进行保护。任何有权访问密钥文件的人都可以使用您的强名称创建程序集(与身份验证不同,他们不会冒充您,但他们可以加载他们的程序集而不是您的程序集)

至于你描述的开源场景,人们总是可以编译代码——他们只是创建一个新的密钥文件,但他们创建的程序集不会被试图加载你的程序集的程序集加载。

于 2009-10-22T09:15:45.893 回答