# 一分钟读懂Scroll项目

By [luxebeng](https://paragraph.com/@luxebeng) · 2022-07-28

---

最近有3个项目同时宣布支持zkEVM。Scroll就是其中之一。

目标
==

*   **Ensuring user security**
    
    因为不论侧链还是Optimistic Rollup的安全性都没有Eth L1。所以这一点是强调Scroll的安全是由ETH来保证的。
    
*   **Maintaining EVM-equivalence**
    
    因为ETH生态目前是最强的，最优质的项目和用户都在ETH生态中。这个是强调向后兼容性。并且强调的是等价，而不是ETH兼容。
    
*   **Efficiency**
    
    scalability。所有是所有L2都强调的特性。而且是可以打破区块链的不可能三角，即在不牺牲Security 和Decentralization 的前提下，实现Scalability的提升。
    
*   **Decentralization across all layers of the community**
    
    这个是针对当前Optimism实现中，例如Sequencer是中心化节点。所以这儿提出Sequencer是分布式的。
    
    同时EVM放在ZK Proof时不兼容，导致需要非常长的时候。所以Scroll提出要建立一个分布式的Prover Network。
    

技术方案
====

*   **Security and EVM-equivalence lead us to a zkEVM-based zkRollup solution**
    
*   **Decentralization leads us to a decentralized prover network**
    
    对于建立Prover network，Scroll Team发明了一个并行验证算法。通过增加节点可以提升验证的速度。同时用户通过使用GPU/ASIC 等参与运行Prover，并能得到反馈。
    
    这个其实是违反了上述的一些原则。
    
*   **Efficiency leads us to focus on open research-driven innovation**
    
    开源并接纳一切新的技术。
    

zkEVM
=====

zkEVM从长远来看，是最可行的L2解决方案。它通过线下聚合大量的交易，并把执行放到链下，链上仅仅保留验证部分，从而实现整体网络吞吐量的大幅提高。

### zkEVM目前的问题

*   基于zkRollup开发比较困难。因为需要开发者使用专门的开发语言，并且对ZKP(zero-knowledge Proof)比较熟悉。
    
*   目前的zkRollup技术不支持组合。所以上面的dAPP不能基于L2互相调用。
    

所以，现在的zkRollup对开发人员不够友好，从而限制了它的使用范围。

### **zkEVM的技术挑战**

*   First, EVM has limited support of elliptic curves.
    
*   Second, EVM word size is 256bit.
    
*   Third, EVM has many special opcodes.
    
*   Fourth, EVM is a stack-based virtual machine.
    
*   Fifth, Ethereum storage layout carries a huge overhead.
    
*   Sixth, machine-based proof has a gigantic overhead.
    

### **Why现在可以实现zkEVM?**

*   The usage of polynomial commitment.
    
*   The appearance of lookup table arguments and customized gadgets.
    
*   Recursive proof is more and more feasible.
    
*   Hardware acceleration is making proving more efficient.
    

参考资料
====

[Introducing Scroll – Technical principles](https://mirror.xyz/scroll.eth/N7cAie4ul0PdSxNdv2FTqgMV2JEkhOJocsxfeqe4SFE)

[zkEVM](https://scroll.io/blog/zkEVM)

[An Incomplete Guide to Rollups](https://vitalik.ca/general/2021/01/05/rollup.html)

---

*Originally published on [luxebeng](https://paragraph.com/@luxebeng/scroll)*
