Deploying a node for Starknet
Hello crypto enthusiast! I would like to share with you information about unique and additional activities in StarkNet. We're connected with retrodrop.tools. Let's take off!
The dominant activity in the crypto market in 2022-2023 has been drop hunting, but it's not the only way to interact with projects and earn income in crypto. Another promising niche in the market is node running. Nodes can offer multiple tools for both novice and experienced crypto enthusiasts, providing an experience unparalleled to transactions in often sluggish testnets. As you know, decentralization is achieved by creating multiple copies of the blockchain database physically stored on different devices and in different geographical regions, but synchronized and collectively adding new information to the database. This blockchain principle fundamentally differs from centralized networks operating on a client-server basis. In our case, nodes are those devices on which copies of blockchain data are stored, and they add blocks with new transactions to the chain based on the consensus mechanism.
Technically, nodes consist of:
- Hardware: virtual or physical server + mining equipment.
- Software: allowing the node to interact with other network nodes and perform its assigned functions.
In addition to the basic functions mentioned above, nodes may have additional tasks requiring special configuration or software. Thus, the blockchain architecture is, in fact, a network of interconnected nodes with various functions.
Depending on the tasks performed and the node's configuration, nodes are divided into several categories:
- Light Nodes: Store only partial transaction data and cannot independently verify blocks. They rely on full nodes during database synchronization. They are often installed by users who do not want to depend on third-party infrastructure when interacting with the network. The main advantage is low technical requirements and easy deployment.
- Full Nodes: Store the entire transaction history, expanding interaction capabilities with the blockchain. They can be further categorized into pruned full nodes, which store a partial history (e.g., the last 20 GB), and archival full nodes, which store the complete transaction history.
- Mining Nodes: Process transactions and create blocks in networks using the PoW consensus algorithm. Mining nodes, in addition to the standard configuration of a full node, also have computational power necessary for processing and hashing transactions.
- Staking Nodes: Perform similar functions to mining nodes but operate in networks with the PoS consensus algorithm. To launch a staking node, a certain amount of native tokens needs to be staked.
- Authority Nodes: Equivalent to validators in networks with the PoA or PoSA consensus concept. These nodes are allowed to process transactions based on reputation, requiring community approval.
- Masternodes: Do not create blocks but can perform other tasks. The specific rights and configuration of masternodes differ from blockchain to blockchain.
- Supernodes: Classified as a variation of full nodes or masternodes with additional functionality. They may be more powerful than regular full nodes, providing higher throughput or specialized functions.
- Lightning Nodes: Special nodes used in the Lightning Network solution for Bitcoin, necessary for setting up and supporting direct payment channels.
It is worth noting that not all nodes are available for free deployment. While full or staking/mining nodes can be deployed without permission, launching masternodes or authority nodes requires meeting additional requirements and undergoing an approval process.
After the theory, let's move on to the main action in our presentation - setting up your own node. To do this:
- Purchase or set up a server that meets the specifications listed on node-guru or another source. I deployed Ubuntu Server 22 LTS.
- Install our shell script - link.
- Register on Alchemy and obtain an API key.
- Open your server and enter the following:
- YOUR_ALCHEMY_HTTP_ADDRESS - the HTTP address from Alchemy, obtained on the website. Mainnet or testnet is your choice.
sudo apt update
sudo apt full-upgrade -y
ALCHEMY=YOUR_ALCHEMY_HTTP_ADDRESS
echo 'export ALCHEMY='$ALCHEMY >> $HOME/.bash_profile
- Next, you need to download our script from GitHub. Don't worry, it's just Linux commands; the code is open, and you can check it yourself.
- There will be a fairly long loading process. If you've done everything correctly, you'll see the following picture.
That's it! Congratulations on setting up, and don't forget to connect your wallet to Alchemy! If you want to update it, use:
My social — Twitter