1. 算法不同。CRC采用多項(xiàng)式除法,MD5和SHA1使用的是替換、輪轉(zhuǎn)等方法;
2. 校驗(yàn)值的長度不同。CRC校驗(yàn)位的長度跟其多項(xiàng)式有關(guān)系,一般為16位或32位;MD5是16個(gè)字節(jié)(128位);SHA1是20個(gè)字節(jié)(160位);
3. 校驗(yàn)值的稱呼不同。CRC一般叫做CRC值;MD5和SHA1一般叫做哈希值(Hash)或散列值;
4. 安全性不同。這里的安全性是指檢錯(cuò)的能力,即數(shù)據(jù)的錯(cuò)誤能通過校驗(yàn)位檢測出來。CRC的安全性跟多項(xiàng)式有很大關(guān)系,相對于MD5和SHA1要弱很多;MD5的安全性很高,不過大概在04年的時(shí)候被山東大學(xué)的王小云破解了;SHA1的安全性最高。
5. 效率不同,CRC的計(jì)算效率很高;MD5和SHA1比較慢。
6. 用途不同。CRC一般用作通信數(shù)據(jù)的校驗(yàn);MD5和SHA1用于安全(Security)領(lǐng)域,比如文件校驗(yàn)、數(shù)字簽名等。
新聞熱點(diǎn)
疑難解答