venerdì 20 gennaio 2012

Crittografia e gli EMO (prima parte)

Parlando di messaggi cifrati ci viene in mente storie di spie inglesi, missioni sotto copertura in piena guerra fredda o intrighi internazionali. Ma le soluzioni per trasmettere un messaggio senza che questi venga intercettato da persone “non autorizzate” si perde nella notte dei tempi ed è una storia molto affascinante, la storia della crittografia e della sua acerrima nemica: la crittoanalisi.

Parlare in codice

In realtà ognuno di noi mette in atto giornalmente e senza accorgersene, dei meccanismi di mascheramento della comunicazione; lo scopo non è solo quello di escludere altre persone dal dialogo con il nostro interlocutore e creare una sorta di privacy in luogo pubblico (parlare con il partner in dialetto calabrese in una sala d’aspetto milanese), ma anche quello di consolidare un rapporto esclusivo utilizzando un linguaggio “intimo” piuttosto che formale (gli innamorati ne sanno qualche cosa...) o quello di manifestare l’appartenenza ad un gruppo sociale separato dal resto del mondo (“ti lovvo fratello”) o una corporazione (“cazza la randa”).

Il modello di trasmissione e la sicurezza

Quando, tuttavia, parliamo di crittografia (unione di due parole greche che significa “scrittura nascosta”), intendiamo un sistema di offuscamento che permetta di passare un messaggio di testo da una persona A ad una persona B utilizzando canali ordinari di comunicazione (la posta, ad esempio) impedendo a chiunque altro di poter intendere il contenuto del messaggio o di forzararlo, cioè togliere l’offuscamento senza conoscere (o conoscendo solo in parte) il sistema di offuscamento.

Indipendentemente dal sistema di offuscamento, il modello di trasmissione è sempre lo stesso:
  1. Persona A compone il messaggio in chiaro; lo offusca (cioè lo cifra); lo invia alla persona B su canale ordinario;
  2. Persona B riceve il messaggio; rimuove l’offuscamento (cioè lo de-cifra); lo legge in chiaro.

Con il modello descritto, in cui il sistema di offuscamento è conosciuto solo dalla persona A e B, si avrà la sicurezza della:
  1. unicità del mittente di un messaggio offuscato;
  2. unicità del destinatario che potrà leggerlo;
  3. non alterazione del messaggio inviato durante il passaggio da A a B.
  4. non ripudiabilità del messaggio da parte del mittente, nel senso che il messaggio ricevuto da B non può essere partito da A il quale non può "non riconoscersi" come l'autore del messaggio. Per chiarire quanto detto facciamo un esempio: immaginiamo l'ordine "uccidi Tizio" che A invia a B; B è sicuro che l'ordine arriva da A in quanto è l'unico che conosce il codice utilizzato per offuscare il messaggio, di conseguenza A non potrà non riconoscersi come il responsabile dell'ordine.
Di cosa abbiamo parlato:
  • Crittografia: scienza che studia i metodi per rendere un messaggio offuscato in modo da non essere comprensibile a persone non autorizzate a leggerlo.
  • Crittoanalisi: la scienza che studia i metodi per chiarire "come" un messaggio è stato offuscato e carpirne il contenuto in chiaro.
  • Messaggio in chiaro: messaggio non offuscato, cioè comprensibile da tutti.
  • Canale ordinario: canale non protetto, cioè utilizzabile e intercettabile da tutti.
  • Cifrare: l'azione di offuscare un messaggio in chiaro.
  • Decifrare: l'azione di togliere l'offuscamento ad un messaggio cifrato in modo che possa essere letto in chiaro.
  • Forzare un codice: l'azione di decriptare un messaggio senza conoscere (o conoscendo solo in parte) il modo con cui è stato offuscato.
  • Ripudiabilità: quando il destinatario del messaggio non è certo di chi sia il mittente e il mittente potrebbe non riconoscere, nel messaggio ricevuto dal destinatario, il messaggio che ha inviato.

giovedì 19 gennaio 2012

Compressione: qualità o dimensione? “...questo è il problema” (terza parte)

In questo articolo continuiamo a parlare di compressione allargando il discorso al tipo lossy.

Introduzione

