网赚论坛

 找回密码
 免费注册
查看: 336|回复: 0
打印 上一主题 下一主题

走近比特币:一个故事看懂“区块链”,小白也可以看得懂

[复制链接]

14

主题

73

帖子

56

积分

Ⅰ级财主

Rank: 1

积分
56
跳转到指定楼层
楼主
发表于 2017-10-21 12:50:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


以上定义摘自百度百科。很多菜鸟朋友看完这段解释依然满脸懵逼,到底什么是“区块链”?

起因

除非你完全没有接触过信息安全,否则一定听说过比特币和区块链。毕竟这两个名词也是近两年来各大国内外媒体争相报道的热词。尤其是继今年5月爆发的WannaCry病毒爆发以后,很多从未接触过的人都开始加入讨论大军。

我的很多朋友都不懂技术。最近几周他们一个个都变身好奇宝宝,围着我问比特币和区块链。我想这两个名词的热度一定还会持续攀高,对他们不够了解的人也还有很多很多。何不采用通俗的语言对“区块链”做一个解释,把这个概念传播开来?

和网上一般的名词解释不同(不管三七二十一,下个定义再说,其实并没有什么卵用),我们以它的作用为切入点来理解区块链的工作机制。

故事的开端

Joe是你最好的朋友。他出国旅游后的第五天给你打了个电话:“兄弟,我需要点钱,出国之后把身上的钱都花完了。”

你回复:“我马上打过来”,然后挂了电话。











交易账单

你打电话给Joe说你已经把1000美元转过去了。

回头我们再来看看刚刚到底发生了什么。你和Joe都信任那家银行来管理你们各自的财产。整个过程中实际并没有真实货币的物理流动。整个过程只涉及录入系统的两个账户即可。更准确地说,全程只需主动权属于该银行的两个账户就可以完成。

在这样传统的货币体系中,我的问题就来了。

交易双方的信任机制建立需要借助第三方。这种“中间人”的方式由来已久。那么你可能又要问了:“这种信任机制有什么问题吗?”问题在于除交易双方以外的“监督者”只是单个个体。这种情况可能存在以下风险:

世界上有没有无需借助银行就能帮助我们完成安全转账的系统?

要想解决这个问题,我们首先应该静下心来好好思考,问自己一个更深层次的问题:我们能不能自己掌握账户和历史交易的信息呢?

这的确是一个值得探讨的问题。答案当然你一定也已经猜到了——那就是“区块链”。现在我们就开始学习这个分布式账本是如何运作的。

故事的发展

该方法得以实行的必要条件是必须有足够多的人愿意在交易时不依赖于第三方。只有这样,这一部分的人才能够自己掌控账本资料。

那么人数要达到多少才足够呢?在下面的例子中,我们假设有10个人愿意放弃银行或其它任何第三方机构。在双方达成协议的前提下,他们互相之间能够在不知道对方身份的情况下时刻掌握对方账户的一切信息和动态。




1. 一个空文件夹

一开始每个人都会获得一个空文件夹。随着时间推进,这十个人都会在他们现在空的文件夹里不断添加记录交易信息的纸张。

2. 交易发生时

接下来,这个交易网络中的每个人都带着纸和笔坐下来,准备记录下在这个系统中发生的每一笔交易。

假设,2号想给9号10美元。

为了完成这笔交易,2号大声地告诉每个人:“我要转10美元给9号。请大家都在自己的纸上记下来。”











































































怎样利用魔法机器生成每张纸独有的封印?还是老办法,采用情境模拟的方法展开解释。

假设我给了你两个盒子。第一个盒子里面有数字20893,你能不能想出一个数字,这个数字与第一个盒子里的数字相加后的结果放入魔法机器后,我们能够得到一个以3个零为开头的字符结果。

这个情景和之前的难题几乎相同。唯一的办法就是把每个数字都放入机器尝试一遍。

经过几千次的尝试,我们会在21191这个数字这里停下,21191+20893=42084,把42084放入这个机器后所得到的结果正是我们想要的。

在这个案例中,21191这个数字就是20893这个数字的“封印”。假设有张纸上写着20893这个数字。为了密封这张纸(即没有人能够再对其内容作改动),我们把带有21191标签的徽章贴在纸上,密封完成。

被密封的数字

【术语解析】用来密封的数字实际被称为“工作证明(Proof Of Work)”,因为这个数字是通过努力计算得来的。本文为了简单易懂,我们称它为“密封数字”。



