Comprendre les concepts de Proof of Reserves, Proof of Liabilities et Proof of Solvency

proof of reserves, proof of libilities, proof of solvency
Possédez ce bout d'histoire
Profitez de nombreux avantages en collectionnant nos actualités
Getting your Trinity Audio player ready...

Dernière modification effectuée le 02.10.2023 18:55

La passerelle entre la monnaie traditionnelle et la crypto monnaie rend presque indispensable la présence d’exchanges centralisés. Ces derniers présentent des vertus indéniables pour populariser à grande échelle l’utilisation des crypto monnaies.

En revanche, pour assurer une transparence accrue, les CEX doivent publier un Proof of Reserves (PoR) et un Proof of Liabilities (PoL) pour rassurer leurs clients.

L’histoire récente démontre l’absolue nécessité de créer un environnement de confiance pour les utilisateurs concernant la sécurité de leurs actifs. Malheureusement, la menace de l’insolvabilité persiste au-dessus des créateurs d’exchanges.

En effet, les exchanges doivent toujours être en mesure de répondre à une demande massive de retraits des clients. Si une plateforme ne peut pas satisfaire à cette obligation, elle se confronte inévitablement à un risque de faillite.

Dès lors, la transparence vis-à-vis des utilisateurs doit devenir une norme dans l’industrie. L’utilisation de la blockchain doit en ce sens devenir un atout fondamental puisqu’il permet aux exchanges d’émettre un suivi comptable précis de la valorisation de leurs actifs.

Dans cet article, découvrez les concepts de Proof of Reserves (PoR) et de Proof of Liabilities (PoL).

En savoir plus : Auditer vous-même les Proof of Reserves des exchanges majeurs : Binance, Crypto.com, Bybit, etc.

Le Proof of Reserves rudimentaire : un concept indispensable, mais largement incomplet

La panique suscitée par l’effondrement de l’empire FTX de Sam Bankman-Fried, dont l’exchange américain FTX, a créé un réel besoin de transparence des exchanges concernant leur solvabilité. Rapidement après les faits, de nombreux exchanges se sont mis en tête de publier un Proof of Reserves pour rassurer leurs clients.

Un Proof of Reserves est la publication d’un document, généralement sous forme de rapport d’audit, permettant à un exchange de prouver la valeur de l’ensemble de ses actifs présent sur la blockchain. Ainsi, grâce à la présence d’un Proof of Reserves, un utilisateur peut vérifier à tout moment la capacité d’un exchange à répondre à un exode massif des clients de sa plateforme.

Cette prouesse est réalisée grâce à la particularité de la blockchain. Grâce à elle, les exchanges sont en mesure de partager leurs adresses publiques sur les différentes blockchains afin que n’importe qui puisse se renseigner sur l’état des finances d’une plateforme sans avoir recours à un tiers de confiance.

Pour démontrer leur solvabilité, les exchanges pourraient recourir à un Proof of Reserves rudimentaire. Ce dernier comporterait simplement une liste de l’ensemble des dettes de l’exchange envers les utilisateurs et toutes les adresses blockchains qu’il détient pour démontrer l’équilibre entre les deux. Ainsi, chaque utilisateur serait théoriquement en mesure de vérifier qu’il est effectivement inclus dans la preuve de réserves.

Les limites de la Proof of Reserves rudimentaire

La Proof of Reserves rudimentaire constitue généralement une réponse non exhaustive aux inquiétudes des utilisateurs. Malgré toute la bonne volonté des plateformes, la publication des adresses qu’elle détient sur la blockchain requiert aux utilisateurs de donner leur confiance aux plateformes.

En effet, un Proof of Reserves peut être facilement manipulable par l’exchange lui-même soit en effectuant des transactions litigieuses pour prouver à un instant T la possession d’une somme fixe d’actifs soit en indiquant des adresses détenant des fonds sans posséder réellement la clé privée permettant d’y accéder.

De plus, un Proof of Reserves partageant seulement les adresses détenues par un exchange ne permet pas à un client de s’assurer individuellement que son investissement est réellement pris en compte dans les adresses partagées. Enfin, l’absence d’audit indépendant rend la manœuvre d’autant plus délicate.

La proof of Reserves avec arbre de Merkle : une solution plus avancée, mais imparfaite

Pour offrir une réponse plus pertinente, ainsi que respectueuse de la vie privée, certains exchanges de crypto monnaies ont mis en place un Proof of Reserves à partir d’un arbre de Merkle.

Cette solution semble naturelle puisqu’elle reprend les fondamentaux de la blockchain. Concrètement, il s’agit d’intégrer à un arbre de Merkle tous les soldes des clients individuellement et de le structurer de sorte que la somme des soldes corresponde effectivement à la racine de Merkle.

Proof of Reserve_Arbre de Merkle

Dans le schéma ci-dessus, provenant d’un article de Vitalik disponible ici, le hash surligné en jaune représente la racine de Merkle. Il s’agit de la somme totale des actifs compris dans l’ensemble de l’arbre. Cette donnée est publique.

