web3-区块链三难困境破解指南:从数字化签名到Rollup 到分片
数字化签名
实体的签名:将交易和签名者绑定在一起
在数字世界的问题是:
任何人都可以从任一文档复制Bob的签名放到自己想放的地方。
解决方案:让签名由文件来决定
bob有一个密钥这个密钥会被送入到一个算法中;然后算法将会产出一个签名出来;通过算法加密的签名才会被附到即将被签名的文件上;校验机会对签名是否合法进行校对,校验机使用公钥对签名进行校对接受或者拒绝。
数字化签名:语法
定义:一个签名的方案由三个算法构成
- Gen():产出一对密钥 (pk,sk)
- Sign(sk,msg) 产出sigs/a
- Verify(pk,msg,a)产出“接受”或“拒绝”
安全签名:(非正式)
盗用者可以从许多信息中搜寻被盗者的公钥pk和a,但没发在新的信息上伪造一个签名。
签名方案的种类
-
RSA签名(不会用在区块链上):
sign和公钥太大(>=256字节),可以很快速地验证
-
离散型对数签名:Schnorr和ECDSA(比特币,以太坊)
sigs短(48或64字节)且公钥也短(32字节)
-
BLS签名(48或64字节),可聚合,低门槛(以太坊2.0)
-
后量子签名:长(>=768字节)
区块链上的签名
签名被用在各种场景:
确保Tx被授权,
社区治理投票,
共识协议投票
SNARK证明
SNARK也是一个十分重要的密码基元
用来对区块链扩容和区块链隐私应用
区块链的可扩展性
区块链的扩展性其实是整个区块链中最需要解决的问题
交易率(Tx/sec)
传统的区块链中的交易率都比较低;交易费率:2 t o 60 to60 to60对于一笔简单的交易
比特币:可以处理大约5-10(Tx/sec)
以太坊:可以处理大约20-30(Tx/sec)
visa:可以处理24000(Tx/sec)
以太坊的交易费
区块链可扩展的方法
- 使用更快的共识,缺点可能会牺牲去中心化的程度
- 支付渠道:大多数交易为离线的点对点(闪电网络)
- Layer2方法:zkRollup,optimistic Rolluop:打包多笔交易为一笔交易
- 侧链:Polygon
支付渠道(闪电网络)
eg. Alice 是一个上班族每天都需要买一杯咖啡;Bob是咖啡店的老板
将设Alice每天都要买咖啡而且每天的消费都需要上链,那就非常不高效而且费用很高
方案就是Alice建立一个支付渠道然后这个支付渠道里面预存了100美金,每笔交易都会记录在智能合约的上面,然后通过智能合约来运行
他的交易是在链下的没有上链,等同时有bob和Alice的签名或者是30天后才会上链进行结算。
重点:参与者只在渠道创建或者关闭的时候上链(传送的资金不可能超过预存的资金)
双向的渠道也是可能的
支付网络
多个双向的支付渠道
现在当Alice想支付给bob时,他会选择网络中最便宜的路线==>只要这些支付渠道保持开启,alice,bob和银行之间的交易都保持在链下进行。只有出现纠纷,开启,关闭交易的时候才会进行上链。
以太坊Rolluo(卷叠)扩容*
主要工具SNARK(隐私计算的一个技术)
C:C程序将在<=B个步骤内终止所有的信息输入
x:C的公共输入,w:C的私有输入
SNARK做的事情就是 : ==>证明者用一些简短的证明来给验证者证明他的信息是真的
Rollup:zk(零知)和optimistic(乐观)
常规的L1公链:每个矿工都必须验证每笔发布的交易
Rollup协调者:将一千笔交易压缩成一个链上证明(SNARK)
所有的用户产生的交易会先发送到rollup协调者,然后协调者验证交易产生出一个证明,rollup将证明发送给验证者,验证者来验证这些证明即可**(矿工只需要验证一个证明就可以验证几千笔证明)**
Rollup高阶–从或向第2层转移资产
在同一个Rollup系统中交易非常容易:在第一层网络批量结算(例如:以太坊)
将资金转出或转入Rollup系统(L1<>L2)费用更贵一些:需要在第一层网络上发布更多数据<>更高的交易费用
将资金从第一个Rollup系统转移到另一个(L2<>L1):要么通过第1层网络(费用昂贵),要么直接通过L2<>L2网络链桥(费用低廉)
将项目从L1以太坊迁移到L2zkRollup
即将到来的开发进展:ZKEVM(例如,MatterLabs)
Solidity智能合约的兼容性:
协调者可以为短的Solidity程序的执行生成SNARK证明
==>将DAPP从L1以太坊迁移到L2 zkRollup很容易
==>与L1相比,降低了交易费用,增加了交易效率
Optimistic Rollup
原理与zkRollup相同,但是没有SNARK证明
相反:协调者在链上发送交易数据而不需要证明:
然后给验证者几天时间来审核:
如果发送的交易无效===>任何人都可以提交欺诈证明并赢得奖励,Rollup协调者将被惩罚。
优点:简单的完整以太坊虚拟机(EVM)兼容性,协调者工作量少。
总结
本文探讨了区块链技术中的三难困境及其解决方案。主要内容包括:1)数字化签名技术,通过算法绑定签名与文件,确保交易安全性;2)区块链扩展性解决方案,如支付渠道(闪电网络)和Rollup技术,通过批量处理和链下交易提高效率;3)重点分析了zkRollup和Optimistic Rollup两种扩容方案,前者利用SNARK证明高效验证交易,后者依赖欺诈证明机制。文章还介绍了签名方案种类及其在区块链中的应用,以及支付网络和资产转移的实现方式。这些技术共同推动着区块链向高吞吐量、低成本方向发展。