Hyperledger Cacti is a plugin-based framework which aims to provide developers with an abstraction over protocol specific implementations and enabling interoperability.
This enables solutions to adapt to new protocols and make transactions involving multiple public and/or permissioned ledgers more easily.
What is Hyperledger Cacti?
Cacti is a pluggable enterprise-grade framework to transact on multiple distributed ledgers without introducing yet another competing blockchain. An SDK of SDKs
Cacti aims to provide Decentralized, Adaptable and Secure Integration to and between Blockchain Networks. It's aims to cover as many protocols as possible through
an extensible plugin architecture where new protocols or functionality can be added by creating new plugins.
Why should I use Cacti?
- To address blockchain fragmentation; Allow developers to connect and perform transactions across different blockchain networks.
- Save (distributed) app developers from re-inventing the wheel; Simplify secure interactions with blockchain nodes using a standardized interface across protocols.
- Lower risk of adopting blockchain by businesses; Abstract your app layer from the blockchain protocol, allowing developers to easily change the blockchain
protocol being used and reducing risks of your app being obsolete.
What are Cacti Design principles?
- Key principles:
- Plugin architecture: Maximize flexibility and future-proofing through plug-in architecture
- Secure by Default: Avoid needing explicit action from users to have a secure Cacti deployment.
- Toll Free: Users should not be required to use tokens for transactions & Operators should not be required to take a cut of individual transactions
Low Impact Deployment: Do not interfere with or impede existing network requirements
- Additional principles:
- Wide Support: Support as many blockchain protocols as possible, and constantly support new ones.
- Prevent Double Spending: Whenever two networks are interacting with each other ensure that there is no double spend whenever possible.
- Preserving Ledger Features: Using Cacti should allow you to use all the features which the protocol enables.
- Horizontal Scalability: Cacti should never be the bottleneck of all the networks involved. IE: If 2 networks can do 100tps, Cacti should be able to handle 200
What are Cacti current features?
- Connectors for different blockchain protocols
- Hyperledger Besu, Hyperledger Fabric, (WIP for Corda, Geth, and Quorum)
- Atomic transfers across legers
- HTLCs for Ether, ERC20 (WIP Fabtoken)
- Decoupled identity
- JWT, (WIP OpenAPI)
- Prometheus and Grafana based monitoring of the individual plugins
How can I collaborate?
To see a guide on how to use Hyperledger Cacti, take a look at the links below in the Documentation section. Keep in mind that this is currently being updated so please write us through the different means listed in the Communication section.
If you want to collaborate in Cacti' development, you can pick an issue directly from Github – we've linked to some good first issues below that are good places to start for new contributors. If you need extra guidance, contact us through the chat or join one of our meetings and we can help you.
Hyperledger Cacti is currently undergoing a major refactoring effort to enable the desired to-be architecture which will enable plug-in based collaborative development to increase the breadth of use cases & Ledgers supported.
For a better understanding of where Hyperledger Cacti is heading please see the Whitepaper and Design Principles below!
Hyperledger Cacti uses GitHub for source code control.
Recent space activity