0x00 前言
为什么会想到要写本文呢,其实是博主最近一直混迹于币圈,最近在一个新的pow项目中获得了收益,于是一方面是想让更多人了解到区块链这个技术,还要虚拟货币市场的简单概述,另一方面是想历练自己,更加系统的学习区块链这个新兴乃至未来主流的技术。
0x01 什么是区块链?
“区块链(英语:blockchain[1][2][3]或block chain[4][5])是借由密码学[1][6]与共识机制等技术建立与存储庞大交易资料链的点对点网络系统。每一个区块包含了前一个区块的加密散列、相应时间戳记以及交易资料(通常用默克尔树(Merkle tree)算法计算的散列值表示)[7],这样的设计使得区块内容具有难以篡改的特性。但如果掌握区块链节点51%以上的运算力,就能操控区块链的内容。如果一开始写入的内容是错误的内容,那么区块链技术只是让错误的内容难以被篡改。[8]目前区块链技术最大的应用是加密货币,例如比特币的发明。因为支付的本质是“将账户A中减少的金额增加到账户B中”。如果人们有一本公共账簿,记录了所有的账户至今为止的所有交易,那么对于任何一个账户,人们都可以计算出它当前拥有的金额数量。而公共区块链(公有链)恰恰是用于实现这个目的的公共账簿。在比特币体系中,比特币地址相当于账户,比特币数量相当于金额。[9]”
维基百科是这样解释的。
区块链的基本构成就是“区块”和“链”。简单来说:
区块:是存储数据的单位,里面包含了交易信息、时间戳和前一个区块的哈希值等。每个区块在数据量满了之后就会被“打包”成一个新的区块。
链:是指多个区块通过哈希值链接在一起,形成一个连续的、不可篡改的数据链。每个区块的哈希值是由前一个区块的哈希值生成的,这样确保了区块的顺序和数据的安全性。整体上,区块链就是一种去中心化的、透明的分布式数据库技术。
用借钱来解释区块链,场景可以这样理解:
1. 传统借钱方式(中心化):
假设你向朋友借了100元。你们可能会写一张借条,说明你欠了这笔钱。你和朋友都知道这个借条存在。如果有人怀疑,可能需要去找银行或第三方来证明你借钱的事实。
2. 区块链借钱方式(去中心化):
你向朋友借了100元,这笔交易会被记录在一个“区块”里。这笔借钱信息(比如你借了多少钱、什么时候借的、借了给谁)会被同时存储在很多人的账本上,也就是区块链的节点上。每个人都有一份完整的记录。这些记录不能被篡改,因为任何更改都会影响整个链条,其他人也会看到这些更改无效。每个人都有这些记录,所以你不需要一个银行或第三方来证明你借了钱,所有参与区块链网络的人都可以验证这笔交易的真实性。
这样,区块链的好处就在于:大家都能看到、验证和确认交易信息,减少了信任问题,且难以篡改。