Starknet FAQ
Frequently asked questions
Common questions
What will the Starknet tokens be used for?
The Starknet token will be used for paying transaction fees, participation in the Starknet protocol, and participation in governance. The rationale for each of these utilities is presented in our decentralization proposal, in the section titled “What will the tokens be used for?”
Where can I monitor Starknet’s transactions?
There are several block explorers you can use: StarkScan, Voyager, ViewBlock.
What are Starknet Appchains?
Starknet Appchains are instances of Starknet that power a specific application (or a host of applications). Setting up a Starknet appchain can be done in several ways using the Starknet Stack.
Operating an app-specific Starknet appchain allows configuring the network’s block size, latency, data availability mode, fees, consensus mechanism, and more, according to the unique requirements of the application. Appchains also enable the implementation of unique features and logic that are not available on the public Starknet network.
In addition to the adjusted configuration and unique features, appchains benefit from Starknet’s technology, including massive throughput, native Account Abstraction, and Ethereum level of security, as well as the tools and infrastructure that are part of the public network.
I want to write my own contract on Starknet. Where do I start? Are there any available toolkits?
A good place to start is the Hello Starknet tutorial, which guides the developer step by step through writing and deploying a simple contract. The Starknet Playground offers an environment for learning how to write Starknet contracts and test them.
You can become part of the developers’ community, and support it, by joining the Starknet Discord server.
How is Starknet related to SHARP?
SHARP (shared prover) is a service for computing proofs of the correct execution of Cairo programs. It can be used to prove the correct execution of a particular Cairo program which enforces the validity of Starknet state transitions – the Starknet OS (operating system). Currently, Starknet uses SHARP alongside many other customers to amortize proof costs. In the future, Starknet throughput may justify a dedicated prover layer..
In Starknet, are STARK proofs zero-knowledge proofs?
Currently not. STARKs are defined as Validity proofs, meaning they prove computational integrity. With Validity proofs (STARKs included), one party can prove to another that a certain computation was performed correctly. Zero-Knowledge is an additional property asserting that the prover does not have to reveal any information included in the computation.
Most ZK-Rollups are not really Zero-Knowledge. The mistake comes from the confusion between Validity proofs (assures computational integrity) and Zero-Knowledge proofs (assures no information is revealed).
Starknet uses STARK Validity proofs. It is worth noting that extracting information from the proof is extremely hard – almost impossible in practice.
Can I maintain privacy on Starknet?
Currently, Starknet transactions and their payloads are visible to the network in the same way that they are visible on Ethereum.
It is possible to deploy various privacy protocols on Starknet, which will offer full privacy from all network participants. Since those protocols usually require a lot of computation, they will benefit greatly from Starknet scalability.
Cairo
What is Cairo?
Cairo is an overloaded term which stands for three different things. First, Cairo is a CPU architecture. Second, “Cairo” is shorthand for CPU AIR which is an algebraic representation of this CPU architecture. Lastly, Cairo is a Turing complete programming language that enables blockchain developers to harness the power of STARKs. The first two aspects, alongside the instruction set of the language, are outlined in the whitepaper. For the language, see the github repo.
What is STARK?
STARK is a proof system. It uses cutting-edge cryptography to provide polylogarithmic verification complexity and proof size, quasilinear proof complexity, and minimal assumptions which are post-quantum-secure. More information here.
What Is the difference between Starknet contracts and Cairo programs?
Cairo is a Turing-complete language designed for succinctly proving the correct execution of Cairo programs. A Cairo program is stateless, meaning you do not have native access to storage, other Cairo programs, or the L1 state (although you can access those, as explained below).
Starknet contracts, on the other hand, live in the Starknet VM, which has a persistent state that smart contracts can access and modify. These smart contracts can store variables, communicate with other contracts, and send/receive messages to/from L1 (read more).
Do I have to write my contract in Cairo to deploy on Starknet?
No. You have several options for writing a contract, each with its own benefits.
Cairo is the native language for a Starknet contract, which most fully realizes the scaling potential of Starknet. On the other hand, several teams are developing transpilers from other programming languages (notably Solidity) to Cairo. Such transpilers facilitate quick deployment of existing contracts on Starknet.See our latest development tooling.
Operating on Starknet
Who will be able to participate in Starknet?
Starknet is evolving to become fully permissionless, allowing anyone to operate on the network:
- Sequencers – Anyone will be able to operate a sequencer, i.e., batch transactions and propose new blocks (somewhat analogous to Ethereum miners, without the Proof of Work part).
- Provers – Anyone will be able to set up a prover and create proofs for the validity of new blocks.
- Developers – Developers will be able to deploy their smart contracts – permissionlessly.
- Users – Users will be able to send transactions permissionlessly. As the system will be decentralized, the possibility of censorship will be eliminated.
What types of dApps can be deployed on Starknet?
Any dApp can be deployed on Starknet. As Cairo allows general computation, any business logic can be implemented and processed over StarkNet.
Who can deploy a smart contract on Starknet?
Anyone can interact with Starknet and deploy contracts.
During the Alpha phase, developers need to make sure they are aware of the network status as part of the onboarding process.
What will decentralization on Starknet look like?
The decentralization of the network has two aspects:
- The permissionless layer of Sequencers and Provers ensures that the network will be censorship-resistant.
- The usage of STARK-proofs ensures that the state is correct, allows everyone to verify the entire Starknet chain with low hardware requirements – regardless of the network’s throughput, and without trusting any external entity.
Can I run a Starknet full node?
Yes!
You can take a look at this tutorial.
Does Starknet support EVM?
The Warp team at Nethermind is developing a Solidity to Cairo transpiler: Warp.
Starknet does not natively support EVM.
Starknet and StarkEx
What is the difference between StarkEx and Starknet?
StarkEx is a standalone, customizable Layer-2 SAAS for exchanges that uses the STARK proof system in order to provide massive scaling. Several significant exchanges are already using StarkEx in production on Ethereum Mainnet (read more about StarkEx).
Starknet is a general-purpose network where you can write and deploy your own smart contracts, interact with other contracts, and so on, just like Ethereum.
What will happen to StarkEx dapps? Will they migrate to Starknet?
Once Starknet is ready, StarkEx apps may migrate to StarkNet if they so choose.
Starknet Token
Why does Starknet need a token?
STARK technology is mature and secure, but Starknet has not yet achieved the status of a public good like Ethereum or the Internet. For Starknet to reach this goal, its governance, operation and development must continue to decentralize. This will be facilitated through two mechanisms: the Starknet Foundation and the Starknet Token.
What will the Starknet tokens be used for?
The Starknet token will be used as a staking token for participation in Starknet’s consensus mechanisms, as a Governance token, and for paying transaction fees. The rationale for each of these utilities is presented in our decentralization proposal, in the section titled “What will the tokens be used for?”
Why another token, can’t you use Eth?
A native token that rewards members of the community who develop the network will advance the ecosystem to a degree that use of a non-native token will not. Also, if the token is non-native, economic shocks from decisions made in other ecosystems might impact Starknet’s service and its users and providers.
Do I need Starknet tokens to use Starknet?
Currently, no. Fees in Starknet are now paid in Ether (ETH). But later on, we anticipate that in the future, fees will be paid exclusively with the native Starknet Token.
Do I need Starknet tokens to transact on StarkEx?
No.
How are the tokens distributed? Who has how many tokens? How many tokens are in circulation? How many tokens are there? How many tokens will be minted each year?
This information can be found in the blog post.
What is the process for adding the token to my wallet?
The Starknet Token is not yet available for sale. It cannot be added to your wallet at this stage. Beware of scams.
Where and when can I buy tokens?
The Starknet Token is not yet for sale. It cannot be added to your wallet at this stage. Beware of scams.
The Starknet token was launched on Ethereum Mainnet in November 2022. The Starknet Foundation will announce at a later date the details of the Community Rebates and Community Provisions plans but at time of writing these details are yet to be determined. Beware of scams posing to sell Starknet Tokens.
Is there a lock-up period for the Tokens?
We’ve previously proposed a plan for initial allocation of the tokens. Tokens allocated to shareholders, employees, and independent software developers are locked for four years, with a gradual release schedule starting after one-year. Locked tokens can be used for voting and staking, but cannot be transferred or traded. Some of the tokens are locked via a dedicated smart contract on Ethereum while other tokens are locked via custodians.
Will the initial token supply of ten billion tokens, remain fixed?
No. The circulating supply of tokens will increase over time with the minting of new tokens by the protocol. Details on the minting rate and mechanism are yet to be defined.
Starknet Foundation
What is the Starknet Foundation?
Starknet is a permissionless, decentralized Layer 2 (L2) Validity Rollup intended to scale Ethereum while retaining Ethereum’s security and decentralization. In keeping with that mission, the Foundation was established as an independent entity to advance the shared technology that is Starknet. Additionally, as a not-for-profit entity with a narrow mission: to advance Starknet as a public good for all, and maintain it as such for years to come.
The Foundation launches with 50.1% of the initial Token supply to ensure the network’s resources are effectively deployed towards the following goals: the maintenance and security of Starknet as a public good; the continued development and expansion of the network; and support for a culture of constructive collaboration between developers.
For more information on the Foundation’s mission, first steps, and board, see the Foundation’s “Hello World” post and StarkWare’s complementary post.
General information
I want to get involved in the Starknet community. How do I do that?
If you are excited about StarkNet and its decentralization and wish to participate in the process, please join the builders on StarkNet Discord and Starknet community forum
I came across a fraud attempt. How can I warn others against it?
You can report scams and check for other reports of scams in the scam-report channel on the Starknet Discord server.