

MoleEdu|中文课第二周 “Web3基建之周” 课程总结
00
引言
Moledao携手Alibaba Cloud发起了MoleEdu公益课程,涵盖加密学、隐私计算、DeFi、数字身份、DAO、安全合规等主题。第二周中文课圆满结束,让我们一起回顾本周知识,快速了解区块链技术的基本原理和应用场景,解锁区块链新篇章!

⬇️报名链接⬇️
https://wj.qq.com/s2/12755790/27b1/
01
课程回放

基建之周 | 公链与应用链技术
⬇️哔哩哔哩⬇️
https://www.bilibili.com/video/BV1au411H7Wi/
⬇️ Youtube⬇️
https://www.youtube.com/watch?v=Qi93M4VoewQ
基建之周 | 去中心化存储网络
⬇️哔哩哔哩⬇️
https://www.bilibili.com/video/BV1Xx4y1X7MU/
⬇️Youtube⬇️
https://www.youtube.com/watch?v=lzv7k7FYpb8
基建之周 | 跨链的核心
⬇️哔哩哔哩⬇️
https://www.bilibili.com/video/BV1eh4y1w7Dn/
⬇️Youtube⬇️
https://www.youtube.com/watch?v=7BsADkt9xM4
基建之周 | 中心化云服务与 web3
⬇️哔哩哔哩⬇️
https://www.bilibili.com/video/BV1RM4y1H7q2/
⬇️Youtube⬇️
https://www.youtube.com/watch?v=MQ6t0ORtG6c
02
优秀学员
第二周优秀学员共计10位,他们分别是:
Andy,新明, 张张,Gwendol,童雅婷,Aaron,Kei Liu 刘佳洁,Fris,颜洪斌,sj
请上述同学留意邮箱信件,我们会在8.12前发送到同学们的邮箱当中!
03
笔记速递
7月31日课程:公链与应用链技术
01 什么是公链?
公链也称“公有链”,而公有链是指全世界任何人都可读取、发送交易且交易能获得有效确认的、也可以参与其中共识过程的区块链。
根据区块链网络中心化程度的不同,分化出3种不同应用场景下的区块链:
•全网公开,无用户授权机制的区块链,称为公有链;
•允许授权的节点加人网络,可根据权限查看信息,往往被用于机构间的区块链,称为联盟链或行业链;
•所有网络中的节点都掌握在一家机构手中,称为私有链。
公链目前所面临的挑战:安全性、用户体验、可扩展性、合规、互操作性和标准化、低成本及可持续
02 区块链技术的基础举例
哈希函数指将哈希表中元素的关键键值映射为元素存储位置的函数。如下图所示,它具有不可反推出源数据,独一无二的存在以及无碰撞的特性,但现在尚无数学证明。

Merkel树是数据结构链表。它是由不同数据块的散列组成的数学数据结构,用作块中所有交易的摘要。这种结构有助于验证数据的一致性和内容,能够防止篡改,也被称为哈希树。
从根本上说,Merkle树中每个叶节点都用数据块的哈希标记,非叶节点用加密标记其子节点标签的哈希值。叶节点是树中的最低节点,如下图所示。
公私钥对配对过程举例:比如有两个用户Bob和Alice,Bob想把一段明文通过双钥加密的技术发送给Alice,Alice有一对公钥和私钥,那么加密解密的过程如下:
•Alice将他的公开密钥传送给Bob;
•Bob用Alice的公开密钥加密她的消息,然后传送给Alice;
•Alice用他的私人密钥解密Bob的消息。
总结来说:公钥和私钥是成对的,它们互相解密。用公钥加密,私钥解密。私钥用来数字签名,公钥用来验证。 上面的过程可以用下图表示,Bob使用Alice的公钥进行加密,Alice用自己的私钥进行解密。
交易(Transaction)是指在区块链系统中,用户之间发生的一笔资产、合约或数据的转移,它可用于用户之间传输货币和资产,或者执行智能合约中编码的业务逻辑,一个交易涉及发送方、接收方和所转移的数量等信息。并且它包含着签名(Signature)、时间戳(Timestamp)以及跨链转移所需的数据。基于哈希函数,merkel树,以及之前提到的区块链技术基础,可以实现转账账本是公开可用,转账无被盗风险,无非授权转账可能,防止双花以及可以保障结算等功能。

