[学习笔记] 哈希函数和 SHA-256
散列函数(或散列算法,又称哈希函数,英语:Hash Function)是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值(hash values, hash codes, hash sums或hashes)的指纹。散列值通常用一个短的随机字母和数字组成的字符串来代表。好的散列函数在输入域中很少出现散列冲突。
原始数据 ---输入---> 哈希函数 ---输出---> “指纹”数据
- 是一种数据转换函数,将输入(原数据)映射成输出(索引)
- 设计良好的哈希函数,对不同的输入,会得到不同的输出
- 压缩输入数据,一般会生成固定长度的输出
- 是不可逆的,是输入到输出的“单向”函数
哈希函数的概念非常宽泛,是一类算法的统称,常见的哈希函数有MD5
、SHA
等
SHA
(Secure Hash Algorithm,安全散列算法)是一个密码散列函数家族,由美国国家安全局(NSA)设计,并由美国国家标准与技术研究院(NIST)发布,是美国的政府标准。包括 SHA-0
系列、SHA-1
系列、SHA-2
系列和SHA-3
系列。SHA-256
是SHA-2
系列函数之一
对于SHA-256
- 无论输入多长,都输出
64
个字符,共32
字节(byte),256
位(bit) - 输出只包含数字
0
~9
和字母A
~F
,大小写不敏感
可以使用在线Hash计算工具体验一下。文本Hi Blockchain!
的SHA-256
结果为
475025F51CB88D38C3FD15FCBEBA4E33BCF8ACD5173ACBED91439FFB0FA9D8B2
转 https://zhuanlan.zhihu.com/p/34361199
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2021-03-09 Vue CLI配置原理详解