00 区块链基础知识
对于一些词汇概念的讲解
1. 什么是区块链?
区块链是一种分布式
的、去中心化
的数字账本技术,用于记录和验证交易的数据。
区块链的核心概念是将交易的数据记录在一个被称为“区块”的数据结构中,
并通过加密
和共识算法
保证数据的安全性
和 一致性
每个区块包含了一批交易的信息,以及与之前区块的链接,形成了一个链式结构
链:串起来了才是链
2. 区块链有什么特点?
在区块链中,参与者通过网络共享和维护这个账本的副本,而不是依赖于中央机构来验证交易。这种去中心化的特性使得区块链具有以下特点:
透明性
:区块链中的交易和数据是公开可见的,任何人都可以查看账本的副本。这提供了一种透明的方式来验证交易和监督系统的运作。安全性
:区块链使用密码学技术对数据进行加密和验证,从而确保数据的安全性和完整性。由于数据存储在多个节点上,篡改数据变得非常困难。去中心化
:区块链没有中央机构或控制权,参与者通过共识算法来达成对账本的一致认可。这使得区块链具有更高的可信度和抗攻击能力。不可篡改性
:一旦数据被记录在区块链上,由于每个区块都包含了前一个区块的哈希值,任何对数据的篡改都将被其他节点检测到。
3.区块链的运作方式
3.1 哈希函数
理想的加密哈希函数具备5个主要属性:
- 确定性:相同的消息总是产生相同的哈希值。
- 快速:快速计算任何给定消息的哈希值。
- 抵抗性:除非尝试所有可能的消息,否则从其哈希值生成消息是不可行的。—无法返解
- 不相关:对消息的微小更改会极大地改变哈希值,以至于新值与旧值没有关系。–原始消息改1个字哈希大改
- 抗碰撞:不可能找到具有相同哈希值的两个不同消息。—每一个都是唯一的
3.2 区块、链
- 有效区块是一组有序的交易。
- 每个块都包含前一个块的哈希值。—按顺序排的
- 区块的哈希值具有易证明难伪造。
4.交易的运作方式
4.1 加密钱包
钱包并不存储加密资产,他们只存储私钥
先理解三个重要概念:
- 私钥、公钥、地址:公私钥通过
非对称加密
生成,公钥用于分发,私钥用于个人保留,地址通过公钥推导 - 加密与解密:消息传递通过公钥加密、私钥解密
- 签名与验证:交易信息通过私钥签名、公钥验证签名
4.2 以BTC为例,讲解一笔交易流程
用户B转账 1 bitcoin 到用户 A
- 用户B使用自己的私钥签名完成交易信息【确认用户B有足够的代币】
- 将交易信息发送至节点,节点使用公钥验证交易信息,并存储在
内存池
中。 - 节点将交易分组在区块中,并广播到其他节点。
- 共识成功并出块后,用户A才能获取到1 bitcoin。
5.共识
5.1 工作量证明(PoW)
去中心化程度高,消耗资源高
在 PoW 共识中,用户必须完成任意难度的任务,当与块中的有序交易结合时,会产生符合特定标准的哈希函数结果。
- 称为“矿工”的节点通过暴力竞争来解决数学问题(找到特定规则的哈希值)—-大家一起挖呀挖
- 第一个解决问题的矿工可以创建一个区块—–第一个挖到了哦
- 其他节点检查该块是否有效。如果是,矿工将获得加密货币奖励。如果不是,矿工就浪费了时间和精力。
- 所有的节点都将新块添加到其区块链副本中。—-
5.2 股权证明 (PoS)
去中心化的一种妥协方案,更像选择代表人参与网络,相比工作量证明大大降低资源消耗
- 称为验证者节点会抵押一些加密货币。投入一定数量的加密货币来参与和分配出块奖励。
- 验证者节点所占的权重越高更有可能被选择来处理交易并创建区块。
- 其他验证者节点检查该块是否有效。如果是,所有参与的验证者都会赚取收益。如果不是,创建该块的验证者可能会失去其权益或者获得惩罚。
还有其他共识算法将后续介绍,比如:权威证明、委托权益证明等
延伸: Cosmos的共识机制是什么?:
Cosmos 是一个开放的区块链生态系统,它采用了一种具有扩展性和互联性的共识机制,称为 Tendermint 共识。
Tendermint 共识是一种基于权益证明(Proof-of-Stake, PoS)的共识算法。它的设计目标是实现高吞吐量、快速确认和良好的安全性。以下是 Tendermint 共识的主要特点:
- 权益证明(Proof-of-Stake):Tendermint 使用权益证明作为共识机制,参与共识的节点需要锁定一定数量的代币作为权益。这些权益代币用于确定节点在共识过程中的投票权重。
- BFT 共识算法:Tendermint 基于拜占庭容错(Byzantine Fault Tolerance, BFT)算法实现共识。它使用了一种称为 “Tendermint Core” 的共识引擎,该引擎通过节点之间的相互通信来达成共识。
- 轮次制(Round-Robin):在 Tendermint 中,节点按照轮次制进行共识过程。每个轮次中,一个节点被选为提议者(Proposer),负责提议一个区块。其他节点将根据提议者的区块进行投票,达成共识。每个轮次后,提议者会轮换到下一个节点。
- 快速最终性(Fast Finality):Tendermint 具有快速最终性的特点,一旦一个区块被大多数节点确认,它就被视为最终的并且不可逆的。这意味着确认的区块在整个网络中被广泛接受,提高了交易的安全性和确定性。
Tendermint 共识机制在 Cosmos 生态系统中被用于连接多个独立的区块链(称为 “区块链间通信”,Inter-Blockchain Communication, IBC),实现跨链互操作性。它提供了一个安全且高效的共识算法,使得 Cosmos 网络中的不同区块链能够进行可靠的交互和数据传输。
00 区块链基础知识
http://example.com/2024/05/16/00区块链基础知识/