Notional’s focus for a large portion of September has been on a potential security issue within Cosmos chains. At the time of writing this report, we are still investigating the severity and reach of this issue and cannot release any further details. As with all previous concerns, please rest assured that once we are quite sure any possible danger has been mitigated, we will provide the Cosmos community with a full breakdown. Besides this, we are working on a variety of maintenance tasks on the Cosmos stack, mostly focused on the ibc-go repository.
IBC-Go
The upgrades of the SDK to v50 and IBC to v8 require that many moving parts be reconfigured and thoroughly tested. In PR 4675, we are working on getting the WASM client upgraded so that interoperability between chains will continue to be as seamless as Cosmos users have grown used to. A little bit of cleaning up never hurt either, and in PR 4677, we realized that the Interchain account (ICA) StoreKey was no longer required since both the Controller and Host have their own dedicated StoreKeys. Clean-ups of this sort are not essential in the short term but allow for greater ease of development in future upgrades.
If you’ve followed these reports, you might have learned about Baseapp, which routes messages within Cosmos transactions to the modules that need to process them. With the upgrade of the SDK to v50, we introduce the PreBlocker method to the simapp, which runs before the BeginBlocker method in each module. The PreBlocker allows for the modification of consensus parameters and this addition can be seen in PR 4676. We are constantly trying to introduce greater efficiency into the Cosmos stack, and in PR 4681 we allow the reuse of a wasm-enabled docker base image. This prevents the repeated construction of other equally effective images which saves on CI and compute credits. Finally, a bit of housekeeping:
- PR 4678 fixes some dead links in the “Building Modules” documentation.
- PR 4679 fixes inaccuracies in the protobuf documentation (protodocs)
- PR 184 and PR 185 are dependency updates in the interchain security repository.
- PR 191 we upgraded a library for managing imports from v7 to v10.
Fee Abstraction
With the passing of signaling proposal #810, the Cosmos Hub community has voted overwhelmingly in favour of implementing the Fee Abstraction module on the Cosmos Hub. This module was commissioned by the Osmosis Grants program and built by our team. It allows the blockchain that it is implemented on to vote IBC tokens into a whitelist, and once whitelisted, these tokens can be used by users to pay transaction fees. For A high-level overview of how it works, have a look at our most recent Medium post, and you can also review the Github repository for further details. We would like to take this opportunity to send a big thank you to the team at Informal Systems, who are currently engaged in auditing the module’s code. You can expect an upgrade proposal to go live once the audit has been completed and all parties are satisfied that the code is safe for deployment on the Cosmos Hub.
Conclusion
We are truly grateful for your patience and support. We know that our community has entrusted us with the results of Prop 104 and we are determined to live up to that trust in as many ways as possible. As validators, relayers, developers, investors, and community members of the Cosmos we are knee-deep in its most complicated issues. Stay tuned for a full report on the ongoing security investigation and as always, you can track our activity on the Cosmos Hub live here.