Latest news about Bitcoin and all cryptocurrencies. Your daily crypto news habit.
The Cosmos is modular. Over the years, the Cosmos SDK has introduced powerful features as modules that developers can easily build on top of. This sits central to the application specific blockchain philosophy: we want developers to focus on building their application, with the least amount of work needed to bootstrap a functioning blockchain.
These modules are the secret powers that make the Cosmos SDK stand out from the crowd. A previous blog postâââthe first of this seriesâââcovered Authz and Fee Grant, but now that the Cosmos SDK has released version 0.46, we thought it would be a great moment to introduce you to the new Groups module, and the various ways the Governance module has gotten a well-deserved power boost!
Cosmos SDK Groups Module
What do we mean with groups? In essence, the Groups module is Multisig on steroids. The Cosmos SDK has supported multi-signature wallets since its inception, but limitations were hindering wider adoption. For starters, signatures are not stored on-chain, so youâd have to manually send over signed transactions to all members. Additionally, there is no dynamic key rotation, so if you wanted to change members, youâd have to create a new multisig and move your funds to that account.
With that in mind, the Groups module was introduced to offer advanced multi-signature wallet support native to the chains built on top of the Cosmos SDK. As a first and obvious use case, this will allow funds to more easily manage their tokens. But there are ample opportunities for developers to build on top of Groups and create vast usability improvements to wallet management, such as 2-factor authentication styled authorizations.
How Does the Groups Module Work?
At its core, a group has members that vote on proposals. Proposals can be one or multiple arbitrary messages that the chain supports, like staking your tokens, sending an IBC transfer and voting on governance, for example. The members of a group can change either through a proposal, or by an admin if the group has elected one or was configured with one from the start.
Additionally, the group itself can have multiple decision policies. A decision policy is a set of criteria that determine when a proposal passes or fails. For example, you can have a threshold decision policy that says that 3 out of 5 members need to vote yes within 5 days for a proposal to pass. The secret power here lies in the fact that itâs not the group that holds the tokens, but the decision policy itself. Why is that important?
Say youâre a member of a DAO thatâs funding development work. You may want to pay out a relatively large amount of tokens for work that has been completed. In this case, you want to make sure that a large majority of your group approves the payment, and that thereâs enough time for everyone to vote, because youâre dealing with a large sum of money. At the same time, perhaps youâve had a laptop break down and you need funds to replace the machine quickly. That would be tricky to do with a voting period of, say, 15 days and a 7 out 10 majority requirement.
When you have multiple decision policies, you can secure your large fund with a strict policy, and allow a smaller fund to be accessed by a smaller threshold in a short period of time. This flexibility allows DAOs to be more responsive, or more secure, wherever itâs appropriate. The choice is yours.
The Interchain Foundation is currently funding Regen Network to build a front-end interface for Groups, but in the meantime, you can learn to play around with the module on the Developer Portal.
The New and Improved Governance Module
One of great features about Cosmos chains is that they come with an on-chain governance system by default. Anyone who delegates tokens to secure a chain has a vote on how the chain operates, either through parameter changes or software upgrade. Additionally, delegators can vote on signal proposals or decide how funds in the community pool are spent. This on-chain governance system has enabled tremendous community engagement in the past, but was only limited to these four types of proposals so far.
The Cosmos ecosystem has become more interoperable with the success of IBC, and now that Interchain Accounts is starting to roll out to chains, composability is rapidly accelerating. Chains are now able to create addresses on other chains and execute transactions natively. This allows composability between applications similar to how smart contracts on a monolithic chain like Ethereum can interact with each other. How does governance play into this?
Almost all blockchains built with Cosmos have a community pool. This is a decentralized fund that receives a percentage of the block rewards and continuously keeps growing in size. So far, the community pools have been used to fund public good work, conferences like Cosmoverse, and more recently HackATOM Seoul 2022, but there are many more opportunities for the fund to engage with the wider ecosystem.
Whatâs changed? Instead of the original four proposal types that existed previously, the new Governance module allows people to propose to execute any number of arbitrary messages that the chain supports, similar to how the Groups module functions. A chainâs community pool could for example send tokens over to a decentralized exchange and swap tokens to create a wider exposure to the Cosmos ecosystem, or buy carbon credits on-chain to offset the carbon output of the application. At its core, the extension of the governance module allows a blockchainâs community to interact with the Interchain in ways previously unimaginable.
We encourage developers to have a look at the specification of this module to learn more about the potential impact this might have on their blockchain or client.
With the tight integration of Groups, Governance and the previous Auth and Authz modules, the Cosmos SDK is building something akin to a Linux permissions system, a core primitive of the Cosmos kernel. When paired with Interchain Accounts, this enables powerful remote account access, quite similar to SSH.
Groups and Governance
In a sense, the Groups and Governance modules are two sides of the same coin. You can imagine all delegators of a chain to be members of the community group by default seeing as the proposal and voting functionality is pretty much identical between the two modules. Weâre excited to see where the new features will take you. We hope that chains are eager to adopt the new modules, that exciting new frontend applications will emerge, and that painstaking multisig management will soon be a thing of the past.
Weâd like to thank Regen Network for their contribution to the design and engineering work on these features.
About the Author:
Noam Cohen works at Interchain GmbH and is the Developers Relations Lead for the Cosmos Hub team. Noam is on Twitter.
Secret Powers: What Do the Upcoming Groups and Gov Modules Enable? was originally published in Cosmos Blog on Medium, where people are continuing the conversation by highlighting and responding to this story.
Disclaimer
The views and opinions expressed in this article are solely those of the authors and do not reflect the views of Bitcoin Insider. Every investment and trading move involves risk - this is especially true for cryptocurrencies given their volatility. We strongly advise our readers to conduct their own research when making a decision.