正本清源(上)

                              曹政课程笔记

1.1比特币为什么值钱?美国金融危机以来,很多国家的经济恢复都是靠货币超发的方式,即打劫所有人去补坏人的窟窿,坏人犯错要所有人买单。

1.2货币的价值来自国家公权力,国家信用是不是可靠?而实际上货币的汇率暴跌的情况不少,也为数字货币提供了生存土壤。

1.3比特币的背后是共识算法信用,它有紧缩的特性,是现实货币的反面,同时它有暗黑交易的市场需求,造成了价值的攀升。

2.1区块链的价值是共识,来自于公开的算法,但并不是为区块链专门设计的。

2.2共识有很多种,最常用的是比特币的pow的共识算法,叫基于工作量证明的一种信息保障的算法。目前以太坊是基于pow,但其未来将切换到pos的共识算法。

2.3pow共识算法中,几十万台矿机同时打包和发布数据,但只有一个幸运的矿机获得了证明,生成新的区块,并获得区块奖励。

2.4区快发布后,其他节点会很快得到此信息,放弃当前已经打包的数据,开始接受新的数据,进行下一步数据打包,并试图证明算力获得发布权力和区块奖励。所以pow共识的算法竞争中的空耗也是惊人的。

2.5但也正是所有节点的概率一致,保证了任意节点如果被入侵被篡改其数据信息,则不会被其它节点接受,也就是保证了主链的安全性。

2.6pow目前局限在出块速度被限定,十分钟/区块。交易的频率有限,且一个区块只有1M,存载的交易信息有限。即比特币交易频次被限定在非常低的量级,差不多1秒可以支持不到10个交易。

2.7升级pow有以下几种方案

2.7.1提高区块大小,第一次硬分叉就是比特现金,是从1M到了8M。

2.7.2提升出块的效率,并同比降低出块的奖励。如以太坊的出块速度就明显比比特币快多了,但出块太多就存在节点存储和网络传输的压力。