PoW和PoS:工作量证明PoW是一种通过算力竞争来选取记账节点的共识机制。节点需要消耗大量算力来尝试不同的随机数(nonce),以找到符合难度要求的哈希值,从而获得记账权。这个过程称为挖矿。第一个找到合适的nonce的节点获得记账权。节点生成新区块后广播给其他节点,其他节点对此区块进行验证,若通过验证则接受该区块,完成本轮共识,否则拒绝该区块,继续寻找合适的nonce。至今为止,寻找一个满足要求的nonce是非常困难的,要求节点消耗大量的算力。随着有效区块的不断积累,恶意节点需要消耗极大的算力才有可能推翻以前的区块,完成「双花」攻击。PoW共识要求所有节点都消耗大量算力来争夺记账权,但在每一轮共识中只有一个节点的工作量是有效的,导致资源浪费。
为了解决资源浪费问题,权益证明机制PoS被提出。在PoS中,节点争夺记账权依靠持有的权益(token)而不是算力。每个节点只需计算一次Hash,并且拥有的权益(token)越多,获得记账权的机会越大。PoS是一种资源节省的共识协议,相比于PoW,它避免了大量资源的浪费。
8月1日课程:去中心化存储网络
01 什么是DSN?
DSN(Decentralized Storage Network)是一种去中心化的存储网络。在传统的Web2中,数据通常存储在中心化的服务器上,而对于一些需要永久存储的数据,如以太坊的第一层,也需要借助去中心化存储网络。
DSN通过降低副本的数量来降低存储成本,并具备区块链的合约互操作性和去中心化访问方式。相比传统云服务,DSN让用户保留数据的所有权、访问权和控制权,避免数据丧失和审查问题。相比区块链,DSN的存储成本更为便宜,但需要应对降低副本数量带来的挑战。在DSN中,存储节点可以选择存储自己喜欢的数据,而不是强制存储同一份数据,与传统区块链不同,DSN实际上没有全局状态
02 DSN的多维度攻击?
(1) 女巫攻击,是指当系统要求旷工提供证明时,旷工利用别人那里存储数据生产的证明,提交给系统。然而,实际上,他并没有存储。区块链中本质上是一个只写不删的分布式数据库,通过多个节点的冗余数据达到网络的安全和不可篡改。女巫攻击,即为单一节点具有多个身份标识,通过控制系统的大部分节点来削弱冗余备份的作用。

(2)生成攻击,想去提交这个的story group的时候,从网络上去找这份数据后,拿过来在链上做一些编码计算,再提上去。那么这个时候如果能也能成功的去拿到reward,属于生成攻击。

(3) 外援攻击,外援攻击指的是你把计算的外包给了其他节点。node2 还没有存储prove这份数据。但是note4存了,通过让note4把这份数据顺便也一起编码好之后再一起传给我,然后我再把这份数据再送到链上Settlement的合约里面去,然后我再去结算这份数据依旧能拿到存储报酬,那么这个时候我们会认为这种攻击它是一种外援攻击,就是把计算跟存储全部都外包。
03 如何避免攻击?
降低计算复杂度的措施:DSN中的数据序列化(encoding)过程会导致高计算成本,特别昂贵。为了降低计算复杂度,引入了延迟可验证执行函数,允许在一段时间后请求函数执行,但需要节点在已知的时间段内执行计算。这样每个节点都会耗费一定的时间进行encoding。
激励存储数据的措施:为了鼓励矿工存储整个网络的数据,需要解决数据独占问题。目前共识机制存在一些问题,使得矿工倾向于独占数据。其中包括缺乏严格的数据分发和传播机制,导致矿工有动机制造大量垃圾数据来获取更多的权益。
数据检索证明机制:由于每个节点并不拥有整个网络的数据,需要一种检索证明机制来确保用户在网络中能够找到所需数据。目前并没有成熟的检索市场,通常数据检索是通过中心化的服务或服务器实现,缺乏工程化的实现。
8月2日课程:跨链的核心
01 哈希时间锁(链下验证)
哈希时间锁定方案利用哈希函数的单向性与低碰撞性,通过哈希锁和时间锁,迫使资产的接收方在deadline内确定收款并产生一种收款证明给打款人,否则资产会归还给打款人。收款证明能够被付款人用来获取接收人区块链上的等量价值的数量资产或触发其他事件。
特点:时间锁定;资产解锁做成密钥变成哈希验证。
目前cBridge主要使用了哈希时间锁合约来实现跨链的资产转移,转移的流程为:
1.发送方在源链上发起 transferOut交易
2.cBridge节点通过使用发送方设定的 hashlock,在目的地链上发起 transferIn交易
3.发送方在源链上确认交易
4.cBridge节点在目的地链上确认交易

