SlideShare a Scribd company logo
1 of 37
Download to read offline
Dev WorkSpace
Blockchain
Dove il Free software incontra la finanza
Dev Workspace - 24 novembre 2021
Alfredo Di Maria
CEO - In TIme Link S.r.l.
Alfredo Di Maria - www.intimelink.com
La blockchain nasce
La prima blockchain fu introdotta, nel 2008, ad opera di Satoshi Nakamoto
(pseudonimo di un autore la cui identità è tuttora sconosciuta), e implementata
l'anno seguente, con l'obiettivo di fungere da "libro mastro" (registro di tutte
le transazioni) della nascente valuta digitale Bitcoin.
https://it.wikipedia.org/wiki/Blockchain
Alfredo Di Maria - www.intimelink.com
Blockchain
“La blockchain (letteralmente "catena di blocchi") è una
struttura dati condivisa e "immutabile".
https://it.wikipedia.org/wiki/Blockchain
Alfredo Di Maria - www.intimelink.com
Blockchain
“La blockchain (letteralmente "catena di blocchi") è una
struttura dati condivisa e "immutabile".
È definita come un registro digitale le cui voci sono
raggruppate in "blocchi", concatenati in ordine cronologico, e
la cui integrità è garantita dall'uso della crittografia.
https://it.wikipedia.org/wiki/Blockchain
Alfredo Di Maria - www.intimelink.com
Blockchain
“La blockchain (letteralmente "catena di blocchi") è una
struttura dati condivisa e "immutabile".
È definita come un registro digitale le cui voci sono
raggruppate in "blocchi", concatenati in ordine cronologico, e
la cui integrità è garantita dall'uso della crittografia.
Sebbene la sua dimensione sia destinata a crescere nel tempo,
è immutabile in quanto, di norma, il suo contenuto una volta
scritto non è più né modificabile né eliminabile, a meno di
non invalidare l'intera struttura.” https://it.wikipedia.org/wiki/Blockchain
Alfredo Di Maria - www.intimelink.com
Blockchain e affini
DIGITALE
ANALOGICO
CENTRALIZZATO P2P
Alfredo Di Maria - www.intimelink.com
Gli attori che compongono la blockchain
MINER VALIDATORI WALLET DAPP
Alfredo Di Maria - www.intimelink.com
Gli attori che compongono la blockchain
MINER
● producono i blocchi nei sistemi Proof of Work;
● specializzazione: alta;
● utente: aziende che guadagnano dall’attività di mining.
https://en.bitcoin.it/wiki/Mining
https://en.bitcoin.it/wiki/Proof_of_work
https://ethereum.org/en/developers/docs/consensus-mechanisms/pow/
Alfredo Di Maria - www.intimelink.com
Merkle tree
Un albero hash è un albero in cui ogni nodo
foglia è etichettato con l'hash crittografico
di un blocco di dati e ogni nodo non foglia
è etichettato con l'hash crittografico delle
etichette dei suoi nodi figli.
https://en.wikipedia.org/wiki/Merkle_tree
https://en.bitcoin.it/wiki/Hashcash
Alfredo Di Maria - www.intimelink.com
Gli attori che compongono la blockchain
VALIDATORI
● approvano i blocchi e li aggiungono alla chain;
● specializzazione: media;
● utente: utenti e aziende che usano la blockchain.
https://en.bitcoin.it/wiki/Full_node
Alfredo Di Maria - www.intimelink.com
Consensus protocol
https://en.wikipedia.org/wiki/Consensus_(computer_science) https://en.wikipedia.org/wiki/Sybil_attack,
https://spec.filecoin.io/algorithms/expected_consensus/#section-algorithms.expected_consensus.secret-leader-election
In un sistema distribuito, i protocolli di consenso permettono di ottenere un
sistema affidabile anche in presenza di un certo numero di componenti non
funzionanti.
Alfredo Di Maria - www.intimelink.com
Consensus protocol
https://en.wikipedia.org/wiki/Consensus_(computer_science) https://en.wikipedia.org/wiki/Sybil_attack,
https://spec.filecoin.io/algorithms/expected_consensus/#section-algorithms.expected_consensus.secret-leader-election
In un sistema distribuito, i protocolli di consenso permettono di ottenere un
sistema affidabile anche in presenza di un certo numero di componenti non
funzionanti.
Permissioned
viene definito un gruppo chiuso di attori
che può votare la validità dei blocchi e
l’identità di altri validatori.
Alfredo Di Maria - www.intimelink.com
Consensus protocol
https://en.wikipedia.org/wiki/Consensus_(computer_science)
https://en.wikipedia.org/wiki/Sybil_attack,
In un sistema distribuito, i protocolli di consenso permettono di ottenere un
sistema affidabile anche in presenza di un certo numero di componenti non
funzionanti.
Permissioned
viene definito un gruppo chiuso di attori
che può votare la validità dei blocchi e
l’identità di altri validatori.
Permissionless
i validatori vengono scelti in base a
delle regole condivise come: Proof of
Work, Proof of Stake, Proof of Storage
Alfredo Di Maria - www.intimelink.com
Consensus protocol and work rewards:
Proof of {function (input:block): boolean;}
Proof of Work,
permissionless
Chiunque può inviare i blocchi. I blocchi
risultano validi solo se contengono i
risultati corretti di un algoritmo di hash
molto dispendioso da eseguire.
Proof of Stake,
permissionless
Partecipano al voto dei blocchi solo i nodi
che possiedono un certo valore del token
nativo della chain. Oppure quelli con il
maggior quantitativo di token nativo.
Spesso viene eletto un leader che fa una
proposta di blocco ai validatori.
Alfredo Di Maria - www.intimelink.com
Consensus protocol and work rewards:
Proof of {function (input:block): boolean;}
Proof of Storage,
permissionless
I validatori sono selezionati tra i nodi
che hanno portato maggiore potenza di
calcolo, maggiore banda, o maggiore
storage nel tempo.
Permissioned Un sistema chiuso dove un
amministratore deve permettere
l’accesso al gruppo dei validatori.
https://spec.filecoin.io/algorithms/expected_consensus/#section-algorithms.expected_consensus.secret-leader-election
Alfredo Di Maria - www.intimelink.com
Gli attori che compongono la blockchain
WALLET
● effettuano transazioni, spesso conservano le chiavi
private degli utenti;
● specializzazione: bassa;
● utente: utenti che usano la blockchain.
https://en.bitcoin.it/wiki/Deterministic_wallet
Alfredo Di Maria - www.intimelink.com
Crittografia con chiavi asimmetriche
Crittografia con RSA
Le chiavi pubbliche e private hanno una particolare fattorizzazione in
numeri primi. Vengono usate le operazioni di prodotto e calcolo
modulo.
Crittografia con curve ellittiche (es. Secp256k1, Curve25519)
Le chiavi pubbliche e private sono dei punti dai quali si può partire per
generare tutti gli altri punti della curva. Le chiavi sono più brevi di
quelle usate da RSA e permettono operazioni di audit sicure.
https://en.bitcoin.it/wiki/Secp256k1
Alfredo Di Maria - www.intimelink.com
Attenzione a DSA e ECDSA
“Like other discrete-log-based signature schemes, EdDSA
uses a secret value called a nonce unique to each
signature. In the signature schemes DSA and ECDSA, this
nonce is traditionally generated randomly for each
signature—and if the random number generator is ever
broken and predictable when making a signature, the
signature can leak the private key, as happened with the
Sony PlayStation 3 firmware update signing key.”
https://en.wikipedia.org/wiki/EdDSA
https://en.bitcoin.it/wiki/Elliptic_Curve_Digital_Signature_Algorithm
https://bitcoin.org/en/alert/2013-08-11-android
Alfredo Di Maria - www.intimelink.com
Attenzione a Dual_EC_DRBG
“Dual Elliptic Curve Deterministic Random Bit Generator is
an algorithm that was presented as a cryptographically
secure pseudorandom number generator (CSPRNG) using
methods in elliptic curve cryptography. Despite wide public
criticism, including a backdoor, for seven years it was one of
the four (now three) CSPRNGs standardized in NIST SP
800-90A as originally published circa June 2006, until it was
withdrawn in 2014.”
https://en.wikipedia.org/wiki/Dual_EC_DRBG
Alfredo Di Maria - www.intimelink.com
Hierarchical Deterministic Wallet
https://iancoleman.io/bip39/
Alfredo Di Maria - www.intimelink.com
Numeri random e BIP39 + extension word
BIP39 è un algoritmo per associare in modo biunivoco un seed per la generazione di chiavi
crittografiche a una lista di parole, detta mnemonic.
BIP39 utilizza dei dizionari di parole predefiniti, include un checksum e la possibilità di
inserire una parola aggiuntiva scelta dall’utente.
Sono disponibili dizionari BIP39 in varie lingue, ma è comunemente usato il dizionario
inglese.
https://en.bitcoin.it/wiki/Seed_phrase
https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
Alfredo Di Maria - www.intimelink.com
Numeri random e BIP39 + extension word
Esempio di mnemonic BIP39:
scene mirror cash current machine strike hazard improve pond layer shoe cake buyer
miracle arrange zoo legal youth render enhance wrong swing state airport
Esempio di seed BIP39:
af947671468944793bdbe0995b57bcec7c237258ebfaad44f4bf99843b76f7c6ee75f
8a35ee4ca66d05ee8008fd00fa472f2ebacb7a2522e8d1e50ea75b6dc6b
https://iancoleman.io/bip39/
Alfredo Di Maria - www.intimelink.com
Derivation Path: BIP32, BIP44, BIP49
Partendo da un seed e una derivation path (es. m/44'/0'/0'/0), si possono generare chiavi crittografiche in sequenza.
Si parla di chiave non-hardened quando da una chiave pubblica è possibile determinare le chiavi pubbliche precedenti.
Un wallet Bitcoin BIP44
● Derivation path: m/44'/0'/0'/0
● Private Key:
xprvA1R59J91cRUsW8ukWtargTrAEz7weZL5t7Zi3Z5TXNR47ezonTZkTuTDsB8f7bvDrRVFA6rBKXxn78uAxRWF4sDsNc7CKnpHbtkv1a5FESc
● Public Key:
xpub6EQRYofuSo3AiczDcv7s3bnto1xS423wFLVJqwV55hx2zTKxKzt11hmhiUt7Y5v83TYvrJ4H2ksTfhKHuW4fD7YLdeysXifeVFzwpA7YdJs
Derivation path di un wallet Solana
m/44'/501'/0'/0’
https://iancoleman.io/bip39/
https://wiki.trezor.io/Hardened_and_non-hardened_derivation
Alfredo Di Maria - www.intimelink.com
Non tutti i wallet sono uguali
Wallet custodial
l’utente delega la custodia delle sue chiavi a un provider
Wallet non custodial
l’utente detiene le sue chiavi e i segreti non sono mai condivisi con cloud di terze
parti
Alfredo Di Maria - www.intimelink.com
Gli attori che compongono la blockchain
DAPP
● applicazioni eseguire dalla blockchain;
● specializzazione: alta;
● utente: utenti che usano la blockchain o altre dapp.
https://en.wikipedia.org/wiki/Decentralized_application
Alfredo Di Maria - www.intimelink.com
Ethereum
“Lanciata nel 2015, Ethereum è la blockchain programmabile numero uno al
mondo.”
Ethereum si differenzia da Bitcoin perché si concentra sul creare una “Virtual
Machine” decentralizzata (ridondata) con un linguaggio, Solidity, Turing
Completo.
Mentre su Bitcoin, per scelta della community, si possono scrivere pochi e
semplici modelli di transazione, su Ethereum si ha un’estrema libertà.
I software che vengono eseguiti su Ethereum si chiamano Smart Contracts, sono
quasi tutti Open Source e molti sono Free Software.
https://ethereum.stackexchange.com/a/34185
https://ethereum.org/it/what-is-ethereum/
Alfredo Di Maria - www.intimelink.com
Nuovi attori che compongono la blockchain
AMM
Market ORACOLI Bridge
Alfredo Di Maria - www.intimelink.com
Exchange DeFi, CeFi
https://uniswap.org/ https://www.coinbase.com
Alfredo Di Maria - www.intimelink.com
Market and DEX
Project Serum is a protocol for decentralised exchanges that
brings the best of CeFi and DeFi through its on-chain orderbook
design. Serum's vision is to become important infrastructure for the
Solana ecosystem.
https://docs.projectserum.com/
Alfredo Di Maria - www.intimelink.com
Automated Market Maker
Sono software che hanno un algoritmo che gli permette di quotare
il valore tra due o più asset ed eseguire scambi H24.
Tra quelli più famosi ci sono Uniswap, Curve e Balancer.
Gli investitori che prestano la liquidità agli AMM, guadagnano
uno yeld dagli scambi.
Gli AMM risolvono il problema di avere un orderbook senza
offerte, ma la scarsa liquidità o l’elevata volatilità degli asset
possono causare impermanent loss su alcuni protocolli.
https://academy.binance.com/it/articles/what-is-an-automated-market-maker-amm
https://academy.binance.com/it/articles/impermanent-loss-explained
Alfredo Di Maria - www.intimelink.com
Swap pool: Solana Token Swap Program
https://spl.solana.com/token-swap
Una pool di swap è un software DeFi che permette agli utenti di scambiare un asset A con
un asset B. Permette inoltre agli investitori di guadagnare uno yeld dagli scambi effettuati.
Prodotto costante
Il creatore della pool deposita gli asset A e B. Ad ogni scambio il contratto calcola il prezzo
reciproco di A e B mantenendo costante il prodotto della quantità totale di asset nella pool:
A_total * B_total = invariant
Se un utente vuole scambiare l’asset A con l’asset B, il risultato è dato da:
(A_total + A_in) * (B_total - B_out) = invariant
Alfredo Di Maria - www.intimelink.com
Swap pool: Solana Token Swap Program
https://uniswap.org/whitepaper.pdf
https://balancer.fi/whitepaper.pdf
Esempio di swap con prodotto costante
Supponendo di avere una pool di swap con 100 token A e 5000 token B.
Se un utente vuole scambiare 10 token A, abbiamo:
● A_total * B_total = 100 * 5,000 = 500,000 = invariant
● (100 + 10) * (5,000 - B_out) = 500,000 <=> B_out = 454.5454
Alfredo Di Maria - www.intimelink.com
Trading on Serum
https://docs.projectserum.com/serum-ecosystem/trading-on-serum
Alfredo Di Maria - www.intimelink.com
Oracoli
I software decentralizzati hanno come dati di input le transazioni firmate dai
wallet e i dati già presenti on-chain.
Uno smart contract quindi non può sapere se 1 Dollaro vale più di 1 Euro a
Piazza Affari; non può sapere chi ha vinto gli Europei di Pallavolo femminile,
gli Europei di calcio, l’Eurovision, chi è l’uomo più veloce del mondo o quello
che salta più in alto. Chi è il miglior pasticcere del mondo?
https://www.corriere.it/cook/news/21_settembre_26/italia-vince-coppa-mondo-pasticceria-e8c4be7e-1e95-11ec-a3d9-1b0f9
767a5ab.shtml
Alfredo Di Maria - www.intimelink.com
Oracoli
Gli oracoli sono gruppi di agenti che salvano on-chain dati disponibili
off-chain.
Uno specifico smart contract pesa le informazioni in arrivo, le
normalizza e salva i valori in un blocco on-chain.
Gli smart contract interessati alle informazioni possono quindi
leggerle on-chain, talvolta pagando una fee agli oracoli.
https://bandprotocol.com/
https://pyth.network/
https://chain.link/
Alfredo Di Maria - www.intimelink.com
Bridge
I bridge permettono di spostare gli asset da una blockchain a un’altra.
Il bridge tra Solana e Ethereum si chiama Wormhole ed è composto da 19 agenti, detti guardiani,
che gestiscono i software decentralizzate su una e sull’altra chain.
Gli asset vengono bloccati sulla blockchain di provenienza e vengono creati su quella di arrivo. I
guardiani sono garanti che non ci sia perdita di asset o generazione di nuovi asset in eccedenza.
https://wormholebridge.com/
Dev WorkSpace
Grazie!

More Related Content

What's hot

SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...
SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...
SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...Danilo Longoni
 
Le monete virtuali
Le monete virtualiLe monete virtuali
Le monete virtualiLoris Venuto
 
Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...
Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...
Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...Codemotion
 
Blockchain: fuffa, innovazione o metà e metà?
Blockchain: fuffa, innovazione o metà e metà?Blockchain: fuffa, innovazione o metà e metà?
Blockchain: fuffa, innovazione o metà e metà?Gabriele Guizzardi
 
Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...
Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...
Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...MOCA Interactive
 
Bitcoin e le Criptovalute come nuova frontiera della libertà digitale
Bitcoin e le Criptovalute come nuova frontiera della libertà digitaleBitcoin e le Criptovalute come nuova frontiera della libertà digitale
Bitcoin e le Criptovalute come nuova frontiera della libertà digitalemidimarcus
 
Presentazione del mining Bitcoin
Presentazione del mining BitcoinPresentazione del mining Bitcoin
Presentazione del mining BitcoinI3P
 
Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)
Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)
Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)Francesco Piras
 
