I - Décentralisation de votre organisation.
A - Quelques principes de bases à la Genèse de votre projet.
Mesure 1 - Restez anonymes. Il peut être avisé pour les porteurs de projet de garder l’anonymat. Non pas seulement car il s’agit une bonne pratique de sécurité [1] mais aussi parce que cela constitue une première mesure efficace de décentralisation : l’anonymat, qui n’est pas illégal en soi, empêche l’identification d’une cible vers laquelle se diriger pour assigner des responsabilités [2].
Concrètement, les membres de l’équipe fondatrice d’un projet pourraient utiliser des stealth address et des outils anonymisant éprouvés [3]. Additionnellement, ils pourraient créer des adresses « toutes fraîches », aucunement liées à leurs activités antérieures, pour les dédier uniquement à leur projet et à partir desquelles ils réaliseraient le reste des opérations de leur organisation (mesure 3).
Mesure 2 - Utilisez un multi-sig. Dès lors que l’équipe est constituée, il est recommandé de créer un multi-sig entre ses membres. Un multi-sig est un smart contract à partir duquel il peut être réalisé des opérations on-chain qu’à condition que n adresses aient préalablement signé/donné leur consentement. En faisant ce choix, les actions dans la blockchain réalisées pour le compte de l’équipe ne seront pas affiliées à une adresse singulière (et donc potentiellement identifiée comme responsable) mais un wallet décentralisé opérant pour et par les membres de l’organisation. Dans l’écosystème EVM, il est conseillé de recourir au multi-sig SAFE [4] qui est le plus sécurisé et éprouvé.
Mesure 3 - Restez on-chain. Il peut être opportun de poursuivre toutes les opérations liées à l’organisation on-chain ou dans l’écosystème web 3. De cette sorte, si les porteurs de projet ont une stealth address ou un multi-sig, ils pourront conserver l’anonymat et la décentralisation associés dans la gestion courante de l’entreprise. Il est, en effet, possible à partir seulement d’un wallet :
- de créer et gérer une boite mail [5],
- d’avoir un numéro de téléphone portable [6],
- de payer ses prestataires et ses salariés [7],
- etc.
Pour diverses raisons toutefois, les fondateurs peuvent trouver indispensable de créer une véritable entité légale pour conduire des opérations off-chain comme signer des contrats, lever des fonds, payer des collaborateurs ou détenir des droits de propriété intellectuelle. Dans ce cas, une personne morale sera créée avec le risque qu’elle soit identifiée comme un élément centralisant/responsable de l’organisation. Pour le réduire, il faudra suivre d’autres mesures de décentralisation (en particulier celles concernant les smart contracts) et veiller à cantonner l’objet de l’entité à un simple rôle de contributrice/développeuse du protocole décentralisé.
B - La DAO.
Mesure 4 - Gouvernez par une DAO. Une DAO (Decentralized Autonomous Organisation) est une organisation fonctionnant dans la blockchain. Idéalement, les porteurs de projets web 3 déploieraient leurs smart contracts sans chercher à les gouverner, ce qui neutraliserait parfaitement le risque de centralisation. Cependant, une instance de gouvernance peut s’avérer nécessaire pour les faire évoluer, corriger leurs bugs, encourager leur adoption, engager la communauté, etc.
Plusieurs outils peuvent alors être utilisés pour la création et la gestion de ces organisations :
- comme les DAO sont des ensembles de smart contracts complexes et sensibles, il est recommandé d’utiliser des modèles éprouvés comme ceux de Aragon [8], Moloch [9], ou OpenZeppelin [10] ;
- pour permettre le vote dans ces organisations, élément phare d’une DAO décentralisée (voir mesure 5), l’usage de l’outil Snapshot [11] est avisé ;
- enfin il est courant que les espaces d’échanges dans une DAO prennent lieu à l’aide de services de discussion en ligne comme Discord ou Telegram.
Mesure 5 - Implémentez et formalisez une gouvernance démocratique de votre DAO. La réflexion autour de la meilleure forme de gouvernance pour une DAO (une qui allie efficacité et décentralisation) est toujours bouillonnante. Peu importe les choix que feront les porteurs de projets, ils devront s’efforcer de construire une organisation particulièrement démocratique ; de sorte qu’on ne puisse dire que son contrôle repose, en fait, entre leurs mains ou ceux d’une poignée d’individus.
Cela signifie que l’ensemble des membres de la communauté du projet (les détenteurs du token de gouvernance - lesquels permettent à ses détenteurs de voter dans la DAO et d’investir dans ledit projet) doit pouvoir proposer des décisions de la DAO et les faire exécuter, de façon désintermédiée, à travers un smart contract.
Le fonctionnement de cette instance de gouvernance devra être établi par écrit (ainsi que toute démocratie est dotée d’une constitution). Dans ce document (souvent un gitbook [12]), il sera détaillé le cycle vie d’une proposition de mesure avant qu’elle devienne une décision exécutée, soit :
- la manière dont peut être proposée une mesure ;
- le quorum nécessaire pour que cette mesure soit discutée ;
- le processus de discussion de cette mesure ;
- la procédure de vote de cette mesure ;
- et enfin le fonctionnement des smart contracts pour que la mesure soit exécutée.
Il ne devra être laissé aucun angle mort sur la description du processus décisionnel : l’opacité risquerait de créer une suspicion de centralisation en défaveur des porteurs de projets.
Enfin, les fondateurs seront vigilants à ne pas abuser des mesures anti-spam de gouvernance [13]. (conçues pour freiner les propositions intempestives ou pas sérieuses) : par exemple ils devront s’abstenir d’exiger une trop grande détention de tokens de gouvernance avant de pouvoir faire une proposition (ou la prévalider avant vote). De manière générale, il faudra veiller au risque de ploutocratie en ne réservant pas les actions essentielles de la DAO à des whales (des individus possédant une quantité significative d’un token particulier ; qui sont souvent les fondateurs de la DAO).
Mesure 6 - Financez démocratiquement votre organisation. Pour grandir, les porteurs de projets web 3 auront nécessairement besoin de financements. Ils disposeront alors du choix de lever des fonds auprès d’individus (a) ou de se les octroyer eux-mêmes (en quelque sorte) à travers des airdrops (b). Quelle que soit la méthode choisie, ils devront veiller à neutraliser les éléments centralisateurs pouvant émerger au cours de ces processus.
a) Levée de fonds par ICO/Token Sale.
S’ils décident de lever des fonds auprès d’individus, la manière la plus décentralisée d’y parvenir nous semble être l’ICO (Initial Coin Offering) ; qui n’a certes plus le vent en poupe. Il s’agit d’un mécanisme, géré par un smart contract, permettant aux participants d’acheter des tokens d’un projet (souvent ceux permettant de voter dans une DAO) en échange de cryptomonnaies. Mise en place avec un système d’enchère hollandaise [14], cette méthode peut offrir les avantages de lever des fonds de manière transparente, désintermédiée/entièrement on-chain, tout en limitant la concentration des tokens par des whales ou des robots.
Le règlement MiCA impose des obligations aux émetteurs d’ICO uniquement s’ils sont identifiables [15]. Autrement dit, si cette méthode est choisie il est crucial que l’organisation soit correctement décentralisée avant de lancer l’ICO, sous peine de devoir respecter les obligations contraignantes des offreurs de jetons au public du règlement.
b) Levée de fonds par airdrop.
Les fondateurs peuvent choisir la méthode la plus populaire actuellement qui est celle de l’airdrop. Elle consiste pour l’équipe à créer des tokens (toujours de gouvernance), généralement après plusieurs mois (voir années) d’activité de leur projet, et à les distribuer gratuitement à leur communauté et d’autres parties prenantes.
Si cette méthode est choisie, il devra être veillé à ce que la répartition :
- n’alloue pas plus de la moitié des tokens à l’équipe fondatrice (contrôle de droit) ;
- et n’attribue pas non plus une proportion trop importante de tokens à l’équipe fondatrice, tandis que le reste de la répartition serait très disséminé ; ce qui créerait une concentration permettant aux porteurs du projet de contrôler effectivement l’organisation, bien qu’ils n’aient pas la majorité des tokens (contrôle de fait).
II - Décentralisation de vos applicatifs.
A - Décentralisation de vos smart contracts.
Mesure 7 - Déployez vos smart contracts sur une infrastructure publique. L’infrastructure sur laquelle sera déployée les smart contracts exécutant les services sur crypto-actifs devra être publique. En effet, s’il s’agit d’une blockchain privée, elle sera par définition contrôlée par une ou plusieurs entités, qui pourront être identifiées comme responsables.
Il faudra également s’abstenir de déployer les smart contracts sur une infrastructure certes publique, mais tout nouvellement créée par l’équipe fondatrice (on imagine un rollup conçu spécifiquement pour l’application du projet). Là encore, il restera trop d’éléments centralisateurs facilitant la désignation d’un responsable. Le meilleur choix nous apparaît être celui d’un L1 ou L2 éprouvé et public comme Ethereum, Solana, Arbitrum, Base, Optimism, etc.
Mesure 8 - Rendez autonomes vos smart contracts. Les fondateurs doivent viser à rendre leurs smart contracts véritablement autonomes. Cela signifie que le code de ces derniers ne devrait idéalement pas contenir de mécanismes permettant de les pauser, mettre à jour ou même interrompre définitivement. Ainsi, il sera plus facile de prouver que les services de crypto-actifs fournis via ces programmes sont véritablement décentralisés. Néanmoins, comme évoqué, il pourra être nécessaire de maintenir un certain contrôle sur les smart contracts. Dans ce cas, celui-ci devra être exercé par une DAO suffisamment décentralisée (voir mesures 4 et 5).
Mesure 9 - Rendez open source vos smart contracts. L’équipe fondatrice sera également avisée de rendre open source ses smart contracts. D’abord car, dans le cas contraire, cela signifierait que les droits de propriété intellectuelle sur le programme sont détenus par une personne en particulier, qui pourrait alors être perçue comme un responsable potentiel. Ensuite car l’open source permettra pratiquement à tout un chacun d’examiner le code des smart contracts et de voir que ceux-ci sont parfaitement autonomes ou, au moins, contrôlés par une DAO démocratique.
Mesure 10 - Décentralisez vos oracles. Qu’il s’agisse de fournir des informations off-chain aux smart contracts ou d’automatiser leur actionnement (cron jobs [16]), les fondateurs du projet web 3 devront également veiller à décentraliser ces éléments essentiels du fonctionnement de leur protocole. Ils pourront recourir à des solutions décentralisées comme ChainLink [17] pour les oracles et le même protocole ainsi que Gelato Network [18] pour les cron jobs.
B - Décentralisation de l’interface d’accès.
Mesure 11 - Désintermédiez l’interface d’accès aux smart contracts. Après leur déploiement, l’interaction avec les smart contracts peut se faire directement dans la blockchain ou, de façon beaucoup plus courante, à travers un site web. Cette dernière manière est de loin la plus choisie en raison de sa commodité. Cette interface avec le smart contract (appelée aussi le « front-end ») est un site internet classique, déployé sur des serveurs centralisés, qui est souvent considéré comme un point de centralisation opportun par lequel des régulations pourraient être exercées (on évoque régulièrement la possibilité d’imposer aux personnes propriétaires du site l’exercice de contrôles KYC sur leurs utilisateurs).
Or, on trouve actuellement dans l’écosystème blockchain des moyens de décentraliser ces front-ends, empêchant non seulement leur association à des individus en particulier tout en préservant leur ergonomie et accessibilité. Les développeurs d’un projet web 3 pourraient en effet héberger le front-end de leur smart contract sur des solutions de stockage décentralisées comme IPFS ou Arweave, en utilisant des outils tels que Fleek [19]. Ainsi, leur site serait incensurable (il faudrait compromettre les protocoles entiers pour le déplateformer) et déployable uniquement à l’aide d’un wallet (multisig ou stealth address, voir mesures 1 et 2) ; ce qui pourrait éviter toute affiliation à une entité ou un individu particulier.
Pour les mêmes raisons et toujours à l’aide de Fleek.co, il est également recommandé aux fondateurs du projet d’utiliser un nom de domaine décentralisé. En pointant leur site web vers une adresse décentralisée comme celles fournies par ENS [20], les utilisateurs bénéficient d’un point d’accès facile à retenir et à utiliser, mais qui est, comme le site web, décentralisé et qui ne peut aucunement être lié à une identité précise.
Discussion en cours :
Merci, très éclairant...