void MD5EngineTest::testMD5() { MD5Engine engine; // test vectors from RFC 1321 engine.update(""); assert (DigestEngine::digestToHex(engine.digest()) == "d41d8cd98f00b204e9800998ecf8427e"); engine.update("a"); assert (DigestEngine::digestToHex(engine.digest()) == "0cc175b9c0f1b6a831c399e269772661"); engine.update("abc"); assert (DigestEngine::digestToHex(engine.digest()) == "900150983cd24fb0d6963f7d28e17f72"); engine.update("message digest"); assert (DigestEngine::digestToHex(engine.digest()) == "f96b697d7cb7938d525a2f31aaf161d0"); engine.update("abcdefghijklmnopqrstuvwxyz"); assert (DigestEngine::digestToHex(engine.digest()) == "c3fcd3d76192e4007dfb496cca67e13b"); engine.update("ABCDEFGHIJKLMNOPQRSTUVWXYZ"); engine.update("abcdefghijklmnopqrstuvwxyz0123456789"); assert (DigestEngine::digestToHex(engine.digest()) == "d174ab98d277d9f5a5611c2c9f419d9f"); engine.update("12345678901234567890123456789012345678901234567890123456789012345678901234567890"); assert (DigestEngine::digestToHex(engine.digest()) == "57edf4a22be3c955ac49da2e2107b67a"); }
//用户帐号,密码登入 void MeetingConnImpl::Login(const char* strUserName, const char* strPassword,uint32_t clientType,bool bEncrypt) { /* std::string strTest="[18621066138,18979080001]"; std::string strTest2 = strTest; Parser parser; Var result; try { result = parser.parse(strTest2); Poco::JSON::Array::Ptr array =result.extract<Poco::JSON::Array::Ptr>(); for(Poco::Int32 i = 0; i<array->size();i++) { Var item = array->get(i); unsigned long long phone = item; cout<<phone; } } catch(JSONException& jsone) { //printf("%s \n",buffer); std::cout << jsone.message() << std::endl; return; } */ //md5 m_loginType = 1; m_userRole = 2; m_tryLoginCount = 0; m_lastLoginTime = Timestamp(); if(bEncrypt) { MD5Engine engine; engine.update(strPassword); strcpy(m_strUserAccount, strUserName); strcpy(m_strPassword, DigestEngine::digestToHex(engine.digest()).data()); } else { strcpy(m_strUserAccount, strUserName); strcpy(m_strPassword,strPassword); } m_clientType = clientType; if(m_bHasLogined == true) return; m_bHasLogined = false; char utfStr[1024]={0}; sprintf(utfStr, "{\"cmd\":\"login\",\"account\":\"%s\",\"password\":\"%s\",\"client_type\":%u}\r\n",m_strUserAccount,m_strPassword,clientType); strcpy(m_strLogin,utfStr); }
string ofxCrypto::md5(string source) { MD5Engine engine; engine.update(source); return DigestEngine::digestToHex(engine.digest()); }
std::string DataUtils::HexMD5(std::string data) { MD5Engine engine; engine.update(data); return DigestEngine::digestToHex(engine.digest()); }