Stomping Elephant (3 of 3):
Dynamic Rental Fees and Persistent Delegation Harvesting Unlocking
Catapult is the upcoming full-feature core NEM engine. The development milestones are chronologically alphabetized and core-named for organization and recognition.
The Stomping Elephant examines the recent updates in the 5th Catapult milestone, Elephant. In this last part of the series, we introduce:
- Dynamic Rental Fees
- Persistent Delegation Harvesting Unlocking
Dynamic Rental Fees
Whenever users attempt to announce a transaction on the NEM blockchain, a fee is always demanded of them. These fees are an essential component in the network because it funds those who strengthen the network and keeps users accountable for their activity.
In NIS1, renting mosaics or namespaces requires a fee of a fixed amount — also known as service fee — defined by the network in addition to the transaction fee. However, fixed service fees can be problematic for the fluctuating network activity.
Depending on the state of the network, the fixed fee could be either too modest or unnecessarily hefty. Thus, Catapult implements dynamic rental fees that will fluctuate along with the NEM network activity.
With this feature, the NEM network adjusts the rental fees of namespaces and mosaics based on the needs of the network. It calculates the effective rental fee by evaluating the network multipliers of the most recent crop of blocks and modifying the fees accordingly. Dynamic rental fees will ensure that the fees are determined fairly and appropriately.
For a more detailed explanation of how dynamic rental fees are calculated, please visit here.
Persistent Delegated Harvesting Unlocking
Delegated Harvesting is a unique feature in NEM that allows users to reap the benefits of harvesting without the necessity of running a node. The feature allows eligible accounts to transfer their importance scores to remote accounts then share proxy private keys with nodes in order to harvest remotely and securely.
Delegated Harvesting is a convenient feature for participants in the NEM network, but suffers from a minor problem in NIS1: whenever the nodes disconnect from the network, the harvesters have to manually reconnect with nodes. This is suboptimal for the delegated harvesting experience because the beneficiaries managed by a node owｋner lose income while the node owner is not running with beneficiaries after the disconnection.
The Elephant update brings a solution to this problem with the implementation of Persistent Delegated Harvesting Unlocking (PDHU). PDHU is a feature that enables delegated harvesters to preserve their status despite connectivity problems of nodes. With PDHU, if a node experiences turbulence and reboots, the existing delegated harvesters will automatically reconnect when the node is back online.
Diagram 1. Comparing the delegated harvesting reconnection timeline between NIS1 and Catapult
To initiate PDHU, a user needs to first send a special encrypted message to a node via a transfer transaction. The message must contain the remote account’s private key, which is encrypted using the Advanced Encryption Standard (AES) so that only the recipient (node owner) will be able to decipher it.
Once a node receives the encrypted message using WebSockets and decrypts the proxy private key of the potential delegated harvester, the node owner can choose to save the account on disk, as long as the candidate is a valid remote account and there are free slots. Thereafter, if the node disconnects temporarily, for whatever reason, the persistent delegated harvester will be automatically reestablished as a delegated harvester once the node reconnects to the network.
Diagram 2. The process of enabling Persistent Delegation Harvesting Unlocking
Additionally, the use of encrypted message creates a backup of the information for the nodes. If the disk containing the delegated keys becomes corrupted or destroyed, the node owner can retrieve the information by querying the blockchain.
With the third release, the Elephant milestone finally comes to a close. All in all, Elephant is a significant update to Catapult, introducing an improved consensus protocol and several valuable features.
The NEM Core Team will now move their focus to the next milestone. Can you guess the name?
If you’ve missed the previous parts of this series:
Part 1 - Proof-of-Stake+ (PoS+)
Part 2 - Mosaic Restrictions and Metadata