Magazine Informatica

LibreJS: che cosa è e come funziona

Creato il 11 settembre 2012 da Hnikarr

Se avete mai visitato il sito di Richard Stallman, allora probabilmente vi sarete già imbattuti nel nome di LibreJS: lo trovate menzionato nella parte alta della pagina di apertura, tra le notizie in evidenza. Se non sapete chi sia Richard Stallman, possiamo descriverlo in breve come un geniaccio paranoico, con svariate fissazioni più o meno razionali e giustificate. È anche il “creatore” di Emacs e questo è sufficiente ad assicurargli un posto nel pantheon informatico. Ma torniamo a LibreJS. LibreJS è una estensione per browser basati su Mozilla (per intenderci, Firefox è l’esponente più famoso) che, a seconda dei punti di vista e delle convinzioni personali, può essere completamente inutile, oppure fondamentale: il suo compito è infatti quello di analizzare tutti gli elementi in JavaScript contenuti in una pagina web e bloccare quelli che non sono “liberi”. Un esempio pratico appare nella immagine sottostante: LibreJS: che cosa è e come funziona Questo è il risultato che si ottiene aprendo la prima pagina di Google, con LibreJS attivo. Quando carichiamo una nuova pagina, LibreJS ne analizza tutto il JavaScript presente al suo interno; se una o più parti è definita in un file esterno, scaricato assieme alla pagina, allora LibreJS provvederà ad analizzare anche quegli elementi. Al termine dell’analisi, tutto ciò che è stato identificato come non-libero è bloccato da LibreJS; l’unica eccezione è costituita dal JavaScript considerato semplice, ossia il JavaScript che -non definisce funzioni; -non carica files esterni alla pagina; -non utilizza AJAX. Questo sono i principali elementi che rendono “semplice” un elemento in JavaScript e, di conseguenza, immune all’attività censoria di LibreJS; un elemento in JavaScript che esegue almeno una di queste operazioni, o altre analoghe, non è considerato semplice e sarà quindi analizzato a fondo (e bloccato, se necessario). Come possiamo vedere dall'immagine soprastante, Google brulica di JavaScript non libero, secondo l’analisi di LibreJS, ma in effetti si può ottenere lo stesso risultato su quasi tutti i siti, dato che solo una sparuta minoranza di siti (quelli gestiti da membri e attivisti di GNU e Free Software Foundation, in linea di massima) si adegua ai canoni di LibreJS. Quando una pagina è stata caricata, possiamo cliccare sull’icona nell’angolo in basso a destra del browser (quella col simbolo JS) per visualizzare il risultato, che poi corrisponde all’immagine inserita in precedenza. Di base, tutto il JavaScript considerato “non-libero” è bloccato: possiamo però sbloccarlo cliccando sul pulsante “Allow all scripts in this page”, che autorizzerà l’esecuzione di tutto il JavaScript presente nella pagina, che sia libero o meno. Questa autorizzazione resterà valida per tutta la sessione del browser, ossia fino a che non lo chiuderemo. Se invece vogliamo concedere un’autorizzazione permanente a una o più pagine, oppure a uno o più siti, dovremo modificare le impostazioni di LibreJS e aggiungere alla “lista bianca” i siti che ci interessano. Per farlo, apriamo la finestra delle estensioni di Firefox (o del browser basato su Mozilla che stiamo utilizzando), cerchiamo LibreJS e clicchiamo poi sul pulsante “Opzioni”. Si aprirà questa schermata: LibreJS: che cosa è e come funziona Nella parte bassa troviamo uno spazio editabile, introdotto da “Whitelist domains, separated by comma, omit protocol”: qui dovremo scrivere, oppure incollare, l’indirizzo dei siti che vogliamo autorizzare sempre, separandoli tra loro con una virgola. Dovremo scrivere solo la parte dell’indirizzo che segue il www: se vogliamo autorizzare Google, ad esempio, dovremo scrivere google.com, non scrivere www.google.com o peggio ancora http://www.google.com. A titolo informativo, nel corso della procedura di installazione LibreJS vi chiederà di cancellare la cache del vostro browser il che è normale e giustificato.

LibreJS: che cosa è e come funziona
 

LibreJS ha bisogno che il browser scarichi tutto il contenuto di una pagina, per poterlo esaminare e bloccare (ove necessario); siccome la cache serve anche a evitare di dover scaricare tutto il contenuto dei siti che abbiamo visitato in precedenza, mantenere il contenuto precedente l’installazione di LibreJS ne ostacolerebbe il funzionamento sui siti già visitati da noi. Detto questo sul suo funzionamento, la domanda che resta è: perché una persona dovrebbe utilizzarlo? LibreJS non serve ad aumentare la sicurezza del computer, perché non blocca elementi in JavaScript che potrebbero essere dannosi, ma soltanto gli elementi che non sono rilasciati con una licenza “libera” (una lista delle licenze considerate libere è consultabile sul sito GNU). Se ci interessa una gestione più accurata e personalizzabile del JavaScript, allora dovremo rivolgerci a NoScript, altra estensione per Firefox e simili, orientata verso la sicurezza del codice e dell’utente che lo esegue. LibreJS è invece orientato verso tutti quegli utenti a cui interessa la liberta del software, ossia tutti quelli che vogliono eseguire sul proprio computer soltanto programmi (e script) che siano liberi, non proprietari. In pratica, interessa solo a una piccola minoranza di utenti. Per chi volesse approfondire il discorso sul JavaScipt libero e i problemi connessi al JavaScript chiuso, almeno dalla prospettiva del GNU, un buon punto di partenza è la lettura dell’articolo “The JavaScript Trap” (in inglese).


Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :