码迷,mamicode.com
首页 > 其他好文 > 详细

区块链技术--比特币

时间:2018-03-07 11:34:33      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:实现   广播   特点   产生   自己   追溯   区块链技术   区块链   分布式   

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

 

区块链技术--比特币

标签:实现   广播   特点   产生   自己   追溯   区块链技术   区块链   分布式   

原文地址:https://www.cnblogs.com/xubiao/p/8521017.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!