博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何:创建公钥/私钥对
阅读量:5880 次
发布时间:2019-06-19

本文共 791 字,大约阅读时间需要 2 分钟。

要使用强名称为程序集签名,必须具有公钥/私钥对。  这一对加密公钥和加密私钥用于在编译过程中创建强名称程序集。  您可以使用 来创建密钥对。  密钥对文件通常具有 .snk 扩展名。  

System_CAPS_note注意

在 Visual Studio 中,C# 和 Visual Basic 项目属性页包括一个“签名”选项卡,通过该选项卡,您无需使用 Sn.exe 即可选择现有密钥文件或生成新密钥文件。  在 Visual C++ 中,可以在“属性页”窗口的“配置属性”部分的“链接器”部分中,在“高级”属性页中指定现有密钥文件的位置。  从 Visual Studio 2005 开始,使用  特性标识密钥文件对的用法已过时。  

创建密钥对

  1. 在命令提示符处,键入下列命令:

    sn –k <file name>

    在此命令中,“文件名”是包含密钥对的输出文件的名称。

下面的示例创建名为 sgKey.snk 的密钥对。

 
 
sn -k sgKey.snk

如果您需要延迟对程序集签名并控制整个密钥对(密钥对不太可能在测试方案之外),可使用以下命令生成密钥对,然后从中将公钥提取到一个单独的文件中。  首先,创建密钥对:  

 
 
sn -k keypair.snk
  • 下一步,从密钥对中提取公钥,并将其复制到一个单独的文件中:

 
 
sn -p keypair.snk public.snk
  • 创建密钥对之后,必须将文件放在强名称签名工具可以找到的位置。

当使用强名称对程序集进行签名时, 查找与当前目录和输出目录相关的密钥文件。  当使用命令行编译器时,只需将密钥复制到包含代码模块的当前目录即可。  

如果使用的是 Visual Studio 的早期版本,在项目属性中没有“签名”选项卡,则建议的密钥文件位置为按如下所示指定了文件特性的项目目录:

C#
 
[assembly:AssemblyKeyFileAttribute("keyfile.snk")]
 
 

转载地址:http://cmdix.baihongyu.com/

你可能感兴趣的文章
CentOS 5 全功能WWW服务器搭建全教程
查看>>
30个优秀的后台管理界面设计案例分享
查看>>
scala111
查看>>
模块化服务规范——OSGI
查看>>
劣质代码评析——猜数字问题(上)
查看>>
纸上谈兵: 栈 (stack)
查看>>
Windows phone8 基础篇(三) 常用控件开发
查看>>
Oracle学习笔记之五,Oracle 11g的PL/SQL入门
查看>>
大叔手记(3):Windows Silverlight/Phone7/Mango开发学习系列教程
查看>>
多功能表单填报系统V1.2.1-适用于在线报名系统、调查、数据收集等
查看>>
考拉消息中心消息盒子处理重构(策略模式)
查看>>
so easy 前端实现多语言
查看>>
【追光者系列】HikariCP源码分析之ConcurrentBag&J.U.C SynchronousQueue、CopyOnWriteArrayList...
查看>>
在navicat中如何新建连接数据库
查看>>
canvas系列教程05-柱状图项目3
查看>>
css绘制几何图形
查看>>
HTML标签
查看>>
理解JS中的Event Loop机制
查看>>
转载:字符编码笔记:ASCII,Unicode和UTF 8
查看>>
修复看不懂的 Console Log
查看>>