要想密封记录整个交易网络中交易流水的页面,我们需要找到那个加入交易内容并输入机器后会得到以3个零为开头的字符的关键数字。

注意:“以3个零为开头的字符”只是一个举例,简单地反应哈希函数的工作原理。实际问题处理起来会复杂得多。

只要花费一定的时间,交易网络中的参与者就能够计算出这个数字,该页面也就随之密封。一旦有人更改了页面上的内容,任何人都能够通过这个密封号码来验证这个页面的完整性。

故事的高潮(二)

了解如何密封页面后,我们再把思绪拉回10个人用完了一张纸上所有空间的时候。

当这个页面上记不下更多的交易记录时,交易网络中的每个人都会停下来计算该页面的密封数字,然后将其放入文件夹。如果第一个人算好了密封数字,他就会向所有人公布。

听到密封号码后,大家都去验证这个数字是否能满足输出需求。如是,则在他们的页面上贴上这个标签,再把这个页面放进文件夹。

但是如果7号算出了密封号码并“昭告了天下”,但结果大家发现这个数字并不满足他们的输出需求怎么办?这样的情况也很常见。原因可能有以下几点:

1. 公布交易信息时听错了;

2. 记录交易信息时出现笔误;

3. 为了一己之利,记录交易时故意犯错。

不管出于什么原因,7号只有一种选择——丢弃自己这张纸,然后从别人那里复制一份副本放进他自己的文件夹。如果不把这个页面放进文件夹,他就不能继续记录接下来的交易记录,这也就相当于把他从这个交易网络中踢掉了。

说到这里,我相信有的人脑海里又出现了一个疑惑:既然有人计算好密封号码后会公布,为什么我们每个人还要花费那么多时间都去计算一遍?其他人为什么不歇着、坐等公布?

Good question!区块链包含特殊的奖励机制,网络中每个人都有资格获得奖励。第一个计算出密封号码的人能够获得一定奖励。

我们再来简单地假设一下,如果5号第一个算出了页面的密封号码,并获得了1美元的金额奖励,那么这1美元就是凭空出现的。换句话说,假如他账户里本来余额5美元,现在增加了1元,但是这1元没有从其它任何人的账户里扣除,即没有减少任何人的账户余额。

这就是比特币的起源。它是在区块链(分布式账目)上发生交易的第一种货币。如果在这个交易网络上持续努力,你同样也能获得回报,这个过程就是我们所说的“挖矿”。

拥有比特币的人越来越多,这些人一刻不闲着地开始炒这种虚拟货币,不断扩大市场对比特币的需求,再进一步提高比特币的价值。就这样周而复始地把比特币的价格炒得很高。

这种奖励机制让交易网络中的每个人都勤勤恳恳地劳作。

他们把纸张放进文件夹后,拿出一张新的空白纸张,然后再次重复前面的过程——循环往复、永无止境。

假设文件夹中已经有5个被密封的页面。如果我为了谋取私利修改了第二个页面的其中一笔交易会发生什么?前面已经提到过,所有人都可以通过密封号码查出交易内容已经发生改变。但是如果我根据修改的内容重新计算密封号码,然后把新号码贴在纸上,出现这样的情况怎么办?

为了防止有人同时修改页面和密封号码,计算密封号码时有一个小技巧。

如何防止密封号码被重新计算、更改?
















如果出现这样的情况,这个协议就有点打脸了。这种情况被称为“51%攻击”。如果整个网络中的大多数人都决定叛变,欺骗剩下不到半数的人,那么整个协议就自然而然地走向了灭亡。

这是区块链最大的弱点。尽管这样的情况不可能出现,但我们还是要谨记这个系统的弱点。整个体系都是基于一个假设:整个交易网络中的大多数人都不会叛变。


解释到这里也就差不多了。还请亲爱的们再回头看看百度百科给出的定义,现在是不是理解起来容易很多了?

如果还有人问起到底什么是区块链,比特币的运作机制是怎样的,我相信本文的读者都能够解释给更多的小白们听啦。

英文:Mohit Mamoria,翻译:赛博朔方

<div align="left">
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

广告合作|Archiver|手机版|小黑屋|财富吧

GMT+8, 2024-5-25 06:41 , Processed in 0.624001 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.1

© 2014-2021 财富吧

快速回复 返回顶部 返回列表