# 什么是区块链

# 概念

区块链是一种比较特殊的分布式数据库。分布式数据库就是将数据信息单独放在每台计算机,且存储的信息的一致的,如果有一两台计算机坏掉了,信息也不会丢失,你还可以在其他计算机上查看到。

区块链是一种分布式的,所以它是没有中心点的,信息存储在所有加入到区块链网络的节点当中,节点的数据是同步的。节点可以是一台服务器,笔记本电脑,手机等。

你要知道的是这些节点的存储的数据都是一模一样。

# 特性

# 去中心化

因为它是分布式存储的,所以不存在中心点,也可以说各个节点都是中心点,生活中应用就是不需要第三方系统了(银行、支付宝、房产中介等都属于第三方)。

# 开放性

区块链的系统数据是公开透明的,每个人都可以参与进来,比如租房子,你可以知道这个房子以前的出租信息,有没出现过问题,当然这里头的一些个人私有信息是加密的。

# 自治性

区块链采用基于协商一致的规范和协议(比如一套公开透明的算法),然后各个节点就按照这个规范来操作,这样就是所有的东西都有机器完成,就没有人情成分。 使得对"人"的信任改成了对机器的信任,任何人为的干预不起作用。

# 信息不可篡改

如果信息存储到区块链中就被永久保存,是没办法去改变,至于 51% 攻击,基本不可能实现。

# 匿名性

区块链上面没有个人的信息,因为这些都是加密的,是一堆数字字母组成的字符串,这样就不会出现你的各种身份证信息、电话号码被倒卖的现象。

# 结构

区块包含两个部分:

  • 区块头(Head):记录当前区块的元信息
  • 区块体(Body):实际数据

包含数据如下图所示: 区块链包含数据

# 关键技术点

通过 Hash 与 非对称加密来保障数据无法被篡改

  • Hash:y = hash(x),对 x 进行哈希运算得出 y,可以隐藏原始信息 x,因为你没办法通过 y 来算出 x,从而做到匿名性。
  • 非对称加密:公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。

# 公链、私链与联盟链

区块链技术自诞生以来就是打着去中心化的大旗的,但是随着技术的高速发展,出现了三种不同的形态:以比特币、以太坊为代表的区块链从技术上来说是可以做到完全去中心化的。但从管理上来说,由于企业的发展理念或目标不同,区块链有两种应用方向:一是完全去中心化,另一种是有效/有限去中心化的应用。

# 完全去中心化

区块链上的验证机可以任意加入,不受限制。每台验证机享有平等的权利,参与全网的工作验证和收益获得的分配。其主要特点是机机平等、所有节点平等、人人平等。优点就是保证公平,其缺点则是无法保证效率。比特币、以太坊,是公有链的常见技术表现形态。

# 有效/有限去中心化

区块链上的验证机受管理机构的限制,只有通过授权的节点才能加入。授权后的节点享有同样的权益。其主要特点是以相对的平等换取一定的效率。其优点是效率较高、更易商业化,其缺点则是不能保证绝对的公平。技术表现形态多为私有链、联盟链。

完全去中心化的目标是绝对的自由、绝对的隐私。但从现实来看,这只是一个理想、一个目标。纯粹的自由不一定好,全民的选择也不一定是最优的。而有效/有限去中心化是牺牲一部分绝对自由平等来获取一定的益处。比如不用那么多挖矿机,既可以节约成本,也可以避免挖矿的能源浪费;比如可以从一个行业开始,首先做到行业内互联,其次扩大到各行业互联,最后做到万物互联,其循序渐进的节奏更具有商业可行性;比如还可以用选择性的决策来避免群体性的失误等。

随着区块链技术的发展,出现了不同的区块链技术形态:私有链,公链和联盟链。

# 私有区块链( Private Blockchains)

