User Whitelists

User Whitelists

Any live-time member can cast an opinion about other accounts using white- and black-lists. They do not prevent anyone from interacting with your account but serve as a basis for list authorities.


A user white can be added to the white-list of account provider with::

>>> whitelist_account provider white white_listed true

In contrast a black user can be added to its blacklist with::

>>> whitelist_account provider black black_listed true

Both can be removed from their lists with::

>>> whitelist_account provider black no_listing true
>>> whitelist_account provider white no_listing true


White- and Black-listing of accounts works with the following API call:

signed_transaction graphene::wallet::wallet_api::whitelist_account(string authorizing_account, string account_to_list, account_whitelist_operation::account_listing new_listing_status, bool broadcast = false)

Whitelist and blacklist accounts, primarily for transacting in whitelisted assets.

Accounts can freely specify opinions about other accounts, in the form of either whitelisting or blacklisting them. This information is used in chain validation only to determine whether an account is authorized to transact in an asset type which enforces a whitelist, but third parties can use this information for other uses as well, as long as it does not conflict with the use of whitelisted assets.

An asset which enforces a whitelist specifies a list of accounts to maintain its whitelist, and a list of accounts to maintain its blacklist. In order for a given account A to hold and transact in a whitelisted asset S, A must be whitelisted by at least one of S’s whitelist_authorities and blacklisted by none of S’s blacklist_authorities. If A receives a balance of S, and is later removed from the whitelist(s) which allowed it to hold S, or added to any blacklist S specifies as authoritative, A’s balance of S will be frozen until A’s authorization is reinstated.

the signed transaction changing the whitelisting status
  • authorizing_account: the account who is doing the whitelisting
  • account_to_list: the account being whitelisted
  • new_listing_status: the new whitelisting status
  • broadcast: true to broadcast the transaction on the network

It expects a new_listing_status from

enum graphene::chain::account_whitelist_operation::account_listing


no_listing = 0x0

No opinion is specified about this account.

white_listed = 0x1

This account is whitelisted, but not blacklisted.

black_listed = 0x2

This account is blacklisted, but not whitelisted.

white_and_black_listed = white_listed | black_listed

This account is both whitelisted and blacklisted.