02 公证人机制?
公证人机制是技术上可实现的最简单的一种跨链机制,本质上是一种中介的方式。通过引入一个或多个可信第三方做信用背书,持续监听链上的事件,并根据获取到的事件信息负责在其他链上进行跨链消息的验证和转发。
单签名公证人机制是将公证人为独立的节点或者第三方机构,公证人在整个跨链交互中进行数据收集、验证、交易确认等任务,该方式兼容性高、交易速度快,但使用范围仅限于跨链资产交换等场景,例如狗BINANCE和Coinbase。
多签名公证人机制是将公证人为一群独立节点或者机构组成的联盟,每个公证人都拥有一个密钥,只有一定比例的公证人在跨链交易上签名达成共识时,该交易才有效。该方式弱化了单签名公证人机制的中心化风险,具有更高的安全性,即使有部分节点受到恶意攻击也不会影响整个跨链系统的运行,例如有deBridge和WORMHOLE。
多签操作流程如下:A链发生了一笔交易之后,在B链上有一个多签的合约,有多个中间人把观察到的交易提交到B链,合约里面满足超过一定比例的条件时,例如3/4,或者5/7等比例时,便可进行跨链操作。如下图所示:

分布式签名公证人机制采用了多方计算MPC(multipartycomputation)来确保密钥的安全性和隐私性,其中密钥拆分为多个碎片并随机分发给公证人,但无法利用这些碎片得出完整的密钥,仅当一定比例的公证人共同完成签名后才能拼凑出完整的密钥,该方式是在公证人机制中安全性比较高的方案,典型代表有:Multichain和Synapse。
分布式签名公证人机制流程如下:

