首页 web3.0 解读区块链技术

解读区块链技术

什么是区块链? 区块链是一个虚拟账本,每个记账明细记录就是一个区块。这些记录分发给网络中的每个人,可以读取和添加,但不能…

解读区块链技术

什么是区块链?

区块链是一个虚拟账本,每个记账明细记录就是一个区块。这些记录分发给网络中的每个人,可以读取和添加,但不能修改。你不能在CRUD中删除或更改它们。如果您想删除或更改它们,您可以添加一个新记录来抵消原始值。比如财务核算的时候,前面加一个“错借”的科目,后面再加一个“借”。比如上市公司经常发布季报修正,上个月盈利500万(国内某上市公司卖了一套房),次月发布公告,上个月盈利修正为300万。这和你说的差不多,像泼出去的水,收不回来,用橡皮擦也修改不了。在财务中,如果你想用SQL update修改数据库记录之类的记录,篡改财务账本就是犯罪。区块链中的街区是这样一个与前一个记录相联系的记录,就像幼儿园的孩子们手牵着手,互相盯着对方,就像一个联系列表,这样就没有人能篡改这个链条。当然,这种高度的序列化和事务ACID的序列化一样,造成了性能的限制,所以制约区块链广泛应用的一个瓶颈就是它的吞吐量和并发性能,这是它的高事务安全性造成的牺牲方面。

区块链实际上是一个高一致性的分布式交易数据库,维护着一个不断增长且有序的交易记录列表。其分布式事务实现不同于集中式数据库分布式事务实现,后者通常使用Paxos或Raft实现共识凝聚,最终将所有服务器节点的状态修改为一致状态;区块链的分布式交易机制也不同于传统的2PC两阶段交易机制,主要通过锁定交易参与者的资源来实现。区块链的交易机制非常类似于事件源的交易机制。区块链不仅保证了交易的高交易完整性,还结合或耦合了安全加密算法。这种一体化设计非常适合各种与货币相关的转账交易、智能合约或加密货币应用。

区块链中的每个块都包含一个头和一个体:

这些是每个块拥有的数据。此外,每个块都有开发者定义的最大字节数。当达到此最大值时,此数据块将被添加到区块链,并将创建新的数据块。

字组号

链中的每个块都有一个数字,代表该块在整个链中的位置。链中的第一个块有一个特殊的名字,它们被称为创世块,即起始块和创造块。

以前的块号PrevBlockHash

每个块在头中都有对前一个块的散列号的引用,这非常重要,因为这是区块链保持一致和控制不变性的方式。创世块没有什么可以参考前面的块,因为是第一块。

默克鲁特

MerkleRoot是块中所有事务的哈希结果。如果块内有任何更改,这个哈希值也会更改,并使已更改的块和下一个块无效。

现在你可以想:为什么这个字段叫MerkleRoot而不是blockHash?这是因为比特币使用Merkle树算法从块数据中生成哈希值。

目前

这是一个与区块开采过程相关的32位数字。这个数字仅用于查找匹配区块链难度的哈希值。

创造时间戳

这是块创建的时间戳。

数据

这是所有交易数据的保留位置。

混杂

哈希算法实际上取决于区块链的每个实现。比特币使用长度为256位的SHA-256(安全哈希算法)。

区块链

区块链通过prevBlockHash将块链接在一起:

MerkleRoot值由数据信息生成。如果有任何改变,merkleRoot也会改变,改变后的块链接到prevBlockHash的剩余块将不再有效。这就是为什么区块链是不可改变的。

就业证明

工作证明是区块链的一个重要特征,而且是必要的;在区块链经常提到的其他功能(如安全性)是次要的,有用但不是必需的。

在任何分类账中,顺序都是绝对必要的。一个人不能花没收到的钱,也不能花已经花了的钱。区块链交易(或区块链交易)必须有明确的顺序,不需要可信的第三方来协调顺序。这就是前面提到的分布式事务机制。如果事务是由来自世界各地的匿名参与者生成的,并且没有一个集中式的组织负责事务之间的排序(不同于集中式分布式事务数据库),但是事实确实需要排序,那么我们该怎么办?虽然一个事务(或块)可能包含时间戳,但是如何信任这些时间戳呢?

在分布式系统中无法将事件与时间点关联起来,这是一个尚未解决的问题。直到中本聪发明了区块链工作来证明这一解决方案,分散式账本才得以实现。

区块链的工作被证明是满足一定要求的阿沙-2散列值。这个值很难找到。困难在于哈希小于一个特定的数。数字越小,输入值越稀少,越难找到。它被称为“工作证明”,因为众所周知,具有这种哈希的值非常罕见,这意味着找到新的这种值需要大量的试错,也就是“工作”。这反过来意味着消耗“时间”。比特币的搜索难度是动态调整的,每十个钟平就能找到一个正确的哈希值。

也就是说,区块链没有办法决定谁能最快计算出哈希值(因为每个参与者的服务器时钟不可能像手表一样准确),所以如果延迟一段时间,比如10分钟,谁先算出谁赢,然后快速相乘,谁的链条越长越有优势。这是10分钟内可能有两个中奖者的附加判断条件。

事件追踪是区块链最方便有效的手段。首先用事件聚合的概念对系统建模,然后决定是否统一共享存储事件日志?还是复制事件日志?统一共享方式相对简单可行;但是,对于分布式存储,需要选择一个主节点来附加特殊的事件日志,以保证事件日志的顺序,其他节点会复制并保存这个新的事件日志备份。这样做的好处是没有单点集中的风险。在去单点中心化的方向上,区块链是更完美的实现。与其投入巨资建设数据中心或数据湖,不如通过区块链在全球范围内共享数据。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

为您推荐

以区块链为笔 描绘“数字文旅”新图景丨数据通信链谷·以风景谈链

坐拥7万平方米的办公空间, 汇聚近百家区块链企业, 静安区科技创新高地 在——《数据通讯谷》中, 一场关于传统与未来交织...

2024年 区块链技术的5大趋势 你跟上了吗?

亲爱的朋友们,2024年已经到来,区块链技术正在以前所未有的速度发展。今天,让我们一起探讨今年区块链技术的5大发展趋势,...

我国首个区块链专用计算硬件开放架构发布

记者8月30日从国家区块链技术创新中心获悉,我国首个区块链专用计算硬件开放架构BUDA(区块链统一设备架构)正式发布,并...

在这里 区块链正在悄然推动生产生活方式的改变

” 新生产力正在迅速改变我们的生产生活方式,区块链将是至关重要的基础设施之一。”静安区数据局负责人表示。“在线支付解决了...

在这里 区块链正在悄然推动生产生活方式的改变

” 新生产力正在迅速改变我们的生产生活方式,区块链将是至关重要的基础设施之一。”静安区数据局负责人表示。“在线支付解决了...

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

返回顶部