发新话题
打印

前后2次抓盘出现MD5不一致的问题解决了没有?

前后2次抓盘出现MD5不一致的问题解决了没有?

刚看了一篇文章:
          

UltraISO的光盘映像功能中存在的一个重大问题
         
       
作者:程一
        2004年10月05日
  UltraISO是一个很方便的光盘工具,生成光盘的映像是它的主要功能之一。
  
  但是笔者日前发现,UltraISO中存在一个重大的问题,那就是它的映像生成功能存在缺陷。
  
  问题描述:UltraISO在生成映像时,并不能生成和光盘完全吻合的映像。或者说,这个映像和真正的光盘内容有偏差。UltraISO的光盘映像生成功能中潜藏着不确定性。
  
  严谨的科学实验必须能够再现,这里给出这个BUG的再现步骤:
  
  1、设有一个光盘映像文件FileA.ISO,用WinMD5(这是一个第三方MD5检查工具)计算这个ISO文件的MD5数值,假设该数值为SumA。然后将这个ISO文件用刻录软件刻录到光盘,
  2、用UltraISO的光盘映像制作功能把刚刻好的光盘制作一个映像文件,设为FileB.ISO。用WinMD5对此文件进行计算,得到MD5数值是SumB。 则有结果 sumA≠sumB。即这个ISO文件FileC.ISO已经和原始的ISO文件FileA.ISO不一样了。
  3、接着用UltraISO的光盘检查功能检查刚刻好的光盘,得到MD5检查结果设为SumB,则结果也是 sumA≠sumB。
  4、但如果用别的ISO工具比如MagicISO来对刚刻好的光盘生成映像文件FileC.ISO,并用WinMD5计算文件FileC.ISO所得到的MD5数值设为SumC,则SumC=SumA。可见MagicISO工具软件在生成ISO文件时是十分精准的。
  其实,不用MD5这样严格的文件检查,只要看看ISO文件长度就能发现,UltraISO从刚刻好的光盘里生成的ISO文件已经和原映像文件的长度不一致了。
  
  我们知道,ISO文件通常是要由第三方的刻录软件比如Nero之类的软件在刻录光盘中使用的,于是UltraISO的这种不确定性是一个很大的隐患。此外,这个缺陷不仅影响到了ISO映像文件的精准,还影响到了UltraISO的光盘检查功能里MD5报告的数值,其结果是光盘检查中的MD5值也和生成 ISO文件的MD5值一样是错误的。
  
  UltraISO的光盘检查功能是一个极其有用的功能,特别是其中的MD5计算,是验证光盘的强有力工具。但可惜,现在这个功能也跟着有了残缺。
  
  我想这一定是因为UltraISO的映像提取不准确,造成了其MD5计算也不准确。表面上看起来,UltraISO对光盘的MD5检查结果和自己生成的ISO文件用WinMD5检查结果一致,但这个ISO文件已经和原文件已经有了很大出入。
  
  结论:UltraISO到最新的7.22版为止,其ISO生成与原始光盘之间并不完全一致。并且,随着生成ISO/刻制光盘的代数的增加,会越来越偏离最早的原始光盘映像文件。
  这个实验的步骤及结论我已提交到了UltraISO的官方论坛,但愿开发者能够充分重视这个问题。■
※注:本文发表后,UltraISO的开发者和我取得了联系,他们表示将在后续版本中纠正本文指出的问题。我在这里对UltraISO开发者严谨求实的态度表示赞赏。

TOP

TOP

引用:
补充说明:
1)几乎所有刻录软件在将ISO镜像刻录到CD-R上时会添加空白数据(Padding Blocks),目的是提高光盘的访问性能。否则有些老光驱在定位最外边的扇区时可能有问题


明白了,谢谢!原来是光盘尾部的问题!只要启用“ISO文件卷过滤器”,来制作ISO光盘镜像就能得到跟刻盘前原ISO一模一样的文件了!

要注意一点就是忠实于原盘得到的MD5反而会不一样!

[ 本帖最后由 kowloons 于 2007-2-8 15:23 编辑 ]

TOP

发新话题