如今,从理发师到在股市工作的朋友,人人都在谈论比特币。别担心,这篇文章不是那种讨论如何从比特币中赚钱的文章,我将努力帮助你理解比特币的基层技术,以及区块链在未来几十年里如何发挥作用。

历史回顾

2008年10月31日,一个名为Satoshi Nakamoto的匿名人士(或组织)发表了一份白皮书,介绍了一种不涉及任何金融中介机构、直接从发送方到接收方汇款的新方法。

文中给这个概念起了个名字——比特币。由于比特币使用了密码学的一些基本概念,这种新的货币交换方式被归类为加密货币。比特币的唯一用途是用于金融交易,但研究人员意识到,可以利用它的基础技术构建其他安全可靠的应用程序,从而彻底改变当前系统的工作方式。
“区块链”就是这个基础技术的名字。你觉得有很多专业词汇?没关系,让我们来简化一下!

什么是区块链?——类比真实世界

想象你住在一个城市,这个城市有一个可以同时停放200辆车的大停车位(假设只有一层)。这个停车位有一个大门,大门是锁着的,只有当有车辆进出时才会打开。现在让我们从不同的角度来分析这个单层的停车场建筑:

  • 价格:由于一些私人企业建造了这个专用停车位,所有的维护费用将由业主公司承担,所以出租一个停车位将会有很高的租金。
  • 安全:如果小偷进入大门,他们可以很容易地进入你的车(取走车轮燃料,或损坏刹车等任何东西!)
  • 限制:如果你所在城市的汽车数量从200辆增加到300辆会怎样?停车位将没有足够的空间容纳所有的汽车,一些其他的私人机构将不得不建造一个新的停车位。
  • 信任:你信任停车位公司,他们有责任确保车子的安全性和可靠性。
  • 集中式:因为所有的车都在一栋楼里,我们可以把它当成一个集中式停车场。

现在,让我们修改当前的场景。想象一下,你的城市里有200个住户,所有人都有两个车库。简单来说,我们假设每个住户只有一辆车(所有的车都填满了上面描述的大停车位)。所以,每户都有一个空车库。现在,假设这个城市的人们决定把多余的车库出租给任何需要停车的人。这种提供停车位的模式将解决200辆或更多汽车停车问题,而不需要为整个城市建造任何更大的中央停车位。与前面的场景类似,我们来分析一下这个场景:

  • 价格:由于第二个车库不是专门出租的,而且维修费用也比较低,所以相对于中央大停车位来说,多出的空间租金也比较低。
  • 安全性:每辆车都锁在不同的车库里,因此小偷必须打开所有车库里的门才能进入汽车,从而提供更多的安全性。(区块链中的安全性略有不同,但是为了简单起见,我们现在就这样考虑吧!)
  • 限制:随着房屋数量的增长,假设每个新房子都有额外的车库空间,那么容纳更多汽车的空间将持续增加,从而也增加了承租人和出租人间的联络网。
  • 信任缺失:由于没有中央机构控制这些分散的停车位,我们假设所有的车库业主在出租他们的车位时会制定一定的规则。
  • 去中心化:如前所述,这些停车位分布在整个城市,我们可以认为它是一个去中心化的停车场。

上面的类比为理解区块链的实际技术基础架构提供了基础。

停车模式到技术模式

这个停车模型用现实世界语言展示了区块链的基本概况。现在,让我们尝试将停车示例的组件与实际的技术模型匹配起来:
这个大型中央停车场是一个像AWS、Google Cloud等的集中系统(这些云平台也在一定程度上是分布式,但为了简单起见,我们将它们假设为一个单一的实体)。
汽车是数据和应用。

分布式停车场是一个分散的系统——区块链。

等等!我们似乎错过了一些东西。

不是所有的分散系统都是区块链!!是的,区块链是一种特殊类型的分散系统,具有独特的特性。哪种特性?我们来讨论一下。

“块”组成了区块链

