UTxO management in Cardano is handled sub-optimally by wallets, dapps and exchanges, which causes downtime, higher fees and degrades user experience. This project proposes to write input selection algorithms inside the Rust SDK so that projects implementing Cardano have access to state of the art user-experience.
How It Works
UTxO has it challenges and many interesting properties. One of the challenges is that it’s most difficult to manage UTxOs wallet to the scale of an exchange or a dApp. Handling UTxO even for smaller wallets already has its challenges. Therefore, this proposal wishes to provide specification and reference implementation on how to handle large amounts of UTxO, from the input selection to the output selection.
Many projects have left out Output selection, and those that have tried have only managed to solve simple cases such as how to do input selections in order to optimize the cost and the security of a wallet. However, the UTxO Management proposal will explore solutions on how to continuously reorganise UTxO into sizable chunks to provide an easier and more optimized transaction system.
In Cardano, the most expensive part of transaction is not necessarily the inputs and outputs, but the constant fee of 0.155381 ADA. The Cardano Omnibus team wants to build transactions to do the requested spending and perform the UTxO re-grouping, which is cheaper and more efficient than any wallet implementation in the market.
Currently, there is no readily available solution for this. Many wallets, therefore, implement their own ad-hoc solutions which can often lead to, for example, wallets with many NFTs being unable to send ADA anymore. Exchanges also run into this problem often causing downtime as they try and manually fix their wallet.
Byron by IOG tried to solve these issues but their solution no longer works since Cardano now supports multi-asset and smart contracts. The proposal plans to implement this new solution as well as contribute to the CIP discussion about input selections while documenting the stages leading to the final solutions.
Team Behind the Proposal
This proposal is created by dcSpark, a product-based blockchain company that builds products and solutions for crypto projects in the space. The company has built multiple products for Cardano in the past, and is behind many other proposals in Project Catalyst that have a huge following and support from users. The company has contributed a total of 23 ideas such as the Milkomeda Accelerator, smart contract upgradability, basic Plutus voting dapp and fractrionalized NFTs.
The team, which is composed of Robert Kornacki as co-founder and CSO, Nicolas Arqueros as co-founder and CEO, Sebastian Guillemot as co-founder and CTO and Andrea Kalmans as an investor has many years of experience writing wallets for Cardano and also created the Rust SDK for Cardano. Kornacki has been a member of project Catalyst since Sept. 20, 2020 while Arquero has been a member since Apr. 13, 2021.
The team is asking for $40,000 and hopes to complete the implementation in the first half of 2022.
The UTxO Management issues have accumulated in Cardano especially since the blockchain can now support multi-assets and smart contracts. The proposal suggests to write input selection algorithms inside the Rust SDK for Cardano so that all projects can escape the challenges of downtime, higher gees and poor user experience. This proposal is led by a team with a proven track record of writing wallets for Cardano and creating Rust SDK for the blockchain. With the number of proposals by the team as well as their experience, users can easily track the progress of the project as well as get clarification in case of any questions and concerns.