Nell'articolo precedente abbiamo detto che la compressione di tipo lossless è reversibile, cioè che un file A compresso in un archivio X (ad esempio un archivio di tipo RAR), una volta estratto sarà identico al file A di partenza.
  File A -> compressione -> Archivio X -> estrazione -> File A

Parliamo ora di un altro tipo di compressione. Un tipo di compressione in cui il file originale e il file compresso non sono più identici ma simili, cioè la dimensione del file compresso è diminuita in quanto ora è più povero di dati rispetto al file originale, e quello che ha perso non può più essere recuperato. Parliamo di compressione di tipo lossy

La compressione lossy

In quali circostanze una compressione con perdita di dati può essere utile?

Compressione lossy su file audio

Il formato audio .MP3 è l’esempio che tutti abbiamo sotto gli occhi di come una traccia audio originale, che solitamente è una traccia presa da un CD Audio, possa essere “impoverita” di dati dalla compressione di tipo lossy fino ad ottenere un file molto più piccolo, che tuttavia, una volta ascoltato, risulterà per la maggior parte degli orecchi quasi identico all’originale.
Come è possibile che un file audio originale in formato WAV grande 50 Mb possa essere uguale all’equivalente file MP3 di 2 Mb? Semplice: nel file MP3 sono rimaste solo quelle informazioni audio che servono all’orecchio umano medio per percepire simile le due sorgenti sonore. Alla base della logica applicata alla compressione di tipo lossy ci sono gli studi di una scienza, la psicoacustica, che in poche parole, studia il limitato spettro dei suoni che l'orecchio umano è in grado di percepire rispetto al suono esterno naturale.

Riassumendo: mentre chi produce i CD Audio originali cerca di fornire il suono HiFi, cioè il più fedele possibile rispetto alla sorgente (cioè il suono prodotto dai musicisti/cantanti), la compressione di tipo lossy (e l’MP3, in questo caso) si concentra solo su ciò che un orecchio medio riesce a sentire, e sacrifica tutto il resto.

Compressione lossy su file immagine 

Quello che è l’MP3 per l’audio lo è il JPEG per le immagini.
Anche in questo caso la compressione di tipo lossy si basa sullo studio della percezione delle immagini da parte dell’occhio medio.
Le normali fotocamere digitali applicano già una compressione di tipo lossy producendo dei file in formato JPEG. In altre parole della immagine originale la fotocamera mantiene solo le informazioni che il nostro occhio può percepire e non “ciò che ha visto il suo sensore”.
In alcuni casi, tuttavia, il formato JPEG non è sufficiente.
Le macchine fotografiche professionali sono in grado di salvare le immagini in un altro formato: il RAW. Il formato RAW (termine inglese che significa: grezzo, crudo, non elaborato) scrive fedelmente tutto ciò che il sensore è stato in grado di registrare. Tutte queste informazioni sono particolarmente utili in fase di ritocco fotografico o di elaborazione dell'immagine (per esempio con Photoshop).
Come per l’audio un file WAV è enormemente più grande del corrispettivo file MP3, così il file RAW è decisamente più grande del corrispettivo file JPEG.

Quando la compressione sacrifica la qualità

Terminiamo questo articolo con una riflessione.
Il nostro cervello è uno strumento meraviglioso: il nostro occhio guarda una sequenza di immagini statiche inviate su uno schermo ad una certa frequenza l’una dall’altra, e il nostro cervello elabora il movimento fluido di una film; oppure il nostro occhio vede sullo schermo dei piccoli quadratini che accostano differenti colori e il nostro cervello elabora una sfumatura; oppure il nostro orecchio ascolta da una radiolina gracchiante quattro violini striduli che suonano e il nostro cervello ci fa sentire una sinfonia. Questi sono solo alcuni esempi di come il nostro cervello sia in grado di “correggere” gli errori che i nostri sensi raccolgono, o filtrare una informazione rispetto al rumore che l'accompagna, o riempire i vuoti di una informazione “povera” e frammentata.

Quando tuttavia il rumore è troppo, quando le informazioni raccolte sono troppo poche, quando la frammentazione è eccessiva, anche il cervello inizia a fare fatica. Il risultato è la perdita del flusso delle informazioni.
Per fare un esempio proviamo ad aumentare la compressione di una immagine JPEG: noteremo che ad una diminuzione della dimensione del file compresso, le linee curve, che prima erano lisce, ora sono diventate seghettate; e le sfumature ora sono diventate chiazze quadrate di colore (effetto quadrettatura).

