發一下之前在用c++寫windows下的爬蟲的時候用到的**,非常羨慕php用自帶的md5函式直接使用即可。在windows環境下可以用第三方庫或winapi來進行md5摘要。
以下為自己寫好的乙個md5加密類,為了方便類成員變數都採用了public的許可權,僅供參考
## globallib 自己定義的一些巨集工具和可能用到的標頭檔案(因為是之前專案裡的所以我直接拷貝了) ##
;## 實現檔案 ##
#include "stdafx.h"
#include "_crypt.h"
_crypt::_crypt() :m_hcrypt(0), m_hhash(0), m_md5buf(null), m_md5buflen(0), m_md5charbuf(null)
_crypt::~_crypt()
bool _crypt::init()
return
true;
}void _crypt::clear()
if (null != this->m_md5buf)
if (null != this->m_md5charbuf)
this->m_md5buflen = 0;
this->m_initres[1] = this->m_initres[2] =false;
}bool _crypt::se***5(byte *data, dword len)
//如果初始化失敗 則不能進行md5加密
if (!this->m_initres[0] || !this->m_initres[1])
return
false;
//傳入要加密的資料 給hash物件
this->m_initres[2] = crypthashdata(this->m_hhash, data, len, 0);
if (!this->m_initres[2])
return
true;
}bool _crypt::ge***5()
this->m_md5buf = new byte[dwreallen];
if (this->m_md5buf == null)
return
false;
if (!cryptgethashparam(this->m_hhash, hp_hashval, this->m_md5buf, &dwreallen, 0))
this->m_md5buflen = dwreallen;
this->m_md5charbuf = new
char[dwreallen * 2 + 1];
if (null == this->m_md5charbuf)
for (unsigned
int count = 0; count < this->m_md5buflen; count++)
m_md5charbuf[dwreallen * 2] = '\0';
return
true;
}bool _crypt::displaymd5()
java中使用MD5進行加密
在各種應用系統的開發中,經常需要儲存使用者資訊,很多地方都要儲存使用者密碼,而將使用者密碼直接儲存在伺服器上顯然是不安全的,本文簡要介紹工作中常用的 md5加密演算法,希望能拋磚引玉。一 訊息摘要簡介 乙個訊息摘要就是乙個資料塊的數字指紋。即對乙個任意長度的乙個資料塊進行計算,產生乙個唯一指印 對於...
java中使用MD5進行加密
在各種應用系統的開發中,經常需要儲存使用者資訊,很多地方都要儲存使用者密碼,而將使用者密碼直接儲存在伺服器上顯然是不安全的,本文簡要介紹工作中常用的 md5加密演算法,希望能拋磚引玉。一 訊息摘要簡介 乙個訊息摘要就是乙個資料塊的數字指紋。即對乙個任意長度的乙個資料塊進行計算,產生乙個唯一指印 對於...
java中使用MD5進行加密
在各種應用系統的開發中,經常需要儲存使用者資訊,很多地方都要儲存使用者密碼,而將使用者密碼直接儲存在伺服器上顯然是不安全的,本文簡要介紹工作中常用的 md5加密演算法,希望能拋磚引玉。一 訊息摘要簡介 乙個訊息摘要就是乙個資料塊的數字指紋。即對乙個任意長度的乙個資料塊進行計算,產生乙個唯一指印 對於...