Dès lors, grâce à cette méthode, chaque utilisateur peut être en mesure de s’assurer que son investissement est effectivement pris en compte par l’exchange de crypto monnaie. Ensuite, grâce aux différents hashs, il est possible de vérifier l’intégrité des données tout en protégeant efficacement la vie privée des utilisateurs.

Les limites au Proof of Reserves par arbre de Merkle

Bien que protectrice de la vie privée des utilisateurs, le Proof of Reserves par arbre de Merkle permet seulement de s’assurer que l’investissement individuel de chaque utilisateur est effectivement pris en compte par l’exchange dans son rapport d’audit et qu’il n’a pas fait l’objet d’une manipulation.

En revanche, cette méthode ne permet pas de s’assurer de la fiabilité de l’intégralité de l’arbre de Merkle. En effet, un tel système permet l’émergence des soldes négatifs. Par exemple, pour compenser un manque de liquidité, un exchange pourrait simplement intégrer à l’arbre un solde négatif permettant de compenser la somme manquante.

De fait, si une bourse à 200 ETH de soldes clients totaux, mais seulement 100 ETH en réserve, il lui suffit d’ajouter un solde de -100 ETH dans l’arbre de Merkle pour donner l’illusion d’une balance parfaite.

Néanmoins, le recours à un audit indépendant de l’intégralité de l’arbre de Merkle permet de s’assurer de l’absence de somme négative au sein de l’arbre. Par contre, en l’absence d’audit indépendant, seuls les utilisateurs ayant des liens directs ou indirects avec le solde négatif pourront se rendre compte de la supercherie. Ainsi, une partie des utilisateurs sont susceptibles d’être totalement bernés par l’exchange.

Enfin, la Proof of Reserves par arbre de Merkle n’incorpore pas en son sein le passif général d’un exchange. Dès lors, bien qu’un exchange soit en mesure de prouver une réserve de liquidité correspondant à la somme des actifs totaux des utilisateurs, cette dernière serait inutile si des dettes annexes viennent s’ajouter au passif de l’entreprise.

Les ZK-SNARKs : le futur du Proof of Reserves ?

L’utilisation d’un arbre de Merkle n’est pas une réponse parfaite en matière de confidentialité. Bien qu’il apporte une certaine sérénité en la matière, certaines techniques peuvent être employées pour en soutirer des informations personnelles sur les utilisateurs présents en son sein.

Dès lors, une solution pourrait être ajoutée afin d’améliorer considérablement la sécurité, la robustesse, et surtout la vie privée des utilisateurs des exchanges centralisés. Tout en continuant d’utiliser un arbre de Merkle ou un KZG commitment, pour constituer sa preuve de réserves, un exchange pourrait prouver que ce dernier a été correctement réalisé grâce aux ZK-SNARKs.

Dans cette hypothèse, la preuve délivrée à un utilisateur lui permet simplement de s’assurer que la balance totale dans l’arbre n’est pas négative et que ses actifs y sont bien intégrés. En revanche, il devient impossible d’obtenir des informations sur les autres utilisateurs.

Quid des actifs off chain et fiat

Dans le système de la Proof of Reserves par Arbre de Merkle, l’exchange, pour constituer sa structure, doit faire transitionner les actifs sur la blockchain ou en démontrer la présence dans un cold storage. La deuxième solution se réfère à une méthode permettant de signer un message off chain.

Or, de nombreux exchanges de crypto monnaies utilisent des stockages dits « froid » permettant de stocker les actifs off chain. La méthode de cold storage est un obstacle majeur puisqu’il oblige les exchanges à envoyer une transaction à la blockchain à partir de leur infrastructure.

Or, pour sécuriser parfaitement leur infrastructure, les exchanges procèdent à de nombreuses procédures de sécurité comme le calcul multipartite sécurisé (multy-party computation) rendant excessivement onéreuse une quelconque transaction à partir du cold storage.

Dès lors, pour faire apparaître ces actifs dans la Proof of Reserves, les exchanges devront trouver des solutions annexes que Vitalik explore dans son article.

Enfin, l’utilisation des monnaies FIAT par les exchanges pour constituer leur réserve est une pratique courante. Le problème ? La possession de la monnaie FIAT dans une banque n’est pas prouvable grâce à la blockchain.  Dès lors, la solution pour cette problématique sera de se reposer sur le système classique en récupérant une attestation auprès de la banque dans laquelle la monnaie FIAT est conservée.

Schéma actif passif proof of reserve

Le Proof of Liabilities : L’indispensable corolaire au Proof of Reserves

Pour être véritablement efficace, une preuve de réserves doit inévitablement être complété par un Proof of Liabilities (PoL).