03 轻客户端跨链(中继跨链)
轻客户端/轻节点,相对于全节点,只同步consensus验证需要的最少内容(一般为block header),用于验证共识和区块的有效性;它不需要信任任何的其他节点,通过保存的block header以及提交proof,可以验证链上用户余额,交易,交易执行结果的有效性;轻客户端跨链的两个链基于对端轻客户端进行原生跨链验证,根据实现方式,它包括同构跨链和异构跨链。
Rainbow Bridge分别在两个链上部署对端轻客户端合约,由链下服务Relayer将最新区块同步到相应轻客户端,Relayer监控跨链交易,构建跨链交易Proof提交到对端链上验证,完成跨链,并链上合约指令支持
Cosmos是一个独立并行区块链的去中心化网络,每个区块链都包含了Tendermint共识引擎实现的POS拜占庭共识算法。其中Hub管理着许多被称为Zone的独立区块链,由 Hub 来追踪记录各个Zone的状态。Zone 有义务不停地把自身产出的新区块反向汇报给 Hub 。类似地,每一个Zone也需要同步Hub的状态。Zone必须使用确定性的最终算法(目前都使用 Tendermint)并实现IBC接口,以便能够通过Hub向其他链发送消息。
IBCWorkFlow的流程如下:
1.链 A 中的 应用A 调用 sendPacket向链 B 中的 APP B 发送一个数据包,链 A 的核心 IBC a 提交数据包更新自己的状态
2.中继器1 监测到这个数据包并向链 B 的核心 IBC b 发送消息
3.核心 IBC b 会进行各种验证,验证数据包确实由链 A 发送的,数据包的顺序是否正确,数据包的消息证明是否有效,等等
4.如果核心 IBC 验证成功,这个数据包到达 APP B
5.APP B 从核心 IBC 接收到数据包后,会将其按照预期结构解包,然后走相应的应用逻辑
6.在处理完数据包之后,同时也会给链 A 一个回执
在Polkadot中主链被称为中继链,负责整个网络的共享,共识,互操作性等工作,侧链被称为平行链,每一个应用都可以拥有自己的链并且桥接在主链上,桥允许平行链和以太坊等其他外部网络建立链接
XCMP 特点:
•快速:消息可以快速发送到目的链;
•顺序:消息可以按顺序到达目的链;
•可验证:可以验证到达消息确实是由发送链发送的,以及该消息在接收链中已被处理;
•无遗漏:接收链公平地接收每一条消息,发送链不会无限期地等待接收链接收和处理其消息;
XCMP WorkFlow如下:
1.用户在链A上调用部署在链A上的智能合约,从而初始化一条以链B为目的地的跨链消息M;
2.链A的收集人节点会将这条消息M 放到A的出口队列中;
3.链B的收集人在正常情况下 当轮询到以自己为目的地的消息M时,会将其放到自己的入口队列中,以待在产生下一个区块的时候处理该消息;
4.链A和链B的验证人会通过读取出口队列从而知道这条消息;
5.当链B的收集人节点开始构建一个新区块的时候,它会处理当前入口队列中的消息M;在处理过程中,消息M会执行链B中相应的智能合约以此完成预期的跨链资产转移;
6.收集人将这个区块提交给验证人,验证人会验证消息M是否真的被处理了;如果这条消息被验证确实处理了,并且这个区块没有其他不合法的地方,验证者就会把该块确认进中继链中。
04 轻客户端跨链机制
轻节点实现基本流程如下:
轻客户端状态验证:
若想要验证基于轻客户端的区块,以EVM链轻客户端验证信息为例,验证区块交易的执行情况等,则需要对交易日志进行验证,其中交易日志验证包含以下内容:
•每个Event对应一个Receipt的Log
•每个Receipt是一个Transaction的执行收据
•区块中所有交易的receipt构建为一个MPT
•Event是用于判断合约是否正常执行的依据
05 轻客户端跨链流
要建立多链跨链需要在N条链上分别部署对端轻客户端跨链,需要N*N个轻客户端,同时需要建立Relay Chain,由Relay Chain提供中继。如下图所示:
异构链基于轻客户端的跨链架构如下图所示:

06 轻客户端优化
基于ZKP的轻客户端优化有以下几点:
•链上轻客户端合约需要存储大量的validator和区块头信息,消耗gas偏高
•签名验证和MPT验证消耗gas偏高
•签名验证和MPT验证通过zkSNARK
•链上轻节点合约不需要存储大量的validator和区块头信息
8月3日课程:中心化云服务与 web3
01 什么是云计算?
云计算是一种新的消费和交付模式,它将计算资源(包括硬件、软件和数据)通过互联网提供给用户使用。云计算的主要特点包括:
• 弹性伸缩:云计算能够根据用户的需求自动调整计算资源,实现弹性伸缩。
• 高可用性:云计算能够通过冗余和备份等方式保证计算资源的高可用性。
• 资源共享:云计算能够将计算资源共享给多个用户,提高资源利用率。
• 按需付费:云计算能够根据用户的实际使用情况进行计费,实现按需付费。
云计算模型:

02 Web3.0开发者技术栈
Web3与Web2应用系统架构的差异主要体现在:区块链及区块链节点;智能合约;钱包;去中心化存储;链上数据查询,L2扩容等。
03 去中心化云计算如何支持如何支持Web3应用
以加密数字货币交易所为例

