Cryptocurrencies

Lo scorso weekend un attacco hacker dalla Corea del sud al sito Coinrail ha fatto sparire circa 40 milioni di dollari in cryptocurrencies e nessuno ne ha parlato!
Dall’inizio dell’anno sembra sia sparito qualcosa come 1,1 mld di $ in cryptocurrencies.

Anche se, sempre che abbia capito bene, riescono a identificare il lotto che si è mosso e bloccarlo.
Nel caso dell’11 giugno 2018 in poco più di 24 ore oltre i due terzi del mal tolto era stato identificato e bloccato. Ciò non toglie che evidentemente ancora ci sono delle lacune sul sistema di sicurezza dei siti che scambiano cryptovalute, d’altronde in futuro la cybersecurity penso sia uno dei settori con più possibilità di sviluppo.

Tutte le monete virtuali rubate nell’attacco hacker a Coinrail

Cosa sono le Cryptocurrencies?
Una criptovaluta (o crittovaluta o criptomoneta) è una valuta paritaria, decentralizzata e digitale la cui implementazione si basa sui principi della crittografia per convalidare le transazioni e la generazione di moneta in sé. Come ogni valuta digitale, consente di effettuare pagamenti online in maniera sicura.
La maggior parte delle criptomonete sono progettate per introdurre gradualmente nuove unità di valuta, ponendo un tetto massimo alla quantità di moneta che sarà in circolazione.
Ciò viene fatto sia per imitare la scarsità (e il valore) dei metalli preziosi, sia per evitare l’iperinflazione. Comparate con le valute ordinarie gestite dagli istituti finanziari o tenute come contante, le criptomonete sono meno suscettibili a confische da parte delle forze dell’ordine.
Si tenga presente che il Bitcoin (la crypto valuta più famosa) è stato quotato alla borsa di Chicago ed a quella di Hong Kong ed è stato dato corso legale in Giappone, al pari dello Yen.
Le transazioni effettuate con le cryptomonete offrono un buon livello di privacy, grazie alla caratteristica di pseudonimia degli utilizzatori. Il livello di privacy varia a seconda del protocollo utilizzato, ed è totale per quelle criptovalute (quali Monero, Dash, Zcash) che utilizzano il sistema di validazione “zero knowledge”, grazie al quale non viene scambiata nessuna informazione tra le parti.
Le Criptovalute vengono principalmente utilizzate su internet attraverso circuiti esterni al sistema bancario, ponendosi come alternativa ai tradizionali sistemi di pagamento e di riserva di valore. Pur essendo questi sistemi di scambio ancora nelle fasi iniziali di sviluppo, la capitalizzazione di mercato delle Criptovalute ha superato i 600 miliardi di USD a dicembre 2017.
A gennaio 2018 oltre 1400 Criptovalute vengono scambiate su vari exchange.
Esistono degli indici per le Criptovalute:
Cripto indice CRIX
L’indice CRIX è il frutto di uno studio della Università Humboldt di Berlino, della Singapore Management University e della società CoinGecko.
Utilizza un algoritmo che tiene in considerazione i frequenti cambiamenti del mercato, con la creazione continua di nuove Criptovalute e i pochi volumi di scambio di alcune di esse.
Per questo motivo, il numero di componenti di questo indice è rivisto ogni 3 mesi. Si tratta dunque di un indice “dinamico”.
CCI30 Crypto Currencies Index
Questo è costituito dalle 30 Cryptovalute con più grande capitalizzazione, è stato creato da un’equipe di matematici, analisti quantitativi e traders, guidati dal Prof. Igor Rivin e da Carlo Scevolo, economista.
Anche in questo caso la composizione dell’indice varia ogni tre mesi è disponibile al pubblico e può essere replicato da fondi che seguono strategie passive.

