Merge branch 'develop' of etulab.univ-amu.fr:v18003685/pfe-blockchain into develop

This commit is contained in:
amaury
2023-04-05 19:18:35 +02:00
15 changed files with 139 additions and 104 deletions

View File

@ -1,105 +1,114 @@
\begin{frame}{Les types de bridges} \begin{frame}{Les Blockchain Bridges}
Protocoles de communication et d'échanges entre différentes blockchains. \begin{figure}
Echange de données / d'actifs \newline \newline \centering
Plusieurs types de bridges : \includegraphics[scale = 1]{centralisation/img_bridges/Pont.png}
\begin{itemize} \end{figure}
\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}
\end{frame} \end{frame}
\begin{frame}{Trusted Blockchain Bridge} \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} \begin{itemize}
\item Façilite les transferts. \item Dépend des chaînes sous-jacentes.
\item Utilisation simple. \item Plus fiables que les \textit{Trusted Bridges}.
\item Échanges sécurisés. \item Les utilisateurs contrôlent leurs actifs.
\item Possible remboursement en cas de cyberattaque.
\item Cible façile.
\end{itemize} \end{itemize}
$\Rightarrow$ MAIS l'utilisateur donne le contrôle de ses actifs.\\ \end{frame}
Exemple de Trusted Bridge : Binance Bridge.
\begin{frame}{Verrouiller et Frapper}
\begin{figure}
\centering
\includegraphics[scale = 1]{centralisation/img_bridges/LockAndMint.png}
\end{figure}
\end{frame} \end{frame}
\begin{frame}{Trustless Blockchain Bridge} \begin{frame}{Détruire et Frapper}
Basés sur un réseau décentralisé \begin{figure}
Des informations clés: \centering
\begin{itemize} \includegraphics[scale = 0.7]{centralisation/img_bridges/BurnAndMint.png}
\item Aucune présence d'un tiers de confiance. \end{figure}
\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.
\end{frame} \end{frame}
\begin{frame}{Mécanisme de vérification} \begin{frame}{Atomic Swaps}
Les mécanismes de vérification des bridges peuvent être classés en trois types: \begin{figure}
\begin{itemize} \centering
\item Locale (ex: Hop/Connext legacy) \includegraphics[scale = 1]{centralisation/img_bridges/AtomicSwap.png}
\item Extérieure (ex: Avalanche Bridge) \end{figure}
\item Native (ex: The NEAR Rainbow Bridge)
\end{itemize}
\end{frame} \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{frame}{Vérification locale, native et externe}
\begin{figure} \begin{figure}
\centering \centering
\includegraphics[scale = 0.5]{img/DiagrammeResumeVerif.png} \includegraphics[scale = 0.4]{centralisation/img_bridges/DiagrammeResumeVerif.png}
\end{figure} \end{figure}
\end{frame} \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 linteropérabilité} \begin{frame}{Le trilemme de linteropérabilité}
Repose sur 3 notions: Repose sur 3 notions:
\begin{figure} \begin{figure}
\centering \centering
\includegraphics[scale = 0.7]{img/3notions.png} \includegraphics[scale = 0.7]{centralisation/img_bridges/3notions.png}
\end{figure} \end{figure}
\end{frame} \end{frame}
\begin{frame}{Solution optimiste} \begin{frame}{Solution optimiste}
Bridge optimiste avec de l'importance sur la sécurité plutôt que sur la vivacité. \begin{figure}
Déroulement : \newline \centering
\begin{itemize} \includegraphics[scale = 0.6]{centralisation/img_bridges/VerifOptimiste.png}
\item Envoi de données vers une fonction contrat. \end{figure}
\item Validation de la transaction par un vérificateur. \end{frame}
\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{frame}{Possibles faiblesses et leurs solutions} \begin{frame}{Possibles faiblesses et leurs solutions}
\begin{itemize} \begin{itemize}
\item \textit{Updater DoS} \item \textit{Updater DoS}
\begin{itemize} \begin{itemize}
\item Mécanisme de substitution. \item Mécanisme de substitution.
\item Perte du collatéral. \item Sanction financière et exclusion.
\end{itemize} \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} \item \textit{Watcher DoS}
\begin{itemize} \begin{itemize}
\item Signalement de fraude payant.
\item Perte du collatéral.
\item Vérificateurs approuvés. \item Vérificateurs approuvés.
\item Signalement de fraude payant.
\item Sanction financière et exclusion.
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\end{frame} \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}

View File

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

View File

@ -59,24 +59,43 @@
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\begin{frame}{Wormhole : \textit{Payload} - \textit{Transfer}} \begin{frame}{Wormhole : Architecture simplifiée}
\centering
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 \includegraphics[scale = 0.5]{centralisation/wormhole_louis.png}
\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}
\end{frame} \end{frame}
\begin{frame}{Wormhole : Conclusion} \begin{frame}{Wormhole : Récapitulatif}
\begin{block}{Avantages}
\begin{itemize} \begin{itemize}
\item Le réseau de gardiens est l'élement le plus critique de l'écosystème mais aussi le plus opaque \item Un bridge et un protocole important de l'éco-système avec plus de 280M de \$ verrouillés
\item Wormhole justifie sa décentralisation par la présence de plusieurs parties dans le contrôle du réseau \item Rapidité dans le traitement des messages
\end{itemize} \item Scalable
\end{frame}
\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

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

View File

@ -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{frame}{La blockchain}
\begin{figure} \begin{figure}
\centering \centering
\includegraphics[scale = 0.3]{introduction/blockchain.png} \includegraphics[scale = 0.2]{introduction/blockchain.png}
\end{figure} \end{figure}
\end{frame} \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{frame}{Réponse à un besoin}
\begin{block}{}
\begin{itemize} \begin{itemize}
\item Bitcoin première cryptomonnaie avec 40,5\% du marché. \item Bitcoin première cryptomonnaie avec 40,5\% du marché.
\item Ethereum en deuxième avec 19,5\%. \item Ether (Ethereum) en deuxième place avec 19,5\%.
\item 40\% restants de cryptomonnaies avec leur propre chaîne. \item 40\% restants composés de centaines de cryptomonnaies.
\end{itemize} \end{itemize}
\end{block} \end{frame}
\begin{block}{Nécessité de solutions d'échange inter-blockchains}
\begin{itemize} \begin{frame}{Centralisation et Décentralisation}
\item Sécurisés \begin{figure}
\item Fiables \centering
\item Rapides \includegraphics[scale = 0.2]{introduction/CentralDecentral.png}
\end{itemize} \end{figure}
\end{block}
\end{frame} \end{frame}