区块链技术--比特币

比特币(BTC):是一种数字货币,去中心化(P2P网络),加密解密技术,区块链分布式记账(公开、透明、可追溯特点)等技术实现

比特币怎么产生的呢?挖矿产生的。

挖矿公式:HASH(已知数(上一个区块的hash值)+ 未知数(随机产生))  > 比特币规定难度系数

挖矿流程:当矿工在经过多次算力后满足上面公式之后,就认为他挖矿成功了,他会基于在上一个区块后新生成一个区块,然后打包广播给其他节点,让其他节点从自己这个新生产的区块重新开始挖矿。

那么其他节点怎么判断这个广播区块是不是这个链上的呢?他们可以拿到新生产区块的未知数和上一个区块的hash值带入上面的公式可以进行验证。

怎么保证矿工新生成的区块是安全的呢?每个区块都是用公钥加密的,只有矿工的密钥才能解密。

 

理论上只要一个的算力足够强大就可以更改区块链路,因为每个矿工用自己的算力投票的结果,理性的矿工会投票给最可能成为最长链的区块。

举例说明:

0-->1-->2-->3-->4

比如上面这个区块链发展到第4个区块的时候,这时候同时有两个矿工(A,B)挖到比特币了,然后进行新生产区块并打包发布,A发给他的邻近节点的矿工,B发给他邻近的节点的矿工,他们邻近节点都认为当前的这个链路是最长链的区块,后面他们就按照自认为最长的链进行挖矿,就导致了下面这种硬分块的情况:

0-->1-->2-->3-->4-->5(A)-->6-->7-->8

0-->1-->2-->3-->4-->5(B)-->6

经过一段时间后,B这条链都不被其他矿工认可了,因为他们发现还有更长的链,都放弃B这条链了,选择从A这个链上开始挖矿。

但是只要A的算力强大,他一直坚持自己的这条链,总有一个时刻自己会成为最长的链。所有只要所有的矿工一起从某个链开始挖矿,是可以很轻松摧毁比特币的。

 

posted @ 2018-03-07 10:44  麻雀虽小五脏俱全  阅读(393)  评论(0编辑  收藏  举报