completed

Cardano Omnibus - UTXO Management

$40,000.00 Received
$40,000.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Addresses Challenge
Feasibility
Auditability
ソリューション

CardanoのRust SDKに入力選択アルゴリズムを記述し、Cardanoを実装するすべてのプロジェクトが最先端のアルゴリズムにアクセスできるようにする。

Problem:

UTXOの管理は、ウォレット、dApps、取引所によって最適ではない方法で処理されており、ダウンタイムや手数料の増加、ユーザーエクスペリエンスの低下を引き起こしています。

Yes Votes:
₳ 177,658,020
No Votes:
₳ 22,593,115
Votes Cast:
479

This proposal was approved and funded by the Cardano Community via Project F7: Open Source Developer Ecosystem Catalyst funding round.

Detailed Plan

The UTxO has many interesting properties. However it comes with its challenges too. For one it is more difficult to manage UTxOs wallet to the scale of an exchange or a dApp. Handling UTxO even for smaller wallets already has its challenges. We want to provide specification and reference implementation on how to handle large amounts of UTxO, from the input selection to the output selection.

Indeed the Output selection has been totally left out of the many different papers out there. The simple cases have been resolved, how to do input selections in order to optimize the cost and the security of a wallet. Here we wish to explore solutions on how to continuously reorganise UTxO into sizable chunks to provide an easier and more optimized transaction system.

Example: if you have a wallet with millions of UTxOs, each holding a value of 1 ada. Technically your spending capacity is worth millions of Ada. Yet the limitation of the transaction size will make it impossible for you to do any transaction for all these assets. Now you can claim this is possible to do via multiple transactions. And you would be correct. But then you have wasted your fees. Because in Cardano, the most expensive part of the transaction is not necessarily the inputs and the outputs, it's the constant fee of 0.155381 Ada. Instead we want to build transactions to, at the same time, do the requested spending and perform the UTxO re-grouping. We claim this is cheaper and more efficient than any wallet implementation out there.

Since there is no readily available solution for this, many wallets 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 in exchanges and they try and manually fix their wallet.

As this is an open R&D problem, it is hard to predict how long it will take. Beyond the implementation itself, we plan to also contribute to the CIP discussion about input selections and properly document how we got to the final solution(s). We believe we can complete this in the first half of 2022

The previous work done in Byron by IOG no longer works well because Cardano now supports multi-asset and smart contracts, but it may be useful to look at to understand what the deliverable of this proposal will look like:

- Input Selection CIP: https://github.com/input-output-hk/cardano-coin-selection
- Input Selection library: https://input-output-hk.github.io/cardano-coin-selection/haddock/cardano-coin-selection-1.0.1/Cardano-CoinSelection.html
- Coin selection algorithm research: https://iohk.io/en/blog/posts/2018/07/03/self-organisation-in-coin-selection/

If you want to refer to the work that was done for this in Byron (doesn't work well anymore because Cardano sup

コミュニティ・アドバイザー・レビュー (1)

Comments

Monthly Reports

March Report

Disbursed to Date
$40,000
Status
Still in progress
Completion Target
6/1/2022
Comments 0

Login or Register to leave a comment!

A PoC of omnibus is being on production

Disbursed to Date
$40,000
Status
Still in progress
Completion Target
6/1/2022
Comments 0

Login or Register to leave a comment!

A proof of concept been released on Milkomeda with initial algorithm. We started internal preparations for closing the Cardano Omnibus - UTXO Management project. Project close report should be delivered by the end of 06.2022

Disbursed to Date
$40,000
Status
Still in progress
Completion Target
6/30/2022
Comments 0

Login or Register to leave a comment!

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3分 24秒
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4分 3秒
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3分 48秒
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2分 16秒
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3分 14秒
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3分 19秒
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4分 59秒
    Darlington Kofa
0:00
/
~0:00