EOS System Contracts v3.8.0 Release Notes
This release of System Contracts introduces a structured mechanism for blocking specific account name patterns. It utilizes a hash-based verification to conceal the blocked naming patterns. These changes strengthen the ability to enforce naming policies while maintaining accountability and verification mechanisms.
denyhashcalc
Computes a hash from a given vector of name patterns.This is a read-only action.
denyhashadd
Stores a computed hash on the blockchain. Requires eosio permission. This stored hash must exist before adding name patterns to the blacklist.
denyhashrm
Removes a previously stored hash. Triggers an exception if the hash does not exist or was already removed. Requires eosio permission.
denynames
Adds name patterns to the account_name_blacklist. Ensures new accounts cannot be created if their names match blacklisted patterns. Can be called by any account, but only succeeds if the corresponding hash was stored via denyhashadd.
undenynames
Removes name patterns from the account_name_blacklist. Requires eosio permission.
What's Changed
Contributions by @greg7mdp
- Fix warnings and improve error messages in #190
- Account Name Restriction in System Contract in #189
- Add a
hash/revealmechanism to avoid revealing the reserved account names when activating the blacklist in #191 - Silently ignore 13 character or empty patterns in the deny name vector in #192
Full Changelog: v3.7.0...v3.8.0