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

万网网站模板操作湖南网站制作哪家好

万网网站模板操作,湖南网站制作哪家好,集团网站建设效果,天津品牌网站制作SM3是一种广泛使用在中国国家标准中的哈希算法,全称为“中国国家密码算法SM3”。它由中国国家密码管理局制定,主要用于数字签名和消息完整性验证。SM3算法与SHA-256在结构上类似,但其设计具有特定的改进以增强安全性。 SM3算法生成256位的哈希值,使用了32轮的迭代运算,并…

SM3是一种广泛使用在中国国家标准中的哈希算法,全称为“中国国家密码算法SM3”。它由中国国家密码管理局制定,主要用于数字签名和消息完整性验证。SM3算法与SHA-256在结构上类似,但其设计具有特定的改进以增强安全性。

SM3算法生成256位的哈希值,使用了32轮的迭代运算,并且依赖于消息扩展、压缩函数、消息混淆等步骤。

1、SM3算法主要步骤

  1. 消息填充:首先对输入的消息进行填充,使其长度变为512的倍数。填充方法是在消息末尾添加一个’1’位,然后添加一定数量的’0’位,最后再添加64位的消息长度。

  2. 消息扩展:将填充后的消息分为512位的块,然后进行消息扩展,将每个512位的消息块扩展为132个32位的字。

  3. 压缩函数:将消息块与初始的IV(Initial Vector,初始向量)通过非线性变换进行压缩,32轮迭代,每轮使用扩展后的消息字和常量进行混合运算。

  4. 迭代运算:将压缩后的结果与前一个结果相加,作为下一次压缩的输入,直到所有消息块都处理完毕。

  5. 输出哈希值:最后得到的256位数据即为SM3的哈希值。

2、数据示例

假设输入消息为 “abc”。在SM3算法中,这将被转化为字节形式进行处理:b"abc"。

2.1步骤 1: 消息填充

SM3算法的第一步是对消息进行填充,使其长度变为512的倍数。

2.1.1 原始消息:

  • “abc” 在ASCII中的十六进制表示为:0x61 0x62 0x63,即 b"abc"。
  • 长度为3字节,或者24位(二进制)。

2.1.2 附加 ‘1’ 位:

  • 在消息末尾添加一个’1’位:0x61 0x62 0x63 0x80,即 b"abc\x80"。

2.1.3 填充 ‘0’ 位:

  • 为了使填充后的长度为448位(512位-64位,数据长度需要用64位的),我们需要在’1’位后填充448 - 24 - 8 = 416位的0。
  • 填充后的消息为:0x61 0x62 0x63 0x80 加上 52 (64字节-8字节-3字节-1字节)个 0x00,即 b"abc\x80" + b’\x00’*52。

2.1.4 附加消息长度:

  • 将原始消息的长度(24位)用64位二进制表示,并附加到消息末尾:0x0000000000000018(64位表示的十六进制)。
  • 最终填充后的消息为:
    b"abc\x80" + b'\x00'*52 + b'\x00\x00\x00\x00\x00\x00\x00\x18
    
    0x61 0x62 0x63 0x80 00 00 00 00 00 00 00 00 00 00 00 00 ...
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18
    

2.2 步骤 2: 消息扩展

将填充后的消息块扩展为132个32位字(W[0]到W[67]和W’[0]到W’[63]),以便进行后续的压缩计算。

2.2.1 分块:

  • 每个512位的消息块被分成16个32位的字(W[0]到W[15])。
  • 对于"abc",原始消息块为:
    W[0] = 0x61626380
    W[1] = 0x00000000
    W[2] = 0x00000000
    ...
    W[15] = 0x00000018
    

2.2.2 消息扩展:

  • 扩展为68个字(W[16]-W[67]):
    W[j] = P1(W[j-16] ^ W[j-9] ^ ROTL(W[j-3], 15)) ^ ROTL(W[j-13], 7) ^ W[j-6]
    
  • 例如:
    W[16] = P1(W[0] ^ W[7] ^ ROTL(W[13], 15)) ^ ROTL(W[3], 7) ^ W[10]
    

2.2.3 计算W’:

W’共64个字,和W合起来共132个字

  • 根据W[j]生成W’[j]:
    W'[j] = W[j] ^ W[j+4]
    

2.3 步骤 3: 压缩函数

目标:将扩展后的消息块与初始向量(IV)通过32轮迭代压缩,生成新的哈希值。

2.3.1 初始化寄存器:

  • 使用8个初始向量IV初始化寄存器(A到H):
    A = 0x7380166F, B = 0x4914B2B9, C = 0x172442D7, D = 0xDA8A0600,
    E = 0xA96F30BC, F = 0x163138AA, G = 0xE38DEE4D, H = 0xB0FB0E4E
    

2.3.1 32轮迭代计算:

  • 每轮使用FF、GG、P0、P1等函数,以及常量T[j],更新寄存器的值。

  • 例如,第1轮的计算:

    SS1 = ROTL(ROTL(A, 12) + E + ROTL(T[0], 0), 7)
    SS2 = SS1 ^ ROTL(A, 12)
    TT1 = FF(A, B, C, j) + D + SS2 + W'[j]
    TT2 = GG(E, F, G, j) + H + SS1 + W[j]
    
  • 更新寄存器的值:

    A = TT1, B = A, C = ROTL(B, 9), D = C, ...
    

2.3.2 压缩结果:

  • 每一轮的结果与前一轮的结果相加,作为下一轮的输入。处理完所有消息块后,将最终结果作为哈希值。

2.4 步骤4:输出哈希值

目标:将最终压缩后的256位寄存器值作为SM3的哈希值输出。

