比如,把比特币软件当成一个游戏:所有人进入比特币游戏,刚开始都是0个比特币,我的电脑配置比较好,一会的功夫挖到了1个比特币,然后游戏会自动把这个消息告诉给其他在线的用户,“用户:dadiaoge,在xxx地方挖到了1个比特币”,其他人在收到这条消息之后,比特币软件会自动记录下,刚刚有个小子挖矿挖到了1个比特币,这时,哪怕我自己再修改成0个比特币,也是没有用的了,因为所有人的电脑上都清楚的记录着,我刚刚已经挖矿获得了1个比特币,无法耍赖。
什么是比特币交易
明白比特币产出的原理(挖矿),也明白去中心化、公开账本,那就再看,什么是比特币交易?比特币交易,就和游戏的道理差不多,你在游戏里转了100个游戏币给我,其实是这个交易数据被记录到服务器的数据库里了,那比特币系统去中心化,没有服务器,再回想一下公开账本是如何记录挖矿得到的比特币?“用户:dadiaoge,转了1个比特币给用户:bat”这样的消息会发送给各个在线的比特币用户软件里相互记录,而且,这种交易是没有办法耍赖的,如果游戏公司想耍赖,就修改数据库就可以了,而比特币想耍赖,你能修改世界上所有人的电脑吗?
比特币交易的验证
再试想,比如你明明只有1个比特币,却想转2个比特币给我,可行吗?可以这样操作,但是不会成功,什么意思?你转账2个比特币给我,当比特币软件群发这条消息的时候,其他人的电脑上比特币软件一查之前的记录,不对啊,这个人明明只挖矿得到了1个比特币,余额不足,不记录这条消息,于是你这条消息没有人记录下来,那就是一个无效的转账记录,也就是不会成功了。
什么是区块链
明白了比特币原理和交易验证,有些脑瓜子聪明的就开始动歪脑筋了,这些不都是依靠比特币软件来记录的吗,我把这个比特币软件给破解了,不就可以随心所欲的修改比特币数量了吗?比如,当我通过比特币软件挖矿得到1个比特币的时候,比特币软件会群发这样的消息“用户:dadiaoge,挖矿得到了1个比特币”,那我把这个软件破解了,把消息修改成“用户:dadiaoge,挖矿得到了100个比特币”,然后群发给其他使用比特币的人,这样我不就是拥有100个比特币了吗?没错,思路是对的,但是区块链技术登场了。
区块链技术,就是数据的加密和验证技术
简单的打个比方:比特币软件会自动把像“用户:dadiaoge,挖矿得到了1个比特币”这样的消息数据,加密成“dslkafjklsjadf”这样无意义的数据,并且这个消息只要被修改,哪怕加了1个字,都会被比特币软件识别出来,当做无效的信息处理。这就是区块链技术,保障了比特币信息数据的安全,可以说,没有区块链技术,比特币一文不值,也没有任何意义。