Mhairi
March 2, 2022, 12:47pm
1
This UMIP proposes an upgrade to the Voting module within the DVM to mitigate the use of flash loan during voting rounds. This upgrade will enforce that DVM balance snapshots are captured from EOA wallets to prevent the use of flash-loans in this context. This upgrade will also change the rewards expiry timeout from 2 weeks to 1000 years, which effectively amounts to no expiration.
## Headers
| UMIP-15 | |
| ---------- | ------------------------------------------------------------------------------------------ |
| UMIP Title | Approve Updated DVM Voting Contract to Mitigate Flash-loans During Token Balance Snapshots |
| Authors | Chris Maree (chris@umaproject.org) |
| Status | Approved |
| Created | September 17, 2020 |
## Summary
This UMIP proposes an upgrade to the Voting module within the DVM to mitigate the use of flash loan during voting rounds. This upgrade will enforce that DVM balance snapshots are captured from EOA wallets to prevent the use of flash-loans in this context. This upgrade will also change the rewards expiry timeout from 2 weeks to 1000 years, which effectively amounts to no expiration.
## Motivation & Rationale
The UMA voting mechanism uses a commit-reveal scheme, where votes are weighted in proportion to the token balance of the voters. The corresponding snapshot of the token distribution is taken at the start of each reveal phase, either through a dedicated function call, or automatically alongside the first revealed vote.
However, it is possible for users to take out a flash loan of UMA tokens from a decentralized exchange, trigger the snapshot and then repay the loan in a single transaction. This would arguably give them undue influence over the result of the vote. Given the current state of the DeFi ecosystem, the flash-loan scenario is significantly simpler, more plausible, and arguably more concerning, so it warrants a dedicated mitigation.
This UMIP proposes a solution that makes it imposable to utilize flash loans during voting, thereby enforcing that users hold UMA tokens beyond a single block if they wish to participate in governance.
This file has been truncated. show original