区块链的概念

  •    区块链的概念:

首先区块链并没有明确统一的定义,综合看来,区块链是使用区块链技术形成的公共数据库。

而区块链技术就包括 现代密码学,分布式一致协议,点对点通信技术,和智能编程语言等形成的数据交换,存储,处理的技术组合。

区块链本身也在不断的发展和变化中。

 

  • 区块链的分类:

从参与方式上区分,可以分为联盟连,公开链,私有链。

从链关系上区分,是主链和侧链,以及互联链。

1. 公有链(Public Blockchain)

           公有链是真正意义上的去中心化的区块链,用户不需要注册就可以匿名访问链上内容,甚至可以参与链上的交易。公有链,通过密码学保证交易不被篡改,验证经济上产生的用户激励,保证在陌生环境中建立共识,从而形成了去中心化的信用机制。

            在公有链中的共识机制,一般采用工作证明(PoW)和权益证明(PoS),用户在区块链中的影响力取决于拥有的资源占比。

            公有链也称作非许可链(Permissionless Blockchain)。

2. 联盟链(Consortium Blockchain)

            仅限于联盟成员参与,用户在链上的读写,参与记账的权限,都要按照联盟的规则来进行。是一种需要注册许可的区块链,因此也称作许可链(Permissioned Blockchain)。

            联盟链的共识过程,由预先选好的节点开始,适用于B2B场景。当全网有超过2/3的节点确认了一个区块,那么该区块的将得到全网的确认。由于联盟链中参与节点较少,因此一般不采用工作量作为挖矿机制,而采用权益证明,PBFT,RAFT??

 

3.私有链

    仅组织内部成员使用,用户在链上的读写操作,参与记账权限,都要按照组织内部规则进行。一般用于企业,政府内部场景使用。

    私有链具有安全,可追溯,不可篡改,自动执行的运算平台,同时可以防范来自内部和外部的数据安全攻击,这是传统系统中无法做到的。私有链也是一种许可链。

 

4.侧链

        侧链就是和比特币挂钩,可以和比特币区块链交易的链。具有以下属性:

  • 用户的资产从一个区块链上转移到另一个区块链上之后,还应该可以再转移回原来区块链的同一账户中去
  • 不诚实的用户无法阻碍资产在链上的转移
  • 资产的转移,必须是原子操作,也就是,必须全部转移或者全部不转移
  • 侧链应该具有防火墙,即一条链上的软件错误,不应该影响另一条链上的资产
  • 在资产转移的过程中,即使出现了区块链的重组,也不应该出现错误
  • 用户不需要追踪不常使用的其他侧链

比特币区块链每10分钟产生一个区块,每个区块大约1M,每秒只能完成7笔交易。

5. 互联链

     由全球各种特定业务的垂直区块链互联互通而形成了互联区块链。

 

  • 区块链的价值

        总的来说,去中心化信用机制是区块链的核心价值之一,而区块链技术本身,实际又是各种不同技术的组合,因此在实际应用中,都可以根据实际的场景来进行技术的组合。具体看来,区块链的颠覆性价值主要体现在以下五个方面。

1. 简化流程,提高效率

        因为区块链本身,就是参与方多方沟通,通过共识达成的公共账本,数据本身天然就是官方认可,可信,可追溯,唯一,不可更改的,因此省去了传统网络下需要验证的诸多操作和流程,从而效率更高。

2. 降低交易方的信用风险

    区块链中可以使用智能合约机智,也就是在交易时,交易多方需要自觉履行合约,保证自动完成相应义务,降低了多方的交易风险。

3,减少了结算清算时间

    由于区块链的去中心化信任机制,在交易发生时,就进行了交易的清算和结算,因此降低了结算成本与时间,提高了效率。

4. 增加资产的流动性,提高资产的利用率

    由于区块链清算快,因此资产被锁定的时间短,从而加速了资产的流动

5. 提升了透明度,以及监管力度,避免欺诈

    由于区块链可以将所有的交易和智能合约进行实时监控,并且讲交易都都不可纂改,不可撤销,不可抵赖的保留下来。方便监管机构监控,取证。从而避免了欺诈行为。

 

  • 区块链的应用场景
  1. 金融领域的结算,清算
  2. 数字货币
  3. 跨境支付
  4. 财产保险

 

