【学习笔记】密码学哈希算法、哈希指针链

哈希算法

密码哈希函数是一类数学函数,可以在有限合理的时间内,将任意长度的消息压缩为固定长度的二进制串,其输出值称为哈希值,也成为散列值。

一个优秀的哈希算法将实现:

1)正向快速:给定明文和hash算法,在有限时间和有限资源内能计算出hash值

2)逆向困难:给定(若干)hash值,在有限时间内很难(基本不可能)推出明文

3)输入敏感:原始输入信息输入一点信息,产生的hash值看起来应该都有很大的不同

4)冲突避免:很难找到两段不同的明文,使得他们的hash值一致(发生冲突)


哈希算法的输入值和输出值之间没有任何规律,所以不能从输出值算出输入值,想要找到指定的输出值只能枚举,不断跟换输入值,寻找满足条件的输入值


几大成熟哈希算法介绍 :

1)MD系列哈希算法 MD就是MessageDigest的简称。家族成员包括MD2,MD4和MD5都产生128位哈希值。目前MD系列算法都发生过碰撞。

2)SHA哈希算法 Secure Hash Algorithm,直译为安全散列算法。现共有SHA-1,SHA-224,SHA-256,SHA-384,SHA-512。

3)SM3杂凑算法 MD和SHA是国家通用的标准,SM3是我国算法标准。输入长度的上限是2的6次方,输出长度是256比特。

比特币中,应用了两个密码学哈希函数,一个是SHA256,一个是RIPEMD160,用于比特币地址的生成


哈希指针链

哈希指针是一个指向存储地点的指针,加上一个针对存储信息的哈希值。哈希指针不仅是一种检索信息的方法,同时也是一种检查信息是否被修改过的方法。

区块链就可以看做是一类使用哈希指针的链表,因此每个区块不仅仅告诉前一个区块的位置,也提供一个哈希值去验证这个区块所包含的数据是否发生改变

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 所有货币都需要一些方法来控制供应,并强制执行各种安全属性以防止作弊。在法定货币方面,像中央银行这样的组织控制货币供...
    Nutbox_Lab阅读 8,441评论 1 3
  • 了解区块链哈希如何工作非常重要。但为了做到这一点,我们需要先了解区块链创建的核心原则之一。区块链技术是上个世纪最具...
    盘木阅读 5,099评论 0 0
  • 每个父母都知道,孩子小时候的陪伴是最重要的。关乎到孩子们的未来。我父母也是这样。 每当我考上95分或者93分及以上...
    花儿朵朵_5e81阅读 1,702评论 0 2
  • 我们都曾经或者不久的将来都要面对找工作的困惑。俗话说,女怕嫁错郎,男怕入错行。但,其实每个人都害怕入错行。 那,究...
    强尼君阅读 5,451评论 0 17
  • 初三在家一天,早起却晚吃了饭,心里有些不高兴,被老公嘻嘻哈哈化解,人家随即表示打扫卫生,做午饭,我也就乐得轻松。开...
    Min_Xu阅读 1,544评论 0 0

友情链接更多精彩内容