Concludendo: le estreme conseguenze della compressione di tipo lossy è la degradazione della qualità della informazione, degradazione che la rende, alla fine, del tutto inutilizzabile.

Di cosa abbiamo parlato:
  • Compressione lossy: riduzione dello spazio di uno o più file da parte di una applicazione basata sulla perdita dei dati meno significativi.
  • HiFi:  acronimo di High Fidelity (alta fedeltà).
  • RAW: termine inglese per indicare che i dati sono stati raccolti con la maggiore fedeltà possibile rispetto ad campione originale e senza ulteriori elaborazioni o ottimizzazioni.
  • file WAV: file audio di tipo HiFi.
  • file MP3: file audio compresso con metodo lossy.
  • file RAW: file immagine di tipo RAW.
  • file JPEG: file immagine compressa con metodo lossy.

Il Computer: la porta USB - bussa bussa, il computer ha aperto la porta (terza parte)


Con questo articolo continuiamo il nostro discorso sul Computer ma parlando della porta USB che, insieme al termine "chiavetta USB", è entrato ormai a far parte del linguaggio comune.

Premessa

Fermiamo un passante: “scusi, che ora è?”. “Sono le nove e un quarto”. “Grazie”.

Analiziamo questa scena per poi usarla come esempio:
  1. Io chiedo l’attenzione a un passante e pongo una domanda;
  2. Il passante mi pone attenzione e ascolta con le orecchie la mia domanda;
  3. la domanda arriva al suo cervello che comanda il suo polso di muoversi e ai suoi occhi di leggere l’ora: 9.15;
  4. il cervello fornisce attraverso la bocca la risposta, rielaborando l’informazione in base al contesto colloquiale (“e un quarto” invece che “e quindici”).

Unità centrale e periferiche

Ora immaginiamo che il cervello del passante sia un computer. Le orecchie, gli occhi e la bocca saranno il modo con cui il computer introduce e fa uscire le informazioni. Traduciamo in termini informatici: le orecchie, gli occhi e la bocca sono periferiche (cioè stanno alla periferia rispetto al cervello) e sono collegate ad una unità centrale (quello che comunemente viene detto “computer”). Queste periferiche possono essere: di inserimento dati (in inglese input), come le orecchie o gli occhi; o di uscita dati (in inglese output), come la bocca.
Aggiungiamo inoltre che alcune periferiche possono essere contemporanemanete di input e output. Per esempio uno schermo touchscreen ci permette al contempo di visualizzare (output) delle informazioni attraverso delle immagini (esempio un bottone) e ci permette di interagire (input) con esse con la pressione delle dita sullo schermo (ad esempio premendo con l’indice il bottone).

Di seguito un elenco delle principali periferiche di un computer:
Periferica Tipo
Tastiera Input
Schermo Output
Mouse Input
Stampante Output
Schermo touchscreen Input / Output
webcam Input
Cuffia Output
Microfono Input
Casse audio Output



Le porte

Mentre orecchie e bocca sono collegate al cervello all’interno del corpo, che ci appare dunque come un blocco unico e non divisibile, il computer è collegato alle periferiche attraverso dei fili elettrici le cui estremità si dicono connettori. Il punto di congunzione tra il computer e il connettore si dice porta. Il sistema di connessione tra connettore e porta è derivato direttamente dal metodo di accoppiamento dei mammiferi e viene detto connessione “maschio-femmina” (l’affermazione è auto-esplicativa).

In un computer una porta è sempre di ingresso e/o uscita (in inglese, ma usatissimo anche in italiano: input e/o output); questo significa che se attacchiamo una tastiera ad un Computer, il flusso di informazioni sarà in input (inserimento dati), se ci attacchiamo una stampante il flusso di informazioni sarà in output (stampa dei dati), se ci attacchiamo uno schermo touchscreen, le informazioni saranno di input e di output (input/output).

Il driver

