m Cacti - Hyperledger Interoperability Framework
Key Points
- Grid uses Sawtooth and is developed in Rust
References
Reference_description_with_linked_URLs_______________________________ | Notes_______________________________________________________ |
---|---|
https://github.com/hyperledger/cactus/blob/master/docs/whitepaper/whitepaper.md | Cactus ( BIF ) Whitepaper |
https://www.hyperledger.org/blog/2018/01/23/introducing-hyperledger-labs | Hyperledger Labs |
https://www.youtube.com/watch?v=fgYrUIc_-sU&list=PL0MZ85B_96CFY3isYUplor FSenn04WwBt | Youtube - Hart Montgomery overview of Cactus |
m Design Patterns#blockchaininteroperabilityonatomictransactionsusingescrowtransactions | Interoperability Design Pattern for escrow transactions without middleman |
Hyperledger Weaver - DLT interoperability - atomic swap | Weaver was merged into Project Cacti in 2022 |
Hyperledger Transact | |
https://www.hyperledger.org/blog/2019/06/27/introducing-hyperledger-transact | Generic Smart Contract execution framework |
Interoperability and the Future of Blockchains article - Forbes - 2023 | #a>> |
Key Concepts
Blockchain Interoperability
interoperability use cases
simple Oracles - read only
simple asset exchanges
Dynamic relations between parties
discovery services, routers, decentralized directory services, lookups, authentication services
permanent or temporary relations
Full ACID transactions with rollback across different types of blockchains with privacy
the escrow, asynchronous, tokenized ACID transaction with rollabck
Play forward transactions from a checkpoint for a blockchain member
Hyperledger Cacti
Hyperledger Weaver - merged into Cacti in 2022
Key principles that guide Weaver’s design are:
- Accommodate DLT heterogeneity without favoring a particular DLT design
- Allow networks to maintain their independence and collective sovereignty
- Minimize coupling during cross-network interactions
- Rely on common standards for cross-network protocol units
- Do not require a trusted intermediary or third-party ledger
- Do not require changes to existing DLT stacks
- Make no security and trust assumptions on Weaver components
- Treat privacy and least privilege as a first-class requirement
Weaver addresses three broad classes of use cases:
- Data transfer: ledger data (state) communication with proof
- Asset transfer: movement of an asset from one ledger to another
- Asset exchange: atomic exchange of asset ownership in different ledgers
The protocols to realize these use cases can be abstracted into a common stack of layers akin to the OSI model, from message formats at the bottom to governance rules at the top (see diagram below).
Hyperledger Labs Blockchain Interoperability Project
https://github.com/hyperledger-labs/blockchain-integration-framework
If you look at the Blockchain Interoperability space, several different approaches have been proposed. Among the existing contributions, we identified two main ways to solve the interoperability problem. The “connector approach” focuses on building transfer protocols for non-trusted blockchain gateways (e.g. Interledger). The “blockchain of blockchains approach” proposes a central blockchain “hub” to connect multiple blockchain “zones” together (e.g. Cosmos).
This lab project proposes an alternative to these models, and it is designed specifically for permissioned blockchain networks, but later expanded to permissionless ones as well.
How It Works
Blockchain Integration Framework introduces an “interoperability validator” overlay network for each of the interoperable blockchains. Interoperability validators are known or broadly discoverable by the ecosystem and are typically participants already taking part in the governance or consensus. Interoperability validators will collectively handle export requests from local nodes by verifying against their version of the ledger (steps 1 to 3). Each request is answered by a (configurable) minimum quorum of validator signatures necessary or rejected as fast as possible (steps 4 and 5). The network can continue working even if some of the validators are down, or not participating, but assuming the minimum quorum can be guaranteed. Messages certified by a distributed ledger’s transfer validators can be delivered by any secure off-chain communication system (step 6). A proof coming from a foreign distributed ledger can be verified against the public keys of the transfer validators of that foreign distributed ledger either locally by the recipient or using an on-chain logic –- typically smart-contracts (step 7 and 8)
Potential Value Opportunities
Potential Challenges
Performance
Candidate Solutions
Hyperledger Cacti Lab 2022
https://wiki.hyperledger.org/display/events/Blockchain+Interoperability+with+Hyperledger+Cacti
Blockchain Interoperability with Hyperledger Cacti Workshop
Time:
- Monday November 14, 2022 from 11am - 2pm ET
Registration:
Registration for the event is free. If you're interested in attending, we ask that you sign up now since space is limited.
Workshop description:
We present the "Blockchain Interoperability with Hyperledger Cacti" workshop, the first Hyperledger Foundation Community Workshop dedicated to blockchain interoperability. This is a three hour online course to introduce the core concepts and principles of blockchain interoperability. You will learn the foundations of interoperability, followed by an introduction to several Hyperledger projects on the field: Weaver, YUI, Firefly, and Cacti. We present in depth several Cacti's components, including its Plugin Architecture, API Server, Test Development & Execution (All-In-One Container Images), an Hello World of Cacti, and considerations about the future of the project.
Preparation :
1) Install the project dependencies and development environment described at the developer's guide (until the command yarn run configure).
2) Run a test from any package to confirm that everything is correctly setup. Follow the instructions from the developer's guide from the yarn run configure step up to the build-script-decision tree step (excluding).
This workshop only supports Ubuntu 20.04 LTS VM (or bare metal).
Step-by-step guide for Example
sample code block