Blockstack est un projet qui vise à étendre les fonctionnalités de Bitcoin en tant que protocole de deuxième couche, capable d'améliorer les performances de cette crypto-monnaie, offrant des capacités de contrat intelligent avancées et une infrastructure complète conçue pour déployer les DApp de manière massive.
Là l'arrivée de DApps ou applications décentralisées au monde de crypto-monnaies a marqué le début d'un énorme saut évolutif dans la technologie de la blockchain, mais il est en grande partie devenu lié à la blockchain de Ethereum (ETH). Cependant, Blockstack cherche à faire ce saut évolutif vers l'écosystème de la crypto-monnaie la plus célèbre et la plus utilisée: Bitcoin (BTC).
L'objectif? Étendre les capacités de cette blockchain pour offrir à ses utilisateurs et développeurs contrats intelligents ou contrats intelligents puissant. Ceci ainsi que toute l'infrastructure et les outils nécessaires pour déployer des applications décentralisées (DApps) qui tirent parti de ce potentiel.
Sans aucun doute un projet très intéressant qui génère de grandes attentes puisque, en plus, c'est un projet qui fonctionne déjà et qui commence à montrer tout son potentiel.
Introduction à Blockstack
Blockstack est un projet de logiciel libre qui vise à étendre les fonctionnalités de la blockchain Bitcoin. Pour cela, Blockcstack a généré une infrastructure de support complète dédiée à offrir des capacités de contrat intelligent et toute l'infrastructure nécessaire pour que les DApps fonctionnent correctement sur la blockchain Bitcoin, et mieux encore, sans avoir à affecter négativement le protocole de Bitcoin.
Origine du projet
L'histoire de ce projet commence en 2013, année au cours de laquelle Muneeb Ali y karité Ryan ils ont fondé Blockstack. L'objectif de cette société était de résoudre les problèmes sous-jacents des applications web et mobiles d'aujourd'hui. Pour l'été 2014, Muneeb et Ryan ont présenté leur proposition à l'accélérateur YCombinator et ont en outre réalisé une ronde de financement de démarrage à laquelle ont participé Union Square Ventures (USV), Naval Ravikant, SV Angel et d'autres.
À la suite de ces premiers investissements et travaux sur la technologie blockchain, la première version de Blockstack a été lancée en 2017, qui disposait d'un explorateur DApps (Blockstack Browser) et d'un système de stockage distribué en fonctionnement. Ainsi, à la fin de 2017, la société a également obtenu deux tours de financement supplémentaires via une série A, menée par USV, avec la participation de Lux Capital, Digital Currency Group et autres, ainsi qu'une offre de jetons.
Lancement de la première version de Blockstack
Une fois la nouvelle ronde de financement sécurisée, Blockstack a lancé une testnet ou testnet pour sa blockchain (nommée Stacks) au deuxième trimestre 2018, en lançant officiellement le réseau principal Piles v1 en octobre de la même année. Cette version a également distribué tokens aux premiers investisseurs qui ont participé au cycle d'achat de jetons.
L'équipe a également présenté un pilote de son programme App Mining avec 38 applications enregistrées. App Mining est un mécanisme Blockstack pour inciter les projets et les développeurs à s'appuyer sur le réseau Stacks, car les principales applications des utilisateurs actifs mensuels reçoivent des récompenses de STX. Le nombre d'applications basées sur Blockstack participantes a grimpé à près de 300 au cours des douze premiers mois. Actuellement, L'exploration d'applications est en pause, après avoir réalisé plus de 500 projets enregistrés et l'activation d'une App Mining 2.0 est à l'étude
Mais dans la continuité des réalisations, en juillet 2019, Blockstack PBC a fait la première offre de jetons à se qualifier dans l'exemption Reg A. Selon un Rapport du Wall Street Journal, la startup a passé près d'un an à travailler avec la SEC pour répondre aux exigences. En respectant les conditions requises pour l'exemption, l'offre de jetons sans précédent de Blockstack a permis à l'entreprise de gagner 15,5 millions de dollars supplémentaires en capitaux propres. Les investisseurs ont reçu leurs jetons via un fourche dur réseau environ un mois après la clôture de la vente. En tout, Blockstack a réussi à capter un total de 23 millions de dollars d'investissements.
En octobre 2019, avec près de 300 applications construites sur la plate-forme et avec les contributions de plus de 100 équipes de développeurs indépendantes, le réseau Stacks était toujours en v1, la v2 devant être lancée fin 2020. Avec Cette nouvelle version, les capacités de Blockstack ont été considérablement augmentées, notamment avec l'inclusion de Clarity, son langage dédié aux contrats intelligents.
Comment fonctionne Blockstack?
Blockstack est un protocole de deuxième couche, de sorte que l'ensemble de son fonctionnement malgré sa dépendance à Bitcoin, ne stocke pas d'informations directement dans la blockchain Bitcoin, en maintenant une séparation claire entre l'interactivité de la blockchain et les applications sur Blockstack.
D'un autre côté, cela signifie que Blockstack dépend de toute une infrastructure d'exploitation externe à la blockchain Bitcoin, et ces parties sont celles qui permettent réellement à Blockstack d'exécuter ses DApp.
Cependant, la structure opérationnelle actuelle de Blockstack changera considérablement avec l'arrivée de sa version 2, qui est estimée pour début 2021. Pour cette raison, nous expliquerons le fonctionnement du Blockstack actuel de la manière la plus détaillée et la plus simple possible, et les prochaines avancées que la plate-forme inclura avec son prochain réseau principal.
Après avoir clarifié ce point, le fonctionnement actuel et futur de Blockstack peut être considéré comme une structure interservices. Cela nous laisserait alors avec un schéma fonctionnel comme celui-ci:
Comme nous pouvons le voir, Bitcoin et sa blockchain se trouvent dans la couche la plus abstraite de l'ensemble du système, c'est-à-dire en bas. Cela signifie que tout le travail du réseau Blockstack dépend du travail de calcul qui a lieu sur ce réseau. Cette première fonctionnalité est actuellement utilisée et se poursuivra avec la deuxième version de la plateforme.
En plus de cela, Blockstack utilise sa sidechain Stack, pour avoir une comptabilité interne de toutes ses applications. Cette fonctionnalité est également active aujourd'hui, mais avec la deuxième version, elle sera améliorée en ajoutant la possibilité de déployer des contrats intelligents et d'autres jetons.
Sur la sidechain de Stack, une série de services et de protocoles sont conçus pour étendre les capacités des contrats intelligents et des DApps de Blockstack. Parmi ces fonctions, on peut citer son service de stockage distribué (Gaia), le système d'authentification décentralisé, un système DNS décentralisé, des services financiers et d'autres services qui pourraient être ajoutés à l'avenir. Aujourd'hui, des services comme Gaia, DNS e identité numérique distribuée Ils fonctionnent déjà sur la version 1 du protocole, mais leurs capacités s'amélioreront considérablement avec la version 2.
Enfin, pour faciliter le développement d'applications, Blockstack crée une série de protocoles bien définis qui facilitent l'accès à toutes ces fonctions, permettant ainsi aux développeurs de créer facilement des DApp et de les déployer sur Blockstack, clôturant ainsi le cycle de développement d'un DApps sur cette plateforme.
Stack Tokens (STX), une monnaie pour la plateforme
Blockstack a son propre token, appelé Stack Token (STX). Dans son réseau actuel, la génération initiale de ce token répond à une émission donnée dans son bloc Genesis ou bloc genesis. Cette émission a produit un total de 1,32 milliard de jetons lors de la mise en service du réseau en novembre 2018. Parmi ceux-ci, 1,32 milliard de jetons du bloc Genesis, un total de 866.827.880 jetons Stacks ont été alloués. aux acheteurs précédents avec le lancement du bloc Genesis, tandis que 453.172.120 XNUMX XNUMX sont restés non attribués.
Cette allocation initiale a servi à distribuer des jetons aux investisseurs qui ont participé à l'ICO et aux tours de financement du projet en 2017 et 2018. Le reste des jetons a été attribué et distribué avec le hard fork du réseau qui a distribué les jetons vendus ou cédés dans le cadre de diverses ventes et distributions qui ont eu lieu en 2019.
Désormais, ces jetons ont actuellement une fonction limitée dans la chaîne latérale Stack. En effet, lors de la mobilisation de jetons STX, ce que nous déplaçons réellement est une valeur de quelques satoshis dans la blockchain Bitcoin, et cette opération se reflète à la fois dans la sidechain Stack (pour la comptabilité interne) et dans la blockchain de Bitcoin En bref, pour le moment, STX est un jeton dans la blockchain Bitcoin, ce qui conduit la plate-forme à avoir une forte évolutivité et des problèmes d'utilisation.
Mais pour voir cela plus clairement, prenons par exemple cette adresse dans la sidechain Stack:
Ici, nous pouvons voir que cette adresse a une comptabilité comme celle de toute autre crypto-monnaie. Cependant, lorsque nous sélectionnons l'une de vos opérations pour obtenir plus de données, nous pouvons clairement voir que ces opérations ont un impact sur Stack et Bitcoin.
Nous pouvons voir que l'opération a deux adresses de pile associées (elles commencent par "S") et elle a également un numéro de bloc (nombre de blocs) attribué et même un TX ID (identification de transaction) de Bitcoin. Ainsi, par exemple, si nous examinons les informations du Bitcoin TX nous obtenons ce qui suit:
Autrement dit, la transaction existe également en Bitcoin, et il s'agit d'une opération de faible valeur (proche de 0,05 €). Ce modèle est le même que celui utilisé par Tether sur OmniLayer, qui fonctionne sur Bitcoin.
Pour surmonter les limites de ce modèle, Blockstack cherche à lancer sa deuxième version, où le token STX répondra aux nouvelles règles et disposera de nouvelles capacités. Le premier d'entre eux est que la génération de jetons STX répondra à un processus de minage en utilisant un schéma qui rejoint le Preuve de travail (PoW) , la Test de brûlure (PoB). Ce nouveau schéma s'appelle Preuve de transfert ou PoX.
La principale caractéristique de ce système est que son émission et difficulté minière Il est variable, s'adaptant ainsi aux besoins du réseau et affectant le moins possible la valeur du token sur les marchés. Ainsi, par exemple, aux moments de forte activité du réseau, il générera plus de jetons STX, et aux moments de moindre activité, il réduira l'émission de ces jetons au minimum programmé dans le protocole. Il est à noter que ce processus est automatique et est directement contrôlé par le protocole Blockstack.
L'idée de ce système conçu pour Blockstack v2 est de traiter environ 4383 blocs par mois (environ 52.596 500 blocs par an). De même, la génération minimale de jetons STX sera de 262.980 jetons au cours des 5 262.980 premiers blocs (environ 300 ans). Cette émission sera réduite tous les 300 XNUMX blocs jusqu'à atteindre XNUMX jetons STX par bloc, ce qui sera le point de génération le plus bas par bloc que le réseau pourra atteindre. Autrement dit, à partir de ce moment, chaque bloc pourra générer au moins XNUMX jetons.
De la même manière, le nombre maximum de jetons générés sera de 3.000 262.980 jetons par bloc pour les 1000 262.980 premiers blocs. Ce montant sera réduit de 1.000 jetons tous les 1.000 XNUMX blocs jusqu'à atteindre XNUMX jetons. À ce stade, XNUMX jetons constitueront la génération maximale de chaque bloc suivant. Cela nous indique clairement que le jeton STX est un jeton de problème inflationniste et que son inflation sera assez élevée.
Désormais, l'utilité de ces nouveaux jetons se concentrera dans un premier temps sur:
- Enregistrez des actifs numériques avec Blockstack. Les utilisateurs de Blockstack pourront utiliser leurs jetons STX pour enregistrer différents types d'actifs numériques tels que les noms d'utilisateur, les noms de domaine, les licences logicielles, les podcasts et bien plus encore.
- Enregistrez et exécutez des contrats intelligents. Pour exécuter des contrats intelligents, il est nécessaire d'avoir du «gaz» pour financer le coût de vérification de l'exactitude du contrat intelligent et le coût de son exécution. Les jetons Stacks peuvent également être utilisés pour couvrir les coûts de stockage du contrat intelligent sur la blockchain Stacks.
- Les frais de transaction. Les jetons Stacks sont utilisés pour payer les frais liés à l'inclusion d'une transaction dans la blockchain Stacks.
- Chaînes d'applications ancrées. Pour que les applications deviennent populaires sur Blockstack, notre blockchain dispose d'une «rampe d'évolutivité» où une application peut initialiser sa blockchain au-dessus de la blockchain Stacks. Cette "application en chaîne" brûle les jetons Stacks pour l'extraction et la progression.
Clarity, le langage de programmation des smart contracts
L'une des fonctionnalités les plus attendues de Blockstack v2 est sa capacité à exécuter des contrats intelligents programmés dans Clarity/Pureté, le langage de programmation de ce protocole. Clarity, est un langage de programmation conçu pour la sécurité, l'optimisation et ayant une syntaxe simple et très similaire à Zézayer, un langage de programmation bien connu.
Cependant, la principale caractéristique de Clarity est son approche proactive de la sécurité, ce qui a beaucoup de sens dans des environnements ouverts et publics tels que les blockchains. Ceci est destiné à éviter des situations telles que Ethereum et Solidité, où les bogues entraînent des milliards de dollars perdus et sont un casse-tête permanent pour les développeurs.
Mais comment Clarity y parvient-elle? Eh bien, il le fait en suivant un chemin différent de Solidity, et c'est pour commencer La clarté est un langage adaptatif. Cela signifie qu'il peut s'agir de Turing incomplet ou complet, selon la façon dont il est analysé et exécuté.. Ceci, d'une part, réduit la flexibilité lors de la programmation, mais offre une plus grande plage de sécurité en limitant les actions qu'il est possible d'effectuer avec ce langage. Il vous permet également de créer un code plus propre, ce qui se traduit également par moins d'erreurs de code et une facilité d'analyse par d'autres personnes et de créer des outils d'analyse et de débogage.
Cela simplifie les exigences d'exécution de ce langage, le rendant moins exigeant au niveau de la puissance de calcul afin d'obtenir des résultats plus évolutifs. C'est un langage interprété pour que les contrats intelligents arrivent sur la blockchain car ils ont été programmés sans aucune obfuscation ou codage intelligible pour quiconque.
Preuve de transfert ou preuve de transfert (PoX), le cœur de Blockstack
Le cœur de la prochaine version de Blockstack est son protocole de consensus appelé Proof of Transfer ou Proof of Transfer (PoX). Il s'agit d'un protocole dérivé du protocole Proof of Burn (PoB) et qui permet d'établir une corrélation de travail de calcul entre la blockchain Bitcoin et les piles de sidechain Blockstack. Il vaut la peine de dire que cette conception ne s'applique qu'à la version 2 de Blockstack, puisque sa version 1 actuelle exécute ses actions directement sur la blockchain Bitcoin, limitant ainsi sa capacité à évoluer.
La naissance de PoX est due à la création du SIP-001, appelé Burn Election, dans lequel un système connu sous le nom de Tunables Proof est proposé. Ce système vous permet de choisir un leader minier à l'aide d'une série de tests. De cette manière, le système permet de démarrer une nouvelle chaîne de blocs au-dessus d'une chaîne de blocs existante en tenant compte de deux processus:
- Détruire les jetons blockchain existants (générer un test de gravure)
- Générer une preuve de travail jointe distincte
Au final, les deux preuves d'emplois sont pondérées pour créer le protocole de consensus final de la sidechain Stack, où le leader élu peut valider les transactions pour un bloc donné, et le processus de sélection pour le nouveau bloc est relancé.
Pour améliorer la sécurité du système, la difficulté de ces tests ajustables change régulièrement à mesure que de plus en plus de dirigeants y participent. Cela permet à la chaîne Stacks de tirer parti de la sécurité d'une blockchain établie pour préserver ses historiques de transactions alors que la participation des leads est faible (comme au début de la chaîne) et, au fil du temps, de passer à leur propre groupe. des leaders au fur et à mesure que la chaîne devient plus populaire.
Atlas, un réseau P2P haut débit et évolutif
Étant donné que l'objectif principal de Blockstack est de générer une plate-forme pour le déploiement d'applications DApps à forte demande, cela rend nécessaire de créer un P2P capable de traiter une très grande quantité de données en transit et qui a une évolutivité de haut niveau pour s'adapter à la croissance future du réseau.
La solution pour cela est Atlas, un réseau P2P basé sur le modèle du protocole de potins pour sa fonctionnalité. Atlas a la capacité pour chaque pair de conserver un enregistrement des pairs existant sur le réseau, et chaque pair tente de stocker une copie complète de toutes les données sur le réseau. De cette manière, on cherche à ce que le réseau soit hautement tolérable aux pannes et en même temps ait une évolutivité de haut niveau.
Parallèlement à cet Atlas se trouve un réseau d'exploitation séparé. Cela signifie que le réseau est divisé en deux parties. La première partie du réseau sert à stocker les données de la blockchain elle-même (hachages de bloc et de transaction). Alors que le second stocke les données de ces hachages. En tant que mécanisme de protection, les données stockées dans la deuxième section sont liées de manière cryptographique afin d'éviter toute manipulation.
Résultat? Blockstack propose qu'il puisse devenir une blockchain de faible poids, rapidement synchronisable et réplicable, et avec un niveau élevé d'évolutivité en raison de la faible quantité d'informations qu'elle gère.
Extension de la fonctionnalité Blockstack
Enfin, Blockstack cherche à créer une série de protocoles qui simplifient l'utilisation de ses outils. Dans ce cas, Blockstack a actuellement plusieurs de ces protocoles en fonctionnement, mais dans sa deuxième version, il ajoutera la possibilité d'interagir avec eux via des contrats intelligents, élargissant la décentralisation de ce système.
Parmi les premiers protocoles de ce réseau figurent:
- Gaia, un système d'exploitation et de stockage de données contrôlé par l'utilisateur. Il peut être vu comme une version de Filecoin, IPFS o Sia, projet qui possède une vaste expérience dans ce type de développement. L'idée est que Gaia sert d'espace de stockage nécessaire à l'exécution des DApps, prenant en charge l'interaction et la génération de données entre eux et les utilisateurs.
- Système d'authentification Blockstack, un système d'authentification numérique décentralisé qui permettra aux utilisateurs de créer un identifiant dans Blockstack pour l'utiliser comme moyen d'interaction avec les DApp de la plateforme. Les données sont stockées en utilisant le sidechain Stack, Gaia et le système Blockstack Naming Services (BNS).
- Service de noms de blocs (BNS), un système DNS qui permet l'enregistrement à partir de noms d'utilisateurs ou de sites Web de manière décentralisée. Une évolution de Namecoin et adversaire de systèmes comme Service de noms Ethereum (ENS).
- Services financiers décentralisés (DeFi), avec la création de la capacité des contrats intelligents et le reste des fonctions ajoutées, Blockstack vise une Écosystème DeFi. Avec toutes ces capacités, Blockstack sera en mesure de permettre la création d'applications DeFi de manière transparente, et en effet, elles pourraient avoir une meilleure évolutivité et une meilleure sécurité par rapport à son homologue, Ethereum.
L'avenir de Blockstack
À l'heure actuelle, Blockstack est à un point de transition et d'évolution vers Blockstack v2. Le lancement de ce nouveau réseau vise à positionner ce projet au niveau de projets tels que RSK, dont les fonctions sont très similaires à Blockstack.
Cependant, Blockstack a déjà démontré le potentiel de ses solutions avec un certain nombre d'applications fonctionnelles, et plus important encore, avec une portée beaucoup plus grande au niveau des utilisateurs grâce à ses plus de 2 millions d'utilisateurs enregistrés. Cependant, pour le moment, bon nombre de ces promesses sont encore des promesses, car le nouveau réseau principal n'a pas encore été lancé.
Malgré cela, il est clair que Blockstack est engagé dans un monde d'applications décentralisées à la base duquel se trouve l'énorme sécurité que le réseau Bitcoin peut fournir, car il s'agit de l'espace de travail informatique que Blockstack utilise pour son fonctionnement. Avec cela, il souhaite que Bitcoin devienne un acteur majeur dans le monde DeFi, et pas seulement en tant que jeton ou sécurité au sein de l'écosystème, mais en tant que partie intégrante du fonctionnement de ces plates-formes. Cependant, il reste à attendre de voir si les promesses de Blockstack se réaliseront et l'impact qu'elles auront sur Bitcoin et le reste du monde de la cryptographie.