web3-区块链基础:从区块添加机制到哈希加密与默克尔树结构

区块链基础:从区块添加机制到哈希加密与默克尔树结构

什么是区块链

抽象的回答:
区块链提供了一种让多个参与方在没有一个唯一可信方的情况下达成合作

若有可信第三方 > 不需要区块链
[金融系统中常常没有可信的参与方]

像股票市场,或者一个国家的债券等等这些是有信用参与方的那这些就不需要区块链来互通。

区块链的核心就是共识层和计算层,共识层和计算层默认是合在一起的。

在这里插入图片描述

1️⃣ 共识层(Consensus Layer)

定义:
提供数据一致性不可篡改性的保障机制,确保所有参与节点在不需要相互信任的前提下,达成对数据的统一认定。

特点:

  • 公共数据结构:所有交易数据、区块等均记录在公开账本中。
  • 不可篡改性:一旦数据上链,无法删除或修改。
  • 一致性:所有诚实节点维护相同账本副本。
  • 活性:诚实节点能够持续添加新交易和区块。
  • 开放性:任何人均可参与数据的添加与验证(依据公链/联盟链而定)。

2️⃣ 计算层(Computation Layer)

定义:
DApp的业务逻辑与规则以程序形式部署在区块链上,节点共同执行和验证程序结果。

特点:

  • 透明性:应用逻辑写在开放、公开的源代码中,无需依赖中心化可信方。
  • 公共可验证性:任何人都能独立验证程序执行过程与结果。
  • 去信任执行:新区块的创建者(矿工/验证者)需执行DApp程序,记录状态变更。

3️⃣ 应用层(Application Layer)

在这里插入图片描述

定义:
基于区块链的去中心化应用程序(DApps)与智能合约,构建具体业务场景,如DeFi、NFT、DAO等。

特点:

  • 运行在链上计算机(虚拟机)上
  • 应用逻辑透明、数据不可篡改
  • 无需中心化服务方

4️⃣ 用户交互层(Interaction Layer / Interface Layer)

在这里插入图片描述

定义:
用户与区块链网络及DApps交互的界面与入口。

组成:

  • 钱包(如MetaMask、Phantom)
  • 浏览器插件、移动端App
  • 前端界面与API交互

特点:

  • 提供友好的交互体验
  • 管理用户身份、密钥、签名等
  • 调用区块链节点API,与链上数据与应用交互

区块链的生态
在这里插入图片描述

区块如何被添加到链上

假设有3个参与方A,B,C;他们3个人每个人都有私钥对交易进行签名,3个人每个人都创建了独立的交易 ;3个人都有矿工的地址他们也将交易发送到了对应的矿工的地址中;矿工收到发布的交易然后通过一些网络协议把这些交易发出去

这边会有有一个出块者的选择机制,矿工会被随机的选中,假设这一轮最上面的矿工被选中;他就会构建包含当前区块的区块链接然后把区块发布在交易上;这时候就会给这个矿工奖励我们称之为区块奖励;
在这里插入图片描述

加密:哈希函数

加密哈希函数

一个有效计算函数。H:M ->T

其中:||>>||

无论输入多少字节的数据,哈希函数最后就是输出一个32字节的数据
在这里插入图片描述

抗碰撞性(Collision resistance)

定义:碰撞是指对于:H M–>T,一对X≠Y€M使得H(x) = H(y)

因为定义域 |M|>> 值域|T|说明存在很多碰撞

白话来说就是无论你输入多少字节的数据最后输出的都是一个32字节的算数,由于函数是抗碰撞的,这32个字节都是唯一的没有重复。

大家如果感兴趣可以去了解一下密码学的课程。

默克尔树(Merkle tree-1989)

首先承诺一个大小为N的列表S,如下图有8个元素,生成一个承诺h–32个字节 ;其实就是一个哈希值
在这里插入图片描述

当在区块链上写入一个区块交易时,只需要写入的承诺就足够,保持小链。

后面,可以证明每个链上的内容。
在这里插入图片描述

总结

区块链是一种去中心化技术,使多方在没有可信第三方的情况下达成共识。其架构分为四层:共识层确保数据安全和一致性;计算层运行智能合约业务逻辑;应用层构建DeFi、NFT等场景;用户交互层提供钱包等入口工具。新区块通过矿工随机选择机制添加,包含交易记录和奖励。区块链采用哈希函数确保数据唯一性和抗碰撞性,并通过默克尔树结构高效存储交易承诺,实现链上数据验证。这种架构使区块链具有去中心化、透明和不可篡改的特性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全干engineer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值