Workshop sulla Sicurezza Informatica
Workshop sulla Sicurezza InformaticaWorkshop sulla Sicurezza Informatica
Workshop sulla Sicurezza InformaticaNextre Engineering
 
Bitcoin tra regolamentazione e diritto
Bitcoin tra regolamentazione e dirittoBitcoin tra regolamentazione e diritto
Bitcoin tra regolamentazione e dirittoGiulia Aranguena
 
Blockchain Restart Conference 2016 - Milano 13 Aprile 2016
Blockchain Restart Conference 2016 - Milano 13 Aprile 2016Blockchain Restart Conference 2016 - Milano 13 Aprile 2016
Blockchain Restart Conference 2016 - Milano 13 Aprile 2016Mauro Giorgi
 
Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...
Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...
Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...Codemotion
 
#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)
#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)
#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)Giulia Aranguena
 
Blockchain e Criptovalute nel mondo bancario
Blockchain e Criptovalute nel mondo bancarioBlockchain e Criptovalute nel mondo bancario
Blockchain e Criptovalute nel mondo bancarioMattia Andreoli
 
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4Stefano Saladino
 

What's hot (17)

SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...
SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...
SMAU Milano 2018 - Blockchain, Sicurezza delle transazioni e dei dati: non so...
 
Le monete virtuali
Le monete virtualiLe monete virtuali
Le monete virtuali
 
Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...
Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...
Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzare le proprie Ski...
 
