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

室内设计网站免费模板宠物喂养网页设计模板以及代码

室内设计网站免费模板,宠物喂养网页设计模板以及代码,沙漠风网站建设怎么样,顶尖的郑州网站建设SHA-256 是一种密码学哈希函数,是 SHA-2(Secure Hash Algorithm 2)家族的一部分。它被广泛用于数据完整性验证、数字签名以及密码存储等领域。 1、SHA-256的原理 SHA-256 生成一个固定长度为 256 位(32 字节)的哈希值。无论输入数据的大小或类型,输出的哈希值始终是 25…SHA-256 是一种密码学哈希函数,是 SHA-2(Secure Hash Algorithm 2)家族的一部分。它被广泛用于数据完整性验证、数字签名以及密码存储等领域。 1、SHA-256的原理 SHA-256 生成一个固定长度为 256 位(32 字节)的哈希值。无论输入数据的大小或类型,输出的哈希值始终是 256 位长。SHA-256 具有以下几个特点: 单向性: 通过哈希值无法反推出原始数据。这使得它适用于存储密码等敏感信息。抗碰撞性: 找到两个不同的输入数据,它们的哈希值相同的难度非常高。雪崩效应: 输入数据的微小变化会导致输出的哈希值有显著变化。固定长度输出: 无论输入数据的大小如何,输出始终是256位。2、SHA-256 的主要步骤 数据填充: 将数据填充到满足 512 位的整数倍。填充方式是先加一个 ‘1’ 位,然后加足够的 ‘0’,最后附加一个 64 位的数据长度。 初始散列值: 使用一组 32 位的常数初始化 8 个变量。 处理消息块: 对每个 512 位的消息块进行一系列数学运算,这些运算主要包括位运算、模加法和一些常量的使用。每个块处理后,将结果累加到初始散列值中。 输出最终哈希值: 所有块处理完后,将最终的 8 个变量拼接在一起形成 256 位的输出哈希值。 3、示例数据 假设我们要计算字符串 “abc” 的 SHA-256 哈希值。 3.1.数据填充(同SHA1,不再详细解释原因) 首先将输入数据填充到长度为 512 位的倍数(一个块为 512 位)。对于字符串 “abc”: 3.1.1 原始数据: 二进制表示(ASCII 编码): a: 01100001 b: 01100010 c: 01100011 总共 24 位:01100001 01100010 011000113.1.2 添加一个 ‘1’ 位: 01100001 01100010 01100011 13.1.3 填充 ‘0’:填充到 448 位: 01100001 01100010 01100011 10000000后面加 423 个 0 3.1.4 添加原始长度:最后附加 64 位的原始长度(24 位),结果为: 00000000000000000000000000000000000000000000000000000000000110003.1.5 填充后的总数据长度为 512 位(64 字节): 01100001 01100010 01100011 10000000 00000000 ... 00000000 00000000 000110003.2 初始化散列值 SHA-256 使用 8 个 32 位的初始哈希值(常数): H0 = 6a09e667 H1 = bb67ae85 H2 = 3c6ef372 H3 = a54ff53a H4 = 510e527f H5 = 9b05688c H6 = 1f83d9ab H7 = 5be0cd193.3 处理消息块 将 512 位的数据分成 16 个 32 位的字: W0 = 01100001 01100010 01100011 10000000W1 - W14都为 0,W15 为 00000000 00000000 00000000 00011000然后将这些字扩展为 64 个字,并依次进行运算。这里会涉及到位操作、模加法和常量使用。 由于计算过程非常复杂且公式较多,下面是一些关键步骤: 3.3.1 主要计算公式: Σ0(a) = ROTR(2,a) ^ ROTR(13,a) ^ ROTR(22,a) Σ1(e) = ROTR(6,e) ^ ROTR(11,e) ^ ROTR(25,e) Ch(e,f,g) = (e f) ^ (~e g) Maj(a,b,c) = (a b) ^ (a c) ^ (b c)3.3.2 循环计算: for i in range(64):T1 = h + Σ1(e) + Ch(e,f,g) + K[i] + W[i]T2 = Σ0(a) + Maj(a,b,c)h = gg = ff = ee = d + T1d = cc = bb = aa = T1 + T2最终,这个块的处理结果会累加到初始哈希值中。 3.4.输出最终哈希值 处理所有块后,将 H0-H7 的值连接起来就是最终的 SHA-256 哈希值。 ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad4、python实现 import structdef right_rotate(n, b):"""右旋转 n by b bits."""return
http://www.hkea.cn/news/14432337/

相关文章:

  • 电子商务网站软件建设的核心是什么金融网站模板 html下载
  • crm网站下载江苏常州建设局网站
  • 合肥大型网站设计公温州 网站建设
  • 网站做授权登录个人网页制作怎么做
  • 南通企业网站建设做网站是怎么收费的是按点击率
  • 深圳专业企业网站制作哪家好青岛外贸网站建设哪家好
  • wap网站开发公司图片网站模板下载
  • asp access网站架设教程wordpress安装 用户名已存在
  • 济南做公司网站ui设计最好的培训机构
  • 如何建设公众平台网站小地方网站建设公司
  • 联盟网站做任务苏州做网站要多少钱
  • 优秀的手机网站案例一鸣东莞网站建设公司
  • 外包网站开发安全吗网站编辑可以做运营吗
  • 做一个公众号多少钱搜索引擎网站优化推广
  • 网站建设的作用临沂seo推广外包
  • 西安烽盈网站建设推广网站子域名什么意思
  • 网站建设朋友圈怎么写中国做网站最好的企业
  • 建站之星破解版下载长沙营销型网站建设公司
  • 域名怎么解析到网站比较火的小程序购物平台
  • 网站建设技术方面论文太原网站建设方案
  • 长沙百度提升优化重庆百度推广优化排名
  • 做erp系统的网站企业系统化管理
  • 行业数据可以从哪里获取seo的优化原理
  • 网站建设杭州滨江订阅号做微网站
  • 东莞家用台灯东莞网站建设手工企业网站模板
  • 网站建立健全举报工作机制暖色调 网站
  • 网站推广做的比较好的公司网站开发有什么好的介绍
  • 校园二手交易网站开发朔州城市建设网站
  • 咸宁网站建设哪家专业赣州酒店网站建设
  • 浏览器正能量不良网站万网主体新增网站备案需要是滴么