WEB开发网
开发学院操作系统Linux/Unix 系统管理工具包: 测试系统的有效性 阅读

系统管理工具包: 测试系统的有效性

 2008-11-11 08:12:28 来源:WEB开发网   
核心提示: 生成校验和信息的 md5 算法最初是为在加密文件之前生成文件的唯一指纹而开发的,这样可以保证解密文件的有效性,系统管理工具包: 测试系统的有效性(3),可以将 md5 生成的校验和表示为二进制字符串、十六进制字符串或 base64 编码字符串,在 MIME 电子邮件中使用了后一格式,该模块

生成校验和信息的 md5 算法最初是为在加密文件之前生成文件的唯一指纹而开发的,这样可以保证解密文件的有效性。可以将 md5 生成的校验和表示为二进制字符串、十六进制字符串或 base64 编码字符串。在 MIME 电子邮件中使用了后一格式,以确保唯一地标识文件中不同的附件。

为文件创建校验和

因为存在用于创建校验和信息的命令行解决方案,所以可以直接在命令行上创建任何文件的校验和。校验和信息唯一程度的一个很好示例是使用先前演示的文件示例,该示例具有相同的物理长度和内容,但只有字符不同。

您可以使用一个命令获得两个文件的校验和,如清单 1 所示。

清单 1. 使用一个命令获得两个文件的校验和

$ sum old new
50093 1 old
62381 1 new

即使清单 1 中只有两个字符不同,但获得的校验和数字却大相径庭。清单 2 显示了相同的文件,这次是使用 md5 检查的。

清单 2. 使用 md5 检查文件

$ md5 old new
MD5 (old) = 602f604720d3b57925e99bcaa7d931a4
MD5 (new) = c3f06c217a0f26c16f8d030837d8718b

这里的校验和明显不同,毫无疑问相关文件在某些方面存在不同。

创建校验和的另一个解决方案是使用 Perl 生成校验和信息。Perl 使用的一个模块是 Digest::MD5,该模块可以从数据的任何字符串或提供的文件生成 MD5 校验和。

清单 3 显示了一个简单的脚本,该脚本为命令行上作为十六进制字符串提供的文件返回 MD5 校验和(与清单 2 显示的格式完全相同)。

清单 3. 返回 MD5 校验和的脚本

use Digest::MD5;
use IO::File;
my $chk = Digest::MD5->new();
foreach my $file (@ARGV)
{
  $chk->addfile(IO::File->new($file));
  print "$file -> ",$chk->hexdigest,"n";
}

上一页  1 2 3 4 5 6 7 8  下一页

Tags:系统 管理 工具包

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接