Dev Status Update — October, 2020
The full article was originally published by Jakub Cech on Medium. Read the full article here.
Dev Status Update — October, 2020
The Chrysalis phase 1 components were deployed to mainnet in August. The engineering team is now working on Chrysalis phase 2.
The current plan is to have a publicly available testnet for Chrysalis phase 2 ready as soon as possible. The testnet will allow us to test the node integrations, client libraries, and the new wallet. Partners and anyone integrating on top of the current network will be able to start working with the new APIs and functionality. In November, we will also be auditing the core functionality.
We have released a new version of the Pollen network. The latest version of the GoShimmer software, v0.3.0 contains the full integration of the Decentralized Random Number Generator (dRNG) module. You can read up on the update here.
The team is working on the next large milestone, Nectar. The components that will make up the Nectar network are being iteratively released on the testnet to allow us to test individual Coordicide components.
You can read more about Pollen, Nectar, and Honey, concepts we introduced to talk about the milestones on the path to Coordicide, in this post.
The Bee team has finished the implementation of some of the important components of the node software. We have switched the runtime to Tokio for better performance and compatibility with the Rust ecosystem. We also switched our channels to flume for better performance. We have added deserialization and serialization of the new message layout for Chrysalis phase 2. The network layer is being migrated to libp2p for the future implementation of autopeering. The node and its interaction with the different workers and storage has been completely refactored for better maintainability.
A large effort that Thibault has started during the regular Friday coding livestream is the removal of bundles and ternary from code. Bee is now working completely without ternary and bundles in the code. You can find the full playlist of our coding livestreams here.
You can find all Bee RFCs in their respective GitHub repository.
The team has significantly progressed with the implementation of Chrysalis phase 2 changes in the node software. The biggest missing piece is the adjusted Proof of Work (PoW) for binary messages. Changes like the new node API, and local snapshots and solidification are working in the current development build.
We have just released the pre-alpha version of IOTA Smart Contracts. You can read all about it in this blog post. We are now working on scoping up the future development of the smart contracts protocol, to Wasp alpha, fully integrated Wasmtime VM and VM sandbox API, all the way to Wasp beta and more. We are also extending the team to be able to ramp up our smart contracts efforts.
The Stronghold team is currently working on the final engine revision and a proper client implementation so that the external security audit in November can be undertaken on schedule. These changes will promote Stronghold to alpha quality software. You can read more about it in the forthcoming blog update.
The team has been working to finalize the wallet frontend to provide the designers with a medium through which they can validate the designs, illustrations and UX. The onboarding UI is complete, and there are just some finer details around the dashboard UI to finalize. The process is illuminating because often only when you have a dummy app in front of you can you identify missing functionalities and screens or subpar user experience. Accordingly, the design team is now revisiting some onboarding illustrations and some details around how best to present user accounts.
The backend has been validated and is working across all platforms (iOS, Android, Linux, Windows & Mac). With the UI nearly complete, we will now begin hooking up the wallet frontend to its backend and building the rest of the wallet functionality. This coincides nicely with the progress node API and Hornet teams have made. With the new Chrysalis node API available on internal Hornet nodes, we can begin to test the wallet library in a Chrysalis setting.
Note that the first version of the wallet has been scaled back to core wallet functionality, and with a focus on desktop only initially. This decision was made to ensure nothing is rushed and that the base layer is as solid as possible for expansion — which will pay dividends in the future. Once desktop is complete we will return to the mobile app, and begin adding the future feature set, including things like contacts and, later, colored coins.
While these low-level libraries are taking shape, we are designing the higher-level and much easier to use Identity libraries. These will be a lot easier to work with and should support about 90% of the use cases. As discussed last month, integration with Stronghold is also a top priority to deliver out-of-the-box protected digital identities. Thanks to the EDF team consisting of huhn#8105, Thoralf#3558 and Tensor#2912, we remain on track for the release of the IOTA Identity fundamentals before the end of the year.
We have just released the last alpha version of IOTA Streams. You can read all about it and the next plans in this blog post.
IOTA Experience Team
This month also brings news about the community involvement in the IOTA Experience Teams.
This X-Team revolves around IOTA Access and the number of contributors has grown thanks to curiosity and common interest. The X-Team members will have a Q&A session and feedback meeting after exploring the IOTA Access MVP with Bernardo.
Hereby we welcome the new X-Team members lito#3766, Dr.Electron#9370 and hcsatish#2337.
The GoShimmer X-Team supported Angelo Capossele, our Senior Research Scientist, in testing and launching the X-Team dRNG committee that has now become an integral part of the Pollen Testnet with the 0.3.0 release. This committee is providing a verifiable, decentralized randomness beacon that will be used by our consensus mechanism FPC as well as anyone that may need a public source of randomness for GoShimmer.
Their goal in the upcoming months is to mentor and support the IOTA Community in the organization and set up of the official IOTA community driven dRNG committee. We would like to thank the GoShimmer X-Team community members for their help and support throughout the testing phase of the dRNG module.
The Bee X-Team is contributing with very valuable feedback to the IOTA Foundation Bee team.
svenger87#8523, daverl#0001 and Luca#3952 are setting up Bee nodes and reporting their findings.
The IOTA Streams X-Team members Yalamber#9880 and huhn#8105 are contributing independently to IOTA Streams with the goal they proposed: WASM Binding for Node.js and Browsers.
Everyone is invited to the IOTA Experience Teams to pave the road for IOTA to have the best developer experience in the DLT and IoT space. Discover the IOTA Experience Team on GitHub, explore the IOTA Experience Initiatives and then apply through this form.
We have made the following updates to our roadmap:
- Bee node software has been moved to December. We will be releasing the Bee node software together with Chrysalis phase 2. Due to the scope of the rewrite of Bee for Chrysalis phase 2, a lot of effort would have to be put in components that would be discontinued shortly after the release, such as bundles.
- Nectar has been moved to Q1 2021. We expect this is when we will have all the Coordicide components implemented in the GoShimmer node software.
- Honey has been moved to the end of Q2 2021.
This section will mention significant bugs or vulnerabilities that have been fixed in any software managed by the IOTA Foundation.
On August 19, 2020, Hornet v0.5.0 was officially released. This version of Hornet contained a vulnerability that allowed the node software to request transactions with invalid, lower than allowed, Minimum weight magnitude (MWM). This allowed anyone using a customized spammer to send a large number of transactions to the network with a disproportionately low proof of work.
This was consequently fixed with the release of Hornet 0.5.1 on August 27. While the network coordinator and the IF infrastructure was upgraded on the same day as the vulnerability was discovered, August 21, with a build that already contained the fix.
As always, we welcome everyone to stop by on Discord — every project mentioned here has a channel (or more) for discussion with the devs!
Follow us on Twitter to keep track of all the latest news: https://twitter.com/iotatoken