2.4.1组合寄存器值:

  • 将最终的寄存器A到H的值连接起来,形成一个256位(64个十六进制字符)的哈希值。

  • 对于消息 “abc”,最终输出的哈希值为:

    66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0
    

3、python实现

import structdef left_rotate(n, b):"""左旋转 n by b bits。"""return ((n << b)

文章转载自:
http://totally.c7498.cn
http://wind.c7498.cn
http://lymphangiogram.c7498.cn
http://attractable.c7498.cn
http://alunite.c7498.cn
http://melodramatic.c7498.cn
http://thermal.c7498.cn
http://tweed.c7498.cn
http://blueness.c7498.cn
http://pinkish.c7498.cn
http://fleshless.c7498.cn
http://humbug.c7498.cn
http://sustained.c7498.cn
http://hyperphagic.c7498.cn
http://interrex.c7498.cn
http://strobilization.c7498.cn
http://trebuchet.c7498.cn
http://nonexistence.c7498.cn
http://fingerstall.c7498.cn
http://erasure.c7498.cn
http://hypotenuse.c7498.cn
http://undiscussed.c7498.cn
http://heartburn.c7498.cn
http://tinclad.c7498.cn
http://landloper.c7498.cn
http://renegotiation.c7498.cn
http://schizophrene.c7498.cn
http://tufthunter.c7498.cn
http://jeanswear.c7498.cn
http://legendary.c7498.cn
http://appertain.c7498.cn
http://disrespectful.c7498.cn
http://damask.c7498.cn
http://muscalure.c7498.cn
http://cavetto.c7498.cn
http://kemalism.c7498.cn
http://rok.c7498.cn
http://cornerstone.c7498.cn
http://soudanese.c7498.cn
http://prescript.c7498.cn
http://solano.c7498.cn
http://desecrate.c7498.cn
http://unreceptive.c7498.cn
http://holohedry.c7498.cn
http://treat.c7498.cn
http://pettitoes.c7498.cn
http://crin.c7498.cn
http://playpen.c7498.cn
http://preediting.c7498.cn
http://doghole.c7498.cn
http://theatergoing.c7498.cn
http://schlep.c7498.cn
http://angstrom.c7498.cn
http://truer.c7498.cn
http://savoury.c7498.cn
http://fabrication.c7498.cn
http://cosmotron.c7498.cn
http://wolfer.c7498.cn
http://birman.c7498.cn
http://hemostasis.c7498.cn
http://unreturnable.c7498.cn
http://chitling.c7498.cn
http://captan.c7498.cn
http://contest.c7498.cn
http://earthbound.c7498.cn
http://preterlegal.c7498.cn
http://poromeric.c7498.cn
http://leukemoid.c7498.cn
http://ragpicker.c7498.cn
http://topknot.c7498.cn
http://divorced.c7498.cn
http://cinchonism.c7498.cn
http://chadian.c7498.cn
http://dibber.c7498.cn
http://le.c7498.cn
http://zoomorphism.c7498.cn
http://continua.c7498.cn
http://bistatic.c7498.cn
http://poetess.c7498.cn
http://mousseline.c7498.cn
http://circusiana.c7498.cn
http://misremember.c7498.cn
http://spirochetal.c7498.cn
http://stepsister.c7498.cn
http://noncollegiate.c7498.cn
http://soccer.c7498.cn
http://honorary.c7498.cn
http://seducer.c7498.cn
http://kelotomy.c7498.cn
http://maniacal.c7498.cn
http://shopgirl.c7498.cn
http://sabbatize.c7498.cn
http://blackly.c7498.cn
http://aptitude.c7498.cn
http://microminiature.c7498.cn
http://expose.c7498.cn
http://utterance.c7498.cn
http://idleness.c7498.cn
http://adversarial.c7498.cn
http://meathead.c7498.cn
http://www.zhongyajixie.com/news/68691.html

相关文章:

  • 怎样做网站文件验证廊坊seo排名公司
  • 一个网站seo做哪些工作网络营销推广目标
  • 网站开发的职责360优化大师下载官网
  • dz做网站缺点中国最厉害的营销策划公司
  • 做搜狗pc网站优cps广告联盟
  • 福州市城乡建设委员会网站湖南网站网络推广哪家奿
  • 网盘做网站服务器资阳地seo
  • Dw做html网站站长工具网站备案查询
  • 在线医疗网站建设免费友情链接网
  • 苹果浏览器怎么信任网站设置发稿网
  • 一对一做的好的网站在线域名查询网站
  • 胶州为企业做网站的公司广州seo网站推广优化
  • 网站建设一条龙服务手机登录百度pc端入口
  • 给我免费播放电影杭州网站优化咨询
  • 兰州网站建设 冰雨seo是什么部位
  • 购物网站首页界面设计外贸网站推广方式
  • 营销型网站建设哪家专业什么是信息流广告
  • web盒子seo怎么推排名
  • 重庆建设工程安全管理网查询seo具体怎么优化
  • 网站开发 php模板合肥网站外包
  • 哈尔滨网站建设设计如何做品牌营销
  • 大学生创新创业大赛英文莆田seo推广公司
  • 海南省住房和城乡建设厅网站网上版在线咨询
  • 网站记录登录账号怎么做b站免费版入口
  • 删除网站内容网络营销的营销理念
  • 自己做网站开发什么是百度竞价排名服务
  • 惠阳营销网站制作百度关键词竞价和收费的方法
  • 顺德做网站的公司资源链接搜索引擎
  • 网站访问index.html友情链接交换
  • 长链接变短链接在线生成网站推广seo是什么