Merge branch 'pool_de_liquidité' into 'develop'

Des petits refactors

See merge request v18003685/pfe-blockchain!29
This commit is contained in:
TESTUD Romain
2023-04-01 10:30:58 +00:00
3 changed files with 9 additions and 12 deletions

View File

@ -8,4 +8,4 @@ PancakeSwap est une plateforme déchange décentralisée (DEX) qui repose sur
\subsubsection{Limitations}
Les réserves de liquidités présentent certaines limites. Tout dabord, les réserves de liquidités sont vulnérables aux attaques de liquidités. Les attaques de liquidités sont des attaques dans lesquelles un utilisateur manipule le prix dun actif en ajoutant ou en retirant une grande quantité de liquidités dune réserve. Cela peut entraîner une baisse significative du prix de lactif et des pertes pour les fournisseurs de liquidités. De plus, les réserves de liquidités peuvent être affectés par des problèmes de liquidité. Si une réserve de liquidités na pas suffisamment de liquidités, il peut être difficile pour les utilisateurs dacheter ou de vendre des actifs sur la plateforme. Enfin, les réserves de liquidités peuvent être affectés par des problèmes de sécurité. Si une réserve de liquidités est compromis, les utilisateurs peuvent perdre leurs fonds. \\
Un exemple d'attaque sur une réserve de liquidité est la CVE-2021-3006. La CVE-2021-3006 est une vulnérabilité de sécurité qui a été exploitée en décembre 2020 et janvier 2021. Elle concerne un manquement de controle d'accès dans limplémentation du contrat intelligent pour une réserve de liquidité en lien avec Seal Finance (Seal), un jeton Ethereum. Cette vulnérabilité permet une manipulation des prix ayant permis à l'attaquant de réaliser une plus-value artificiel sur ses jetons.
Un exemple d'attaque sur une réserve de liquidité est la CVE-2021-3006. La CVE-2021-3006 est une vulnérabilité de sécurité qui a été exploitée en décembre 2020 et janvier 2021. Elle concerne un manquement de controle d'accès dans limplémentation du contrat intelligent pour une réserve de liquidité en lien avec Seal Finance (Seal), un jeton Ethereum. Cette vulnérabilité permet une manipulation des prix ayant permis à l'attaquant de réaliser une plus-value artificiel sur ses jetons.

View File

@ -1,14 +1,14 @@
%auteur: Amaury JOLY
\subsubsection{Définition}
Les relays sont des contrats intelligents qui existent sur la blockchain Ethereum.
Leur but est de transmettre des informations entre des blockchains distinctes (par exemple, Bitcoin et Ethereum).
Les relays sont des contrats intelligents qui existent sur la \textit{blockchain} Ethereum.
Leur but est de transmettre des informations entre des \textit{blockchains} distinctes (par exemple, Bitcoin et Ethereum).
Les relays suivent une partie de létat de leurs chaînes connectées afin de prouver lexistence de transactions dune chaîne à lautre.
\subsubsection{BTCRelay}
BTCRelay est un contrat intelligent qui stocke les en-têtes de blocs Bitcoin sur la blockchain Ethereum.
BTCRelay utilise ces en-têtes de blocs pour construire une mini-version de la blockchain Bitcoin: une méthode utilisée par les portefeuilles légers Bitcoin SPV.
BTCRelay est un contrat intelligent qui stocke les en-têtes de blocs Bitcoin sur la \textit{blockchain} Ethereum.
BTCRelay utilise ces en-têtes de blocs pour construire une mini-version de la \textit{blockchain} Bitcoin: une méthode utilisée par les portefeuilles légers Bitcoin SPV.
\footnote{Bitcoin SPV signifie Simplified Payment Verification et cest un moyen pour Bitcoin de se développer et de se propager en fonctionnant sur des petits appareils, comme les téléphones portables et les ordinateurs portables.}
BTCRelay est open source, sans confiance et décentralisé. Il permet aux contrats Ethereum de vérifier les transactions Bitcoin sans aucun intermédiaire: en dautres termes,
les utilisateurs peuvent payer avec Bitcoin pour utiliser les DAPPs Ethereum. Il offre également la possibilité de relayer la transaction Bitcoin à nimporte quel contrat Ethereum et dinspecter le dernier en-tête de bloc Bitcoin stocké dans le contrat. Ce qui offre une possibilité d'opérabilité unidirectionnelle de Bitcoin vers Ethereum.\\
@ -23,7 +23,7 @@ les utilisateurs peuvent payer avec Bitcoin pour utiliser les DAPPs Ethereum. Il
\subsubsection{tBTC}
Un exemple de relay est le projet tBTC, qui permet aux utilisateurs déchanger des bitcoins contre des
tokens ERC-20 représentant des bitcoins sur la blockchain Ethereum. tBTC utilise un contrat intelligent
tokens ERC-20 représentant des bitcoins sur la \textit{blockchain} Ethereum. tBTC utilise un contrat intelligent
appelé Deposit qui interagit avec un ensemble de signataires qui détiennent les bitcoins en garantie.
Le contrat Deposit utilise BTCRelay pour vérifier les preuves SPV des transactions Bitcoin et émettre ou
brûler des tokens tBTC en conséquence. Ainsi, les utilisateurs peuvent profiter des avantages de la liquidité

View File

