The work for the past month has been primarily focused on the Matrix Chain Bridge component of the LNX Protocol Network, as well as making further development progress on the LNX Day Layer and the LNX Wallet components to prepare for the launch of the Arcturus Testnet before the end of the current calendar year.
We are nearing completion of the bulk of the work on LNX DAG Layer, and once the Matrix Chain Bridge component is complete, we will be launching the Arcturus Testnet internally. And after which, we will perform a period of integration stability and stress testing before opening the testnet to developers and the public in general.
- LNX Matrix Chain Bridge component is in rapid development phase, and is the last major component to be completed before Arcturus Testnet launch. This is one of the most important and intricate components for the implementation of the LNX protocol, and a culmination of tremendous amount of design and engineering work from the entire LNX Platform Team.
- LNX DAG layer is undergoing some revisions in order to integrate with Matrix Chain Bridge, and its remaining internal features such as synchronization are being completed as well.
- LNX Wallet’s UI redesign has been completed, and the design is being implemented using Vue.js framework.
1. Matrix Chain Bridge
The Matrix Chain Bridge is one of the key components of the overall LNX Protocol.
The Bridge is responsible for connecting the DAG based Layer 2 to the underlying Layer 1 State Matrix chain. We want to save the state changes that occur on the DAG layer to the underlying Matrix Chain in a fast, reliable, and secure way, and also be able to read information from the Matrix Chain into the DAG layer.
Our design philosophy for the Matrix Chain Bridge component is to have the Layer 1 Matrix Chain and the Layer 2 DAG be relative “black boxes” to each other, and have them only interact and exchange information through a “thin” interface in well-defined ways. This philosophy is to ensure the decoupling of the Layer 1 Matrix Chain with the Layer 2 DAG, which will allows us to expand LNX Protocol to work with more than just our own Layer 1 in the future.
As this is one of the more intricate component of the overall LNX Protocol to implement, it took our team some time to finalize the design and start implementation, but we have made solid progress in the past month.
The Matrix Chain Bridge must satisfy these characteristics:
- Two Way Information Flow: The Bridge needs to support both reading information from the Layer 1 Matrix Chain, and providing that information to the DAG layer, and also support taking information from the DAG layer, and writing it to the Matrix Chain.
- State Anchoring: The state of the DAG Layer must be anchored to the underlying Matrix Chain, which provides finality, and this anchoring is provided through a state anchoring mechanism provided by the Matrix Chain Bridge. Because of potential state conflicts, the Matrix Chain requests that the DAG be able to quickly “roll back” or “roll forward” its state. And this required some reworking of how our DAG layer currently works, as I will explain in more detail in the next section.
- Byzantine Fault Tolerant: The Matrix Bridge cannot become a single point failure in the overall network, and must be distributed and have Byzantine Fault Tolerance.
2. LNX DAG Layer
Work on LNX DAG Layer has continued along two dimensions, DAG Layer internal features and changes, and changes required by the integration with the Matrix Chain Bridge.
DAG Internal Features
The DAG Layer has been working already internally for a while, however, there were still some features that were missing, and one of the main missing features was the “download” or “synchronization” feature.
This logic would be used when a node connects to the network for the first time, or when a node’s state is completely out of sync with the rest of the network and needs a hard reset.
The download feature was completed this month in commit 5b9dce7 and merged into linix-develop2 branch.
Matrix Chain Bridge Integration Changes
The second category of changes on the DAG Layer are the changes we have made to integrate the DAG Layer with the Matrix Chain Bridge.
In short, in order to efficiently anchor the DAG to the Matrix Chain, we must store and track how the state changes in the DAG slightly differently.
In this sense, it’s better to think of a transaction or a collection of transactions as a “mutation” to the state of the DAG. This allows the state of the DAG to be efficiently forwarded or rolled back. Significant changes had to be made to the DAG Layer to allow this feature to be implemented.
3. LNX Wallet
Quick update on the LNX Wallet front, the design of the LNX Wallet is finalized and we are currently working on implementing the design into Vue.js, and are making good progress.
We will be using a mix of designer created assets and Vue.js component libraries such as Elemental UI and iView Pro, for the implementation of the LNX Wallet UI.
We are always hiring skilled engineers. We offer a competitive compensation package, flat organizational structure, and the chance to work with cutting edge blockchain technology. We are a distributed company and most of our engineers work in remote conditions, so candidates from anywhere are welcome to apply.
Experience with Rust is a plus as our codebase is primarily in Rust, but more fundamentally, we are looking for experienced developers who have experience with working on high performance, distributed computing platforms. Please forward your resume and GitHub profile to firstname.lastname@example.org if interested.
Stay tuned, and we thank you for all the support!