区块链工作原理

 2023-05-08 22:32:32发布 2023-08-30 13:47:49更新

先理解区块链系统中的一些基本概念:

  • 交易(Transaction) – 一次对账本的操作,导致账本状态的一次改变,如添加一条转账记录
  • 区块(Block) – 记录一段时间内发生的所有交易和状态结果等,是对当前账本状态的一次共识
  • 链(Chain) – 由区块按照发生顺序串联而成,是整个账本状态变化的日志记录
  • 挖矿(Mining) – 指通过计算形成新的区块,是交易的支持者利用自身的计算机硬件为网络做数学计算进行交易确认和提高安全性的过程
  • 点对点网络(Peer-to-Peer Network) – 是指通过允许单个节点与其他节点直接交互,从而实现整个系统像有组织的集体一样运作的系统
  • 哈希散列(Hash) – 密码学里的经典技术,把任意长度的字符串输入通过Hash算法,变换成固定长度的由字母和数字组成的输出
  • 数字签名(Digital Signature) – 是一个让人可以证明其所有权的数学机制
  • 私钥(Private Key) – 是一个证明你有权从一个特定的钱包消费虚拟货币的保密数据块,是通过数字签名来实现的

 

如果把区块链系统作为一个状态机,则每次交易意味着一次状态改变;生成的区块,就是参与者对其中交易导致状态改变结果的共识。

区块链的目标是实现一个分布的数据记录账本,这个账本由矿工或质押者维护,这个账本只允许添加、不允许删除。账本底层的基本结构是一个线性的链表。链表由一个个“区块”串联组成,后继区块中记录前导区块的哈希(Hash)值。某个区块(以及块里的交易)是否合法,可通过计算哈希值的方式进行快速检验。网络中节点可以提议添加一个新的区块,但必须经过共识机制来对区块自动达成确认并生成。

一个简单的例子使用区块链来记录财务交易。假设你和你的朋友使用区块链系统进行转账。
当你给朋友转账时,系统会创建一个交易记录,其中包含你的账户信息、朋友的账户信息以及转账金额。
该交易记录将被添加到区块链中待处理的交易队列中。
在网络中的一组特殊的节点,称为“矿工”,将验证该交易记录的有效性。他们会检查你的账户余额是否足够支付转账金额,并且该交易不会与任何先前的交易冲突。
如果交易记录被验证为有效,则矿工将其打包在一个新的区块中,该区块将被添加到区块链上。
该区块将被广播到整个网络,以确保每个节点都拥有该区块的副本。
最终,你的账户余额将被减少,朋友的账户余额将被增加,交易记录将成为不可更改的一部分,永久存储在区块链中。

这就是区块链的基本工作原理。简而言之,区块链由于是全球分布式记录,数据拥有完整性和安全性。

推荐阅读