L’occhio è connesso al cervello attraverso il nervo ottico. Cosa succederebbe se ipoteticamente si potesse attaccare un orecchio sul nervo ottico? Il cervello non riuscirebbe a interpretare le informazioni in ingresso (input) perché crede di parlare con l’occhio e nessuno gli ha spiegato che in realtà sta parlando con un orecchio.
Il driver (termine inglese che significa letteramente “portatore” o “conduttore” e si pronuncia draiver) ha questa funzione: si pone tra il computer e la periferica come un “interprete” che traduce le informazioni e mette in comunicazione le parti che altrimenti non comunicherebbero. Quindi non basta collegare una tastiera al computer sulla porta, si deve anche installare il driver che permetta al computer di comunicare correttamente con la periferica. Sarà compito del driver spiegherà al computer di che tipo di periferica si tratta (input e/o output) e che, se la periferica non risponde, non è perché si è offesa ma perché è una periferica di input.

Quello che fa il driver, in modo più generico, si può dire anche interfaccia, che è un termine utilizzato in tutti quei contesti in cui “qualche cosa” si pone tra computer e resto del modo. Per fare un esempio, quando si parla di interfaccia grafica si intende l’insieme di elementi grafici (finestre, bottoni, freccetta o puntatore del mouse) che ci permettono di dialogare con il computer.

L’evoluzione del tipo di porta

Nei vecchi computer esiste ancora la porta parallela (per collegare le stampanti), la porta seriale e, in modelli un po’ più recenti, anche la porta PS/2 (una evoluzione della porta seriale). Nei nuovi computer queste porte non esistono più ma esiste ancora il concetto alla base del tipo di trasferimento dati delle due porte.
Immaginiamo un supermercato pieno di clienti con 16 casse: con il tipo di trasmissione parallela (porta parallela) tutte le casse saranno aperte e i clienti fluiranno contemporaneamente da tutte le casse; con il tipo di trasmissione seriale (porta seriale o PS/2) ci sarà una sola cassa aperta e tutti faranno la fila per uscire. La trasmissione parallela è stata oggi abbandonata perché le cassiere costano.

La porta USB e il sistema plug-and-play

Finalmente, dopo tanta attesa, il computer si è aperto al mondo delle periferiche che bussava insistentemente. La porta USB ha fornito un nuovo standard di connessione (di tipo seriale) tra il computer e le periferiche, e il sistema plug-and-play (che può essere tradotto in “collega e usa” e si pronuncia “plag-end-plei”), rende automatico l’installazione del driver giusto per la periferica appena connessa al computer. Il plug-and-play è un modulo del sistema operativo del Computer.

La porta USB: molto di più di una semplice porta

Ma la novità va ben oltre a quanto detto. Infatti una posta USB è:
  • Estendibile “in cascata”: come a una singola presa di corrente si può connettere una multi-presa (volgarmente detta “ciabatta”) a cui si possono collegare diversi apparecchi elettrici e una nuova ciabatta a cui si possono attaccare altri apparecchi elettrici e così via (fino a quando non si verifica un bel sovraccarico), così ad una porta USB si può, ad esempio, attaccare un HUB USB che moltiplicherà le porte USB (come la ciabatta dell’esempio). Il tipo di collegamento HUB-HUB (o ciabatta-ciabatta) è detto in cascata, e può essere moltiplicato parecchie volte.
  • Alimentata: cioè può fornire energia elettrica alla periferica connessa che diventerà così auto-alimentata. Per esempio posso connettere un Hard Disk ad una porta USB e, senza nessun alimentatore esterno, la periferica sarà disponibile per la lettura/scrittura dei dati (l’hard disk sarà dunque una periferica di input/output). Un bel vantaggio in termini di mobilità, meno alimentatori e cavi significa minor consumo di spazio e peso. In un collegamento in cascata, tuttavia, il rischio di sovraccarico è in agguato...

L’evoluzione della porta USB

La naturale evoluzione della tecnologia, in poco tempo, ha già indicato la direzione verso cui le porte sono dirette:
  • sempre più piccole: si è passati dalla porta USB alla mini USB (macchine fotografiche, cellulari), alla micro USB (cellulari, lettori MP3).
  • sempre più veloci: la velocità di trasferimento dati seriale oggi è alla 3.0 ma nel futuro chissà...
  • sempre più periferiche USB: tra un po’ di tempo anche la lavatrice avrà una presa USB.

USB e telefonini

