你好我试图用C ++实现SHA 1 - 只是为了好玩和更好地理解HASH功能。我正在关注我在https://en.wikipedia.org/wiki/SHA-1中找到的伪代码。我在主循环,我必须计算'临时'。但是当我添加二进制值时,我得到的数字大于32位。我的代码没有任何问题,但这应该发生吗?
For example:
When I add
11101000101001000110000000101100
and
01100111010001010010001100000001
I get:
01001111111010011000001100101101
but technically it should be:
0101001111111010011000001100101101
大于32位。这应该发生还是应该忽略超过32的位?或者我这样做完全错了,并坚持像伪代码一样使用HEX?
任何帮助将不胜感激!