Moneta contante per pagamenti a distanza

tratto da I Bitcoin sotto il materasso, kindle book.

a-piece-by-the-brazilian-artist-cranio-depicting-a-man-flushing-money-down-a-toilet-bowl

Così come conserviamo le banconote in un portafogli di pelle o di stoffa – a proposito dove ho messo il mio? – così ci serve uno strumento per maneggiare i Bitcoin, questo strumento in genere è un software che si chiama wallet (che fantasia). Sgombriamo subito il campo: i Bitcoin non sono memorizzati dentro il wallet. I Bitcoin non esistono in forma di oggetti distinti. I nostri Bitcoin sono in realtà la somma di tutte le transazioni che contengono un credito non ancora speso e che può essere speso solo grazie ad una delle nostre chiavi private.

Ricordiamo qui che la chiave privata è l’unico elemento che consente di spendere una cifra che risulta accreditata alla corrispondente chiave pubblica. No chiave privata no money.

Sì, è una cosa un po’ complicata, ma grazie al wallet diventa abbastanza semplice. Il wallet è uno strumento che appunto permette di memorizzare in modo sicuro tutte le nostre chiavi, sia pubbliche che private. Questa è la base, il wallet minimale. Come potete capire è solo un sistema per memorizzare le chiavi e quindi, più che un portafogli, sarebbe un portachiavi. Infatti non potete fare nient’altro, neanche un pagamento. Questo genere di wallet potete anche realizzarlo con la carta, non ha bisogno di essere un software o un dispositivo elettronico. Infatti esiste il paper wallet che è un modo pratico per conservare i propri Bitcoin.

Ma tra conservare e gestire c’è una bella differenza. Se per esempio voglio inviare un pagamento, devo per forza firmare digitalmente una transazione. A questo punto è necessario un software e un dispositivo che lo esegua.

Un esempio di wallet che gestisce le chiavi di cifratura e consente di firmare e trasmettere alla rete transazioni è Electrum, che, per inciso, è quello che uso io. E’ molto semplice da usare e consente di memorizzare le chiavi sotto forma di una serie di parole del dizionario, nel caso si volesse averne una copia mnemonica.  Permette di ricevere e spedire pagamenti, generare nuovi indirizzi, ottenere il saldo attraverso una connessione alla rete. Notare che un wallet di questo tipo non memorizza la Blockchain nel nostro disco, si limita a creare transazioni che poi spedisce ad altri nodi della rete che eventualmente potranno verificarle attraverso l’esplorazione della Blockchain.

Se invece vogliamo anche conservare una copia locale della Blockchain allora il nostro sarà un nodo completo a tutti gli effetti e potrà non solo creare nuovi indirizzi, gestire le chiavi e firmare transazioni, ma potrà calcolare il saldo e verificare ogni transazione nostra o di altri sulla Blockchain. In teoria potrebbe anche cercare di inserire nuovi blocchi nella Blockchain attraverso il mining, ma il mining richiede hardware specializzato per competere nella proof-of-work. Un wallet di questo tipo è il software Bitcore, ricordiamoci che la Blockchain ha una dimensione di diverse decine di GB e quindi ci vorrà del tempo prima di poterne avere una copia aggiornata.

Se, all’altro estremo, non vogliamo occuparci di niente e lasciare che qualcun altro lo faccia per nostro conto allora possiamo usare un wallet online.

Precisiamo che in questo caso non è molto diverso da un conto corrente bancario e contrario allo spirito del Bitcoin che delle banche vorrebbe farne a meno.

In un certo senso è come se chiedessimo a qualcuno di tenerci il borsellino, quindi o è un segretario che ci segue ovunque o è un conto in banca. A volte può essere comodo, ma personalmente ritengo sia meglio tenere la maggior parte dei propri coin in un wallet locale (gestito direttamente nel nostro PC) o, se non intendiamo usarli per molto tempo, in un paper wallet dentro una cassaforte.

Se qualcun altro ha le nostre chiavi potrebbe in teoria fare tutto quello che vuole con i nostri coin. Anche se in buonafede, potrebbe semplicemente perderli.

In questo senso il pagamento in Bitcoin, quando gestiamo direttamente le nostre chiavi, ha delle caratteristiche uniche:

