当前位置: 首页 > news >正文

网站转微信小程序开发华夏润达建设有限公司网站

网站转微信小程序开发,华夏润达建设有限公司网站,六安做网站的,网页设计与制作投稿转载自 玻璃猫 程序员小灰 摘要哈希生成的正确姿势是什么样呢#xff1f;分三步#xff1a; 1.收集相关业务参数#xff0c;在这里是金额和目标账户。当然#xff0c;实际应用中的参数肯定比这多得多#xff0c;这里只是做了简化。 2.按照规则#xff0c;把参数名和参数…转载自 玻璃猫 程序员小灰 摘要哈希生成的正确姿势是什么样呢分三步 1.收集相关业务参数在这里是金额和目标账户。当然实际应用中的参数肯定比这多得多这里只是做了简化。 2.按照规则把参数名和参数值拼接成一个字符串同时把给定的密钥也拼接起来。之所以需要密钥是因为攻击者也可能获知拼接规则。 3.利用MD5算法从原文生成哈希值。MD5生成的哈希值是128位的二进制数也就是32位的十六进制数。 第三方支付平台如何验证请求的签名同样分三步 1.发送方和请求方约定相同的字符串拼接规则约定相同的密钥。 2.第三方平台接到支付请求按规则拼接业务参数和密钥利用MD5算法生成Sign。 3.用第三方平台自己生成的Sign和请求发送过来的Sign做对比如果两个Sign值一模一样则签名无误如果两个Sign值不同则信息做了篡改。这个过程叫做验签。 MD5算法底层原理 简单概括起来MD5算法的过程分为四步处理原文设置初始值循环加工拼接结果。 第一步:处理原文 首先我们计算出原文长度(bit)对512求余的结果如果不等于448就需要填充原文使得原文对512求余的结果等于448。填充的方法是第一位填充1其余位填充0。填充完后信息的长度就是512*N448。 之后用剩余的位置512-44864位记录原文的真正长度把长度的二进制值补在最后。这样处理后的信息长度就是512*(N1)。 第二步:设置初始值 MD5的哈希结果长度为128位按每32位分成一组共4组。这4组结果是由4个初始值A、B、C、D经过不断演变得到。MD5的官方实现中A、B、C、D的初始值如下16进制 A0x01234567 B0x89ABCDEF C0xFEDCBA98 D0x76543210 第三步:循环加工 这一步是最复杂的一步我们看看下面这张图此图代表了单次A,B,C,D值演变的流程。 图中ABCD就是哈希值的四个分组。每一次循环都会让旧的ABCD产生新的ABCD。一共进行多少次循环呢由处理后的原文长度决定。 假设处理后的原文长度是M 主循环次数  M / 512 每个主循环中包含 512 / 32 * 4 64次 子循环。 上面这张图所表达的就是单次子循环的流程。 下面对图中其他元素一一解释 1.绿色F 图中的绿色F代表非线性函数。官方MD5所用到的函数有四种 F(X, Y, Z) (XY) | ((~X) Z) G(X, Y, Z) (XZ) | (Y (~Z)) H(X, Y, Z) X^Y^Z I(X, Y, Z)Y^(X|(~Z)) 在主循环下面64次子循环中F、G、H、I 交替使用第一个16次使用F第二个16次使用G第三个16次使用H第四个16次使用I。 2.红色“田”字 很简单红色的田字代表相加的意思。 3.Mi Mi是第一步处理后的原文。在第一步中处理后原文的长度是512的整数倍。把原文的每512位再分成16等份命名为M0~M15每一等份长度32。在64次子循环中每16次循环都会交替用到M1~M16之一。 4.Ki 一个常量在64次子循环中每一次用到的常量都是不同的。 5.黄色的S 左移S位S的值也是常量。 “流水线”的最后让计算的结果和B相加取代原先的B。新ABCD的产生可以归纳为 新A 原d 新B  b((aF(b,c,d)MjKi)s) 新C 原b 新D 原c 总结一下主循环中的64次子循环可以归纳为下面的四部分 第一轮 FF(a,b,c,d,M0,7,0xd76aa478 s[0]7, K[0]  0xd76aa478 FF(a,b,c,d,M1,12,0xe8c7b756s[1]12, K[1]  0xe8c7b756 FF(a,b,c,d,M2,17,0x242070db) FF(a,b,c,d,M3,22,0xc1bdceee) FF(a,b,c,d,M4,7,0xf57c0faf) FF(a,b,c,d,M5,12,0x4787c62a) FF(a,b,c,d,M6,17,0xa8304613 FF(a,b,c,d,M7,22,0xfd469501 FF(a,b,c,d,M8,7,0x698098d8 FF(a,b,c,d,M9,12,0x8b44f7af) FF(a,b,c,d,M10,17,0xffff5bb1 FF(a,b,c,d,M11,22,0x895cd7be) FF(a,b,c,d,M12,7,0x6b901122 FF(a,b,c,d,M13,12,0xfd987193 FF(a,b,c,d,M14,17, 0xa679438e) FF(a,b,c,d,M15,22,0x49b40821 第二轮 GG(a,b,c,d,M1,5,0xf61e2562 GG(a,b,c,d,M6,9,0xc040b340 GG(a,b,c,d,M11,14,0x265e5a51 GG(a,b,c,d,M0,20,0xe9b6c7aa) GG(a,b,c,d,M5,5,0xd62f105d) GG(a,b,c,d,M10,9,0x02441453 GG(a,b,c,d,M15,14,0xd8a1e681 GG(a,b,c,d,M4,20,0xe7d3fbc8 GG(a,b,c,d,M9,5,0x21e1cde6 GG(a,b,c,d,M14,9,0xc33707d6 GG(a,b,c,d,M3,14,0xf4d50d87 GG(a,b,c,d,M8,20,0x455a14ed) GG(a,b,c,d,M13,5,0xa9e3e905 GG(a,b,c,d,M2,9,0xfcefa3f8 GG(a,b,c,d,M7,14,0x676f02d9 GG(a,b,c,d,M12,20,0x8d2a4c8a) 第三轮 HH(a,b,c,d,M5,4,0xfffa3942 HH(a,b,c,d,M8,11,0x8771f681 HH(a,b,c,d,M11,16,0x6d9d6122 HH(a,b,c,d,M14,23,0xfde5380c) HH(a,b,c,d,M1,4,0xa4beea44 HH(a,b,c,d,M4,11,0x4bdecfa9 HH(a,b,c,d,M7,16,0xf6bb4b60 HH(a,b,c,d,M10,23,0xbebfbc70 HH(a,b,c,d,M13,4,0x289b7ec6 HH(a,b,c,d,M0,11,0xeaa127fa) HH(a,b,c,d,M3,16,0xd4ef3085 HH(a,b,c,d,M6,23,0x04881d05 HH(a,b,c,d,M9,4,0xd9d4d039 HH(a,b,c,d,M12,11,0xe6db99e5 HH(a,b,c,d,M15,16,0x1fa27cf8 HH(a,b,c,d,M2,23,0xc4ac5665 第四轮 Ⅱa,b,c,d,M0,6,0xf4292244 Ⅱa,b,c,d,M7,10,0x432aff97 Ⅱa,b,c,d,M14,15,0xab9423a7 Ⅱa,b,c,d,M5,21,0xfc93a039 Ⅱa,b,c,d,M12,6,0x655b59c3 Ⅱa,b,c,d,M3,10,0x8f0ccc92 Ⅱa,b,c,d,M10,15,0xffeff47d) Ⅱa,b,c,d,M1,21,0x85845dd1 Ⅱa,b,c,d,M8,6,0x6fa87e4f) Ⅱa,b,c,d,M15,10,0xfe2ce6e0) Ⅱa,b,c,d,M6,15,0xa3014314 Ⅱa,b,c,d,M13,21,0x4e0811a1 Ⅱa,b,c,d,M4,6,0xf7537e82 Ⅱa,b,c,d,M11,10,0xbd3af235 Ⅱa,b,c,d,M2,15,0x2ad7d2bb) Ⅱa,b,c,d,M9,21,0xeb86d391 第四步:拼接结果 这一步就很简单了把循环加工最终产生的ABCD四个值拼接在一起转换成字符串即可。
http://www.zqtcl.cn/news/408946/

