美文网首页币圈与区块链
【学习笔记】密码学哈希算法、哈希指针链

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

作者: 吴轩霆 | 来源:发表于2018-10-24 16:13 被阅读0次

    哈希算法

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

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

    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,用于比特币地址的生成

    哈希指针链

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

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

    相关文章

      网友评论

        本文标题:【学习笔记】密码学哈希算法、哈希指针链

        本文链接:https://www.haomeiwen.com/subject/fhhxtqtx.html