參考 在PPC上面檢查檔案MD5

2021-09-08 23:02:39 字數 1823 閱讀 2539

md5 是 message digest algorithm 5(資訊摘要演算法)的縮寫,md5 一種雜湊(hash)技術,廣泛用於加密、解密、資料簽名和資料完整性校驗等方面。任何乙個檔案,無論是可執行程式、影象檔案、臨時檔案或者其他任何型別的檔案,也不管它體積多大,都可以計算出乙個md5值,如果檔案被修改過,就算只改動了乙個位元組,其 md5 值也會變得完全不同。因此,我們可以通過對比同一檔案的 md5 值,來校驗這個檔案是否被「篡改」過。

今天看過一片在.net下實現的檢視檔案md5資訊的文章,感覺挺不錯,想到可能以後手機上也會用到,所以,順手來手機上試試,發現,在.net下,位元組陣列轉換為16進製表示的字串的方法在system.web.configuration.machinekeysection 中已經提供了乙個名為 bytearraytohexstring 方法,但是.netcf下就很杯具了,所以只能自己動手來實現,下面說說是怎麼實現的。

首先還是建了個wm5的應用程式專案,然後新增乙個md5lib類檔案,往裡面貼上如下**:

///

///計算檔案的 md5 值

///

///要計算 md5 值的檔名和路徑

///md5 值16進製制字串

public

static

string

md5file(

string

filename)

//////

計算檔案的雜湊值

///

///要計算雜湊值的檔名和路徑

///演算法:sha1,md5

///雜湊值16進製制字串

public

static

string

hashfile(

string

filename,

string

algname)

//////

計算雜湊值

///

///要計算雜湊值的 stream

///演算法:sha1,md5

///雜湊值位元組陣列

public

static

byte

hashdata(stream stream,

string

algname)if(

string

.compare(algname,

"sha1",

true

) ==0)

else

algorithm

=md5.create();

}return

algorithm.computehash(stream);}

這裡是主要**,網上一搜一大把,大家看注釋也就明白了,下面我們主要是自己實現了位元組陣列轉換為16進製表示的字元這個方法:如下很簡單:

///

///位元組陣列轉換為16進製表示的字串

///

///

///

public

static

string

bytearraytohexstring(

byte

buf)

}return

returnstr;}

ok,大功告成!執行起來如下圖:

ps:最近發現wm版塊好沉寂啊,難道各位都在醞釀什麼嗎?哈哈!

【zt】c#計算檔案的md5值例項

檔案md5加密

計算檔案的 md5 值 要計算 md5 值的檔名和路徑 md5 值16進製制字串 public static string md5file string filename 計算檔案的雜湊值 要計算雜湊值的檔名和路徑 演算法 sha1,md5 雜湊值16進製制字串 public static stri...

檔案MD5校驗

1.什麼是md5 md5訊息摘要演算法 英語 md5 message digest algorithm 一種被廣泛使用的密碼雜湊函式,可以產生出乙個128位 16位元組 的雜湊值 hash value 用於確保資訊傳輸完整一致。md5由美國密碼學家羅納德 李維斯特 ronald linn rives...

通過md5值檢查檔案資訊是否相同

bin bash md5值是通過統計乙個檔案的大小 許可權 內容等進行集合得來的值,可以通過比較兩個檔案的md5值進行比較這兩個檔案是否一致 通過md5值進行檔案比較 版本 v1.0 date 2016 10 19 author salt email zwj92087 163.com dir pat...