2.7.3出块分片化存储的方案。(目前比特币这样的区块链虽是去中心化分布式的存储,但每个全节点的存储是记录的全集,就在规模总量和本地查询上明显受到了制约,使用分片存储,每个节点只存储某个子集是否可以行呢?结合第二个方案,可提升系统承载能力,并且不会对节点存储和网络传输带来压力。当然它也有其他的问题。

2.7.4闪电网络的解决方案,即将小额的频繁交易,先通过一些分支节点进行存储和计算,在一定时间内整合归并到主链,合并写入,就极大的减少了主链写入的压力,提升主链的容量。

2.8其他解决pow存在大量空耗算力方法。

2.8.1pos共识算法,它基于拥有的数量和时间获得证明的算法,类似银行存款存本取息,存的钱多时间长,获得收益就越多,这样算力的竞争意义就被弱化,而拥有的意义被强化。

2.8.2以太坊目标变更为pos,但pos存在一些问题。如马太效应,最后系统的决策和收益依然会集中在少数的寡头手中,除此之外,当矿工的热潮退却后,如何保证有效的工作节点数量来完成运算,也是值得观察。

2.8.3pos之上又有人提出了Dpos,在基于拥有数量的基础上,投票选举工作节点的模式,由投票委任的节点负责运算打包,一旦出现坏区块或故障,会有一套机制保障自动切换到其他节点,进行平滑过渡。

目前EOS主推此共识模式,作为其平台的基础架构,从白皮书指标看是相当不错的,但产品未上线,能否经得经过实践考验,有待观察。

2.8.4共识与效率。pow实际上是为了实现网络共识,极大地牺牲了效率。比较起来,支付宝的效率高是基于中心化系统的,且任何一个互联网公司都可以做去比比特币的效率高的系统,但是无法形成有效的共识。所以要实现区块链的效率,完全的去中心化是很难保证的。而且pow共识算法下也有大矿场的垄断,导致多中心化模式,于dpos系统才是兼顾效率与共识的较好策略。

3.1比特币是区块链第一个实际场景应用,共识最广泛,核心价值在于可作为一个账本系统,完成一些国际贸易跨境交易中信用凭证问题,解决传统金融中信用的成本问题。

3.2比特币存在的问题是算力空耗严重,交易量级极为有限,不支持智能合约,不支持零知识证明。

3.3比特币架构的问题,或通过补丁来维持旧有系统,或重构,牺牲一部分旧有系统用户。但是如把它当做资产,就不需要频繁交易,维持共识重要,如果当做货币,那么架构升级理所当然。

4.1.1以太坊是区块链的第二代平台,支持智能合约,应用想象空间大,出块效率也明显高于比特币,交易结算周期有更好的表现。

4.1.2由于智能合约的出现以及以太坊开放平台的支持,实际上任何人都可以快速创建自己的token,即发币或ico,市面上99%都是在以太坊的平台上鼓捣出来的一个token而已,并无技术的含量。

4.2智能合约是在区块中传递的合约,或者说传递的字符串,不是单纯的字符串和信息,而是一段可执行的脚本,比如说有触发条件,有交互能力。

4.3图灵完备。不考虑硬件限制的情况下,这个脚本的支持性可以满足所有图灵机的功能诉求,图灵机也可以简单理解为全功能的计算机,但支持图灵完备的智能合约现实中不可能,因为不可能有这么大区块和那么强的算力支持,稍复杂一点的代码,就可以让整个区块链网络崩溃,光一个简单的宠物猫就导致以太坊大堵塞。

4.4以太坊先是一个平台,上面跑了上千种虚拟货币,其中之一是自己的代币。平台不但可以发布货币,还可以发布应用,智能合约的应用。其一代码是公开可验证的,其二跑在所有区块上,无中央服务器,通过共识算法来保障,不用担心被篡改。

4.5智能合约第一个成功的应用是电子猫,发布方一旦发布出去,后面就连自己都无法更改。之后成功的案例是电子赌场,这个东西确实蛮适合赌场的,其公信力好,庄家无法作弊,而且无法追踪。

4.6硬分叉是分杈方约定在某个区块的节点开始,启用新架构,不再和主链一致,不需主链允许或通过,任何人都可以基于自己的理解和判断,发起一个新的分叉,但每次分叉都是对共识的撕裂。

5.1EOS目前的ico也是基于以太坊,按白皮书说是想成为第三代的区块链的平台,但上线前依然需要时间检验。李笑来只是站台,EOS的发起人还有其他项目上线运营的,如steemit.com,一个基于区块链的社区,可以到该社区注册的账号发帖。

6.1零知识证明,在不透露交易细节的情况下印证了交易记录,是一种算法保障,可有效保护交易的隐私,隐藏交易来源并防止追嗍,同时也是安全的,因为任何试图修改交易的行为都无法通过验证。

7.1信息安全之一:算力劫持。共识算法的前提是大部分节点是正确的,可信任的。不同的算法风险不同,如POW共识的一家矿场或矿池掌握了51%的算力,理论上可劫持所有的交易,改变交易数据。如dpos需保障2/3的节点是可靠的,否则也存在着强行分叉和干扰主链的风险。

7.2重放攻击。这是硬分叉首先要小心解决的问题,如果系统设计不周全,会导致在分叉上执行的交易被复制到主链,从而带来币拥有者未确认的交易发生而造成损失,所以很多交易所或钱包服务商,不敢去支持名目繁多的分差币,也是担心由此带来的风险。

7.3私匙安全。不同于其他网站,许多新手认为账号和密码最关键,而忽视了私匙,糊里糊涂被钓鱼而给出私匙,如果是被别人拿走了,那么别人可拿走你的一切,根本无需账号密码。风险还在于,只在手机或电脑装一个本地的钱包而无任何备份处理。还有手机电脑丢失硬盘损坏都会导致币的丢失。

7.4交易平台和钱包工具的安全。涉及到平台本身的技术安全性,平台员工的可靠性,平台所有者是否有坏心思坏目的。当利益足够大时,安全谁能保障?(去中心化就是失去了中心化的保护,当零知识证明普及时,偷币行为更加无法追溯了,共识算法保护的是那个字符串背后的资产,而无法保护这个字符串属于谁。)

7.5智能合约的安全。有一个基于区块链众筹的风险投资基金叫做the DAO,这众筹计划是用一段智能合约代码约束的,这段代码被发到网上并募集了超过数亿美元的资金,但代码中有一个安全风险,黑客通过代码劫持超过5500万美元。除了一个交易地址,无法掌握黑客更多的信息,也就没办法将窃贼绳之以法。

回顾:1、共识算法是区块链的核心技术;2、当前的共识算法存在一些问题,是区块链应用场景普及所需要面对的重大问题。3、从比特币到以太坊,实际上区块链的技术方案正在演进,但谁是第三代,目前还有待争议。4、智能合约是区块链应用场景扩展最具有想象力的地方,不过受限于基础架构和算力问题,目前智能合约还很难做出复杂应用,图灵完备在当前阶段尚不具备应用意义。5、零知识证明还没有全面应用起来,但这个逻辑被认可度是非常高的。6、共识算法,零知识证明,都是人类数学和信息科学的重大进步,并不单纯是为区块链服务的,更不是为发币的骗子们服务的。7、硬分叉本身存在一定的技术意义,有其商业上的逻辑。8、信息安全在区块链投资中的重要性非常高,而目前绝大部分新入场的用户对此并没有足够清醒的认识,整个区块链产业出现的严重安全事故已经很多起了,入局者希望能引以为诫。

待续

你可能感兴趣的:(正本清源(上))