基于SHA-256的HMAC文件校验器
2007-03-15 21:52:58 来源:WEB开发网核心提示:本文示例源代码或素材下载 HMAC即带密钥的HASH函数,用它产生的报文鉴别码(MAC)可以实现报文鉴别,基于SHA-256的HMAC文件校验器,这里我将其做成一个软件,用于对文件的合法性进行校验,它比起MD5和SHA-1来要安全,(其实因为不是正式的安全产品,以下我先简单介绍软件相关背景知识再介绍其代码实现,
本文示例源代码或素材下载
HMAC即带密钥的HASH函数,用它产生的报文鉴别码(MAC)可以实现报文鉴别。这里我将其做成一个软件,用于对文件的合法性进行校验。以下我先简单介绍软件相关背景知识再介绍其代码实现。
一、背景知识简介
有时候进行通信的双方基于安全的考虑需要对对方发过来的消息进行校验,以确定消息是未经第三方修改过的。这种校验可以这样进行:
*其中,生成校验码的算法一般采用HMAC,它保证了第三方在不知密钥的情况下,不可能在修改消息后可以同时修改校验码使之与修改后的消息匹配。
*在整个过程中消息是公开的(未经加密的),算法只提供消息的完整性校验而不提供保密性,保密性可由公钥加密算法现实,这里不作讨论。
二、软件的实现
我做的该软件是可以对电脑磁盘上的任意一文件生成一校验文件.vri(密钥由用户自己输入),根据该校验文件可以在需要之时对相应的文件进行校验。具体做法将在后面的例子中给出。
程序中的HMAC算法的HASH函数我采用的是SHA-256算法,它比起MD5和SHA-1来要安全。(其实因为不是正式的安全产品,所以在本程序中采用MD5或SHA-1也未尝不可)。
*HMAC的结构如下图所示:
[]
- ››基于JavaScript的网页版塔防游戏
- ››基于Android平台 QQ大战360手机游戏爆红
- ››Sharepoint 文档管理系列之归档处理
- ››基于Windows Azure的云计算应用设计
- ››基于AES算法实现对数据的加密
- ››基于SoPC目标板Flash编程设计的创建及应用
- ››基于SolidWarks齿轮机构的运动分析与仿真
- ››基于Windwos Server 2008故障转移群
- ››基于JavaScript的REST客户端框架
- ››基于JavaScript和CSS的Web图表框架横向对比
- ››基于JQuery地区三级联动列表
- ››基于GoogleMap,Mapabc,51ditu,VirtualEarth,Y...
赞助商链接