第一章:掉进兔子洞!第一次见到区块链小精灵 / Chapter 1: Down the Rabbit Hole! Meet the Blockchain Sprites
周一的晨读课上,你的同桌小满突然凑过来,气得脸颊鼓鼓的,像塞了两个刚蒸好的小馒头:“我的限量版赛罗奥特曼卡,上周借给小明了,他今天居然说根本没这回事!” 你刚想帮小满说话,班长小红也举着记账本站了起来,眉头皱成了小波浪:“上周春游大家凑钱买的跳跳糖,我记的账是每个人出5块钱,一共8个人,应该是40块,怎么现在只剩35块了?是不是有人记错了?” 教室里一下子闹哄哄的,大家你一言我一语,吵得连走廊上的老师都探进了头:“哎呀,你们怎么又为了记账吵架啦?要不我们换一个记账的方法,保证以后再也没有人赖账,也不会记错账,好不好?” “什么方法这么神奇?”全班同学都竖起了耳朵,连刚才吵得最凶的小明都抬起了头。 老师神秘地眨眨眼:“这个方法啊,名字叫——区块链!” Wait a minute! 先别急着翻白眼说“又是那种大人说的我听不懂的黑科技”!你有没有过借了同学的自动铅笔忘记还,被误会是小偷的经历?有没有过和好朋友凑钱买漫画书,最后谁该看哪一期吵得面红耳赤?其实区块链不是什么藏在电脑里的神秘代码,它就像你们班全体同学一起记的一本超级账本,专门解决所有“赖账”“记错账”的麻烦。今天我们就一起掉进这个兔子洞,认识住在区块链里的小精灵们吧!
--- <!-- 纸书排版提示:此处插入跨页插图,左侧是教室里小朋友为记账吵架的场景,右侧是三个穿着彩色衣服的小精灵飞在黑板上的账本旁边,每个小精灵举着写有特性的小牌子 --> <!-- 电子版交互:点击插图里的小精灵,可以查看对应特性的动态演示动画 --> <!-- Markdown 语义标签:<section id="1-1" title="什么是班级共享区块链账本" level="2"> -->
什么是班级共享区块链账本?
以前的记账:只有班长有账本
在你们班以前的记账规则里,班长就是唯一的“记账员”。春游凑钱买零食、借铅笔、换玩具,所有交易都要告诉班长,班长记在自己的小本本上。要是班长记错了,比如把“小美借小红3支铅笔”记成“小美借小红5支铅笔”,或者偷偷把自己的那一页撕掉,大家都拿他没办法,这就是中心化记账——只有一个人管账,所有人都得信他。 > 📝 区块链小知识卡(中英双语) > 中心化记账就像只有一个裁判的运动会,裁判说谁赢谁就赢,要是裁判偏心,大家都不知道。 > Centralized bookkeeping is like a sports meet with only one referee. Whoever the referee says wins, wins. If the referee is biased, no one will know.
这种记账方法有个很大的问题:如果班长的账本丢了、被水泡了,或者班长转学了,那全班所有的账就都找不到了!去年你们班班长转学前忘了把春游的账本交给新班长,大家为了“谁当时有没有出跳跳糖的钱”吵了整整一周,你还记得吗?
现在的记账:全班每个人都有账本
老师说的“区块链记账”,就是换一种记账方法:不再只有班长一个人记账,而是全班每个同学都有一个一模一样的账本!不管是谁借了东西、凑了钱,都要告诉全班所有同学,大家确认这笔交易是真的(比如确实看到小美借了小红的铅笔),才会一起把这笔交易记在自己的账本上。 比如小美借了小红的3支铅笔,说好周五还,那么全班40个同学,每个人都会在自己的账本上写下一行字:“X月X日,小美借小红3支铅笔,归还日期X月X日”。就算小明的账本被水泡了,小刚的账本丢了,其他38个同学的账本都好好的,这笔交易永远不会丢! 这种“大家一起记账,每个人都有完整账本”的方法,就叫分布式记账,是区块链的第一个超级魔法。 ```mermaid graph TD A[班级共享区块链账本] --> B[小满的账本副本] A --> C[小明的账本副本] A --> D[小红的账本副本] A --> E[小刚的账本副本] A --> F[所有其他同学的账本副本] style A fill:#9cf,stroke:#333,stroke-width:2px style B fill:#f9f,stroke:#333,stroke-width:1px style C fill:#f9f,stroke:#333,stroke-width:1px style D fill:#f9f,stroke:#333,stroke-width:1px style E fill:#f9f,stroke:#333,stroke-width:1px style F fill:#f9f,stroke:#333,stroke-width:1px ``` > 💡 电子版侧边栏提示:点击上图可以查看动态演示,看全班同学一起记账的过程~ > 💡 Digital Edition Sidebar: Click the diagram above to watch the animation of the whole class bookkeeping together!
--- <!-- 纸书排版提示:此处插入「云朵精灵」卡通插图,云朵精灵举着“分布式记账”的牌子,周围飘着小账本 --> <!-- 电子版交互:点击云朵精灵可以听3分钟分布式记账的故事音频 --> <!-- Markdown 语义标签:<concept name="分布式记账" zh="分布式记账" en="distributed ledger" level="3"> -->
三大魔法特性1:分布式记账——云朵精灵的礼物
住在天上云朵里的云朵精灵,是三个小精灵里最活泼的一个,她最喜欢大家一起玩游戏,最讨厌有人“搞特殊”。以前看到小朋友因为记账吵架,她就想出来一个分布式记账的办法: “为什么要只有班长一个人记账呀?”云朵精灵托着腮帮子想,“如果全班每个小朋友都是记账员,大家一起记同一本账,就算有一个人记错了,其他39个人都能帮他纠正,多好呀!” 她给区块链账本加的第一个魔法就是:没有唯一的“大老板”记账,每个人都是平等的记账员。所有的交易都要经过全班一半以上的同学确认是真的,才能记到账本上。要是有人想造一笔假交易,比如假装“小美借了自己100块钱”,其他同学都会说“我没看到!这是假的!”,这笔交易就根本记不上去。 > 🧒 小朋友的例子: > 上次你们班大扫除,不是只有劳动委员一个人干活,而是每个人都有自己的分工:你擦黑板,小明扫地,小红摆桌椅,大家一起合作,半小时就把教室打扫得干干净净。分布式记账就像全班一起大扫除,每个人都是记账员,一起把账本记得清清楚楚,不会错,也不会丢。 > 🧒 Example for kids: > Last time your class did a big cleaning, it wasn’t just the labor committee member who worked. Everyone had their own job: you erased the blackboard, Xiao Ming swept the floor, Xiao Hong arranged the desks and chairs. Everyone worked together and cleaned the classroom spotless in half an hour. Distributed bookkeeping is like the whole class doing a big cleaning together. Everyone is a bookkeeper, and together they keep the account book clear and correct, without mistakes or loss.
云朵精灵的魔法还有一个好处:不会因为某一个人的账本丢了,就找不到所有的交易记录。就像你们一起搭积木,不是只有你一个人有积木,而是每个人都有全套的积木,就算你的积木被弟弟拿走扔了,其他人的积木都还在,你们照样能搭出一样的城堡。 > 📝 区块链小知识卡(中英双语) > 分布式记账的另一个名字叫“去中心化”,就是没有唯一的中心记账人,所有人都能参与记账。 > Another name for distributed bookkeeping is "decentralization", which means there is no single central bookkeeper, and everyone can participate in bookkeeping.
--- <!-- 纸书排版提示:此处插入「磐石精灵」卡通插图,磐石精灵长着石头一样的硬头发,举着“不可篡改”的牌子 --> <!-- 电子版交互:点击磐石精灵可以玩“改账本大挑战”小游戏,试试能不能改区块链账本 --> <!-- Markdown 语义标签:<concept name="不可篡改" zh="不可篡改" en="immutable" level="3"> -->
三大魔法特性2:不可篡改——磐石精灵的守护
住在最高山顶上的磐石精灵,是三个小精灵里最“固执”的一个,他的脸像石头一样硬,最讨厌别人撒谎,最恨别人改账本。 “云朵精灵做的账本虽然好,但是要是有坏人偷偷改自己的账本怎么办?”磐石精灵挠着石头一样的脑袋想,“我要加一个魔法,让所有人都改不了账本!” 他给区块链账本加的第二个魔法,就是不可篡改——只要交易记到了账本上,就永远改不了。这个魔法是怎么做到的呢?磐石精灵给每一页账(区块链里叫“区块”)都加了一个专属的魔法指纹(专业术语叫“哈希值”,英文是Hash)。 这个魔法指纹非常神奇:它是根据这一页账里的所有内容算出来的一个独一无二的“密码”。只要这一页里的内容变了一点点,哪怕只是把“3支铅笔”改成“2支铅笔”,或者把“5块钱”改成“6块钱”,魔法指纹就会完全变掉,变成另一个完全不一样的密码。 而且更厉害的是,每一页账的魔法指纹,还会和上一页账的魔法指纹连在一起,像锁链一样串起来,这就是“区块链”名字的由来——区块(账页)+ 链(连在一起的指纹)= 区块链。 ```mermaid sequenceDiagram participant 小刚 as 小刚(想改账本) participant 小满 as 小满 participant 小明 as 小明 participant 小红 as 小红 小刚->>小刚: 把自己的账本改成“小美没借3支铅笔” 小刚->>小满: 给我看看你的账本 小满->>小刚: 我的账本上写着“X月X日,小美借小红3支铅笔,周五还”,魔法指纹是“A1B2C3” 小刚->>小明: 给我看看你的账本 小明->>小刚: 我的账本上也写着一样的!魔法指纹也是“A1B2C3” 小刚->>小红: 给我看看你的账本 小红->>小刚: 我的账本当然也记着!你的账本指纹怎么是“D4E5F6”?你改账了! 小刚-->>小刚: 呜呜,改账本失败了 ``` > 🧒 小朋友的例子: > 你拼乐高的时候,每一块乐高都有凸起和凹槽,只有凹槽和凸起对得上才能拼在一起。区块链的魔法指纹就像乐高的凹槽和凸起,只要有一块拼错了,后面所有的都拼不上,所有人一眼就能看出来。要是你想偷偷改一块乐高的形状,那后面所有的乐高都拼不上了,根本没用。 > 🧒 Example for kids: > When you build with LEGO, every brick has bumps and holes, and they only fit together if the holes and bumps match. The magic fingerprint of blockchain is like the holes and bumps of LEGO. If one brick is put on wrong, all the following ones won’t fit, and everyone can see it at a glance. If you secretly change the shape of a brick, all the following bricks won’t fit, so it’s completely useless.
磐石精灵的魔法还有一个超级厉害的地方:要改区块链上的账,你不仅要改自己手里的账本,还要改全班一半以上同学的账本,这根本不可能做到!就像你想改全班的大扫除分工表,你不能只改你自己手里的那一张,还要改其他39个同学手里的所有分工表,等你改完,大扫除都结束了,根本没用。 > 💡 电子版侧边栏提示:你知道吗?现在全世界有超过1万个比特币节点,每个节点都存着一份完整的比特币区块链账本,要想改比特币的交易记录,需要同时改超过5000个节点的账本,根本不可能做到哦! > 💡 Digital Edition Sidebar: Did you know? There are more than 10,000 Bitcoin nodes around the world, and each node stores a full copy of the Bitcoin blockchain ledger. To tamper with Bitcoin transaction records, you need to change the ledgers of more than 5,000 nodes at the same time, which is simply impossible!
--- <!-- 纸书排版提示:此处插入「水晶精灵」卡通插图,水晶精灵全身透明,举着“公开透明”的牌子,账本上的内容所有人都能看到 --> <!-- 电子版交互:点击水晶精灵可以查看区块链账本的公开透明演示,看看怎么保护隐私 --> <!-- Markdown 语义标签:<concept name="公开透明" zh="公开透明" en="transparent" level="3"> -->
三大魔法特性3:公开透明——水晶精灵的魔法
住在水晶宫里的水晶精灵,是三个小精灵里最漂亮的一个,她全身都是透明的,连影子都是亮晶晶的,最讨厌别人藏着掖着。 “云朵和磐石的魔法都很好,但是要是有人不想让别人看到自己的交易怎么办?”水晶精灵托着透明的下巴想,“我要加一个魔法,让所有人都能查账,但是又能保护大家的隐私!” 她给区块链账本加的第三个魔法,就是公开透明:区块链上的所有交易记录,所有人都能看,但是你可以用“化名”代替真名。比如小美借了小红的3支铅笔,不用写“三年级2班的小美借三年级2班的小红的3支铅笔”,可以写“A同学借B同学3支铅笔”,其他人只知道有这笔交易,但是不知道具体是谁,除非当事人自己说出来。 > 🧒 小朋友的例子: > 你们班的班级日志就是公开透明的,所有人都能看到谁什么时候做了什么好事,谁被老师表扬了,但是你不会在日志里写“我今天偷偷吃了两块糖”,因为这是你的小秘密,你不用告诉别人。区块链的公开透明也是一样的,你想让别人知道的交易就记上去,不想让别人知道的隐私,就可以用化名,别人不会知道是你。 > 🧒 Example for kids: > Your class log is public and transparent, and everyone can see who did something good and who was praised by the teacher at what time, but you won’t write "I secretly ate two pieces of candy today" in the log, because this is your little secret, you don’t have to tell others. The transparency of blockchain is the same. You can record the transactions you want others to know, and you can use a pseudonym for the privacy you don’t want others to know, so others won’t know it’s you.
水晶精灵的魔法还有一个好处:所有人都能查账,不用求着记账的人给你看。比如你想知道上次春游大家凑钱买的零食一共花了多少钱,不用去问班长,也不用怕班长不告诉你,你自己翻开区块链账本就能看到所有的交易记录,清清楚楚,没人能偷偷藏私房钱,也没人能赖账。 > 📝 区块链小知识卡(中英双语) > 公开透明不代表没有隐私哦,你可以用加密的化名来保护自己的信息,就像你戴上面具参加化装舞会,别人能看到你在跳舞,但是不知道你是谁。 > Transparency does not mean no privacy. You can use encrypted pseudonyms to protect your information, just like you wear a mask to a masquerade. Others can see you dancing, but they don’t know who you are.
--- <!-- 纸书排版提示:此处插入「班级春游凑钱」的小插图,小朋友围在一起看区块链账本 --> <!-- 电子版交互:点击插图可以查看班级记账本的动态演示动画,看大家怎么一起记账 --> <!-- Markdown 语义标签:<case id="1" title="班级春游记账小案例" level="2"> -->
真实小案例:春游记账再也不吵架
上次你们班春游,8个小朋友凑钱买零食,以前用中心化记账的时候,班长记错了账,大家吵了半天,最后发现是班长把“小刚出5块”记成了“小刚出3块”,白白吵了一架。这次用了区块链记账之后,再也没有出现过吵架的情况: 1. 凑钱的时候,每个小朋友把钱交给生活委员,生活委员当着全班同学的面说:“现在一共收了40块钱,每个人出5块”,全班同学都在自己的账本上记下这笔交易,确认钱数没错。 2. 买零食的时候,生活委员花了18块买薯片,当着全班的面说:“现在花了18块买薯片,剩22块”,全班同学都在账本上记下这笔支出。 3. 最后剩下的2块钱买了两根棒棒糖,给当天过生日的小美,全班同学都在账本上记下这笔支出。 最后算账的时候,每个人翻自己的账本,一加就知道:一共收40,花了18+2,剩20,每个人出5块,一分钱都不差,根本不用吵架! > 🤔 小思考(中英双语)