美文网首页简书优秀文章区块链研习社
【区块链启蒙6#】哈希(不是嘻哈)

【区块链启蒙6#】哈希(不是嘻哈)

作者: 62e2127aa6f5 | 来源:发表于2018-05-06 19:37 被阅读26次

    00 前言

    本系列将以100个区块链知识为基石,循序渐进,娓娓道来,为零基础人士搭建一座区块链认知大厦。

    如果有可能,未来会集结成书。(求区块链插画师

    当然,愿意的话,您可以转发给身边的亲人朋友,帮助他们早日启蒙,享受区块链认知红利。

    6.1 老实交代

    经过前段时间的学习我们对加解密有了一定的认识。

    今天讲的内容和加密有一点关系,但关系不大。不过和区块链的关系是非常大的,是区块链大厦的重要根基之一。

    为了更好地理解,我们还是有请爱丽丝和鲍勃出场。

    话说爱丽丝和鲍勃已经过成了一家人。

    【爱丽丝】hi~鲍勃,我发你一份今年的家庭日记账,一天一页共180页,记录有我们的全部开销。接下来的帐你来记,我们每半年轮流一次。

    【 鲍 勃 】放心,没有问题!我一定能做到公平、公正、公开,接受领导监督。

    【爱丽丝】好啊,你要每周把日记账发我邮箱,接受审计哦!

    【 鲍 勃 】放心,放心!

    【爱丽丝】鲍勃,你篡改历史账了!老实交代!

    【 鲍 勃 】唉,还是被你发现了!我知道你留有底稿,所以不敢大改,就改了一位数字,你怎么就知道了呢?难道一个字一个字地去对比了?

    【爱丽丝】我把我记的日记账前180页的内容提取了数字指纹,也相应地提取了你的,一眼就看出不一样了!

    【 鲍 勃 】什么是数字指纹,这么神奇?

    6.2 数字指纹

    假如有两段文字,我们要对比他们之间是否相同,最简单的办法就是一个字一个字的去比较。

    假如有两篇文字,几万字甚至几百万字,我们不可能一个字一个字地去比较,怎么办呢?

    我们可以用一种方法,分别从这两篇文字中提取数字指纹,数字指纹很短,通常只有几十个数字字母。哪怕两篇文章中只有一个标点符号、一个空格的差异,这几十个数字字母的差异也会有天壤之别,一眼就可以分辨出来。

    就像我们两个人,指纹是不同的,就算是无法辨别的双胞胎,指纹也是不同的。

    6.3 哈希

    这种提取数字指纹的算法我们称为hash算法,也叫哈希算法,提取出来的指纹叫哈希值。

    不只是从文本中可以提取哈希值,其他文件都可以提取,比如图片文件、声音文件、电影文件、程序文件和其他的任何文件。

    哈希算法的神奇之处在于:

    • 文件无论大小,其哈希值都是固定长度,一般也就几十位。

    • 相同的文件,其哈希值在任何情况下都是相同的。

    • 不同的文件,哪怕有再微乎其微的差异,其哈希值也是天壤之别。

    • 哈希值的提取速度非常快。

    • 哈希值是单向的,也就是说,从文件可以提取哈希值,但做不到从哈希值还原文件。

    由于以上特性,爱丽丝很容易地就抓到了作弊的鲍勃。

    哈希算法不止一种,常用的哈希算法有MD5、SHA等。

    比特币用到的哈希算法就是SHA-256。

    6.4 哈希的另一种用法

    哈希值除了用来判别文件是否被篡改,在隐藏信息方面也大有用处。

    大家可能听说过,曾经有很多知名网站的数据库被黑客盗取,数据库中保存的海量用户密码遭泄露,要知道很多用户在不同的网站上都是同一个密码,这带来了很大的安全隐患和损失。

    发生这种低级事故,是网站方的严重失职。

    其实,用哈希值很容易就解决了,而且高效安全。

    具体方法是,数据库中不要直接保存用户的密码,只要保存密码的哈希值就可以了。

    用户登录的时候,浏览器把密码转换成哈希值,再和数据库中的哈希值比较,如果一样,就说明密码正确,允许登录。

    这样,就算是数据库被盗,用户的密码也不会泄露,因为,从哈希值是不可能还原出用户密码的。

    这种技巧,就是利用了哈希算法隐藏了隐私信息,在不获取隐私信息的情况下判断隐私信息的合法性。

    在区块链上,无时不刻都离不了哈希,关于这一点,以后我们可以慢慢聊。

    6.5 下节预告

    以著名的哈希算法SHA-256为例,不同的文件都能转换成不同的64位字符串长度的哈希值,该哈希值举世无双、绝无仅有!被誉为该文件的数字指纹。

    你真的不想质疑吗?

    转换100万个文件也不会重复?100亿个文件还不会重复?!

    下一节,我们将揭晓谜底。

    我是rruntime,立志写本书,一本可以献给家人和朋友的《区块链启蒙》,敬请支持!


    本文首发币乎,已被【币乎榜bihubang.com】收录。

    相关文章

      网友评论

        本文标题:【区块链启蒙6#】哈希(不是嘻哈)

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