民主货币的技术核心:blockchain机制 blockchain机制是民主货币的技术核心。小白可以不懂编程序,可以不懂密码学,但是必须要彻底理解blockchain机制,否则在民主货币的世界里处处碰钉子,处处进陷阱。 民主货币是非中心的。 非中心,任何人都可以向网络发送交易信息。 由于非对称加密机制,想盗用别人的币是不可能的。(有兴趣可以学习一下非对称加密机制,不学也没关系,只要记住这个结论就行了) 唯一占便宜的机会,是重复发送。就是一房两卖,一女二嫁。 如何解决呢? 靠确认人数解决?作假的人可以一个电脑开一亿个客户端。 唯一有效的答案:靠计算机的运算力解决。 运算力和钱基本是挂等号的。越快的计算机越贵。 想造假,就必须拥有巨大的运算力,等同于先有一笔巨大的投资。那么,一旦有巨大的投资了,也就不必造假了。 那么,用什么方法能够简单、及时地判断运算力呢? 这是一个超级难题。 中本聪开创性的解决了这个难题。 方法就是blockchain机制。 他开创性地利用了非对称加密算法。之前从来没有人这么用过。 因为非对称加密算法是不可逆向求解的。所以要得到符合规则的某一个值,只有一种方法——穷举法(俗称暴力破解) 什么是穷举法?(注意,民科的知识盲点就在这里) 例如,你的箱子密码锁的密码忘了,怎么办? 一般密码锁只有3位,也就是有10x10x10=1000种组合。那么从000试到999,试1000遍,肯定能试出密码了。这个用时大概10分钟。 如果密码是6位呢?那就有100万种组合。要试100万次。 如果密码是12位呢?我告诉你,你这辈子也试不出来了。 回到比特币。 现在是电子密码。所以允许多个人试。如果是6位,即100万种组合,如果100个人试,每人1万次,大概一个小时就试出来了。如果100万个人试,立刻试出来。 好了,中本聪出了一个超级损招:让大家不停地穷举解密码。程序在旁边计时。从1位开始解。谁解出来了有奖——50个比特币。然后重新开始下一轮破解。因为比特币的上涨,参与破解的人越来越多。如果解的时间小于10分钟,程序就增加难度,变成2位、3位、4位……反正保证破解一次用时10分钟。 谁中奖了,谁就有话语权:确认哪些交易是真的 由于这个纯属撞大运,所以基本不可能有人连续2次更不可能连续3次中奖。这样,就不可能有人连续3次进行确认。 所以,如果一个交易被连续确认了3次,就可以认为是3个不同的人确认的,而不是一个人的3个帐户确认的,或者3个窜通好的人确认的。 这样,如果是虚假交易,3个人里面肯定有一个反对,就会被取消。 基于这样一个机制,所有人也就失去了作假的动机了。大家还是老老实实交易吧。 问题解决了。 blockchain机制,把比特币的安全交给了计算机运算力。 但是,没有完美的世界。 如果谁手里的运算力大于整个网络,那么他就能够拿到连续3次确认的机会。假如他的运算力和其他人的总和相同,那么他每次有一半的机会中奖,连续中三次的机会大约是=1/2x1/2x1/2=1/8。也就是说,他如果连续试8次破解,就会有一次连中三元。8次破解,无非是1个半小时而已。 一旦他可以连续3次发话,他就可以进行虚假交易了。这被称为“51%攻击”。 其实算力不一定达到51%,如果算力是10%,那么尝试1000次会有一次连中三元的机会,那大概是7天时间,也不算长。 当然,他虚假交易赚到的钱,肯定抵不上他的开销。 而且,虚假交易只导致币的总数发生少量的增加,而不是整个币的崩溃。换个角度看,就是矿工对自己的劳动报酬进行的超发。政府货币这么超发都没崩溃,民主货币偶尔超发一点也没什么大不了的。 所以,中本聪认为,有如此算力的人,与其进行虚假交易,还不如老实挖矿,因为老实挖矿稳赚,但是做虚假交易会导致币值暴跌,得不偿失。这就是利益吸引法则。 但是,利益吸引法则对山寨币不适用。 假如某个山寨币价格大涨,导致大量资金被吸引走,比特币挖矿收入下降。那么比特币挖矿的人就会考虑想办法把这个山寨币干掉。 下一个话题:矿池 由于自己挖矿中奖几率太低,而且可能出现重复劳动:几个人同时去尝试同样的数字。所以就出现了联合挖矿。这和联合买彩票一个道理。 矿池实际上是一个服务器和程序,大家把算力交给它,它分配挖矿任务,然后中奖之后大家平均分配。 矿池是个好东西。矿工们全靠矿池来保证稳定的收益。 可是,矿池有一个负作用,就是庞大的算力掌握在了少数几台服务器手里。如果黑客成功入侵服务器,他就可以利用服务器汇聚的庞大算力进行51%攻击。这是一个巨大的风险。因为黑客成本极低,所以利益吸引法则对他不适用。 现在的通行方法,是哪个矿池算力接近50%,大家就转向算力小一些的矿池。以保证整个系统安全。
本文转自:http://bit-sky.com/index.php/2014-01-27-19-37-19/2014-02-3-15-31-33/166-blockchain |