让我们重新审视一下我们的分布式停车示例,并做一些小小的更改。我们假设一个特定车库的锁是当一辆车停在里面的时候产生的(假设同一辆车每天去同一个停车场)。另外,假设所有的分布式车库已经按顺序编号。50号车库的锁钥匙对是基于49号车库的锁钥匙对,也是基于50号车库内停放的汽车的特征(如颜色、重量、发动机编号等),这个过程从1号车库开始,一直持续到200号车库甚至更多。

每个车库的锁钥匙对取决于车库内汽车的功能和前一个车库的锁钥匙对。

因此,如果一个小偷试图进入49号车库并修改车子的特征时,说出它的颜色或注册号,停在49号车库的车的特点将会改变,这也意味着一个新的49号车库的锁钥匙对将会生成。因为50号车库的锁钥匙对取决于49号车库的锁钥匙对,50号车库的锁钥匙对也将改变,其他的车库也一样。

现在,让我们做一个最后的假设。假设计算一个锁钥匙对需要大量的计算资源,这意味着如果任何一个小偷修改了任何汽车的任何特征,我们必须重新计算这些对,这将是几乎不可能的。

如果一个锁钥匙对改变了,会发生什么?

希望你还记得我们说过的所有的车库主人都要遵守一些规则?

这些规则之一就是检查一个有效的车库。如果你可以验证一个车库的锁钥匙对,那么这个车库就是有效的。如果任何一个锁钥匙对被更改,那么之后的所有车库的锁钥匙对都是无效的,因为每一个锁钥匙对都依赖于前一对。(与生成锁钥匙对相比,验证特定车库的锁钥匙对的过程非常快)。

这种一个对取决于前一个对的形式组成了一个车库链,在技术世界中,这些车库是“块”,因此得名区块链(一串积木链)。

区块链中的块通过hashes连接到下一个块,就像我们的示例中的锁钥匙对一样。与车库示例类似,如果修改了一个块中的hashes,那么需要重新计算下面所有块的hashes,因为计算hashes是一个非常耗费资源的操作,所以实际上不可能做到这一点,因此网络会排除无效的块。hash的计算过程被称为挖掘,我们将在本系列的下篇中详细讨论它。

如何从修改中恢复块?

在区块链网络上的所有计算机,都会保留一个完整的区块链副本,因此,如果一个特定计算机或多台计算机上的一个块或一个完整的链被修改,整个网络会试图与自己的完整副本链进行比较。


如果网络上的大多数节点(或计算机)发现修改后的链是无效的,则将修改后的链替换为来自其他节点的有效链,这使得区块链中51%的节点可能受攻击。简单地说,如果网络上超过50%的节点是恶意的(或者有一个修改过的链),那么整个网络都可能受到攻击。

结论

唷!!有很多信息需要消化。这是完整的初学者指南的第一部分,提供了基本的区块链基础。我希望这篇文章能为你和你的朋友讨论区块链时提供帮助。请查看本系列的下一篇,其中我们将讨论Ethereum、智能契约和挖掘。

原文链接:https://medium.com/@sidharth_m/beginners-guide-to-blockchain-explaining-it-to-a-5-years-old-772caac6ae97

欢迎点击“京东云”了解更多精彩内容


以上信息来源于网络,由“京东云开发者社区”公众号编辑整理,不代表京东云立场。