安全是指:交易所业务安全,移动安全,云上安全,数据安全,安全服务,私钥安全,持续安全运营等。
性能是指:高性能低延迟交易所,包含:
• 网络延迟 , 减少服务器之间的物理距离(尽量部署
在同一个可用区) ;减少用户到服务之间的时延;优化网络协议提升网络传输效率,降低 丢包等。
• 服务器延时,关键组件运行在同一台机器上,避免跨服务器之间的调用;采用高配置机型,避免虚拟化;应用和网络的通信绕开内核(DPDK方式);使用FPGA机器提升网络转发能力。
• 应用延时 ,应用使用的关键组件,比如中间件使用;高性能的配置;优化应用逻辑。
交易所的可靠性如下图所示:

04
系列课程
系列课程安排入:

05
主办方与赞助方
主办方:Moledao
Moledao是一家成立于2021年8月的新加坡区块链开发者社区,致力于为区块链爱好者、Web3开发者以及投资者打造区块链领域一站式服务平台。通过搭建多频道区块链爱好者交流社区、开设中英文课程,举办全球黑客松等系列活动,赋能每一位Web 3参与者,实现项目人才匹配,提供项目赞助指导,深化区块链理念,最终打造Web3良性生态循环。
官网:https://moledao.io/#/home
推特:https://twitter.com/moledao_io
合作请联系Telegram: @Phoebe_junbo
合作请联系WeChat: Phoebe_Junbo
白金赞助:Alibaba Cloud
Alibaba Cloud成立于2009年,是全球领先的云计算和人工智能科技公司,为来自200多个国家和地区的企业、开发者和政府机构提供服务。作为全球性的云计算提供商,Alibaba Cloud在29个地域开放了88个可用区,为数十亿用户提供可靠的计算支持。公司致力于以在线公共服务的方式,为用户提供安全可靠的计算和数据处理能力,将计算和人工智能技术普及到各行各业。在2017年1月,Alibaba Cloud成为奥运会全球指定云服务商,进一步彰显了其在全球范围内的重要地位。
官网:https://sg.alibabacloud.com
Linkedi : https://www.linkedin.com/company/alibaba-cloud-sea/
Telegram: https://t.me/AlibabaCloudWeb3
E-mail: [email protected] ; [email protected]
白银赞助方:Sharkteam
SharkTeam是全球领先的Web3安全服务提供商,其愿景是全面保护Web3世界的安全。团队由来自世界各地的经验丰富的安全专业人士和高级研究人员组成,精通区块链和智能合约的底层理论,提供包括智能合约审计、链上分析、应急响应等服务。已与区块链生态系统各个领域的关键参与者,如Polkadot、Moonbeam、polygon、OKC、Huobi Global、imToken、ChainIDE等建立长期合作关系。
官网:https://www.sharkteam.org
Twitter:https://twitter.com/sharkteamorg
Discord:https://discord.gg/jGH9xXCjDZ
Telegram:https://t.me/sharkteamorg
白银赞助方:DeGame
DeGame是世界上最大的NFT游戏聚合商,自2021年上线以来,已上架超过4000个区块链游戏项目和1000+游戏代币与游戏链。DeGame与50多个公会和公链建立了合作伙伴关系,为NFT游戏爱好者和开发者提供一站式的服务平台。
2023年,DeGame推出了贡献量证明平台DeGame社区,这是全球Web3用户发现和玩最激动人心的新项目和游戏的一站式商店。早期开发人员、项目大使、KOL和社区组织者可以证明他们对项目的贡献,并通过身份角色和奖励获得认可。
Official Website:https://degame.com/en/home
Twitter:https://twitter.com/degame_l2y
Discord:https://discord.com/invite/degame
Telegram:https://t.me/DeGameOfficial
E-mail: [email protected]
白银赞助方:PlatON
PlatON 是以隐私计算为技术特色的开放金融基础设施,由LatticeX基金会发起和推动,致力于成为 Web3 世代主要的区块链平台,为各类型 Web3 原生应用、从 Web2 迁移到 Web3 的应用与用户,提供金融级别的系统稳定性和性能表现、隐私计算加持的合规数字资产管理、面向多场景的密态支付清算解决方案以及平滑友好的用户体验。