🧑🤝🧑Public
Apps built on the Mainnet are able to interoperate, similarly to how apps can cooperate on Internet, using the potential of decentralized blockchain.
🔒Private
Many businesses have deployed private, permissioned blockchains for specific apps based on Ethereum.
Security
🧑🤝🧑
- mainnet is secured by the interaction of nodes run by individuals and miners
- resistance to attacks is determined by a consensus algorithm
🔒
- fewer controlled nodes
- nodes can be tightly controlled
- disaster if the few nodes get compromised
Performance
🧑🤝🧑
- generally slower on Layer 1
- high throughput using Layer 2
🔒
- generally faster on Layer 1
- they use high-performance nodes with special hardware requirements and different consensus algorithms (proof-of-authority)
Cost
🧑🤝🧑
- gas costs for each transaction.
- transaction relayers developed to eliminate the end-user need to directly use ETH in their transactions.
- total cost may be lower on Mainnet.
🔒
- cost is reflected in labor to set up/manage the chain, and the servers to run it.
Node permissioning
🧑🤝🧑
- Anybody can set up a node on Mainnet.
🔒
- Only authorized nodes can join private chains.
Privacy
🧑🤝🧑
- data written to Mainnet Layer 1 is public
- sensitive info should be stored off-chain/encrypted
- Design Patterns/Layer 2 solution to keep some data private
🔒
- data written can be restricted by network access
- finer control on access and private transactions
If you liked this thread, follow @FrancescoCiull4 and RT the tweet below. Thank you.
❌Many Ethereum projects on Github are outdated, archived, or deprecated.
✅A list of big active projects:
- go-ethereum
- web3.js
- ethereum-boilerplate
- ethereum-org-website
- ethereum/EIPs
- ethereumjs-monorepo
- ethers-io/ethers.js
↓
Go Ethereum
Official Golang implementation of the Ethereum protocol.
A very interesting one, of course especially for Go developers but not only for them.