Blockchain: fuffa, innovazione o metà e metà?
Blockchain: fuffa, innovazione o metà e metà?Blockchain: fuffa, innovazione o metà e metà?
Blockchain: fuffa, innovazione o metà e metà?
 
Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...
Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...
Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...
 
Bitcoin e le Criptovalute come nuova frontiera della libertà digitale
Bitcoin e le Criptovalute come nuova frontiera della libertà digitaleBitcoin e le Criptovalute come nuova frontiera della libertà digitale
Bitcoin e le Criptovalute come nuova frontiera della libertà digitale
 
Bitcoin Revolution
Bitcoin RevolutionBitcoin Revolution
Bitcoin Revolution
 
Presentazione del mining Bitcoin
Presentazione del mining BitcoinPresentazione del mining Bitcoin
Presentazione del mining Bitcoin
 
Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)
Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)
Blockchain e nuove prospettive imprenditoriali: Initial Coin Offering (ICO)
 
Workshop sulla Sicurezza Informatica
Workshop sulla Sicurezza InformaticaWorkshop sulla Sicurezza Informatica
Workshop sulla Sicurezza Informatica
 
Bitcoin tra regolamentazione e diritto
Bitcoin tra regolamentazione e dirittoBitcoin tra regolamentazione e diritto
Bitcoin tra regolamentazione e diritto
 
