快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

密码系统与.NET Framework

安全是许多应用的要害。提供认证和授权服务仅仅是整个安全系统的一部分。当数据在应用系统中使用、传输,它会如何呢?这就是密码学之所以由来的原因。密码学本身是一个很大的论题。在接下来的文章中,我们仅仅讨论.Net Framework及其提供的密码加密类。

为什么要用加密系统?

大多应用系统提供了安全特征,比如登录框、基于角色的认证等。然而当一些人假如截取了网络中的数据怎么办?或某人伪造传送在网上的数据?假如某人打开了存储密码的数据库?密码系统将提供我们解决问题的方式。使用.NET Framework加密类,你可以将流动在你系统中的数据加密,当认证的用户需要读取或修改时再解密数据。简而言之,密码系统具有下面的特征:
。保护数据不被第三方读取
。保护数据不被其它方修改
。保证数据准确到达目的地

密码类的类型:

在.Net Framwork个可用的加密类型包括下面几个:

。密钥加密类
。公钥加密类
。数字签名类
。哈希加密类
所有加密相关的类可以在System.Security.Cryptography名称空间中找到。

=密钥加密=
在密钥加密中,数据被一个唯一的密钥加密。这个密钥只有信息的接收和发送方知道。发送方使用密钥加密,接收方使用同一密钥解密。

.NET Framework提供以下几个类处理密钥加密。
DESCryptoServiceProvider
RC2CryptoServiceProvider
RijndaelManaged
TripleDESCryptoServiceProvider
:公钥加密:
和密钥加密不同,公钥加密使用两个密钥。一个叫做公钥一个是私钥。公钥是对外公开的,私钥则被这个密钥的拥有者保存着。被密钥加密的数据只能被相应的公钥解密。同样,被公钥加密的数据只能被相应的私钥解开。
自然地,为了加密你要传送的数据,你需要使用公共密钥。而它只能被相应的私有密钥解开。

.NET Framework提供了以下类处理公共密钥加密。

DSACryptoServiceProvider
RSACryptoServiceProvider

==数字签名==

数字签名被用在确认发送者的身份及保证数据的完整。它常常和公共钥匙加密一起使用。数字签名工作如下:

。发送者使用哈希算法对要发送的数据产生一个信息摘要,这个摘要简朴描述了要发送的数据。
。发送者使用私有密钥加密信息摘要从而得到一个数字签名。
。发送者通过安全渠道将数据发送出去。
。接收方收到数据,并使用公共密钥解密数字签名重新得到信息摘要。
。接收方应用一样的哈希算法创建一个新的信息摘要。
。假如发送方的信息摘要与招收方的信息摘要一致,则说明信息来自准确的地方。

DSACryptoServiceProvider 与 RSACryptoServiceProvider 类用来创建数字签名。

哈希加密==

哈希算法为给定可变长度的数据创建固定长度的输出。假如源数据改变,则产生不同的哈希值。它经常和数字签名一起使用。

.NET中提供了下面几个哈希类。

SHA1Managed
MD5CryptoServiceProvider
MACTripleDES


随机数生成器

在密码系统中,你可能多次需要产生密钥,随机数生成器可以满意要求。在.NET中RNGCryptoServiceProvider产生这样的随机数。
下一篇文章将介绍密钥加密几个类的使用






返回类别: 教程
上一教程: 在Internet上用通过.Net Remoting机制实现服务器对客户端的直接调用
下一教程: ASP.NET开发十大技巧

您可以阅读与"密码系统与.NET Framework"相关的教程:
· Windows 操作系统中的 .NET Framework 支持(正文)
· Windows 操作系统中的 .NET Framework 支持(附录)
· 用asp.net和xml做的新闻更新系统(2)
· .NET Framework For Java Programmers ---1(Good)
· 用asp.net和xml做的新闻更新系统(1)
    微笑服务 优质保证 索取样品