Accounts may configure a set of smart rules to block announcing or receiving transactions given a series of restrictions.
The account owners—plural in case of multisig accounts—can edit the account restrictions at a later time announcing the specific AccountAddressRestrictionTransaction.
Symbol’s public network enables accounts to define up to 512
restrictions per account and restriction type, being this parameter configurable per network.
An account can decide to only receive transactions from a list of allowed addresses. Alternatively, the account can define a list of blocked addresses.
Restricting incoming transactions is useful when the account will be only receiving transactions from known addresses, or when the account wants to block transactions coming from unknown senders.
Note
Allow and block restrictions are mutually exclusive. In other words, an account can only configure a block or an allow list per type of restriction.
By default, when there are no restrictions set, all the accounts in the network can announce transactions to the unrestricted account.
Additionally, an account can decide to apply address restrictions to the outgoing transactions, limiting the accounts allowed that are valid recipients.
Similar to address restrictions, an account can configure a restriction to permit incoming transactions only if all the mosaics attached are allowed. On the other hand, the account can refuse to accept transactions containing a mosaic listed as blocked.
Account mosaic restrictions are generally used to prevent accounts being tagged with mosaics not associated with their activity.
An account can allow/block announcing outgoing transactions with a determined operation type. By doing so, the account increases its security, preventing the announcement by mistake of undesired transactions.
Restriction |
Incoming Transactions |
Outgoing Transactions |
---|---|---|
Address Restriction |
✔️ |
✔️ |
Mosaic Restriction |
✔️ |
❌ |
Operation Restriction |
❌ |
✔️ |
A pharmaceutical company is using the public chain to certify the quality of their products.
When the quality verification process concludes, an operator sends a quality seal to the product account.
The final customers can review the product mosaics scanning a QR code. For that reason, the company only wants to show related transactions, avoiding that others spam their products with non-related information.
The company opts to configure their product accounts restrictions, enabling only to receive transactions containing pharmaceutical.quality.seal
mosaics.
Lately, Alice is only using her main account to cosign aggregate transactions where she is a cosignatory for the multisig account.
As a temporary security measure, Alice opts to disable announcing transfer transactions from her main account. Doing so, Alice double-checks that the funds held in the main account are not going to be transferred by mistake.