理科生的果壳首页投稿(暂停使用,暂停投稿)有意思的文章

区块链上的马太效应(计算稿)

2018-02-28  本文已影响515人  LostAbaddon

基础假设

让我们做几个假定:

预设1. 所有参与这场游戏的人都是理性自私者;

预设2. 网络结构是近平均的,不存在人为构造的特殊网络结构。

以此为基础,我们可以建立一个网络中各节点所掌握的币c、节点本身算力p、获得记账权的概率q与时间t和共识机制P之间关系的模型。


必然的马太效应

在传统的PoW算法中,每个节点i获得记账权的概率都与其算力成正比:

这里系数C_q是一个比例系数。

算力的获得,当然就是每个节点能投入多少资源来购买更强大的计算单元的问题了。

在一个最理想的环境中,所有挖矿设备的计算力都是相同的,那么每个节点的算力可以视为正比于拥有的挖矿设备的数量。而因为计算力相等,我们可以认为其价格也是相等的,从而设备数量正比于投入到设备购买中的钱的数量,而这个数量又正比于每个节点获得的币数,以及场外资金数量m,因此有:

这里C_c起到了币与钱的兑换汇率,这里暂且认为是固定值。

所以在这个理想环境下,情况就变成了:

在更实际一点的情况中,不同价格的设备提供的算力是不同的,而且性价比必须随着价格的升高而升高,否则理性自私人不可能去购买。

因此,我们引入一条心得假设:

假设3:挖矿设备的性价比随着价格的升高而升高。

因此实际一点的情况应该更接近于:

且其中n>1。因此获得记账权的概率满足如下方程:

在PoW共识机制下,获得记账权就以为着获得币,从而我们也能得到q和c之间的一个动力学方程:

带入3式就有:

假定m_i作为启动资金,从而是一个常数,那么解这个方程可得:

其中$C_{y,i} = \left( \frac{C_m m_i}{C_c (n-1)} \right)^{1-n}$,代表初始情况下只有投入的启动资金而没有币。

显然,这里存在一个极点$t_L=\frac{C_{y,i}}{C_t C_q C_c^n}$,到达这个极点的时候节点获得的币数为达到无穷。

当然,这是在单位时间产币量很定的情况下得到的结果,对于基于PoW的数字币来说,几乎都采用总币量有限从而单位时间产币量递减的方式,从而实际上的动力学方程为:

其中T是币产速半衰期。带入3式可得:

解为:

分析这个方程,尤其是比较两个不同初始条件(即t=0时m不同)的节点币量之比随时间的演化,我们可以发现这是一个单调函数,而且会强化这个比值的差异——如果初始条件下m_i比m_j大,那么随着时间的发展,m_j/m_i会越来越趋向于0,最终稳定在所有币都挖光时的比值。

也就是说,PoW机制下,节点拥有的币量是趋向于两极分化的。

再简单一点说,就是PoW数字货币网具有马太效应。

我们当然可以对共识机制做出一定的调整。事实上,只要动力学方程具有类似4的形式:

那么我们我们可以考虑$r_{i,j} = \frac{c_i}{c_j}$的演化:

由于我们假设所有节点都是理性自私人,而且系统存在假设3,所以我们有:

即:

所以,无论POW机制的具体形式是什么:

而这就是马太效应的数学表达。

因此,我们有结论:

结论1:无论POW的具体形式是什么,只要每个节点在POW机制下的作用形式是相同的,那么就必然会发生马太效应。

当然,有马太效应也没什么,不是什么坏事。

当然,这里只是一个简化的模型。实际情况中,很多现在视为常量的,都可能会使变量,不同节点在不同时间都有可能不同。但作为一个总体趋势,却是不会变得。

比如说,参数C_c可能就是如此。但在理性自私人的逐利原则下,并不会改变总体趋势。

如果我们不用POW共识而是POS共识机制,那就要看具体的细节了。

如果说获得记账权的概率正比于节点币量,那么方程4就变为:

