githubEdit

Using Blacklisting Tokens as Currency

Using a token that allows backlisting (e.g. USDC) as your requestPricearrow-up-right currency opens up a griefing vector that integrators should be aware of.

The proposePriceForarrow-up-right and disputePriceForarrow-up-right functions allow the caller to set any address as the proposer and disputer that will receive payouts if their proposal/dispute is correct upon settlement. If a bad actor calls both proposePriceForarrow-up-right and disputePriceForarrow-up-right and specifies a blacklisted address for repayment, the settlearrow-up-right function will revert and cause the request to be frozen unless the address is unblacklisted. This costs the malicious user 2 bonds and does not result in any gain, but freezing the request could cause issues for the integrator.

To avoid this, integrations that use tokens with blacklisting functionality should ensure that their admins can call a function that ignores the frozen request and creates a new OOV2 request. In this way they can prevent a frozen request from having any negative consequences to their protocol.

Last updated

Was this helpful?