Ormai tutti i telefonini, o hanno la presa USB, o un cavo che permette di connettersi con una porta USB del computer. Lo scopo è presto detto:
  1. ricaricare la batteria sfruttando l’alimentazione della porta USB (con grosso vantaggio per la mobilità o per chi si scorda spesso in albergo gli alimentatori);
  2. estendere la gestione del telefonino attraverso il computer, per esempio, per configurare il dispositivo evitando complicati menù sul telefonino; oppure per salvare una copia della rubrica; oppure per gestire i contatti; oppure per mettere nel dispositivo musica, video o immagini.

Di cosa abbiamo parlato:
  • unità centrale: il computer.
  • periferica: tutto ciò che è periferico rispetto al computer (es. la tastiera).
  • periferica di input: inserimento o scrittura di dati.
  • periferica di output: visualizzazione o lettura di dati
  • Periferica di input/output: visualizza informazioni e permette una interazione come, per esempio, uno schermo touchscreen.
  • porta: dove si attacca il connettore della periferica al computer.
  • driver: interprete delle informazioni che computer e periferica si scambiano.
  • USB: un tipo di porta seriale estendibile e auto-alimentata.
  • Plug-and-play: il sistema di installazione automatica del driver corretto alla connessione della periferica.
  • HUB USB: dispositivo che moltiplica le prese USB.

Il computer: un neonato particolarmente dotato (seconda parte)

Dopo una introduzione un po' filosofica, continuiamo in questo articolo a rispondere alla domanda: che cosa è un Computer.

Premessa

Un bambino quando nasce, ha solo alcune capacità elementari. Crescendo viene obbligato ad imparare, cioè ad acquisire informazioni e abilità che lo renderanno, con il tempo, una persona mediamente indipendente, mediamente acculturata e capace di vivere in una comunità. Questa fase viene chiamata “educazione”.
Tutte le informazioni e abilità che il bambino acquisisce sono codificate nel suo cervello sotto forma di ricordi e abitudini o, detto in termini scientifici, in percorsi neuronali.
La spinta ad imparare cose nuove permane anche nell'adulto, motivata dalla curiosità o dalla necessità di risolvere nuovi problemi.
Quando la persona cesserà di esistere, non resterà memoria del suo passaggio se non nella memoria delle persone che lo hanno conosciuto, o impresse in modo indelebile negli oggetti e scritti che avrà prodotto in vita.

Il Computer

Ora per un computer è la stessa, ma in modo un po' più veloce.

Ogni volta che un computer viene acceso, il suo cervello matematico possiede limitate capacità: può fare le addizioni e cambiare il segno ad un numero ma non è in grado di fare direttamente una sottrazione (1-1=0) o una moltiplicazione (3x3=9). Queste limitazioni, tuttavia, vengono compensate dalla rapidità con cui il computer è in grado di eseguire le operazioni. Per cui il risultato della sottrazione verrà ottenuto invertendo il segno del secondo addendo (1+ -1=0) e per la moltiplicazione addizionando il numero per il numero di volte richiesto (3+3+3=9). Poche capacità ma enorme velocità, dunque.

Al contrario del cervello di un neonato, un computer non ha bisogno di anni per imparare. Diventa "educato" in pochi millesimi di secondo. In che modo?
I ricordi e le abilità sono memorizzati dentro a dei file particolari detti file eseguibili, questi file vengono imparati, cioè caricati nella memoria, e permettono al computer di diventare subito capace di “eseguire” operazioni complessissime.
Quello che per il bambino è l’educazione, per un computer è il sistema operativo, cioè l’insieme di file eseguibili che, caricati con un certo ordine e progressione, portano un computer dalla fase neonata alla fase adulta e “operativa”.

Chi prepara un file eseguibile? I file eseguibile è preparato da uno o più sviluppatori che sono persone in grado di trasferire la loro memoria e abilità ad un computer.
Quindi come un bambino che inizia a gattonare e poi a camminare e a parlare, anche i file eseguibili, caricati in una certa sequenza, istruiranno un computer a prendere coscienza della esistenza di una tastiera, di un monitor, di un mouse, e così via.

Una volta adulto ed educato il computer potrà acquisire nuove abilità, caricando specifici file eseguibili detti, questa volta, applicazioni.

