Category: Ark (ARK)

Re-Engineering of the ARK Core

Almost eight months have passed since the successful launch of the ARK Network. It has proven itself to be reliable and fast, with an ever expanding community and gradually increasing transaction volume. Throughout this time period, and with experience gained during the development of ARK, we have been able to identify several key elements in the core design that could be optimized. Now, we embark on a new voyage to completely overhaul the ARK core code as well as the protocol as a foundation of our ambitious roadmap.

The outdated Crypti/Lisk legacy code will be completely expunged and rewritten from the ground up to markedly increase efficiency and security. At the beginning of next year (don’t forget “ARK gives no dates, we just deliver!”) we will release a totally new ARK CORE v2 that will be the new beating heart of the the ARK Network.

The new architecture has been completely rethought to decouple delegate forging activity, transaction pool management, and API interface on separate threads. Also, transactions will need to pass complete SPV (Simple Payment Verification) on a separate process or server before hitting the mempool, completely sandboxing the activity of the node against attacks.

The database communication will be decoupled with an interface layer so it will be possible to use your own favorite technology like MySQL, SQLite, PostgreSQL, or MsSQL (so far). It will also be possible to override your own database interface and pass it to the node.

Initial internal tests are already showing impressive results with lightning fast rebuilds using SQLite as backend, leveraging the multi-core capabilities of our test servers.

The security will be hyper-enhanced using a completely independent transaction pool, responsible for keeping a list of unconfirmed transactions that could then be broadcasted or passed along to the forger, to forge a block.

Finally, the forging process will be completely independent and self contained. It will be architected in a way to switch communications with other relay nodes if the original relay node is getting attacked or forked.

We have designed the relay nodes to be as light and stable as possible and we recommend these relay nodes if you are building a business over ARK blockchain (exchanges, smartbridge, etc…) instead of a light client, since it will allow for more powerful computations such as Complex SPV Proof of Balance, or Batch Verifications.

Initial Architecture of the ARK CORE v2 Prototype

ARK CORE v2 will be AIP11 compliant and the communication protocol will be the object of a future AIP. ARK CORE v2 will also support the current protocol in order to manage the upcoming fork to AIP11.

We have added this to our roadmap, named ARK CORE v2 ( https://ark.io/roadmap ) so you can check tasks and current progress (%) at all times.


Re-Engineering of the ARK Core was originally published in Ark.io on Medium, where people are continuing the conversation by highlighting and responding to this story.

This article was originally published on: The Ark Blog on