Un DApp est une ap­pli­ca­tion open source dé­cen­tra­li­sée basée sur la blo­ck­chain, qui utilise des jetons cryp­to­gra­phiques pour les tran­sac­tions. Con­trai­re­ment aux ap­pli­ca­tions pro­prié­taires ap­par­te­nant à une en­tre­prise et gérées sur des serveurs cen­tra­li­sés, les DApps utilisent un réseau peer-to-peer résilient. Les DApps sont appelées à occuper un rôle central dans le dé­ve­lop­pe­ment d’un Internet Web3 dé­cen­tra­lisé basé sur la blo­ck­chain.

Que sont les DApps ?

Le terme DApp est l’abré­via­tion de « De­cen­tra­li­sed Ap­pli­ca­tion » qui signifie « ap­pli­ca­tion dé­cen­tra­li­sée ». Les DApps sont donc des ap­pli­ca­tions autonomes qui fonc­tion­nent de manière dé­cen­tra­li­sée. Elles ne sont donc pas tri­bu­taires de serveurs d’en­tre­prise, mais utilisent un réseau peer-to-peer distribué. Le stockage des données, des com­mu­ni­ca­tions et des tran­sac­tions est basé sur une blo­ck­chain. De plus, les DApps utilisent un code open source trans­pa­rent, qui est gé­né­ra­le­ment visible par les uti­li­sa­teurs et peut être utilisé gra­tui­te­ment.

La spé­ci­fi­cité des DApps se décline en 4 critères es­sen­tiels

Quatre critères de base in­ter­vien­nent dans la dé­fi­ni­tion des DApps. Les con­di­tions suivantes doivent être remplies pour con­si­dé­rer un logiciel comme une ap­pli­ca­tion dé­cen­tra­li­sée :

  • utilise le code open source
  • est basé sur une blo­ck­chain
  • utilise des jetons cryp­to­gra­phiques
  • permet de créer des jetons

Examinons de plus près les quatre prin­ci­pales fonc­tion­na­li­tés des ap­pli­ca­tions dé­cen­tra­li­sées :

Code open source

Les DApps sont basées sur le principe open source. Le logiciel utilise un code source ouvert formulé dans un langage de pro­gram­ma­tion spé­ci­fique précis, qui peut être visualisé, librement utilisé et modifié par des tiers. Le code open source d’une DApp doit être autonome et ne pas dépendre d’en­tre­prises ou d’ad­mi­nis­tra­teurs qui décident des mo­di­fi­ca­tions apportées à l’ap­pli­ca­tion.

On peut citer les mo­di­fi­ca­tions ar­bi­traires de la dis­po­si­tion et des modalités de fonc­tion­ne­ment de l’ap­pli­ca­tion Instagram à titre de contre-exemple, qui re­cueil­lent ré­gu­liè­re­ment les pro­tes­ta­tions des uti­li­sa­teurs. Les DApps fonc­tion­nent ainsi sur un principe plus dé­mo­cra­tique et s’adaptent aux pro­po­si­tions de chan­ge­ment de la com­mu­nauté, aux évo­lu­tions du marché et au consensus des dé­ve­lop­peurs.

On a observé en revanche que les ap­pli­ca­tions dé­cen­tra­li­sées actuelles n’utilisent à leur tour pas de code source en­tiè­re­ment ouvert, mais uni­que­ment du code en­tiè­re­ment ou par­tiel­le­ment pro­prié­taire, dans le sillage du succès rencontré par les cryp­to­mon­naies. En 2019, seulement 15 % des ap­pli­ca­tions DApps dis­po­nibles se sont avérées être open source, tandis qu’un quart de toutes les DApps uti­li­saient du code source pro­prié­taire.

Blo­ck­chain

