-
Notifications
You must be signed in to change notification settings - Fork 25
Description
To reduce fraud abuse vectors, we plan to introduce a mechanism in the system contract that will ensure that certain reserved strings (determined by decentralized governance processes) cannot be included in new account names, except by the priveleged system account eosio.
Requirements
Restricted String Management
- Since every lookup adds computation cost, all restricted strings should be stored in a single table row as a vector to optimize efficiency.
- No need to support the list scaling to large amounts of restricted strings, a reasonable upper bound is acceptable
- Only accounts with eosio authority can modify the list.
- A string can be removed from the restrictions table via a privileged action.
Restricted String Enforcement
- The contract must reject account creation if the desired name contains a restricted string
- The contract will not attempt to enforce against homoglyphs (similar-looking characters like l / 1).
- If additional homoglyph variations need to be restricted, they should be explicitly restricted.
Exceptions
- Restrictions do not impact existing accounts.
- Restrictions do not apply if the newaccount action is authorized by eosio.
- Restrictions do not apply if the restricted string is the suffix of the account name and the remaining portion of the name is a valid account identifier
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Done