Merge branch 'develop' of etulab.univ-amu.fr:v18003685/pfe-blockchain into develop
@ -1,81 +1,99 @@
|
||||
\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 Façilite les transferts.
|
||||
\item Utilisation simple.
|
||||
\item Échanges sécurisés.
|
||||
\item Possible remboursement en cas de cyberattaque.
|
||||
\item Cible façile.
|
||||
\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}
|
||||
$\Rightarrow$ MAIS l'utilisateur donne le contrôle de ses actifs.\\
|
||||
Exemple de Trusted Bridge : Binance Bridge.
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Trustless Blockchain Bridge}
|
||||
Des informations clés:
|
||||
\begin{itemize}
|
||||
\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}
|
||||
\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}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[scale = 0.6]{centralisation/img_bridges/VerifOptimiste.png}
|
||||
\end{figure}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}{Possibles faiblesses et leurs solutions}
|
||||
@ -83,23 +101,14 @@ Déroulement : \newline
|
||||
\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}
|
||||
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 15 KiB |
BIN
docs/presentation_17_03_23/centralisation/img_bridges/Pont.png
Normal file
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 16 KiB |
After Width: | Height: | Size: 78 KiB |
@ -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{frame}{Wormhole : Récapitulatif}
|
||||
\begin{block}{Avantages}
|
||||
\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
|
||||
\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
|
||||
|
BIN
docs/presentation_17_03_23/centralisation/wormhole_louis.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
docs/presentation_17_03_23/introduction/ReseauNoeuds.png
Normal file
After Width: | Height: | Size: 83 KiB |
@ -1,31 +1,38 @@
|
||||
\begin{frame}{Centralisation et Décentralisation}
|
||||
\begin{frame}{La blockchain}
|
||||
\begin{figure}
|
||||
\centering
|
||||
\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{itemize}
|
||||
\item Bitcoin première cryptomonnaie avec 40,5\% du marché.
|
||||
\item Ether (Ethereum) en deuxième place avec 19,5\%.
|
||||
\item 40\% restants composés de centaines de cryptomonnaies.
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\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}
|
||||
\end{figure}
|
||||
\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.
|
||||
\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}
|