随着比特币逐渐受到人们的关注,私有区块链的概念在区块链技术讨论中成了热门。从本质上而言,相较于完全公开、不受控制,并通过加密来保证网络安全的系统(例如POW与POS)),私有区块链可以创造出访问权限控制更为严格、修改甚至是读取权限仅限于少数用户的系统,同时这种系统仍保留着区块链真实性和部分去中心化的特性。虽然说私有链完全背离了区块链完全去中心化的初衷,但是在实际发展应用中以区块链网络技术来解决某些范围内的问题明显是效率很高的方式,或者说在某些不需要完全去中心化的范围内私有链同样会有很好的应用。

# 公共区块链( Public Blockchains)

公共区块链是指全世界任何人都可读取的、任何人都能发送交易且交易能获得有效确认的、任何人都能参与其中的共识验证过程的区块链——共识过程决定哪个区块可以被添加到区块链中并明确当前状态。

作为中心化或者准中心化信任的替代物,公共区块链的安全由“加密数字经济”维护——“加密数字经济”采取POW与POS等方式,将经济奖励和加密数字验证结合了起来,并遵循一般原则:每个人从中可获得的经济奖励,与对共识过程做出的贡献成正比。这些区块链通常被认为是“完全去中心化”的。人人都能参与挖矿,所有参与挖矿的人都是平等的。任何人参与挖矿所获得的价值奖励也是平等的。这样就很容易达成完全去中心化的共识。

# 联盟区块链( Consortium Blockchains)

联盟区块链是指其共识过程受到预选节点控制的区块链。

我们可以想象一个由1 5个金融机构组成的联盟,每个机构都运行一个节点,而且为了使每个区块生效需要获得其中10个机构的确认。区块链或许允许每个人都可读取,或者只受限于参与者,或走混合型路线,例如区块的根Hash及其API(应用程序接口)对外公开,API可允许外界做有限次数的查询和获取区块链状态的信息。这些区块链可视为“部分去中心化.联盟链在很多行业都是可行的。比如当今的物流行业,最早有行业的龙头企业带领建立物流区块链,接着行业各个企业都陆陆续续加入,共同组建物流行业的区块链联盟。每个企业都运行一个节点,要使链上每个区块生效,就得获得51%或者更多的企业节点确认,所有加入的节点都在联盟内以有效或者有限的去中心化形式运行。

区块链一开始问世是以比特币之姿,公开透明、公平竞争。随后世界开始探索如何把区块链用在各种场景,许多人就想到,也许不需要全世界人的参与,也不需要挖矿,我们只需要用到区块链去信任、可追溯的特性,透过较少节点达到拜占庭将军容错,于是私有链就诞生了。但私有链仍是中心化,难以维持去中心化的优势:共识决。因此又有了为企业体联盟而生的联盟链。 公链、私链与联盟链

# 五大公有链

# 以太坊(ETH)

以太坊创始人被人称为V神(Vitalik Buterin)。曾经在知乎上有一个问题是列举当今世上一个人的能力抵得上成百上千人的大神,回复里一个说了中本聪,一个就说了Vitalik Buterin。天才V神创造的以太坊,继承了比特币时代的区块链,开启了区块链时代的2.0。

比特币可以说只适合加密货币场景,而以太坊可以解释为区块链+智能合约。具备图灵完备性,支持智能合约。开创了一种可以实现各种商业与非商业环境下的复杂逻辑,隐藏了底层技术的复杂性而让应用开发者更多地专注在应用逻辑及商业逻辑上。

以太坊的不足之处在于其扩展性较差,和比特币一样遭受着每个交易都需要网络中的每个节点处理这一困境的折磨。2000tps的交易就可能导致以太坊链上存储快速增长而拥堵。随着应用接入更多,后期可能将更加拥堵。好在以太坊全节点只需存储状态而不是完整的区块链。

以太坊虽然交易越来越拥堵,但其在平台的价格已经节节攀升,一万大关也已经突破。未来即使以太坊拥堵问题无法解决,其投资价格也不会低。

# 小蚁(NEO)

小蚁创始人达鸿飞说过一句圈内盛传的名言,“所有不开源的区块链都是耍流氓”。虽然这只是一句玩笑话,但可以看出小蚁的定位,小蚁是一个开源的区块链项目。

