lunedì 24 aprile 2017

Tracciamento delle ricerche: breve storia triste

Da un po' di tempo, più di un anno, passando in una strada di un quartiere costruito nell'arco degli ultimi 5/6 anni, noto che alcune villette sono in vendita da parte del costruttore. Per pura curiosità (non ho nessun motivo di comprarne una) ho deciso di vedere se riuscivo a capirne il costo , per vedere se la difficoltà a vendere poteva aver fatto scendere il prezzo, in rapporto alla media del quartiere in questione.

Nel farlo, ho deciso di fare una prova: invece di affidarmi al motore di ricerca predefinito, cioè Google (anche perché avevo aperta la posta, quindi qualsiasi ricerca avessi fatto sarebbe finita nella fantastica cronologia del mio profilo che Google, con tanto affetto, tiene "per me"...), ho provato ad utilizzare un altro motore di ricerca, ossia DuckDuckGo, che promette (e non mi risulta che sia una fandonia) di non tracciare la ricerche.

Indovinate un po'? Oggi, utilizzando lo stesso browser, prima di aver fatto accesso a qualsivoglia servizio, su un banalissimo sito di notizie (ma pieno di annunci Adwords) mi ritrovo offerte di case di quel quartiere e zone limitrofe.
Morale: utilizzare un motore di ricerca diverso non è bastato, la prossima vola mi premurerò di utilizzare anche un browser diverso, nel quale magari avrò modificato le policy dei coockies per farli eliminare alla fine di ogni sessione. Vi farò sapere.

giovedì 20 aprile 2017

Social o utenti: di chi la responsabilità?

Credo tutti abbiano sentito la notizia dell'assassinio casuale di anziano afroamericano da parte di un altro afroamericano, che ha ripreso e poi postato il video su Facebook (asserendo tra l'altro di aver commesso altri omicidi, ma al momento non ho sentito conferme, per fortuna). Ebbene, nella tragedia sembra che un po' tutti i giornali abbiano dato particolare risalto al ritardo di Facebook nel cancellare il video in questione, che è stato visto e condiviso da un certo numero di persone.

Prima di andare avanti faccio una doverosa premessa: non sono su Facebook per scelta, perché non mi piace come viene utilizzato dagli utenti e gestito dai suoi manager; ma in questa vicenda mi sembra faccia un po' da capro espiatorio, anche nei confronti degli altri social network, per cui il mio ragionamento è in realtà totalmente applicabile anche a questi ultimi.

L'avvento dei social network è stato un cambiamento dirompente nella società umana: ormai chiunque è in grado di produrre contributi (scritti, video, audio, immagini, etc) e di condividerli potenzialmente con il mondo intero. I genitori postano le foto dei loro bambini; i fotografi le loro migliori opere; gli adolescenti le loro emozioni; i blogger i loro articoli; e via dicendo. Ma il mondo non è solo fatto di genitori, fotografi, adolescenti e blogger: è fatto anche di ladri, terroristi ed assassini. E così succede che i ladri postino le loro malefatte, i terroristi le loro rivendicazioni e gli assassini i loro omicidi. Quindi che questi atti criminali finiscano sui social, a mio parere non deve sorprendere nessuno. Per fortuna, in un certo senso: così aiutano le forze dell'ordine a identificarli.
E non deve nemmeno sorprendere che vengano rimossi: in definitiva, i social nascono con ben altri scopi, non certo quello di aiutare i criminali. Quindi nessuna sorpresa se il video in questione è stato rimosso. Il problema sono i tempi. 3 ore, dicono i giornali: troppi, perché nel frattempo il video è stato visto e condiviso, probabilmente anche commentato. A me 3 ore non sembrano molte, anzi mi sembrano poche. Bisogna considerare i tempi tecnici per cui arrivano le prime segnalazioni (tra le moltissime che arrivano in continuazione), venga presa visione dai responsabili, che probabilmente devono contattare la polizia, etc... infine la rimozione vera e propria.

Io, invece, vorrei andare a chiedere uno ad uno (indipendentemente da quanti siano) a coloro che hanno visto il video, l'hanno condiviso o hanno messo un "mi piace": ma cosa c'hai nella testa al posto del cervello? Quale putrida ed inutile materia? Perché accidenti l'hai fatto? Purtroppo mi do anche una risposta da solo: immagino che molti mi risponderebbero che semplicemente hanno pensato fosse un video fasullo, magari molto ben fatto, e che mai avrebbero pensato potesse essere reale. Beata ingenuità!