Principali criptovalute

  • Bitcoin (BTC o XBT), nata a gennaio 2009, basata sul protocollo proof-of-work, è la prima criptomoneta per valore, la prima ad essere conosciuta in massa, e ad essere riconosciuta come forma di pagamento da diversi siti Internet, nonché commercianti.
  • Ethereum (ETH), piattaforma rilasciata nel 2015, prevede l’esecuzione di smart contracts tramite la rete peer-to-peer. La potenza computazionale messa a disposizione sulla rete viene convertita nell’unità di conto denominata Ether.
  • Ripple (XRP), dove l’XRP è la criptovaluta creata come token antispam sulla rete di Ripple, che è la società proprietaria di tutti i nodi di distribuzione. Il network si pone come competitore del protocollo SWIFT, e il fine ultimo è quello di agire sugli scambi monetari bancari. Garantisce un’alta velocità sulle transazioni (1500/s, al 06 ottobre 2017).
  • Bitcoin Cash (BCH), frutto del fork sulla rete Bitcoin eseguito il 01 agosto 2017, che prevedeva l’aumento della dimensione dei blocchi da 1 a 8 MB.
  • Litecoin (LTC), che rispetto al Bitcoin elabora un blocco ogni 2.5 minuti (contro i 10 minuti del Bitcoin) e produce scrypt nell’esecuzione del proof-of-work.
  • Monero (XMR), criptovaluta che punta alla privacy degli utenti, non avendo una blockchain pubblica.
  • Waves (WAVES), criptovaluta fulcro di un progetto che prevede un exchange monetario (sia di moneta FIAT che criptovalute) decentralizzato, ovvero basato sulla rete p2p. Dà ai suoi utenti la possibilità di creare token monetari senza alcuna nozione di programmazione e nel futuro è prevista l’introduzione degli smart contracts. Attualmente, tramite il protocollo Waves-NG, è la blockchain decentralizzata più veloce, potendo gestire 1000 transazioni al secondo contro le 7 al secondo del Bitcoin.
  • IOTA (IOTA), un token crittografico di nuova generazione, creato per essere lightweight e venire utilizzato nei pagamenti automatici che gli smart device effettueranno nell’Internet of Things. IOTA è programmato in ternario e ha un Tangle al posto di una Blockchain, il che lo rende infinitamente scalabile e rimuove la necessità di avere costi di transazione.

In questo link trovate le prime 100 cryptocurrencies: https://coinmarketcap.com/

Fin qui, sembra tutto semplice e direi alquanto affascinante. Se cerchiamo di capire però come funzionano tecnicamente le cose si complicano oltremodo.
Ho provato a capirci qualcosa almeno per riuscire a farsi un’idea dei principi base che utilizzano.

Principi tecnici:

Usano schemi POW ( proof-of-work) per evitare la contraffazione, sono schemi basati su un sistema asimmetrico che utilizza una tecnologia di tipo P2P (peer to peer) cioè basata su un modello di architettura logica di reti informatiche paritarie dove ognuno può essere sia client che server.

Cos’è un sistema proof-of-work (POW) o protocollo proof-of-work, o funzione proof-of-work è una misura economica per scoraggiare attacchi denial of service (diniego di servizio) e altri abusi di servizio, come spam sulla rete, imponendo alcuni lavori dal richiedente del servizio, di solito il tempo di elaborazione di un computer.
Una caratteristica chiave di questi schemi è la loro asimmetria: il lavoro deve essere moderatamente complesso (ma fattibile) dal lato richiedente facile da controllare per il fornitore del servizio (service provider).
Questa idea è anche conosciuta come funzione di costo della CPU, client puzzle, puzzle computazione o funzione di pricing della CPU.

Un sistema famoso, usato anche nella creazione di moneta Bitcoin è l’hashcash.

L’hashcash è un algoritmo proof-of-work (scoraggia attacchi DOS e altri abusi di servizio) che richiede una quantità selezionabile di lavoro da eseguire, dove tale dimostrazione di efficienza può essere mostrata senza alcun problema. Per un utilizzo di tale metodo tramite email, un codice testuale di un hashcash viene aggiunto all’intestazione dell’email per provare che il mittente ha occupato del tempo per utilizzare una piccola quantità di CPU, calcolando il timbro prima di inviare l’email. In altre parole, se il mittente ha utilizzato un certo lasso di tempo per generare il timbro e inviare l’email, è molto improbabile che sia uno spammer.

La riga di intestazione assomiglia a questa:

X-Hashcash: 1:20:1303030600:adam@cypherspace.org::McMybZIhxKXu57jd:ckvi

L’hashcash usa inversioni di hash parziali per verificare che il lavoro sia fatto, come token di buona volontà da inviare via e-mail.

