This commit is contained in:
JOLY Amaury
2023-04-03 18:01:18 +00:00
parent b7f2047d26
commit b35f3dc534
15 changed files with 83 additions and 77 deletions

View File

@ -29,8 +29,8 @@ Lors d'un échange atomique les HTLC vont être utilisés de manière centrale c
Si nous nous penchons sur le déroulement d'un échange atomique à deux parties nous pouvons déduire les étapes suivantes:
\begin{enumerate}
\item Les deux parties participent à l'échange, créant un HTLC (sur chaque \textit{\gls{blockchain}}) dans lequel les fonds sont bloqués.
\item Les deux parties échangent les informations nécessaires pour effectuer une transaction sur la \textit{\gls{blockchain}} de l'autre partie.
\item Les deux parties vérifient l'exactitude des informations reçues et signent la transaction.
\item Ils échangent les informations nécessaires pour effectuer une transaction sur la \textit{\gls{blockchain}} de l'autre partie.
\item Ils vérifient l'exactitude des informations reçues et signent la transaction.
\item Les événements sont envoyés sur les \textit{\gls{blockchain}s} respectives.
\item Les transactions sont confirmés par les \textit{\gls{blockchain}s} respectives et les fonds sont débloqués.
\end{enumerate}

View File

@ -1,5 +1,5 @@
\subsection{Etat de l'art}
\input{decentralisation/etat_art.tex}
% \subsection{Etat de l'art}
% \input{decentralisation/etat_art.tex}
\subsection[Relay]{Relay}
\input{decentralisation/relay.tex}

View File

@ -10,7 +10,7 @@ Ils sont des échanges d\gls{actif}s internes au réseau et ont donc leurs pr
\label{fig:offchain}
\end{figure}
Les transactions \textit{off-chain} sont confirmées en dehors du réseau principal de la \textit{\gls{blockchain}}, ce qui entraîne souvent un processus moins cher et plus rapide pour lutilisateur.
Tout cela se fait dans un objectif bien précis qui est de garder le maximum de sécurité/fiabilité de la \textit{\gls{blockchain}} mère tout en essayant d'améliorer la vitesse d'échange et les frais de transaction.
Tout cela se fait dans un objectif bien précis qui est de garder le maximum de sécurité et de fiabilité de la \textit{\gls{blockchain}} mère tout en essayant d'améliorer la vitesse d'échange et les frais de transaction.
Afin d'illustrer comment fonctionne les échanges \textit{off-chain} nous allons nous concentrer sur une implémentation en particulier: le réseau Lightning.
\subsubsection{Le réseau lightning}
@ -45,7 +45,7 @@ Alice va donc ouvrir un portefeuille multi-signature\footnote{Portefeuille qui n
Ensuite ils vont effectuer leurs transactions dans ce portefeuille qui va être mis à jour à chaque transaction.\\ \\
Il est fondamental de noter que chaque transaction invalide les précédentes (à l'exception de la toute première). Lorsque l'un des participants souhaite terminer l'échange il va publier sur la \textit{\gls{blockchain}} Bitcoin la dernière transaction effectuée.
Ce mécanisme de transaction intermédiaire est mis en place afin d'éviter qu'un des deux acteurs de l'échange ne puisse "s'échapper" de l'échange, car chacune des parties va signer avec sa clef privée la dernière transaction. \\
Aussi tous ces échanges se passent à l'intérieur du réseau Lightning, la \textit{\gls{blockchain}} principale n'a donc aucune idée du nombre exact de transactions intermédiaires effectuées puisque seule une transaction sera envoyer sur la \textit{\gls{blockchain}} principale.
Aussi tous ces échanges se passent à l'intérieur du réseau Lightning, la \textit{\gls{blockchain}} principale n'a donc aucune idée du nombre exact de transactions intermédiaires effectuées puisque seule une transaction sera envoyée sur la \textit{\gls{blockchain}} principale.
Cela permet d'éviter d'engendrer des frais de transactions inutiles ou bien de congestionner la \textit{\gls{blockchain}} principale.\\ \\
Enfin il existe aussi une autre caractéristique intéressante du réseau Lightning: le \textit{channel hopping}.
Cette propriété permet de mettre en place une transitivité entre les parties du réseau. Par exemple si Alice a déjà échangé avec Bob et Bob à déjà échangé avec Carol alors Alice pourra échanger avec Carol et vice-versa.

View File

@ -3,7 +3,7 @@
\subsubsection{Definition}
Les réserves de liquidité sont des marchés automatisés qui permettent aux utilisateurs de fournir des liquidités pour les échangeurs décentralisés (DEX) et de
remporter une comission à chaque transaction \cite{jensen2021introduction, belchior2022survey, augustin2022yield}.
Les fournisseurs de liquidités déposent des fonds dans une résreve de liquidité et reçoivent des jetons
Les fournisseurs de liquidités déposent des fonds dans une réserve de liquidité et reçoivent des jetons
LP\footnote{Liquidity Provider Token} en retour. Les jetons LP représentent une part de propriété dans la réserve de liquidité et peuvent être utilisés pour
retirer des fonds de la réserve. Les réserves de liquidité sont un concept clé de lécosystème DeFi. Il permettent la mise en place d'échangeurs décentralisés
qui donne la possibilité aux utilisateurs déchanger des actifs sans avoir besoin dun intermédiaire centralisé. \\
@ -35,12 +35,8 @@ de liquidités sont des attaques dans lesquelles un utilisateur manipule le prix
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. \\
une réserve de liquidités est compromise, les utilisateurs peuvent perdre leurs fonds. \\
Un exemple d'attaque sur une réserve de liquidité est la CVE-2021-3006 \cite{nvd2021-3006,blocksec2021Seal}. 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
2020 et janvier 2021. Elle concerne un manquement de controle d'accès dans limplémentation du \textit{\gls{smart contract}} 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.
Les réserves de liquidité sont des marchés automatisés qui permettent aux utilisateurs de fournir des liquidités pour les échangeurs décentralisés (DEX) et de gagner des frais de transaction en retour. Les fournisseurs de liquidités déposent des fonds dans une résreve de liquidité et reçoivent des jetons LP\footnote{Liquidity Provider Token} en retour. Les jetons LP représentent une part de propriété dans la réserve de liquidité et peuvent être utilisés pour retirer des fonds de la réserve. Les réserves de liquidité sont un concept clé de lécosystème DeFi. Il permettent la mise en place d'échangeurs décentralisés qui donne la possibilité aux utilisateurs déchanger des \gls{actif}s sans avoir besoin dun intermédiaire centralisé. \\
A chaque échange réalisé via la réserve, les possesseurs de liquidités recoivents des récompenses qui sont les frais d'échanges des utilisateurs. Les récompenses sont généralement des jetons de gouvernance ou des jetons de protocole. Les réserves de liquidité se régulent ainsi en ajustant les frais de transaction en fonction de loffre et de la demande. Si la demande pour une réserve de liquidité particulier est élevée, les frais de transaction augmentent pour encourager les fournisseurs de liquidités à déposer plus de fonds dans la réserve. Si la demande est faible, les frais de transaction diminuent pour encourager les utilisateurs à échanger des \gls{actif}s sur la réserve de liquidité. \\
Une réserve de liquidité repose sur un \gls{smart contract} et bénéficie ainsi de la décentralisation et de la sécurité de la \gls{blockchain} sur laquelle il repose.
sur ses jetons.

View File

@ -22,7 +22,7 @@ dans le contrat. Ce qui offre une possibilité d'opérabilité unidirectionnelle
\end{figure}
\subsubsection{tBTC}
Un exemple de relay est le projet tBTC, qui permet aux utilisateurs déchanger des bitcoins contre des
Un exemple d'usage de BTCrelay pour de l'echange \gls{cross-chain} est le projet tBTC, qui permet aux utilisateurs déchanger des bitcoins contre des
tokens ERC-20 représentant des bitcoins sur la \textit{\gls{blockchain}} Ethereum \cite{hildebrandt2020tokenization,lan2021horizon}. 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