There are two accounting models in blockchains to record transactions, the UTxO variants (Bitcoin has primitive UTxO, and Cardano the extended one, eUTxO), and the Account/Balance model variants (like the Ethereum blockchain).
It is technically possible to emulate the Account/Balance model in UTxO, but it is not possible to emulate UTxO in blockchains that have the Account/Balance model.
The concurrency of smart contracts on the eUTxO blockchains is very limited.
There are types of DApps that have coding needs that cannot be solved using the UTxO model (Ergo, Cardano, Nervos), but rather an L2 solution (an off-chain sequencer) has to be used. But such challenges are easily solved using Account/Balance model blockchains, and that’s what the AVOUM proposal is all about.
Off-chain sequencers are L2 solutions, which allow transactions to be reordered, and can be executed by anyone, although it is recommended through the same stakepool validators, as in the case of Cardano.
AVOUM (Account-View On UTxO Models) can establish an Account/Balance model-based on a UTxO-type chain for developers who prefer that way of working, along with a notion of malleable transactions, which allow for much higher concurrency.
The AVOUM solution is so versatile that it is possible for one developer to enable it for his DApp and for other DApp developers not to enable it.
Protocol updates, such as work being done on Hydra, will add more capacity.
AVOUM allows the massive verification of transactions, and in parallel, in UTxO blockchains (Cardano, Bitcoin Cash, Nervos, etc.), queuing future transactions, as it is operated in Account/Balance model blockchains (Ethereum).
AVOUM implies greater malleability in transactions and scripts, which automatically readjust the transactions on the last UTxOs of the contract status.
AVOUM already exists on another blockchain, Nervos. Therefore, it is proven that this technology is functional and that most of the design doubts have already been answered. Nervos implemented AVOUM on L1, this means that they can develop DApps that have concurrency challenges, such as Automated Market Maker (AMM) DEXes on L1.
The two main problems AVOUM solves are:
- “Open” contracts with an unlimited number of participants or transactions can be subject to distributed denial-of-service (DDoS) attacks, whereby sophisticated attackers can modify the contract’s UTxO more faster than victims can react, preventing them from interacting with it. By making these transactions suitably malleable, intermediaries (validators) can work so that transactions are accepted by the blockchain in exchange for a fee, being an economical solution against this type of attack.
- Writing UTxO unlock scripts, in which transactions are suitably malleable, allows users to interact with contracts as if the blockchain were using an Account/Balance model. But applying the design pattern manually is more complex, and the result may not be recognized by the transaction posting intermediaries (validators). The solution is to automate this discipline using a suitable library.
The solution will allow for the secure implementation of “open” contracts on the Cardano blockchain, a feat currently not possible, and will bring its smart contract capabilities on par with Ethereum.
If you want to see more detailed information about this proposal, and case studies: AVOUM: Account-View-on-UTXO-Model For Cardano Project Catalyst F7.
The initial phase will involve a senior architect and a senior engineer, not necessarily full time, for approximately one month, at a total cost of USD 26,500.
Development of Catalyst’s FUND7:
Proof of concept for malleability on Plutus. The first step for this project is to write a design that allows for a simple “open” contract with malleable transactions where one UTxO can be substituted for another.
Future developments for the next Catalyst funds:
The second step will be to develop a change in the node software so that it can successfully execute the auction contract.
The third step will be to develop a general-purpose library for “open” contracts on Plutus.
The fourth and final step will be to develop a general-purpose library for malleable transactions on the node.
The deliverables for this phase will be:
- A study detailing the feasibility and design of AVOUM on Plutus.
- A set of proposed API modifications (to the PAB, etc.) to allow malleable transactions.
Mutual Knowledge Systems, Inc. is a company whose mission is to evolve a new decentralized Internet, developing tools on programming languages, with formal methods and distributed systems. This gives a unique advantage to write, audit or rewrite applications, so that they remain intact under attack.
MuKn (Mutual Knowledge Systems, Inc.) has already created an AVOUM prototype on the Nervos CKB, (Common Knowledge Base, is the layer 1 Proof of Work protocol of the Nervos Network).
Co-Founder, has been making programming languages and distributed systems usable for 25 years. Alumnus of the École Normale Supérieure, Former Senior Engineer at ITA Software, he also worked at Google and Bridgewater Associates.
Co-Founder, has always thought fast, but Learned to think deep and sharp at UChicago. After studying law at Pepperdine, I have spent nearly fifteen years guiding executives and decision makers through litigation, in matters ranging from shoplifting and speeding tickets to multi-forum international investment bank disputes.
Co-Founder, has been a seasoned coach, psychotherapist and instructor in communication and management. He doubled his career as a media expert (film and software producer, then e-marketing manager).
You can see the full team here.
You can read the proposal in Ideascale: AVOUM on Cardano
GitHub website: https://gitlab.com/mukn/ckb-avoum-auction