这个动力学中,不同节点之间的币量比将保持常值,从而POS比POW更有利于公平,减少马太效应。

对于POS的变种比如dPOS而言,并不会在较大程度上改变POS的结果,只要授权选举方案是足够公平的。这个就要看具体的实现方式了。


注定消失的参与感

在马太效应下,小算力节点,也即穷节点,将越来越少能参与到对全网事物的决策上。

包括比特币在内的区块链项目,节点都可以分为纯使用的节点、查询用的节点和真正记账的节点。对比特币来说,前者就只有一个钱包,并不积极参与到挖矿中,甚至于完全不参与挖矿;查询节点是SPV节点,保存了Markle树但并没有保存所有UTXO账簿,可以查询验证但没有完整的区块数据。

我们可以考虑这么一个情况:当一个节点获得记账权的平均时长大于某个阈值X时,它就放弃挖矿从而成为单纯的钱包使用者,从而对全网事态完全放弃了参与权。

我们可以去全网总算力为P,从而一个拥有算力为p_i的节点在每个挖矿中期内获取到记账权的概率就是$\frac{p_i}{P}$,因此N个周期中获得记账权的概率就是$1-\left(1-\frac{p_i}{P}\right)^N$。我们取能获取到记账权的概率阈值为Q,从而有:

因此预期获得记账权的时长为:

其中T_x是记账周期。

因此可以计算出从参与事物到不参与事物的临界算力要求:

由于马太效应,我们可以知道,币量最大节点获得记账权概率是单调增函数,而币量较大节点的获得记账权概率是先升后降,少币量节点则是单调减。

因此,随着时间的推移,会有越来越多的节点推出全网事务的参与,从而,越来越多的节点将变成单纯的钱包用户,而只有越来越少的精英会成为网络的决策者。

因此:

结论2:全网节点参与感的丧失是注定的,除了越来越少的精英阶层能继续参与游戏。

而,参与网络事务节点越多,网络的去中心化特点就越显著。因此,区块链网络的整体趋势是中心化的。


出路

要打破上述越来越中心化的趋势也不是没可能。

除了共识机制需要修改以抑制算力垄断、币量垄断之外,增加挖矿之外的获得币的途径,或者将币与网络事务决策分离,都是不错的方式。

抑制垄断没有必要,而且会极大扼杀高算力节点的参与积极性,而高算力节点的参与在很大程度上是全网正常运行的重要保障。

增加挖矿之外的获得币的途径,且这种途径不依赖于算力和币量,这需要有效的设计,就目前来看并没有特别好的设计——要么和算力挂钩,要么和币量挂钩。

而将币与网络事务脱离,在一定程度上也抑制了节点对网络事务的参与热情,虽然已经有不少区块链项目在这么做了。

归根结底,问题在于目前的链过于依赖币来保持自身活性,而没有一个脱离币也能保持活性的有效方案。而币作为一种财富,在理性自私人这一几乎普适的假定下,就必然导致马太效应与垄断。

所以,链的出路有,但却非常坎坷,那就是设法从机制上斩断和币的耦合并能依然保持自身活性。

如果智能合约能有更多更落地更实用的应用的话,链大概才能真正健康地发展起来吧。


尾声

上述所有计算都基于简化模型,简化模型之外当然有更加体现人的主观能动性的玩法,所以未来的发展未必就如模型所示。

但人只要还是理性自私的人,那总体趋势大概总是无法避免这一套路的吧。


本文遵守创作共享CC BY-NC-SA 4.0协议

通过本协议,您可以分享并修改本文内容,只要你遵守以下授权条款规定:姓名标示非商业性相同方式分享
具体内容请查阅上述协议声明。

本文禁止一切纸媒,即印刷于纸张之上的一切组织,包括但不限于转载、摘编的任何应用和衍生。网络平台如需转载必须与本人联系确认。

上一篇 下一篇

猜你喜欢

热点阅读