有什么理由将 .snk 文件与项目源一起发送?

sha*_*oth 5 .net strongname assemblies snk

我时不时地在网络上看到一个示例项目,其中包含一个 .snk 文件,用于使用强名称对编译结果进行签名。

AFAIK这是完全错误的- 一旦 .snk 文件被披露,任何人都可以生成一个程序集,该程序集可用于替换原始代码供应商提供的程序集,但现在包含恶意代码。我想传送 .snk 文件的人不会认真对待这种风险而只是传送文件,否则项目将无法编译现成的。

除了“方便”之外,是否有任何理由发送 .snk 文件?

Luc*_*ero 3

这是一个非常有效的问题。就我 而言,我不提供 SNK 文件,但提供了如何自己生成一个文件并进行所需更改的说明(以启用InternalsVisibleTo例如启用)

我认为目前的做法已经推动了我的微软从VS2005开始对SNK处理的改变。使用密钥容器需要手动编辑带有未记录的 MSBUILD 项的 CSPROJ 文件KeyContainerName...VS 的默认设置是将 SNK 复制到项目目录中,这很方便,但恕我直言是错误的。