密码算法程序设计实践选的SHA-1。在写的过程中遇到一丢丢关于python移位的问题,记录一下。SHA-1其中第一步需要填充消息。简单阐述一下sha1填充消息的过程:如输入消息“123”,先转成ascii码――313233,消息长度为3*8=24。即00110001 00110010 00110011然后填充一个1占1bit,再填充447-24bit个0。10000000...00000000 最后64bit加上消息长度24的二进制0001 1000二进制相当于是:00110001 00110010 00110011 10000000...00000000 0001100016进制表示31323380 00000000...0018不只是python,对于移位运算都有:运算规则:按二进制形式把所有的数字向左移动对应位数,高位移出,低位补零。在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方。
暂无评论