Free TON to complete original TON development

About this document

This Roadmap is a part of the Free TON Roadmap related to original TON Protocol documentation (including TON Whitepaper, TON Virtual Machine description, TON Blockchain description and Description of BFT Consensus protocol). We call those specs — the original protocol description.

This is a part of full version of Free TON roadmap consists of many parts including additions to governance processes, further decentralization of staking, changes in gas calculations and distribution, additional cryptographic primitives, extensions to Virtual Machine and many more.

Why is this necessary?

A C++ implementation of the TON protocol delivered by Telegram to its open source repository does not meet original white paper specifications yet. There are significant gaps in the C++ node implementation with the original TON vision by Nikolai Durov. Due to the abandoning of continuous node development, Telegram could not finish all it has promised in the original documents.

This is a commitment on behalf of Free TON community to complete the development of original TON. Below is a not complete list of missing functionality and designs, a process by which the development will be completed and a commitment of several Free TON community members to take part.

What is missing:

Slashing conditions are not designed and not implemented

Transaction Split and Merge is not implemented

Huge contracts are not supported

Many security features missing including VM hash calculations

No storage transactions

Vertical blocks are not implemented as per original white paper

No additional workchains support

Network throughput is still long way from the originally promised throughput
Currently there are design limitations preventing support of higher tps

Proxy and tunnelling services are not designed nor implemented

Garlic and Onion Routing is not implemented
ADNL tunnels are not fully implemented

C++ Node software is unstable

Node and network diagnostics do not exist

No formal verification of system smart contracts

No formal verification of consensus and other protocols

Some of these tasks are straight forward to implement, some are extremely complex and for some even the design has not been provided. To create a network capable of demonstrating 1 mln. tps will require designing and implementing many additional components. This roadmap will take Free TON community until the end of the year to implement, test and deliver into production and will require an effort of dozens of top software engineers. The roadmap will be implemented through many Research and Development Contests within a Developer Giver framework.

TON Labs has confirmed its participation in architecture and specifications design via Rust node development and Cyberway has committed to support C++ node implementation. Two nodes implementation is critical for any sustainable blockchain and TON is the only blockchain that has this important security feature available from the day of Mainnet launch.

Please follow Developer Giver topics for follow up information and how you can contribute: https://forum.everscale.network/c/developer-giver/

16 Likes

I think that it should be discussed on the live stream also. All community should be involved in this process

3 Likes

Да конечно поможем, делов то. :slight_smile:

3 Likes

A couple of questions on this:

Transaction Split and Merge is not implemented - is this the dynamic sharding feature, where it splits and merges shards as traffic grows / shrinks? So does this mean there is one workchain, with a single shard (plus the masterchain)? Or is there some way to statically configure the number of shards?

Vertical blocks are not implemented as per original white paper - are they implemented at all? How are they different from what is described?

2 Likes

No, that’s another thing. Shardchain split and merge of blocks works. This is a feature for huge contracts.

They are not.

1 Like

Does this list of important improvements relate only to C++ node or some/all of them also relate to Rust node?
And what do you think is in priority - C++ or Rust implementation?

3 Likes

I hope I wrong. I think the ton open-source does not have all futures. It’s jut a proof of concept. Telegam TON probably has all futures and functionalities, but it was never released to public.

If we are going to develop all these futures it would be really hard to call TON from Telegram because it will create confusion between current TON source code and TON that we are go to developed.

Some actions that we may think of

  1. Change the name from TON to Something else to avoid confusion with Telegram solution
  2. Make it truly Free Software with deep cooperation with community and other companies with wants to participate in development.
  3. Build a different independent community which will continuously develop TON and advanced it similar to other blockchain.

… Some others

1 Like

On this stage everything is proof of concept and nothing has “all features”. I even don’t know what it means actually. I also don’t see any problems with TON name as it is the same protocol. TON is a technology. TON OS is different technology based on the same protocol. Free TON is a network based on TON protocol. No confusion here.
It is open source as you can see and everyone is more than welcome to contribute.

7 Likes

What is the status of this plan, who knows?
And where are we regarding the DoD stages?

Stage one according to DoD

3 Likes

Slashing conditions - work in progress, Rust validator - almost ready

5 Likes

Any updates? It would be better to mark what is done here Free TON Community