Announcing the Release of Dash Platform v0.11
In keeping with our commitment to more iterative releases, Dash Core Group is proud to announce a new Dash Platform release, which includes a significant update to Evonet, the testing environment for platform functionality. This release represents the specific combination of platform components that comprises our most up-to-date software. The most important consequence of this release will be the update to Evonet, but individuals will also be able to experiment with the software in other environments such as local development or a private devnet.
In our article describing the initial Evonet release, we outlined several, non-sequential phases for future development. The current phase, Secure the Platform, involves broad enhancements to security, with a main focus on improving light client support by integrating LLMQ’s into the platform consensus mechanism. While the light client work is still ongoing, we have made significant security improvements that enable anyone to create and register data contracts, thereby unlocking the potential to use Dash Platform as a decentralized, consensus-backed Database-as-a-Service.
Release Highlights
Breaking changes were introduced via this release, which made data previously created on Evonet incompatible with this newest version. Therefore, we wiped Evonet of all preexisting data, and developers will need to wipe any data stored on their local setup as well.
Below you’ll find a list of the most important updates included in the Platform v0.11 release. You can view all of the updates in greater detail by visiting the release notes for each platform component, which are included in the last section of this article.
- Register Public Data Contracts: DCG has removed internal restrictions on the registration of data contracts on Evonet. We have added additional validation rules and now parse and validate state transitions in an isolated virtual machine on the platform. This was done in order to secure state transition execution and prevent malicious contracts from affecting other processes. In effect, these changes have provided enough security for people to be able to publish their own contracts without compromising the integrity of the network.
- DAPI Now Works in Web Browsers: DAPI uses the native gRPC protocol which has a well-known limitation of not working in web browsers. In order to remedy this, we implemented Envoy, a gRPC Web proxy, in the platform setup. Consequently, all gRPC endpoints now work in web browsers, thereby unlocking the potential of Dash Platform on web clients.
- Distribution Package for Local Development and Evonet: Due to the complex nature of the platform, with its many integrated components, installing a platform-enabled masternode can be a challenging task. Now, mn-bootstrap has been updated with configuration presets for Evonet, turning it into an installer for anyone who wants to add their own node to the network. In addition, mn-bootstrap can be used to run a standalone node for local development.
- Insecure Endpoints Have Been Removed: Many DAPI endpoints included in the previous release were either unnecessary, deprecated, or contained potential attack vectors that could be exploited by a malicious actor. Those endpoints have been removed from our newest release, making the DAPI interface more secure and simple. A list of the available endpoints is available here. For now, this list is limited and not suitable for full development, and we will introduce additional endpoints in future releases.
- Updated Dash Core to v0.15: The platform now uses the latest version of Dash Core, which includes updates to the desktop wallet to improve the user experience, mempool improvements for syncing new nodes, improvements to PrivateSend to improve the mixing process, and a significant number of backports to keep Dash up to date with Bitcoin v0.15.
A Concluding Note on DCG’s Development Process
Dash Core Group develops software in alignment with the Scrum framework. We develop software by breaking down our process into recurring 2-week cycles. Each cycle begins by identifying the work we want to accomplish, and we end the cycle with an internal presentation and team reflection on how to improve in the future. In the spirit of this continuous improvement process, we have identified a need for greater transparency with the community. In achieving this transparency, we hope to build trust, better manage delivery expectations, and increase developer participation in our repositories. In the near future, DCG will be releasing another blog post outlining our plan for greater transparency, as well as updating the community about the platform roadmap. Some of this information will also be shared in the next quarterly call.
In conclusion, I’d like to thank the members of the platform team, the other members of DCG who supported this release, and the burgeoning developer community providing feedback on Reddit and Discord. Through our combined effort, we will continue to evolve the Dash network into a best-in-class payments network.
Release Notes
- Dash Platform Protocol v0.11
- Drive v0.11
- Machine v0.11
- DAPI v0.11
- MN-Bootstrap v0.11
- Dash Platform Services Controller v0.11
- Dash Network Deploy Tool v0.11