web3学习笔记(一)

纯理论,我都听睡着了。

第一天,通过视频来了解区块链原理,B站视频:传送门

1.从比特币到区块链

比特币是电子现金系统,不依赖于第三方而实现点对点的线上交易

区块链是保障比特币可以运行的底层技术

区块链解决的最重要的问题是交易各方之间的信任问题

2.区块链如何运行

2.1.区块与区块链

区块:一段时间的账单

区块链:账本

2.2.账户体系

公钥和私钥

私钥:只有用户知道的秘钥,用来签名交易

公钥:哈希处理后的用户标识符

2.3.多人竞争记账

为了决定谁有权记录新区块,许多区块链使用工作量证明(PoW)机制:

  • 矿工们竞争解决复杂的数学难题(找到使区块头哈希值小于特定目标的随机数
  • 第一个解决问题的矿工获得奖励

2.4.UTXO模型

未花费交易输出(UTXO)模型是比特币等区块链使用的账户模型:

  • 每笔交易都消耗之前交易的输出并创建新的输出
  • 钱包余额是所有未花费输出的总和,而不是直接记录账户余额
  • 交易输入必须完全消耗,多余部分作为找零返回
  • 这种模型有助于提高隐私性和并行处理能力

2.5.”双花“和最长链原则

双花是指同一笔资金被花费两次的尝试:

  • 区块链通过共识机制防止双花
  • 链出现分叉的时候,网络认可最长的链作为权威版本
  • 交易通常需要等待多个确认才会视为最终确认,防止短期分叉导致的双花

2.6.区块链分类

  • 公有链:任何人都可以参与,完全去中心化,如比特币、以太坊
  • 联盟链:由预选的组织共同维护,部分去中心化,如Hyperledger Fabric
  • 私有链:由单一实体控制,中心化程度高,但提供更好的性能和隐私保护

3.区块链的骨骼与灵魂

3.1.非对称加密函数

RSA

原理:基于大数分解的困难性,使用两个大质数的乘积作为密钥的基础

ECC

原理:基于椭圆曲线上的离散对数问题

3.2.哈希函数

哈希函数特性

  • 单向性:无法从哈希值反推原始数据
  • 确定性:相同输入产生相同输出
  • 雪崩效应:输入微小变化导致输出显著不同
  • 抗碰撞性:难以找到产生相同哈希值的两个不同输入

梅克尔树:

结构:二叉哈希树,叶节点是数据块的哈希值,非叶节点是其两个子节点哈希值的哈希

工作原理

  1. 交易被哈希为叶节点
  2. 相邻的哈希值对被组合并再次哈希,形成上一层节点
  3. 此过程重复直到获得单一根哈希(梅克尔根)

优势

  • 快速验证:可以仅使用梅克尔根验证区块完整性
  • 高效证明:轻节点可以通过梅克尔证明(约log₂(n)个哈希)验证交易包含在区块中
  • 节省存储空间:轻节点无需存储完整区块数据

区块指针

概念:每个区块通过存储前一个区块的哈希值形成链式结构

3.3.拜占庭容错问题

拜占庭将军问题

问题描述:多个将军需要协调一致的进攻或撤退决策,但通信信道不可靠且将军中可能有叛徒

拜占庭容错(BFT)

定义:系统能够在部分节点出现任意故障(包括恶意行为)的情况下继续正常工作

理论限制:容忍f个拜占庭故障需要至少3f+1个节点

3.4.主流的共识机制

PoW(工作量证明)

原理:矿工通过解决计算难题(寻找特定哈希值)来获得创建新区块的权利

PoS(权益证明)

原理:节点根据持有代币的数量和时间获得创建新区块的概率

DPoS(委托权益证明)

原理:代币持有者投票选出有限数量的代表(通常21-101个)来验证交易和创建区块

PBFT(实用拜占庭容错)

原理:通过多轮投票达成共识,适用于已知验证者身份的系统

4.没看下去,太理论了不知道在讲什么,有时间慢慢看

kucha
“ 大冬天的非常冷,打工人很辛苦,需要一杯奶茶暖暖肚子。 ”
 喜欢文章
头像