
数字签名算法(DSA)得以完成,C语言中Hash算法也已实现。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
1) 运用C和C++编程语言来具体落实DSA算法。2) 在DSA中,Hash函数采用了SHA算法作为其核心实现。首先,消息填充至关重要:由于我们以字节为单位进行数据存储,因此消息的长度(以位为单位)必须是8的整数倍。在填充过程中,同样需要以8位、8位的方式进行补全,这意味着无法仅填充单个二进制位,至少需要8个二进制位(即一个字节)。因此,最少需要填充一个字节,最多可以填充64个字节(64 * 8 = 512字节)。在SHA1中,为了确保哈希值小于2^64长度的输入消息,首先对消息m的长度进行处理,并判断补0后的长度是否是512位的倍数。其次,由于涉及大量位数的大整数运算,例如这里规定p为512位,因此需要设计一个大整数类BigNumber。BigNumber的成员变量包括sign、length、uint32_t类型的number数组[MAXLENGTH],其中MAXLENGTH被设定为128,意味着这个BigNumber最多可以由128个uint32_t类型的数值组合而成。
全部评论 (0)
还没有任何评论哟~