(En français, Proof of Liabilities se traduit en preuve de l'existence de passifs ou preuves des obligations)

Cette fois-ci, le document publié doit contenir un état des lieux exhaustifs de l’ensemble des dettes contractées par un exchange envers à la fois ses utilisateurs, mais également d’autres contreparties commerciales.

Dès lors, pour être authentifié, le Proof of Liabilities doit permettre d’attester avec certitude que la somme des réserves est égale ou supérieure à la somme des dettes de l’exchange.

Néanmoins, cette hypothèse est valable si et seulement si l’exchange procède à une démarche honnête en incluant toutes les dettes contractées.

Par exemple, un exchange pourrait simplement passer un accord économique impactant sa comptabilité, mais refuser intentionnellement de l’ajouter à sa Proof of Liabilities. Cette situation causerait inévitablement un déséquilibre invisible dans les rapports publiés.

De fait, une nouvelle fois, une partie du procédé repose sur la confiance aveugle de l’utilisateur envers l’exchange.

La nécessité d’apporter un cadre réglementaire aux exchanges de crypto monnaies

Souvent aperçue comme une menace, la régulation devra jouer un rôle majeur pour s’assurer de l’honnêteté des acteurs de l’industrie. Pour l’heure, l’absence de cadre clairement défini est un frein considérable à la transparence des exchanges sur leur capacité à faire face à leur dette.

D’abord, prenons l'exemple du cadre juridique français. En droit commercial, les usages sont des pratiques non écrites, mais tellement généralisées qu’elles prennent la forme de règles considérées comme inévitables. Dès lors, les exchanges de crypto monnaies pourraient prendre l’habitude systématique de s’imposer à la rédaction d’une Proof of Liabilities.

Une limite légale apparait dans ce cas là puisque l’usage n’a qu’une portée limitée puisqu’il peut être écarté au sein d’un contrat. De fait, les exchanges devront faire rédiger dans les contrats conclus avec leurs partenaires commerciaux des clauses indiquant la présence d'une Proof of Liabilities.

Néanmoins, la réponse adéquate idéale devra venir directement du législateur. À l’avenir, ce dernier doit pouvoir apporter des solutions légales efficaces sans pour autant restreindre les entreprises privées dans leur développement économique.

L’édiction d’un Proof of Liabilities pourrait simplement devenir obligatoire pour tous les exchanges de crypto monnaie centralisés. De la même manière qu’avec le Proof of Reserves, ce dernier devra faire l’objet de nombreuses mesures de sécurité pour apporter une confidentialité aux différentes parties impliquées.

De plus, ce Proof of Liabilities devrait faire l’objet d’un renouvellement récurrent clairement inscrit dans la loi. En revanche, cette Proof of Liabilities, à l’instar du Proof of Reserves, ne peut pas être opéré par l’entreprise elle-même. Dès lors, les deux rapports doivent être réalisés par des entités indépendantes et n’étant pas sujettes à de quelconques conflits d’intérêts.

Pour s’assurer du respect de la réalisation d’un audit de sécurité par une entreprise indépendante, le régulateur pourrait rendre obligatoire cette pratique tout en créant des sanctions rendant son contournement trop risqué financièrement pour un exchange.

DEX CEX Proof of Reserve liabilities

L’utopie des exchanges centralisés non custodial

Tout l’intérêt de la combinaison de la Proof of Reserves et de la Proof of Liabilities est de pouvoir créer une Proof of Solvency (preuve de solvabilité) pour les exchanges centralisés.

Grâce à cette preuve, les utilisateurs pourront donc être assurés que l’exchange est effectivement en mesure de leur rendre leur investissement à tout moment.

Pourtant, la présence d’un Proof of Solvency n’est pas une protection absolue contre la subtilisation des actifs des utilisateurs que ce soit, par exemple, au travers d’un hack de la plateforme ou d’un employé mal intentionné. Dès lors, une solution utopique consisterait en l’émergence des CEX non-custodial.

Néanmoins, pour l’heure, il semble que la technologie ne soit pas suffisamment évoluée pour offrir une telle possibilité. En effet, aussi jolie que la solution puisse paraitre, elle fait pivoter toute la responsabilité des actifs sur les utilisateurs eux-mêmes.

Or, manifestement, les stockages en self custody (garde personnelle) ne sont clairement pas assez démocratisés pour que les exchanges principaux puissent ne serait-ce qu’imaginer basculer vers ce type de modèle.

De fait, la confrontation entre les exchanges centralisés d’un côté et les exchanges décentralisés de l’autre devrait rester la norme à moyen terme. En revanche, l’avenir pourrait être prometteur et offrir des solutions techniques bien plus abouties.

Conclusion

L’inquiétude des utilisateurs quant à leurs fonds disponibles sur les exchanges centralisés rend inévitable la constitution d’un Proof of Solvency. De fait, la présence d’un Proof of Reserves (PoR), combinée à un Proof of Liabilities (PoL), doit devenir la norme dans le domaine.

De préférence, à défaut d’avoir un standard technique quant à la manière de les réaliser, une procédure devra voir le jour et être respectée par tous les exchanges de crypto monnaies centralisés. De toute manière, sans une conduite irréprochable, la popularisation du domaine de la blockchain n’en sera que retardée.

Dès lors, les audits devront être fait de manière indépendante, sans conflit d’intérêt et dans le strict respect de la vie privée des utilisateurs.

Bien que l’arbre de Merkle semble être aujourd’hui la solution privilégiée par la majorité des exchanges pour rassurer les utilisateurs, la robustesse et la confidentialité des ZK-SNARKs pourraient rapidement apporter une solution technique bien supérieure.

Articles qui pourraient vous intéresser