Options d’inscription

Les blockchains sont des applications distribuées qui fournissent à leurs utilisateurs une liste de données totalement ordonnée et ne pouvant être modifiée que par ajout. Leur application principale consiste à tenir lieu de grand livre de comptes de transactions entre utilisateurs. Ce cours est motivé par plusieurs enjeux de sécurité:
\begin{itemize}
\item L'identité et la détention d'argent sur la blockchain est synonyme de détention de la secret signature key (sk) permettant de signer des transferts d'argent au nom de la verification key publique du compte ($\vk$). Toute perte (ou piratage) de la $\sk$ équivaut donc à la perte instantanée de l'argent sur le compte. Le mapping compte$\leftrightarrow \!\vk$, couplé à l'absence d'autorité centrale, permet donc des transferts échappant à toute régulation.

\item Du fait de l'absence d'autorité centrale et à l'immutabilité de la blockchain, toute transaction est définitive. En particulier, toute fuite de sk ou toute erreur dans un programme de transactions automatiques ("smart contract") peut se traduire en plusieurs 100aines de M\$ de pertes. D'où un écosystème 700Bn\$ de capitalisation en 2024
\footnote{\url{https://www.grandviewresearch.com/industry-analysis/digital-asset-custody-market-report}}
appelé "crypto custody", d'entreprises jouant le rôle de tampon entre les utilisateurs et les blockchains.

\item Du fait de l'absence d'autorité centrale, les blockchains sont de plus en plus utilisées pour des transactions qui transfèrent des droits juridiques sur des biens réels, par exemple des obligations réglementées ("security tokens") et des tokens "stablecoins" (>250Bn\$ en 2025\footnote{\url{https://coinmarketcap.com/view/stablecoin/}}).
\end{itemize}
À l'issue de ce cours, vous saurez déployer une blockchain et des smart contracts simples en évitant les failles de sécurité classiques. Si le temps le permet on déploiera un exemple de "token" ERC20. Vous saurez également distinguer pour quel besoin et sous quelles hypothèses utiliser ou non une blockchain, et si oui de quel type (permissionned ou public, synchrone ou asynchrone, proof of work ou proof of stake).

Ce cours se focalisera principalement sur les blockchains "account-based" et "programmables". Plus précisément Ethereum, dont le format de contrats "EVM" est massivement adopté (Polygon, Avalanche etc.). En effet les smart contracts, qui n'existent pas dans Bitcoin, sont l'infrastructure permettant les marchés de "tokens" mentionnés ci-dessus adossés à des biens réels.

Les visiteurs anonymes ne peuvent pas accéder à ce cours. Veuillez vous connecter.