-
Notifications
You must be signed in to change notification settings - Fork 3
Description
One of the crucial features of a stablecoin chain is its blacklisting capability. We find ourselves at a crossroads of decentralization, balancing the risk of malicious actors seizing large quantities of issued tokens and dumping them on the market against the risk of fraudulent activities by the token issuer. If one side is based on trust, we can be more favorably disposed to institutional safeguards for the other. In the case of stablecoins, where the coin's backing is guaranteed by pegged fiat currency and overseen by regulatory bodies, we can opt for centralized control to mitigate hacking incidents or accidents within the decentralization dilemma. Many existing FiatTokens issued on established chains have already implemented blacklisting functionalities based on this rationale.
However, a stablecoin chain's blacklisting functionality carries a much greater impact than that within a single contract. Preventing the transfer of stablecoins effectively blocks an account, as it also renders it unable to pay native token fees. While there are workarounds, such as using a fee delegation mechanism to send transactions, even with fee delegation, an account's entire balance cannot be withdrawn. Conversely, there could be urgent situations where a malicious account cannot be identified quickly enough. To address this, an emergency mode is supported, allowing transactions only for whitelisted accounts.
The detailed blacklisting specifications are as follows:
- Through the NativeTokenAdapter contract, an account can be added to or removed from the blacklist with MasterMinter authority.
- Accounts on the blacklist cannot send or receive stablecoins.
- Accounts on the blacklist cannot call approve, and signatures for permit or transferWithAuthorization will also be blocked.
- Transactions cannot be sent from an account on the blacklist. Attempts to deduct gas tokens will be blocked.
- Fee delegation transactions cannot be sent from an account on the blacklist.