技术开发 频道

Enterprise Library 2.0:加密应用程序块(一)

第五步 配置应用程序使用对称密钥加密
1.在应用程序上点右键选择New | Cryptography Application Block

2.选中Cryptography Application Block | Symmetric Providers节点,选择Action | New | Symmetric Algorithm Provider菜单命令。

 
3.将会显示出Type Selector对话框,选择RijndaelManaged并单击OK按钮。

4.密钥向导将会开始,选择Create a new key选择,并单击Next按钮。

 
通过该向导将创建一个密钥。
5.单击Generate按钮生成一个新的密钥,并单击Next按钮。

6.单击Ellipsis并选择密钥文件存放位置,在该实验中,文件将保存在Windows桌面。

 
注意密钥将不再保存在配置文件中,每一个密钥都使用DPAPI保护保存在一个单独的文件中。
7.选择User mode或者Machine mode,并单击Finish按钮。

当创建一个密钥的时候,需要选择是用户模式或者机器模式来限制访问密钥文件的权限。在下列情形下适用机器模式:
应用程序运行在专有的服务器上,再没有别的应用程序运行。
有多个应用程序运行在相同的服务器上,想在这些应用程序之间共享这些敏感信息。
8.选中Cryptography Application Block | Symmetric Providers | RijndaelManaged节点,并设置如下属性Name = ChatProvider

 
9.保存对应用程序的配置。

第五步 运行应用程序
1.选择Debug | Start Without Debugging菜单命令,运行应用程序。
SamToby之间传递消息,可以看到,在传递过程中消息是加密的,注意观察控制台窗口,在接收到消息后是解密的。

2.关闭应用程序。

第六步 添加错误处理
Chat.cs文件中的SendMessage方法添加如下代码。

private void SendMessage(string message){ if ((message != null) && (message.Trim().Length > 0)) { // TODO: Encrypt message string encrypted = Cryptographer.EncryptSymmetric(symmProvider, message); // Fire SendingMessage Event if (this.SendingMessage != null) this.SendingMessage(new MessageEventArgs(this._name, encrypted)); } }

 

 

 

 

 

 

0
相关文章