区块链密码学技术学习-SHA-256算法

哈希是在密码学中重要的方法,SHA-256 也是一种具有 256 位摘要的较为复杂的哈希过程,由 NIST 提出并推广使用,在集合中属于 SA2 算法集。其核心思想是采用消息预处理、填补、摘要计算等步骤,将随机大小的文本消息和一段 256长度的字符串对应起来。SHA-256 的生产过程如下[19]:

1)追加填充位信息:需要将原始输入长度扩展到一个 mod 512 等于 448 的值,这个填充方法是在消息末尾添加 1,后面跟数个 0。

2)追加长度:消息长度的 64 位被附加到结果中,使得消息长度正好是 512位长度的倍数。

3)解析消息通过附加 64 位块,将填充消息解析为 N 个 512 位消息块, M(1),M(2), …, M(N)。

4)初始化哈希值:计算出)0(H ,他是由十六进制的 8 个 32 位的字符串组成。

5)进行消息扩展:使用 64 个 32 位单词的消息调度,消息调度的字段被标记为63210、、...WWWW [20]。

6)消息的压缩:使用散列值初始化八个工作变量,A、B、C、D、E、F、G和 H 进行消息的压缩。

7)输出重复步骤 1 到步骤 4 总共 N 次之后,得到的哈希函数为

在其哈希映射的过程中,保证一段哈希对应唯一一段输入,并且在计算上保证了找到具有给定哈希值的输入的不可能性,是安全的哈希过程。SHA-256 在一些广泛使用的安全应用程序和协议中实现,包括比特币、SSH 和 IPC 等。

过分粗糙,等书回来重新整理一下。
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值