哲学的终极三问:“我是谁?我从哪里来?我要到哪里去?” 耗费古今中外多少人的心血。

作为区块链的从业者,也面临有三个根本性问题:区块链是什么?区块链怎么产生的?区块链有什么用?

追根溯源,本文尝试从区块链技术的产生背景和技术演进过程来回答:

区块链是什么呢?

希望对大家理解区块链有所帮助。

区块链前传之密码朋克

任何事情的兴起都有量变到质变的过程,看似横空出世,其实背后都有发展的轨迹和逻辑。区块链的发展也不例外,他的发展源自密码朋克社区。

“密码朋克”一词的首次出现,是在1993年埃里克·休斯出版发《密码朋克宣言》上。具体的英文版本可以见:《A Cyberpunk Manifesto》。

在20世纪80年代以来,人们在处理和保存信息,相互之间通信上越来越以来网络和计算机。加密技术迅猛发展,以保护信息的隐私和通信的安全。但当时这些算法都属于高度机密,完全掌控在国家和大型机构手中。

密码朋克

一些奉行自由主义和无政府主义的技术极客们敏锐的意识到,在信息时代隐私的重要。他们要用开源的加密算法和工具,来保护个人信息和隐私免受攻击。这些人聚集在一起形成密码朋克社区。社区中的很多人都在后来互联网的发展中,有着举足轻重的影响力:

Tim May(英特尔公司前首席科学家) John Gilmore(太阳微系统公司的明星员工) David Chaum (大卫乔姆) Phil Zimmerman (PGP技术的开发者) Julian Assange(维基解密创始人) Adam Back (亚当·拜克) Wei-Dai (可能是华裔,地位尊崇) Hal Finney (PGP加密的发明人之一) Tim-Berners Lee 爵士 (万维网发明者) John Perry Barlow (赛博自由主义政治活动家) Nick Szabo(BitGold 发明人,智能合约的发明人)

经过多年努力,密码朋克及其追随者开发出了多种数据和通信加密工具,为捍卫个人隐私做出了巨大的贡献。但是最为密码朋克孜孜以求的,是匿名电子货币系统。

在中本聪和他的比特币出现之前,有三个项目对比特币产生起到关键性影响力。

E-cash项目

由David Chaum提出。就是这个大胡子老头,知名老码农不知道为啥都喜欢留大胡子。

E-cash的目标是建立起一套匿名的互联网支付系统,付款人可以证明交易存在,但任何第三方都无法获取支付的信息。E-cash试图在现存金融体系内,制造出一个黑洞,在黑洞内流转的资金无法追踪。David Chaum在荷兰注册公司运营E-cash,并且为其技术注册了专利。这使得他遭遇了来自左右两侧的攻击,密码朋克认为他的商业运作和专利申请违背了密码朋克运动的宗旨,而现存的金融系统则不能容忍资金无法追踪。

B-money

由Wei Dai提出, 下面这位,你没猜错,是华人GG。

跟后来的比特币非常相似,它们都基于P2P网络、无中心的运行,通过不可伪造的计算铸造货币等等,但只提出概念并无真正实现。Wei Dai是著名的密码朋克,是著名的Crypto C++ library的作者和维护者。为了向他致敬,以太坊最小货币单位Wei,以他的名字命名。

Hashcash

由Adam Back设计。Adam Back在今天的区块链行业仍然具有巨大的影响力。他是Blockstream公司的创始人和CEO,比特币核心开发者大部分都是Blockstream公司的雇员。

Hashcash其实并不是要解决通用的支付问题,它的出发点是如何防止对互联网资源的滥用,例如如何对抗垃圾邮件。Hashcash提出通过不可伪造的hash运算生成某种证明,类似于邮票,发送电子邮件必须贴邮票,从而大幅提高垃圾邮件的发送成本。Hashcash首创了通过Hash运算提供工作量证明的机制。后来被用在比特币的POW算法当中