Blockchain Restart Conference 2016 - Milano 13 Aprile 2016
Blockchain Restart Conference 2016 - Milano 13 Aprile 2016Blockchain Restart Conference 2016 - Milano 13 Aprile 2016
Blockchain Restart Conference 2016 - Milano 13 Aprile 2016
 
Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...
Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...
Marco Casario - Blockchain, Bitcoin, Ethereum e Javascript Mining: Monetizzar...
 
#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)
#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)
#Bitcoin: moneta della rete e nuove forme di transazione (analisi Law&economics)
 
Blockchain e NFT
Blockchain e NFTBlockchain e NFT
Blockchain e NFT
 
Blockchain e Criptovalute nel mondo bancario
Blockchain e Criptovalute nel mondo bancarioBlockchain e Criptovalute nel mondo bancario
Blockchain e Criptovalute nel mondo bancario
 
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4
 

Similar to Blockchain dove il free software incontra la finanza - novembre 2021

Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...
Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...
Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...Antonio Musarra
 
Blockchain essenziale
Blockchain essenzialeBlockchain essenziale
Blockchain essenzialeFederico Bo
 
Blockchain e Digital Communication | Verso il Web 3.0
Blockchain e Digital Communication | Verso il Web 3.0Blockchain e Digital Communication | Verso il Web 3.0
Blockchain e Digital Communication | Verso il Web 3.0Franco Giacomozzi
 
#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...
#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...
#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...Giulia Aranguena
 
Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017
Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017
Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017SMAU
 
