比特币系统主要做3件事:1广播区块;2验证区块;3完成新区块的pow计算,前面两个花费的时间一般低于1分钟。
比特币的运行方式是:每一次交易时,单一的节点都会记录这些交易信息,再传播到下一个节点上,即点对点传播机制;每次挖出一个新块,该区块会被广播到整个比特币网络。
矿工将区块发送到给另外 8 到 10 个节点,这些节点也将它发送给其他节点,如此进行下去,直到它传遍整个网络(或者说 95% 的网络,因为一些节点可能不在线,或者上线需要时间),它的使用是无需信任的。另外每一个点都是一样大,没有中心节点,同时这些点在每一次传播交易信息时具有不可篡改性,也就是说没有人可以更改交易的数据,所以就形成了“去中心化”的模式。

传播时间会随着区块的大小而变化。
假设在理想状态下,节点间的传播以等比数列的形式进行,公比为5,一个新块出来后经过1个时间点被传播到5个节点,经过2个时间点被传播到25节点,以此类推,传播完1000个节点需要5个时间点。实际情况需要的时间会多一些,因为节点间的传播不是同步的,有的先,有的后。
比特币的交易是每10分钟产生1MB的区块并完成全网覆盖,而交易的平均大小约等于 540 字节(比理想的225字节超过一倍不止),所以,它每10分钟处理接近1950笔交易,也就是每秒钟3.25笔交易(TPS)。如果将交易容量提高 8倍,可将区块大小提高8倍(分叉后的比特现金区块大小8M)或者将出块时间减少为 1/10。
将区块大小提高8倍,需要传播的时间点还是5个。然而,每一个时间点都要求通过 60Mbps 的网络(现在比特币网络的平均网速)发送 8MB而不是 1MB的区块,所以要求的时间也会上升 8倍,从 0.13秒变成1.04秒,也就是每个时间点会延长到8倍。整个传输时间将变成原来的8倍。
区块传播时间给分叉发生创造了条件,同时时间越长,黑客可干的事越多。
当你挖出了一个新区块,却不知道一个新区块已经被挖出的事实,你将挖出的区块进行广播,这样就容易导致分叉。区块传播时间提高了8倍,分叉发生的概率也就提高了大约8倍。目前BCH8M的区块容量的大小,分叉的概率虽然变大了,但还在可控范围内。一旦区块变得更大,上百M或者更多,区块的传播时间会变得太长,分叉就可能会变成常态而让整个链失效。如果不分叉,那么就只能由大节点负责区块的产生和传播,这样就形成了中心化。
不过也不用太担心,网速和验证速度一直都在提升,同时个人计算机使用的存储空间也一直在变大,大区块带来的副作用也会随着整个网络的快速提升而减小。
比特币的扩容之争非常精彩,有兴趣的可以去看看相关方面的历史。

目前人们在使用比特币进行转帐时,网络拥堵时有时候需要一两天才能到帐,体验并不好,但比特币依然在发展壮大,那是因为它承担了很多转帐以外的东西。
正如go哥之前写到的,比特币承担的是“币”的功能,是数字货币的一般等价物,它是所有数字货币的信心和支撑所在。人们买比特币主要是为了囤币待涨以及想要多一个储值保值的手段,在这些需求下,交易反而显得不那么重要了。人们并不会在大街上买咖啡时使用比特币支付,这种需求可以交给别的数字货币来完成,比如更快的EOS等,而EOS作为“币”的价值只需要锚定比特币就可以了。
正如黄金,人们并不会频繁地交易黄金,很多人一辈子都没有买卖过黄金。但黄金的存在,给了人们信心,尤其是在战乱时期,黄金作为硬通货,储备足,人们的信心也足,这种信心会直接反应到市场上。比特币作为数字黄金,也有着类似的作用。
网友评论