相关文章:

  • 做淘宝相关网站上海网站建设做物流一
  • 服装配件网站建设 中企动力静态网站 后台
  • 做网站较好的框架网站建设的定位是什么
  • 如何保护自己的网站桂林医院网站建设
  • 产品品牌策划方案佛山网站优化美姿姿seo
  • 北京城建一建设发展有限公司网站大连在哪个省的什么位置
  • 北京知名网站建设公司排名学校诗歌网站建设
  • 个人做网站接装修活哪个网站好上海造价信息网官网
  • 网页上做网会员网站备案怎么写oa报表网站开发
  • 郑州服装网站建设网站的层级
  • 东莞建设网站制作怎么建立信息网站平台
  • 网站建设的公司服务手机上做ppt的软件
  • 体育网站模版爱站网
  • 建设部网站最新消息浏览器网站大全免费
  • 网站建设 选中企动力邯郸哪有做网站的公司
  • 个人网站cms系统网站排名下降了怎么办
  • 2o18江苏建设网站施工员模试卷哈尔滨app开发
  • 网站后台管理系统论文湖州交通网站集约化建设项目
  • 唐山地区网站开发公司郑州市哪里有网站建设
  • ps做汽车网站下载网络推广专员招聘
  • 荥阳网站开发WordPress 采集文章 图片
  • 网站域名登记证明文件音乐网站开发需要什么语言工具
  • 贵州域网网站建设东莞做外贸网站的公司
  • ps怎么做华为网站界面怎样做网站步骤
  • 免费做试卷的网站或试卷seo 培训教程
  • 创意网站建设价格多少最新新闻热点事件2022年8月
  • wordpress用户登录界面插件重庆网站排名优化公司
  • 网站整体建设方案设计wordpress 插件升级慢
  • 淄博网站制作升级优化青岛品牌网站建设价格
  • 网站后台管理系统模块星星wordpress模板