区块链需要用到mysql吗_什么条件下才需要区块链
发布日期:2021-06-24 13:33:29 浏览次数:2 分类:技术文章

本文共 1082 字,大约阅读时间需要 3 分钟。

选择你的验证者

到现在我们描述了一个交易可以在多个地方发起的分布式数据库,在节点中用点对点的方式传播,被每个节点单独验证。那么区块链从何而来?嗯,区块链的任务是有权威的最终的交易日志,这个日志的内容所有的节点都可证明的认同。

我们为什么需要这个日志?首先,它使得新添加的节点可以从零开始计算这个数据库的内容,而不需要信任其他节点。其次,它解决了一些节点丢失掉交易的可能性,因为系统的瘫痪或者信息交流的短路。如果没有交易日志,这会导致一个节点的数据库和其他节点的有出入,这就有损共享数据库的意义。第三,两个交易是有可能有冲突的,导致只有一个可以被接受。经典案例是”一个资产两次成功消费”,这种情况下同一个资产发给了两个不同的接受者。在没有中央权威的点对点数据库中,节点对接受哪个交易是有不同意见的,因为没有客观的正确答案。通过交易在区块链中被“确认”,我们保证了所有的节点达成一致的选择。

最后,在以太坊类型的区块链中,精确的交易顺序是非常关键的,因为每一笔交易都会影响到接下来的交易会发生什么。这种情形区块链将定义权威的事情发生的顺序,没有这个交易不能被处理。区块链从字面上看就是一个区块的链条,在这个链条里每一个区块包括了一群被确认的交易的集合。但谁负责选择进入每个区块的交易呢?在适合企业应用的“私有链”中,答案是一群固定的验证者( “矿工” )来把它们创造出的区块进行数字签名。这个白名单将和某种形式的分布式可达成一致的方案结合起来,避免少数的验证者控制这个区块链。比如说,多链用了一种叫做“采矿多样性”的方案,这个方案里被允许的矿工将循环的工作,同时对不行使职责的节点给予一定程度的容忍。不管使用哪种达成一致的方案,负责检验的节点都比传统中心化数据库的拥有者有少太多的权利。检验者不能伪造交易,也不能违背规则修改数据库。在资产总账中,这意味着他们不能花别人的钱,也不能改变资产的总量。但是即使如此检验者还是有两种方法来影响数据库的内容:交易审查:如果足够多的验证者恶意串通,他们可以阻止特定的交易在区块链中被确认,使得这个交易永远的打入冷宫。偏好性。如果两个交易起了冲突,创造下一个区块的检验者将决定哪个交易被确认,另一个就被拒绝。公平的选择是第一个被看到的交易,但是检验者可以根据其他因素做选择,而不显露出谁先来后到这一点。因为这些问题,在部署一个基于区块链的数据库时,你需要清醒的认识到谁是你的验证者和你为什么相信他们。根据场景的不同,验证者可以被选择成为:(1)一个或多个被一个组织控制的节点(2)一个维护区块链的一群核心组织(3)网络上的每个节点。

转载地址:https://blog.csdn.net/weixin_33212263/article/details/113710226 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:mysql5.7 archive安装_Mysql5.7.19winx64ZIPArchive安装及使用过程问题小结
下一篇:python爬虫学习笔记_python网络爬虫学习笔记(1)

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月18日 21时19分45秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章