Developer’s Journal #26
The Credits technical team is delighted to announce the release of the new network node version 4.2.503. The technical team would also like to share that new blocks will not be generated for about 6-12 hours during the period of transition of the nodes to the new version, and community nodes will be mandatorily shut down.
The new version will be available for installation on February 28. A release for the community will be announced separately.
Improvements and optimizations
Some 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.
The concept of delegation of funds has been implemented with several possible use cases proposed in the following manner:
- 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.
A mechanism has also been added for early notification by the node in the process of operation about the need to upgrade to a specific version.
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.
The time needed for executing contract calls has also been reduced. A new feature has been added which involves requesting the current time in the contract code.
Immediate response for each transaction upon its adoption has also been implemented in the form of either success or rejection by consensus.
The Credits development team is continuing to improve the network infrastructure and is constantly working on identifying any flaws or opportunities. Stay tuned for more news and updates from Credits.