Web3——区块链基础

区块链

区块链是一种底层技术,像数据库一样是基础。Web3则是建立在区块链之上的应用理念,强调去中心化。所以学习区块链绝对是Web3的核心内容,但区块链本身也可以用于其他领域(比如供应链追溯)。

区块链与 Web3的关系

区块链 :是一种底层技术,它本质上是一个去中心化的分布式数据库。其核心价值在于通过密码学共识机制,在不依赖中介的情况下实现可信的数据存储和传输。

Web3:是一个宏大的愿景和概念,它指的是基于区块链等技术构建的下一代去中心化互联网。

关系类比:

区块链 就像 TCP/IP协议 和 数据库技术,是基础设施。

Web3 就像整个 互联网,是一个建立在基础设施之上的应用生态。

结论:学习区块链技术,就是学习Web3的基石。要深入理解Web3,必须学习区块链。

区块链 与 人工智能 的关系

它们是两个不同的技术领域,但可以结合。

区块链 :关注的是信任、所有权和去中心化。核心问题是"数据/资产是否可信、归谁所有"。

人工智能 :关注的是智能、预测和自动化。核心问题是"如何从数据中学习并做出智能决策"。

它们如何结合?

AI赋能区块链:例如,使用AI模型分析链上交易数据,识别欺诈行为;优化区块链网络的资源分配。

区块链赋能AI:例如,用区块链技术构建去中心化的数据市场,让用户能够安全地出售自己的数据用于AI训练,同时保护隐私;或者确保AI模型的不可篡改和可审计性。

结论:学习区块链和人工智能是两条不同的路径,但它们之间存在交叉的、充满潜力的前沿领域。


区块链

关键思考问题:

传统的银行转账为什么需要2-3天?

在没有中介的情况下,如何确保陌生人之间的交易可信?

为什么说区块链是「生产关系的革命」?

比特币------区块链的第一个成功应用

比特币的诞生背景:2008年金融危机与中本聪的愿景

比特币解决的核心问题:双重支付问题(Double Spending)

比特币的货币属性:为什么被称为「数字黄金」

中心化 vs 去中心化------思维模式的转变

对比分析:

方面 传统中心化系统 区块链去中心化系统
控制权 集中在少数机构手中 分散在所有参与者
数据存储 中心服务器,易被攻击 分布式存储,抗攻击
信任来源 依赖机构信誉 依赖数学和代码
透明度 不透明,黑箱操作 完全透明,可审计

区块链的基础

钱包的三大核心要素

功能:管理密钥和地址,收发数字货币。

公钥:可公开的地址,类似于银行账号。

私钥:必须保密的密码,相当于银行密码+账号权限,谁拥有私钥谁就控制资产。

助记词:一组单词,用于恢复私钥,必须离线妥善保管。

私钥、公钥和地址之间的关系是什么?

具体关系:

  • 私钥 → 公钥:通过椭圆曲线加密算法,从私钥可以单向生成公钥(无法反向推导)
  • 公钥 → 地址:对公钥进行哈希计算,得到地址(无法反向推导)
  • 核心特性:私钥可以推导出所有,但公钥和地址无法反推私钥

实际应用:

  • 你用私钥签名交易,证明「这确实是我发的」
  • 网络用你的公钥验证签名,确认交易有效性
  • 别人向你的地址转账,就像往你的银行账号打钱

助记词的重要性

  • 本质:人类可读的私钥表现形式(通常12或24个单词)
  • 作用:用于恢复钱包和所有资产
  • 安全准则: 必须手写抄录在纸上、绝不截图或网络传输、存放在物理安全的地方

交易的生命周期

  1. 交易创建:用户用私钥签名一笔交易
  2. 交易广播:将签名后的交易发送到网络
  3. 交易验证:网络节点验证交易有效性
  4. 区块打包:矿工/验证者将交易打包进新区块
  5. 区块确认:新区块被添加到链上,交易获得确认

网络达成共识,确认交易。交易被记录在区块链上,不可篡改

区块链浏览器

用于查看区块链上的交易、区块、地址等信息。

可以查看交易的状态、确认数、手续费等。

关键概念解释

区块链:由一个个区块组成的链式结构,每个区块包含多笔交易。
每个区块包含前一个区块的哈希值,形成链条,一旦修改某个区块,其后续区块的哈希都会变化,从而容易被检测。

哈希函数:将任意长度数据映射为固定长度的字符串(哈希值)。

特性:唯一性、不可逆、轻微改动导致哈希值巨大变化。

对称加密

使用公钥和私钥对。公钥加密,私钥解密;私钥签名,公钥验证签名。


共识机制

共识机制: 是区块链网络中所有节点就交易和区块状态达成一致的方法。它是区块链技术的核心,确保了去中心化环境下的数据一致性和系统安全性。

1. 工作量证明(PoW)

原理

  • 节点(矿工)通过解决一个复杂的数学问题(通常是哈希难题)来竞争记账权。
  • 这个数学问题很难解决,但是一旦解决,其他节点很容易验证。
  • 第一个解决问题的矿工将获得记账权,并得到相应的奖励。

过程

  • 矿工收集交易并组装成区块。
  • 矿工不断改变区块头中的随机数(Nonce),计算区块头的哈希值。
  • 直到找到满足特定条件的哈希值(例如,前n位为0)。
  • 找到后,矿工广播这个区块,其他节点验证通过后,接受该区块并开始下一个区块的竞争。
