设为首页 加入收藏

TOP

Linux C++ MD5
2014-11-24 02:04:19 来源: 作者: 【 】 浏览:0
Tags:Linux MD5

#include
#include
#include
#include
#include
#include
using namespace std;


/**
* @模拟 php 的 md5函数,返回md5
* len 要返回从左到右几个字符
*/
void phpMd5(const string& src,char* md,int len=32)
{
unsigned char md5_buf[16];
MD5((const unsigned char*)src.c_str(), src.size(), md5_buf);


//定义一字符窜指针,指向要写入的地址
char *p = md;


for(int i=0;i<16; i++)
{
sprintf(p,"%02x",md5_buf[i]);
p+=2;
}
//复位指针
p = md;
if(len <1 || len > 32)
len = 32;
*(p+len) = '\0';
}


int main()
{
string my_str = "helloa";


/*
uint gid = 124;
char tmp_str[32];
sprintf(tmp_str,"%d",gid);
my_str.assign(tmp_str);
*/
char md5_result[32];
phpMd5(my_str,md5_result);
printf("%s",md5_result);
printf("\n");


return 0;
}


编译


g++ md5.cpp -o md5 -lssl


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Ubuntu 9.04 + Qt 4.5.1 安装加运.. 下一篇Linux-2.6.26内核中ARM中断实现详..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: