初识区块链:从比特币到分布式账本
---
1.1 从班级投票记录到分布式账本 / From Class Voting Records to Distributed Ledgers
1.1.1 你遇到过“记录被篡改”的烦恼吗?/ Have You Ever Struggled with "Tampered Records"?
先想象一个你绝对经历过的场景:下周就是元旦晚会,班里要选3个节目,班主任让班长负责记票。投票结束后,班长在黑板上写下结果:《科目三》15票,《科目三串烧》8票,《科目三+爱你》3票,最后选出了《科目三》和《科目三串烧》两个节目。但后排的体育委员突然站起来说:“我明明投了《科目三+爱你》,怎么只有3票?”这时候全班都乱了,因为黑板上的字只有班长能改,没人能证明自己投的是什么,最后只能重新投票,浪费了半节班会课。
再换个你更熟悉的场景:你攒了3个月零花钱,在《原神》官方服买了一个“雷电将军”的五星皮肤,花了198块。但3个月后官方突然宣布国服停服,你的皮肤、充值记录全没了,想找客服理论,客服说“服务器数据是中心的,我们删了就是没了”,你只能哑巴吃黄连。
这两个场景的核心问题,其实都出在记账方式上:我们把记录交给了一个“中心”(班长/游戏公司),中心既是记录者,也是规则的制定者,甚至是可以随意修改记录的人。这种“单点记账”的模式,本质上就是人类用了几千年的传统记账逻辑:所有账目都存在一个中心机构里,大家信任这个机构,所以相信账目是对的。
但在数字时代,这种模式早就遇到了瓶颈:2023年全球数据泄露事件超过1万起,涉及用户数据超过150亿条,其中30%的泄露来自中心化机构的内部篡改或系统漏洞;全球每年因为供应链造假、学历造假、公益捐款不透明造成的经济损失超过1万亿美元。这些问题本质上都是“中心化账本不可信”导致的。
那有没有一种记账方式,能让所有人都能共同记账,而且谁也不能随便改记录?这就是我们要讲的区块链(Blockchain) 的核心逻辑。
---
1.1.2 什么是区块链?/ What Exactly Is Blockchain?
如果用一句话给区块链下定义,就是:区块链是一种由所有参与者共同维护、按时间顺序链接存储、不可篡改的分布式账本(Distributed Ledger)。
拆解这句话里的每个关键词,你就能完全理解它的本质: 1. 共同维护:不是某一个人或某一个机构记账,而是所有参与的人一起记账,就像刚才的班级投票,不是只有班长记,而是全班每个人手里都有一本一模一样的投票记录本。 2. 按时间顺序链接存储:所有的记录不是乱堆的,而是按发生的时间一块一块存,每一块记录都和前面一块记录绑定在一起,就像你把每天的投票记录订成一个笔记本,第2页永远在第1页后面,第3页永远在第2页后面,谁也不能把第3页插到第1页前面。 3. 不可篡改:一旦记录被写进账本,就几乎不可能被修改,就像你写在笔记本上的字,除非你把所有人的笔记本都改了,不然没人能改掉。 4. 分布式账本:账本不是存在某一个地方,而是存在所有参与者的设备里,班长手里的笔记本丢了,你手里的还在,体育委员手里的还在,不会出现“账本丢了就全没了”的情况。
区块链这个名字其实非常形象:“区块”就是一块一块的记录,“链”就是把所有区块按时间顺序串起来的链接。每个区块里存的是什么?我们拿刚才的班级投票举例,每个区块的结构是这样的: | 字段 | 内容示例 | |------|----------| | 区块高度(Block Height) | 第1个区块 | | 前一个区块的哈希值(Previous Block Hash) | 000000(创世区块的第一个区块没有前一个,所以填0) | | 本区块交易记录(Transactions) | 小明→《科目三》1票,小红→《科目三》1票,体育委员→《科目三+爱你》1票 | | 时间戳(Timestamp) | 2024-10-01 14:30:00 | | 本区块哈希值(Current Block Hash) | 3a7bd3e2360a3b29e1a2e9e4d2f8c9a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7 |
这里出现了一个新的术语:哈希值(Hash),你可以把它理解成内容的“数字指纹”。不管你是输入一句话、一张图还是一个视频,哈希函数(Hash Function)都会给你生成一串固定长度的、独一无二的字符串,而且有3个核心特性: 1. 单向性:你可以从内容算出哈希值,但不可能从哈希值反推出原来的内容,就像你可以从一个人的指纹查到他是谁,但不可能从指纹造出这个人。 2. 敏感性:只要原来的内容改了一个字、甚至一个标点符号,算出来的哈希值就会完全不一样,比如“我爱区块链”的SHA256哈希值是`a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a`,而“我爱区块链!”的哈希值就变成了`e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855`,完全没有任何关联。 3. 唯一性:不可能有两个不同的内容算出同一个哈希值,就像不可能有两个人的指纹完全一样。
因为每个区块里都存了“前一个区块的哈希值”,所以如果有人想篡改第1个区块里的投票记录,比如把体育委员投的《科目三+爱你》改成《科目三》,那第1个区块的哈希值就会变,第2个区块里存的“前一个区块哈希值”就对不上了,第2个区块的哈希值也会变,以此类推,后面所有的区块哈希值全都会变。要瞒过所有人,你必须把所有人的账本里的所有区块哈希值全改了,这几乎是不可能完成的任务——这就是区块链“不可篡改”的技术底层逻辑。
---
1.1.3 区块链的发展简史:从比特币到Web3 / A Brief History of Blockchain: From Bitcoin to Web3
区块链技术不是凭空出现的,它的诞生和演进,完全是为了解决数字时代的信任问题。我们可以把区块链的发展分成三个阶段,每个阶段都对应着一次技术革命,也对应着青少年最熟悉的互联网产品迭代:
阶段1:区块链1.0——比特币,点对点的电子现金 / Blockchain 1.0: Bitcoin, Peer-to-Peer Electronic Cash
2008年9月,全球第四大投资银行雷曼兄弟宣布破产,引发了全球金融危机。很多人存在银行里的钱突然取不出来,政府对银行的救助用的是纳税人的钱,普通人对“中心化金融机构”的信任降到了冰点。这时候,一个自称“中本聪”(Satoshi Nakamoto)的密码学家在2008年11月1日,向密码学邮件组发布了一篇只有9页的论文:《比特币:一种点对点的电子现金系统》(*Bitcoin: A Peer-to-Peer Electronic Cash System*)。
这篇论文解决了一个困扰密码学界十几年的难题:双重支付问题(Double Spending Problem)。什么是双重支付?就是你有一张10块钱的纸币,你不可能同时把它付给两个人,因为纸币是物理存在的,你付给第一个人之后,手里就没有了。但数字资产不一样,你有一串比特币的代码,你可以同时把它发给A和B,就像你复制粘贴一段文字一样简单,怎么保证你只能花一次?
中本聪的解决方案就是区块链:他把所有的比特币交易记录都存在一个公开的、分布式的大账本里,每个人都能查,而且一旦交易被确认,就改不了。2009年1月3日,中本聪在芬兰的服务器上挖出了第一个比特币区块,被称为“创世区块”(Genesis Block),区块里还藏了一句对当时的讽刺:“财政大臣正处于再次出手拯救银行的边缘”(The Times 03/Jan/2009 Chancellor on brink of second bailout for banks)。当天,密码学家哈尔·芬尼(Hal Finney)收到了中本聪转给他的10个比特币,这是人类历史上第一笔比特币交易。
比特币的核心逻辑就是“去中心化的电子现金”,它不需要银行作为中间人,两个人可以直接转账,而且不会被篡改。但比特币的缺点也很明显:它只能用来转账,不能做其他事情,就像你有一个只能存钱的银行账户,不能买理财、不能贷款、不能买游戏皮肤,用处非常有限。
阶段2:区块链2.0——以太坊,可编程的分布式世界计算机 / Blockchain 2.0: Ethereum, Programmable Distributed World Computer
2013年,一个19岁的俄罗斯裔加拿大少年维塔利克·布特林(Vitalik Buterin,大家叫他V神)提出了一个问题:“如果区块链不仅能记账,还能运行程序,会怎么样?”那时候他还在滑铁卢大学读计算机,因为玩《魔兽世界》的时候,暴雪公司偷偷把他喜欢的角色“术士”的技能削弱了,他愤而退学,决定做一个不会被公司随意修改规则的游戏世界——这就是以太坊(Ethereum)的起源。
2015年7月,以太坊正式上线,它最大的创新是引入了智能合约(Smart Contract):你可以把智能合约理解成一个“自动执行的合同”,比如你和同学打赌,下次考试你考进班级前10,他就给你100块,要是你考不进,你给他100块。传统的合同需要老师或者家长当中间人见证,但智能合约是写死在区块链上的,一旦触发条件(比如成绩出来,你考了第9名),就会自动把对方的100块转给你,不需要任何中间人,也不可能赖账。
以太坊的上线,直接把区块链从“只能记账的账本”变成了“能跑程序的分布式世界计算机”,所有人都在这个计算机上部署自己的程序,不需要经过任何公司的同意。这时候区块链的应用就爆发了:
- **DeFi(去中心化金融)**:你不需要去银行开户,就能在区块链上存钱、贷款、买理财,利息比银行高好几倍,而且不需要提交身份证、不需要审核,只要你有区块链钱包就能用。
- **NFT(非同质化代币)**:你可以把一张画、一首歌、一个游戏皮肤变成区块链上的唯一资产,证明你是它的主人,别人没法复制,也没法抢走。2021年,数字艺术家Beeple的NFT作品《每一天:前5000天》在佳士得拍卖会上拍了6934万美元,比很多真画还贵。
- **链游(Blockchain Game)**:比如《Axie Infinity》,玩家在游戏里养的数字宠物是NFT,属于玩家自己,就算游戏公司倒闭了,宠物还是你的,还能在别的游戏里用。2021年的时候,《Axie Infinity》的日活超过200万,很多菲律宾的玩家靠玩这个游戏赚的钱比上班还多。
阶段3:区块链3.0——扩容、跨链与Web3 / Blockchain 3.0: Scaling, Cross-chain and Web3
以太坊虽然强大,但有个致命的问题:太慢了。以太坊每秒只能处理15-20笔交易,比如你玩链游的时候,你要买个道具,要等十几秒甚至几分钟才能确认,要是遇到网络拥堵,还要付几十美元的手续费,比你在游戏里买道具花的钱还多。所以从2017年开始,很多新的区块链项目开始解决这个问题,这就是区块链3.0时代:
- **扩容方案**:比如Solana,每秒能处理5万笔交易,手续费不到1美分,速度比以太坊快几千倍;还有Polygon,是以太坊的“二层网络”,把很多交易放在链下处理,最后只把结果传到以太坊上,手续费只有原来的几十分之一。
- **跨链技术**:比如Cosmos、Polkadot,能让不同的区块链互相通信,就像你在中国移动的手机号,能直接给中国联通的用户打电话,不需要换号。之前你在以太坊上的资产,没法直接转到Solana上,跨链技术解决之后,就能随便转了。
- **Web3**:现在的互联网是Web2,所有数据都存在谷歌、腾讯、字节这些中心化公司手里,他们想删你的帖子就删,想封你的号就封。Web3就是基于区块链的下一代互联网,所有数据都属于用户自己,你发的帖子、你的游戏资产、你的社交关系,都存在区块链上,没有公司能随便删。
---
1.2 分布式账本的三大核心特性 / Three Core Characteristics of Distributed Ledgers
我们之前讲了区块链的本质是分布式账本,那它和传统中心化账本比,到底强在哪里?核心就是三大特性:去中心化、不可篡改、可追溯。我们每个特性都拿你熟悉的例子来讲,保证你一看就懂。
1.2.1 去中心化:没有“班长”也能把票数对 / Decentralization: Counting Votes Without a "Monitor"
先回到最开始的班级投票场景:传统的投票是中心化的,班长是唯一的记录者,他说多少票就是多少票。那如果是分布式记账的投票是什么样的?
规则是这样的:全班50个同学,每个人手里都有一个一模一样的笔记本,用来记投票结果。投票结束后,每个同学都在自己的笔记本上记下自己看到的所有票数,然后大家把自己的笔记本拿出来对比:
- 如果有49个同学的笔记本上都写着《科目三》15票,《科目三串烧》8票,只有1个同学的笔记本上写着《科目三》10票,《科目三串烧》13票,那说明这个同学记错了,直接以多数人的结果为准。
- 如果有人想作弊,比如自己是《科目三串烧》的参演者,偷偷把自己的笔记本上的《科目三串烧》票数改成20票,那他手里的笔记本和其他49个都不一样,大家一对比就知道他作弊了,直接不算他的结果。
这就是去中心化(Decentralization) 的核心:没有唯一的记账中心,所有参与者共同记账,少数服从多数,只要超过51%的参与者是诚实的,整个系统就是安全的。
在比特币网络里,现在全球有超过1万个节点(就是运行比特币程序的电脑/服务器),每个节点都存着一份完整的比特币交易账本。你要改比特币的交易记录,得控制超过5000个节点,把他们的账本全改了,这几乎是不可能的——就算你有几千亿美元,也不可能买通全球5000个分布在不同国家、不同网络里的节点。而且比特币网络是7*24小时运行的,没有“下班时间”,也没有“节假日”,不像银行,周末没法转账,晚上没法查账。
💡 小知识(侧边栏,电子版可点击跳转比特币白皮书原文)
比特币白皮书里提到的“点对点”(Peer-to-Peer,P2P)网络,其实就是去中心化的网络结构:没有服务器,所有节点都是平等的,你和我直接交易,不需要经过任何中间人。你现在用的BT下载、微信的P2P传输,其实用的都是这种逻辑,只是没有加上区块链的不可篡改特性而已。
---
1.2.2 不可篡改:改了也没用的“数字铁证” / Immutability: Digital Evidence That Can't Be Changed
刚才我们已经讲了,区块链的不可篡改是靠“区块链接+哈希值”实现的,但还有更深层的原因:共识机制(Consensus Mechanism)。
什么是共识机制?就是所有参与者共同遵守的规则,大家都按这个规则来记账,只有符合规则的记录才会被认可。区块链最常用的共识机制有两种,我们分别用例子讲: 1. PoW(Proof of Work,工作量证明):比特币用的就是这种机制。规则是:谁先算出一道数学题,谁就有权把下一个区块的记录写进所有人的账本里,还能拿到一定数量的比特币作为奖励。这道数学题很难算,但是很容易验证对错,就像让你算1000道乘除法,你算半小时可能才算完,但别人只要扫一眼就知道你算得对不对。 为什么要这么设计?因为算题要花时间、花电费,如果你乱记记录,比如偷偷给自己加100个比特币,其他人一验证就知道你错了,不会认可你的区块,你花的电费和算力就全白费了,得不偿失。所以大家都会老老实实按规则记账,因为作弊的成本太高了。 2. PoS(Proof of Stake,权益证明):以太坊现在用的就是这种机制,更省电。规则是:你持有的以太坊越多、持有时间越长,你被选中记下一个区块的概率就越高,就像你往班级的公共基金里存的钱越多,大家越愿意让你当财务,因为如果你作弊,你自己的钱也会受损。 比如你持有1000个以太坊,被选中记区块的概率是0.1%,那你持有10000个,概率就是1%,如果你作弊,你手里的10000个以太坊会全部被罚没,所以你不会愿意作弊。
现在比特币网络已经运行了15年,从来没有被篡改过一笔交易,哪怕是最早的中本聪手里的比特币,也没人能转走。为什么?因为要篡改比特币的交易,你得控制超过51%的算力(对于PoW机制)或者权益(对于PoS机制),成本远远高于你能得到的收益,所以没人会这么做。
💡 实践小贴士
你可以自己试一下哈希值的特性:打开在线的SHA256生成器(比如`https://emn178.github.io/online-tools/sha256.html`),输入“我爱区块链”,看看生成的哈希值,然后把这句话改成“我爱区块链!”,你会发现哈希值完全不一样,哪怕只改了一个标点符号。这就是区块链不可篡改的核心基础。
---
1.2.3 可追溯:每一步都有“时间戳” / Traceability: Every Step Has a "Timestamp"
区块链的每一个区块都有时间戳,而且每个区块都链接着前一个区块,所以所有的交易记录都可以从第一个区块一直追溯到最后一个,就像你有一本从小学到现在的日记本,每一页都写了日期,你想找某一天发生了什么,一页一页翻就能找到。
我们拿公益捐款的例子来讲:2021年河南水灾的时候,很多公益组织用区块链做捐款溯源。你捐了100块钱,区块链上会生成一条唯一的记录,写着“2021-07-21 14:30,用户XXX捐100元,用于河南水灾救援”,然后这条记录会跟着捐款的流向一步步更新:“2021-07-21 16:00,捐款转到郑州慈善总会”,“2021-07-22 09:00,郑州慈善总会把50元用于购买矿泉水,20元用于购买方便面,30元用于购买帐篷”,每一笔钱花在哪里都能查,不会被贪污,也不会被挪用。
再拿你熟悉的游戏举例:如果你玩的链游里的皮肤是NFT,那这个皮肤从创建到到你手里,再到你卖给别人的所有记录都存在区块链上,你能看到这个皮肤之前是谁的,花了多少钱买的,有没有被修改过,不会买到别人用外挂刷出来的假皮肤。
---
1.3 动手实践:1小时搭建你的“班级区块链” / Hands-on Practice: Build Your "Class Blockchain" in 1 Hour
学完理论,最重要的就是动手实践。我们不需要写代码,用纸笔就能搭建一个最基础的区块链,让你直观理解区块链的运作逻辑。
实践准备 / Preparation
- 找10个同学组成一组,每个人就是区块链网络里的一个“节点”
- 每个人准备5张A4纸,用来模拟“区块”
-