Quando il computer verrà spento, non resterà traccia di nulla se non quanto avrà prodotto e memorizzato in modo permanente su un supporto di memoria memoria di massa, come un Hard Disk, un CD o una chiavetta USB.


Di cosa abbiamo parlato:
  • File eseguibili: file che contengono istruzioni per il Computer e che vengono caricate nella sua memoria.
  • Sistema operativo: ’insieme di file eseguibili che, caricati con un certo ordine e progressione, portano un computer dalla fase neonata alla fase adulta e “operativa”.
  • Sviluppatore: persone in grado di trasferire informazioni e abilità ad un computer.
  • Applicazione: abilità specifica caricata nella memoria di un Computer con un file eseguibile (es. una applicazione di elaborazione testi).

mercoledì 18 gennaio 2012

2001 Odissea nello spazio: che cosa è il computer? (prima parte)

L’evoluzione ci insegna che sopravvive solo la specie più forte e, all’interno della stessa specie, solo l’animale più forte (o il gruppo più forte).

La prima delle cinque parti in cui è strutturato il film 2001 Odissea nello spazio di Stanley Kubrick, inizia proprio da una situazione estrema: due tribù di scimmie che si contendono una pozza d’acqua in una terra deserta.
I due gruppi sono in sostanziale equilibrio di forze, nessuno dei due attacca e nessuno dei due indietreggia per permettere all’altro di bere l’acqua. Ci troviamo in una situazione di stallo, ma ed ecco che un elemento esterno interviene: il monolite nero.

Senza entrare nella discussione di “che cosa è” o “da dove viene” il monolite nero, diremo semplicemente che dal momento in cui una scimmia tocca il monolite, spinta dalla curiosità o come dimostrazione del suo personale coraggio alla tribù, un nuovo elemento fa il suo ingresso nella equazione sbloccando la situazione: lo strumento. La scimmia afferra un osso e lo usa come arma, mettendo in fuga la tribù avversaria e conquistando la pozza d’acqua.

Dal mio punto di vista è geniale il modo con cui Kubrick, senza usare una sola parola ma solo la forza dell’immagine, abbia spiegato questo passaggio fondamentale della evoluzione che ha portato l’uomo a creare e usare strumenti sempre più avanzati (e a sottolineare il fatto che il primo impiego di un nuovo strumento è spesso - e volentieri - a fini militari, prima che civili). Un esempio di questo è proprio internet che è nata da ARPAnet, cioè dalla rete americana sviluppata a scopi militari durante la “guerra fredda” per resistere in caso di attacco nucleare.

Nella seconda parte del film è già il futuro, un futuro che celebra il computer come lo strumento più avanzato mai creato dall’uomo, utilizzato per permettere all’uomo la conquista dello spazio, territorio di infinite e nuove risorse. Dalla pozza d’acqua, dunque, allo spazio; dal primo osso, al computer.

Per un approfondimento del significato del film 2001: odissea nello spazio vi invito a consultare:
http://www.kubrick2001.com/

Captcha: e se una persona, in realtà, fosse un robot?

Forse vi sarà capitato in una pagina Internet, di trovarvi davanti ad una immagine contenente una o più parole, scritte magari in modo strano o disturbato, e alla successiva richiesta di digitare il contenuto in un campo... l'immagine che la pagina vi chiede di risolvere è un captcha e tra poco saprete a cosa serve.

Il film Blade Runner di Ridley Scott formula l’ipotesi di un modo dove gli esseri umani vivono insieme ai replicanti, androidi cioè organismi artificiali, che assomigliano in tutto e per tutto all’uomo ma hanno una vita limitata a 4 anni. I replicanti sono stati creati per sostituire l’uomo nei lavori più pesanti, pericolosi o moralmente degradanti (prostituzione).
Nel film viene inoltre introdotto il problema di distinguere l’umano dal replicante in quanto sulla terra vige il divieto di accesso ai replicanti e chi viola il divieto si trova alle calcagna gli agenti della squadra speciale denominata “Blade Runner”.

