• λ我爱Aspx >> Asp.Net >> 密码的故事 (ST:MS,Author:Billy Hollis )
  • 密码的故事 (ST:MS,Author:Billy Hollis )

  • :aspxer  Դ:internet  :2007-5-31 2:20:01  ؼ:
  • 密码的故事 (ST:MS,Author:Billy Hollis )

    le class=ubb cellspacing=0>密码的故事

    2002 年 3 月 14 日

    本文是由一个问题引出的。我需要一种将密码保存在加密文件中的方法,因为我需要记住许多密码,但记忆力却已大不如前。我知道有许多商用工具能够做到这一点,但我感到学习 .NET 中的一项新技术真的很有好处。

    我用 Visual Basic® .NET 完成了一个简单而完整的程序,用于加密和解密文件,从中学到了许多知识。既然加密对于多种开发都是一个重要问题,本文就介绍一下如何构造这样的程序。

    有各种低级别的技术可以用于加密,如 Microsoft Crypto API。而在 .NET 中,则是将这些复杂内容打包在各个 .NET 框架类中,并且由一个 System.Security 命名空间包含这些与加密相关的类。我们不可能查看该命名空间中的所有类,但通过分析一个最简单的、使用数据加密标准 (DES) 算法进行加密和解密的类,可以大概了解它们的工作原理。

    正如前面提到的,我们要执行一个完整的加密和解密文件的过程,但首先需要解释一下该程序中涉及的许多基本概念。除有关密码的原理外,还有必要简单讨论一下 .NET 中的流,因为加密类是以流的形式实现的。

    理解流

    流是 .NET 中处理字节的基本概念。下面简单介绍一下其工作原理。

    假设要读取一个文件,将所有大写字母更改为小写字母,然后将结果写入另一个文件。图 1 显示了要完成的各个步骤的关系图。

    图 1:读取文件、处理内容并写回结果的过程

    在 .NET 中,完成此过程的最好方法是使用流。“流”是一个对象,用于接收和/或发送信息字节。流有两种 - 后端流和过程流。

    后端流

    后端流从某个可以保存字节的位置获取字节或将字节存储到该位置。文件流就是一种后端流。文件流使用文件作为字节的后端存储,并读取或写入该文件。

    Ҷƪл˵?
  • һƪ呵呵,泼点儿凉水。
    һƪ关于字符窜和数字分离