Draft v1.1
Ganymede protocol targets dapps that need high composability and high degree of decentralization, such as Decentralized Finance applications.
The purpose of Ganymede is to introduce a set of mathematical improvements to SKALE provable consensus algorithms, that enable running consensus in an environment of a highly decentralized and powerful blockchain, where large number of dapps can interact with each other in a highly-composable way.
Consensus performance it critical, when running a large number of interacting dapps on a common chain.
Therefore, we envision blockchains that implement Ganymede protocol to execute on computationally powerful nodes that have high network bandwith and vast storage available to them.
Our goal is to develop Ganymede Protocol algorithms in cojunction with Levitation protocol. Levitation protocol can then be be used to provide ZK functionality on blockchains, implementing Ganymede protocol. This enables high security transactions that can be verified on ETH mainnet using Zero Knowledge proofs.
Ganymede protocol will transition its cryptographic internals, such as state root computation, to ZK-native cryptographic algorithms that enable fast ZK-proof generation, ads well as verification of the corresponding ZK proofs on ETH mainnet.
We target minimalistic design, that reuses, as much as possible, the existing mathematics and code base, as well as allows faster implementation time.
Our goal is for Ganymede protocol to introduce as few changes to as possible to existing SKALE consensus algorithms, while still reaching the goals of high composability and high decentralization.
Ganymede plans to introduce a set of improvements to make consensus more flexible.
In particular SKALE consensus algorithms assume that each node has the same voting rights in the blockchain. Ganymede uses more flexible algorithms,
that introduce the notion of node weight. The power of a particular node in the system is be proportional to its weigh, instead of being equal for all nodes, as in the current SKALE consensus protocol.
We envision the node weight to be proportional to the total validator stake in a Ganymede-enabled blockchain.
This means, that instead of running multiple nodes, a validator of a Ganymede-enabled blockhain, may run a single powerful node with a large weight. This can significantly improve validator costs and enable validators to run more powerful nodes, improving overall chain performance.
Current SKALE consensus uses BLS threshold signatures, that **require DKG (distributed key generation) algorithms ** to execute each time a node joins or leaves the chain.
Since the goal of Ganymede protocol is to enable execution of larger blockchains with faster addition and exit of nodes, Ganymede protocol plans to provide a new implementation of *aggregated BLS signatures with long term BLS keys.
The aggregated signature impelementation will not require running of DKG rounds on each node join and exit.
Adding aggregated signature to SKALE consensus protocol will require source code modifications in multiple places. Essentially, one will need to add aggregated signatures as an option in each place in the code, where currently BLS threshold signatures are used.
Since a Ganymede implementation is envisioned to be executed in an environment where multiple Dapps interact on a single powerful chain,
we expect Ganymede-enabled systems to have non-zero transaction fees. As in general we target ETH compatibility, the protocol will use transaction fee algorithms compatible with ETH transaction fees math, in particular EIP-1559.
On the other hand, as Ganymede is envisioned as a high performance chain, its architecture will target minimizing transaction fees as much as feasible, similar to other high performance blockchains.