白话区块链(四)

为了保证每天都有人可能算出新的答案，列车长估算着 参加获取题目的人，逐步提高的题目难度.

规则之上

隔壁村庄听说有一辆神奇的火车，把货箱放到火车上就会有小费，都想去尝试一下

村长看着规矩以后，没有跟其他人一样拿题去做，而是对着规矩研究起来:
“算出这个包含一定范围的答案，然后就能拿这个答案去将货箱装到火车上，但其实只有这个算出的人才有小费，而其他人都是陪跑而已.”
“如果我能控制超过 50% 的人一起计算，就可以让火车按照我的想法进行生成，也就是说我就能控制这辆火车，甚至对火车上的货物进行调换、凭空产生物品...”
隔壁村长想的心潮澎湃，抓紧回村号召所有村民一起计算，跟村民中说完利弊以后，全村一致决定要共同富裕.
隔壁村村长在火车附近拉起了横幅：一起算题一起富，包入村，包婚配.

村长也很快发现这个问题，于是也效仿起来，集全村所有人一起计算，把一些其他村子过来算题的人，忽悠到自己村中一起计算。并想方设法的阻止对方人数超过 50%.

POW 中采用 “最长链共识” 机制，也就是说如果控制全网 51% 的算力就拥有了获得记账权的绝对优势，可以更快地生成区块，也拥有了篡改区块链数据的权利。

这时也会出现双花攻击

最长连共识简单理解就是 如果同一时间窗口有多个人获取打包权，那么谁先在自己的节点后面链长达到 6, 谁被主链承认.

现实中超过全网算力 45% 时，就有可能进行攻击，全网通过 更换矿池等方式进行抵制.(因为 BTC 说白了还是需要有一个信任基础，如果 BTC 被任何人控制后，它的公信力就消失了，价值消失，全网都没得玩，所以这种情况很少出现，基本都是多方制衡)

双花攻击

这个可以理解成 你先从公链拿 1 个 BTC 买了一台电脑，然后你偷偷打包出一条长链：表示这个 BTC 是拿来买手机了，并将这个链广播上公链，就可以达到 1 个 BTC 花了两次.

双花、 51% 其实都非常难实现，基本没有在现实出现过. Chashio 矿池当年接近 50% 的全网算力后，被集体抵制发文公告说进行控制.