è come un pagamento in moneta contante, posso pagare qualcuno che magari sta di fronte a me in questo momento generando una transazione che lui o io potremo poi trasmettere ai nodi della rete per inserirla nella Blockchain. Potremmo, in teoria, scrivere la transazione in un biglietto e spedirla con un piccione ad un nodo della rete.

E’ pseudo anonimo e riservato come uno scambio di banconote tra due facce sconosciute in mezzo ad una folla di facce sconosciute. Alla rete basta sapere che chi paga usa una certa chiave privata e chi riceve ha una cerca chiave pubblica. Non serve conoscere le vere identità.

È come un libretto di assegni che viene firmato con una firma digitale, ma senza avere una banca che emette il libretto, lo possiamo creare noi quando vogliamo e usarlo, a patto che ci accreditiamo in qualche modo dei coin.

E’ come un bonifico perché può avvenire tra due persone che stanno ai poli opposti del pianeta ma guarda caso è molto più rapido, la visibilità del pagamento è immediata, la sua conferma (cioè la non revocabilità) richiede circa un’ora che è molto meglio di quanto si ottiene con un bonifico bancario.

A me piace pensare che funziona come una moneta contante ma per pagamenti a distanza. Un paradosso? Qualcosa che non ha un equivalente fisico, a meno che non ci dotiamo di un borsellino molto robusto, una catapulta enorme ed una mira eccezionale.

Hawking

Black hole sun
Won’t you come
And wash away the rain
Black hole sun
Won’t you come
Won’t you come – won’t you come

(Soundgarden)

E così eccomi che mentre scivolo giù dalla condotta di aerazione perdo l’equilibrio e cado con un bel tonfo vicino all’ultima fila. In molti si girano verso di me, ma io impavido strappo un microfono dalle mani di una hostess e chiedo – Prof. Hawking, perché non sono riuscito ad arrivare in orario al suo talk? Il tempo, il tempo, il tempo è finito, anche questa volta. La stella a neutroni, la relatività, la massa, non mi hanno aiutato a rallentare il tempo.

387796277_858f2fb5b9

Ma io posso ancora arrivare in orario e caccio via il delirio. Migro da una parte all’altra della città per prendere la bambina all’uscita di scuola, rimbalzo da qualche altra parte per affidarla agli amici (grazie Simone) – diciamo che a lei la fisica dei buchi neri ancora non interessa – e poi ancora due treni per arrivare alla conferenza.

E’ notte, piove. Strano non pioveva più in questa città in cui,  dovete sapere, piove meno che a Istanbul.  L’Imperial College non è poi così vicino alla stazione. Lo so, ogni giorno una bella passeggiata, ma questa volta mi metto a correre nel buio. E’ un’ora strana per correre, la gente è rilassata e va verso i pub o torna a casa. Che ci fa uno controcorrente che corre come un podista. Leggo la domanda negli occhi di un passante mentre metto un piede in una pozzanghera e gli vorrei spiegare con che corro perché sto per perdere il seminario di Hawking sul cosmo la vita e tutto quanto il resto. Non sembra capire, magari per lui è normale. Come se in Italia si corresse per vedere Zichichi. Dài, non può essere così. Lascio sfilare il pensiero mentre salto da un marciapiede all’altro di Cromwell Rd verso Queens Gate. Non ce la faccio, mi manca il fiato. Ma invece al telefono mi dicono che ce la posso fare. Angela è già lì, mi aspetta, entriamo, ce l’ho fatta.

screenshot-2016-10-22-11-49-40

L’atmosfera è carica, si dice così. Sì, c’è molta emozione. E’ bello esserci. Si sente un po’ il privilegio di aver ottenuto un posto. Il seminario poi è un seminario sulla cosmologia ma con un linguaggio abbastanza facile e una sola slide di formule, di cui nessuna è un’equazione differenziale.

Mi chiedo se non ci sia qualcosa di morboso in questa scena. Lui è immobile come d’altronde non può evitare di essere e muove solo una guancia per operare le slide e azionare il vocalizzatore. Noi potremmo essere altrove e vedere un video. Sarebbe lo stesso, non possiamo stimolare in lui nessuna reazione visibile. Eppure tutti sentiamo che è una presenza speciale.