Le stockage du code source, des données de tran­sac­tion et des journaux doit avoir lieu dans la blo­ck­chain quand il s’agit d’ap­pli­ca­tions dé­cen­tra­li­sées. Cette dernière repose sur un réseau peer-to-peer dé­cen­tra­lisé de dif­fé­rents or­di­na­teurs répartis dans le monde entier. Con­trai­re­ment aux ap­pli­ca­tions gérées de manière cen­tra­li­sée comme WhatsApp ou Telegram, ces ap­pli­ca­tions sont moins exposées aux hacks et dé­fail­lances car les données des uti­li­sa­teurs ne sont pas stockées sur des serveurs d’en­tre­prise dédiés.

Les DApps offrent un niveau de sécurité plus élevé car les attaques sur les réseaux de blo­ck­chain dis­tri­bués sont dirigées contre chaque machine isolée et doivent résoudre le chif­fre­ment cryp­to­gra­phique. Cela n’est pra­ti­que­ment pas possible avec une DApp, car son code source est stocké dans une blo­ck­chain et donc sur de nombreux or­di­na­teurs en réseau dif­fé­rents. Le code source des DApps est ainsi dé­cen­tra­lisé dans la blo­ck­chain, réparti et exé­cu­table dans le réseau.

Jetons cryp­to­gra­phiques

Les jetons cryp­to­gra­phiques utilisés dans les ap­pli­ca­tions DApps sont ancrés de façon per­ma­nente dans la blo­ck­chain dé­cen­tra­li­sée et chiffrée. Les jetons ou « tokens » sont des copies nu­mé­riques chiffrées des données stockées dans la blo­ck­chain. Les jetons peuvent cor­res­pondre à des cryp­to­mon­naies comme le bitcoin dans la blo­ck­chain Bitcoin. Elles peuvent être utilisées pour les tran­sac­tions com­mer­ciales ou pour ré­com­pen­ser la pro­duc­tion et la vé­ri­fi­ca­tion de nouveaux jetons par l’ex­ploi­ta­tion minière.

Les jetons émis ou échangés s’ac­com­pag­nent de données de tran­sac­tion sous la forme de copie numérique ou de cer­ti­fi­cat de tran­sac­tion protégé contre la con­tre­fa­çon quand ils sont minés dans la blo­ck­chain. Ceci prévient d’une part les es­cro­que­ries et les piratages, et permet de se passer d’une ad­mi­nis­tra­tion cen­tra­li­sée d’autre part. La vé­ri­fi­ca­tion se fait dans un réseau peer-to-peer dé­cen­tra­lisé de mineurs, et non au travers d’une gestion hié­rar­chique cen­tra­li­sée.

Gé­né­ra­tion de jetons

Pour pouvoir utiliser une DApp et échanger, acheter ou vendre des jetons, les DApps doivent générer des jetons cryp­to­gra­phiques. Un al­go­rithme de preuve de travail est utilisé à cet effet dans la blo­ck­chain Bitcoin ou Ethereum. Bitcoin utilise ainsi par exemple un al­go­rithme SHA-256. En combinant un al­go­rithme, du cryp­to­mi­ning et du hachage, c’est-à-dire la création et la vé­ri­fi­ca­tion de jetons en résolvant une fonction de hachage les DApps répondent au critère de gé­né­ra­tion de jetons.

En quoi les DApps se dis­tin­guent-elles des ap­pli­ca­tions courantes ?

Les dif­fé­rences majeures entre les DApps et les ap­pli­ca­tions cen­tra­li­sées sont les suivantes :

  • Con­trai­re­ment aux ap­pli­ca­tions, les DApps ne sont pas gérées en tant que logiciels pro­prié­taires par une instance centrale telle qu’une en­tre­prise ou un ad­mi­nis­tra­teur système.
  • Le code source des DApps est gé­né­ra­le­ment open source, pu­bli­que­ment visible, uti­li­sable gra­tui­te­ment et mo­di­fiable.
  • Les données système et uti­li­sa­teur ne sont pas stockées sur les serveurs de l’en­tre­prise, mais dis­tri­buées et traitées sur des réseaux peer-to-peer à l’échelle mondiale.
  • Les DApps reposent sur un backend dé­cen­tra­lisé dans un réseau de blo­ck­chain, qui est également géré par les uti­li­sa­teurs.
  • Avec les DApps, la com­mu­ni­ca­tion ne prend pas place entre les uti­li­sa­teurs finaux via les serveurs du four­nis­seur, mais via un réseau d’appareils et de serveurs dé­cen­tra­lisé et distribué à l’échelle mondiale.
  • Les tran­sac­tions sont chiffrées dans une blo­ck­chain et vérifiées et do­cu­men­tées à l’aide de contrats in­tel­li­gents.
