☆用心生活☆-wonder-{改变自己才能让自己过上不一样的日子。为自己加油!}

如何:创建一个公钥/私钥对?

为了用强命名标识一个程序集,你必须拥有一对公钥和私钥。这一对公钥私钥加密密钥用作编译期间生成强命名的程序集(汇编程序).你可以使用强命名工具(Sn.exe)创建一个密钥对.密钥文件通常都具有一个.snk的文件扩展名。

●创建一个密钥对

     在命令提示符下,键入以下命令:

     Sn –k <file name>

在此命令中,<file name>是一个包含密钥对的输出文件的名字。

以下例子是创建一个名叫sgKey.snk的密钥对文件

sn –k sgKey.snk

如果你希望延迟标识程序集并且也希望控制整个密钥对(它不像外部测试情景,场景),你可以用一下命令生成一对密钥对,然后从此密钥对中提取公钥到一个单独的文件。

首先,创建密钥对:

sn –k keypair.snk

然后,从上面生成的密钥对文件(keypair.snk)中提取公钥,并拷贝到一个独立的文件中:

sn –p keypair.snk public.snk

一旦你创建了密钥对,你就必须将此文件放置在强命名标识工具能够找到它的位置。

当运用强命名标识一个程序集的时候,程序集连接器(Assembly Linker (Al.exe))会寻找与当前目录有关的密钥文件,并输出到当前目录。在使用命令行工具编译 的时候,也可以很容易的拷贝此密钥到包含代码模块的的当前目录下。

若正在使用在早期版本的项目属性中并不具有签名选项的vistual studio时候,推荐的密钥文件位置是如下制定文件属性的项目目录下。

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

 

文章连接:【MSDN】http://msdn.microsoft.com/en-us/library/6f05ezxy.aspx

posted @ 2010-06-11 10:17  ☆用心生活☆  阅读(5933)  评论(0编辑  收藏  举报
本作者写的任何文章均属原创,若要转载,请注明出处;若
进行与文章有关的商业行为,本作者保留拥有诉诸法律追究
侵权的任何行为。文章只代表本人某一学习时间段内对某一
技术的说明,不代表具有绝对的正确性,若要学习,请与各
位高手编程人员讨论学习。本文章也不代表自己某一时期某
一公司的任何专著和机密文件。仅仅提供自我学习和他人学
习的文章参考,以及自我知识记录。wanzegui325#163.com