# StarkNet是什么？了解StarkNet

By [dapaopao](https://paragraph.com/@dapaopao) · 2023-11-01

---

**StarkNet介绍**

     官方网站如下：

[https://www.starknet.io/](https://www.starknet.io/)

     官方推特：

[https://twitter.com/Starknet](https://twitter.com/Starknet)

     StarkNet是以太坊第 2 层生态系统，是一种基于 ZK-Rollup 技术的去中心化 L2 协议，ZK-Rollup 技术是一种超安全机制，通过该机制，链下证明者使用的输入不会暴露在区块链上。它作为第 2 层 (L2) 区块链运行，使任何 dApp 都能够实现无限的计算规模，而不会影响以太坊的可组合性和安全性。  
       
     它基于称为STARK 的高度可扩展的密码证明系统，使 dapps 能够实现无限的规模，而不会损害以太坊的可组合性和安全性。Starknet 合约和 Starknet OS 是在Cairo编写的，它支持几乎所有业务逻辑的部署。多次迭代后目前已经很稳定。

**StarkNet要解决的问题**

     在了解这个之前先要知道什么是zk。零知识证明是一种密码学技术，它可以让一个人向另一个人证明某个事情是真的，而不需要透露这个事情的具体内容，即不需要泄露任何信息 。零知识证明的基本原理是：证明者和验证者之间进行一系列的交互，通过随机的挑战和回复来检验证明者是否掌握某个问题的答案。零知识证明有两种形式：交互式和非交互式。交互式零知识证明需要双方同时在线，反复互动；非交互式零知识证明只需要一轮沟通，但需要一个共享的密钥或随机数 。

     在区块链方面，零知识证明有很多应用，例如匿名支付、身份验证、数据隐私等。举例来说，Zcash 是一种使用了零知识简洁非交互式知识论证（ZK-SNARK）的加密货币，它可以让用户在不透露交易细节的情况下，向其他人证明他们拥有足够的资金进行交易。ZK-SNARK 是一种非交互式、简洁、高效、透明的零知识证明技术，它可以在几毫秒内生成和验证证明，但需要一个信任设置过程来生成公共参数 。

     ZK-Rollup也是一种区块链技术，它使用零知识证明（ZK）来验证交易的有效性，而无需了解交易的具体内容。ZK-Rollup是Rollup的一种类型，Rollup是一种处理链外交易的扩容解决方案，将结果Rollup成一个单一的交易，并将其上传到主区块链（通常是以太坊）. ZK-Rollup生成一个零知识证明（SNARK），验证一个批次中的所有交易都是有效的。

     该证明非常轻巧，发布到主网的成本很低，但计算零知识证明是资源密集型的。相比之下，像Arbitrum和Optimism这样的乐观Rollup，只是假设所有的交易都是有效的，并不向主网发布任何证明。

     StarkNet和Optimistic Rollup都是以太坊的第二层扩容解决方案，但它们使用不同的技术来实现。StarkNet是一种Validity-Rollup，它使用零知识证明技术来验证交易的有效性，并将多个交易捆绑在一起，作为单个交易滚动到以太坊上。

     这种方法使得StarkNet能够在不牺牲安全性的情况下实现高吞吐量. 相比之下，Optimistic Rollup是一种Optimistic-Rollup，它假设所有的交易都是有效的，并不向主网发布任何证明。这种方法使得Optimistic Rollup能够实现更高的吞吐量，但可能会牺牲一些安全性.。

     StarkNet是一种基于以太坊的第二层扩容解决方案，它使用了零知识证明技术来验证交易的有效性。StarkNet是一种Validity-Rollup，它将多个交易捆绑在一起，并将它们作为单个交易滚动到以太坊上。这种方法使得StarkNet能够在不牺牲安全性的情况下实现高吞吐量。

     StarkNet的目标是解决以太坊面临的扩容问题。随着以太坊上的dapp数量不断增加，以太坊网络的吞吐量变得越来越低，交易费用也变得越来越高。StarkNet通过将多个交易捆绑在一起，将它们作为单个交易滚动到以太坊上，从而提高了以太坊网络的吞吐量。此外，StarkNet还使用了零知识证明技术来验证交易的有效性，从而保证了网络的安全性。

     总之，StarkNet旨在通过使用零知识证明技术和Validity-Rollup技术来解决以太坊面临的扩容问题，并提高以太坊网络的吞吐量和安全性。

**StarkNet使用了什么语言**

     StarkNet的智能合约是使用Cairo语言编写的. Cairo是一种图灵完备的编程语言，旨在编写可证明的程序，将zk-STARK证明系统从程序员中抽象出来。Cairo受到Rust的启发，允许开发人员以安全和方便的方式编写Starknet智能合约。

     Cairo是一种用于创建STARK可证明程序的语言，用于扩展主网上的应用程序，包括dYdX、Sorare、ImmutableX等。Cairo是Starknet的本地智能合约语言，是一种无需许可的分散式Validity-Rollup。

     如果想学习这种语言可以查看文档：

[https://book.cairo-lang.org/](https://book.cairo-lang.org/)

**StarkNet背景**

     在量子升级后starknet的速度来到了飞升，starknet上有非常丰富的生态系统，你可以尝试所有能在主网上提体验的dapp，比如钱包，dapp，defi等等，将来还会部署更多的dapp应用。

     StarkNet是由StarkWare公司开发的，该公司由Eli Ben-Sasson和Uri Kolodny共同创立. Eli Ben-Sasson是以色列魏茨曼科学研究所的计算机科学教授，他是STARK协议的发明人之一. Uri Kolodny是一位企业家和技术领袖，曾在多个初创公司担任高管. StarkWare公司的团队由来自计算机科学、密码学、数学和工程领域的专家组成，他们共同致力于推动区块链技术的发展1. StarkWare公司的愿景是通过使用零知识证明技术和STARK协议来解决区块链面临的扩容问题，并为区块链应用程序提供更高效、更安全的解决方案。

     可以在一下链接找到历史blog记录，记录了starknet的升级过程。

[https://www.starknet.io/en/posts](https://www.starknet.io/en/posts)

---

*Originally published on [dapaopao](https://paragraph.com/@dapaopao/starknet-starknet)*
