Blockchain Demo - A visual demo of blockchain technology
由于区块的哈希值由区块的数据、父区块哈希值、区块索引、时间戳、Nonce一起生成的,其中任何一个数据的改变都会导致哈希值改变,而哈希值改变会导致区块的无效,即哈希值不以000开头
因为后面的区块用到了前面的区块,所以一个无效区块会导致连接再后面的区块无效,如果要修复这些区块,就要每个后去区块重新计算修复。
创建新链
区块链中的结点始终都将最长的链条作为正确的链,并持续延长和维护这条链。当结点发现有更长的链条并且本身的链条不是最新时,就会使用最长的链条替换当前结点的链条。
若一个节点判断出本身的区块是最新的,再收到新的区块信息时,节点就会把新的区块添加到自身链条的最后。
当一个区块链的节点掌握了整个区块链中51%以上的计算能力时,它就可以重写整个区块链。
区块链由分布式账本、共识机制、智能合约、去中心化网络等技术构成。
共识机制:网络中各个结点根据共识机制达成共识,共同维护整个区块链网络。如果把一个区块链网络比作一个公司,那么共识机制就好比这个公司的(KPI),根据KPI进行奖惩。智能合约:智能合约不是区块链的必要组成,它是区块链2.0之后出现的技术。还是把区块链比作一个公司,智能合约相当于公司中的规章制度,员工工作的时候会依据规章制度行事,而在有智能合约的区块链中,链上的结点会依据智能合约进行工作。去中心化网络:中心化网络不同于中心式网络。在中心式网络中,需要中心服务器,好比一般公司都有CEO的角色,公司的发展和运作都要根据CEO这个中心制定的策略进行,结点之间可以相互连接。 区块链的架构 数据层: 主要时对区块数据的存储、hash值和Merkle树的计算一级链式结构的生成。以太坊和比特币存储功能选择的是LevelDB数据库数据层的功能是把交易数据存储到区块中并将区块加入到区块链中 比如,张三转账给李四0.2比特币,王五转账给赵六0.5比特币,孙七转账给周八0.1比特币。这些转账信息被广播到区块链的去中心化网络中后由结点A最先确认,然后结点A通过共识算法(或者说“挖矿”)生成一个新的区块,新的区块被加到区块链上生成一个更长的区块链。 网络层: 主要包括P2P网络和共识算法两个组成部分 P2P网络根据中心化程度的不同可以将其分为纯P2P网络、杂P2P网络和混合P2P网络 合约层: 使得区块链中的区块具有可编程的特性合约层赋予了区块链智能的特性,在区块链中智能合约的作用如同一个智能助理,对区块链中的数据和事件按照预先设定的逻辑进行处理,比如可以通过专门编写的智能合约执行查询余额和存钱的 *** 作。 应用层: 指基于区块链技术并结合具体业务场景开发的应用,包括加密数字货币钱包、交易所、去中心化应用等 区块链分类 公有链 对外公开、任何人都可以参与的区块链。 联盟链 仅限于联盟成员使用,因其只针对成员开放全部或部分功能,所以联盟链上的读写权限、以及记账规则都按联盟规则来控制。联盟链适用于机构间的交易、结算、清算等B2B场景。超级账本项目即属于联盟链。 私有链 单独的个人或实体开放,仅供在私有组织,比如公司内部使用,私有链上的读写权限,参与记账的权限都由私有组织来决定。 另外的两个类型: 侧链: 侧链实质上是指遵守侧链协议的所有区块链。侧链协议是一种可以让比特币安全地从比特币主链转移到其他区块链,又可以从其他区块链安全地返回比特币主链的协议。本质上是一种跨区块链解决方案。 闪电网络: 等待6个区块的可信确认将导致约1个小时的最终确认时间将大量交易放到比特币区块链之外进行,只把关键环节放到链上进行确认闪电网络的工作原理是用比特币拥有权的承诺来替代拥有权。 区块链的特点欢迎分享,转载请注明来源:内存溢出
评论列表(0条)