Q&A

Q: 权益证明PoS是什么?

A:与工作量证明不同,权益证明并不是矿工挖取区块,而是验证者创造新的区块。这里的验证者,并不是随机选择的。要想成为验证者,必须要在网络中存入一定数量的资产作为权益(可以理解为保证金),存入的资产越多,成为验证者的可能性就越大。成为验证者之后就可以创建区块,区块创建完成后,需要验证其中的所有交易是否无误,验证完成后,区块才可以被加入到链中。作为奖励,该节点可以获取当中的交易费。

    如果说,验证者在过程中,存在欺诈行为,那么他将损失一部分权益,只要保证作为权益的资产大于作为奖励的交易费,那么我们就可以信任他。

优点:相比工作量证明,权益证明消耗资源更加少,更加的去中心化。

缺点,51%欺诈,当用户存入的权益足够多时,就可以控制交易,从而产生交易欺诈。

可参考 https://www.sohu.com/a/228471358_178408

https://baike.baidu.com/item/%E6%9D%83%E7%9B%8A%E8%AF%81%E6%98%8E/22447953?fr=aladdin

 

Q: PBFT,RAFT都是啥?

参照原文:https://blog.csdn.net/jerry81333/article/details/74303194 

A:

  • PBFT 拜占庭容错,可以容纳约1/3的容错,如下实例

其中C为发送请求端,0123为服务端,3为宕机的服务端,具体步骤如下:
1. Request:请求端C发送请求到任意一节点,这里是0
2. Pre-Prepare:服务端0收到C的请求后进行广播,扩散至123
3. Prepare:123,收到后记录并再次广播,1->023,2->013,3因为宕机无法广播
4. Commit:0123节点在Prepare阶段,若收到超过一定数量的相同请求,则进入Commit阶段,广播Commit请求
5.Reply:0123节点在Commit阶段,若收到超过一定数量的相同请求,则对C进行反馈

根据上述流程,在 N ≥ 3F + 1 的情況下一致性是可能解決,N为总计算机数,F为有问题的计算机总数

N=4 F=0 时:
     得到数据    最终数据
A    1 1 1 1    1
B    1 1 1 1    1
C    1 1 1 1    1
D    1 1 1 1    1

N=4 F=1 时:
     得到数据    最终数据
A    1 1 1 0    1
B    1 1 0 1    1
C    1 0 1 1    1
D    0 1 1 1    1

N=4 F=2 时:
     得到数据    最终数据
A    1 1 0 0    NA
B    1 0 0 1    NA
C    0 0 1 1    NA
D    0 1 1 0    NA

由此可以看出,拜占庭容错能够容纳将近1/3的错误节点误差

  • RAFT 

参照原文:https://www.jianshu.com/p/8e4bbe7e276c

每个分布式节点,都存在三种状态:Leader,Follower,Candidate,这三种状态是可以相互转换的

每个节点上都有一个倒计时器 (Election Timeout),时间随机在 150ms 到 300ms 之间,在这个倒计时结束之后,Follower状态变为Candidate,并可以向其他节点发送选举请求,等待下面三种情形发生;

1. 获得超过半数服务器的投票,赢得选举,成为Leader
2. 另一台服务器赢得选举,并接收到对应的心跳,成为Follower
3. 选举超时,没有任何一台服务器赢得选举,自增当前任期,重新发起选举。

产生Leader之后,由Leader产生LOG,用户操作,数据记录,用于后续复制以保证数据统一

复制LOG过程:

    1)当Follower 1需要操作数据时,首先将操作数据发送到Leader,此时数据处于uncommited状态

    2)Leader将数据操作,广播给其他Follwer

    3) 其他Follower收到数据后写入到本地,并回复OK,此时所有状态都是uncommited,

    4)当Leader收到超过半数的OK之后,再广播给所有Follower,此时所有的状态都变为了commited.

这样就完成了一次LOG复制的过程,保证了所有节点的数据统一。实现 Raft 算法两个最重要的事是:选主和复制日志

 

        

 

 

 

 

 

 

转载于:https://my.oschina.net/u/4025538/blog/2876180

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值