E-Privacy 2009: Verso il Controllo Globale

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

Un gigantesco occhio di sorveglianza fatto di tracce circuitali sospeso su una città, persone sotto con scudi crittografici

Indice

  1. La Ricetta
  2. Lo Scenario
  3. Le Argomentazioni
  4. Perche' preoccuparsi
  5. Il lato business
  6. Il lato identita'
  7. Il lato Google
  8. Il lato protezione
  9. Il lato comunicazione: intercettare e proteggere
  10. Parole finali

La Ricetta



Ingredienti

Preparazione

Prendete l'intero ambiente sociale, completamente impreparato alla (r)evoluzione mediatica avvenuta negli ultimi anni, e lasciate che gli hacker osservino e ne parlino/scrivano. Portate gli avvocati, e lasciate che riconoscano “Houston! Abbiamo un problema!”, definendolo al contempo in legalese. Fate domande e partecipate a dibattiti interessanti.

Ora, consegnate il Big Brother Award 2007 al rappresentante di Google, lasciate che il sole si tuffi nelle colline, aggiungete una notevole quantita' di vino rosso toscano, e preparatevi per il giorno dopo. Lasciate fluire la paranoia, mentre gli hacker mostrano come si puo' essere tracciati e trovati tramite la rete cellulare e spiati tramite telecamere collegate via wifi piazzate li' per la vostra sicurezza.

Guardate i Big Brother Awards 2009 non consegnati restare sulla scrivania dei relatori e improvvisamente messi in vendita su eBay, e tornate a casa, dove leggete e guardate un'intervista video-editata al premier italiano.

Mettete tutto in frigo e date al vostro cervello due giorni per metabolizzarlo. Poi scrivetelo tutto A VOCE ALTA.

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

XFS internal error XFS_WANT_CORRUPTED_RETURN at line 295 of file fs/xfs/xfs_alloc.c.  Caller 0xc018066c
 [<c017fed0>] xfs_alloc_fixup_trees+0x1b0/0x2e0
 [<c018066c>] xfs_alloc_ag_vextent_near+0x31c/0x9c0
 [<c018066c>] xfs_alloc_ag_vextent_near+0x31c/0x9c0
 [<c0180187>] xfs_alloc_ag_vextent+0xf7/0x100
 [<c01824fe>] xfs_alloc_vextent+0x35e/0x420
 [<c019015d>] xfs_bmap_alloc+0x80d/0x12b0
 [<c0111254>] try_to_wake_up+0xa4/0xc0
 [<c02cf248>] schedule+0x308/0x5c0
 [<c01939c4>] xfs_bmapi+0x514/0x1470
 [<c0130069>] find_lock_page+0x29/0xe0
 [<c013013c>] find_or_create_page+0x1c/0xb0
 [<c01d9116>] kmem_zone_zalloc+0x26/0x50
 [<c01a2296>] xfs_dir2_grow_inode+0xf6/0x3c0
 [<c01b57a6>] xfs_iget_core+0x326/0x5a0
 [<c0163315>] alloc_inode+0xd5/0x170
 [<c01b978b>] xfs_idata_realloc+0x3b/0x160
 [<c01a3e2d>] xfs_dir2_sf_to_block+0xad/0x680
 [<c0137882>] cache_grow+0xe2/0x150
 [<c01aa27b>] xfs_dir2_sf_addname+0x9b/0x110
 [<c01a1c51>] xfs_dir2_createname+0x131/0x140
 [<c01d9116>] kmem_zone_zalloc+0x26/0x50
 [<c01cebcb>] xfs_trans_ijoin+0x2b/0x80
 [<c01d4967>] xfs_create+0x407/0x6c0
 [<c017e766>] xfs_acl_vhasacl_default+0x36/0x50
 [<c01df8f4>] linvfs_mknod+0x2c4/0x390
 [<c01a1d62>] xfs_dir2_lookup+0x102/0x110
 [<c01228b8>] in_group_p+0x38/0x70
 [<c01ba9a6>] xfs_iaccess+0xc6/0x1a0
 [<c0157cb7>] permission+0x97/0xd0
 [<c0158f94>] __link_path_walk+0xda4/0xe90
 [<c0157cb7>] permission+0x97/0xd0
 [<c015984c>] vfs_create+0x9c/0x120
 [<c015a00b>] open_namei+0x58b/0x5e0
 [<c014aa9d>] filp_open+0x2d/0x50
 [<c014ac70>] get_unused_fd+0x50/0xc0
 [<c0157ae7>] getname+0x67/0xb0
 [<c014ad9c>] sys_open+0x3c/0x80
 [<c0102867>] sysenter_past_esp+0x54/0x75

