L'échange d’\gls{actif}s entre différentes \textit{\gls{blockchain}s} est une propriété fortement recherchée dans le secteur de la
\textit{\gls{blockchain}} et des échanges de crypto-\gls{actif}s. En effet, dans un contexte où l’adoption de la technologie est
grandissante \cite{evolutionCrypto2022} il est largement souhaité et utile de mettre en place des solutions d’échanges entre chaines,
permettant ainsi aux utilisateurs de transférer des \gls{actif}s d’une \textit{\gls{blockchain}} à une autre sans avoir à passer par
un échange centralisé. Cela peut être très utile pour les utilisateurs qui souhaitent échanger des \gls{actif}s qui
ne sont pas disponibles sur leur \textit{\gls{blockchain}} d’origine ou qui souhaitent simplement utiliser une \textit{\gls{blockchain}}
différente pour des raisons de sécurité ou de confidentialité. Cependant, les échanges d’\gls{actif}s entre différentes
\textit{\gls{blockchain}s} posent des problèmes de sécurité et de confiance car il est difficile de garantir que les \gls{actif}s soient
transférés en toute sécurité et que les utilisateurs ne seront pas victimes d’une fraude ou d’une arnaque. Il est
donc important de mettre en place des solutions sécurisées et fiables pour les échanges d’\gls{actif}s entre différentes
\textit{\gls{blockchain}s}.

\subsection{La \gls{blockchain}}
La \textit{\gls{blockchain}} est une technologie de stockage et de transmission d’informations sans autorité centrale. Elle 
permet de stocker des données de manière transparente et sécurisée en utilisant des algorithmes de cryptographie. 
La \textit{\gls{blockchain}} permet de réaliser des échanges entre utilisateurs de manière sécurisé et confidentielle, 
le tout sans utiliser d'intermédiaires. Les arbres de Merkle sont une structure de données fondamentale 
dans la technologie \textit{\gls{blockchain}} qui permettent de vérifier et de sécuriser les données en utilisant des 
fonctions de hachage. Ils sont utilisés pour stocker les transactions dans 
chaque bloc d’une \textit{\gls{blockchain}} et pour vérifier si une transaction est incluse dans un bloc ou non.

\subsection{Décentralisation/Centralisation}
Actuellement, rare sont les \textit{\gls{blockchain}s} supportant de manière native le transfert d'\gls{actif}s entre elles. Ainsi les solutions
de \textit{Swapping} actuels passent par des applications tierces. Bien que la \textit{\gls{blockchain}} soit une technologie que nous 
pouvons considérer comme décentralisée, il est néanmoins possible de venir y connecter des interfaces tierces plus ou 
moins centralisées dans le but d'y ajouter des fonctionnalités. Ce sont ces solutions que nous allons présenter durant ce rapport. \\
Il devient donc nécessaire de définir ce que nous entendons par centralisé et décentralisé. Ainsi nous allons considérer comme
centralisé tout système où une autorité centrale contrôle les décisions et les actions. 
Il y a une hiérarchie entre les pairs, et un groupe fermé d’individus ou une seule entité représente l’intermédiaire. \\
Nous considérons comme décentralisé tout système où il n’y a pas d’autorité centrale et où les décisions sont prises 
par un groupe de pairs. Dans ce système, il n’y a pas de hiérarchie entre les pairs et n'importe qui peut faire partie
du réseau.
