文件校验码
2014-04-10 17:01
246 查看
在文件传输过程中可能会造成文件损坏或被他人恶意更改,为了了解文件是否出现了上述情况,我们常为文件生成“文件校验码”
常用的有:
一. md5sum:一般由32个或64个字符组成(unsigned char md5_32[16] 或者 unsigned char md5_64[32])
用户:常使用md5校验工具生成和比较文件的“文件校验码”
developer:常使用开源代码,在程序中使用md5接口产生“文件校验码”
例如开源MD5.cpp接口的使用
声明:
md5_state_t sstate; // 一个结构体,用来存放计算的中间结果
unsigned char smd5[16] = {0}; // 存放最后的md5值
初始化:
void md5_init(md5_state_t *pms); // 将结构体里的变量根据特定规则初始化
添加buff:
void md5_append(md5_state_t *pms, const md5_byte_t *data, int nbytes); // 根据buff中的内容更新结构体
pms: 结构体
data: buff
nbytes: buff 的长度
得出md5值:
void md5_finish(md5_state_t *pms, md5_byte_t digest[16]); // 经过算法将结构体的内容转化为md5
二. sha1sum : 一般由40个字符组成
linux/unix平台下可以使用命令行生成一个文件的sha1sum值。
常用的有:
一. md5sum:一般由32个或64个字符组成(unsigned char md5_32[16] 或者 unsigned char md5_64[32])
用户:常使用md5校验工具生成和比较文件的“文件校验码”
developer:常使用开源代码,在程序中使用md5接口产生“文件校验码”
例如开源MD5.cpp接口的使用
声明:
md5_state_t sstate; // 一个结构体,用来存放计算的中间结果
unsigned char smd5[16] = {0}; // 存放最后的md5值
初始化:
void md5_init(md5_state_t *pms); // 将结构体里的变量根据特定规则初始化
添加buff:
void md5_append(md5_state_t *pms, const md5_byte_t *data, int nbytes); // 根据buff中的内容更新结构体
pms: 结构体
data: buff
nbytes: buff 的长度
得出md5值:
void md5_finish(md5_state_t *pms, md5_byte_t digest[16]); // 经过算法将结构体的内容转化为md5
二. sha1sum : 一般由40个字符组成
linux/unix平台下可以使用命令行生成一个文件的sha1sum值。
$ sha1sum filename [filename] ... > SHA1SUM 详见:http://en.wikipedia.org/wiki/Sha1sum点击打开链接 windows平台下未使用过。
相关文章推荐
- asp MD5加密方式使用建议
- asp.net实现md5加密
- php 的加密函数 md5,crypt,base64_encode 等使用介绍
- PHP中MD5函数使用实例代码
- php md5下16位和32位的实现代码
- jquery插件开发之实现md5插件
- javascript客户端生成MD5值的函数代码
- c++实现MD5算法实现代码
- php验证是否是md5编码的简单代码
- java不可逆加密算法之md5加密算法使用示例
- Flex Base64 md5 123456后得到4QrcOUm6Wau+VuBX8g+IPg==
- Python 实现PHP内置MD5函数方法
- struts2使用MD5给pwd加密
- Flash使用域内存api的MD5,速度超快!
- java获取文件MD5值方法
- 获取Java的32位MD5实现
- 给你的登录功能加点“盐”
- MD5 32位加密 只限拼音
- MD5及邮件发送
- java文件相关操作,比较。