L’hash è una funzione non invertibile che mappa una stringa di lunghezza arbitraria in una stringa di lunghezza minore.

Esempio: La seguente intestazione (header) rappresenta i calcoli di circa 252 hash per inviare un messaggio a calvin@comics.net il 19 gennaio 2038:

X-Hashcash: 1:52:380119:calvin@comics.net:::9B760005E92F0DAE

È verificabile con un singolo calcolo controllando l’hash SHA-1 dello timbro (omette la porzione “X-Hashcash:”) cominciando con 52 zeri binari, che corrispondono a 13 zeri esadecimali: 0000000000000756af69e2ffbdb930261873cd71.

Se i sistemi POW risolvono particolari casi di denial of service come il problema spam è ancora oggetto di dibattito.

I sistemi Proof-of-work sono usati come primitive da altri più complessi sistemi crittografici come quello che usa Bitcoin, un sistema simile a Hashcash.

Tecnologia Peer-to-peer (P2P) o rete paritaria o paritetica, in informatica, è un’espressione che indica un modello di architettura logica di rete informatica in cui i nodi non sono gerarchizzati unicamente sotto forma di client o server fissi (clienti e serventi), ma sotto forma di nodi equivalenti o paritari (in inglese peer) che possono cioè fungere sia da client che da server verso gli altri nodi terminali (host) della rete.

Mediante questa configurazione qualsiasi nodo è in grado di avviare o completare una transazione. I nodi equivalenti possono differire nella configurazione locale, nella velocità di elaborazione, nella ampiezza di banda e nella quantità di dati memorizzati. L’esempio classico di P2P è la rete per la condivisione di file (File sharing). In breve, ogni nodo non è esclusivamente client o server, ma può essere entrambi.

Tecnicamente, le applicazione peer-to-peer (P2P) dovrebbero implementare solo protocolli di peering che non riconoscono il concetto di “server e di “client”. Tali applicazioni o reti “pure” sono in realtà molto rare. Molte reti e applicazione che si descrivono come peer-to-peer fanno però affidamento anche su alcuni elementi “non-peer”, come per esempio il DNS (Domain Name System). Inoltre, applicazioni globali utilizzano spesso protocolli multipli che fungono simultaneamente da client, da server, e da peer.

Problematiche di sicurezza e privacy:

Oltre agli attacchi che una rete aperta può subire, anche i computer che ad essa accedono possono essere soggetti a problematiche di security e privacy. Per la stessa filosofia del P2P quasi tutti i programmi di file-sharing richiedono per la sopravvivenza del sistema di avere sul proprio computer dei file condivisi e che quindi possano essere a disposizione degli utenti che ne fanno richiesta. Questo implica da un lato la condivisione di un’area del disco sulla quale mettere i file a disposizione, dall’altro consentire il libero accesso ad alcune porte del computer. Già di per sé questo porta ad avere un aumento dei problemi di security, in quanto chiunque ha la possibilità di entrare su quelle porte. Se poi si considera l’enorme incremento degli utenti e l’utilizzo di linee a banda larga, ormai alla portata di tutti, questi problemi, che una volta potevano essere trascurabili, diventano prioritari. Ciò rende fondamentale l’utilizzo di sistemi di difesa come antivirus, firewall, programmi di pulizia dei file di registro e di rimozione degli agenti infettivi: virus, spyware, trojan o malware.

Il migliore aiuto che si può dare a questi sistemi di difesa è costituito dalla propria cultura informatica che consente di riconoscere ed evitare l’introduzione nel proprio computer di questi agenti, invece di scaricarli incautamente da altri utenti del P2P. A volte il diritto alla riservatezza può nascondere l’azione di chi, non avendo interesse allo sviluppo del P2P o ritenendosi addirittura danneggiato da esso, oppure per semplice vandalismo, mette intenzionalmente in condivisione file infetti, corrotti o non corrispondenti a quanto dichiarato.

Difesa della privacy: 

Fra i modi per tutelare la privacy, si possono ricordare l’adozione di:

  • un proxy per la connessione del client che mascheri il vero IP dell’utente,
  • una rete di anonimato, come quella offerta dal programma Tor (in cui il proxy è comunque incluso),
  • servizi che creano una Virtual Private Network,
  • installare software come I2Phex o PeerBlock,
  • crittografia e offuscamento di protocollo,
  • una block-list degli indirizzi IP ritenuti malevoli da inserire nel client stesso (qualora esso supporti tale funzionalità),
  • caricare liste di server (file di testo con estensione.met) da siti che certificano i server e i contenuti.

