加密哈希算法示例

更新:2007 年 11 月

此示例演示如何使用哈希函数来确保数据完整性。

获取示例及其安装说明

  • 执行下列一项或多项操作:

    • 在“帮助”菜单上,单击“示例”。

      自述文件将显示有关示例的信息。

    • 访问 Visual Studio 2008 示例网站。该网站提供了最新版本的示例。

    • 在安装了 Visual Studio 的计算机上查找示例。默认情况下,示例和自述文件安装在驱动器号:\Program Files\Microsoft Visual Studio 9.0\Samples\lcid 中。对于 Visual Studio 的速成版,所有示例都可联机找到。

有关更多信息,请参见定位示例文件

安全说明:

此示例代码用于阐释概念,因此仅显示与此概念相关的代码。该代码可能不符合特定环境的安全要求,因此不应原样搬用所显示的代码。我们建议您添加安全性代码和错误处理代码,以使项目更加安全可靠。Microsoft“按原样”提供此示例代码,不提供任何保证。

运行此示例

  • 按 F5。

演示

应用程序比较两个哈希值:某个文件中的文本的哈希值与 TextBox 控件中的文本的哈希值。哈希值是一块数据唯一和紧凑的数字表示形式。该文本文件是 Northwind 数据库的 Products 表的 XML 版本。当启动应用程序时,存储在 My.Resources 中的 XML 文件将被检索,并加载到 TextBox 控件中。XML 文件的哈希值将被计算。当单击“比较!”按钮时,将计算 TextBox 文本的哈希值。如果没有更改 TextBox 控件中的文本,哈希值将匹配。在源文件中即使更改一个字符也会更改哈希值。

RadioButton 控件确定计算的哈希类型:MD5、SHA1 或 SHA384。每种哈希算法都存在从 HashAlgorithm 类派生的不同 .NET Framework 类。这些类用于计算哈希值。

请参见

概念

加密概述

参考

MD5CryptoServiceProvider

SHA1CryptoServiceProvider

SHA384Managed

StreamReader

WriteXml

ReadXml