xfs_force_shutdown(hda8,0x8) called from line 1091 of file fs/xfs/xfs_trans.c.  Return address = 0xc01e2c5c
Filesystem "hda8": Corruption of in-memory data detected.  Shutting down filesystem: hda8
Please umount the filesystem, and rectify the problem(s)
xfs_force_shutdown(hda8,0x1) called from line 353 of file fs/xfs/xfs_rw.c.  Return address = 0xc01e2c5c
printk: 12 messages suppressed.

Gia’, farei l’umount di /var, se questa macchina non facesse da act_as_router e non avesse pppd che non molla il lock su /var/run/pppd2.tdb

pppd   222 root  mem   REG    3,8    88080525 /var/run/pppd2.tdb (path dev=0,0 inode=34)

Ovviamente kill 222 ; pppd call dsl-provider non funziona. BLEAH. Mettiamoci un router davanti… configura, port forward, e si ricomincia… poi fdisk /dev/hdc per ricreare la struttura delle partizioni sul nuovo hard disk, mkfs.xfs su tutte le nuove partizioni, mount /dev/hdcX /target, pax -r -w -p e /{bin,boot,dev,etc,home,initrd,lib,media,root,sbin,srv,tmp,usr,var} /target… aspetta un sacco per la copia perche’ ci sono settori danneggiati sul disco sorgente, chroot /target, vi /etc/lilo.conf e sostituisci boot=/dev/hda con boot=/dev/hdc, lancia lilo -v mentre sei nel chroot, verifica /etc/fstab, e finalmente shutdown per rimuovere il disco guasto e riavviare… ripristinando lilo.conf. evvai!

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

«Donne! E' arrivato l'arrotino!» – A parte gli scherzi ;) l'Apple Store italiano insieme a Girl Geek Dinners Roma ha organizzato il 16 maggio 2009 un workshop sul mobile lifestyle (incentrato sull'iPhone, ovviamente).

Partiamo dall'inizio: cosa sono le Girl Geek Dinners? Linda ha spiegato al pubblico (circa 20 persone) che un geek e' una persona appassionata di tecnologia in senso ampio: il GGD e' un gruppo dedicato ad aggregare donne interessate a internet, ai nuovi media e agli stili di vita tecnologici. Le donne sono spesso sottovalutate nelle comunita' geek, e questo imbarazzante cliche' ha generato molte discussioni in passato, e la questione e' ancora irrisolta (secondo me).

Il gruppo italiano GGD e' nato nel 2007 a Milano, poi e' arrivato a Roma nel 2008, ed e' presente anche a Bologna e nelle Marche e in Emilia-Romagna.

Quindi, il gruppo GGD cerca di generare una “massa critica” di donne geek, per abolire lo stereotipo che “programmatori / utenti esperti” siano solo uomini: negli eventi GGD i ragazzi ascoltano e le ragazze parlano, poi bloggano, si scambiano biglietti da visita (e chiavi PGP, immagino ;) e in generale cercano di valorizzare il potere e le competenze delle donne nel campo dell'industria informatica. Il networking e un tuffo nei social media sono il modo piu' efficiente al giorno d'oggi per raggiungere un grande pubblico e costruire rapidamente la suddetta massa critica: ecco perche' l'evento GGD era incentrato sulle applicazioni mobile social e di produttivita' in generale. Presentato da due Apple Trainer ufficiali (Simona e Riccardo), il workshop e' iniziato alle 11:30 e e' durato circa un'ora.

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

🔍
Retrospettiva 2026
Molto è cambiato dal 2009. La promessa del Rapporto Caio di banda larga al 99% entro il 2011 non si è mai concretizzata — l’Italia lotta ancora con il digital divide nel 2026. Fastweb è stata acquisita da Swisscom. Tre e Wind si sono fuse in WindTre. Tele2 è uscita dal mercato italiano. Il protocollo P4P non è mai decollato. La Deep Packet Inspection è diventata molto più diffusa di quanto si temesse, ora equipaggiamento standard per gli stati di sorveglianza in tutto il mondo. Paolo Gentiloni è diventato Presidente del Consiglio e poi Commissario europeo.