Mi chiedo perché lui usi ancora una voce robotica invece di qualcosa di più umano, magari più simile alla sua voce di un tempo. Siamo nel 2016, possibile che nessuno gli abbia offerto questa opzione. O forse lui preferisce così.

Il suo ultimo lavoro si intitola Soft Hair on Black Holes, letteralmente Peli morbidi sui buchi neri. Un titolo che solo uno come lui potrebbe osare visto l’allusione praticamente pornografica che mette subito in luce la forte carica ironica del personaggio. A parte tutto è stato un piacere ricevere una piccola lezione di fisica e di termodinamica da una leggenda vivente.

Interessante anche il breve question time concesso alla fine. Naturalmente le domande erano state selezionate in precedenza via Twitter, ma i presenti hanno avuto il microfono a disposizione per poterle riproporre dal vivo. Tra le altre gli è stato chiesto se un giorno l’intelligenza artificiale dominerà il mondo. Recentemente Hawking si è espresso in termini preoccupati sulla questione. In questa occasione ha risposto che in effetti l’intelligenza umana ha avuto bisogno di miliardi di anni per divenire quello che è, mentre la capacità di calcolo dei computer raddoppia ogni 18 mesi circa (non più in realtà ndr.), quindi prima o poi ci sarà un momento in cui qualcosa di simile potrebbe succedere. Solo questione di tempo, e per quel tempo sarà bene essere in buoni rapporti con le macchine.

Per il tuo prossimo progetto conia una nuova moneta

Chiedere i soldi a family and friends per finanziare il nostro prossimo progetto è naive, andare da un business angel demodé, e i venture capital? i pitch? gli elevator pitch, che già nel nome suggeriscono l’immagine di un disperato che segue il capitalist dappertutto fin quando quest’ultimo gli concede giusto i 30 secondi di ascensore che separano il marciapiede dall’attico con vista. Oggi come minimo si fa un crowdfunding: bel video, prototipo di carta, facce sorridenti e poi molto social. Eppure anche questo sta passando, perché è più o meno alla portata di tutti, quindi lo fanno tutti, quindi tutto sparisce nel rumore delle tante proposte. Oggi ci sono i Bitcoin, quindi che bisogno c’è dei soldi? (ndr. comunque scherzo se non si fosse capito, donazioni in dollari, euro, etc. sono sempre benvenute)

Perché quello che oggi costa dieci, domani costa venti! Dopodomani costa trenta! I soldi passano, l’arte resta! (Guzzanti, da L’ottavo nano, episodio 8)

Ethereum

Vitalik è un ragazzino di 20 anni o poco più, look molto nerd, magrissimo, probabilmente un genio. Scrive di Bitcoin, quindi un giornalista. Non solo, scrive codice,  quindi un programmatore. Ha un’idea, decide di andare oltre Bitcoin, quindi un inventore. Perchè limitarsi ad una moneta per computer? Perché non mettere in piede un intero universo in cui i computer eseguono dei contratti digitali molto più articolati. Vitalik ha in mente il computer definitivo che non può essere mai spento. Il progetto è bello, la community Bitcoin lo ignora ma lui non si da per vinto. Lo chiama Ethereum e apre una prevendita della nuova valuta che sarà la linfa del nuovo sistema. E’ come un crowdfunding, compri ether usando Bitcoin, usi una valuta digitale esistente per comprarne una che esisterà (così speri).

L’avidità è giusta, l’avidità chiarifica (G. Gekko)

Se non bastassero i livelli di virtualizzazione (ether <- bitcoin <- dollari/euro <- debito <-sudore dei lavoratori onesti) visti fin qui sappiate che si può sempre andare oltre. Che ne dite di usare proprio Ethereum per costruire un contratto che emette azioni di un’organizzazione che non esiste nella realtà delle camere di commercio e dei notai, ma che esiste nella blockchain. Una specie di azienda fatta esclusivamente di chiavi crittografiche, attestazioni digitali, agenti artificiali. Troppo tardi! Ci hanno già pensato quelli di TheDAO. Prevendita di TheDAO token per circa un mese, a Giugno 2016, vari milioni di ether incassati dal contratto, un controvalore in $ di circa 150 milioni. Peccato che però è andato tutto all’aria, un solo piccolo problema di codice ha trasformato TheDAO nella vacca da mungere. Gli hacker si sono sifonati via tutto, nella realtà parallela numero 1, mentre non è successo nulla nell’universo parallelo numero 2. Di che parlo? Troppo lungo, ci vuole un altro post per raccontarlo. Per ora accontentiamoci di un link

