输入长度超过56的时候SHA1算法不对的问题

输入长度超过56的时候SHA1算法不对的问题,第1张

网上大多数的SHA1的算法的代码 如果输入长度超过56是不对的  原因就是 

一次处理的是56+8  64个字节的数据 超过56的话需要分成2个块 

具体细节没细看  下面的是超过56 可用的SHA1代码

头文件:

#ifndef SHA_1_H_INCLUDED_ 
#define SHA_1_H_INCLUDED_ 

// This is a relatively straightforward implementation of SHA-1. It makes no particular 
// attempt at optimization, instead aiming toward easy verification against the standard. 
// To that end, many of the variable names are identical to those used in FIPS 180-2 and 
// FIPS 180-3. 
// 
// The code should be fairly portable, within a few limitations: 
// 1. It requires that 'char' have 8 bits. In theory this is avoidable, but I don't think 
// it's worth the bother. 
// 2. It only deals with inputs in (8-bit) bytes. In theory, SHA-1 can deal with a number of 
// bits that's not a multiple of 8, but I've never needed it. Since the padding always results 
// in a byte-sized stream, the only parts that would need changing would be reading an

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/914790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存