【学术】区块链专家:为什么我对比特币黄金产生了怀疑?

几周前,比特币黄金被对外宣布。对于许多新手比特币用户和投资者来说,这更像是比特币现金发生了重复,本质上看来是给你“自由币(free coins)”。

在这篇文章中,我将解释区块链是如何工作的,以及我对比特币黄金的评估。然后给出一个具体的例子,说明你为什么要小心它。

最基本的问题:区块链是如何工作的?

为了理解区块链,首先要了解一些关于区块链的基本知识。寻找一个新的区块来扩展区块链的过程叫做“挖掘”。(比特币)区块链中的一个区块是由一个叫做“工作量证明(Proof-of-Work)”的系统来保护的。工作量证明系统使用加密的哈希算法(即散列函数),使一个区块的采矿行为成为一个复杂的计算。

每个区块都有一个包含一个散列值的区块头,该值由使用默克尔树(Merkle Tree)的所有包含交易的散列派生而来。这使得该块本身可以防止篡改,因为将任何事物更改、移除或添加一个交易,都会导致不同的默克尔根。

区块头还包含前一个区块的散列,以确保链的完整性。这样就不可能在中间插入一个新的区块,或者将区块及时移动到另一个点上。

最后,矿工们必须找到一个包含在区块头中的随机值,这使得计算的散列超过在一个特定目标下的值。这个目标越低,找到正确的随机数的时间就越长。因此,这个目标会反映出一个问题:需要多少散列操作才能找到一个正确的散列?

在区块头(前一个区块的散列或任何交易)中篡改任何东西都会使散列无效。这就是链及其内容是如何被保护的。

采矿过程遵循一套一致性的规则。就比特币核心来说,这些规则如下:

  • 区块的工作量证明散列是用哈希算法SHA256计算的
  • 目标块时间是10分钟
  • 难点目标是被每2016个区块调整
  • 区块不能大于1MB

只要新区块遵循这些规则,规则不会改变,区块链就不会出现分叉(fork),因为所有客户端都将接受这个新区块。

什么是分叉?

源代码的分叉(软件) 因为比特币是开源软件,任何对它有潜在改进的人都可以做两件事。他们可以将比特币提交给最初的比特币核心项目,并要求开发人员维护其核心,将它们的变化合并到未来的比特币核心上。

另一个选项是,他们创建了源代码的一个分叉(本质上是它的一个副本),并在副本中包含他们的更改。通过这种方式,他们不会受到比特币核心团队的审查,他们可以将被修改的软件作为单独的产品发布——只要他们信任最初的创造者,并遵守许可条款。

比特币的许多分叉都存在,并被称为“altcoins”。然而,几乎没有分叉也会分叉出区块链。

区块链的分叉 即使当你已经对源代码进行了分叉,你也不需要将区块链分叉。你可以从它自己的创世块(Genesis block)中启动新的和改进的加密货币,从本质上来说这是一枚新的硬币。

其他比特币的源代码也已经完成了这一工作,包括Litecoin、Vertcoin、Dogecoin等等。因此,这些“altcoins”也会把比特币的区块链进行分叉。某种情况来说,分叉区块链是有些不同的。区块链中的一个分叉是由于在特定的块高度上引入了一组新的一致性的规则。

比特币黄金的一个例子 比特币黄金想要改变比特币的一种一致性的规则,即工作量证明算法。新一致性规则规定,工作量证明算法应该不再会是SHA256,而是被修改为Equihash。其余的规则保持不变。

现在,当矿工们使用这些新的一致性规则开始开采矿时,他们将会广播他们“解决”的区块(当他们计算出了使blockhash与目标匹配的随机数时)到一个比特币的核心节点时。该节点会拒绝该块,因为区块头的SHA256散列很可能与预期的目标不匹配。但是,比特币黄金节点将接受这个块,因为这个“Equihash散列”与目标是匹配的。

当两个客户端都在运行时,它们就会开始拒绝对方的块,这时就形成了一个分叉。根据它的Equihash基于一致性的规则,比特币黄金客户端只会接受有效的区块,而比特币的核心客户端只会接受在它们的SHA256中基于一致性规则的有效的区块。

自由币(free coins) 因为直到分叉的那一刻,这两个区块链都遵循着相同的一致性规则,硬币在分叉前的所有权也是一样的。因此,如果你在比特币黄金分叉发生之前拥有比特币,你也会拥有比特币黄金的所有权。如果你在分叉发生后使用比特币,你比特币黄金就花不出去了(因为你的交易被比特币黄金的客户端拒绝了)。

这也是为什么人们似乎对比特币黄金(以及其他)的分叉感到满意。

比特币黄金中存在的危险信号

在我的分析中,我发现了几个对比特币黄金的警告,这应该会让你产生产生警惕:

1.比特币黄金的分叉不是公开的:Github上的评论称,开发者们已经(或将会)把链从他们称之为“快照(snapshot)”的特定块高度上分叉。他们会在以后的日子里把这条链释放给公众,而不是现在。这种“停机”将使他们有能力在私下进行挖掘,这是一个巨大的危险信号。

2.预挖掘:在把链向公众发布之前,开发者们已经决定私下挖掘16000个块的比特币,并给自己20万比特币黄金作为区块奖励。这不仅是完全没有必要的,而且完全是为了丰富他们的个人财产而设计的。目前还不清楚,这些创造者是否会将比特币链的交易纳入这些预先挖掘的区块。

3.重放保护(replay protection)还没有被创建:在硬分叉的情况下,重放保护可以防止你在分叉的任意一边丢失硬币。本质上,重放保护应该确保其中一边的一个签署交易在另一边是无效的。否则,有人可以从比特币黄金链中获取你的(已经签署的、有效的)交易,然后再将它发布到一个比特币核心节点中(因为交易本身没有工作量证明它们是同样格式化的)。如果这样做了,你的“正常的”比特币就会被发送到与你在比特币黄金链上传输的地址中相同的地址。在重放保护到位之前,永远不要使用它,否则你有可能丢失硬币。

4.没有testnet:正常的区块链开发首先会发布一个testnet,这样一来,怪异项就可以被解决,而且在正式发布之前,软件已经被证明是稳定的。似乎比特币黄金团队急于把他们的软件展示出来,而且在一个质量次优的testnet上缺乏运行。

结论

尽管我认为比特币背后的想法并不坏,减少集中开采的想法是非常不错的。此外,我担心比特币黄金的执行会很糟糕,而且会过度地把人们的钱投入到风险中去。

除此之外,已经有一种加密货币Vertcoin,它承诺了与矿商分权同样的目标。而且自2014年以来,这种货币一直在运作。

原文发布于微信公众号 - ATYUN订阅号(atyun_com)

原文发表时间:2017-10-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PPV课数据科学社区

干货|区块链入门教程:一文让你看懂区块链!

区块链(blockchain)是眼下的大热门,新闻媒体大量报道,宣称它将创造未来。可是,简单易懂的入门文章却很少。区块链到底是什么,有何特别之处,很少有解释。...

2863
来自专栏陈树义

极简入门:什么是智能合约?

「智能合约」一词是由Nick Szabo在1997年首次提出的,比比特币的出现要早很多。他是位计算机科学家、法学学者,还是个密码译解专家,所以我还是替他跟你「讲...

741
来自专栏申龙斌的程序人生

交易被堵?试试这几种办法

12月初的时候,比特币价格爆涨,我并没有打算卖出,而且把币转到冷钱包,准备领BTG糖果给自己发个年终奖。行情太好也很烦人,比特币的交易费也是高得让人无法接受,转...

3728
来自专栏企鹅号快讯

目前对区块链最通俗易懂的解释…

这应该是目前对区块链最通俗易懂的解释了... ? 区块链如何运作的? 下面这篇文翻译自”How Does the Blockchain Work?”全文。作者M...

2275
来自专栏liuchengxu

用表情符号解释比特币 - Part 1

比特币是一个存储和消费数字货币的革命性方式,并且有着变革其他领域的潜力。无须成为一个数学家或密码学家, 你就可以理解它是怎么回事。当开始看到整个系统是如何形成时...

812
来自专栏liuchengxu

终极指南:为什么以太坊不仅仅一个是加密货币

尽管比特币(Bitcoin)和以太坊(Ethereum)是经常被一起提及的两个词,但实际上,比特币与以太坊有着很大的区别。它们唯一的共同点是,以太坊也是一个在区...

1152
来自专栏互联网杂技

区块链入门教程

区块链(blockchain)是眼下的大热门,新闻媒体大量报道,宣称它将创造未来。 可是,简单易懂的入门文章却很少。区块链到底是什么,有何特别之处,很少有解释...

3326
来自专栏专注于主流技术和业务

RPCA共识算法

目前,针对决拜占庭将军问题,已经有几种可行的解决方案,比如比特币与以太坊采用的POW算法,HyperLedger采用的PBFT算法。然而,在这种分布式支付系统中...

2481
来自专栏java达人

通过比特币了解以太坊(1)

作者:Mike Goldin 图标:Eva Shon 译者:java达人 来源:https://media.consensys.net/time-sure-do...

2394
来自专栏企鹅号快讯

糖果没吃到,结果把比特币给弄丢了

本文来自「 路可比特 」作者:苏耀勇 本文由币乎(bihu.com)内容支持计划奖励 “币圈骗局”已是见多不怪的事情。常言道,哪里有诱惑,哪里就隐藏陷阱。近期路...

2469

扫码关注云+社区

领取腾讯云代金券