Linux Day 2014 - Napoli - Programma Il Futuro: una scelta open source
Linux Day 2014 - Napoli - Programma Il Futuro: una scelta open sourceLinux Day 2014 - Napoli - Programma Il Futuro: una scelta open source
Linux Day 2014 - Napoli - Programma Il Futuro: una scelta open sourceMario Rossano
 
Programma il futuro: una scelta open source
Programma il futuro: una scelta open sourceProgramma il futuro: una scelta open source
Programma il futuro: una scelta open sourceMarco Ferrigno
 
BlockChain e Token Digitali - Webinar gratuito
BlockChain e Token Digitali - Webinar gratuitoBlockChain e Token Digitali - Webinar gratuito
BlockChain e Token Digitali - Webinar gratuitoNinja Academy
 
Programma il futuro : una scelta Open Source
Programma il futuro : una scelta Open SourceProgramma il futuro : una scelta Open Source
Programma il futuro : una scelta Open SourceNaLUG
 
Blockchain per la PA
Blockchain per la PABlockchain per la PA
Blockchain per la PAManuel Rafeli
 
Sicurezza e resilienza di Architetture a Containers
Sicurezza e resilienza di Architetture a ContainersSicurezza e resilienza di Architetture a Containers
Sicurezza e resilienza di Architetture a ContainersGianluca Magalotti
 
Incontro con Ernesto Hofmann sulla BlockChain
Incontro con Ernesto Hofmann sulla BlockChainIncontro con Ernesto Hofmann sulla BlockChain
Incontro con Ernesto Hofmann sulla BlockChainmobi-TECH
 
Professor Ernesto Hofmann - Blockchain
Professor Ernesto Hofmann - BlockchainProfessor Ernesto Hofmann - Blockchain
Professor Ernesto Hofmann - BlockchainMarco Turolla
 
Protocolli per la protezione dell'anonimato nelle valute Monero e Zcash
Protocolli per la protezione dell'anonimato nelle valute Monero e ZcashProtocolli per la protezione dell'anonimato nelle valute Monero e Zcash
Protocolli per la protezione dell'anonimato nelle valute Monero e ZcashRiccardoCorocher
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Codemotion
 

Similar to Blockchain dove il free software incontra la finanza - novembre 2021 (20)

Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...
Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...
Liferay SSL/TLS Security. Come configurare il bundle Liferay per abilitare il...
 
Blockchain essenziale
Blockchain essenzialeBlockchain essenziale
Blockchain essenziale
 
La blockchain - Cos'è un Algoritmo di Consenso
La blockchain - Cos'è un Algoritmo di ConsensoLa blockchain - Cos'è un Algoritmo di Consenso
La blockchain - Cos'è un Algoritmo di Consenso
 
Blockchain e Digital Communication | Verso il Web 3.0
Blockchain e Digital Communication | Verso il Web 3.0Blockchain e Digital Communication | Verso il Web 3.0
Blockchain e Digital Communication | Verso il Web 3.0
 
Progetto CASCO.pdf
Progetto CASCO.pdfProgetto CASCO.pdf
Progetto CASCO.pdf
 
#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...
#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...
#Blockchain e #SmartContract- Le applicazioni nei sistemi logistici e nel com...
 
Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017
Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017
Marco Spada, Maria Perugini DirICTo - SMAU Milano 2017
 
Linux Day 2014 - Napoli - Programma Il Futuro: una scelta open source
Linux Day 2014 - Napoli - Programma Il Futuro: una scelta open sourceLinux Day 2014 - Napoli - Programma Il Futuro: una scelta open source
Linux Day 2014 - Napoli - Programma Il Futuro: una scelta open source
 
Programma il futuro: una scelta open source
Programma il futuro: una scelta open sourceProgramma il futuro: una scelta open source
Programma il futuro: una scelta open source
 
BlockChain e Token Digitali - Webinar gratuito
BlockChain e Token Digitali - Webinar gratuitoBlockChain e Token Digitali - Webinar gratuito
BlockChain e Token Digitali - Webinar gratuito
 
Programma il futuro : una scelta Open Source
Programma il futuro : una scelta Open SourceProgramma il futuro : una scelta Open Source
Programma il futuro : una scelta Open Source
 
Workshop 20092019 Nonnis
Workshop 20092019 NonnisWorkshop 20092019 Nonnis
Workshop 20092019 Nonnis
 
Blockchain per la PA
Blockchain per la PABlockchain per la PA
Blockchain per la PA
 
Sicurezza e resilienza di Architetture a Containers
Sicurezza e resilienza di Architetture a ContainersSicurezza e resilienza di Architetture a Containers
Sicurezza e resilienza di Architetture a Containers
 
Blockchainvis Backend
Blockchainvis BackendBlockchainvis Backend
Blockchainvis Backend
 
Incontro con Ernesto Hofmann sulla BlockChain
Incontro con Ernesto Hofmann sulla BlockChainIncontro con Ernesto Hofmann sulla BlockChain
Incontro con Ernesto Hofmann sulla BlockChain
 
Professor Ernesto Hofmann - Blockchain
Professor Ernesto Hofmann - BlockchainProfessor Ernesto Hofmann - Blockchain
Professor Ernesto Hofmann - Blockchain
 
Protocolli per la protezione dell'anonimato nelle valute Monero e Zcash
Protocolli per la protezione dell'anonimato nelle valute Monero e ZcashProtocolli per la protezione dell'anonimato nelle valute Monero e Zcash
Protocolli per la protezione dell'anonimato nelle valute Monero e Zcash
 