区块链初学者指南——五岁孩子都能理解相关推荐

  1. 区块链开发指南_区块链开发权威指南

    区块链开发指南 by Haseeb Qureshi 由Haseeb Qureshi 区块链开发权威指南 (The authoritative guide to blockchain developme ...

  2. 区块链技术指南学习笔记2

    区块链技术指南学习笔记2 密码学 Hash 算法与数字摘要 常见hash算法 数字摘要 加解密算法 加解密系统基本组成 对称加密算法 非对称加密算法 消息认证码与数字签名 消息认证码 数字签名 数字证 ...

  3. 【翻译】How To Become A Blockchain Developer: Crash Course! 区块链开发指南!

    为什么80%的码农都做不了架构师?>>>    In this guide, we are going to map out your journey for becoming a ...

  4. 2019区块链行业指南

    2019区块链行业指南 "年初的愿望实现了吗?事到如今只好祭奠吗?" 不过话说回来,这一年区块链的发展继续加速,只是没有像预想中的那么快.今天,营长就跟老铁们一起简单回顾一下201 ...

  5. 【杂谈】一个五岁孩子妈妈在有三AI学习并且赚钱的故事

    我,一个普通的大龄程序员.没有有趣的灵魂,也没有好看的皮囊.做为成千上万个程序员之一,我唯一有点特殊的可能就是我是一个五岁孩子的妈妈.所以我不仅要关心脱发的问题,还得抽出大部分时间来陪伴神兽成长. 缘 ...

  6. 区块链开发指南_区块链开发完全指南

    区块链将是技术的发展方向. 我认为未来将围绕区块链一新兴技术构建,这绝不是什么牵强附会.区块链最初被设计成一种公共的,无权限的技术,后来引入了另一种区块链,每种区块链都有自己独特的用例集.公共/无权限 ...

  7. 《区块链开发指南》一一导读

    前 言 Preface 比特币于2009年诞生,在很长一段时间内,人们只知比特币,不知区块链.从2015年开始,区块链像狂风一样席卷全球,倍受金融界和科技界的关注:2015年年底,区块链技术逐渐得到国 ...

  8. 003《区块链开发指南》一一1.2 区块和区块链 转

    摘要:             本节书摘来自华章计算机<区块链开发指南>一书中的第1章,第1.2节,作者:申屠青春 主编 宋 波 张 鹏 汪晓明 季宙栋 左川民 编著更多章节内容可以访问云 ...

  9. 区块链开发(五)区块链ICO:互联网进化的驱动力

    区块链开发(五)区块链ICO:互联网进化的驱动力 李赫 2016年10月8日 由于区块链不可篡改的特性,在众多区块链组织和公司的共同努力下,互联网将逐步从中心化的信任进化到由算法.数据为核心的去中心化 ...

最新文章

  1. 新手关于import/export的理解
  2. markdown 创建表格
  3. (莱昂氏unix源代码分析导读-46)权限、管道
  4. 获取小程序用户信息+java_java获取微信小程序用户信息
  5. #line预编译字分析
  6. blufr 算法的理解---理解的不对的,欢迎拍砖
  7. Python实战从入门到精通第十一讲——可接受任意数量参数的函数
  8. Spring安全依赖查找
  9. JAVA作业 17-05-18
  10. android按钮放图片不显示文字,Android 自定义标签 Imagebutton实现ImageButton里放置文字...
  11. 关于MD5的那点事,你都了解清楚了吗?
  12. 个人号微信SCRM客服系统功能介绍
  13. VMware下装Ubuntu
  14. 2020.3.31Java学习笔记
  15. Hive面试题(一)
  16. 电子电路笔记----基本放大电路--半导体三极管
  17. 个人隐私的泄露在日常工作、生活、学习中,每个人都要学会保护自己的个人隐私
  18. Kubernetes 常用命令及应用实例
  19. python udp伪造ip_Python扭曲的简单UDP转发器。保留源IP?
  20. WEB QQ 网页登陆QQ QQ的HTTP接口探究

热门文章

  1. Excel 数据透视表(图)的使用(备忘)
  2. time.h中的几个常用函数
  3. 苹果电脑压缩视频大小变小怎么压缩那个软件好
  4. SUNLIKE ERP 自定义查询 已分析未转单的数据
  5. matlab自动重合闸,基于Matlab的电力系统自动重合闸建模与仿真汇总 - 图文
  6. 4、SaaS、PaaS、IaaS
  7. 大家好,怎样对网站做优化?都有哪些手段? (谷歌)
  8. android中如何使用一张图片适配不同尺寸的APP引导页
  9. 10个漂亮的jQuery日历插件下载【转载】
  10. 华硕K45VM安装win7 64位操作系统