Crowdfunding campaign

Developer’s Journal #25

The Credits team is delighted to present the first edition of the Developer's Journal for the year 2020. The developers of the project team have made tremendous progress over the past month and have introduced a number of important improvements for increasing the effectiveness of the platform’s performance.

The following article will include Mainnet version 4.2.452 download links along with information about current release fixes and improvements. The release is available for download using the links provided below:

General improvements

  • Reduction in the response time of the network when sending transactions by controlling the lifetime of the transaction packet. Long waiting times have been eliminated and replaced with quick responses, as each transaction is categorized as either passed or failed. This prevents the possibility of network congestion with outdated and duplicate transaction packages at high loads;
  • Improvements of the API node protocol: the new transaction ID is now immediately included in response to a transaction creation request;
  • Inclusion of the ability to query the current time in contracts and bind logic and events in contracts to date and time.

Security Improvements

The developers have added additional validation when writing blocks by all nodes, including in the process of synchronizing blocks. Compared with the previous release, the number of checks has been significantly increased.
Previously, synchronized blocks were not checked, because they were verified by nodes that had participated in consensus and added them to the blockchain. With the new release, the nodes do not write them to their own database without additional verification. The main advantage is that there is no sense in seizing consensus and adding transactions to the blockchain since the nodes will not write such a block in the synchronization process.

Network Speed Improvements

  • Improvements in the operation of nodes with their neighbors. This is especially effective for a network with a large number of nodes. Previously, a node worked with an undetermined number of neighboring nodes. In the case when the number of neighboring nodes reached a few dozen, the node traffic increased significantly. Now the node controls the number of neighbors itself and does not allow an exceeding of the allowable number. In the current release, the maximum number of neighboring nodes is 16;
  • Transaction processing time reduction. The time needed for waiting for a timeout when calling a contract has been significantly reduced, and the frequency of timeouts when calling contracts has also been reduced.

Node Stability Improvements

  • Improvements in the security of the API when processing irrelevant invalid requests;
  • Improvements in security when identifying and discarding invalid network packets.

Conclusion

The past month was extremely productive for the development team. Plans are already being made for uploading a new Developer’s Portal with improved UI / UX. The team also developed the Rest API in order to facilitate the interaction of external developers with the platform. In addition, an SDK for the main API methods for JS, C #, and Python has been implemented.
The development team would like to thank all community members for their support and understanding. Development of the platform and further product offerings and their fielding is one of the main priorities of the project team along with increasing the value of the platform for all stakeholders. Stay tuned for more news and updates from Credits.