LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 币圈百科 > 比特币的分布式系统是如何记账的?

比特币的分布式系统是如何记账的?

2020-09-24 繁花异世 来源:火星财经
比特币系统中所用的的哈希函数是一种非常容易理解的函数,他的一个变种函数sha256是目前被公认为最安全最先进的算法之一。

比特币是一种公共记账货币,每个人都有权利给这种货币记账,而且这个账本分布在全世界的每一个角度,每一次记账的时候需要核对账本的正确性,这就很麻烦,每天这么多笔交易,到底怎么核对的呢?当然如果你要用人工的方式去核实,那几乎是不可完成的,但是用技术就简单多了,用什么技术呢?这种技术就叫做非对称加密技术。

我们再讲非对称加密之前,我们先要讲一个函数叫做希函数,这个哈希函数并不复杂,非常容易理解,但是它在整个比特币的系统里面,在各个重要的环节里面都起到非常重要的作用。

关于这个哈希函数的具体工作原理就不需要我们搞明白了,它的变种有很多,常使用的哈希算法包括MD5、SHA-1、SHA-256、SHA-384及SHA-512等。比特币协议中,这个哈希函数是SHA-256。这个SHA-256被公认为最安全最先进的算法之一。

那么这个函数到底有什么用呢,他的用处也很简单,就是它能把一种任意的信息,可以是你的情书,也可以是一份合同、一份遗嘱,甚至一本书的全部的内容等等都可以,任何的信息带入到这个函数中去,作为这个函数的输入的内容。经过这个函数的加工就能得到一个简短的摘要信息。

它的具体的函数形式是这样的,哈希函数用y =hash(x)表示,输入x进行运算,得到一个哈希值y。这个y有另一个叫法:摘要,它的数学计算流程也很简单,它可以把(输入的)任意长度的数据转化成(输出的)固定长度的数据。

比如说,有一个富翁叫巴菲特,他今年已经90了,可能多几年就要去世了,既然要离开那么巴菲特就需要写一份遗嘱,那么这份遗嘱就可以作为原始信息放到这个函数里面去,巴菲特的遗嘱说我走了,我走之后,我的财产95%捐给慈善机构,3%给老大,1%给老二1%给老三等等。总之无论巴菲特的这份遗嘱有多长,有多少字母,只要经过了哈希函数一运算就可以得到一个简短的一串摘要信息。这就是一个希函数的具体的例子。

这个希函数就有三个基本的特征。第1个特征是同样的原始信息带入到同样的一个希函数里面去,总能希出相同的摘要信息。也就是说如果是一模一样的原始信息。我今天用这个函数放进去,计算一下,会得到摘要,明天换一个人,把同样的信息放到这个函数中去,同样能够得到相同的摘要信息,那么这个可以理解我们做数学题,今天做用这个函数计算出来的结果是一样的,明天做也是一样的,这个是可以理解的。

第2个重要的特征就是原始信息的任何的微小的变化,都会通过这个函数运算,同样的一个函数希出 一个面目全非的摘要信息,也就是说原始信息里面的任何一点点微小的变化,比如说这个冒号发生了变化,通过同样的希函数来进行预算,都会得到一个完全不同的摘要信息。并不是说因为冒号发生一点变化而使得信息摘要信息里面只发生,比如说三发生一个微小的变化,不是这样的。得出来的摘要信息会完全不同,面目全非。

第3个特征就是从摘要信息是没有办法到推出我们的原始信息的。 这个也不太难理解,如果说原始信息是非常丰富的,那么他只得到一个20位的摘要信息,显然从短的信息中很难到推出那么丰富的信息的。

这就是我们比特币系统中,很多地方用到的一个重要的希函数!具体的形式有好几种,总之都是把原始信息摘要成一组简短的信息。实际上我们可以看到,它相当于用了一组简短的信息,来唯一的代表了一个复杂的信息,并且又不显露出复杂信息的原始内容,相当于给原始信息给了一个指纹加密。

那么具体到这个例子,那么希函数有什么用呢?我们还是举巴菲特的例子啊。他可以在生前就你好这个遗嘱,并且用希函数运算出来摘要信息,把他宣布出去说我的遗嘱已经立好了,这是它的希值。

好,等走了之后去世之后,他的大儿子二儿子和三儿子分别拿出来一份遗嘱,当然了上面的分配方案肯定是不同的,那么这时候亲戚们、朋友们怎么样来确定谁的遗嘱是真正的遗嘱呢?好,就把他们的遗嘱拿来,按照富翁生前的交代,把每个人所拿出的遗嘱的信息全部带入到这个函数中去。每个人代入之后,都会得到一串摘要信息,那么就来看谁的得出来的摘要信息,跟巴菲特老爷子当初活着的时候所宣布的材料信息是一样的。那么谁的就是真正的有效的遗嘱。这就是哈希函数。通过这个例子,我们可以看到希函数在我们的日常的应用中,至少有4个基本的功能。

第1个是简化信息,他能把任意长的信息呢简化成一个你所要求的简短信息,简化之后,简短的信息可以用来标识我们原来的信息。

第二个是标识信息,我们刚刚才说过,这个摘要信息可以看作原信息的一个指纹,或者说身份。某一个原始信息可以用摘要信息来唯一的标识它。

第3个功能就是隐秘信息,巴菲特生前,可以把摘要信息公布出来,但是同时又隐匿了原始信息的内容,谁都不知道,同时又能证明在事后能够证明信息的存在,把原始的信息隐匿了。

第4个功能验证信息,有了摘要信息,我们就可以验证原始的信息是否是形成摘要信息的信息。

那么这4个功能在比特币的系统里面,具有有哪些作用呢?我们明天继续学习。

好下面我们来总结一下今天,学到的东西,第一比特币系统中所用的的哈希函数是一种非常容易理解的函数,他的一个变种函数sha256是目前被公认为最安全最先进的算法之一。

文章来源:币圈大帅社区

本文来源:繁花异世
原文标题:比特币的分布式系统是如何记账的?

—-

编译者/作者:繁花异世

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...