javascript 复制代码
# 工作流程: 简化的PoW流程
while True:
    nonce = 随机数()  # 矿工不断尝试不同的随机数
    block_header = 前区块哈希 + 交易数据 + nonce
    hash_result = SHA256(block_header)  # 计算哈希
    
    if hash_result < 目标难度值:  # 找到符合条件的哈希
        广播新区块()  # 获得记账权
        获得区块奖励()  # 得到比特币奖励
        break

特点

  • 安全性高:要篡改区块链,需要掌握51%以上的算力,成本高昂。

  • 能耗高:因为需要大量的计算,所以消耗大量电力。

  • 去中心化程度:相对较高,因为任何人都可以参与挖矿。

  • 难度调整:每2016个区块(约2周)调整一次难度,保持平均10分钟出一个区块

  • 最长链原则:所有节点默认认可最长的链为有效链

  • 代表:比特币、以太坊(目前正在从PoW转向PoS)。

2. 权益证明(PoS)

原理

  • 节点(验证者)需要抵押(Stake)一定数量的代币来获得记账权。
  • 系统通过算法根据抵押的代币数量和时间等因素随机选择验证者。
  • 被选中的验证者创建新的区块,并获得交易费用作为奖励。

过程:

1、验证者将代币抵押到网络中,成为候选验证者。

2、在每一个区块时间,系统根据抵押的权益(可能还包括其他因素)随机选择一个验证者。

3、该验证者创建并广播新区块,其他验证者验证区块的有效性。

4、如果验证者作恶,其抵押的代币可能会被罚没。

特点:

  • 能耗低:不需要大量的计算。
  • 安全性:作恶会导致抵押的代币被罚没,因此验证者有动力诚实工作。
  • 去中心化程度:可能相对较低,因为富有的节点更有优势。

代表:以太坊2.0(Casper)、Cardano、Polkadot。

3、其他共识机制

委托权益证明(DPoS):持币人投票选出一定数量的代表(见证人),由这些代表轮流生产区块。代表需要抵押一定代币,如果作恶会被投票出局。例如EOS。

实用拜占庭容错(PBFT):是一种基于投票的共识算法,节点通过多轮投票达成共识,适合联盟链。例如Hyperledger Fabric。

还有众多其他变种,如PoA(权威证明)、PoC(容量证明)等。

比特币使用工作量证明(PoW),以太坊已转向权益证明(PoS)。

密码学(哈希、非 对称加密)

区块链大量使用密码学技术来保证数据的安全性和不可篡改性。主要用到的包括哈希函数和非对称加密。

1. 哈希函数

定义:哈希函数是一种将任意长度的输入映射为固定长度输出的函数,且满足以下特性:

确定性:相同的输入总是产生相同的输出。

快速计算:给定输入,可以快速计算出哈希值。

抗碰撞性:很难找到两个不同的输入,使得它们的哈希值相同。

雪崩效应:输入的任何微小变化都会导致输出完全不同。

单向性:从哈希值无法反推出原始输入。

在区块链中的应用:

区块链接:每个区块包含前一个区块的哈希值,形成链式结构。

交易完整性:交易数据的哈希值被记录在区块中,一旦交易被修改,哈希值就会变化。

挖矿:在PoW中,矿工需要找到一个Nonce,使得区块头的哈希值满足特定条件(例如前n位为0)。

默克尔树:将多个交易组合成一个哈希值,高效地验证交易是否包含在区块中。

常用哈希算法:SHA-256(比特币)、Keccak-256(以太坊)。

2. 非对称加密

原理:

  • 使用一对密钥:公钥和私钥。
  • 公钥可以公开,私钥必须保密。
  • 用公钥加密的数据,只能用对应的私钥解密。
  • 用私钥签名的数据,可以用公钥验证签名的真实性。

在区块链中的应用:

  • 身份验证:公钥可以作为身份标识(在比特币中,公钥经过哈希处理得到地址)。

  • 数字签名:

    1、发送方使用私钥对交易进行签名。

    2、其他节点使用发送方的公钥验证签名,从而确认交易确实由发送方发出,且未被篡改。

  • 加密通信:虽然区块链交易是公开的,但非对称加密可以用于加密一些敏感信息。

常用算法:RSA、椭圆曲线加密(ECC)。区块链中常用的是ECC,因为它在相同安全强度下密钥更短。比特币使用Secp256k1椭圆曲线。

总结

共识机制和密码学是区块链技术的两大支柱。共识机制保证了去中心化网络中的一致性,而密码学保证了交易和数据的安全。理解这两点对于深入学习区块链至关重要。

相关推荐
E***q5392 小时前
区块链跨链技术
区块链
9***P3344 小时前
区块链智能合约形式验证
区块链·智能合约
weiwei2284412 小时前
zcash pow equihash算法详解
区块链·哈希算法·zcash
c***979815 小时前
Web3.0在去中心化金融中的智能合约
金融·web3·去中心化
2501_9418108315 小时前
区块链智能合约开发与多语言链上交互实战指南
区块链
S***42801 天前
Web3.0在去中心化应用中的前端框架
前端框架·web3·去中心化
青云交1 天前
Java 大视界 -- 基于 Java 的大数据分布式存储在数字媒体内容存储与版权保护中的应用
java·性能优化·区块链·分布式存储·版权保护·数字媒体·ai 识别
2501_941810832 天前
Web3去中心化应用在跨链资产流转体系中的架构设计与落地实践解析
区块链
东南门吹雪2 天前
PostgreSQL与MySQL的锁与隔离级别
mysql·postgresql·区块链