The time has come. ARK Core v2 is now ready for launch. We are proud to announce the final and now official release date of Wednesday, November 28th. On this day we will break the champagne across the bow as the completely new vessel leaves dry dock and begins the voyage into the oceans of decentralization.
The Core v2 codebase is entirely new and has been developed from scratch. It has been through relentless testing and is now finely tuned and ready for launch on MainNet to become the backbone of our blockchain.
Before getting into the details of ARK v2, it is important to explain the why behind the what — to describe our inspiration for building v2 and how it advances the larger goals of the ARK Ecosystem.
Since long before the ARK genesis block, our goal has been to provide the same accessibility and scalability for custom blockchains as WordPress provides for custom websites. Coupled with ARK’s interoperability features and modular construction, this makes for the perfect ecosystem of interconnected plug-and-play chains. Our primary objective behind the development of v2 was to identify ways we could move the ARK codebase closer to these goals.
The procedural, step-by-step approach of the v1 code base would need to be replaced with an all new lightweight and modular design. Under such an architecture, nearly all aspects of the ARK code base could be modified, extended or replaced quickly and easily. Think of it like building with LEGO blocks. If you simply add or replace LEGOs to your project, you can create something completely new. In turn, this approach would allow blockchain developers maximum flexibility in aligning their bridgechains to reflect their organizational priorities.
Our work at ARK has been in service of a simple, yet powerful truth: The easier it is to read and understand code, the easier it is to extend it. This approach is perhaps most evident in our new plugin system, where nearly all node functionality can be customized as easily as installing a plugin on a WordPress site. Across all of the changes listed below, you will find that accessibility and extensibility are prevalent themes as we strive to create the world’s premiere blockchain development platform.
What Will The New Core Bring?
- Dynamic fees — most noticeable for end users is the addition of dynamic fees enabling delegates set their own fees for different transaction types. Users have the option to modify and pay fees they are comfortable with for sending transactions.
- Plugin system — ARK is the first blockchain protocol released that allows you to easily develop customized modules or plugins, to leverage the power of blockchain. The majority of ARK’s processes have been decoupled, modularized and developed as plugins. Only a few lines of code are required to add or remove new plugins to the system. Our goal of developing the ‘WordPress of blockchains’ has been realized. You can now develop your own plugins and easily include them into your own blockchain.
- Increased TPS (Transactions per Second) and TPB (Transactions per Block)— Transactions that can be included in a single block are increased from 50 to 150. The total increase in TPS is threefold from 6.25 to 18.75. This is not a TPS limit and can be easily raised in the future. Currently, this level of throughput is more than adequate. For bridgechains, this value is completely customizable.
- New API — A much more powerful API provides additional endpoints, is much more stable and follows latest API standards, giving developers more options to get necessary information and interact with ARK’s blockchain.
- Webhook support — Webhooks allow applications to provide other applications with real-time information. A Webhook delivers data immediately as it happens as opposed to a typical API where polling must occur very frequently and inefficiently to get real-time data.
- Better transaction pool management — a newly developed transaction pool (transactions are kept in this pool before inclusion in the blockchain) is leveraging the power of memory and SQLite, providing superior stability, reliability and a foundation for future optimizations.
- Better verification systems — the legacy code has multiple drawbacks with how blocks and transactions are verified and included in the blockchain. The new Core verifies database integrity at the start of each node process, checking its validity and continuing with much-improved efficiency and handling. These actions also bring additional security to ARK and we all know how important that is for blockchain projects.
- Speedier rebuilds & synchronizations — starting your own node from block 0 with the new system is much faster. Previously, rebuilding from 0 to current block height (~ 6,450,000 blocks) required around 50 hours. ARK Core v2 can do it in approximately 12 hours (depends on the server specifications and overall network state). As a result, synchronizing becomes much faster when stopping and starting the node process, or when rebuilding from a snapshot.
- Better decentralization through new snapshot system—the old code was very dependent on the ARK team for snapshots when building or rebuilding a node. An all new local snapshot system has been developed allowing node operators to use their own copies of the database when needed. When starting a new node or rebuilding a node due to errors, local copies will allow for fast and safe synchronization and will reduce dependence on the ARK team. This development brings wider decentralization to the ARK ecosystem and is a much safer and faster way for nodes to recover in case of emergencies.
How Will The Transition Occur?
On November 28th 2018 our team and delegates will coordinate a switch to the new Core by installing the new Core on servers. This is a hardfork, which means that it will NOT be backward compatible with the old code. All node operators will need to replace their old deprecated ARKNode code with ARKCore. Old nodes will NOT be able to communicate with new nodes, as they will be automatically banned. The upgrade process may result in small network downtimes — please bear with us.
End users will only need to install updated wallets that support the new protocol (either Desktop or Mobile Wallet). Current desktop and mobile wallets will be updated and all information and guides will be available prior to launch.
Along with ARK Core v2 comes a totally new Desktop Wallet also built from scratch! The new wallet will provide dynamic fee settings right out of the box. More information will become available as we near the release.
There will be plenty of time for exchanges to transition to the new protocol, however, exchanges may be intermittently down during this process. We will be providing assistance to all exchanges during this transition. Fortunately, the new Core is much easier to integrate, and by default comes with a JSON-RPC plugin.
If any exchange is reading this — contact us if you want to integrate with ARK! We appreciate each addition and can help with integration and technical support.
What’s Next for ARK Core?
Following the MainNet launch, our first focus will be to monitor and address any issues or bugs that may arise. After that our focus will be on building Core v2.1, our next major release for ARK due for release in early 2019.
Core v2.1 includes new transaction types such as timelocks, updated multi signatures, multipayment support, increased size for SmartBridge field from 64 to 256 chars and will allow “Push.Button.Blockchain.” to be fully realized with bridgechain interoperability options. More information on v2.1 will be released in several upcoming blog posts.