Questa e' la seconda parte del mio resoconto del convegno nnsquad.it tenutosi a Roma il 14 maggio 2009, ospitato dalla fondazione di consulenti ICT Fondazione Ugo Bordoni.

Nella prima parte ho descritto la sessione mattutina, dedicata alla definizione della neutralita' della rete e a come l'economia globale possa conciliarsi con essa. Il pomeriggio e' stato dedicato a interventi piu' tecnici, e ho avuto l'occasione di sentire le osservazioni dei portavoce delle telco sulla situazione attuale e sui possibili sviluppi futuri.

Il primo intervento e' iniziato alle 14:15 ed e' stato tenuto dal prof. Vittorio Trecordi (slide disponibili qui). Lo ha introdotto affermando che la net neutrality potrebbe potenzialmente contrastare con lo sviluppo economico e le esigenze di sicurezza, a causa delle intercettazioni necessarie per queste ultime, intercettazioni che sono fortemente contrarie alla liberta' individuale di comunicare.

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

🔍
Retrospettiva 2026
L’UE ha adottato regole solide sulla net neutrality nel 2015 (Regolamento 2015/2120), dando ragione ai principi sostenuti qui da Quintarelli. Negli USA, l’Open Internet Order della FCC del 2015 è stato abrogato nel 2017 sotto Ajit Pai, e il dibattito infuria ancora. La maggior parte dei link in questo post sono morti. Stefano Quintarelli è poi diventato parlamentare. Paolo Gentiloni è diventato Presidente del Consiglio (2016–2018) e Commissario europeo per l’Economia.

http://www.fub.it/events/seminari/neutralitadellareteeaspettisocioeconomici

http://www.nnsquad.it/

Neutralita' – “L'economia si sta dematerializzando”

Sollecitato da un messaggio Facebook inviato il 6 maggio 2009 a tutti i membri del gruppo nnsquad.it – per un Internet neutrale, mi sono imbattuto in questo evento interessante a cui ho avuto l'occasione di partecipare, tenutosi nel seicentesco palazzo Rospigliosi nel cuore di Roma.

Nella foto: Kenneth Carter e Stefano Quintarelli

La premessa era promettente: tecnici, dottori di ricerca, portavoce delle telco e politici che parlano di internet, della sua liberta' innata, e di come conciliarla in una societa' dove le misure di sicurezza aumentano costantemente, e come tali contrastano con un mondo virtuale senza barriere di sorta. Inoltre, e' un'arena virtuale in cui tutto puo' essere gratuito, non solo le informazioni, e le persone ci si stanno abituando.

Il primo intervento e' stato tenuto dal prof. Kenneth Carter, direttamente dalla Columbia University, e ha fatto da ampia introduzione alle tematiche esplorate (e talvolta ripetute) durante la giornata. In breve, la grande domanda e': gli ISP possono offrire diversi gradi di performance su diversi siti (o far pagare per performance migliori), permettere/bloccare/sovraccaricare l'accesso a certi siti o da certi dispositivi?

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

Questo e' il mio resoconto del primo facebook developer garage italiano, tenutosi a Milano il 23 aprile 2009, e ospitato da mikamai. La mattina e' stata dedicata alle sessioni per sviluppatori, il pomeriggio a quelle di marketing & comunicazione. Alcuni video dell'evento sono disponibili qui.

Mattina: sessione sviluppatori

Il primo talk e' stato tenuto da James Leszczenski, ingegnere di Facebook, che ha presentato la visione, la missione e i valori della piattaforma connect. Interessante, oltre al talk in se', per la partecipazione del pubblico: la platea era profondamente interessata a sapere quali informazioni si ottengono da Facebook, come gestirle, e quali strumenti connect fornisce per collegare identita' e trovare amici su un sito web abilitato.

Piu' tardi ho avuto occasione di chiedere a James se FB fosse incline o meno ad adottare OpenID come metodo di autenticazione: ha detto che connect e OpenID permettono entrambi agli utenti di avere credenziali di login uniche per accedere a piu' siti, ma connect permette anche di sfruttare la potenza del social graph di Facebook per consentire agli utenti di comunicare e condividere informazioni. Quindi, la risposta breve e' “no”. Allora gli ho proposto di implementare OpenID su FB stesso, cosi' che connect potesse diventare davvero un superset di OpenID, ma ha risposto che “come azienda, queste sono decisioni difficili e non posso dare una risposta adesso”. Comprensibile :).

