diff --git a/docs/presentation_17_03_23/centralisation/bridges.tex b/docs/presentation_17_03_23/centralisation/bridges.tex index ec38b32..af847a7 100644 --- a/docs/presentation_17_03_23/centralisation/bridges.tex +++ b/docs/presentation_17_03_23/centralisation/bridges.tex @@ -1,105 +1,114 @@ -\begin{frame}{Les types de bridges} - Protocoles de communication et d'échanges entre différentes blockchains. - Echange de données / d'actifs \newline \newline - Plusieurs types de bridges : - \begin{itemize} - \item Trusted - \item Trustless - \end{itemize} - Différentes manières d'échanger les actifs: - \begin{itemize} - \item Lock and Mint - \item Burnt and Mint - \item Atomic Swaps - \end{itemize} +\begin{frame}{Les Blockchain Bridges} + \begin{figure} + \centering + \includegraphics[scale = 1]{centralisation/img_bridges/Pont.png} + \end{figure} \end{frame} \begin{frame}{Trusted Blockchain Bridge} - Basés sur une entité centrale en tant que tiers de confiance. -Des informations clés: + Des informations clés: + \begin{itemize} + \item Vérification de la transaction de manière externe. + \item Dépendence avec l'opérateur du \textit{bridge}. + \item Rapides. + \item Rentables. + \end{itemize} + \end{frame} + + \begin{frame}{Trustless Blockchain Bridge} + Des informations clés: \begin{itemize} - \item Façilite les transferts. - \item Utilisation simple. - \item Échanges sécurisés. - \item Possible remboursement en cas de cyberattaque. - \item Cible façile. + \item Dépend des chaînes sous-jacentes. + \item Plus fiables que les \textit{Trusted Bridges}. + \item Les utilisateurs contrôlent leurs actifs. \end{itemize} - $\Rightarrow$ MAIS l'utilisateur donne le contrôle de ses actifs.\\ -Exemple de Trusted Bridge : Binance Bridge. + \end{frame} + +\begin{frame}{Verrouiller et Frapper} + \begin{figure} + \centering + \includegraphics[scale = 1]{centralisation/img_bridges/LockAndMint.png} + \end{figure} \end{frame} -\begin{frame}{Trustless Blockchain Bridge} -Basés sur un réseau décentralisé -Des informations clés: -\begin{itemize} - \item Aucune présence d'un tiers de confiance. - \item Sécurité du bridge égale à celle de la chaîne sous-jacente. - \item Permettent aux utilisateurs de contrôler leurs actifs. - \item Aucune garantie en cas de hack. -\end{itemize} -Exemple de trustless bridge : Polygon Bridge. +\begin{frame}{Détruire et Frapper} + \begin{figure} + \centering + \includegraphics[scale = 0.7]{centralisation/img_bridges/BurnAndMint.png} + \end{figure} \end{frame} -\begin{frame}{Mécanisme de vérification} -Les mécanismes de vérification des bridges peuvent être classés en trois types: -\begin{itemize} - \item Locale (ex: Hop/Connext legacy) - \item Extérieure (ex: Avalanche Bridge) - \item Native (ex: The NEAR Rainbow Bridge) -\end{itemize} +\begin{frame}{Atomic Swaps} + \begin{figure} + \centering + \includegraphics[scale = 1]{centralisation/img_bridges/AtomicSwap.png} + \end{figure} \end{frame} +\begin{frame}{Déroulement d'une transaction} + \begin{figure} + \centering + \includegraphics[scale = 0.6]{centralisation/img_bridges/Transaction1.png} + \end{figure} +\end{frame} + +\begin{frame}{Déroulement d'une transaction} + \begin{figure} + \includegraphics[scale = 0.65]{centralisation/img_bridges/Transaction2.png} + \end{figure} +\end{frame} + +\begin{frame}{Déroulement d'une transaction} + \begin{figure} + \centering + \includegraphics[scale = 0.65]{centralisation/img_bridges/Transaction3.png} + \end{figure} +\end{frame} \begin{frame}{Vérification locale, native et externe} \begin{figure} \centering - \includegraphics[scale = 0.5]{img/DiagrammeResumeVerif.png} + \includegraphics[scale = 0.4]{centralisation/img_bridges/DiagrammeResumeVerif.png} \end{figure} \end{frame} + +\begin{frame}{Les faiblesses des bridges} + \begin{itemize} + \item \textit{Trustless Bridges} : Les \textit{smart contracts} et l'erreur humaine. + \item \textit{Trusted Bridges} : Les fraudes \textit{rug pull}. + \item Une technologie récente. + \end{itemize} + \end{frame} + \begin{frame}{Le trilemme de l’interopérabilité} Repose sur 3 notions: \begin{figure} \centering - \includegraphics[scale = 0.7]{img/3notions.png} + \includegraphics[scale = 0.7]{centralisation/img_bridges/3notions.png} \end{figure} \end{frame} \begin{frame}{Solution optimiste} -Bridge optimiste avec de l'importance sur la sécurité plutôt que sur la vivacité. -Déroulement : \newline -\begin{itemize} - \item Envoi de données vers une fonction contrat. - \item Validation de la transaction par un vérificateur. - \item Ajout d'un collatéral de la part du vérificateur. - \item Envoi sur une chaîne destination par un \textit{relayer}. - \item 30 minutes de latence pour prouver une fraude. - \item Les données sont passées à la chaîne destination puis traitées. -\end{itemize} -\end{frame} + \begin{figure} + \centering + \includegraphics[scale = 0.6]{centralisation/img_bridges/VerifOptimiste.png} + \end{figure} +\end{frame} \begin{frame}{Possibles faiblesses et leurs solutions} \begin{itemize} \item \textit{Updater DoS} \begin{itemize} \item Mécanisme de substitution. - \item Perte du collatéral. + \item Sanction financière et exclusion. \end{itemize} - \item \textit{Updater Fraud} \begin{itemize} \item Perte du collatéral. \end{itemize} + \item \textit{Updater Fraud} \begin{itemize} \item Sanction financière et exclusion. \end{itemize} \item \textit{Watcher DoS} \begin{itemize} - \item Signalement de fraude payant. - \item Perte du collatéral. \item Vérificateurs approuvés. + \item Signalement de fraude payant. + \item Sanction financière et exclusion. \end{itemize} \end{itemize} \end{frame} - -\begin{frame}{Les faiblesses des bridges} -\begin{itemize} - \item \textit{Trustless Bridges} : Les \textit{smart contracts} et l'erreur humaine. - \item \textit{Trusted Bridges} : Les fraudes \textit{rug pull}. - \item Une technologie récente. - \item L'\textit{open source}. -\end{itemize} -\end{frame} diff --git a/docs/presentation_17_03_23/img/3notions.png b/docs/presentation_17_03_23/centralisation/img_bridges/3notions.png similarity index 100% rename from docs/presentation_17_03_23/img/3notions.png rename to docs/presentation_17_03_23/centralisation/img_bridges/3notions.png diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/AtomicSwap.png b/docs/presentation_17_03_23/centralisation/img_bridges/AtomicSwap.png new file mode 100644 index 0000000..c84bb66 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/AtomicSwap.png differ diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/BurnAndMint.png b/docs/presentation_17_03_23/centralisation/img_bridges/BurnAndMint.png new file mode 100644 index 0000000..a4029d3 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/BurnAndMint.png differ diff --git a/docs/presentation_17_03_23/img/DiagrammeResumeVerif.png b/docs/presentation_17_03_23/centralisation/img_bridges/DiagrammeResumeVerif.png similarity index 100% rename from docs/presentation_17_03_23/img/DiagrammeResumeVerif.png rename to docs/presentation_17_03_23/centralisation/img_bridges/DiagrammeResumeVerif.png diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/LockAndMint.png b/docs/presentation_17_03_23/centralisation/img_bridges/LockAndMint.png new file mode 100644 index 0000000..e544d19 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/LockAndMint.png differ diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/Pont.png b/docs/presentation_17_03_23/centralisation/img_bridges/Pont.png new file mode 100644 index 0000000..4b686c5 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/Pont.png differ diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/Transaction1.png b/docs/presentation_17_03_23/centralisation/img_bridges/Transaction1.png new file mode 100644 index 0000000..ef73754 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/Transaction1.png differ diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/Transaction2.png b/docs/presentation_17_03_23/centralisation/img_bridges/Transaction2.png new file mode 100644 index 0000000..3313082 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/Transaction2.png differ diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/Transaction3.png b/docs/presentation_17_03_23/centralisation/img_bridges/Transaction3.png new file mode 100644 index 0000000..ba67141 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/Transaction3.png differ diff --git a/docs/presentation_17_03_23/centralisation/img_bridges/VerifOptimiste.png b/docs/presentation_17_03_23/centralisation/img_bridges/VerifOptimiste.png new file mode 100644 index 0000000..d858fa7 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/img_bridges/VerifOptimiste.png differ diff --git a/docs/presentation_17_03_23/centralisation/wormhole.tex b/docs/presentation_17_03_23/centralisation/wormhole.tex index f821e82..0eac3b5 100644 --- a/docs/presentation_17_03_23/centralisation/wormhole.tex +++ b/docs/presentation_17_03_23/centralisation/wormhole.tex @@ -59,24 +59,43 @@ \end{itemize} \end{frame} -\begin{frame}{Wormhole : \textit{Payload} - \textit{Transfer}} - - Pour transférer des jetons des chaînes A à B, il y a verrouillage des jetons sur la chaîne A puis on frappe les jetons sur la chaîne B.\newline - - \begin{itemize} - \item ID du \textit{payload} - \item Montant du transfert - \item L'adresse sur la chaîne d'origine - \item ID de la chaîne d'origine - \item L'adresse sur la chaîne de destination - \item ID de la chaîne de destination - \end{itemize} +\begin{frame}{Wormhole : Architecture simplifiée} + \centering + \includegraphics[scale = 0.5]{centralisation/wormhole_louis.png} \end{frame} -\begin{frame}{Wormhole : Conclusion} - - \begin{itemize} - \item Le réseau de gardiens est l'élement le plus critique de l'écosystème mais aussi le plus opaque - \item Wormhole justifie sa décentralisation par la présence de plusieurs parties dans le contrôle du réseau - \end{itemize} -\end{frame} \ No newline at end of file +\begin{frame}{Wormhole : Récapitulatif} + \begin{block}{Avantages} + \begin{itemize} + \item Un bridge et un protocole important de l'éco-système avec plus de 280M de \$ verrouillés + \item Rapidité dans le traitement des messages + \item Scalable + + \end{itemize} + \end{block} + + \begin{block}{Inconvénients} + \begin{itemize} + \item Le réseau de gardiens est l'élement le plus critique mais aussi le plus opaque + \item Rétablissement d'un modèle de confiance + \item Justification de sa décentralisation par la présence de plusieurs parties dans le contrôle du réseau + \end{itemize} + \end{block} +\end{frame} + +% @startuml + +% rectangle r1 as "Source +% Bridge" +% storage "Guardians" as r2 +% hexagon r3 as "Off-chain +% Message Relayer" +% rectangle r4 as "Target +% Bridge" + +% r1 -> r2 : publishVAA() +% r2 -do-> r3 : Signed message +% r3 -> r4 : Signed message +% r4 -> r4 : VerifyVAA() + +% @enduml diff --git a/docs/presentation_17_03_23/centralisation/wormhole_louis.png b/docs/presentation_17_03_23/centralisation/wormhole_louis.png new file mode 100644 index 0000000..0a95dd7 Binary files /dev/null and b/docs/presentation_17_03_23/centralisation/wormhole_louis.png differ diff --git a/docs/presentation_17_03_23/introduction/ReseauNoeuds.png b/docs/presentation_17_03_23/introduction/ReseauNoeuds.png new file mode 100644 index 0000000..a1a93c7 Binary files /dev/null and b/docs/presentation_17_03_23/introduction/ReseauNoeuds.png differ diff --git a/docs/presentation_17_03_23/introduction/index.tex b/docs/presentation_17_03_23/introduction/index.tex index 70de1fa..f049c6b 100644 --- a/docs/presentation_17_03_23/introduction/index.tex +++ b/docs/presentation_17_03_23/introduction/index.tex @@ -1,31 +1,38 @@ -\begin{frame}{Centralisation et Décentralisation} - \begin{figure} - \centering - \includegraphics[scale = 0.2]{introduction/CentralDecentral.png} - \end{figure} -\end{frame} - \begin{frame}{La blockchain} \begin{figure} \centering - \includegraphics[scale = 0.3]{introduction/blockchain.png} + \includegraphics[scale = 0.2]{introduction/blockchain.png} \end{figure} \end{frame} +\begin{frame}{Un réseau de noeud} + \begin{figure} + \centering + \includegraphics[scale = 0.6]{introduction/ReseauNoeuds.png} + \end{figure} +\end{frame} + +\begin{frame}{Spécificités d'une blockchain} + \begin{itemize} + \item Aucune autorité centrale. + \item Abscence de hiérarchie. + \item Immuable. + \item Aucune présence d'informations contradictoires. + \item Notion de partage et consensus. + \end{itemize} +\end{frame} \begin{frame}{Réponse à un besoin} - \begin{block}{} \begin{itemize} \item Bitcoin première cryptomonnaie avec 40,5\% du marché. - \item Ethereum en deuxième avec 19,5\%. - \item 40\% restants de cryptomonnaies avec leur propre chaîne. + \item Ether (Ethereum) en deuxième place avec 19,5\%. + \item 40\% restants composés de centaines de cryptomonnaies. \end{itemize} - \end{block} - \begin{block}{Nécessité de solutions d'échange inter-blockchains} - \begin{itemize} - \item Sécurisés - \item Fiables - \item Rapides - \end{itemize} - \end{block} +\end{frame} + + \begin{frame}{Centralisation et Décentralisation} + \begin{figure} + \centering + \includegraphics[scale = 0.2]{introduction/CentralDecentral.png} + \end{figure} \end{frame} \ No newline at end of file