Justification for Choosing Layer 2 Architecture
Common Features of HyperLedger Fabric and COSMOS
1. Modular Architecture:
Both projects support a modular architecture, allowing users to customize the system to their needs. In HyperLedger Fabric, this is expressed through the ability to choose various components such as consensus algorithms, databases, and smart contracts. In COSMOS, modularity is achieved through the use of the COSMOS SDK, which allows developers to create custom blockchains with the required functionalities. Starting from version 3.0, HyperLedger Fabric introduces the ability to create custom blockchains based on channels.
2. Consensus Algorithms:
Both projects use consensus algorithms to achieve agreement among network participants. HyperLedger Fabric currently uses Kafka and RAFT (CFT). In version 3.0, the SmartBFT algorithm will be added, making it more flexible in choosing consensus mechanisms and enabling the creation of decentralized public networks. COSMOS uses the Tendermint algorithm, which provides high speed and security and also allows for the creation of both decentralized public and private networks.
3. Smart Contract Support:
Both projects support smart contracts, which automate the execution of conditions and operations. In HyperLedger Fabric, smart contracts are called Chaincode and can be written in various programming languages. Currently supported languages are Golang and TypeScript. In COSMOS, smart contracts are implemented through CosmWasm, which supports WebAssembly (Wasm) and allows writing contracts in languages that compile to Wasm, such as Rust. Additionally, Golang can be used for developing business logic in blockchain projects through additional mechanisms.
4. Open Source:
Both projects are open-source, allowing the community to contribute improvements and adapt them to their needs. This also promotes transparency and security, as the code can be reviewed and tested by independent developers.
5. Sharding:
- HyperLedger Fabric: Does not support sharding in the traditional sense. However, thanks to its modular architecture, channels can be created to isolate transactions between different groups of participants. Channels essentially create separate blockchains where transactions are visible only to channel participants. This ensures a high level of isolation and confidentiality and allows multiple blockchain networks to be managed by the same validators or to redistribute existing validators (specifically endorsers) among all channels (i.e., independent blockchains), thus solving the scalability issue.
- COSMOS: Supports sharding through its "zones" and "hub" architecture. This allows for the creation of independent blockchains (zones) that can interact with each other through a central hub. COSMOS uses the IBC (Inter-Blockchain Communication) protocol to ensure interaction between zones. This allows the network to scale by adding new zones that can operate in parallel and exchange data through the hub.
Last updated