资源简介
用C语言实现MD4哈希函数,它是将文件的每一行进行加密,输出一个128位的哈希值
代码片段和文件信息
#include
#include
#define MAX_LENGTH 10000
#define F(xyz) (((x)&(y))|((~x)&(z)))
#define G(xyz) (((x)&(y))|((x)&(z))|((y)&(z)))
#define H(xyz) ((x)^(y)^(z))
#define FF(abcdks) a=RL(a+F(bcd)+X[k]s)
#define GG(abcdks) a=RL(a+G(bcd)+X[k]+0x5a827999s)
#define HH(abcdks) a=RL(a+H(bcd)+X[k]+0x6ed9eba1s)
#define RL(xy) (((x)<<(y))|((x)>>(32-(y))))
#define PP(x) (x<<24)|((x<<8)&0xff0000)|((x>>8)&0xff00)|(x>>24)
unsigned char buffer[MAX_LENGTH];
unsigned X[64]length_pad[2];
unsigned AABBCCDDABCD;
int roundi;
void md4_function()
{
A=AAB=BBC=CCD=DD;
FF(ABCD 0 3);
FF(DABC 1 7);
FF(CDAB 211);
FF(BCDA 319);
FF(ABCD 4 3);
FF(DABC 5 7);
FF(CDAB 611);
FF(BCDA 7
- 上一篇:C++车票管理系统 源代码
- 下一篇:交通处罚单管理系统
相关资源
- DSS中的RTSPclientLib程序
- c 常用的数据结构 (Errata for Ford/Top
- rip协议编程及代码实现
- Windows Sockets 编程及UR机器人通信数据
- 茶壶的光照观察组(c++代码)
- C++实战源码-小蛇长得快
- C++实战源码-文字水平滚动
- C++实战源码-替换指定的字符串
- C++实战源码-小球称重
- C++实战源码-新同学的年龄
- C++实战源码-向数组中赋值
- C++实战源码-用#打印三角形
- C++实战源码-统计学生成绩分布
- C++实战源码-向数组中插入元素
- C++实战源码-用指向函数的指针比较大
- C++实战源码-用宏定义实现值互换
- C++实战源码-CD抓取
- C++实战源码-指定符号分割字符串
- C++实战源码-抓不住的兔子
- C++实战源码-用new动态创建结构体
- C++实战源码-将AVI动画分解成BMP位图
- C++实战源码-修改可执行文件中的资源
- C++实战源码-指向结构体变量的指针
- C++实战源码-将二维数组行列对换
- C++实战源码-应用random_shuffle算法将元
- C++实战源码-应用adjacent_find算法搜索相
- C++实战源码-数组中整数的判断
- C++实战源码-获取数组中元素的个数
- C++实战源码-将二维数组转换为一维数
- C++实战源码-迭代器的用法
评论
共有 条评论