Nel film “per distinguere un replicante da un umano, il sospetto viene sottoposto ad un test per l'empatia denominato Voigt-Kampff, che consiste in un interrogatorio condotto con un dispositivo puntato sull'occhio dell'interrogato. Il replicante, di fronte alle domande pensate per suscitare un'emozione precisa nell'interrogato, tradisce la sua natura in seguito all'impossibilità, dovuta alla mancanza del bagaglio di esperienze tipico di un essere umano, di controllare le proprie emozioni. Per la riuscita del test sono infatti fondamentali i tempi di reazione alle domande.” (dalla voce “Blade Runner” su Wikipedia).

Anche in internet oggi certe aree sono riservate solo agli umani. No, non sono impazzito e non esistono (per il momento) gli androidi internauti; tuttavia esistono dei “replicanti” e si chiamano BOT (abbreviazione di robot). I BOT, come i replicanti di Blade Runner, eseguono operazioni pesanti e ricorsive al posto dell’uomo. Il rischio è che si possano sostituire all'uomo in ambiti riservati agli umani, come la creazione di account, post e commenti, su forum, blog e social network. Questi ambiti sono particolarmente "delicati" sul fronte della sicurezza informatica. Se i BOT avessero libero accesso a queste operazioni, infatti, i sistemi non sarebbero più al sicuro da spam (termine inglese che indica genericamente: “fare pubblicità indesiderata”) o attacchi malevoli (come portare al collasso un sistema inviando più richieste di quelle che è in grado di gestire).

Il test Voigt-Kampff oggi si chiama captcha e consiste nel richiedere l’inserimento di una o due parole (ciascuna fatta di lettere, numeri o insieme dei due) contenute in una immagine volutamente distorta e disturbata. Il captcha viene utilizzato come sbarramento prima della conferma di una operazione riservata agli umani. Se il test fallisce l’operazione non viene eseguita e viene inviato un messaggio di errore o un nuovo captcha da risolvere.
Con questo test si “presume” che solo un essere umano sia in grado di riconoscere la o le parole giuste, tuttavia sia il test che i sistemi (anti-captcha) che cercano di imbrogliare il test, basati sul principio del riconoscimento ottico dei caratteri (OCR, acronimo di “Optical Character Recognition”, cioè “riconoscimento ottico dei caratteri”), sono in continua evoluzione.

La battaglia dell’uomo contro i replicanti è appena iniziata.

Per un approfondimento: Google e reCaptcha.

Di cosa abbiamo parlato:
  • Captcha: immagine volutamente distorta e disturbata che contiene una o due parole fatta di lettere e numeri.
  • BOT: programmi utilizzati in internet.
  • Spam: termine inglese che indica genericamente: “fare pubblicità indesiderata”.
  • OCR: acronimo di “Optical Character Recognition” che indica i programmi di riconoscimento ottico dei caratteri utilizzati per convertire una immagine contenente un testo, in una sequenza di caratteri equivalenti.

lunedì 25 luglio 2011

Google: le richieste avanzate (terza parte)

Mentre gli articoli precedenti sono stati una introduzione a Google, con questo articolo vogliamo fornire alcune informazioni su come utilizzare Google al meglio.

La parola chiave

La parola chiave (in inglese Keyword, da non confondere con la Password che invece è la parola segreta) è dunque la “chiave” (scusate il gioco di parole) per formulare una richiesta ad un motore di ricerca. Più il termine cercato sarà specifico o tecnico, e con più facilità il risultato sarà soddisfacente.
Ma Google è un computer e può fare molto di più della semplice ricerca della ricetta degli spaghetti alla carbonara! Google stesso ce lo spiega nella sezione della ricerca avanzata. Qui diremo solo alcune cose giusto per stuzzicare l’appetito.

Ricerca booleana: AND, OR

Quando facciamo una ricerca con più di una parola, ad esempio “pasta carbonara”, Google cercherà:
  • prima la parola chiave che contiene contemporaneamente “pasta” e “carbonara”;
  • poi una seconda ricerca con la sola parola “pasta”;
  • in fine una terza ricerca con la sola parola “carbonara” (prima pasta e poi carbonara perché questa è la sequenza in chi le abbiamo scritte e in cui verrano cercate).
Il motivo di questo comportamento è semplice: Google non capisce se stiamo chiedendo le due parole insieme (cioè pasta AND carbonara), oppure stiamo chiedendo o una parola o l’altra (cioè pasta OR carbonara).