除了以上提及的三个项目,对区块链做出贡献的项目还有很多。其中包括以“智能合约”概念提出者而著称的Nic Szabo。后面再以太坊项目中会提到智能合约。

区块链1.0之比特币

先有比特币,才有区块链。所以,比特币的重要性不言而喻。至今仍然是区块链领域最重要的项目,目前占据整个数字货币市场的66%。(数据见: CoinMarketCap)

比特币产生的历史背景,可以见之于中本聪在比特币创世区块,也是第一个区块链中的写入的内容:

The Times 03/Jan/2009 Chancellor on brink of second bailout for banks(2019年1月3日,财政大臣正在实施第二轮银行紧急援助的边缘)

这句话可以在比特币区块链浏览器中看到:

https://btc.com/4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b

所以,比特币是在2008年金融危机这样一个特定历史环境下的产物,嘲讽政府无节制地发行货币,金融系统的崩溃。它核心要解决:货币发行的去中心化和透明性,建立一套由算法规则来掌控的货币体系。

比特币的设计机制可以仔细阅读他的白皮书:https://github.com/xiaolai/bitcoin-whitepaper-chinese-translation

比特币的基本运行过程见下图:

比特币的基本运行过程

核心分三个阶段:

  1. 交易:交易这使用钱包工具,点对点地进行交易,并广播交易信息到比特币的网络当中

  2. 验证:矿工接受并加哈交易的合法性,将其打包并进行“挖矿”

  3. 铸币:系统奖励成功“挖矿”的矿工一定数额的比特币

比特币网络已稳定运行十年,它实现了:

  1. 货币的去中心化。

  2. 货币发行的透明化

  3. 货币流通全球化

  4. 货币交易的匿名化

  5. 个人掌控货币的所有权

这个时期的比特币,在技术是称之为分布式不可篡改的电子账本系统。提供了一个可信数据库的环境,属于区块链1.0特有的技术。围绕比特币,后续诸多项目作出不同的改进,但本质上都是属于一种特殊的数据库系统。

区块链2.0之以太坊

比特币的独特魅力吸引全球很多人的参与,随着越来越多人的加入,技术在不断的迭代和升级。

2014年,年仅19岁的Vitalik, 发布了以太坊白皮书,并与合作者一起,在一年之后实现了以太坊上线。以太坊把图灵完备的虚拟机引入区块链,把整个网络变成一台全世界共用的通用虚拟计算机。

Vitalik

2017年,基于以太坊的各种1co,带动整个行业的发展,随之而来的各种DApp应用的兴起又大大拓展区块链的应用广度和深度。以太坊也因其特殊的贡献和社区认可度,牢牢占据数字货币市场的第二名(数据见: CoinMarketCap)。

Vitalik也因此一战封神,江湖人称V神,这是属于他的高光时刻,不仅拥有巨大的影响力,还拥有巨额的财富,巅峰时期,他拥有的以太坊价值高达近十亿美金。区块链行业以其高度的自由和财富光环,吸引各种人蜂拥而至。

至此区块链进化到2.0时代,从可信账本,到可信计算机。从以太坊开始,区块链不再只是一个数据库,它已经变成一个计算的平台。依托于平台,可以开发出各种DApp(Decentralized App),关于DApp是什么,后面可以见我曾经写过的一篇万次长文:《万字长文讲述DApp发展:迎接DApp大时代的到来》。

区块链3.0?

以太坊之后,区块链技术又有什么样的发展趋势呢?抛开那些瞎喊区块链3.0甚至4.0之外的项目,真正的区块链3.0技术在哪里呢?

从真正技术发展的跨度来看,并没有太脱离可信计算的范畴,从这点意义上看不能算作真正意义上的3.0。 但随着应用的不断深入,在一些关键技术和应用广度上取得新的突破

性能