小蚁是国内最早的区块链项目之一,其白皮书的定义是:基于区块链技术,将实体世界的资产和权益进行数字化,通过点对点网络进行登记发行、转让交易、清算交割等金融业务的去中心化网络协议。小蚁可以被用于股权众筹、P2P网贷、数字资产管理、智能合约等领域。

小蚁的开源社区在国内堪称一流,如今的小蚁项目,已经不需要团队运作,基本依靠社区推动。其价格在国内项目中也是一马当先,近千元的单价已经让不少人财务自由。

# 量子(QTUM)

量子是致力于打造不同于比特币和以太坊的另外一种区块链系统,希望能通过价值传输协议,实现点对点价值转移,拓展区块链技术和应用的边界。看起来这绝对是一个高大上的定义。

量子的技术设计主要在于其兼容性,包括以太坊和比特币的兼容性和量子向下的兼容性,和量子的模块设计以及共识机制。量子采用了创新pow的共识机制,即Ipow。

量子是参与了众筹,在上线初始就已经翻数倍,如今量子价格已在300¥左右,在国内的公有链项目中占有一席之地。

# EOS

EOS创始人是大名鼎鼎的BM。比特股,steem等都是此人一手创立,网络上流传最广的就是BM对话V神,BM犀利问话V神如何解决以太坊扩展性问题,可见其声名之大。不过EOS最有话题的地方在于其发行数量之多,并且众筹时间长达一年。

EOS作为叫板以太坊的公有链,最有技术特点的地方在于可以简化用户账号的生成与管理,并且能恢复账号,这在用户看来是提高了安全性,并且号称支持百万级tps的交易速度也让其赚足了公众的眼球,因为这在比特币和以太坊看来,是不能望其项背的速度。

不过要是对比到小蚁创始人达鸿飞的话,那么EOS又是在耍流氓了,因为EOS采用的共识机制是石墨烯技术,为的是提升EOS的扩展性,碾压以太坊,但是其共识节点只有固定的21个,这看起来又与区块链技术一贯的去中心化背道而驰了,更谈不上达鸿飞所谓的开源社区了。不过不管技术好坏,数量庞大加上价格飞奔,EOS已经成功引起了圈内人的兴趣。

在这几个公有链中大部分还有一个共同点,那就是模块化,作为底层公有链,最大的价值就在其商业与非商业逻辑下的应用开发,因此模块化很重要,因为这能大大简化基于该链上继续开发应用的难度。这里不得不说的一个后来者,同样是做公有链的NULS。在圈内盛传的NULS最大的特点就是模块化技术,白皮书里面模块化介绍也占了很大比重,并且其对标以太的开源社区,也圈了不少粉,当然最重要的恐怕还是NULS最近价格一路直追明星EOS的气势了。不足之处在于NULS发行数量较少,市值上完全不占优势,不过区块链技术始终回归在技术,资金最好还是辅助。

# IOTA

有人说DAG技术才是区块链技术的未来,iota就是使用了DAG(有向非循环图)技术。IOTA是一种开源的分布式账本软件项目,主要是为物联网打造的,iota的互通性技术能够实现数据真实性,并用于工业用具。另外还能实现传感技术、智能城市和自适应系统等提供的按需支付、微支付和机器对机器沟通,真正成为物联网的支柱。不过DAG技术最大的败笔在于其钱包使用,用户体验如果零是底线那一定是零,如果有负分我毫不犹豫会给负分。这主要还是在于其网络过于复杂。不过DAG技术不同于传统区块链技术的打包转账,零手续费的交易模式,使其扩展性相对其他项目有极大优势。

iota名声大还是因为其价格的狂飙,一分不到的发行价格,到如今已经千倍有余,更重要的是,其几千亿的发行量,让多少项目仰视。

不过DAG技术也不止有iota一家,纳尔图也算是DAG技术的代表了,只是纳尔图现在还处于开发阶段,未来实力如何还需要时间验证。

# 如何上链

自己做链是比较烧钱的形为,一般是围绕某个链做应用开发,写智能合约,保证数据能上链,如果上以太坊,部署一个合约大概10块钱,每次调用大概几块钱,取决于存储数据量的大小。