Synereo

L’ultima in ordine di tempo, almeno tra quelle che riesco a seguire. Una nuova piattaforma di criptovaluta, un nuovo linguaggio per smart contract, una nuova raccolta fondi, ancora attiva per comprare gli AMP (la loro valuta appunto) in cambio di Bitcoin. Tuttavia anche carte e bonifici sono ben accetti. Hanno già raccolto un bel po’, per fare cosa? La loro idea è una blockchain ed una moneta fatta per dare supporto ad una social network decentralizzata dove si viene retribuiti in base ai contenuti. La chiamano Attention Economy. In questo mi ha ricordato la nostrana Paymeabit (ndr. ragazzi, forse dovevate creare una moneta anche voi).

screenshot-2016-10-13-23-15-44

La cosa che mi ha colpito di Synereo è che la loro moneta era già scambiata negli exchange e aveva raggiunto una quotazione tale che i developer, nonché proprietari della maggiorparte della moneta, hanno deciso di “bruciare” 140 milioni di dollari (in controvalore) per dare credibilità al loro progetto. Troppi coin in mano ai developer non sarebbe apparso equo agli occhi della community.

screenshot-2016-10-13-23-45-47

 

 

Cripto-zoologia delle conferenze internazionali

Ripescato da qualche vecchio post mi ha fatto sorridere questo resoconto della mia partecipazione ad una conferenza ICT a Barcellona di qualche anno fa. Mi son divertito oggi a rileggerlo e ricordo di essermi divertito anche di più a scriverlo allora. Insomma lo condivido di nuovo, tanto WordPress è pagato per quest’anno.

—-

Le conferenze internazionali nel settore Internet/Computer Science sono un interessante ecosistema in cui prevalentemente si muovono molti nerd, qualche geek, e pochissime donne. A parte questa classificazione molto generale si possono distinguere alcune interessanti sottospecie:


il linuxiano: il linuxiano è un convinto promotore del software libero e non usa altro che software free per tutto il suo lavoro. Normalmente si scontra con la dura realtà dei driver. Il suo ubuntu non gli consente di collegarsi al proiettore, allora chiede in prestito al chair un laptop windows o mac dove con una pennina usb copia la sua presentazione fatta ovviamente con libreoffice che naturalmente non trova installato, e come minimo deve scalare dalla presentazione interattiva ad un semplice pdf e nei casi più gravi la sua pennina è formattata con algoritmi esoterici e non viene riconosciuta.


il maturo: il maturo è un uomo di circa 50-55 anni distinto e ben vestito contrariamente alla media dei partecipanti che sono vestiti con pantalone di panno color anonimo, camicia a quadri e le collage (fanno eccezione i geek con maglietta spiritosa, pizzetto e orecchino). Spesso viene dai settori ricerca e sviluppo delle imprese private e non dalle università poiché queste ultime hanno a disposizione giovani dottorandi e post doc da inviare come carne da cannone alle numerose conferenze in cui il mega prof mette solo la firma sugli atti a stampa.


l’ansioso: l’ansioso è in genere un giovane ricercatore alle prime armi, non si azzarda mai a fare domande perché ha paura che tutti si girino a guardare con l’espressione di “ma che diamine stai dicendo?”. Quando sale sul palco a parlare si porta dei fogli scarabocchiati per leggere le parti che non ricorda (cioè tutte) e in genere impiega parecchio prima di riuscire a far partire la presentazione, quasi quanto il linuxiano, ma per motivi diversi.


il pomeridiano: gli organizzatori tendono a programmare le relazioni più interessanti nella mattina, prima le migliori e poi a scalare. Quelle accettate un po’ per pietà finiscono nel dopo pranzo e i relatori devono fare i conti con la tristezza di una sala semivuota in cui tutti i partecipanti stanno facendo altro sul loro laptop e non hanno nessun interesse in quel che viene spiegato. A volte è una fortuna anche per i relatori che non ricevono quasi mai domande cattive.


