Microsoft.Net框架程序设计学习笔记(5):延迟签名

延迟签名的作用:

  当我们打包强命名程序时,必须使用安全的私有密钥来为之签名。然而在开发和测试程序集时,允许访问安全的私有密钥可能会导致私钥泄漏。为在开发与测试环境中保证私钥安全,.Net推出了延迟签名技术,也叫局部签名。

延迟签名的步骤:

  1. 开发程序集时,首先取得仅包含公司公有密钥的文件,并将以下两个特性加入到AssemblyInfo.cs文件中:
    //指定公有密钥文件名
    [assembly:AssemblyKeyFile("MyCompany.Publickey")]
    //指定延迟签名特性为true
    [assembly:AssemblyDelaySign("true")]
  2. 生成程序集后,执行以下命令以后便可将程序集安装到GAC中。注该操作只能执行一次,没有必要每次生成程序集时都执行一遍该命令。
    SN.exe -Vr MyAssembly.dll
  3. 当准备打包和部署程序集时,取得公司的完整密钥,执行以下命令:
    SN.exe -R MyAssembly.dll MyCompany.keys
  4. 执行下面的命令,恢复验证过程以进行测试:
    SN.exe -Vu MyAssembly.dll

你可能感兴趣的:(Microsoft)