区块链的“不可能三角”,也称为“三元悖论”,就是指区块链网络无论采用哪种共识机制来决定新区块的生成方式,皆无法同时兼顾扩展性(Scability)、安全性(Security)、去中心(Decentralization)这三项要求,至多只能三者取其二。

比特币和以太坊(1.0),采取POW算法, 全网节点参与共识,兼顾安全和去中心,导致扩展性差,TPS低。比特币10分钟一个区块,在受限于区块大小,最终每秒7币交易。以太坊的tps是10-20之间。为此,很多其他项目采取一些新的共识算法来解决这个问题。

性能问题,业内核心有两类解决方案:

一类是采取新的共识算法,在不可能三角中牺牲其中一部分。

EOS采取DPOS共识,27个节点在亚秒(0.5s)间隔出块,而且对节点的性能和网络提交要求极高。实际跑出的TPS高达5000+,满足绝大部分应用要求。但有限节点数,就导致去中心化的成都降低,受到很多人的诟病。

EOS

iota采取DAG做共识,底层区块不在一个个一次排列好的一个线性结构,变成一张有向无环图。这种结构的扩展能力很强,能够多个节点同时参与共识,理论上性能可以无限大。

另外还有像Algorand项目,号称已经解决不可能三角问题,都很值得关注。

还有一类是称之为Layer2 的扩展方案,主要是围绕以太坊展开。一种是分片方案,另外一种是链下方案,在此就不做详细探讨。

跨链

区块链行业繁荣的背后,伴随着一个个项目的发展和崛起,这样就出现一条条独立的链,彼此隔离,形成一个个独立的信息孤岛,不形成网络效应,是无法发展壮大和涌现出新的事物。如何突破信息孤岛的问题,让不同的链之间能够相互通信就是跨链需要解决的问题。

围绕跨绕问题,在2019年,Cosmos和Polkadot,备受关注。二者都形成独立的解决方案,先解决本身同质链的通信问题,在通过适配的方式解决跟其他链的跨链问题。都有一个基本的核心组件,Cosmos的Tendermint, Polkadot的Substrate,能够做到一键发链。也就是开发者不需要独立开发区块链系统,简单的一些命令就能创建一条链,非常便捷。

当然,还有一些其他技术要点比如:Oracle, 隐私保护,去中心存储这些也在不断发展。

总结

罗马不是一天建成的。

区块链经过10+年的发展,从技术的角度看:区块链从一个可信的账本,变成一个可信的计算机平台。核心都是可信,也就是区块链一直在通过算法来解决价值问题。所以,我们也经常说,区块链是信任的机器。

解决信任问题,是区块链提供的最核心价值。后面有机会再讲。