il geek: il geek è un intruso in mezzo ai nerd, ne condivide in parte il vocabolario, anche se non ne capisce completamente il significato. Partecipa solo per dovere, altrimenti andrebbe ad un convegno su moda e social media. Il geek sfoggia sempre un mac, veste in modo più ricercato ha uno zainetto al posto della valigetta da ingegnere e le sue presentazioni fatte con keynote sono sempre più belline perché la grafica con il mac si sa che viene meglio. Il geek è sempre spigliato e più social del nerd, difficilmente rimane da solo a bere un caffè fissando una colonna ed in genere non si impappina più di tanto quando parla in inglese.


quello della sicurezza: in tutte le conferenze internet che si rispettano i relatori sfoggiano idee che vanno dallo strampalato al normale e fino all’avveniristico. Software per astronavi, sensori nel cervello delle mucche, etc. sono mostrati come a dire “avete visto, mica ci avevate pensato”. Per quanto possa essere figa una tecnologia ICT presentata ci sarà sempre uno che si alzerà e vi domanderà “ma la sicurezza? e la privacy? ci avete pensato? come la proteggete?”


il chair timido: il chair di una sessione ha l’ingrato compito di presentare i relatori, di far rispettare i tempi, e purtroppo per lui … seguire le relazioni. Non può distrarsi con facebook o con Ruzzle. Una legge non scritta vuole che alla fine di una relazione noiosa o troppo dura da capire laddove nessuno osa alzare la mano debba essere il chair a fare una domanda. Nessun relatore può andar via senza almeno una domanda, poiché tornato a casa potrà dire che gli sono state rivolte domande e alla richiesta di precisazioni potrà rispondere senza mentire “qualche domanda, non ricordo quante, meno di dieci”. Il chair è dunque una figura essenziale e deve incutere timore ed esprimere prestigio. Purtroppo essendo il chair spesso un nerd come gli altri soffre di alcune sindromi come l’incapacità di farsi notare. Ciò e specialmente grave quando la relazione va avanti oltre il tempo stabilito. Il chair timido non riesce a far vedere il suo fogliettino con la scritta “time over” al relatore, non osa alzare la voce perché non gli è connaturato e naturalmente non si sbraccia perché chissà cosa potrebbero pensare gli altri. A causa di ciò alcuni relatori iper-verbosi sforano di 15 minuti senza problemi.

I computer del futuro non si programmano, si addestrano

 

I computer del passato non si programmavano, si cablavano

La logica cablata  di tanti anni fa era quella dei flipper e dei jukebox, quando in mezzo agli organi meccanici si alzavano i primi vagiti dell’elettronica. La logica era abbastanza semplice: premi un tasto si accende una lampada, arriva un suono si muove un braccio etc. I circuiti più complessi potevano realizzare funzionalità più interessanti, pensiamo agli ascensori, ai televisori, agli impianti stereo etc. Cablata perché a seconda della logica che volevamo realizzare dovevamo proprio attaccare i fili in modo diverso.

1200px-visible_pinball_iii_-_pacific_pinball_museum

Poi però è arrivata l’elettronica digitale e i circuiti programmabili, in pratica invece di rimontare l’elettronica in modo diverso a secondo dell’applicazione siamo passati ad un solo tipo di circuito, il processore, capace di eseguire un programma. Il programma cambia, il processore è sempre lo stesso.

I computer del presente non si cablano, si programmano

Questa rivoluzione ha portato a tutto quello che conosciamo oggi, dal circuito di controllo degli ascensori, al laptop, al cellulare, ai mega server di amazon etc. Naturalmente abbiamo avuto molte generazioni di processori, ma di fatto qualche dozzina di prodotti sono il cuore di miliardi di installazioni.

cpu

Questa è stata una vera è propria rivoluzione, che di fatto ha reso l’elettronica irrilevante e ha incoronato l’informatica come tecnica assoluta per il dominio del mondo.La rete, poi, ha reso tutto questo liquido e globale e as a service. Eppure anche quest’era forse sta per giungere ad una fine.

I computer del futuro non si programmano, si addestrano

e forse siamo all’alba di una nuova rivoluzione, così come la CPU è divenuto il componente definitivo nel mondo dell’elettronica, forse dobbiamo ora salutare la nascita del componente definitivo nel mondo dell’informazione. Il classificatore/decisore/regressore, insomma un modello matematico/statistico capace di ingurgitare dati e fornire predizioni. Un componente in grado di fare qualcosa simile in fondo a quello che fa il cervello umano, no non dico pensare, ma riconoscere, giudicare, valutare. Parole come deep learning, reti neurali, machine intelligence, etc. sono tutte variazioni sul tema ma il concetto è sempre lo stesso. Macchine che apprendono.

