区块链记账流程,广播如何验证?区块链共识机制之POA

 目录

区块链记账流程,广播如何验证?

细说区块链共识机制之POA

利用区块链技术实现不记密码加密存储验证,解决离线安全存储问题


区块链记账流程,广播如何验证?

产生一笔新交易

一笔新交易产生时,会先被广播到区块链网络中的其它参与节点

各节点将数笔新交易放进区块

每个节点会将数笔未验证的交易Hash值收集到区块中,每个区块可以包含数百笔或上千笔交易

决定由谁来验证这些交易

各节点进行工作量证明的计算来决定谁可以验证交易,由最快算出结果的节点来验证交易,这就是取得共识的做法。

取得验证权的节点将区块广播给所有节点

最快完成POW的节点,会将自己的区块广播给其他节点

各节点验证并接上新区块

其他节点会确认这个区块所包含的交易是否有效,确认没被重复花费且具有效数位签章后,接受该区块,此时区块才正式接上区块链,无法再窜改资料。

交易验证完成

所有节点一旦接受该区块后,先前没算完POW工作的区块会失效,各节点会重新建立一个区块,继续下一回POW计算工作。

细说区块链共识机制之POA

POA全称是proof of activity(活动证明)。他不是一种独立的共识算法,而是POW和POS混合的算法,目前有唯链,欧链等采用了POA共识机制。

POA的算法大致流程是这样的,每个活跃节点不断的进行哈希计算,寻找哈希值小于特定值的区块头,区块头中包括前区块哈希值,本地节点的地址,区块序号以及nonce值

当节点找到满足条件的区块头后,就会向全网广播这个区块头,所有的活跃节点收到广播进行验证。若验证通过,则以广播中的区块头作为数据源,导出N个随机的股权所有者,所有的活跃节点判断自己是否是哪个幸运的股权人。如果自己是前面N-1个幸运股权人中的一个,也一度用私钥对上述的区块头进行签名。并且将这个签名在全网广播。如果自己是第N个幸运股权持有者,则用这个区块头来构建一个新的区块,区块中包含了自己选出的尽可能多的交易,前N-1个幸运股权人的签名还有自己对完整区块链的哈希值的签名。然后将这个签名后的完整节点在全网广播。所有的活跃节点在收到完整节点之后进行验证。验证通过则认为该节点是一个合法的新区块。将其加入区块链当中去。

倘若这个区块属于最长链,则以他为前区块,转回到最初的步骤,否则就做丢弃处理。不难发现,POA算法要求N个幸运者全部在线,任意一个幸运股权人不在线都将导致该区块丢弃。

这也是活跃证明的由来,POA算法会周期性的统计被丢弃的区块数量。并且按照这个来调整N的数值。如果丢弃的区块数量比较多,那么就减少N,否则就增大N.

POA算法的区块丢失是一种算力损失。POA算法中。区块中的交易费由区块的发布者与n个幸运股权人共享。

POA算法最重要的是它可以防止非厉害攻击者。所谓的非厉害攻击是指具有强大的算法,但是仅仅持有少量的股权的攻击者。POA算法中POS部分使得非厉害者得到构建区块机会是非常少的。应该我们无法有效的进行攻击。

POA算法中,幸运股权人依靠资本获利,这个想当持有股篇而获得股息,这种机制会估计持股人长期持续这个股权有利于数字资产的保值以及减少波动。

POAstay大众的pow部分,通过哈希算法难度控制了新区块头生成的速度。起到稳定网络,避免分叉的作用。

然而上述优点的获得也是有代价的,pow部分带来的电力的损耗。而pos部分导致新区块头以及比较大的概率丢失,形成了算力的浪费。

利用区块链技术实现不记密码加密存储验证,解决离线安全存储问题

本文介绍一种利用区块链技术配合个人存储设备进行网络安全验证的方法

以微嘟为代表的不记密码快捷加密存储设备,已经完美做到了快捷安全存储,但美中不足的是无法通过网络查询设备何时被使用,以及无法预知极端情况下设备被离线破解等。

利用区块链技术可以解决此问题,具体工作原理:

在设备连接PC端,并检测到射频ID验证通过后,接入设备内的特定硬件,此时自动通过安装在PC端的程序向特定的区块链网络上广播设备打开时间的等信息。在得到区块链网络确认后,才授权设备后级存储用户重要数据的存储颗粒接入。因为每次设备打开都需要网络授权及相关的信息都存储在区块链网络上了,所以有效的避免了不明目的的人在用户不知情的情况下偷偷地打开设备。

多了一层区块链的网络验证是不是发现设备的安全性提高了好多?

猜你喜欢

转载自blog.csdn.net/qq_38998213/article/details/131415631
今日推荐