从区块技术的发展历史看区块链是什么?相关推荐

  1. 物联网技术的发展历史及关键技术

    文章目录 1 物联网技术的发展历史及基本概念 1.1 物联网技术的发展历史 1.2 物联网技术的基本概念 2 物联网的核心技术 2.1 传感器技术 2.2 组网技术 2.3 嵌入式技术 2.4 云计算 ...

  2. nand flash和nor flash区别_从闪存的发展历史看,eMMC与NAND Flash有什么区别与联系?...

    如今,eMMC已发展成为当红的便携移动产品解决方案之一,之前宏旺半导体有说过eMMC的工作原理,今天跟大家聊聊eMMC与NAND Flash有什么区别和联系. 首先我们要认识Flash,Flash分为 ...

  3. UML2面向对象分析与设计 -- 面向对象思维(概念、面向对象技术的发展历史、对象和类、面向对象技术的相关原则:抽象 封装 分解 泛化 多态 分层 复用)

    文章目录 1. UML2面向对象分析与设计 学习目标 2. 面向对象思维 2.1 学习目标 2.2 什么是面向对象 2.3 面向对象技术的发展历史 2.4 面向对象技术的优势 2.4.1 便于沟通:在 ...

  4. 从物联网发展历程看区块链挑战

    2009年,中本聪发布了第一个比特币节点,五年后区块链俨然成为一个规模巨大的产业. 虽然看起来,基于区块链的新的商业时代距离我们似乎只有一步之遥,但在2016年,我们已经意识到区块链产业不会那么快获得 ...

  5. 区块链技术的发展现状_区块链的现状及其发展趋势

    区块链技术的发展现状 在较早的文章< 区块链演进:快速指南以及为什么开源是它的核心>中 ,我讨论了第一代区块链:公共比特币和加密货币区块链,然后是能够执行程序的以太坊区块链("智 ...

  6. 数据库技术的发展历史是怎么样的?

    数据库技术产生于20世纪60年代末70年代初,其主要主要研究如何存储,使用和管理数据.随着计算机硬件和软件的发展,数据库技术也不断地发展.数据库技术在理论研究和系统开发上都取得了辉煌的成就. 从数据管 ...

  7. 从SAP Leonardo的发展历史看SAP的数字化转型策略

    自从进入物联网媒体以来,对各大公司的物联网平台都非常感兴趣.SAP推出Leonardo平台后,外界都评论Leonardo是物联网平台,但很少有对Leonardo介绍清楚的文章.一直想把Leonardo ...

  8. 动态网页技术的发展历史

    诞生的历史背景 最初在浏览器中主要展现的是静态的文本或图像信息,GIF图片则第一次为HTML页面引入了动态元素.不过人们已经不仅仅满足于访问放在Web服务器上的静态文件,1993年CGI(Common ...

  9. 传真百科:传真通讯技术的发展历史

         传真机的发展可概括为三个阶段: 第一阶段:基础阶段(1843-1972年) 1843年亚历山大·贝恩(Alexander Bain)发明了一种原始的电化学纪录方式的传真机: 1848年弗·贝 ...

最新文章

  1. K-近邻算法之kd树
  2. .NET程序设计之四书五经
  3. 学生成绩管理系统数据库设计
  4. 清华大学参赛计算机集群,清华学生超算团队获得国际大学生超级计算机竞赛(SC18)总冠军...
  5. 好架构是进化来的,不是设计来的
  6. H2O —— 宣称性能是 Nginx 2 倍的 HTTP 服务器
  7. poj 2480 (欧拉函数应用)
  8. 【FZU - 2202】犯罪嫌疑人(思维,假装建图,分类讨论)
  9. C++远程dll注入到QQ聊天工具
  10. 车辆动力学及控制_第一届国际轮胎动力学仿真技术峰会在长春举行
  11. 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器(及Windows 10无法找到SQL server配置管理器的解决方法)
  12. 场景,生态之面!——保险科技生态建设
  13. 使用微PE制作启动U盘重装系统教程
  14. 孤儿进程/僵尸进程/守护进程
  15. javascript Array系列函数之2:unshift
  16. 硬盘分区格式GPT与MBR无损互相转换而不破坏硬盘存储资料
  17. 【持续更新】Leetcode SQL题目全解析(附建表sql)
  18. Excel是什么软件?免费的吗?
  19. SQLite3的安装使用
  20. 计算机乘法算法流程,布斯乘法算法

热门文章

  1. 服务器租用好还是托管好?
  2. 电动车铅酸电池的正确充电方法(过度充电,会导致板栅金属层变薄,容易断栅格;过度放电会导致极板硫化,活性海绵组织失效,缩短极板寿命)
  3. RT-Thread Studio环境下lwIP+ENC28J60的启用与调试
  4. 摩托罗拉Android+7寸,3.7英寸电容屏 摩托3G旗舰XT800发布
  5. 【错误异常大全】:正尝试在 OS 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。
  6. BAT的“说散就散”
  7. 北大2017计算机期末考试试题,北京大学2017年自主招生测试题汇总
  8. windows10系统安装全过程
  9. pragma warning
  10. 数电实验(一)利用与非门设计四舍五入判别电路