Image: Structure de réseau différente entre les DApps (décentralisées) et les apps (centralisées)
Con­trai­re­ment aux ap­pli­ca­tions tra­di­tion­nelles, les DApps utilisent un réseau peer-to-peer dé­cen­tra­lisé avec un backend déployé sur la blo­ck­chain.

Contrats in­tel­li­gents et DApps

Les DApps reposent de plus sur les contrats in­tel­li­gents (« Smart Contracts » en anglais), qui ap­par­tien­nent au code backend de la blo­ck­chain. Les contrats in­tel­li­gents sont des codes qui fonc­tion­nent comme un contrat et qui per­met­tent des tran­sac­tions de jetons officiels vérifiées entre les uti­li­sa­teurs de DApp. Dès que les uti­li­sa­teurs rem­plis­sent les con­di­tions du contrat in­tel­li­gent, le code de programme d’une tran­sac­tion est exécuté et stocké dans la blo­ck­chain. Les contrats in­tel­li­gents ne pouvant pas être modifiés ni manipulés, ils per­met­tent de mettre en place des tran­sac­tions trans­pa­rentes et in­vio­lables.

Entre autres choses, les termes du contrat in­tel­li­gent stipulent les frais que les mineurs de blo­ck­chain reçoivent pour l’exécution et la vé­ri­fi­ca­tion des tran­sac­tions. Les contrats in­tel­li­gents sont souvent écrits dans le langage de pro­gram­ma­tion orienté objet Solidity. Bien que plusieurs contrats in­tel­li­gents puissent être utilisés pour les DApps, plus de 75 % des ap­pli­ca­tions DApps actuelles n’utilisent qu’un seul contrat in­tel­li­gent à la fois. (État : septembre 2022)

Quels sont les avantages et les in­con­vé­nients des DApps ?

Avantages In­con­vé­nients
Fonc­tion­nent in­dé­pen­dam­ment des en­tre­prises in­di­vi­duelles ou des serveurs d’en­tre­prise via un réseau de blo­ck­chain distribué et dé­cen­tra­lisé Les per­for­mances et l’évo­lu­ti­vité d’une DApp dépendent des per­for­mances, de l’évo­lu­ti­vité et de la puissance de hachage de la blo­ck­chain
Sont protégées contre les dé­fail­lances, in­vio­lables, trans­pa­rentes et dif­fi­ciles à pirater Les grandes en­tre­prises telles que Meta ou Microsoft offrent de meil­leures per­for­mances et une plus grande con­vi­via­lité avec leurs ap­pli­ca­tions pro­prié­taires
Sont protégées contre les in­gé­rences gou­ver­ne­men­tales, la censure et les ma­ni­pu­la­tions ul­té­rieures Fonc­tion­ne­ment uni­que­ment en ligne à travers leur approche dé­cen­tra­li­sée peer-to-peer et né­ces­si­tent une connexion à la blo­ck­chain
Per­met­tent aux uti­li­sa­teurs de par­ti­ci­per au backend et d’exercer une influence sur le dé­ve­lop­pe­ment
Les tran­sac­tions fi­nan­cières via les DApps ne né­ces­si­tent pas d’in­ter­mé­diaires tels que des banques ou d’autres ins­ti­tu­tions fi­nan­cières
Anonymat et con­fi­den­tia­lité accrus car les données uti­li­sa­teur ne sont pas envoyées aux en­tre­prises com­mer­ciales avec un trai­te­ment de données non trans­pa­rent
Domaines d’ap­pli­ca­tion variés et par­ti­ci­pa­tion active au dé­ve­lop­pe­ment des uti­li­sa­teurs