@ -1,13 +1,10 @@
%auteur: Amaury JOLY
\subsubsection{Définition}
Les sidechains sont des blockchains secondaires qui fonctionnent en parallèle d'une blockchain principale. Elles possèdent leurs propres caractéristiques, mais bénéficient de la communauté et de la sécurité inhérente au réseau principal pour les transactions finales qui seront inscrites sur la blockchain principale. Les sidechains permettent de réaliser des opérations en marge de la chaîne principale, apportant ainsi plus de scalabilité et de fonctionnalités. Par exemple, certaines sidechains sont compatibles avec l'Ethereum Virtual Machine (EVM) et peuvent donc porter des applications Ethereum.
Les sidechains sont des \textit{blockchain}s secondaires qui fonctionnent en parallèle d'une \textit{blockchain} principale. Elles possèdent leurs propres caractéristiques, mais bénéficient de la communauté et de la sécurité inhérente au réseau principal pour les transactions finales qui seront inscrites sur la \textit{blockchain} principale. Les sidechains permettent de réaliser des opérations en marge de la chaîne principale, apportant ainsi plus de scalabilité et de fonctionnalités. Par exemple, certaines sidechains sont compatibles avec l'Ethereum Virtual Machine (EVM) et peuvent donc porter des applications Ethereum.
\subsubsection{Zendoo}
Zendoo est une plateforme de création de sidechains interopérables avec la blockchain Horizen \cite{garoffolo2020zendoo}. Elle utilise un protocole de transfert cross-chain vérifiable par zk-SNARK \footnote{zk-SNARK est un acronyme qui signifie « Zero-Knowledge Succinct Non-Interactive Argument of Knowledge ». Il s'agit d'une preuve cryptographique qui permet à une partie, le prouveur, de prouver à une autre partie, le vérificateur, qu'une affirmation sur des informations détenues secrètement est vraie sans révéler les informations elles-mêmes.}, qui permet de garantir la sécurité et la décentralisation des communications entre la chaîne principale et les sidechains. Les sidechains Zendoo peuvent avoir des caractéristiques différentes de la chaîne principale, comme le mécanisme de consensus, le modèle comptable ou la structure des données. Elles peuvent même ne pas être des blockchains du tout, tant qu'elles respectent le protocole de transfert cross-chain. Zendoo offre ainsi une grande liberté aux développeurs pour créer des applications sur mesure sans compromettre la scalabilité ou la sécurité du réseau Horizen.\\
Zendoo est une plateforme de création de sidechains interopérables avec la \textit{blockchain} Horizen \cite{garoffolo2020zendoo}. Elle utilise un protocole de transfert cross-chain vérifiable par zk-SNARK \footnote{zk-SNARK est un acronyme qui signifie « Zero-Knowledge Succinct Non-Interactive Argument of Knowledge ». Il s'agit d'une preuve cryptographique qui permet à une partie, le prouveur, de prouver à une autre partie, le vérificateur, qu'une affirmation sur des informations détenues secrètement est vraie sans révéler les informations elles-mêmes.}, qui permet de garantir la sécurité et la décentralisation des communications entre la chaîne principale et les sidechains. Les sidechains Zendoo peuvent avoir des caractéristiques différentes de la chaîne principale, comme le mécanisme de consensus, le modèle comptable ou la structure des données. Elles peuvent même ne pas être des \textit{blockchains} du tout, tant qu'elles respectent le protocole de transfert cross-chain. Zendoo offre ainsi une grande liberté aux développeurs pour créer des applications sur mesure sans compromettre la scalabilité ou la sécurité du réseau Horizen.\\
De ce fait, Zendoo facilite l'échange de jetons entre différentes chaînes de blocs, sans passer par des intermédiaires centralisés qui perçoivent des commissions. Les utilisateurs peuvent ainsi bénéficier d'une plus grande liquidité et d'une meilleure efficacité dans leurs transactions cross-chain.
\subsubsection{Contrainte technique des sidechains}
La mise en place de sidechains implique une contrainte technique majeure : la création d'un pont bidirectionnel (two-way bridge) entre la chaîne principale et la sidechain. Ce pont permet de transférer des actifs entre les deux chaînes, en respectant un taux de change prédéfini et en garantissant la conservation du nombre total d'actifs. Cependant, ce pont nécessite une coordination entre les deux chaînes, ce qui peut poser des problèmes de sécurité, de performance ou de compatibilité. Par exemple, il est difficile d'utiliser des sidechains avec des blockchains comme Ethereum ou Bitcoin, car elles n'ont pas le même algorithme de consensus, le même modèle comptable ou la même structure de données que les sidechains. Il faudrait donc adapter ces blockchains pour qu'elles puissent communiquer avec les sidechains, ce qui impliquerait des modifications importantes dans leur protocole.
La mise en place de sidechains implique une contrainte technique majeure : la création d'un pont bidirectionnel (\textit{two-way bridge}) entre la chaîne principale et la sidechain. Ce pont permet de transférer des actifs entre les deux chaînes, en respectant un taux de change prédéfini et en garantissant la conservation du nombre total d'actifs. Cependant, ce pont nécessite une coordination entre les deux chaînes, ce qui peut poser des problèmes de sécurité, de performance ou de compatibilité. Par exemple, il est difficile d'utiliser des sidechains avec des \textit{blockchains} comme Ethereum ou Bitcoin, car elles n'ont pas le même algorithme de consensus, le même modèle comptable ou la même structure de données que les sidechains. Il faudrait donc adapter ces \textit{blockchains} pour qu'elles puissent communiquer avec les sidechains, ce qui impliquerait des modifications importantes dans leur protocole.