Ecco che torniamo quindi allo stesso tema che già viene affrontato con le fake news (o bufale per dirla all'italiana): ossia la non capacità da parte di molti utenti di riconoscere la finzione dalla realtà, soprattutto sui nuovi media che viaggiano su internet; la non consapevolezza dei meccanismi che stanno dietro questi atti; e soprattutto la mancata presa di responsabilità per evitare che si diffondano e ripetano. E la soluzione, palesemente semplice: l'educazione.

Oggi, su questo episodio, difendo Facebook, che ha avuto la sola colpa di essere il più diffuso e quindi il più appetibile per il criminale di turno. Domani difenderò gli altri social, pur con tutti i loro difetti, per episodi simili (ce ne saranno, purtroppo...). D'altra parte, pur riconoscendo che i social sono principalmente destinati al diletto, non difenderò mai chi li utilizza spegnendo il cervello.

lunedì 17 aprile 2017

Non ti sopporto più (ovvero: la password)

La navigazione su internet, o l'utilizzo di app, ormai sembra non poter fare a meno della famigerata password: quasi ovunque è richiesto registrarsi e quindi impostarne una. I risultati, ovviamente, sono questi:
http://mobile.hdblog.it/2017/01/16/123456-password-utilizzata-2016/
Ora, finché queste password sono utilizzate per servizi banali (per esempio, registrare le ricette preferite), passi... ma se sono utilizzate per la posta elettronica (privata: quella lavorativa non la prendo nemmeno in considerazione, altrimenti qualcuno rischia che lo sbrani) o per il conto corrente online, beh, allora tutto il male che può accadere è pienamente meritato!

Quindi, poiché sono un male necessario, cerchiamo di capire l'importanza delle password e come gestirle.

La password è uno dei due elementi fondamentali di ciò che comunemente vengono chiamate "credenziali"; l'altro è il nome utente (o username, più comunemente). Questa coppia fa sostanzialmente due lavori: con lo username avviene l'identificazione, cioè il riconoscimento univoco, in funzione di associazione univoca delle informazioni, della persona; con la password, avviene l'autenticazione, ossia si controlla la veridicità dell'identificazione. Questa verifica è necessaria perché lo username, in un certo senso, è un dato pubblico, quindi per riconoscere il legittimo proprietario bisogna che si utilizzi un dato privato, cioè conosciuto appunto solo da lui. Il senso della password è tutto qua: che sia un dato noto soltanto alla persona a cui appartiene. Nel momento in cui tale dato perde il suo carattere di segretezza, non ha più senso; e questo avviene in tutti i casi seguenti:
  • la rendiamo pubblica (o nota anche ad una sola altra persona)
  • ne utilizziamo una estremamente diffusa (come avviene appunto per le password della lista riportata nell'articolo sopra citato)
  • la scriviamo in un posto facilmente accessibile (il post-it sul monitor è un classico)
  • la scegliamo utilizzando informazioni pubblicamente note (come la data di nascita, propria o di qualche familiare, o il nome del gatto...)
Un altro comune errore è quello di lasciare al browser, al programma di posta, o alla app di turno, la registrazione delle password, in modo da evitare che venga richiesta ogni accesso. A parte che la registrazione può avvenire in modo non protetto (cioè cifrato, o se la cifratura viene utilizzata, senza che ne abbiamo noi il controllo)... così ci mettiamo alla mercé di chi dovesse avere l'accesso al nostro dispositivo o profilo, perché non dovrebbe nemmeno fare la fatica di cercare o indovinare le password. Ma il più grave errore che si può fare in tema di password, è pensare che a nessuno interessi soffiarcela. Come detto prima, con la password si autentica l'identità, quindi in realtà con la nostra password un malintenzionato impersona noi stessi, e può compiere qualsiasi atto a nostro nome (e dimostrare di aver subito il furto di identità non è cosa banale). Forse non tutti sanno che esistono vere e proprie aste di gruppi di credenziali valide di alcuni celebri servizi, segno evidente dell'interesse che ha questa "merce" (vedere, solo per fare un esempio, questa notizia)

Il problema alla base delle scellerate scelte della password sta tutto nella necessità di ricordarla. Ma è un falso problema: non è necessario ricordare a memoria tutte le password (in realtà, è il regolare utilizzo che, stimolando la nostra memoria, le fa ricordare, a prescindere dalla complessità e lunghezza). Io per primo, che credo di essere un bravo utilizzatore di buone password, non pretendo di ricordarle tutte, anzi! L'unico trucco necessario e sufficiente a gestire correttamente le password è scriverle, ma esclusivamente in un posto sicuro. Esistono molti programmi o app che fanno proprio questo: un piccolo database dedicato alle password, ovviamente cifrato. Il difetto è che per cifrare (e decifrare) il database, una password è necessaria: ma una sola. Questa sì che vale la pena dello sforzo di trovarne una sufficientemente complessa, veramente privata, e che non corriamo il rischio di dimenticare (se non in caso di amnesie gravi, ma in quel caso questo è un problema minore); anche perché la raccomandazione è quella di non scriverla, mai, da nessuna parte, e di non dirla veramente a nessuno! Se utilizziamo uno di questi "password manager", ed impariamo ad usarlo sempre, allora verrà facile anche passare ad una logica che fa fare il salto di qualità in termini di sicurezza: non scegliere più le password per far sì che siano in qualche modo mnemoniche, ma farle generare in modo casuale, e con lunghezze significative (dai 12 caratteri in su), e soprattutto cambiare regolarmente quelle più critiche.

Altro metodo di sicurezza che sta progressivamente diffondendosi è quello dell'autenticazione a due fattori (two-factor authentication): la fase di autenticazione si basa non solo sulla password, ma su un ulteriore codice che ha una validità limitata nel tempo, e quindi ogni accesso va nuovamente generato. Questo secondo codice può arrivarci con un metodo che abbiamo precedentemente validato (la nostra mail, il nostro cellulare), oppure con dispositivi appositi, chiamati token, che vengono rilasciati dal fornitore del servizio. Certamente è un ulteriore passaggio che ai più sembrerà un ulteriore fastidiosa perdita di tempo, ma a me sembra trascurabile davanti alla concreta possibilità di trovarsi il conto in banca svuotato.

In conclusione, dovremmo convincerci che dobbiammo riservare alle password la stessa attenzione che riserviamo alle chiavi di casa: esse rappresentano di fatto il modo di impedire agli estranei l'accesso al nostro piccolo "regno digitale".

domenica 2 aprile 2017

Elogio della semplicità

Chi mi conosce sa quanto io ami la semplicità. In tutti i campi, ma particolarmente in quello informatico. Perché, al contrario di quanto molti potrebbero pensare, aiuta, sia gli utilizzatori, che i progettisti ed i realizzatori. Meno i commerciali ed il marketing; è questo, credo, il problema.

L'ho già proposto nel post sull'IoT (l'internet delle cose), il concetto che aggiungere ciò che non è indispensabile ad un sistema lo rende più vulnerabile agli inevitabili problemi della tecnologia, soprattutto se non si ha un "piano B" nel caso di malfunzionamenti. Ma non è solo questo. A mio modo di vedere, l'utilità della semplicità si vede soprattutto in due casi.

Il primo è quello degli utilizzatori. L'utente medio di uno strumento informatico non legge istruzioni o manuali, non ha competenze basilari, è assillato dalla fretta. Per questo è importantissimo che ciò che gli si presenta davanti (l'interfaccia) sia immediatamente chiaro da comprendere, e soprattutto richieda il minimo delle azioni. Lungi da me con questo scoraggiare la presenza di manuali e affini, anzi! Tuttavia, alla semplicità di uno strumento corrisponderà la semplicità del suo manuale, e ne minimizzerà l'utilizzo.
In definitiva, dovendo scegliere, l'utente medio preferirà uno strumento semplice da usare rispetto ad uno più complicato.

Il secondo caso è quello di coloro che gestiscono i sistemi informatici. Davanti ad un problema, l'investigazione (troubleshooting) beneficia della minore quantità di possibili sorgenti di errori. A seconda dei sintomi, è possibile andare più direttamente a cercare l'elemento responsabile. Se fosse necessario effettuare delle prove, meno elementi da testare significa meno tempo sprecato. Per contro, è facile capire come mai davanti ad un sistema molto complesso, in cui cercare il problema comporta tempi lunghi e conoscenze estremamente approfondite, molte volte si preferisce un banalissimo riavvio... sempreché funzioni, e soprattutto non impedisce che il problema si presenti di nuovo!
A questo proposito, all'università ho ricevuto una sorta di "illuminazione" quando mi hanno insegnato il metodo di programmazione "orientato agli oggetti" (object-oriented), che infatti da qual momento è diventato l'unico di cui mi servo (in realtà non sono un programmatore in senso stretto, e nel campo sistemistico è difficile che possa essere usato). In sostanza, in alternativa al metodo classico, che prevede sequenze logiche di istruzioni e funzioni generiche, si è pensato di suddividere i problemi in entità logiche (gli oggetti) che definiscono al loro interno le operazioni che possono essere eseguite su di essi, rendendole disponibili per l'utilizzo di altre entità logiche. In questo modo, rendendo l'oggetto "responsabile" delle proprie operazioni, si è sicuri che esse siano definite una volta per tutte, siano normalmente più semplici, e quindi sia molto più facile trovare e correggere gli errori semplicemente osservando il loro comportamento.

La sostanza di tutto questo discorso è che personalmente preferisco utilizzare strumenti che facciano poche cose, ma le facciano estremamente bene. Parlando di programmi software, preferisco dei programmi piccoli (spesso sono costituiti da un singolo file eseguibile) che riesco a provare facilmente, e di cui dopo mi fido ciecamente, piuttosto che suite di megaprogrammi che promettono cose incredibili, ma per cui è necessario spendere giornate per imparare come fare anche le cose più banali. Magari per effettuare un'operazione neanche troppo complessa ne devo usare 3 o 4 uno dopo l'altro, ma vi assicuro che cercare di ottenere lo stesso risultato con un solo programma che non conosco bene, è molto più stressante.

Per ultimo, userò una battuta che ha fatto pochi giorni fa il mio amico e collega Stefano: in sostanza ha detto che non userebbe mai un touch screen al posto del volante, in un'auto. Mi sbilancio e credo che potremmo essere tutti d'accordo: quando c'è la vita in gioco, molto meglio il caro, vecchio piantone meccanico che non un sistema fatto di sensore, trasduttore, collegamento, convertitore, motore, alimentazione, etc; più diretto, più sicuro.