À quels domaines d’ap­pli­ca­tion les DApps con­vien­nent-elles ?

Les DApps sont con­si­dé­rées comme un pilier du Web3. Le Web3 est une nouvelle gé­né­ra­tion d’Internet basée sur des blo­ck­chains et des réseaux dis­tri­bués. Toutefois, les DApps jouent déjà un rôle important dans les tran­sac­tions au sein des réseaux dé­cen­tra­li­sés. Le dé­ve­lop­pe­ment et l’ap­pli­ca­tion des DApps sont favorisés par le fait qu’elles peuvent être pro­gram­mées par des uti­li­sa­teurs possédant des com­pé­tences en blo­ck­chain et en pro­gram­ma­tion.

Voici des exemples d’ap­pli­ca­tion possibles :

  • Finances : les DApps en­cou­ra­gent les tran­sac­tions fi­nan­cières et les opé­ra­tions com­mer­ciales dé­cen­tra­li­sées qui n’imposent pas l’entremise d’ins­ti­tu­tions fi­nan­cières. Il est par exemple fait appel à des pro­to­coles mo­né­taires pour les tran­sac­tions fi­nan­cières à cet effet. Les pos­si­bi­li­tés d’ap­pli­ca­tion com­pren­nent les prêts, les obli­ga­tions, les in­ves­tis­se­ments, les opé­ra­tions de troc et les enchères.
  • Jeux et NFT : diverses DApps de jeu per­met­tent de faire du commerce et de « jouer » avec un NFT. On peut ainsi gagner de l’argent avec les NFT à travers leur création, collecte, échange ou en faisant des paris.
  • Na­vi­ga­teur : les na­vi­ga­teurs Dapp éta­blis­sent des con­nexions entre les ap­pli­ca­tions dé­cen­tra­li­sées, per­met­tent de surfer dans les DApps sur les réseaux blo­ck­chain et four­nis­sent un por­te­feuille intégré pour les paiements cryp­to­gra­phiques.
  • Réseaux sociaux : les réseaux sociaux dé­cen­tra­li­sés comme Leeroy peuvent être utilisés comme al­ter­na­tive aux en­tre­prises spé­cia­li­sées dans les réseaux sociaux cen­tra­li­sées comme Meta ou Twitter, qui font preuve de laxisme en matière de pro­tec­tion des données.

Exemple pratique pour DApps

Les DApps bien connues qui sont entourées d’ores et déjà d’une grande com­mu­nauté aujourd’hui sont les suivantes :

  • Rarible : Rarible est une ap­pli­ca­tion dis­tri­buée qui tient lieu de marché NFT. Les NFT peuvent être créés, vendus et achetés via Rarible. D’autres moyens de se procurer des gains incluent le commerce de l’art et le commerce des objets de col­lec­tion.
  • Tra­ce­Do­nate : le service DApp utilise des por­te­feuilles crypto pour canaliser les dons à des or­ga­nismes de bien­fai­sance.
  • Minds : en tant que DApp de réseaux sociaux, Minds utilise du code open source et un chif­fre­ment fiable des données uti­li­sa­teur.
  • 1inch : tient lieu de DApp boursière, qui peut être utilisée pour frac­tion­ner les tran­sac­tions de bourse et pour stimuler la né­go­cia­tion sur plusieurs DEX à des con­di­tions optimales.
  • Ipse : le na­vi­ga­teur Dapp est un moteur de recherche dé­cen­tra­lisé basé sur le système de fichiers in­ter­pla­né­taire et la blo­ck­chain EOS. Ipse promet plus d’anonymat et de con­fi­den­tia­lité avec un chif­fre­ment asy­mé­trique à la clé.
  • Pan­ca­kes­wap : cette place boursière dé­cen­tra­li­sée parmi les plus im­por­tantes pour les cryp­to­mon­naies s’utilise comme une DApp. Elle sert de pla­te­forme d’échange pour les jetons BEP-20.
Aller au menu principal