AGGIORNAMENTO: il 27 aprile 2009, TechCrunch riporta di aver sentito che Facebook abbraccera' OpenID come mezzo per autenticare gli utenti. Ottime notizie, in attesa di una dichiarazione ufficiale da Facebook! :)

Il secondo talk e' stato tenuto da Vincenzo Acinapura, che ha descritto gli strumenti di base per creare un'applicazione sulla piattaforma Facebook. Ha esplorato le tecnologie che ci stanno dietro (XFBML, FQL, FBJS), i principali punti di integrazione all'interno della piattaforma (notifiche, publisher, ...) e ha mostrato codice d'esempio per implementare alcuni dei tag FBML piu' usati (fb:comments, fb:share, fb:feed, e cosi' via). Infine ha ricordato l'importanza di automatizzare il deploy delle applicazioni, e ha suggerito di usare capistrano per farlo.

Un pappagallo geek che twitta

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

Sto cercando un nuovo animale domestico. Noi abbiamo gia’ due gatti adorabili, ma dopo aver sentito quanto puo’ essere viva una casa con tanti animali (dopo una bella serata al maniero de il quadrato), sto pensando di prenderne un altro da crescere e amare.

Ma che razza di geek sarei, se non ci aggiungessi un tocco nerd? Quindi, dopo l’interfaccia cervello-twitter di cui si e’ parlato tanto negli ultimi giorni, stasera un pensiero abbastanza casuale e divertente mi e’ balenato in testa: che ne dite di prendere un pappagallo cenerino, crescerlo, insegnargli a parlare, e lasciarlo… be’, twittare le sue parole usando un sistema di riconoscimento vocale piazzato accanto alla sua gabbia e collegato a un account twitter? Quanto sarebbe assurdo? :D

Tweeting parrot

A pensarci bene, la cosa piu’ strana e’ che nel 2009, un pappagallo che twitta mi fa pensare a un “pappagallo con accesso a twitter”… e non a un uccello che emette il suo verso naturale. Sono troppo sovraccaricato da questa storia dei social media? Dovrei prendermi una vacanza?

Direi di si’. Ma non adesso. Il primo Facebook Developer Garage italiano e’ tra appena due giorni… :)

Immagine per gentile concessione di @ozjulian su flickr, CC BY-NC-SA

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

🔍
Retrospettiva 2026
Il principale competitor che avevamo identificato nella nostra application — Aardvark — fu acquisito da Google per 50 milioni di dollari nel febbraio 2010, per poi essere chiuso un anno dopo. Quora fu lanciato due mesi dopo il nostro rifiuto e crebbe fino a 300 milioni di utenti mensili. La maggior parte degli altri competitor che avevamo elencato — Yahoo Answers, Google Knol, Mosio — sono morti. E il problema che stavamo cercando di risolvere — “fai una domanda, ottieni una risposta soddisfacente da qualcuno che sa davvero” — oggi lo risolvono i large language model. Noi volevamo che gli umani fossero i neuroni di una mente collettiva. I neuroni, alla fine, sarebbero stati artificiali.

Nel 2007, Antonio Orlando mi propose un’idea: una piattaforma di domande e risposte basata sulla semantica. La chiamammo Bioniqa — bionic Q&A. Non un motore di ricerca — i motori di ricerca scansionano pagine esistenti e le classificano. Questo sarebbe stato un sistema in cui sono le persone a generare i contenuti. Fai una domanda, il sistema la instrada verso la persona giusta, e col tempo impara chi sa cosa, dove, e in che lingua.

Chiamavamo gli utenti “Neuroni” e la conoscenza collettiva “la Mente.” Ogni utente è specializzato — un Neurone in un dominio specifico, una lingua, una zona geografica. Quando sono connessi, le informazioni fluiscono tra loro e il sistema si adatta. Il software avrebbe preso in prestito concetti dalla natura: diversità, adattamento, neuroplasticità. Geografia e lingua sarebbero stati attributi di prima classe, non dettagli secondari.

Avviso a tutti i dipendenti