Controversie legali:

I tipi di file maggiormente condivisi in questa rete sono gli mp3, o file musicali, e i DivX i file contenenti i film. Questo ha portato molti, soprattutto le compagnie discografiche e i media, ad affermare che queste reti sarebbero potute diventare una minaccia contro i loro interessi e il loro modello industriale. Di conseguenza il peer-to-peer divenne il bersaglio legale delle organizzazioni che riuniscono queste aziende, come la RIAA e la MPAA. Per esempio il servizio di Napster venne chiuso da una causa intentata dalla RIAA. Sia la RIAA che la MPAA spesero ingenti quantità di denaro al fine di convincere i legislatori ad approvare restrizioni legali. La manifestazione più estrema di questi sforzi risale al gennaio 2003, quando venne introdotto, negli U.S.A., un disegno di legge dal senatore della California Berman nel quale si garantivano, al detentore del copyright, i diritti legali per fermare i computer che distribuivano materiale tutelato dai diritti d’autore. Il disegno di legge venne respinto da una commissione governativa Statunitense nel 2002, ma Berman lo ripropose nella sessione del 2003. Risale, invece, al 2004 la “Legge Urbani” nella quale viene sancita la possibilità di incorrere in sanzioni penali anche per chi fa esclusivamente uso personale di file protetti.

Però nel 2007 la III sezione penale della Cassazione con la sentenza numero 149/2007, ha accolto il ricorso presentato da due studenti torinesi, condannati in appello ad una pena detentiva, sostituita da un’ammenda, per avere «duplicato abusivamente e distribuito» programmi illecitamente duplicati, giochi per PlayStation, video CD e film, «immagazzinandoli» su un server FTP.

I reati contestati ai due ricorrenti erano quelli previsti dagli articoli 171 bis e 171 ter della legge sul diritto d’autore, la numero 633/41, sottoposta a tutta una serie di modifiche in anni recenti: nell’ultima formulazione, il primo prevede «la punibilità da sei mesi a tre anni, di chiunque abusivamente duplica, per trarne profitto, programmi per elaboratore o ai medesimi fini importa, distribuisce, vende, detiene a scopo commerciale o imprenditoriale o concede in locazione programmi contenuti in supporti non contrassegnati dalla Siae»; il secondo punisce con la reclusione da uno a quattro anni chi «riproduce, duplica, trasmette o diffonde abusivamente, vende o pone altrimenti in commercio, cede a qualsiasi titolo o importa abusivamente oltre cinquanta copie o esemplari di opere tutelate dal diritto d’autore e da diritti connessi».

Ebbene, per la Cassazione in primo luogo è da escludere per i due studenti la configurabilità del reato di duplicazione abusiva, attribuibile non a chi in origine aveva effettuato il download, ma a chi semmai si era salvato il programma dal server per poi farne delle copie. Ma soprattutto «deve essere escluso, nel caso in esame, che la condotta degli autori della violazione sia stata determinata da fini di lucro, emergendo dall’accertamento di merito che gli imputati non avevano tratto alcun vantaggio economico dalla predisposizione del server Ftp». Per «fine di lucro», infatti, «deve intendersi un fine di guadagno economicamente apprezzabile o di incremento patrimoniale da parte dell’autore del fatto, che non può identificarsi con un qualsiasi vantaggio di genere; né l’incremento patrimoniale può identificarsi con il mero risparmio di spesa derivante dall’uso di copie non autorizzate di programmi o altre opere dell’ingegno, al di fuori dello svolgimento di un’attività economica da parte dell’autore del fatto, anche se di diversa natura, che connoti l’abuso».

Da quel momento in poi le reti peer-to-peer si espansero sempre di più, si adattarono velocemente alla situazione e divennero tecnologicamente più difficili da smantellare, spostando l’obiettivo delle major sugli utenti. Qualcuno ha cominciato ad affermare che queste reti potevano diventare un modo per consentire a malintenzionati di nascondere la propria identità. Altri dicevano che per essere completamente immuni dalle major fosse necessario creare una rete wireless ad hoc in cui ogni unità o computer fosse connessa in modo equivalente (peer-to-peer sense) a quella vicina.

