Worklog. September results
Hello, friends! We hope your September has been productive while the Cellframe team has been hard at work on new developments and improvements. Read on for the most interesting updates in our traditional digest!
Web Development
Main Cellframe Network Website
In September, our team made numerous enhancements to the main Cellframe website. We updated the pages to make it even easier and more pleasant for you to explore information about the project. Firstly, we added updated download links for Cellframe Node and Cellframe Dashboard on the “Products” page. With these links, you can easily install or update the applications. Additionally, the partners page now features links to the KelVPN and Node.sys projects.
One of the key updates for September is the dynamic display of the number of validators on the main Cellframe Network page. This functionality has already been implemented on the backend and will soon be connected to the website.
We also updated the list of exchanges where you can purchase the CELL token, allowing you to find convenient platforms for buying and selling cryptocurrency more quickly.
To simplify navigation, we added a link to the Cellframe Shop in the footer of the Cellframe Network page, making it easier to find the products you need and place pre-orders.
Cellframe Shop
On the Cellframe Shop website, which was launched recently, it is now possible to place a pre-order for the Cellframe hardware node. To do this, you need to fill out a form on the website. You can be one of the first owners of the hardware node!
To enhance security on the online store, we added a feature that automatically logs out from all devices when the password is changed, and we improved the account recovery system. You can now do this through an email with a code.
Cellframe Explorer
We updated the Cellframe Explorer website and implemented support for Cellframe Node version 5.3. Now, all data on the site is displayed correctly.
Cellframe Dashboard
We recently released a new version of the Cellframe Dashboard. It can be downloaded from our website. The main improvement was the separation of the installation processes for Cellframe Node and Cellframe Dashboard, allowing applications to be installed and updated separately.
In September, we refined the mechanism that automatically finds the path to the node and suggests loading it. For user convenience, we also added a notification window regarding the need to install or update the node.
Additionally, we redesigned the tab for launching the masternode through the Dashboard. Now, during setup, you can select a certificate for encrypting and protecting data.
The application now features a password confirmation field when creating a new wallet. Furthermore, it is now possible to add a password to an existing wallet. Recently, users can also create wallets with multiple signatures simultaneously. These important updates are primarily aimed at enhancing security.
We are continuing the integration of the Cellframe Dashboard and Cellframe Wallet applications, and we are currently working on connecting the Wallet interface to the Dashboard backend.
We refactored the diagnostic module of Cellframe Dashboard. Previously, the application collected diagnostic data on its own, which created additional system load. Now, thanks to the new integration with the diagtool utility, it receives ready-made data via the TCP protocol. This not only simplified the process but also significantly reduced the load on the Dashboard.
In September, we fixed several bugs and improved the performance of Cellframe Dashboard:
● Identified and fixed an issue that caused an encrypted wallet to be created by default when a new wallet was created.
● Resolved a problem with incorrect display of network synchronization status on the bottom panel.
● Ensured correct launch of Cellframe Dashboard after node installation and restored access to application functionality.
● Eliminated graphical interface crashes on Windows and Linux versions. Using the application will now be even more comfortable.
Very soon, Cellframe Dashboard will have the option to set a custom transaction fee amount. Users will be able to adjust it according to their preferences. This is especially important since the fee amount directly affects the transaction processing speed.
We are regularly implementing the most relevant post-quantum algorithms into Cellframe Dashboard. Currently, we are adding support for SPHINKS+ and Shipovnik signatures, which will ensure reliable protection for data and transactions even in a quantum apocalypse.
Cellframe Node & SDK
In August, we released the long-awaited Cellframe Node 5.3 and sent the code for external security audit. While the external audit is ongoing, we continue to work on enhancing our node’s functionality.
First and foremost, we introduced a limit on the weight of validators — no more than 3% of the total network weight. Anything exceeding this limit will not be counted in block signing and reward distribution. This limit is necessary to maintain balance in the network and make the reward distribution process fairer.
As you know, a validator’s weight in the network is determined by the amount of staked m-tokens. The more m-tokens, the higher the weight.
The total weight of the masternodes is the sum of m-tokens from all validators in the network. 3% of this value is calculated automatically. If the number of m-tokens changes, the limit is recalculated immediately. Information about the current weight of the masternodes can be viewed in the list of network validators.
If the weight exceeds the limit, the validator will be able to withdraw the “excess” part of their m-tokens. They can then use these tokens to launch another masternode or delegate them to another validator, thereby preserving their income.
Another enhancement related to validator weight concerns absolute weight. Previously, validators had to contact technical support to change the amount of staked m-tokens, but now they can do this themselves using the command srv_stake update. The main condition is not to exceed the existing limits (minimum and maximum m-tokens for the masternode).
We also added a new multi-signature — a combination of ECDSA and CRYSTALS-Dilithium, which provides additional security in case of detection of errors in the implementation of Dilithium, while having little impact on algorithm performance.
In September, we simplified the process of delegating the key when launching a masternode. Previously, to delegate a public key, it was necessary to store its certificate on the same device as the masternode. Now it is sufficient to know the certificate hash and use the command srv_stake delegate on any device. This is especially relevant for those who launch multiple masternodes at once.
We optimized the transaction search process, and now the composition of transaction history is performed more quickly.
Another important improvement concerns the PoA (Proof of Authority) consensus. Now, its launch occurs only when there is a signing certificate. Previously, we identified a bug that could cause it to activate arbitrarily, even in the absence of a signing certificate for DAG events. Proof of Authority (PoA) is a consensus mechanism that uses a limited set of keys for signing, and only these signatures are considered valid. In our network, PoA is applied to the zero-chain — the basic chain where tokens are issued and emissions occur, as well as where decrees (governing network data) are stored. The zero-chain represents a linear DAG (directed acyclic graph), where each element is an event. You can read more about the architecture of the Cellframe Network on the Cellframe Wiki in the Architecture Overview section.
Our team actively collaborates with the community of validators, who regularly send us important reports. Thanks to the information received, we discovered and eliminated memory corruption issues. This has helped increase the reliability and resilience of the entire infrastructure.
Python Plugins
In September, we updated the bridge smart contracts and transferred all liquidity from the old contracts to them. This work was part of the preparation for launching the two-way mode of the bridge. While writing the new smart contracts, we considered previous experiences and improved the functionality of automatic fund unlocking.
To create and compile transactions, we developed an API in Python. Previously, transaction structures could only be created through CLI commands, working directly with the Cellframe SDK, but now a special Python plugin can be used to create transactions, significantly simplifying the task for developers.
In the emission center, we tested and refined the consensus algorithm among the bridge nodes. As a result, we managed to optimize its operation and improve the security of the mechanisms.
Additionally, the team continues to actively work on refactoring the staking plugin. The first results are already noticeable: thanks to the optimizations made, the plugin’s performance has increased several times compared to the previous version.
During the refactoring process, we made several important improvements:
● Fixed an error related to converting datetime values to integers for correct data serialization.
● Eliminated a problem with the incorrect data type in transaction history, improving the serialization and deserialization processes — now addresses in stakes are saved correctly.
● Implemented a module for issuing emissions of all types of transactions. This automated the process of token distribution based on transaction type and emission conditions.
We also restored the reward accrual functionality for LP stakes in the CELL/KEL pool, and now the distribution of mKEL tokens in version V3 occurs correctly.
Finally, new functionality for obtaining information about the number of validators was added to the Python helpers library.
Tech Writing
In September, we developed a guide on using the DEX tab in the Cellframe Dashboard application. The manual describes two modes of operation: standard and advanced, which is suitable for experienced traders. It is now even easier to understand the DEX functionality.
We also prepared a description of the CLI commands for the GDB group responsible for managing nodes in the Cellframe network. The documentation includes examples of command usage, their parameters, and details about operation in various scenarios.
We strive to make information accessible to everyone and will present even more useful materials in the future.
Join the Cellframe ecosystem and stay tuned for updates!