说起web3,有几个相关的概念不得不提起,那就是比特币、区块链、元宇宙。作为一名IT领域的从业者,大约在17年左右还在学校的时候了解到区块链技术,以及以比特币为代表的加密货币,彼时距离比特币被发明出来已有九年之久。而web3概念更多的是对去中心化的一种泛化,乃至于通过去中心化为代表的一系列技术,包括AR/VR等创造出整个虚拟世界,也就是元宇宙概念。最近打算较为详尽的了解学习下web3,以期望在web2红利已经殆尽的当前,能够拓宽自己的职业之路。

Web 1.0/2.0/3.0

之所以被称为web3,那是相较于web1.0/2.0来说的。web1.0是以雅虎一类的门户网站为代表的静态网站,它的典型特点就是只读;web2.0被称为移动互联网,相较于1.0版本来说,网络内容支持读写,交互能力大大增强,用户数据被存储在中心化服务器之上;而web3相较于2.0版本,其典型特点就是数据的去中心化,不可篡改和可拥有。


密码学(Cryptograph)

Kerckhoff’s Principle:

  • 对于一个密码学系统,应当仅有秘钥是保密的,其余算法和一切参数都应该是公开的
  • 并不一定要理论上完全不可破解,只要实际不可破解即可

加密算法分类:

  • 对称加密算法:DES、AES、PRG等,优点是效率高,缺点是需要双方实现共享秘钥
  • 非对称加密算法:RSA、ECC、ECDSA等;公钥加密,私钥解密,私钥签名,公钥验签;缺点是效率较低

哈希算法:消息摘要算法(Message Digest)

钱包地址:本质上是一个公私钥对 交易:将交易信息先哈希得到摘要,然后在通过钱包对应的私钥进行签名


以太坊和Layer2

现有以太坊不能很好的支持DApp的蓬勃发展,所以需要Layer2来对多个链上交易进行打包后集中处理,以期望提高操作的吞吐率。(Layer2 scaling solutions on ethereum)

Layer2包括很多种方案,比如sidechains,rollups等

optimistic rollup: 乐观的任务交易没有问题,但是有挑战期

  • 优点:技术成熟,易于实现
  • 缺点:挑战期过长(长达一到两周),用户体验差;要求社区里有足够的挑战者来验证rollup区块的合法性并且在挑战期结束前及时提交欺诈证明

zk-rollup: 利用零知识证明保证交易的有效性

  • 优点:不需要挑战期
  • 缺点:通用计算能力较差

zk-SNARK算法的应用:

  • Zcash
  • Filecoin

zk-rollup项目:

  • zkSync based on zk-SNARK
  • StarkWare based on zk-STARK

智能合约(Smart Contract)

DeFi

DEX: AMM in Uniswap??? How it works?

去中心化借贷:AAVE

Stablecoin

Web3法律风险

发币、集资

Web3的缺点

  • 交易费用高: layer2 scaling
  • 使用门槛高: 更易用的钱包等
  • 用户教育:
  • 依赖中心化基础设施,比如:Github, Twitter, Discord, etc.