Workshop 20092019 Lepidio
Workshop 20092019 LepidioWorkshop 20092019 Lepidio
Workshop 20092019 Lepidio
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
 

Blockchain dove il free software incontra la finanza - novembre 2021

  • 1. Dev WorkSpace Blockchain Dove il Free software incontra la finanza Dev Workspace - 24 novembre 2021 Alfredo Di Maria CEO - In TIme Link S.r.l.
  • 2. Alfredo Di Maria - www.intimelink.com La blockchain nasce La prima blockchain fu introdotta, nel 2008, ad opera di Satoshi Nakamoto (pseudonimo di un autore la cui identità è tuttora sconosciuta), e implementata l'anno seguente, con l'obiettivo di fungere da "libro mastro" (registro di tutte le transazioni) della nascente valuta digitale Bitcoin. https://it.wikipedia.org/wiki/Blockchain
  • 3. Alfredo Di Maria - www.intimelink.com Blockchain “La blockchain (letteralmente "catena di blocchi") è una struttura dati condivisa e "immutabile". https://it.wikipedia.org/wiki/Blockchain
  • 4. Alfredo Di Maria - www.intimelink.com Blockchain “La blockchain (letteralmente "catena di blocchi") è una struttura dati condivisa e "immutabile". È definita come un registro digitale le cui voci sono raggruppate in "blocchi", concatenati in ordine cronologico, e la cui integrità è garantita dall'uso della crittografia. https://it.wikipedia.org/wiki/Blockchain
  • 5. Alfredo Di Maria - www.intimelink.com Blockchain “La blockchain (letteralmente "catena di blocchi") è una struttura dati condivisa e "immutabile". È definita come un registro digitale le cui voci sono raggruppate in "blocchi", concatenati in ordine cronologico, e la cui integrità è garantita dall'uso della crittografia. Sebbene la sua dimensione sia destinata a crescere nel tempo, è immutabile in quanto, di norma, il suo contenuto una volta scritto non è più né modificabile né eliminabile, a meno di non invalidare l'intera struttura.” https://it.wikipedia.org/wiki/Blockchain
  • 6. Alfredo Di Maria - www.intimelink.com Blockchain e affini DIGITALE ANALOGICO CENTRALIZZATO P2P
  • 7. Alfredo Di Maria - www.intimelink.com Gli attori che compongono la blockchain MINER VALIDATORI WALLET DAPP
  • 8. Alfredo Di Maria - www.intimelink.com Gli attori che compongono la blockchain MINER ● producono i blocchi nei sistemi Proof of Work; ● specializzazione: alta; ● utente: aziende che guadagnano dall’attività di mining. https://en.bitcoin.it/wiki/Mining https://en.bitcoin.it/wiki/Proof_of_work https://ethereum.org/en/developers/docs/consensus-mechanisms/pow/
  • 9. Alfredo Di Maria - www.intimelink.com Merkle tree Un albero hash è un albero in cui ogni nodo foglia è etichettato con l'hash crittografico di un blocco di dati e ogni nodo non foglia è etichettato con l'hash crittografico delle etichette dei suoi nodi figli. https://en.wikipedia.org/wiki/Merkle_tree https://en.bitcoin.it/wiki/Hashcash
  • 10. Alfredo Di Maria - www.intimelink.com Gli attori che compongono la blockchain VALIDATORI ● approvano i blocchi e li aggiungono alla chain; ● specializzazione: media; ● utente: utenti e aziende che usano la blockchain. https://en.bitcoin.it/wiki/Full_node
  • 11. Alfredo Di Maria - www.intimelink.com Consensus protocol https://en.wikipedia.org/wiki/Consensus_(computer_science) https://en.wikipedia.org/wiki/Sybil_attack, https://spec.filecoin.io/algorithms/expected_consensus/#section-algorithms.expected_consensus.secret-leader-election In un sistema distribuito, i protocolli di consenso permettono di ottenere un sistema affidabile anche in presenza di un certo numero di componenti non funzionanti.
  • 12. Alfredo Di Maria - www.intimelink.com Consensus protocol https://en.wikipedia.org/wiki/Consensus_(computer_science) https://en.wikipedia.org/wiki/Sybil_attack, https://spec.filecoin.io/algorithms/expected_consensus/#section-algorithms.expected_consensus.secret-leader-election In un sistema distribuito, i protocolli di consenso permettono di ottenere un sistema affidabile anche in presenza di un certo numero di componenti non funzionanti. Permissioned viene definito un gruppo chiuso di attori che può votare la validità dei blocchi e l’identità di altri validatori.
  • 13. Alfredo Di Maria - www.intimelink.com Consensus protocol https://en.wikipedia.org/wiki/Consensus_(computer_science) https://en.wikipedia.org/wiki/Sybil_attack, In un sistema distribuito, i protocolli di consenso permettono di ottenere un sistema affidabile anche in presenza di un certo numero di componenti non funzionanti. Permissioned viene definito un gruppo chiuso di attori che può votare la validità dei blocchi e l’identità di altri validatori. Permissionless i validatori vengono scelti in base a delle regole condivise come: Proof of Work, Proof of Stake, Proof of Storage
  • 14. Alfredo Di Maria - www.intimelink.com Consensus protocol and work rewards: Proof of {function (input:block): boolean;} Proof of Work, permissionless Chiunque può inviare i blocchi. I blocchi risultano validi solo se contengono i risultati corretti di un algoritmo di hash molto dispendioso da eseguire. Proof of Stake, permissionless Partecipano al voto dei blocchi solo i nodi che possiedono un certo valore del token nativo della chain. Oppure quelli con il maggior quantitativo di token nativo. Spesso viene eletto un leader che fa una proposta di blocco ai validatori.
  • 15. Alfredo Di Maria - www.intimelink.com Consensus protocol and work rewards: Proof of {function (input:block): boolean;} Proof of Storage, permissionless I validatori sono selezionati tra i nodi che hanno portato maggiore potenza di calcolo, maggiore banda, o maggiore storage nel tempo. Permissioned Un sistema chiuso dove un amministratore deve permettere l’accesso al gruppo dei validatori. https://spec.filecoin.io/algorithms/expected_consensus/#section-algorithms.expected_consensus.secret-leader-election
  • 16. Alfredo Di Maria - www.intimelink.com Gli attori che compongono la blockchain WALLET ● effettuano transazioni, spesso conservano le chiavi private degli utenti; ● specializzazione: bassa; ● utente: utenti che usano la blockchain. https://en.bitcoin.it/wiki/Deterministic_wallet
  • 17. Alfredo Di Maria - www.intimelink.com Crittografia con chiavi asimmetriche Crittografia con RSA Le chiavi pubbliche e private hanno una particolare fattorizzazione in numeri primi. Vengono usate le operazioni di prodotto e calcolo modulo. Crittografia con curve ellittiche (es. Secp256k1, Curve25519) Le chiavi pubbliche e private sono dei punti dai quali si può partire per generare tutti gli altri punti della curva. Le chiavi sono più brevi di quelle usate da RSA e permettono operazioni di audit sicure. https://en.bitcoin.it/wiki/Secp256k1
  • 18. Alfredo Di Maria - www.intimelink.com Attenzione a DSA e ECDSA “Like other discrete-log-based signature schemes, EdDSA uses a secret value called a nonce unique to each signature. In the signature schemes DSA and ECDSA, this nonce is traditionally generated randomly for each signature—and if the random number generator is ever broken and predictable when making a signature, the signature can leak the private key, as happened with the Sony PlayStation 3 firmware update signing key.” https://en.wikipedia.org/wiki/EdDSA https://en.bitcoin.it/wiki/Elliptic_Curve_Digital_Signature_Algorithm https://bitcoin.org/en/alert/2013-08-11-android
  • 19. Alfredo Di Maria - www.intimelink.com Attenzione a Dual_EC_DRBG “Dual Elliptic Curve Deterministic Random Bit Generator is an algorithm that was presented as a cryptographically secure pseudorandom number generator (CSPRNG) using methods in elliptic curve cryptography. Despite wide public criticism, including a backdoor, for seven years it was one of the four (now three) CSPRNGs standardized in NIST SP 800-90A as originally published circa June 2006, until it was withdrawn in 2014.” https://en.wikipedia.org/wiki/Dual_EC_DRBG
  • 20. Alfredo Di Maria - www.intimelink.com Hierarchical Deterministic Wallet https://iancoleman.io/bip39/
  • 21. Alfredo Di Maria - www.intimelink.com Numeri random e BIP39 + extension word BIP39 è un algoritmo per associare in modo biunivoco un seed per la generazione di chiavi crittografiche a una lista di parole, detta mnemonic. BIP39 utilizza dei dizionari di parole predefiniti, include un checksum e la possibilità di inserire una parola aggiuntiva scelta dall’utente. Sono disponibili dizionari BIP39 in varie lingue, ma è comunemente usato il dizionario inglese. https://en.bitcoin.it/wiki/Seed_phrase https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
  • 22. Alfredo Di Maria - www.intimelink.com Numeri random e BIP39 + extension word Esempio di mnemonic BIP39: scene mirror cash current machine strike hazard improve pond layer shoe cake buyer miracle arrange zoo legal youth render enhance wrong swing state airport Esempio di seed BIP39: af947671468944793bdbe0995b57bcec7c237258ebfaad44f4bf99843b76f7c6ee75f 8a35ee4ca66d05ee8008fd00fa472f2ebacb7a2522e8d1e50ea75b6dc6b https://iancoleman.io/bip39/
  • 23. Alfredo Di Maria - www.intimelink.com Derivation Path: BIP32, BIP44, BIP49 Partendo da un seed e una derivation path (es. m/44'/0'/0'/0), si possono generare chiavi crittografiche in sequenza. Si parla di chiave non-hardened quando da una chiave pubblica è possibile determinare le chiavi pubbliche precedenti. Un wallet Bitcoin BIP44 ● Derivation path: m/44'/0'/0'/0 ● Private Key: xprvA1R59J91cRUsW8ukWtargTrAEz7weZL5t7Zi3Z5TXNR47ezonTZkTuTDsB8f7bvDrRVFA6rBKXxn78uAxRWF4sDsNc7CKnpHbtkv1a5FESc ● Public Key: xpub6EQRYofuSo3AiczDcv7s3bnto1xS423wFLVJqwV55hx2zTKxKzt11hmhiUt7Y5v83TYvrJ4H2ksTfhKHuW4fD7YLdeysXifeVFzwpA7YdJs Derivation path di un wallet Solana m/44'/501'/0'/0’ https://iancoleman.io/bip39/ https://wiki.trezor.io/Hardened_and_non-hardened_derivation
  • 24. Alfredo Di Maria - www.intimelink.com Non tutti i wallet sono uguali Wallet custodial l’utente delega la custodia delle sue chiavi a un provider Wallet non custodial l’utente detiene le sue chiavi e i segreti non sono mai condivisi con cloud di terze parti
  • 25. Alfredo Di Maria - www.intimelink.com Gli attori che compongono la blockchain DAPP ● applicazioni eseguire dalla blockchain; ● specializzazione: alta; ● utente: utenti che usano la blockchain o altre dapp. https://en.wikipedia.org/wiki/Decentralized_application
  • 26. Alfredo Di Maria - www.intimelink.com Ethereum “Lanciata nel 2015, Ethereum è la blockchain programmabile numero uno al mondo.” Ethereum si differenzia da Bitcoin perché si concentra sul creare una “Virtual Machine” decentralizzata (ridondata) con un linguaggio, Solidity, Turing Completo. Mentre su Bitcoin, per scelta della community, si possono scrivere pochi e semplici modelli di transazione, su Ethereum si ha un’estrema libertà. I software che vengono eseguiti su Ethereum si chiamano Smart Contracts, sono quasi tutti Open Source e molti sono Free Software. https://ethereum.stackexchange.com/a/34185 https://ethereum.org/it/what-is-ethereum/
  • 27. Alfredo Di Maria - www.intimelink.com Nuovi attori che compongono la blockchain AMM Market ORACOLI Bridge
  • 28. Alfredo Di Maria - www.intimelink.com Exchange DeFi, CeFi https://uniswap.org/ https://www.coinbase.com
  • 29. Alfredo Di Maria - www.intimelink.com Market and DEX Project Serum is a protocol for decentralised exchanges that brings the best of CeFi and DeFi through its on-chain orderbook design. Serum's vision is to become important infrastructure for the Solana ecosystem. https://docs.projectserum.com/
  • 30. Alfredo Di Maria - www.intimelink.com Automated Market Maker Sono software che hanno un algoritmo che gli permette di quotare il valore tra due o più asset ed eseguire scambi H24. Tra quelli più famosi ci sono Uniswap, Curve e Balancer. Gli investitori che prestano la liquidità agli AMM, guadagnano uno yeld dagli scambi. Gli AMM risolvono il problema di avere un orderbook senza offerte, ma la scarsa liquidità o l’elevata volatilità degli asset possono causare impermanent loss su alcuni protocolli. https://academy.binance.com/it/articles/what-is-an-automated-market-maker-amm https://academy.binance.com/it/articles/impermanent-loss-explained
  • 31. Alfredo Di Maria - www.intimelink.com Swap pool: Solana Token Swap Program https://spl.solana.com/token-swap Una pool di swap è un software DeFi che permette agli utenti di scambiare un asset A con un asset B. Permette inoltre agli investitori di guadagnare uno yeld dagli scambi effettuati. Prodotto costante Il creatore della pool deposita gli asset A e B. Ad ogni scambio il contratto calcola il prezzo reciproco di A e B mantenendo costante il prodotto della quantità totale di asset nella pool: A_total * B_total = invariant Se un utente vuole scambiare l’asset A con l’asset B, il risultato è dato da: (A_total + A_in) * (B_total - B_out) = invariant
  • 32. Alfredo Di Maria - www.intimelink.com Swap pool: Solana Token Swap Program https://uniswap.org/whitepaper.pdf https://balancer.fi/whitepaper.pdf Esempio di swap con prodotto costante Supponendo di avere una pool di swap con 100 token A e 5000 token B. Se un utente vuole scambiare 10 token A, abbiamo: ● A_total * B_total = 100 * 5,000 = 500,000 = invariant ● (100 + 10) * (5,000 - B_out) = 500,000 <=> B_out = 454.5454
  • 33. Alfredo Di Maria - www.intimelink.com Trading on Serum https://docs.projectserum.com/serum-ecosystem/trading-on-serum
  • 34. Alfredo Di Maria - www.intimelink.com Oracoli I software decentralizzati hanno come dati di input le transazioni firmate dai wallet e i dati già presenti on-chain. Uno smart contract quindi non può sapere se 1 Dollaro vale più di 1 Euro a Piazza Affari; non può sapere chi ha vinto gli Europei di Pallavolo femminile, gli Europei di calcio, l’Eurovision, chi è l’uomo più veloce del mondo o quello che salta più in alto. Chi è il miglior pasticcere del mondo? https://www.corriere.it/cook/news/21_settembre_26/italia-vince-coppa-mondo-pasticceria-e8c4be7e-1e95-11ec-a3d9-1b0f9 767a5ab.shtml
  • 35. Alfredo Di Maria - www.intimelink.com Oracoli Gli oracoli sono gruppi di agenti che salvano on-chain dati disponibili off-chain. Uno specifico smart contract pesa le informazioni in arrivo, le normalizza e salva i valori in un blocco on-chain. Gli smart contract interessati alle informazioni possono quindi leggerle on-chain, talvolta pagando una fee agli oracoli. https://bandprotocol.com/ https://pyth.network/ https://chain.link/
  • 36. Alfredo Di Maria - www.intimelink.com Bridge I bridge permettono di spostare gli asset da una blockchain a un’altra. Il bridge tra Solana e Ethereum si chiama Wormhole ed è composto da 19 agenti, detti guardiani, che gestiscono i software decentralizzate su una e sull’altra chain. Gli asset vengono bloccati sulla blockchain di provenienza e vengono creati su quella di arrivo. I guardiani sono garanti che non ci sia perdita di asset o generazione di nuovi asset in eccedenza. https://wormholebridge.com/