Developer’s Journal #26
The new version will be available for installation on February 28. A release for the community will be announced separately.
Improvements and optimizationsSome of the works carried out on the new version saw significant redesigning of the network subsystem. The new developments in comparison with the previous release provide the following features:
- Increasing of decentralization level due to the abandonment of the start node. Any active node can now serve as an entry point for a new node.
- A significant increase in useful bandwidth as a result of reduced network traffic and stable duration of the consensus round, as well as the assembly of blocks. This was made possible by ensuring a large margin in the bandwidth of the network subsystem.
- Improvements in the work of the blacklisting mechanism have been introduced. In the new version, the network address of the node is added to the list instead of the public key of the node.
- Improved protection against DDoS attacks was implemented. A vulnerability to numerous requests of blocks and synchronization was identified in the previous version. As a result, the basic functionality of the node was violated by vulnerability. In the new version, all network packets are processed in a special manner to counteract this effect.
- The ability to work behind NAT without manually configuring port forwarding in the router was implemented.
- Delegation to multiple accounts from one wallet;
- Accumulation of funds from several wallets on one account;
- Setting the validity period of delegation by date/time.
The block synchronization mechanism has also been redesigned:
- The algorithm for requesting blocks from “neighboring” nodes was improved;
- Memory consumption for block caching was significantly reduced;
- When a node is restarted, a persistent cache is now used, which allows saving from loss of any blocks that are not already placed in the blockchain.
Immediate response for each transaction upon its adoption has also been implemented in the form of either success or rejection by consensus.