密码学知识之hash算法
Posted 区块链虚拟币
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了密码学知识之hash算法相关的知识,希望对你有一定的参考价值。
密码学在信息技术领域的重要地位无需多言,如果没有现代密码学的研究成果,人类社会根本无法进入信息时代。
密码学领域十分繁杂,本文简单介绍一下hash算法。
定义:
hash (哈希或散列) 算法是信息技术领域非常基础也非常重要的技术。它能任意长度的二进制值(明文) 映射为较短的固定长度的二进制值(hash 值) ,并且不同的明文很难映射为相同的 hash 值。
举例:
也就是"hello, my card is 123456"(明文)通过hash算法后就变成了“49883a2ef85dc81b90fb606”(hash 值),hash值我们是看不懂的。
一个优秀的 hash 算法,要能达到以下几点:
正向快速:给定明文和 hash 算法,在有限时间和有限资源内能计算出 hash 值。
逆向困难:给定(若干) hash 值,在有限时间内很难(基本不可能) 逆推出明文。
输入敏感:原始输入信息修改一点信息,产生的 hash 值看起来应该都有很大不同。
冲突避免:也称为抗碰撞性,很难找到两段内容不同的明文,使得它们的 hash 值一致(发生冲突) 。
我们常接触的hash算法有哪些?
MD5
SHA-1
SHA-2
以上算法都属于算力敏感型的,意味着计算资源是瓶颈,所以硬件设备计算能力越强,执行算法的能力就越厉害。
分享最有价值的精选资讯给您。
以上是关于密码学知识之hash算法的主要内容,如果未能解决你的问题,请参考以下文章