首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >今日推荐:sha256-animation

今日推荐:sha256-animation

作者头像
仇诺伊
发布2020-05-15 19:27:50
4890
发布2020-05-15 19:27:50
举报
文章被收录于专栏:佳爷的后花媛佳爷的后花媛

2020.5.14 周四

留●白

沉思

浮躁

今日推荐

今瞅见一个关于哈希值生成演示的项目,挺好玩的样子。

关于sha256相信很多人都不陌生,尤其是经常会写接口啥的,在加密中这个哈希使用很频繁。但是这个值到底是怎么生成的,有人好奇么?

今天推荐的是用ruby写的小项目,可以在自己的终端上面运行,运行之后就能看到sha256生成的过程。

运行的步骤不难,只需要照下面的脚本运行就好

# simple
ruby sha256.rb abc

# hash binary or hex data by using `0b` or `0x` prefixes
ruby sha256.rb 0b01100001
ruby sha256.rb 0xaabbccdd

# speed up or step through the animation (optional)
ruby sha256.rb abc normal # default
ruby sha256.rb abc fast
ruby sha256.rb abc enter

还可以通过传递二进制字符串作为参数来运行SHA-256中使用的各个函数:

ruby shr.rb 11111111111111110000000000000000 22
ruby rotr.rb 11111111111111110000000000000000 22
ruby sigma0.rb 11111111111111110000000000000000
ruby sigma1.rb 11111111111111110000000000000000
ruby usigma0.rb 11111111111111110000000000000000
ruby usigma1.rb 11111111111111110000000000000000
ruby ch.rb 11111111111111110000000000000000 11110000111100001111000011110000 00000000000000001111111111111111
ruby maj.rb 11111111111111110000000000000000 11110000111100001111000011110000 00000000000000001111111111111111

还可以使用hash256.rb进行双SHA256(例如比特币)交易。默认情况下,此脚本接受十六进制数据(例如,块标题,交易数据)。关于sha256工作的具体原理,可以去项目里看看,作者摘录的很详细。

ruby hash256.rb 0100000000000000000000000000000000000000000000000000000000000000000000003ba3edfd7a7b12b27ac72c3e67768f617fc81bc3888a51323a9fb8aa4b1e5e4a29ab5f49ffff001d1dac2b7c # genesis block header

废话不多说,上地址:

https://github.com/NathanUA/U-2-Net

来源:GitHub(侵删) 图片:网络(侵删)

DESIGNED BY ZOE · 2020

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 佳爷的后花媛 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档