(Letto su full-disclosure)

Subject: Notice to all employees
Date: Tue, 24 Feb 2009 13:06:14 -0500

Dear employees,

Due to the current financial situation caused by the slowdown
of the economy, Management has decided to implement a scheme
to put workers of 40 years of age and above on early retirement.

This scheme will be known as RAPE (Retire Aged People Early).

Persons selected to be RAPED can apply to management to be eligible
for the SHAFT scheme (Special Help After Forced Termination).
Persons who have been RAPED and SHAFTED will be reviewed under the
SCREW programme (Scheme Covering Retired Early Workers). A person
may be RAPED once, SHAFTED twice and SCREWED as many times as
Management deems appropriate.

Persons who have been RAPED can only get AIDS (Additional Income
for Dependents & Spouse) or HERPES (Half Earnings for Retired
Personnel Early Severance).

Obviously, persons who have AIDS or HERPES will not be SHAFTED or
SCREWED any further by Management.

Persons who are not RAPED and are staying on will receive as much
SHIT (Special High-Intensity Training) as possible. Management
has always prided itself on the amount of SHIT it gives employees.

Sincerely,
The Management

(Spero vi siate divertiti :D C’e’ anche una versione USAF del 1997).

📜

Questo articolo è stato scritto nel 2009. È qui per ragioni storiche — i dettagli tecnici potrebbero non essere più validi.

🔍
Retrospettiva 2026
La maggior parte dello stack qui è morto: il .live() di jQuery è stato rimosso nella 1.9, attachment_fu è stato soppiantato da Paperclip e poi da ActiveStorage integrato in Rails (Rails 5.2, 2018). Sia il plugin registry di jQuery che RubyForge hanno chiuso i battenti da anni.

Su VisitaCSA stiamo usando facebox di defunkt per mostrare le immagini dei luoghi in grande. Facebox e’ un ottimo lightbox generico, perche’ e’ veloce, stabile, si basa su jQuery e ha un’API davvero pulita.

Ma avevamo bisogno di qualcosa in piu’ di un semplice lightbox di visualizzazione, perche’ volevamo che i nostri utenti potessero navigare facilmente tra tutte le immagini, possibilmente senza modificare facebox. La soluzione si e’ rivelata piuttosto semplice, grazie anche al plugin will_paginate che stavamo gia’ usando. In sostanza si tratta di avere:

  • Un model Photo, attrezzato con il metodo has_attachment
  • Route per le risorse photos (map.resources :photos, :only => :show in config/routes.rb)
  • Un metodo show nel controller PhotosController che chiama .paginate con un argomento :per_page di 1
  • Una vista HTML per la risorsa photo, con i controlli di paginazione usando l’helper will_paginate
  • Del codice jQuery che si aggancia ai link di paginazione e fa caricare al browser via AJAX la foto successiva direttamente nel facebox.

Ecco il codice rilevante, semplificato rispetto a quello effettivamente online, perche’ il model photo e’ in realta’ polimorfico (usa STI) e diverse collezioni sono gestite dal photos controller (foto, volantini, ecc.) per diversi model, con miniature diverse :P.

Model [app/models/photo.rb]

class Photo < ActiveRecord::Base
  has_attachment :storage => :file_system, :path_prefix => 'public/photos',
    :processor => 'ImageScience', :thumbs => { :thumb => '600x800' }
end

Controller [app/controllers/photos_controller.rb]

class PhotosController < ApplicationController
  layout nil
  before_filter :find_place

  # The photo gallery core is here
  def show
    photo = Photo.find(params[:id])
    page = params[:page] || @place.photos.index(photo) + 1
    @photos = @place.photos.paginate(:per_page => 1, :page => page)
    @photo = @photos.first
  end

  def find_place
    @place = Place.find(params[:place_id])
  end
end

Vista [app/views/photos/show.html.erb]

<div class="photo">
  <div style="width: <%= photo_width(@photo) %>px; text-align: center;">
    <%= next_photo_link_for @photo, :in => @photos %>
  </div>
  <p><%=h @photo.title %></p>
  <p>
    <%= will_paginate @photos, :prev_label => '&nbsp;', :next_label => '&nbsp;' %>
  </p>
</div>

La gem image_size e’ necessaria per consentire a facebox di allinearsi correttamente al centro della finestra.


In questa pagina