Le slides utilizzate da Lorenzo Piatti per il Corso di perfezionamento "Legal tech and coding for lawyers" dell'Università degli studi di Milano (edizione 2021)
Blockchain Challenge - Raffaele Battaglini - Marco Roberti - 14/11/18The Blockchain Council
Blockchain Challenge, convegno promosso da The Blockchain Council con il contributo di: Associazione Italiana Sviluppo Marketing, Excellence Consulting, Reti.
Blockchain Challenge, convegno promosso da The Blockchain Council con il contributo di: Associazione Italiana Sviluppo Marketing, Excellence Consulting, Reti.
Nel 2008 il protocollo Bitcoin ha introdotto una nuovo modo di trasferire diritti: il modello di Blockchain, uno schema matematico che combina una serie di algoritmi per procedere all'incorporazione di determinati diritti in una stringa digitale trasferibile.
Noi siamo aperti al dialogo con “Ethereum Smart Contract Engineers/Developers” che scrivano in linguaggio Solidity, appassionati di Blockchain, per costruire sinergicamente soluzioni innovative per un nuovo mercato rivoluzionario, una piattaforma di distribuzione di smart contracts standard.
Blockchain Challenge - Raffaele Battaglini - Marco Roberti - 14/11/18The Blockchain Council
Blockchain Challenge, convegno promosso da The Blockchain Council con il contributo di: Associazione Italiana Sviluppo Marketing, Excellence Consulting, Reti.
Blockchain Challenge, convegno promosso da The Blockchain Council con il contributo di: Associazione Italiana Sviluppo Marketing, Excellence Consulting, Reti.
Nel 2008 il protocollo Bitcoin ha introdotto una nuovo modo di trasferire diritti: il modello di Blockchain, uno schema matematico che combina una serie di algoritmi per procedere all'incorporazione di determinati diritti in una stringa digitale trasferibile.
Noi siamo aperti al dialogo con “Ethereum Smart Contract Engineers/Developers” che scrivano in linguaggio Solidity, appassionati di Blockchain, per costruire sinergicamente soluzioni innovative per un nuovo mercato rivoluzionario, una piattaforma di distribuzione di smart contracts standard.
La Firma Elettronica Avanzata, non è un determinato software, né una determinata tecnologia, ma è un sistema neutro, sicuro e affidabile che garantisca l’appartenenza di un documento informatico reso immodificabile ad un soggetto.
Giovanni Rinaldi - Smart contract:meccanizzazione del contratto nel paradigma...GiovanniRinaldi12
Il concetto di smart contract, quale contratto espresso in forma elettronica la cui esecuzione è demandata, in tutto o in parte, all’intervento di un programma per computer, è stato elaborato nel corso degli anni '90, sulla base dei precedenti studi e modelli applicativi in tema di rappresentazione del testo contrattuale attraverso il linguaggio informatico e di automazione dei rapporti negoziali. Nel corso degli ultimi anni, gli smart contract si sono legati in un binomio quasi costante con le architetture blockchain, in quanto queste ultime promettono di garantire un inedito livello di affrancamento dall'intervento umano. Gli sviluppi e i potenziali scenari di utilizzo di tali strumenti hanno determinato un interesse sempre maggiore da parte degli Stati, che ha portato, in tempi molto recenti, all’emanazione di specifiche disposizioni normative. Sebbene l’Italia si collochi nell’ancora ristretto novero di Paesi che hanno provveduto a riconoscere e disciplinare esplicitamente la figura degli smart contract, l’intervento del legislatore nazionale non sembra esente da profili di criticità.
Capire le potenzialità della Blockchain per comprendere come sfruttare l'opportunità di un mondo sempre più decentralizzato. Un'introduzione sui concetti più importanti alla base di questa tecnologia.
SMAU Torino 2016 - SPID: Le nuove frontiere delle identità digitaliGianluca Satta
Il seminario presentato a SMAU Torino 2016 si propone di illustrare il sistema pubblico per la gestione dell'identità digitale (SPID), previsto dall’art. 64 del D. Lgs. 7 marzo 2005, n. 82 (Codice dell’Amministrazione Digitale), consente a cittadini e imprese di usufruire di servizi online tramite l’utilizzo delle stesse credenziali per ogni autenticazione. Grazie ad un’unica identità digitale, rilasciata da un Identity Provider, ogni utente potrà accedere ai servizi della pubblica amministrazione e dei soggetti privati che aderiscono al sistema SPID.
Il progetto di dematerializzazione degli assegni: contenuti, profili di atten...Digital Law Communication
Il progetto di dematerializzazione degli assegni: contenuti, profili di attenzione, benefici attesi.
Francesca Provini
BANCA D’ITALIA – SERVIZIO SUPERVISIONE MERCATI E SISTEMA DEI PAGAMENTI
Roma, 16 giugno 2015
Sapremo redigere e consigliare contratti che includono, o sono, dei software.
Pensiamo a clausole contrattuali degli smart contracts costruite per essere operate da computer, pur producendo effetti concreti e non soltanto virtuali.
Per noi non si tratta di un mero spostamento di competenze, dai professionisti del diritto ai professionisti del codice, bensì di una evoluzione delle strutture logiche del pensiero giuridico, che dovrà sforzarsi per diventare facilmente comprensibile per la macchina informatica.
La missione è quella di trasmutare contenuti giuridici complessi di diritto civile in un linguaggio che sia comprensibile per i programmatori.
Calculemus!
L'infografica "Blockchain for business: Come la blockchain rivoluzionerà il modo di operare delle imprese" di Casaleggio Associati descrive e analizza le funzionalità di sistema, gli ambiti di applicazione e i punti strategici collegati alla tecnologia Blockchain in Azienda.
La Blockchain è uno dei quattro pilastri fondamentali della quarta rivoluzione industriale, insieme a Big Data, Internet of Things e Intelligenza artificiale ed entro il 2027 il 10% del PIL mondiale sarà generato da prodotti e servizi erogati con questa tecnologia.
L'infografica è stata realizzata a supporto della ricerca "Blockchain for business: Come la blockchain rivoluzionerà il modo di operare delle imprese" per la terza edizione del convegno "B2B: IL FUTURO DIGITALE DEL BUSINESS TRA AZIENDE, COME LA BLOCKCHAIN RIVOLUZIONERÀ IL MODO DI OPERARE DELLE IMPRESE”, che si è svolta a Milano a Novembre 2018.
Il convegno "B2B: IL FUTURO DIGITALE DEL BUSINESS TRA AZIENDE" è un'importante occasione per incontri, networking e aggiornamenti per gli operatori dell'e-commerce, le aziende interessate ad apprendere informazioni sulle opportunità offerte da internet e dal digital per il loro settore.
Firme elettroniche, grafometria e biometria: Quo vadis?
Presentazione dei report dei Gruppi di Lavoro Aifag
e analisi dei nuovi scenari
Roma, 16 giugno 2015
BlockChain e Token Digitali - Webinar gratuitoNinja Academy
Come le cryptovalute stanno rivoluzionando la raccolta fondi: https://ininja.it/2FhEyiN
Segui un'anteprima del webinar e iscriviti gratis per sbloccare il video completo!
Raggiungi i docenti Alessandro Palombo e Marcello Mari. Con loro imparerai a:
- Comprendere la logica di funzionamento della blockchain
- Valutare la ICO, ovvero la vendita di token digitali, per finanziare un progetto
- Conoscere le basi per valutare se sia opportuno o meno lanciare un progetto sulla Blockchain
- Conoscere le basi per lanciare una ICO
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4Stefano Saladino
Lo scopo dell’intervento è di far conoscere la nuova tecnologia blockchain, le sue caratteristiche, i suoi campi di applicazione e il suo legame con il Bitcoin.
La Firma Elettronica Avanzata, non è un determinato software, né una determinata tecnologia, ma è un sistema neutro, sicuro e affidabile che garantisca l’appartenenza di un documento informatico reso immodificabile ad un soggetto.
Giovanni Rinaldi - Smart contract:meccanizzazione del contratto nel paradigma...GiovanniRinaldi12
Il concetto di smart contract, quale contratto espresso in forma elettronica la cui esecuzione è demandata, in tutto o in parte, all’intervento di un programma per computer, è stato elaborato nel corso degli anni '90, sulla base dei precedenti studi e modelli applicativi in tema di rappresentazione del testo contrattuale attraverso il linguaggio informatico e di automazione dei rapporti negoziali. Nel corso degli ultimi anni, gli smart contract si sono legati in un binomio quasi costante con le architetture blockchain, in quanto queste ultime promettono di garantire un inedito livello di affrancamento dall'intervento umano. Gli sviluppi e i potenziali scenari di utilizzo di tali strumenti hanno determinato un interesse sempre maggiore da parte degli Stati, che ha portato, in tempi molto recenti, all’emanazione di specifiche disposizioni normative. Sebbene l’Italia si collochi nell’ancora ristretto novero di Paesi che hanno provveduto a riconoscere e disciplinare esplicitamente la figura degli smart contract, l’intervento del legislatore nazionale non sembra esente da profili di criticità.
Capire le potenzialità della Blockchain per comprendere come sfruttare l'opportunità di un mondo sempre più decentralizzato. Un'introduzione sui concetti più importanti alla base di questa tecnologia.
SMAU Torino 2016 - SPID: Le nuove frontiere delle identità digitaliGianluca Satta
Il seminario presentato a SMAU Torino 2016 si propone di illustrare il sistema pubblico per la gestione dell'identità digitale (SPID), previsto dall’art. 64 del D. Lgs. 7 marzo 2005, n. 82 (Codice dell’Amministrazione Digitale), consente a cittadini e imprese di usufruire di servizi online tramite l’utilizzo delle stesse credenziali per ogni autenticazione. Grazie ad un’unica identità digitale, rilasciata da un Identity Provider, ogni utente potrà accedere ai servizi della pubblica amministrazione e dei soggetti privati che aderiscono al sistema SPID.
Il progetto di dematerializzazione degli assegni: contenuti, profili di atten...Digital Law Communication
Il progetto di dematerializzazione degli assegni: contenuti, profili di attenzione, benefici attesi.
Francesca Provini
BANCA D’ITALIA – SERVIZIO SUPERVISIONE MERCATI E SISTEMA DEI PAGAMENTI
Roma, 16 giugno 2015
Sapremo redigere e consigliare contratti che includono, o sono, dei software.
Pensiamo a clausole contrattuali degli smart contracts costruite per essere operate da computer, pur producendo effetti concreti e non soltanto virtuali.
Per noi non si tratta di un mero spostamento di competenze, dai professionisti del diritto ai professionisti del codice, bensì di una evoluzione delle strutture logiche del pensiero giuridico, che dovrà sforzarsi per diventare facilmente comprensibile per la macchina informatica.
La missione è quella di trasmutare contenuti giuridici complessi di diritto civile in un linguaggio che sia comprensibile per i programmatori.
Calculemus!
L'infografica "Blockchain for business: Come la blockchain rivoluzionerà il modo di operare delle imprese" di Casaleggio Associati descrive e analizza le funzionalità di sistema, gli ambiti di applicazione e i punti strategici collegati alla tecnologia Blockchain in Azienda.
La Blockchain è uno dei quattro pilastri fondamentali della quarta rivoluzione industriale, insieme a Big Data, Internet of Things e Intelligenza artificiale ed entro il 2027 il 10% del PIL mondiale sarà generato da prodotti e servizi erogati con questa tecnologia.
L'infografica è stata realizzata a supporto della ricerca "Blockchain for business: Come la blockchain rivoluzionerà il modo di operare delle imprese" per la terza edizione del convegno "B2B: IL FUTURO DIGITALE DEL BUSINESS TRA AZIENDE, COME LA BLOCKCHAIN RIVOLUZIONERÀ IL MODO DI OPERARE DELLE IMPRESE”, che si è svolta a Milano a Novembre 2018.
Il convegno "B2B: IL FUTURO DIGITALE DEL BUSINESS TRA AZIENDE" è un'importante occasione per incontri, networking e aggiornamenti per gli operatori dell'e-commerce, le aziende interessate ad apprendere informazioni sulle opportunità offerte da internet e dal digital per il loro settore.
Firme elettroniche, grafometria e biometria: Quo vadis?
Presentazione dei report dei Gruppi di Lavoro Aifag
e analisi dei nuovi scenari
Roma, 16 giugno 2015
BlockChain e Token Digitali - Webinar gratuitoNinja Academy
Come le cryptovalute stanno rivoluzionando la raccolta fondi: https://ininja.it/2FhEyiN
Segui un'anteprima del webinar e iscriviti gratis per sbloccare il video completo!
Raggiungi i docenti Alessandro Palombo e Marcello Mari. Con loro imparerai a:
- Comprendere la logica di funzionamento della blockchain
- Valutare la ICO, ovvero la vendita di token digitali, per finanziare un progetto
- Conoscere le basi per valutare se sia opportuno o meno lanciare un progetto sulla Blockchain
- Conoscere le basi per lanciare una ICO
Cristina Baldi - Chi ha detto Blockchain? - Rinascita Digitale | DAY #4Stefano Saladino
Lo scopo dell’intervento è di far conoscere la nuova tecnologia blockchain, le sue caratteristiche, i suoi campi di applicazione e il suo legame con il Bitcoin.
A Bit 2018 abbiamo parlato dell'evoluzione di una tecnologia che promette di cambiare il modo in cui viaggiamo, permettendo una migliore gestione dell'identità e delle transazioni
At Euklid, our dream is to create a completely automatized, transparent, and ethical environment when it comes to managing our savings. We do this by using Artificial Intelligence and the Blockchain. Thanks to the AI, we manage to offer good performing investment solutions to our customers. We register all of our activity on the Blockchain, in order to be fully transparent when showing our performance and our actions. Right now, we focus on sophisticated investors, but our goal is to target retail clients too, and to manage their payments as well.
Blockchain and Internet of Value – nuovi paradigmi che cambieranno la quotidi...MOCA Interactive
Slide presentate durante l'evento "Il marketing digitale – nel 2018 – pensato per le aziende B2B" svoltosi a Treviso, Palazzo Bomben, venerdì 21/09/2018
––
Internet dagli anni 90 ha sconvolto la vita a tutti con sviluppi rapidi ed imprevedibili. La vera rivoluzione è stata decentralizzare l’informazione, oggi a disposizione di tutti. La nuova tecnologia Blockchain ci permetterà di decentralizzare “il valore delle cose” introducendo un nuovo paradigma di “scarsità digitale” inimmaginabile fino a pochissimo tempo fa. Tutto questo porterà a numerosi cambiamenti ed evoluzioni, probabilmente oggi impensabili, come lo è stato internet. Capirne le potenzialità è già diventato strategico per le aziende.
––
Nomade digitale dal 1988, comincia ad occuparsi di Internet dal 1998. Digital Strategist presso Websolute, si occupa di supportare aziende nazionali ed internazionali a gestire la propria presenza digitale mettendo a punto nuovi modelli di business attraverso strategie di pensiero #DigitalFirst.
Similar to Blockchain e smart contract (Lorenzo Piatti, feb.2021) (20)
Order on motion to dismiss and strike | 30 Oct. 2023 | Andersen vs Stablity AISimone Aliprandi
Order on motion to dismiss and strike, approved on 30 Oct. 2023 by Judge William H. Orrick for the District Court, N.D. California; filed on 3 Nov. 2023
A new concept of creativity: intellectual property issues around generative A...Simone Aliprandi
A new concept of creativity: intellectual property issues around generative AI. Le slides del seminario tenuto da Simone Aliprandi il 21 settembre 2023 all'Università di Milano Bicocca, all'interno dell’insegnamento Human-AI Interaction del Corso di Dottorato in Informatica.
Intelligenza artificiale generativa e diritto autore (Open Science Cafè, sett...Simone Aliprandi
Le slides utilizzate per l'Open Science Cafè di giovedì 14 settembre 2023 (dettagli sull'evento qui: http://aliprandi.blogspot.com/2023/09/intelligenza-artificiale-generativa-diritto-autore-open-science-cafe-sett2023.html)
Errata corrige per il libro "L'autore artificiale" di Simone AliprandiSimone Aliprandi
ERRATA CORRIGE PER IL LIBRO “L’autore artificiale. Creatività e proprietà intellettuale nell'era dell'AI” di Simone Aliprandi (Ledizioni, giugno 2023) — Nuovo testo del Paragrafo 4 del Capitolo 3.
Anteprima del libro "L'autore artificiale" di Simone Aliprandi (2023)Simone Aliprandi
Anteprima del libro "L'autore artificiale. Creatività e proprietà intellettuale nell'era dell'AI" di Simone Aliprandi (Ledizioni, 2023), contenente la copertina completa, il colophon, l'indice sommario, il preambolo in cui l'autore presenta l'opera e i ringraziamenti dell'autore.
Il robot artista: quali rapporti tra intelligenza artificiale proprietà intel...Simone Aliprandi
Le slides utilizzate da Simone Aliprandi per la lezione intitolata "Il robot artista: quali rapporti tra intelligenza artificiale e proprietà intellettuale" e tenutasi all'Università di Milano-Bicocca il 24 marzo 2023 (corso di Informatica Giuridica del Prof. Rossetti).
AI e diritti d’autore nel giornalismo (Firenze, marzo 2023)Simone Aliprandi
AI e diritti d’autore nel giornalismo. Le slides utilizzate da Simone Aliprandi per l'intervento della tavola rotonda "AI journalism" tenutasi a Murate Idea Park (Firenze) il 22 marzo 2023
Trasformazione digitale e open government: una panoramica delle questioni giu...Simone Aliprandi
Le slides utilizzate per il webinar "Trasformazione digitale e open government: una panoramica delle questioni giuridiche" tenuto da Simone Aliprandi nell’ambito del corso “La transizione digitale dei servizi al cittadino” e del progetto di formazione “Centri P3@-Palestre Digitali e la diffusione della cultura degli Open Data” di Edulife Spa.
AI copyright notice by USA Copyright Office (March 10, 2023)Simone Aliprandi
Copyright Registration Guidance: Works Containing Material Generated by Artificial Intelligence (document published on March 10, 2023 by the USA Copyright Office)
Corso di formazione su diritto d'autore, copyright e licenze aperte per il pe...Simone Aliprandi
Le slides utilizzate per il corso tenutosi online il 24 e 28 febbraio 2023 e rivolto al personale del sistema bibliotecario dell'Università degli Studi di Perugia.
Tutela dei beni culturali e lo strano caso Studi d'Arte Cave Michelangelo (ap...Simone Aliprandi
SOTTOTITOLO: Un commento all’ordinanza dell'aprile 2022 con considerazioni critiche sulla normativa di riferimento
ABSTRACT: I provvedimenti giudiziali in materia di riproduzione dei beni culturali non sono molti, si contano sulle dita di una mano; tuttavia ce n’è uno decisamente singolare: quello che vede protagonista Studi d’arte Cave Michelangelo, azienda carrarese che realizza copie in marmo di Carrara dei grandi classici della scultura. Facciamo un riepilogo delle puntate precedenti (per chi se le fosse perse) e poi procediamo a un commento dell’ordinanza in questione.
Il testo dell'Ordinanza del Tribunale di Venezia (R.G. 5317/2022; decisione del 20 ottobre 2022); caso Ravensburger contro Ministero Cultura e Gallerie dell'Accademia di Venezia; oggetto: diritti di riproduzione dell'Uomo Vitruviano di Leonardo Da Vinci ai sensi degli articoli 107 e 108 Codice Beni Culturali.
La nuova direttiva copyright e le novità in materia di ricerca (Open Science ...Simone Aliprandi
Le slides utilizzate per l'Open Science Cafè del 9 febbraio 2023 intitolato "La nuova direttiva copyright e le novità in materia di ricerca" (maggiori dettagli sull'iniziativa qui: http://aliprandi.blogspot.com/2023/02/direttiva-copyright-novita-ricerca-openscience-cafe-garr-9febb.html)
Questioni di diritto d'autore e Digital Library (Università di Bologna - Sede...Simone Aliprandi
Le slides utilizzate per la lezione intitolata "Questioni di diritto d'autore e Digital Library” nell'ambito della Summer School “La Digital Library: evoluzione, strutture, progetti” dell’Università di Bologna - Sede di Ravenna (17 giugno 2022)
Il diritto d'autore sui beni culturali: le norme, le licenze e la gestione de...Simone Aliprandi
Le slides utilizzate per il corso di formazione online intitolato "Il diritto d'autore sui beni culturali: le norme, le licenze e la gestione dei relativi dati" e organizzato dalla Fondazione 1563 di Torino (20 gennaio 2022)
Diritto d’autore e licenze open (Università di Urbino, giugno 2022)Simone Aliprandi
Le slides utilizzate per il corso di formazione intitolato "Diritto d’autore e licenze open" e tenutosi presso l'Università Carlo Bo di Urbino il 20 giugno 2022 [nelle slides è indicata *per errore* la data del 17 giugno]
"A guidebook to the metaverse.
Technological and legal basics, potential for business, relevance to society", published at the end of 2022 by Bitkom (https://www.bitkom.org/)
Ordinanza Tribunale di Firenze Ministero Cultura vs Cave Michelangelo (apr. 2...Simone Aliprandi
Ordinanza del 11 aprile 2022 (reclamo ex art 669 terdecies c.p.c. depositato in data 17.02.2022) ottenuta dal Ministero della Cultura contro Studi d'Arte Cave Michelangelo, nella quale si parla di una sorta di *diritto d'immagine" sulle opere d'arte.
--
"Si evidenzia che essendovi un indubbio uso dell’immagine del bene culturale, risulta irrilevante che si tratti - per la maggioranza delle immagini, per quanto dedotto, si noti e non per tutte - delle immagini della copia dell’originale realizzata dalla reclamata, tanto più che ciò non è percepibile dal pubblico attenendo unicamente all’essere volto lo sguardo della statua a destra invece che a sinistra con diverso orientamento della fionda".
4. D
ETHEREUM
E
CODING
A BITCOIN E DLT
Questa parte analizza molto brevemente cos’è Bitcoin e
perché è una tecnologia rilevante per comprendere
appieno il funzionamento e il potenziale della Blockchain o
– più in generale – delle Decentralized Ledger
Technologies (da qui in avanti DLT).
In primo luogo si cerca di mettere a fuoco gli aspetti che
stanno alla base della rivoluzione filosofica e tecnologica di
Bitcoin: sovranità monetaria, decentralizzazione e Web3.
L’analisi si focalizza successivamente sull’aspetto più
rilevante per la discussione sugli smart contract: il wallet.
SMART CONTRACT B
C
NORMATIVA
5. D
ETHEREUM
E
CODING
C
BITCOIN E DLT A
Cos’è uno smart contract? Questa sezione cerca di
rispondere a questa domanda, sia dal punto di vista
tecnologico sia da quello giuridico.
Questa sezione affronta anche brevemente l’evoluzione
del contratto informatico per arrivare a descrivere il
funzionamento e l’essenza – anche giuridica – degli smart
contracts.
Questa sezione è fortemente legata alla precedente: la
principale differenza tra gli smart contract e il contratto
informatico risiede nel fatto che il primo si appoggia a un
sistema decentralizzato per il proprio funzionamento.
B SMART CONTRACT
NORMATIVA
6. D
ETHEREUM
E
CODING
SMART CONTRACT B
A
In questa sezione analizziamo i pochi frammenti normativi
che il legislatore nazionale prevede in tema di smart
contract e DLT.
Seppur incompleto, l’apporto del legislatore nazionale è
essenziale per comprendere quali siano le intenzioni –
anche strategiche – del nostro Paese sulle nuove
tecnologie.
Il quadro normativo è importante per comprendere come
le prime due sezioni possano validamente calarsi nel
contesto giuridico nazionale.
C NORMATIVA
BITCOIN E DLT
7. C
NORMATIVA
E
CODING
SMART CONTRACT B
A
In questa sezione cominciamo a spostarci verso la parte
pratica dell’agenda: cominciamo a conoscere la
piattaforma che permette il funzionamento degli smart
contracts, Ethereum.
La parte di coding presuppone conoscere la piattaforma su
cui andremo a operare, le sue logiche, nonché la sua
semantica.
Ethereum non è l’unica Blockchain che permette di
scrivere e interagire con gli smart contract, ma risulta
essere la più utilizzata e malleabile: grazie alle sue funzioni
di test, in questa parte cominciamo a vedere qualche
esempio pratico di transazione e rapporto tra wallets.
BITCOIN E DLT
D ETHEREUM
8. C
NORMATIVA
D
ETHEREUM
SMART CONTRACT B
A
Cosa facciamo: proviamo il funzionamento di alcuni smart
contract contracts sfruttando la IDE remix, un tool che ci
permette di scrivere, compilare e deployare i nostri smart
contracts. Scriveremo e proveremo a interagire con due
diverse tipologie di smart contract. Impariamo ad usare
Solidity, senza entrare nel dettaglio di ogni aspetto di
questo linguaggio.
Cosa NON facciamo: remix ci permette di fare pratica in un
ambiente di test, replicando – con ETH fittizi – il
funzionamento di Ethereum. Non affronteremo aspetti
legati alla sicurezza o alla pulizia del codice: argomenti
fondamentali un programmatore, ma non essenziali per
toccare con mano il funzionamento di uno smart contract.
E CODING
BITCOIN E DLT
12. UNA PRIMA DEFINIZIONE
Protocollo aperto, interoperabile, non controllato
da un soggetto centrale (decentralizzato), le cui
componenti tecnologiche sono già presenti in modo
non articolato in ambito accademico negli anni 80-
90. I concetti principali sono transazioni, nodi e
rete.
14. BITCOIN BLOCKCHAIN
Open source
Permissionless e public
Pseudonima e
trasparente
Abilita la scarsità
digitale
Disintermediata
grazie al consenso
decentralizzato
(Immutabile)
Globale
15. Wallet
BITCOIN WALLET
Il portafoglio (o wallet) è lo strumento tecnologico che permette
ai partecipanti della rete di scambiare bitcoin, o - in generale -
una criptomoneta, altro tipo di valore o informazione.
online mobile desktop hardware
paper
16. Wallet
BITCOIN WALLET
Il portafoglio (o wallet) è lo strumento tecnologico che permette
ai partecipanti della rete di scambiare bitcoin, o - in generale -
una criptomoneta, altro tipo di valore o informazione.
online mobile desktop hardware
paper
19. STRUMENTALE
Il computer è una tecnologia di
supporto: chi lo utilizza si limita a
redigere i contratti su applicativi di
video-scrittura per poi stamparli.
novità
stampa carta
parti
Questa fase segna il passaggio dalla
meccanica all’elettronica: aziende e
professionisti approcciano al computer
come un mero assistente operativo.
Il mezzo utilizzato per concludere i
contratti è la carta: il supporto è
ancora un aspetto centrale delle
trattative.
Le parti non hanno modo di
concludere contratti a distanza: le reti
e la comunicazione sono appannaggio
di applicazioni industriali e finanziarie.
20. TELEMATICA
Il legislatore (italiano prima ed europeo
dopo) permettono la digitalizzazione
dei rapporti contrattuali con strumenti
come PEC e Firma Digitale.
invio
firma online
PCT
Le comunicazione sono per la maggior
parte dematerializzate: il mercato
finanziario prima e quello giuridico poi
sviluppano strumenti sicuri di invio
documentazione digitale.
Le parti si incontrano, dialogano,
negoziano e concludono i contratti
online: l’esecuzione delle obbligazioni
è spesso ancora offline.
Le procedure vengono digitalizzate: per
primo il Processo Civile Telematico
(PCT) a seguire quello amministrativo e
quello penale.
21. Nick Szabo è il tecnico-giurista che –
nel 1998 – ha teorizzato l’esecuzione
automatica dei rapporti obbligatori tra
le parti.
AUTÓMATA
ERC-20
Szabo
?
cos’è?
Ethereum Request for Comment n. 20
è il primo standard di smart contract su
cui si sono sviluppi i concetti di
tokenizzazione e automazione
contrattuale diffusa.
Uno smart contract è un insieme di
istruzioni informatiche, la cui
esecuzione dipende dall’avverarsi di
determinate condizioni.
Quando uno smart contract soddisfa i
requisiti di cui all’art. 1321 c.c. (o altra
normativa di riferimento), si parla di
smart legal contract.
1321c.c.
25. Reintroduce il concetto di terza parte fidata: lo smart contract si relaziona
con un’entità esterna di cui si fida nel rispetto di determinate logiche
Oracoli decentralizzati?
Persona fisica, persona giuridica o oggetto
Fonte di informazioni che servono allo smart-contract per funzionare
ORACOLO
28. LEGGE DI CONVERSIONE DEL D.L. N. 135/2018
definizione valore giuridico linee guida
(11 febbraio 2019)
29. DEFINIZIONE SMART CONTRACT
2. Si definisce "smart contract" un programma
per elaboratore che opera su tecnologie basate
su registri distribuiti e la cui esecuzione
vincola automaticamente due o più parti sulla
base di effetti predefiniti dalle stesse.
Gli smart contract soddisfano il requisito
della forma scritta previa identificazione
informatica delle parti interessate, attraverso
un processo avente i requisiti fissati
dall'Agenzia per l'Italia digitale con linee
guida da adottare entro novanta giorni dalla
data di entrata in vigore della legge di
conversione del presente decreto.
30. DEFINIZIONE SMART CONTRACT
2. Si definisce "smart contract" un programma
per elaboratore che opera su tecnologie basate
su registri distribuiti e la cui esecuzione
vincola automaticamente due o più parti sulla
base di effetti predefiniti dalle stesse.
Gli smart contract soddisfano il requisito
della forma scritta previa identificazione
informatica delle parti interessate, attraverso
un processo avente i requisiti fissati
dall'Agenzia per l'Italia digitale con linee
guida da adottare entro novanta giorni dalla
data di entrata in vigore della legge di
conversione del presente decreto.
31. TOO LONG: DIDN’T READ
- Bitcoin whitepaper: reso pubblico nel 2008, da Satoshi
Nakatomoto, un personaggio misterioso che l’anno
successivo trasmette la prima transazione.
- Da allora, Bitcoin è stato dichiarato morto 389 volte,
diventando la prima e più longeva criptomoneta e
aumentandone incredibilmente il valore.
- Bitcoin è un’applicazione che poggia su un registro
decentralizzato: la Blockchain, un particolare tipo di DLT.
- Nel contesto delle DLT sono nati gli smart contract: un
particolare tipo di software che può assumere rilevanza
legale (in questo caso si parla di smart legal contract).
- Lo smart legal contract è il picco dell’evoluzione del
contratto informatico e formalizza la fase autómata, che
segue quella telematica e quella strumentale.
- Il legislatore italiano regola in parte la materia degli
smart contract: il meglio deve ancora venire.
- Perché dovrebbe interessarmi?
33. ETHEREUM BLOCKCHAIN
Abilita le dApp e
DAO
EVM & fees
Ether
Token e ICO
Solidity
Simile alla Bitcoin
Blockchain
Smart
contracts
34. Ethereum Virtual Machine (EVM): un computer
virtuale globale, il cui stato è registrato da
ogni nodo che compone la Blockchain di
Ethereum.
Transaction: una transazione è una richiesta
inviata da un account verso la EVM per compiere
del lavoro computazionale. Una volta che la
transazione è verificata, validata e eseguita
dalla rete, questa modifica lo stato della EVM.
Ethereum, quindi, è semplicemente un database
decentralizzato su una determinata rete che
registra le transazioni che alterano il suo
stato.
DEFINIZIONE
35. Wallet
Questi concetti sono comuni a diverse soluzioni DLT, ma nella
Blockchain Ethereum hanno un ruolo fondamentale ed è
importante definirne correttamente il perimetro.
nodo smart contract
account
transazione gas
SEI CONCETTI CHIAVE
rete
36. Un Account Ethereum è un oggetto informatico
con un saldo in Ether (ETH) che può fare
transazioni sulla Rete Ethereum. Un Account
può:
- Ricevere ETH.
- Trattenere ETH.
- Inviare ETH.
- Interagire con uno smart contract.
Un Account si differenzia dal Wallet perché
quest’ultimo è lo strumento che permette
all’utente di interagire con il proprio
Account.
ACCOUNT 1/2
37. Ci sono due diversi tipi di account:
a) Account Esterno (externally-owned account),
la cui creazione è gratuita. Le transazioni
tra Account Esterni possono essere solo
transazioni di ETH.
b) Account Contratto (contract account), la cui
creazione ha un costo, in considerazione del
fatto che viene utilizzato dello spazio
nella EVM. Questo account può compiere
transazioni solo se a sua volta ha ricevuto
una transazione: questa operazione può
generare diverse conseguenze, come la
creazione di token, di un altro Account
Contratto o qualsiasi cosa sia prevista
dalle istruzioni che contiene.
ACCOUNT 2/2
38. Insieme di hardware e software (c.d. client)
che ha lo scopo di verificare i blocchi e i
dati delle transazioni, nonché di firmare le
transazioni.
Esistono tre diversi tipi di nodi:
a) Full node: partecipa alla validazione dei
blocchi, verifica tutti i blocchi e gli
stati, nonché archivia l’intera Blockchain.
b) Light node: archivia la catena degli headers
e può verificare la validità dei dati
rispetto a quanto contenuto nei block
headers (identificativo del blocco).
c) Archive: archivia tutti gli stati di un full
node.
NODO
39. Quando un account (c.d. «esterno») intende
modificare lo stato della EVM, emette e firma
crittograficamente un’istruzione, più o meno
complessa. L’account non parla direttamente con
la rete: ha bisogno di un nodo che trasmetta la
sua richiesta.
La transazione, oltre ad essere trasmessa deve:
- Essere minata all’interno di un blocco, e
- Contenere una gas fee.
TRANSAZIONE 1/2
40. La transazione ha i seguenti requisiti:
1) recipient: l'indirizzo del destinatario,
qualora si tratti di un account esterno
(externally-owned account) la transazione
trasferirà il valore della transazione. Se
si tratta di un account contratto (contract
account), la transazione eseguirà il codice
del contratto.
2) signature: l'identificativo del mittente.
Questo viene generato quando la chiave
privata del mittente firma la transazione e
conferma che il mittente ha autorizzato la
transazione.
3) value: importo di ETH da trasferire dal
mittente al destinatario.
4) data: campo opzionale per includere dati.
5) gasLimit: a quantità massima di unità di gas
che può essere consumata dalla transazione.
6) gasPrice: prezzo per unità di gas.
TRANSAZIONE 2/2
42. CICLO VITA DELLA TRANSAZIONE
INVIO DELLA
TRANSAZIONE
TRASMISSIONE E
POOL
1 2
43. CICLO VITA DELLA TRANSAZIONE
INVIO DELLA
TRANSAZIONE
TRASMISSIONE E
POOL
VERIFICA DELLA
TRANSAZIONE
1 2 3
44. CICLO VITA DELLA TRANSAZIONE
INVIO DELLA
TRANSAZIONE
TRASMISSIONE E
POOL
VERIFICA DELLA
TRANSAZIONE
INSERIMENTO IN UN
BLOCCO
1 2 3 4
45. CICLO VITA DELLA TRANSAZIONE
INVIO DELLA
TRANSAZIONE
TRASMISSIONE E
POOL
VERIFICA DELLA
TRANSAZIONE
INSERIMENTO IN UN
BLOCCO
FASE DI CONFERMA
1 2 3 4 5
46. Unità che misura lo sforzo computazionale
richiesto per le operazioni all’interno della
EVM e retribuisce i miners. Ogni transazione
richiede risorse computazionali, quindi ogni
transazione richiede un certo ammontare di gas.
Il gas abilita la scarsità su Ethereum e
permette di evitare inefficienze, come spam,
codice eccessivamente dispendioso oppure cicli
malevoli.
il gas ha un prezzo (gas price) espresso in
Gwei e valutato in base ad un’unità minima: per
ciascuna transazione viene calcolata la
relativa gas fee e un gas limit.
GAS
47. L’insieme dei nodi che compone l’ecosistema
Ethereum crea diverse reti su cui è possibile
scambiare transazioni.
Queste reti sono pubbliche e si differenziano
per nome e caratteristiche:
a) Mainnet: rete Ethereum «di produzione». Su
questa rete ci sono veri.
b) Testnets: Ropsten, Kovan, Görli e Rinkeby.
reti «di collaudo» che permettono di provare
il funzionamento della EVM, ciascuna con
logiche di consenso differenti. Su queste
reti ci sono soldi finti.
Gli ETH per le Testnets vengono generati da
apposite «Faucets».
RETE
48. Un programma eseguito sulla Blockchain di
Ethereum. Uno smart contract è composto di:
1) codice: le istruzioni per il suo
funzionamento, e
2) dati: lo stato del contratto stesso.
Ciascuno smart contract ha un suo specifico
indirizzo, il c.d. «contract account»: ha,
quindi, anche un saldo in ETH.
SMART CONTRACT
60. // SPDX-License-Identifier: UNLICENSED
//definisce la versione di solidity utilizzata
pragma solidity ^0.7.0;
// contenuto del contratto "HelloWorld"
contract HelloWorld {
string variabile;
// costrutto, un particolare tipo di funzione, che definisce un valore di default per la variabile "variabile"
constructor() {
variabile = "legalCoders";
}
// funzione che permette di leggere il valore della variabile "variabile"
function get() public view returns(string memory) {
return variabile;
}
//funzione che permette di definire un valore per la variabile "variabile"
function set(string memory _variabileCheVaria) public {
variabile = _variabileCheVaria;
}
}
TESTO PRIMO CONTRATTO
61. La EVM ha tre luoghi dove archiviare i dati,
ciascuno con differenti funzioni e limiti.
Storage (costoso): sulla Blockchain, per il
tempo in cui la stessa è accessibile. Ogni
contratto ha un proprio storage, dove salvare
gli elementi necessari al suo funzionamento.
Paragonabile al concetto di hard disk in un
computer.
Memory (meno costoso): nel contratto stesso,
per il tempo della sua durata. Viene assegnato
a un contratto ogni volta che invia una
transazione, paragonabile al concetto di RAM in
un computer.
Stack: dove avvengono i calcoli computazionali.
MEMORIZZAZIONE DI CONTENUTO
62. Solidity ammette tre diversi tipologie di
variabile (da non confondere con il tipo, c.d.
«type»).
Local: variabili il cui valore è presente solo
finché viene eseguita la funzione.
State: variabili il cui valore è presente nello
«storage» del contratto.
Global: variabili che prescindono dalla singola
funzione o contratto, e restituiscono
informazioni rispetto alle transazioni o alla
Blockchain.
ATTENZIONE quando scegliamo il nome di una
variabile: case sensitive, global e numeri non
sono ammessi come valori iniziali.
VARIABILE
63. Codice eseguibile contenuto nel contratto. Le
funzioni accettano Parametri e ritornano
Variabili.
La sintassi base di una funzione è la seguente:
function nomeDellaFunzione(listaDeiParametri)
visibilità pagabilità {
contenuto;
}
FUNZIONE
64. VISIBILITÀ DI UNA FUNZIONE
public
possono essere chiamate sia
internamente da altre funzioni
sia esternamente da altre
transazioni.
private
possono essere chiamate solo
all’interno del contratto in
cui sono presenti.
internal
visibili solo all’interno e
non all’esterno del contratto.
Queste funzioni non eseguono
una chiamata alla EVM.
external
visibili solo all’esterno e
non all’interno del contratto.
Queste funzioni eseguono una
chiamata alla EVM.
65. Una funzione può avere diversi comportamenti:
tra gli altri si distinguono le funzione pure
da quelle view.
Una funzione view può essere usata per leggere
un determinato stato del contratto ma non può
in alcun modo modificarlo.
Una funzione pure non può essere usata né per
leggere né per modificare uno stato del
contratto.
COMPORTAMENTO DI UNA FUNZIONE
66. Il costrutto (o costruttore) è una speciale
categoria di Funzione che viene definito con la
sintassi seguente:
constructor() visibilità {
contenuto;
}
La particolarità di questa funzione è che viene
eseguita al momento della creazione/deploy del
contratto: è, quindi, particolarmente utile per
eseguire il codice che sia necessario al buon
funzionamento dello stesso.
COSTRUTTO
67. TESTO SECONDO CONTRATTO
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.7.0;
contract Macchinetta {
// PREMESSE
// dichiariamo due variabili (state) del contratto:
// 1) carofiglio, che rappresenta un determinato address
// 2) saldoLibri che tiene conto dei libri disponibili nella macchinetta
address payable public carofiglio;
mapping (address => uint) public saldoLibri;
// INSTALLAZIONE
// quando il contratto Macchinetta è deployato, compie le seguenti operazioni:
// 1) imposta l'address del proprietario: chi ha deployato il contratto ne diventa proprietario
// 2) definisce un numero di libri per iniziare l'attività
constructor() {
carofiglio = msg.sender;
saldoLibri[address(this)] = 170;
}
// ACQUISTO
// una funzione che permette a chiunque di acquistare dei libri
function acquistare(uint ammontare) public payable {
require(msg.value == ammontare * 1 ether, "Necessario inserire 1 ETH per ciascuno libro acquistato!"); // prezzo
require(saldoLibri[address(this)] >= ammontare, "Non ci sono abbastanza libri per completare l'acquisto."); // giacenza di libri
saldoLibri[msg.sender] += ammontare; // aumenta il numero di libri nell'account utente
saldoLibri[address(this)] -= ammontare; // riduce il numero di libri nell'account contratto della Macchinetta
}
// RIFORNIMENTO
// peremette a Carofiglio di aumentare il numero di libri disponibili
function rifornire(uint quantitativo) public {
require(msg.sender == carofiglio, unicode"Solo il proprietario è autorizzato a rifornire la macchinetta.");
saldoLibri[address(this)] += quantitativo; }
}
68. La variabile di type address è particolarmente
importante perché permette di archiviare un
valore di 20 bytes, pari alla grandezza di un
account Ethereum.
Un address per essere abilitato alla ricezione
di ETH deve essere essere payable.
Il ruolo degli address è fondamentale nel
contesto Ethereum, trattandosi del riferimento
agli account che eseguono una determinate
transazione o interazione sul ledger.
ADDRESS
69. Mapping è un type che permette di associare
determinati valori ad una parola chiave, la
sintassi relativa, infatti, è:
mapping_(_KeyType => _ValueType)
Un mapping memorizza i dati in modalità
storage.
MAPPING
70. msg.sender è una variabile global che
restituisce l’indirizzo dell’indirizzo che
effettua una determinate azione.
Al momento del deploy del contratto, il
msg.sender è l’indirizzo che ha effettuato il
deploy.
msg.value è una variabile global che
restituisce il valore (in wei!) inviati in un
determinate messaggio.
msg.sender & msg.value
71. È una convenience function, che può essere
utilizzata per verificare una condizione
restituire un messaggio se la condizione non è
soddisfatta.
La funzione require permette di garantire la
presenza di condizioni valide rilevabili solo
al momento dell’esecuzione del contratto.
REQUIRE
72. Assignment oeprators, ad esempio: += oppure -=.
Questi operatori permettono di incrementare o
diminuire di un dato valore ciascun operand. Ad
esempio X += Y aggiunge il valore X al valore
Y.
Comparison operators, ad esempio: >= oppure <=.
Questi operatori permettono di verificare che
due determinati valori abbiano un certo
rapporto predefinito. Ad esempio X >= Y: X è
maggiore o uguale a Y.
OPERATORS
73. Quando una funzione o un address devono essere
in grado ricevere una somma ETH, è necessario
dichiararli payable.
il compiler che incontri delle istruzioni tali
per cui una determina funzione o un address
ricevono una somma di ETH senza che vi sia la
suddetta dichiarazione, impedirà di compilare
il contratto.
PAYABLE
74. TOO LONG: DIDN’T READ
- Ethereum è una Blockchain che molto simile a quella di
Bitcoin.
- Oltre a semplici transazioni, Ethereum – attraverso la
EVM – permette di abilitare l’utilizzo di smart contract e
applicazioni decentralizzate, attraverso l’uso di token e
linguaggi di programmazione specifici.
- La EVM funziona grazie ai full nodes che ne
garantiscono la sicurezza e la resilienza, questi vengono
remunerati da una gas fee, pagata dagli account esterni
che intendono fare una transazione.
- Gli smart contract sono account contratto che hanno
caratteristiche molto simili a quelle di una macchinetta
de caffè.
- Esistono diversi linguaggi per scrivere gli smart contract,
quello più utilizzato è Solidity, che deriva parte del suo
funzionamento e della sua sintassi da Javascript.
- Il giurista ha un ruolo fondamentale in questo contesto:
capire il funzionamento delle transazioni e l’interazione
degli address permette di comprendere il corretto
approccio normativo.