您现在的位置是:首页 >其他 >一文读懂区块链:比特币、以太坊、智能合约、Web3.0都是什么?网站首页其他
一文读懂区块链:比特币、以太坊、智能合约、Web3.0都是什么?
区块链本质上是一种去中心化数据库,作用就是让许多人一起来存储同一些数据。区块链还具有安全性、不可篡改性、开放性等特征,使得这个数据库有了更多独特的用途。
- 一个不可篡改的数据库很适合存储交易数据——比特币的基础原理
- 一个开放安全的数据库很适合任何人按照一定规则写入或读取数据——以太坊、智能合约
- 一个去中心化的数据库可以有效打破互联网公司的垄断——Web3.0畅想
区块链通过自身数据结构,加密技术,共识机制来实现这些特质。接下来本文将结合实例详细讲解这些技术。
一、区块链原理
1. 数据结构
区块链实际上是一个链表,只要知道最后一个区块,就可以通过区块上的指针回溯找到所有的区块。区块中的数据并非单独存储在某个公司的服务器里,而是可以存储在世界上任何位置。区块链通过加密技术来确保存储在各个地方的数据的有效性。
区块链指向前驱的指针是一个哈希值,这个哈希值还可以用来验证数据有效性
2. 加密技术
哈希函数(Hash Function)是一种将任意长度的输入数据映射为固定长度输出的算法。它的输出通常称为哈希值,具有几个重要特性:
- 哈希函数是单向的,也就是说从哈希值无法推算出原始数据;
- 即使输入数据有微小变化,输出的哈希值也会发生剧烈变化,这种特性称为“雪崩效应”;
- 哈希函数的输出值具有均匀分布,碰撞概率极低。
比如我可以将“Hello, I’m Captain Chen.”使用SHA256算法得到哈希值:
60c3b956711f399e8578b3212818d70227699fd60f6377a6c61a120b3cae05df
。并且通过这个毫无规律的哈希值完全无法计算得到原来的字符串。
如果稍微变动一下字符串“Hello, I’m Captain Chun.”,得到的哈希值就会变为56ef6967fbee15313e1f4be262fcb9b8fa53dc94e7fd1749e8a8c81f1f162964
,这就完全不一样了
哈希函数在区块链中扮演着至关重要的角色,确保数据的完整性和安全性。
由于区块链的去中心化特性,区块链可能存储在世界上任何位置。可以一些区块存在服务器A,一些区块存储在服务器B,或者一些区块在许多台存储器上都有存储。那么如何保证存储的数据是真实有效的,没有被人篡改过?
当你想要查询某个区块里的数据,你首先会获得一个哈希值(可能来自后继区块的指针),然后你去网络上查找到某个服务器存储有这个区块的数据,你使用这个存储的数据计算他的哈希值。
由于哈希函数的特性,服务器上存储的数据必须与区块创建者的数据一模一样,才能使得计算出来的哈希值和你手上本来就有的哈希值一致,这就验证了区块数据的有效性。
区块中存储的数据往往与真实世界中的用户有关,比如交易信息。如果仅仅在区块中写一条数据:
“Alice在2月3日转账15元钱给Bob”
即使使用哈希函数验证了有效性,我们也无法确定是否真的是Alice给Bob进行了转账。如果是Bob自己在区块链上写了这一条记录,那么Alice岂不是被莫名其妙偷走了15元钱?
为了解决这个问题,我们需要使用非对称加密、数字签名技术
非对称加密(Asymmetric Encryption),也称为公钥加密,是一种加密算法,它使用一对密钥:公钥和私钥。公钥用于加密数据,而私钥用于解密数据。公钥可以公开分享,而私钥则必须保密。这样,任何人都可以使用公钥加密消息,但只有持有对应私钥的人才能解密。
数字签名是一种用于验证信息真实性和完整性的技术,它结合了哈希函数和非对称加密。数字签名的基本原理是:首先,发送方通过哈希函数将消息内容生成一个固定长度的哈希值,然后使用自己的私钥对这个哈希值进行加密,生成数字签名。接收方收到消息后,使用发送方的公钥对数字签名进行解密,得到哈希值,并与收到的消息重新计算出的哈希值进行比对。如果两个哈希值一致,说明消息未被篡改,并且确实是由拥有私钥的发送方发出的,发送方也不能否认这条信息。
利用数字签名技术,Alice首先计算信息*“Alice在2月3日转账15元钱给Bob”*的哈希值,然后使用Alice的私钥对这个哈希值加密,称作签名。将这条信息和签名一起写入区块中。
之后的查询者就很容易通过签名确认这条交易信息一定是Alice写入的,并且Alice不能抵赖这条信息。
3. 共识机制
加密技术能够确保区块链已有的数据不被篡改,能够确保关键信息的安全性和不可抵赖性。但还没有一个机制来保障如何新加入区块。
由于区块链的去中心化特性,区块信息已经在全世界存储得到处都是,大家都有部分或者全部区块链的副本。如果人人都想往区块链的末尾添加自己的新区块,就没办法统一了。
共识机制就是用来解决这一问题。大家需要提前约定好一些固定的策略作为共识,用来选出大家认可的区块添加在区块链末尾。以后大家都按照约定好的策略进行操作。
PoW(Proof of Work,工作量证明)
PoW 是区块链中最早且最著名的共识机制,由比特币引入。其核心思想是通过计算能力的竞争来确保网络的安全性和去中心化。
PoW需要有“矿工”来参与区块链的维护,“矿工”们会争相计算一个与区块数据相关的复杂数学难题,最先完成计算的“矿工”获得将数据信息打包为区块,接在区块链末尾的权力,并获得一定奖励。
我们以比特币为例,详细介绍PoW的原理:
比特币的区块链存储的是比特币的交易数据,即存储某人在某时间对某人转账多少诸如此类信息,并存储相关签名以便于验证。
比特币的区块除了交易数据、前驱区块的哈希值,还有一个Nonce数字。由于哈希函数的雪崩效应,只需要变更Nonce数字,整个区块的哈希值就会发生剧烈变化。比特币的协议就是要求矿工找到一个Nonce数字,使得整个区块的哈希值的前若干位是0。
显然,要求越多位为0,找到正确的Nonce数字的难度就越大,需要枚举花费的时间也就越长(前 n n n为0的哈希值概率是 1 2 n frac 1 {2^n} 2n1,也就是期望枚举 2 n 2^n 2n次)。
比特币的协议会动态更新这个难度,使得区块生成的速度维持在10分钟左右。如果上一次的区块生成间隔时间小于10分钟,那么协议要求下一个区块的哈希值就需要更多位是零,从而延长区块生成时间。
比特币矿工首先需要收集网络中广播的交易信息,验证这些交易信息有效性(验证转账者的签名,验证转账者是否有足够的余额等),并将其加入“内存池”中。
矿工按照一定规则选择自己想要的交易数据(通常是手续费高的),将他们打包成区块,然后开始暴力枚举Nonce数字,不停的计算哈希值,直到找到一个Nonce数字,使得哈希值前缀0的个数满足要求,矿工立即广播这个区块,告诉大家自己完成了计算,已经将这个区块连接到区块链的末尾,声明自己获得了这个区块的比特币奖励。
此时其他矿工应该放弃目前区块的挖矿工作,并接着最新的区块进行下一个区块的挖矿。
PoW的工作需要满足以下几个性质:
- 解决复杂,但验证简单:寻找一个合适的Nonce使得区块哈希值满足要求需要枚举大量Nonce数字,需要庞大的算力和时间来完成,但验证其是否解决很简单,别人只需要将这个区块的数据和Nonce自己算一遍哈希值,看一看是否满足要求即可。
- 不可抄袭:由于区块中包含矿工自己的签名,需要用来声明自己获得挖矿奖励,每个矿工需要求解的Nonce是不同的,所以矿工不能拿别人解出来的Nonce值来冒充。
如果有矿工在别人先广播了之后,还要强行发布自己的区块怎么办呢?这就需要最长链原则,即大家约定总是将最长的链作为有效的链。
有了最长链原则,如果有恶意攻击者,想要添加不符合规则的非法交易,得不到大家的认同,就很难成长为最长的那一条链。
攻击者必须具有所有矿工一半以上的算力,才能成功造出一条最长链,篡改这个区块链,这几乎是不可能的。
PoW的安全系数很高,缺点也很明显,其计算的数学问题完全没有实际价值,造成了大量的算力资源浪费。并且由PoW衍生出来的代币(矿工奖励),其价值与使用代币交易的人几乎没有关系,只与矿工有关系,并不是一个理想的一般等价物货币。
PoS(Proof of Stake,权益证明)
PoS 是一种替代 PoW 的共识机制,通过持有代币的数量和时间(权益)来决定记账权,从而减少能源消耗并提高效率。也就是“谁钱多,谁有权力记账”。
PoS需要有“验证者”来维护区块链。验证者首先需要将一定的代币抵押,抵押的代币数量越多,时间越长,被选中为下一个区块的实际验证者概率越大。如果被选中的验证者作弊,或者被选中后没能即是完成验证工作,则其抵押的代币将会被全部或者部分销毁。
以太坊2.0采用的就是PoS。
验证者首先需要抵押一定的以太币(ETH)。当下一个区块需要构建时,根据公开的协议,大家会根据抵押代币权重,随机选出一位链上记录在线的验证者,验证者需要打包相关区块信息,验证信息有效性等工作,然后将这个区块广播。
接下来,没有被选中的验证者将对这个区块进行投票,如果大多数验证者认可这个区块是有效的,这个区块将被链接到区块链末尾,同时被选中验证者将获得奖励。如果区块没有通过投票,则证明被选中的验证者作弊或者失职,将会按照公开的协议进行惩罚,销毁全部或部分其抵押的代币。
PoS不需要大量的算力,不需要进行无意义的运算,效率显著提高。但PoS导致有钱人更容易获得权力,容易产生垄断,让有钱人更有钱。
DPoS(Delegated Proof of Stake,委托权益证明)
类似于PoS,但验证者不再随机选择,而是通过持有代币的人投票选择若干个验证者,让这些验证者轮流处理区块。
这种方法效率更高,但已经偏向中心化,容易出现操纵投票使自己变为验证者而获利的情况。
PoA(Proof of Authority,权威证明)
预先选择若干个验证者,让这些验证者轮流完成区块维护处理。
基本上就是一个中心化管理方法,一般不用于公开的链,而是用于小规模的私有链。
其他共识机制
还有很多共识机制,比如PBFT、PoSpace、PoET等,他们各有优劣,适用于不同的应用场景。
二、实例详解
接下来介绍几个应用区块链的几个比较火的概念
1. 比特币
比特币是一个基于区块链技术实现的虚拟货币。
由于区块链的去中心化特性,比特币不归属任何组织管理,也没有任何事物来保障其价值。
比特币的信用完全由区块链技术的安全性和矿工庞大的算力来维持。
如何发行?
对于任何基于区块链的虚拟货币,发行都必须要任何实体上的操作,也不需要自己运行任何程序。
只需要在网络上公开一个协议,只要大家按照协议内容自己操作,就能进行货币的交易,矿工获得奖励等操作,完成货币的发行。
比特币完全通过对维护比特币区块的矿工发放奖励来进行货币的发行。
比特币的协议规定,在最初的5年里,任何成功完成PoW将区块接入区块链的矿工,将会获得除了交易手续费以外的50个比特币。此后每隔4年,矿工完成PoW的额外奖励将会减半(获得25个,12.5个……)。
所以,比特币的总量是有限的。
记账:UTXO模型
比特币使用的是UTXO模型,这意味着比特币的区块链中,只记录比特币的交易信息,而不会记录每个人账户上的余额。
这意味着要确认某人现在持有多少比特币,必须找到他的交易信息,通过交易信息计算出他的余额。
如果交易信息只记录了某人交易的金额,那计算余额必须遍历整个区块链找出该人的所有交易,这无疑是非常消耗时间的。
于是比特币的协议使用了一种特殊的交易记录方式,每次交易必须花掉所有的比特币,但可以自己给自己转账。
交易记录为若干个输入和若干个输出。
假设Alice的比特币余额为20,这20个比特币的来源为Carol转给她10,Dave转给她10
现在Alice想转账15个给Bob,交易信息就会被记录为:
输入 | 输出 |
---|---|
10 BTC from Carol, id:xxx | 15 BTC to Bob |
10 BTC from Dave, id:xxx | 4.99 BTC to Alice |
这个交易信息的两个输入存储有之前两个交易的哈希值,方便查找验证。
每个输入必须严格对应上之前某个交易的输出。
同一个交易的输入和输出是存在差额的,这个差额将作为手续费打给处理这个交易并完成区块打包上链的矿工。
手续费越高越容易优先获得矿工的处理,交易的延迟也就越低。
矿工在处理区块交易数据时,会在区块中添加一条输入为“创世神”,输出为矿工自己的交易,其值应当恰好等于区块中其他交易的手续费加上当前时间完成区块上链可以获得的比特币奖励。
矿工接下来会尝试完成前文所说的PoW,如果竞争成功,就会将自己的区块打包上链,那么“创世神”给自己打钱的记录也就会被永久记录,自己也就获得了奖励。
比特币脚本
在前文中,一个交易信息被记录为若干个输入和若干个输出的形式,并且在输入输出中我们使用了名字来表示交易对象。
在实际情况,区块链并不知道每个人的名字,而是通过非对称加密技术中的公钥来确定身份。
实际上一个交易的输出被记录为锁定脚本,意思是谁能提供一组输入数据,使得脚本中的判断语句通过,谁就能获得这笔交易的比特币。这个输入数据,被称为解锁脚本
一般情况下我们会利用非对称加密技术来制作这个锁定脚本。脚本中会放入使用收款人的公钥的哈希值。脚本会要求解锁者提供自己的公钥和自己对这个交易输出信息处理过后的签名(解锁脚本)。只有解锁者使用自己的私钥完成签名,才能通过这个脚本的判断语句。
所以,对于一个交易记录,转账者必须使用自己的公钥和签名,解锁之前别人对自己的转账,作为自己的交易输入,然后在交易输出中写上自己的锁定脚本。
一般情况下,我们会按照大家约定好的标准编写锁定脚本,使用非对称加密技术使得转账到指定账户。
但确实不排除可以自己编写自己的解锁脚本,转账给符合条件的人。只不过不符合标准的交易很可能不受矿工欢迎,难以被最终记录在区块链上。
正因为有锁定和解锁需求,比特币实际上创造了一个简易的脚本语言,是一个基于堆栈的语言,并不是图灵完备的。
比如一比转账给Alice的锁定脚本可以写为:
OP_DUP OP_HASH160 <Alice Public Key Hash> OP_EQUAL OP_CHECKSIG
解锁脚本写为:<Alice Signature> <Alice Public Key>
将脚本连起来,将会在堆栈中运行。从左往右,遇到数据则压入堆栈,遇到运算符,则从堆栈顶弹出若干个数据执行这个运算符运算,并将运算结果放入堆栈顶。
上面的解锁脚本和锁定脚本连起来后,首先将签名和公钥放入堆栈。OP_DUP运算符表示复制,执行完成后堆栈变为:
<Alice Signature> <Alice Public Key> <Alice Public Key>
执行OP_HASH160变为:
<Alice Signature> <Alice Public Key> <Alice Public Key Hash>
然后压入一个<Alice Public Key Hash>
,再通过OP_EQUAL验证是否相等,如果相等则删除,堆栈变为:
<Alice Signature> <Alice Public Key>
最后使用公钥验证签名,如果成功则放入返回值,堆栈变为:
TRUE
整个脚本运行完毕,结果为TRUE,说明这个交易的输出解锁完毕,可以作为输入记录到另一个交易中。
比特币共识机制:PoW
比特币使用工作量证明作为共识机制,已在前文讲述,这里不再赘述。
2. 以太坊和智能合约
由于比特币给的脚本是一个图灵不完备的脚本语言,导致比特币的区块链除了交易比特币几乎没有其他作用。于是以太坊出现了,以太坊提供了一个图灵完备的脚本语言,通过区块链的机制使得开发去中心化应用成为可能。
以太坊是一个开源的、去中心化的区块链平台,由程序员 Vitalik Buterin 于2015年正式推出。它不仅支持加密货币(ETH),还通过智能合约实现了去中心化应用(DApps)的开发和运行。
以太坊被誉为“世界计算机”,是区块链2.0时代的代表。
合约代码执行的代价:gas
区块链本质是一个去中心化数据库。去中心化,也就意味着需要许多人一起来存储数据,更新数据等工作来维护这个数据库。
在区块链上运行的代码,被称作智能合约。智能合约需要所有参与维护这个区块链数据库的人都来执行这个它的代码,并在区块链上更新相关的数据等,这些活动都需要付出计算力。那么使用这个合约的人就应该支付给维护区块链的人一定的代价,并且合约越复杂,代价就应该越高。
在以太坊,衡量合约复杂程度的单位就是gas,代价就是ETH。
类似比特币,以太坊设计了一种脚本语言。与比特币不同的是,以太坊脚本是一个图灵完备的脚本语言,可以编写任何功能的应用。这个语言中,每种语句都对应一个Gas代价,例如:ADD 消耗 3 Gas,SSTORE 存储数据消耗 20,000 Gas(毕竟存储数据需要验证者备好一个永久的存储器一直帮你存储,这还是挺贵的)。
脚本的使用者在发布自己的使用需求时,需要广播自己需要执行的代码,并公布自己预估代码需要消耗的Gas上限,称为Gas Limit;还要公布自己愿意支付的单位Gas代价Gas Price,即每单位Gas愿意支付多少ETH。
这段代码最终需要多少Gas,一般需要执行完成才能知道,不容易提前算出来,所以要设置一个Gas Limit。
脚本使用者需要提前准备好Gas Limit × Gas Price的ETH在钱包中,以便转账给以太坊验证者。
以太坊的维护者收到别人广播的代码执行需求后,如果他觉得这段代码的Gas Price很高,就会在自己的以太坊虚拟机中运行这段代码,并声称自己完成了工作,获得了这个代码的Gas手续费,将结果打包上链。
以太坊共识机制
以太坊最初使用的是PoW工作量证明,需要使用矿工挖矿。
在2022年,以太坊2.0引入了PoS权益证明,大大提高了运行效率。
这两种共识机制已在前文详细解释,这里不再赘述。
以太坊账户模型
以太坊不像比特币一样使用的UTXO模型,而是直接使用特殊的数据结构——默克尔帕特里夏树(Merkle Patricia Trie)存储每个账户的余额。
默克尔树是一种二叉树,其中每个叶子节点存储账户余额等数据的哈希值,而非叶子节点存储其子节点哈希值的组合哈希。
当发生交易时,需要修改一些账户的余额。若修改 Leaf1 的数据,只需更新 Node A 和 Root 的哈希,而 Node B 和其子节点保持不变。
Root (Hash1)
/
Node A (HashA) Node B (HashB)
/ /
Leaf1 Leaf2 Leaf3 Leaf4
由于二叉树的性质,最多只有对数级的节点需要更改。
以太坊的区块使用增量更新,新的区块仅存储状态树发生变化的部分,确保了账户更新的快速,并且能够得到安全有效的验证。
除了以太坊……
以太坊实现了一个可以运行任何功能的智能合约的系统,为世界计算机奠定了基础。
在此之后,又有许多类似以太坊的区块链涌现出来,他们各有优劣。
Solana
Solana被设计为极其高效的区块链,能够处理每秒数千笔交易(目前大约65,000 TPS,理论上可扩展到百万级别)。因为其使用比较独特的共识机制——PoH(Proof of History, 历史证明)。Solana交易费用也非常低,通常低于0.01美元。
但是由于Solana的高性能要求,节点的运行成本较高,这导致参与者的门槛相对较高,从而影响了其去中心化程度。
Solana也曾发生过几次网络停摆事件,这引发了对其安全性的担忧。
Cardano
Cardano由以太坊的共同创始人 Charles Hoskinson 推出的智能合约平台,采用PoS机制。Cardano 强调科学研究和学术验证,但也因此发展缓慢。
Binance Smart Chain (BSC)
BSC由加密交易所 Binance 推出的一个高性能区块链平台。它兼容以太坊智能合约,支持更快的交易处理和较低的交易费用,使用DPoS共识机制。但它与中心化交易所的关系较为密切,导致它在去中心化和安全性方面的争议较多。
3. 智能合约的应用
既然以太坊的脚本能够编写任何功能,目前已有许多许多用以太坊为基础的应用。
代币发行与管理
ERC-20 代币:
创建符合 ERC-20 标准的代币,用于支付、投资或治理。许多 DeFi 项目和加密货币都基于 ERC-20 标准。例如,USDT(Tether)、DAI(MakerDAO)、LINK(Chainlink)。
ERC-721 和 ERC-1155 代币:
用于创建非同质化代币(NFT),适用于数字艺术、游戏资产、收藏品等领域。
传统的货币属于同质化货币,比如现实中存在的各种法币。你手上的1元和别人手上的1元是完全一样的,没有区别。而非同质化代币(NFT)更类似于收藏品,每一个都是独一无二的。
NFT具有以下特性:
- 唯一性:每个 NFT都是独一无二的,它们通常带有独特的标识符(如数字签名、元数据、区块链上的哈希值等),确保其真实性和独特性。
- 不可分割性:NFT 不能像比特币一样被分割成更小的单位。例如,你不能拥有某个 NFT 的一部分,只能拥有整个 NFT。
- 所有权和可追溯性:每个 NFT 都有明确的所有权记录,这些记录被保存在区块链上,任何人都可以追溯该 NFT的历史。
- 不可篡改:一旦 NFT 被铸造,它的信息、所有权等就被永久记录在区块链上,不可更改。
ERC-721标准的NFT只能被一个人拥有,类似于实体的收藏品。而ERC-1155可以被多个人拥有,比如可以将一副图片授权给多个买家使用。
去中心化金融(DeFi)
基于以太坊用智能合约可以提供各种传统金融服务,如借贷、交易、衍生品、资产管理等。例如:
- Uniswap,去中心化交易所(DEX)
功能:Uniswap 是一个基于以太坊的去中心化交易平台,它使用自动化做市商(AMM)机制来允许用户在没有传统订单簿的情况下交换ERC-20代币。交易对的流动性由用户提供,他们将代币存入流动性池中,作为交易费用的奖励。
举例:假设你持有ETH和USDT,如果你想交换ETH为USDT,你可以直接在Uniswap上进行,而不需要通过中心化交易所。Uniswap自动计算并执行兑换,手续费较低,且不需要信任中介。 - Aave,去中心化借贷协议
功能:Aave允许用户借入和借出加密资产。用户通过存入加密资产获得利息收益,借款人则支付利息。Aave的特色在于其创新的“闪电贷”功能,允许用户在一个交易区块内无抵押借贷并偿还。
举例:假设你拥有ETH,并将其存入Aave平台进行借贷。你可以在Aave上赚取ETH存款利息,或者你也可以选择借入其他加密货币如DAI、USDC来进行投资。你需要支付利息,利率会根据市场供需动态调整。 - MakerDAO,去中心化稳定币协议
功能:MakerDAO是一个基于以太坊的去中心化平台,通过智能合约发行和管理稳定币DAI。用户可以将ETH等加密资产抵押在MakerDAO的智能合约中,以生成DAI稳定币,DAI通常与美元1:1挂钩。MakerDAO也提供治理机制,允许代币持有者对系统的更新和决策进行投票。
举例:你拥有ETH,并希望避免其价格波动的风险。你将ETH存入MakerDAO的智能合约中并创建DAI稳定币,然后可以将这些DAI用于交易、支付或投资。系统会自动保证DAI的稳定价值,并在必要时进行清算。
去中心化自治组织(DAO)
DAO(去中心化自治组织,Decentralized Autonomous Organization)是一种基于区块链技术的组织形式,它依靠智能合约和去中心化的网络架构进行自我管理和决策,而不依赖于传统的中央管理或领导者。DAO的核心特点是通过区块链和加密代币来激励参与者共同治理,从而实现去中心化的决策和组织管理。
DAO的所有行动,例如管理组织的规则、资金流动、投票、提案等,都需要基于智能合约。这意味着组织的任何行动都会去中心化地被执行,不再依赖核心管理层。
例如:DAO的成员提议使用一定比例的资金进行投资或资助某个项目,当提案通过后,智能合约会自动执行资金的转移,且所有操作都是公开和可验证的。
DAO通过去中心化的治理机制,将决策权分散给所有成员,而不是某个董事会等中心化组织。DAO的成员(通常是代币持有者)可以通过投票来决定组织的方向、资金的分配等重要事项。
例如:DAO的成员通过持有和使用组织的代币来参与治理。每个代币持有者根据所持代币的数量和投票机制的设计,能够对提案进行投票,决定是否执行某项决策。
DAO的所有操作都基于区块链,这意味着所有的交易、提案、投票和决策过程都是公开且可追溯的。区块链的不可篡改性和透明性保证了DAO在操作过程中不会被单方操控,且任何人都可以查看组织的账本和历史记录。这也一定程度防止了腐败的出现。
DAO具有去中心化民主、透明性、自动化等优势,但也有许多缺陷,比如过于分散的权力导致效率低下;自动化的智能合约可能存在BUG而遭到黑客攻击(2016年著名的The DAO攻击事件,黑客通过漏洞盗取了大量资金);投票参与度低,当民主权力过于分散,很多人就不愿意参与治理,从而导致组织无法发展。
由于DAO仍具有许多缺陷,目前大部分DAO组织的工作主要是金融投资领域,组织成员一起来决策对什么项目进行投资。例如:The DAO, MakerDAO.
目前也有少量其他项目的DAO,例如AavegotchiDAO(去中心化游戏治理,玩家通过Aavegotchi的NFT角色进行互动和治理。AavegotchiDAO使社区成员可以参与游戏内容、资产管理和平台发展等方面的决策,可以投票决定如何改进游戏机制、增加哪些新的Aavegotchi角色、调整奖励分配等)
去中心化内容平台
传统的内容平台,比如知乎、bilibili等,创作者依赖于一个中心化平台。平台通过推荐算法将内容推给用户,创作者可以在平台上提供免费或付费内容,收益一部分归平台,一部分归创作者。由于平台完全垄断了创作者的流量来源,导致平台可以肆意剥削创作者,甚至通过信息茧房、大数据杀熟剥削用户。
而基于区块链实现的去中心化内容平台可以一定程度解决这个问题。典型实例是Mirror.xyz
Mirror.xyz 是一个基于以太坊的去中心化内容创作和出版平台,旨在为创作者提供完全去中心化的工具,允许他们发布、管理和通过内容赚钱,而不依赖传统的中心化平台。
NFT化内容: Mirror支持将创作的文章、帖子或其他内容转化为非同质化代币(NFT)。这种做法不仅确保内容的唯一性和所有权,还让创作者可以直接通过出售内容的NFT获得收益。每篇文章或作品都可以生成一个NFT,并通过区块链记录其所有权和交易历史。
比如,一个博主发布了一篇文章,并将其转换为一个NFT。该NFT可以被用户购买、转售或收藏。创作者可以从NFT的销售中获得收益,甚至在文章转售后,通过智能合约获得二次销售的版税。
代币化内容: 在Mirror上,创作者可以通过代币化自己的内容和创作过程来获得经济奖励。创作者可以发行自己的代币,而这些代币可以被用来激励粉丝支持创作者、参与投票或购买特定的内容。这些代币可以用于创建一种忠诚度系统,支持长期的创作者-社区关系。
创作者经济与DAO: Mirror的创作者和粉丝可以通过去中心化的方式参与内容创作的决策和经济收益分配。通过DAO,创作者不仅能够与粉丝建立更深层次的关系,还能共同决策项目的未来方向和如何分配收益。
假设一位创作者希望启动一个新的项目或文章系列,他们可以发起一个DAO,让粉丝参与其中。DAO成员通过购买创作者发行的代币或NFT来参与决策,同时他们也能从项目的收益中分得一部分。
付费墙和订阅机制: Mirror提供了一个类似于传统内容平台的付费墙和订阅功能,但它的实现方式更加去中心化,允许创作者自己设定收费模式。创作者可以自由选择免费、部分免费或完全付费的模式来与他们的读者互动。
比如,创作者发布一篇文章,设置为“付费阅读”。用户需要通过支付一定数量的ETH才能访问该文章,Mirror会直接将支付转交给创作者。
去中心化物理基础设施网络(DePIN)
DePIN(Decentralized Physical Infrastructure Networks),主要指的是一种去中心化的物理基础设施网络。它将区块链技术与现实世界中的物理资产(如计算资源、存储资源、网络带宽、传感器等)相结合,旨在通过去中心化的方式重构传统物理基础设施的管理和运营模式。
比较典型的案例是io.net,其利用去中心化技术和利用分布式 GPU 资源,试图来解决 AI 和机器学习领域的算力问题。
io.net本身是一个中心化平台,用户可以在这个平台上提供自己的GPU资源作为算力,也可以作为GPU资源的购买者购买算力。平台会通过智能调度算法,根据计算任务的需求、性能、地理位置等因素,动态分配资源,最大化计算效率。
任何持有GPU的用户都可以运行io.net提供的开源程序,为算力需求者提供服务(训练AI)。当提供的算力服务经过验证后,提供者可以获得IO代币奖励。
而算力需求者则需要支付IO代币来获取服务。
供应链管理
在实体商品生产消费领域,有许多参与者:供应商、制造商、分销商、零售商、物流公司、消费者。
传统的供应链模式中,要么根本不会记录商品的来源和流向,要么记录掌握在少部分企业中,安全性得不到保障。
如果商品质量出现问题,难以查找到问题的根源。
而且劳动者的劳动经常得不到证明,容易被信息掌控者篡改,更加加剧了剥削。
使用区块链、智能合约技术可以有效解决这些问题。
供应链的数据可以来源于人工标注或者相关物联网设备,比如人工或自动标注产品生产日期,生产某环节执行的工人ID,物流信息等。
这些信息往往来源于不同的企业或者用户,他们需要使用共同的区块链上传数据,并根据区块链的共识机制,由矿工/验证者打包上链。
这些信息一旦上链,由于其去中心化特性,信息不可被篡改,消费者可以随时查询商品生产细节,劳动者也随时可以查询到自己的劳动证明。
目前已有许多供应链管理的区块链,但由于其数据的特殊性,目前主要使用联盟链而非公有链的形式。比如IBM Food Trust,Aura(奢侈品防伪)等。
比特币、以太坊等都是公有链,任何人创建公钥私钥就可以直接加入这个链进行各种活动。
联盟链一般由几个企业组成,需要审核后才能加入。
三、Web3.0
- Web1.0:静态网页为主,网站内容由中心化的组织创作,用户只能访问。
- Web2.0:网站掌握在中心化平台手中,但用户可以借助平台生产内容,平台控制所有内容,平台决定如何展示这些内容。例如现在的抖音、Bilibili、知乎、CSDN、Youtube等。
- Web3.0:用户自己创作内容,自己控制自己的内容,不再依赖于平台进行创作
我们目前处于Web2.0阶段,虽然互联网上已经有庞大的创作者群体百花齐放,但大量的创作内容被掌控在垄断巨头互联网企业手中。这些巨头公司使用自己的推荐算法决定了内容是否被展示,决定了每个人能看到哪些内容。巨头企业垄断信息媒体的同时,通过广告买量获得巨额收益,是当今世界不平等的根源之一。
Web3.0旨在实现一个用户能够自己掌握自己的创作内容的互联网环境。设想一下,每一个用户只需要创作一些内容,并自己决定是否公开即可。创作内容将被使用区块链技术存储在世界各地,并且由于区块链的特性,一定能够追述到创作内容的创作者,整个世界都将记住这个内容是由你创作的。
当劳动者掌握了自己的劳动成果,一定程度就能避免垄断企业的剥削。互联网用户能够更加容易找到自己想要的内容,创作者也更容易获得应有的收益。
实现Web3.0的关键技术就是区块链。
- 通过智能合约,我们能在Web3.0实现去中心化的网络应用(DApp)。DApp不依赖于一个中心化企业来运营,其可以运行在任何计算机上,通过共识机制来确保一致性,避免了企业的垄断。
- 使用类似NFT的机制,可以让创作者自由交易创作内容,并且能够永久保留内容的创作来源,确保了创作者的相关权益。
- 通过非对称加密的公钥私钥,可以实现Web3钱包。用户只需要一个私钥就可以掌控Web3中的自己的创作内容,便于移植。
目前,大环境对区块链、Web3.0的关注基本都被虚拟币市场吸引住了,大家总是以为区块链、Web3.0=炒币=投机分子。而虚拟币市场确实被许多****分子搞得个乌烟瘴气,使得真正怀有理想的人根本得不到关注,一定程度阻碍了这一技术的发展。