Chiariamo il significato di AND e OR.
AND e OR sono due operatori, cioè sono due parole che ordinano un comportamento al motore di ricerca. Per fare in modo che Google le interpreti come operatori, AND e OR dovono essere scritte maiuscole.
AND e OR si usano con la ricerca di due o più parole, solo nel caso in cui si voglia obbligare il motore di ricerca a cercare in modo diverso dal suo standard.

Facciamo un esempio per l'operatore AND: se cerchiamo "pasta carbonara" e ci interessano solo le ricette della pasta alla carbonara (e non tutte quelle che contengono "pasta" e tutte quelle che contengono "carbonara") allora possiamo cercare: pasta AND carbonara. Google interpreterà la richiesta con: ricerca tutti i siti che contengono contemporaneamente "pasta E (AND) carbonara".
AND, quindi, è un operatore che concatena due o più parole.

Facciamo ora un esempio per l'operatore OR: se vogliamo che la nostra ricerca non sia focalizzata solo sul termine "pasta" ma vogliamo allargarla anche a "spaghetti" e a "bucatini", allora possiamo cercare: carbonara AND pasta OR spaghetti OR bucatini. Google interpreterà la richiesta con: ricerca tutti i siti che contengono contemporaneamente "carbonara E pasta" OPPURE (OR) "carbonara E spaghetti" OPPURE (OR) "carbonara E bucatini".
OR, quindi, è un operatore che mette in alternative due o più parole.

Ricerca di frasi

Se facciamo una richiesta chiudendo le parole chiave dentro ai doppi apici, obblighiamo Google a cercare esattamente la frase (come se le parole fossero legate tra loro con un AND), cioè la frase diventa essa stessa una parola chiave da cercare.

Facciamo un esempio: la ricerca di un libro è un ottimo candidato per una ricerca di frase. Infatti se cerchiamo il titolo del libro “l’insostenibile leggerezza dell’essere”, dobbiamo cercare “insostenibile leggerezza essere” (parola chiave). Diversamente otterremmo quel che cerchiamo insieme a tutte le pagine che contengono una o due parole del titolo.

Ricerca per esclusione

Nel caso il risultato di una richiesta fosse ambiguo, come per carbonara che indica contemporaneamente una pietanza, il nome di alcuni ristoranti e il nome di un comune, si può utilizzare il segno meno davanti alla parola chiave che si vuole escludere dalla ricerca. Nel nostro caso, cercando “carbonara -ristorante -comune”, escluderemo dalla ricerca i ristoranti e il comune.

Ricerca in domini

Quando Google risponde fornisce un elenco di titoli di pagine internet, tuttavia mai più di una pagina per dominio. Questo potrebbe essere una scocciatura, soprattutto se in un blog di cucina ci sono più ricette degli spaghetti alla carbonara. Per estendere la ricerca all’interno di tutto il blog, si dovrà specificare il dominio su cui la ricerca si dovrà focalizzare: “ricetta pasta carbonara site:www.blog.cucina.it”, dove site: (termine inglese che significa luogo o ubicazione, e tradotto in italiano significa sito internet o dominio) indica a Google che quello che seguirà è il dominio dove cercare, cioè “www.blog.cucina.it”.

Ricerca specializzata (immagini, video e blog)

Fino ad ora abbiamo parlato di ricerca di informazioni di tipo testuale, ma i motori di ricerca possono essere anche specializzati nella ricerca di immagini, video, blog o altri tipi di informazioni. Le regole per porre le richieste saranno le stesse, la risposta del motore sarà presentata in modo da dare una anteprima del contenuto.

Ricerca di immagini con una immagine

Entrando nello specifico della ricerca specializzata per le immagini, segnaliamo la possibilità di cercare una immagine trascinando una immagine nel campo di ricerca. Non ci credete? Provare per credere.
L'utilità di questa funzione? Prendete l'immagine del profilo di FaceBook e scoprite se appartiene alla persona che la pubblica o a qualcun altro.

Di cosa abbiamo parlato:
  • AND, OR: operatori booleani di relazione tra due o pià parole. AND concatena le parole, OR le mette in alternativa.
  • doppi apici (“”): lega insieme due o più parole concatenandole come farebbe un AND.
  • segno meno (-): esclude una parola chiave dalla ricerca
  • site: comando che obbliga Google a cercare dentro ad un dominio (o sito internet).