扣丁学堂浅谈区块链开发工作原理及类型特点详解
今天扣丁学堂区块链培训老师给大家详细介绍一下关于区块链工作原理以及区块链类型特点详解,区块链的本质是一个互相验证的公开记账系统,就是记录所有账户发生的所有交易,由于所有数据公开透明,任何人都可以去查看它的源代码,每个账号的每笔数额变化都会被记录在全网总账本中。而且每个人手上都有一份完整的账本,每个人都可以独立统计出有史以来比特币系统每个账号的所有账目,也能算出任意账号当前余额是多少。
区块链工作原理
比如:简单描述区块链的工作原理,A想要发送钱给B,这笔交易在网络上以一个区块作为代表,该区块广播给网络里所有的参与者,参与者同意交易有效,改区块被添加到链上,这条链提供永久和透明的交易记录,资金从A转移到B。全网一本帐,每个人都可以查找。
这个分布式的数据库里,记账不是由个人或者某个中心化的主体来控制的,而是由所有节点共同维护、共同记账的。所有的单一节点都无法篡改,想篡改一个记录,需要同时控制整个网络超过51%的节点或计算能力才可以,而区块链中的节点无限多且无时无刻都在增加新的节点,这基本上是不可能完成的事情。
区块链的6层模型
区块链的基础模型分为6层:数据层、网络层、共识层、激励层、合约层、应用层。每层分别完成一个核心功能,相互配合,实现一个去中心化的信任机制。
数据层:数据区块、链式结构、时间戳、哈希函数、Merkle树、非对称加密;网络层:P2P(点对点)网络、传播机制、验证机制;共识层:pow(工作量证明)、pos(权益证明)、dpos(股份授权证明);激励层:发行机制、分配机制;合约层:脚本代码、算法机制、智能合约;应用层:可编程货币、可编程金融、可编程社会;
大多属于技术范畴,不在过多的赘述。
区块链的发展脉络
区块链1.0:以比特币为代表的可编程货币,它更多是指数字货币领域的创新,如货币转移、兑付和支付系统;区块链2.0:基于区块链的可编程金融。它更多涉及一些合约方面的创新,特别是商业合同以及交易方面的创新,比如股票、证券、贷款、清算结算、所谓的智能合约等。区块链3.0:区块链在其他行业的应用。它更多地对应人类组织形态的变革,包括健康、科学、文化和基于区块链的司法、投票等。
区块链的基本类型:
公有链
公有链是指全世界任何人都可读取、发送交易且交易能获得有效确认的、也可以参与其中共识过程的区块链。
公有链有这么几个特点:
保护用户免受开发者的影响,在公有链中程序开发者无权干涉用户,区块链可以保护其用户;访问门槛低,任何人都可以访问,只要有一台能够联网的计算机就能够满足基本的访问条件;所有数据默认公开,公有链中的每个参与者可以看到整个分布式账本的所有交易记录。
私有链
私有链是指其写入权限仅在一个组织手里的区块链,目的是对读取权限或者对外开放权限进行限制。
私有链有这么几个特点:
交易速度非常之快一个私有链的交易速度可以比任何其他的区块链都快,甚至接近了并不是一个区块链的常规数据库的速度。这是因为就算少量的节点也都具有很高的信任度,并不需要每个节点来验证一个交易。给隐私更好的保障私有链使得在那个区块链上的数据隐私政策像在另一个数据库中似的完全一致;不用处理访问权限和使用所有的老办法,但至少说,这个数据不会公开地被拥有网络连接的任何人获得。交易成本大幅降低甚至为零私有链上可以进行完全免费或者至少说是非常廉价的交易。如果一个实体机构控制和处理所有的交易,那么他们就不再需要为工作而收取费用。有助于保护基本的产品不被破坏,银行和传统的金融机构使用私有链可以保证它们的既有利益,以至原有的生态系统不被破坏。
联盟链
联盟链是指其共识过程受到预选节点控制的区块链。只针对某个特定群体的成员和有限的第三方,其内部指定多个预选节点为记账人,每个块的生成由所有的预选节点共同决定。
联盟链的几个特点:
是交易成本更便宜。交易只需被几个受信的高算力节点验证就可以了,而无需全网确认。是节点可以很好地连接,故障可以迅速通过人工干预来修复,并允许使用共识算法减少区块时间,从而更快完成交易。是如果读取权限受到限制,可以提供更好的隐私保护。四是更灵活,如果需要的话,运行私有区块链的共同体或公司可以很容易地修改该区块链的规则,还原交易,修改余额等。
区块链的共识机制
区块链的共识机制的目的是解决信任的问题,解决两个完全陌生人之间的信任问题。通过特殊节点的投票,在很短的时间内完成对交易的验证和确认。
区块链上的共识机制有很多种,不是每一种都适合所有具体应用场景的,共识需要在具体的应用场景下去讨论。这里我们来讨论下最常见的三种共识机制:
1、工作量证明
简称Pow,通常只能从结果证明,因为监测工作过程通常是繁琐且低效的。比特币在区块生成过程中就使用了pow机制。
Pow依赖机器进行数学运算来获取记账权,资源消耗大、共识机制高、可监管性弱,同时每次达成共识需要全网共同参与运算,性能效率比较低,容错性方面允许全网50%节点出错。
Pow的优点:完全去中心化,节点自由进出Pow的缺点:目前比特币已经吸引全球大部分的算力,其他再使用Pow共识机制的区块链应用很难获得相同的算力来保障自身的安全,挖矿造成大量的资源浪费,共识达成的周期较长。
2、权益证明
简称POS,权益证明机制的运作方式是,当创造一个新区块时,矿工需要创建一个“币权”交易,交易会按照预先设定的比例把一些币发送给矿工本身。
权益证明机制根据每个节点拥有代币的比例和时间,依据算法等比例地降低节点的挖矿难度,从而加快了寻找随机数的速度。这种共识机制可以缩短达成共识所需的时间,但本质上仍然需要网络中的节点进行挖矿运算。因此,PoS机制并没有从根本上解决PoW机制难以应用于商业领域的问题。
POS的优点:在一定程度上缩短了共识达成的时间,不在需要大量消耗能源去挖矿。POS的缺点:还是需要挖矿,本质上没有解决商业应用的痛点;所有的确认都只是一个概率上的表述,而不是一个确定性的事情,理论上有可能存在其他攻击影响。
3、股份授权证明
简称DPOS,类似于董事会投票,持币者投出一定数量的节点,进行代理验证和记账。
DPOS的工作原理,每个股东按其持股比例拥有相应的影响力,51%股东投票的结果将是不可逆且有约束力的,其挑战是通过及时而高效的方法达到“51%批准”。为了达到这个目标,每个股东可以将其投票权授予一名代表。获票数最多的前100位代表按既定时间表轮流产生区块。每位代表分配一个时间段来生产区块。
DPOS的投票模式可以每30秒产生一个新区块,并且在正常的网络条件下,区块链分叉的可能性极其小,即使发生也可以在几分钟内得到解决。
互联网解决了传统商业很多不能解决的问题,区块链能够解决很多互联网不能解决的问题,尤其是信息泛滥,信任缺失的问题,这些都是商业的基础。