Un million de TPS : qu’est-ce que TON et comment ça fonctionne ?
Cet article est disponible dans les langues suivantes :
The Open Network (TON) est un projet open source porté par la communauté depuis 2020. Nous allons voir ce qu’est TON, qui le développe et ce que ce réseau permet.
Un peu d’histoire
The Open Network a d’abord été développé par l’équipe de Telegram sous le nom Telegram Open Network. Telegram est aujourd’hui une entité totalement distincte de TON et n’est qu’un des nombreux acteurs qui construisent sur The Open Network. En tant que réseau basé sur la blockchain, TON utilise l’algorithme de preuve d’enjeu (proof-of-stake). Dans sa version initiale, aujourd’hui abandonnée, Telegram Open Network devait lancer le token natif Gram.
Selon les plans de l’entreprise, TON devait devenir une plateforme pour les applications décentralisées (DApps), avec une architecture pensée pour une grande évolutivité, dépassant même les capacités d’Ethereum. Un aspect clé de l’écosystème était aussi l’intégration du réseau et de son token au sein de la messagerie Telegram, qui comptait alors près de 200 millions d’utilisateurs.
En 2018, l’équipe a ouvert la participation à l’ICO (initial coin offering), qui a rencontré un vif succès. Dès le premier tour, près de 3 milliards de dollars ont été levés. L’année suivante, le testnet de TON a été mis en ligne, l’explorateur de la blockchain lancé, et le code du nœud complet publié. Le lancement du mainnet était prévu au plus tard pour novembre 2019. Cela aurait été le cas sans l’intervention de la Securities and Exchange Commission américaine.
Comme des investisseurs américains participaient au projet, l’ICO était soumise à la législation des États-Unis. La commission a constaté des irrégularités dans la vente du token. La SEC a conclu que le Gram avait été vendu illégalement aux investisseurs et a obtenu une injonction contre sa distribution, ce qui a fait dérailler le lancement de TON. Pavel Durov, fondateur de Telegram, a annoncé l’abandon du projet et a choisi de ne pas contester l’injonction. En mai 2020, alors que l’implication de Telegram devenait incertaine, d’autres acteurs ont commencé à reprendre la technologie. Telegram s’est retiré et a transféré le domaine ton.org ainsi que le dépôt GitHub à la communauté The Open Network.
Où en est-on aujourd’hui ?
Les développeurs de TON se sont fixé pour objectif de créer un écosystème blockchain sécurisé, efficace et évolutif, pouvant servir de plateforme pour les applications décentralisées et les smart contracts, dans un format le plus accessible possible pour les utilisateurs finaux.
TON repose sur une blockchain de layer 1 en proof-of-stake, mais ce n’est pas qu’une simple blockchain : le réseau regroupe plusieurs composants :
- Le TON P2P Network, un réseau pair-à-pair sans « master nodes ». Tous les nœuds sont égaux et toutes les ressources sont partagées ;
- Ton Storage, qui conserve des instantanés et des archives de blocs ;
- Ton Proxy, qui offre un accès anonyme au réseau ;
- Des tables de hachage distribuées, utilisées par TON Storage (pour rechercher les nœuds qui contiennent certains fichiers), TON Proxy et d’autres services ;
- Une plateforme de services avec sa propre interface utilisateur ;
- TON DNS qui, comme un DNS classique, attribue des noms « lisibles » (par des humains) aux smart contracts, nœuds, services, etc. du réseau ;
- La plateforme de micropaiements TON Payments.
Toutes ces fonctionnalités visent un objectif clé : rendre TON aussi simple que possible à utiliser pour les utilisateurs finaux. Dans le contexte de l’intégration des projets de l’écosystème TON à Telegram, une messagerie qui compte plus de 700 millions d’utilisateurs, cela prend tout son sens. Mais cela ramène la question de la scalabilité. À mesure que le projet se développe et qu’une intégration de TON dans Telegram gagne en popularité, le nombre de transactions devrait augmenter. L’arrivée de nouveaux services entraînera aussi une hausse de la charge du réseau.
C’est là que les développeurs sortent leur atout : le réseau serait capable de traiter plus d’un million de transactions par seconde. Comment est-ce possible ? Pour atteindre un tel chiffre, TON met en œuvre plusieurs solutions uniques.
Comment atteindre 1 million de TPS
Not just one blockchain
Au cœur de TON, il ne s’agit pas d’une seule blockchain, mais d’une combinaison d’une masterchain et de workchains, elles-mêmes subdivisées en shards.
La masterchain stocke les informations générales sur le protocole, les validateurs, les workchains et les shards. Les workchains gèrent les transactions, les smart contracts et d’autres opérations courantes. Grâce au sharding, les workchains peuvent être divisées en shards (shardchains), chacune traitant les transactions de façon indépendante et conservant une partie de l’état de la blockchain. Cela permet de traiter les transactions en parallèle, de répartir la charge et d’éviter les congestions.
Asynchronous smart contracts
Autre technologie clé : les smart contracts asynchrones, qui évitent d’avoir à attendre l’exécution d’un contrat avant d’en lancer un autre.
Habituellement, lorsqu’un contrat en appelle un autre, l’exécution du premier est suspendue jusqu’au retour du second. L’asynchronisme accélère le processus : un smart contract n’attend pas le résultat d’un autre et poursuit l’exécution de ses propres conditions.
The consensus protocol
Autre innovation, le système de consensus rapide basé sur l’algorithme propriétaire Catchain. Dans les blockchains classiques, les blocs sont créés avant que le consensus ne soit atteint, puis les nœuds du réseau valident le bloc. Cela peut générer des forks, dont seule la version correcte est ensuite conservée.
Catchain fonctionne différemment. Dans le réseau TON, les blocs sont créés après l’obtention du consensus. Concrètement, un groupe de validateurs est réuni lors de la création de nouveaux blocs. Ils créent un réseau privé dans une couche spécifique (ANDL, autre innovation de l’équipe TON) et lancent Catchain. Le consensus se déroule en plusieurs tours, parfois simultanés.
À la fin de chaque tour, le groupe choisit un bloc candidat si aucun n’a été retenu. Le tour se termine quand le candidat reçoit les « signatures » de plus des deux tiers des validateurs. On passe alors au tour suivant.
TON, qui fonctionne avec de « petites blockchains » multiples, élimine presque totalement les branches et forks, car la blockchain sert à transmettre des messages entre processus. De plus, tous les cas de bifurcation sont anticipés par Catchain, qui permet de les détecter très tôt.
Optimization and adaptability
Pour optimiser l’efficacité, TON utilise plusieurs méthodes pour améliorer la « communication » entre les nœuds. Par exemple, les transactions ne sont pas envoyées individuellement, mais regroupées en « bundles » puis agrégées. Des algorithmes de compression réduisent le volume des données à transférer, tandis que les paramètres de la blockchain et du sharding peuvent évoluer selon les conditions du réseau. La taille des blocs et la fréquence de création peuvent ainsi être adaptées.
Conclusion
Ce court article ne présente qu’un aperçu des innovations mises en place dans TON. Il en faudrait bien plus pour détailler toutes les solutions originales de ce réseau. Restez avec nous : nous reviendrons prochainement sur TON.