区块链实现分析,区块链实现原理及身份认证详解
与比特币连接的区块链
区块链是一种特殊的数据存储结构或协议,可以解决安全性、稳定性等问题;而比特币是一种使用区块链技术实现的数字货币系统,比特币是目前唯一成熟的区块链应用,比特币是目前唯一一种成熟的区块链应用,两者容易混淆的原因之一。2017年比特币迎来了爆发式增长,比特币的价格曾一度突破20000美元大关。在相关行业,越来越多的人开始关注区块链,并尝试扩展其应用领域。但是,目前区块链应用场景仅限于金融货币领域。
区块结构
区块的结构并不复杂,它包含了一些字段,整体来看结构类似于双向链表中的节点。
非集中式与对点网络
“去中心化”是区块链的核心思想,也是与其它分布式产品的最大区别,去中心化保证了公平和安全。点对点网络就是一种去中心化框架下的因特网,只要有一台计算机就可以加入点对点网络成为一个节点,每个节点可以拥有整个区块链的信息(目前达到了数百GB),而且还在不断地更新和同步。每个数据块的写入将被广播到整个网络。点对点网络中各点具有相同的权利义务,对等关系,CPU作为算力单位每一点都可以参与投票、计算、打包数据,并有权同步块信息。
资料不可修改性
根据区块的基本结构得出结论:内容一旦写进就不可修改。通过Hash=SHA256(区域块)可以得到第一个区块,所以每个区块的Hash是唯一的。而且区域块中包含了MerkleRoot字段,体内的交易数据存储在默克尔树的叶子节点中,所以MerkleRoot可以视为这个块中所有交易数据的唯一签名。根据上述事实,无论是修改交易数据还是修改分块信息,都将导致的Hash字段更改,因为除了第一个最后一个块以外的所有节点都有PreviousBlock、NextBlock(s)字段,这将导致连锁反应。对数据进行修改的代价是修改区块链中所有区块的Hash、PreviousBlock、NextBlock(s)字段。若没有超过整个网络一半以上的计算能力,也无法做到。所以可以说,数据一旦写入区块链,就会永久写入不可修改。同时还保证了数据的安全性和可信度。
协商机制
协商一致机制是区块链的最大特征,共识意味着对区块数据的认同,或将其视为投票。只有一半以上的点对点网络认为区块数据真实可靠,才能达成共识。当前存在一些主要的共识机制。
目前有几个主要的共识机制:工作量证明、权益证明、授权股权证明、拜占庭共识算法。工作量证明是比特币采用的机制。比特币中的工作量证明是所谓的开采。
因为每一个节点都要同步最新的区块链数据,所以区块产生的速度不能太快,否则大多数节点来不及同步。为此,中本聪设计了难度系数调节机制,在区块结构中保持了Nonce和Difficulty两个字段,分别代表计算次数和难度系数,区块产生的设计速度是每10min产生一次,随着计算能力的提高,这一速度可能会加快,如果区块产生的速度大于设计速度,下一个区块的难度系数就会增加。这样就能保证区块的生成时间间隔围绕10min。因此,随着时间的推移,比特币挖矿变得越来越困难。
如果两个块同时加入块链,块链就会分叉。哪个分支的长度先达到6个,哪个成为主干,确认交易,另一个分支被抛弃(选择多数节点的共识)。因此,确认一次交易需要1小时左右。
双重话费
双重费用是指将同一资产花在两个不同的交易上。比如节点A有一个比特币,几乎同时提交两个交易:向节点B支付一个比特币,向节点C支付一个比特币。在交易记录之前,这两笔交易可能是合法的,不同的节点可能会记录。如果同时产生两个,那么就根据工作量证明的共识机制进行选择。区块链不通过第三方也能解决双花问题。
隐私权保护
因为在区块链中,所有的节点都是全网唯一的SHA256签名代表,这个签名不能反向发布信息,所以即使签名在全网播出,也不能获得某个节点的信息。基于此,所有交易中的节点都相当于匿名,很好地保护了用户的隐私。但是,这也是制作恐吓软件的黑客常用的恐吓支付方式。
总结
区块链技术是分散的,结构特征可以保证数据的安全性和节点之间的公平性,利用共识机制解决双花等问题,比特币的发展也表现出对区块链价值的认识。
截至目前,区块链的应用场景仍局限于金融货币领域。判断区块链能否应用于某个领域只需要三点:不需要管理中心,不需要数据的实时性,蓑衣网小编成本低于收入。目前,虽然区块链带来的变化不足以与人工智能相比,但区块链的想法值得研究和参考。
文章从网络整理,文章内容不代表本站观点,转账请注明【蓑衣网】