[block #15] 比特币该如何扩容
https://zhuanlan.zhihu.com/p/30344719
比特币圈最大的冲突莫过于扩容之争了。

三、四年前比特币的用户基数和交易量都很小,每笔转账的费用通常只需几美分,甚至免费。从2016年起,随着交易量的上升,区块大小接近1MB的上限,平均容量约2000笔交易。为了让转账交易能尽快得到确认,用户付给矿工的交易费也水涨船高。

在写下此文时,每笔交易平均225B,每字节出价130sat/B以上可以得到优先确认(有90%以上概率被加入最新区块),按6000/BTC的汇率估算交易费约6000/BTC的汇率估算交易费约1.75。这笔费用对于大宗汇款来说微不足道,比起银行电汇便宜十几倍,但显然不适合买咖啡之类的小额交易。

要解决交易量饱和、交易费高昂的现状,比特币需要扩容。这一点几乎没有争议。至于具体的扩容方案上则分裂出两大阵营:以矿工集团为代表的大区块派和以Core开发者为首的二层网络派。

大区块派的扩容策略很容易解释:1MB的区块填满了是吧?增加区块上限呗。先提升到2MB。2MB还不够就4MB或8MB。大区块极端派认为连1GB的巨块都是可以接受的。

面对难题,显而易见的解决方法通常都有显而易见的缺陷。大区块方案也不例外。

先来看看2MB的区块有多大用处吧:区块容量上限约四千笔交易,平均每秒七笔,相当于Visa信用卡交易量上限的八千分之一,平均值的二百四十分之一。交易费顶多下降一半。平均确认时间不变。比特币显然仍不适合买咖啡。

如果用大区块策略让比特币处理Visa级别的交易量,那区块上限要提升到0.25GB。这意味着区块链每年增加13TB(参见[block #8] 应对区块链数据大爆炸),比特币全节点的运营成本飙升,节点更加中心化。区块增大的另一个副作用是验证和同步时间延长,分叉概率增加。这些后果都会降低比特币网络的总体安全性。

而且大区块策略不改变平均每十分钟一次的出块速度。确认交易的等待时间仍然会以分钟计,不满足需要快速支付的应用场景。

有人会说,GB级别的区块是荒唐的,但比特币不必对标Visa啊,何不先扩容到2MB,以后看情况再升到4MB、8MB?这种规模的区块好像没有太大的副作用。

2MB区块本身问题不大,但是从1MB升到2MB、从2MB升到4MB,每次扩容都需要硬分叉(参见[block #9] 分叉、睡教与SegWit2X)。连软分叉都应该格外谨慎对待,更何况硬分叉。硬分叉不仅带来更高的风险,同时也是个清理历史遗留错误、引入重要改进的大好机会。把它浪费在双倍扩容这样鸡毛蒜皮的改动上简直是儿戏。比特币不是Litecoin、Ethereum、Monero,在目前的发展阶段如果一言不合硬分叉的话,就好比一个计算机博士生在拿到学位前突发奇想要转系读挖掘机专业一样鲁莽。

既然大区块是急功近利的短视方案,那么比特币扩容路在何方呢?

基于二层支付通道的闪电网络(Lightning Network)是目前最有前景的方案。闪电网络利用哈希时间锁合约(Hashed Time-Lock Contracts或HTLC)让使用者在比特币主链上锁定一笔资金,开通链下的支付通道。之后的支付完全不受主链出块速度、区块上限影响,交易延迟从分钟级降低到毫秒级,交易量也提高多个数量级。

交易双方不需要信任第三方(比如中心化的银行或交易所),交易费用接近零,可以实现亚聪级支付额(细分比特币的原子单位“聪”),可以实现流式支付(比如按秒计费的在线播放)。全程用洋葱网络的方式传递交易信息,增加匿名性。只要采用同样的哈希锁,跨链交易也变得简单。

交易双方如果长期合作,支付通道可以无限期延续下去,不必定期在主链上结算;如果一方试图通过提前结算谋取利益,另一方可以在一个预定时期内阻止不诚实的行为,还可以外包给不能控制自己资金的第三方监督执行,即使自己的闪电网络钱包离线也能防止被坑。

功能如此强大的闪电网络根本不需要对比特币硬分叉,相较于大区块扩容的优势非常明显。不过它也遭到大区块派的各种攻击。抨击主要集中在三点:一、闪电网络到今年一月才发布v0.1-alpha公测版,正式发布日似乎还遥遥无期。但如果去https://github.com/lightningnetwork/lnd就会看到开发团队非常活跃。闪电网络和其他复杂的软件系统一样需要时间才能完成。最大的技术障碍已经被隔离见证(SegWit)清除,闪电网络沦为vaporware的可能性已经很低。

另一个常被引述的攻击点是,闪电网络会造成二层网络节点的中心化。这个论调颇有迷惑性,因为早期的闪电网络设计受制于交易延展性(transaction malleability)攻击漏洞,时间锁必须设定期限,支付双方需要定期在主链结算并开通新的支付通道,这样会导致普通用户为了节省结算交易费与少数资金锁定期特别长的大节点建立通道,增加了中心化的可能。然而今年比特币主链已经通过软分叉激活了隔离见证,好处之一正是填补了交易延展性漏洞,间接地允许闪电网络创建无限期合约,不仅简化了系统、降低了交易费用,还降低了中心化风险。另一方面,早期闪电节点很少,暂时会用irc或tracker之类中心化的节点发现机制,但未来应该会像BitTorrent那样,过渡到类似DHT的去中心化方案。

最后一个常见攻击论点是闪电网络违背了中本聪意志(所谓的“Satoshi’s vision”)。理由是2008年的比特币白皮书只写了链上交易,主链之外的二层交易网络偏离了比特币的最初设计。按这种固步自封、不就事论事探讨改进方案优劣、近乎原教旨主义的逻辑,中本聪本人作的诸多改动就早已偏离了自己的设计。比如比特币早期不设区块上限,能给指定IP地址转账等等。这些设计缺陷都逐步被认识和修正了,那是再正常不过的软件进化过程。连圣经都有好多版本迭代呢,要指望十年前的白皮书能以不变应万变,顺应比特币的发展需求那简直是可笑的。

总结:从技术角度分析,闪电网络扩容方案完胜大区块策略,它会给比特币带来新的活力和影响力。利益受到二层支付网络侵蚀的集团会继续诋毁它,但在隔离见证成功激活之后已经丧失了压制闪电网络的一张王牌。

(转)比特币该如何扩容相关推荐

  1. y币充值通道_比特币如何扩容?读懂比特币链下扩容技术进展与投资现状

    2017 年,加密货币牛市引发交易量剧增,这让比特币和以太坊网络不堪重负.两个网络都受困于拥堵.交易延迟和费用高企等难题.为应对这些问题,人们提出了多个扩容方案,或者将目光再次投向链下和 Layer ...

  2. 闪电网络真的是比特币最好的扩容解决方案吗?

    闪电网络自 2016 年被提出以来一直备受争议,作为 BTC 的扩容解决方案,比特币社区成千上万的人表达了他们对闪电网络不起作用的看法.现在,实施一年半之后,它仍然饱受质疑,因为它的集中化,路由问题和 ...

  3. 杨海坡:比特币分叉往事

    Bitcoin Cash于2017年8月1日正式从Bitcoin分叉出来,已经过去了两周年.回过头看这两周年的发展,Bitcoin Cash既是成功的,也是失败的.说其成功是在于其仍然有着极其活跃的社 ...

  4. 一文读懂比特币现金(BCH)

    摘要 比特币现金(BitcoinCash)与比特币相同,是一种基于去中心化,采用点对点网络与共识主动性,开放源代码,以区块链作为底层技术的加密货货币.比特币社区围绕扩容问题争论了三年之久,终于在201 ...

  5. 比特币诞生十周年:价格虽然成功,但中本聪愿景却未实现

    关于加密货币和区块链的一切都源于一篇论文.2008年的美国爆发金融危机,波及到世界各地,各国法定货币出现大幅贬值情况,人们手中的钱变得不值钱了.时年11月1日,一位自称中本聪的人在网络上发表了一篇&l ...

  6. 比特币前首席开发人员:LN可能还需要18个月

    在昨天,推特账号Bitcoin发推称:"比特币的闪电网络是否已经准备好大规模采用?但系统好像充满了未解决的问题,"并贴出了一张用户在使用闪电网络过程中的不愉快体验截图.在这条推特的 ...

  7. BCH扩容的摩尔定律——为什么BCH目前不选择分片?

    通常情况下,摩尔定律是适用于比特币现金扩容的,作为比特币现金如何随着未来使用量的增加而扩容的论据.的确,过去晶体管的数量变化符合摩尔定律.但是,值得注意的是,当前单核的时钟频率(主频,指CPU的运行速 ...

  8. 比特币现金诞生一周年,未来发展瞄上了IPFS技术

    都知道比特币,但是比特币现金是什么鬼? 这个别说刚入币圈的小白,连很多币圈老韭菜都不一定知道. 为什么比特币现金会诞生? 说到这个问题,就要先聊一聊硬分叉.在比特币现金出现之前,最著名的硬分叉还是以太 ...

  9. 比特币现金诞生一周年,BCH的未来在哪?

    去年,也就是2017年8月1日,比特币现金(Bitcoin Cash)诞生了.比特币现金由比特币分叉而来,支持者也曾是从比特币社区的人.BCH(也叫BCC)这个市值长期占据前五的币种,自诞生以来就视比 ...

  10. 比特币的矿工为什么讨厌开发组Core?

    比特币的矿工与开发组Core因为扩容的事情一直不和,以至于在17年5月的纽约共识大会上,全球21个国家的56家区块链初创公司和矿业集团共同将开发组Core隔离在外,从而签署了纽约共识.当然,这一共识没 ...

最新文章

  1. 《大道至简》第六章读后感
  2. 大数据实训记录(一)
  3. 使用LoadRunner-运行负载测试
  4. Test传送门(更新中)
  5. 微软发布Azure Storage不可变存储功能的正式版本
  6. 优秀!港大同济伯克利提出Sparse R-CNN: 目标检测新范式
  7. 一文读懂目前大热的AutoML与NAS!
  8. 接口、抽象类、类之间的关系
  9. [2019杭电多校第八场][hdu6667]Roundgod and Milk Tea
  10. MacOS配置Sql Server环境
  11. 三星 9810 android 9,【极光ROM】-【三星NOTE9 N960X-9810】-【V17.0 Android-Q-TB9】
  12. 制作种子怎么上传服务器,怎么做种子,又怎么发布呢?
  13. python变白_Python OpenCV纯白色背景
  14. 我的去 Google 化的安卓之旅
  15. u)dym)l$_@3*0y3u_pvy@34ky1co1j$lfd1wp-w*8x%30@f7t$
  16. 加密流量分析-2.研究背景
  17. http简介以及常见知识和http请求头,响应头,状态码,内容类型对照表分享(超实用)
  18. 针对手机连WIFI微信公众号等图片加载缓慢问题——解决方案
  19. C# 面向对象-面向对象概述
  20. 微信小程序管理客服微信号

热门文章

  1. 相声登上直播平台 传统艺术能借风口浴火重生吗?
  2. 《Programming WPF》翻译 第8章 3.Storyboard
  3. PHIL2650 是个好课程
  4. Oracle中集合操作符
  5. Eureka-Client(Golang实现)
  6. 指示灯亮着,但是右边的数字小键盘不可用
  7. 实现键盘输入信息,按enter键调用摄像头自动拍照
  8. APICloud的BUG 组件UIActionSelector数据格式引起的安卓手机显示不出
  9. sp_executesq用法
  10. database如何管理超过4GB的文件