瀏覽單個文章
Scorpion
Junior Member
 
Scorpion的大頭照
 

加入日期: Jan 2001
您的住址: 天龍國蛆城市
文章: 769
引用:
作者fto
SFV原來是這麼糟糕的演算法∼怎麼碰撞率這麼高,

三個ISO檔全都是FFFFFFFF...


不是這樣的,就算碰撞率高,也沒有這麼巧的事!

微軟發佈的 ISO 都是使用內部的影像檔工具 cdimage.exe 來製作 ISO 檔,此工具有一個參數

-x compute and encode "AutoCRC" values in image

會在製作影像檔時計算該 ISO 的 CRC 值並寫入在 ISO 檔尾

以上面的大量授權版為例
zh-tw_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-74140.iso

使用 Hex 編輯器或 Total Commander Viewer 開啟,跳到檔尾,會看到



最後面的四個 byte 要倒過來看,91F7B572 就是該 ISO 檔的 CRC 值,用一般的 SFV 軟體檢驗會剛好互補成 FFFFFF

因此微軟有一個檢查工具 CRC.EXE 可以做這件工作

F:\>crc zh-tw_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-74140.is
o

CRC Verification Utility, Version 3.05
Copyright (C) Microsoft, 1992-1997

100% complete

AutoCRC signature for file zh-tw_windows_xp_professional_with_service_pack_3_x86
_cd_vl_x14-74140.iso (633923584 bytes) is 0x91F7B572

AutoCRC indicates the file zh-tw_windows_xp_professional_with_service_pack_3_x86
_cd_vl_x14-74140.iso is VALID

表示這個影像檔是正確未被篡改過的原始 ISO。

若將上述 ISO 燒成光碟,此 CRC 亦可檢驗,只要將上面的 ISO 檔名改為光碟代號即可。

很多人喜歡將原版 ISO 用 UltraISO 重新編輯加入其他東西如序號,再另行存檔,整個結構都被破壞,AutoCRC 也就無效了。

下載 CRC.EXE
     
      
舊 2008-05-12, 02:21 PM #161
回應時引用此文章
Scorpion離線中