PROGRAMMA DEL CORSO:


Solidity 1o1

Adesso non ci resta che andare a fondo a quello che è il cambio di paradigma nello sviluppo back-end di una web application: gli smart contracts! Solidity è il linguaggio di programmazione comunemente utilizzato nello sviluppo di smart contracts su ethereum e anche in altri fork o blockchain like ethereum.

  • Types & Variables
  • Functions
  • Modifiers
  • Events & Logs
  • Interfaces
  • Standard of token: ERC20, ERC721, ERC1155
  • Eliminazione reale di un item




Blockchain Setup Enviroment

Successivamente struttureremo un developer setup enviroment cosi da avere tutto l’occorrente per sviluppare le nostre dapp in maniera strutturata ed efficace garantendo un ambiente pulito e che da la possibilità di testare a fondo le funzionalità sviluppate. (Linux VM, Node, npm, VS Code, Truffle, Ganache, Remix, Metamask, Infura)

  • Installazione di una distro linux, nodejs e npm
  • Installazione di ganache gui e truffle
  • Installazione e primo approccio a metamask,remix ed infura
  • Setup di un progetto react, test di connessione a metamask




Web3 library 1o1

Esercizi pratici nell’utilizzo della libreria web3 necessaria per interfacciarsi con il provider della blockchain di ethereum.

  • Introduzione alla libreria web3
  • Connessione e testing della libreria da terminale




Smart Contract Oracle

Analizzeremo uno degli aspetti cardine delle realtà decentralizzate: gli oracoli, fonte di verità incorruttibile che forniscono ad altri smart contract, se richiamati, dati esenti da eventuale corruzione e manipolazione.

  • Introduzione agli oracoli
  • Implementiamo il nostro oracolo con chainlink
  • Implementiamo il nostro oracolo con provable things




Notarizziamo su blockchain: Notarization Dapp (Ethereum)

Sviluppiamo una semplice dapp di notarizzazione documenti su blockchain: Svilupperemo lo smart contract, deploy & testing, strutturemo il frontend e analizzeremo due approcci di richiamo allo smart contract: da metamask e infura.

  • Intro ed Inizializzazione del progetto con truffle
  • Sviluppo dello smart contract
  • Implementazione delle funzioni che richiamano lo smart contract




Stacking Dapp (Ethereum)

Svilupperemo una dapp per lo stacking di fondi con earning di fee in base alla tempistica di locking dei fondi bloccati.

  • Intro ed Inizializzazione del progetto con truffle
  • Sviluppo dello smart contract, Prima parte
  • Sviluppo dello smart contract, Seconda parte
  • Implementazione delle funzioni che richiamano lo smart contract




Sviluppiamo Dapp utilizzando protocolli di altri

Svilupperemo dei piccoli POC utilizzando smart contracts di altre realtà già presenti nell’ecosistema di ethereum come Seed Venture, Aave, MakerDao.

  • Intro ed Inizializzazione del progetto react
  • Implementazione dei custom hooks per il richiamo degli smart contracts
  • Implementazione delle funzioni che richiamano gli smart contracts




Deploy di una dapp in produzione

Analizzeremo step by step gli aspetti da tenere conto per effettuare il deploy di una dapp nel world wide web.

  • Auditing by mythx
  • Deploy su Vercel




Bonus Track: DEFI Exploitation

Faremo un’analisi accurata sulle vulnerabilità che potrebbero affliggere i vostri smart contracts e effettueremo una fase di exploitation in un ambiente protetto per conoscere come potrebbero essere sfruttate tali vulnerabilità da eventuali malintenzionati.

  • Manipulation Oracle
  • Reentrancy Attack
  • Trojan Token


Durata: 31 lezioni