machine_learning

Apprendono a riconoscere un tumore da una tac, o lo stile di Van Gogh da un’ immagine quello che conta è che queste macchine forse non pensano e non sono senzienti, ma riconoscono (riconoscenti però suona male)

La conseguenza diretta di tale trasformazione avviene prima di tutto sull’hardware stesso. Abbiamo assistito all’evoluzione dei processori dallo z80 all’I7 e come questi siano divenuti delle macchine elettroniche sempre più complesse e sempre più articolate con set di istruzioni in continua crescita proprio per la loro natura general purpose. Cioè le CPU devono accomodare le esigenze di tutti i possibili programmi che potrebbero in teoria essere scritti e poi girare su di loro.

Ma cosa succede quando ci si rende conto che dal brodo primordiale di tutti i programmi possibili e immaginabili comincia ad emergere una sola classe di questi, elitari e intelligenti, non nel senso che pensano, ma nel senso che rendono per sé stessi “intelligibile” e codificabile quello che per i normali programmi non lo sarebbe. Addestrabili a “giudicare” e separare vero da falso, tumore da rumore, Van Gogh da Gaguin. Tradurre il parlato, riconoscere un viso, guidare un’auto, riconoscere un pericolo, riconoscere un nemico, etc.

Invece di tanti software diversi programmati per fare cose diverse, pochi software addestrabili a risolvere infiniti problemi diversi.

Ma allora forse ci servono CPU diverse da quelle di oggi. In fondo una volta capito come deve essere fatto il software addestrabile, quello che ci serve è un circuito elettronico tutto sommato meno generalista e più specializzato. Se la mia elettronica deve far girare un solo programma non ci interessa più che sia programmabile in senso lato, torniamo a qualcosa di “cablato”.

Infatti questo succede in altri settori, non necessariamente legati alla AI. il Bitcoin mining è un caso emblematico, verificare le transazioni Bitcoin e generare nuovi coin è stata un’attività altamente proficua, tant’è che per ottenere il massimo di prestazioni con il minimo consumo energetico sono stati realizzati dei computer ASIC, non più CPU generaliste, ma elettronica specializzata e pre-programmata per fare una cosa sola, il mining dei Bitcoin.

I linguaggi di programmazioni diventano irrilevanti

 

uaqxgo5

Non vuol dire che non serviranno più, e quindi ci saranno sempre job opportunities per developer e architect. Ma se ritorniamo allo scenario dove invece di tanti software diversi programmati per fare cose diverse, abbiamo pochi software addestrabili a risolvere infiniti problemi diversi, non abbiamo più un programmatore che si scervella tra cicli for, chiamate a funzioni, e infiniti cicli di trial and error per vedere il suo programma eseguire tutte le linee di codice.  Abbiamo invece un software scatola nera che ingurgita dati e sputa sentenze, una rete neurale capace di classificare ad esempio … e a questo punto non è tanto una questione tra Java, Python, C++, etc. le guerre di religione nei forum nerd saranno su Boltzmann machine Vs Convolutional network.

Google ha creato la Tensor Processing Unit

Tensorflow è il nuovo framework Google per il deep learning (link) che si aggiunge a varie altre soluzioni nel settore. La caratteristica di TensorFlow è che gira allo stesso modo su una macchina o su un cluster e prevede il deployment su GPU. Ma per aumentare le prestazioni perché non costruire un hardware dedicato allo scopo? Ecco che nasce TPU

tpu-2-100661805-large

Le Google TPU sono circuiti integrati per ad-hoc (ASICs) sviluppati appositamente per l’apprendimento automatico. Rispetto ai processori, sono progettati in modo esplicito per grossi volumi di dati, usano una minore precisione (8 bit) e non dispongono di hardware per rasterizzazione / texture mapping (non gli serve).
Google ha dichiarato che le sue TPU sono state utilizzate nella sfida di Go: AlphaGo Vs Lee Sedol.

Attendiamo presto ASIC per deep learning da altri costruttori.