È bene precisare che in Italia chiunque effettua il download di un’opera protetta dal diritto d’autore e la mette in condivisione commette un illecito penale (è l’art. 171, lett. a-bis, lda). La norma è chiarissima: è punito chiunque lo fa “senza averne diritto, a qualsiasi scopo e in qualsiasi forma”. La pena è una multa da 51 a 2.065 euro, ma è possibile evitare il processo penale pagando la metà del massimo previsto (quindi circa mille euro) e le spese del procedimento. I programmi di P2P più diffusi mettono automaticamente in condivisione un file mentre questo viene scaricato, per cui se viene effettuato il download di materiale protetto da diritto d’autore mediante uno di essi si concretizza la fattispecie penale.

Inoltre, la violazione del suddetto articolo comporta altresì l’irrogazione di una sanzione amministrativa pari al doppio del prezzo di mercato dell’opera o del supporto oggetto della violazione (art. 174-bis lda), ma detta cifra non può essere mai inferiore a 103 euro.

Spero di aver dato un’idea di questo mondo ancora sconosciuto ai più, sicuramente molto ostico per chiunque non mastichi di informatica.

Penso sia comunque importante conoscere almeno le basi di una realtà che entrerà prepotentemente sempre più nella vita di tutti noi ed è, almeno per quanto mi riguarda, affascinante.

ElO

Bibliografia:

  • Bitcoin Manifesto  – 14 dic 2015 di Satoshi Nakamoto

  • Fergal Reid e Martin Harrigan, An Analysis of Anonymity in the Bitcoin System, in arXiv:1107.4524 [physics], 22 luglio 2011.
  • ^Cynthia Dwork e Moni Naor, Pricing via Processing, Or, Combatting Junk Mail, Advances in Cryptology (ps), in CRYPTO’92: Lecture Notes in Computer Science No. 740, Springer, 1993.
  • ^ Adam Back, HashCash, su hashcash.org. Popular proof-of-work system. First announce in March 1997.
  • ^ Eran Gabber, Markus Jakobsson, Yossi Matias e Alain J. Mayer, Curbing junk e-mail via secure classification, in Financial Cryptography, 1998, pp. 198–213.
  • ^ Markus Jakobsson e Ari Juels, Proofs of Work and Bread Pudding Protocols, in Communications and Multimedia Security, Kluwer Academic Publishers, 1999,. This paper formalizes the idea of a proof of work (POW) and introduces “the dependent idea of a bread pudding protocol”, a “re-usable proof of work” (RPOW) system.
  • ^ Xiao-Feng Wang e Michael Reiter, Defending against denial-of-service attacks with puzzle auctions (PDF), in IEEE Symposium on Security and Privacy ’03, maggio 2003.
  • ^ Matthew K. Franklin e Dahlia Malkhi, Auditable metering with lightweight security, in Financial Cryptography ’97, 1997. Updated version May 4, 1998.
  • ^ Ari Juels e John Brainard, Client puzzles: A cryptographic defense against connection depletion attacks, in NDSS 99, 1999.
  • ^ Brent Waters, Ari Juels, John A. Halderman e Edward W. Felten, New client puzzle outsourcing techniques for DoS resistance, in 11th ACM Conference on Computer and Communications Security, 2004.
  • ^ Martín Abadi, Mike Burrows, Mark Manasse e Ted Wobber, Moderately hard, memory-bound functions, in ACM Trans. Inter. Tech., vol. 5, nº 2, 2005.
  • ^ Cynthia Dwork, Andrew Goldberg e Moni Naor, On memory-bound functions for fighting spam, in Advances in Cryptology: CRYPTO 2003, vol. 2729, Springer, 2003.
  • ^ Fabien Coelho, An (almost) constant-effort solution-verification proof-of-work protocol based on Merkle trees, su Cryptology ePrint Archive, Report.
  • ^ Mehmud Abliz e Taieb Znati, A Guided Tour Puzzle for Denial of Service Prevention, in Proceedings of the Annual Computer Security Applications Conference (ACSAC) 2009, Honolulu, HI, dicembre 2009.

Related posts