Perché la tua zona non è il tuo indirizzo
Condividere libri per quartiere significa dire dove si è, e dire dove si è è la cosa più delicata che si possa fare online. Come Serenlibrità mostra una zona senza mai conoscere l'indirizzo, spiegato senza gergo.
Un sito che ti fa trovare libri «a due strade da qui» ha un problema che non può aggirare: per funzionare deve sapere dove sei, e per essere sicuro non deve dirlo a nessuno. Le due cose sembrano incompatibili. Non lo sono, ma la soluzione non è quella che la maggior parte dei siti adotta — che è mostrare il punto esatto e sperare che vada bene.
Questa pagina spiega come è risolto qui. Vale la pena leggerla anche se non ti iscriverai mai: le stesse domande andrebbero fatte a qualunque servizio che ti chieda la posizione.
Il problema, detto bene
Immagina una mappa che mostra un puntino dove abita chi presta un libro. Il puntino è la sua casa. Chiunque può aprire la mappa, ingrandire, e leggere il civico. Non serve essere un malintenzionato esperto: serve un browser.
La prima idea che viene a tutti è «mostriamo un punto approssimato». Giusto, ma il diavolo sta in come si approssima — e ci sono due modi di sbagliare che sembrano innocui e non lo sono.
Errore 1: arrotondare
Tagliare i decimali delle coordinate sembra prudente e invece crea una griglia: tutti quelli che stanno nello stesso quadrato finiscono esattamente sullo stesso punto. Sapendo com'è fatta la griglia, si torna indietro all'area di partenza. E chi vive in una zona poco popolata resta comunque identificabile, perché in quel quadrato c'è una casa sola.
Errore 2: spostare a caso, ogni volta
Questo è il più insidioso. Se il punto viene spostato in una direzione casuale ogni volta che qualcuno guarda la pagina, sembra più sicuro: il puntino balla, non sta mai fermo. In realtà è molto peggio. Chi ricarica la pagina cento volte raccoglie cento punti sparsi intorno alla posizione reale, e la media di quei cento punti è la posizione reale. Più a lungo si osserva, più il risultato è preciso. Un offuscamento che si ri-estrae a ogni sguardo non protegge: rimanda.
Come funziona qui
Serenlibrità sposta la posizione una volta sola, e la tiene ferma.
Uno spostamento ad anello, fra 150 e 300 metri
Quando indichi dove sei, il sistema sceglie una direzione a caso — un angolo qualsiasi fra 0 e 360 gradi — e una distanza compresa fra 150 e 300 metri. Il punto che viene salvato è quello di arrivo, non quello di partenza.
La forma è un anello e non un cerchio pieno, e la differenza conta: con un cerchio pieno il punto potrebbe capitare a due metri da casa tua, cioè non essere spostato affatto. Un anello garantisce un minimo. Il raggio, poi, non è estratto in modo uniforme fra 150 e 300: è pesato in modo che il punto abbia la stessa probabilità di finire in qualunque area dell'anello. Senza quella correzione i punti si addenserebbero verso il bordo interno — cioè verso di te.
Calcolato una volta, non ogni volta
Lo spostamento viene ricalcolato solo se la posizione reale cambia davvero. Aggiornare il profilo, ricaricare la pagina, farsi guardare da mille persone diverse: il punto resta quello. È la difesa diretta contro l'attacco della media descritto sopra — cento osservazioni dello stesso punto danno cento volte lo stesso punto, e la media di un numero ripetuto è quel numero.
La coordinata vera non viene salvata
Questa è la parte che di solito manca altrove. La posizione reale entra nella funzione che calcola lo spostamento, viene usata per il calcolo, e viene scartata quando la funzione finisce. Non esiste una colonna nel database in cui sia scritta, non finisce nei log, non viene rimandata al browser. L'unica cosa che sopravvive è il punto spostato.
La conseguenza pratica è che la domanda «e se qualcuno accedesse al database?» ha una risposta breve: troverebbe le stesse posizioni approssimate che vedi tu.
In una riga. Direzione casuale, distanza fra 150 e 300 metri, calcolata una volta e mai più ri-estratta, con la coordinata di partenza scartata subito dopo.
Le altre tre cose che vale la pena sapere
Le distanze si leggono a fasce
Nei risultati non compare mai un numero di metri. Compare una fascia — «entro ~300 m», «entro ~1 km». Un numero preciso sarebbe un regalo a chi vuole triangolare: con tre distanze esatte da tre punti noti si ricava una posizione, ed è esattamente così che funziona il GPS. Con le fasce, no.
Le foto delle copertine perdono i dati nascosti
Una foto scattata col telefono contiene molto più dell'immagine: data, modello dell'apparecchio e, se la geolocalizzazione della fotocamera è attiva, le coordinate di dove è stata scattata — cioè quasi sempre casa tua. Una copertina fotografata sul tavolo di cucina è un indirizzo, se nessuno ripulisce il file. Qui i dati nascosti vengono rimossi al caricamento, miniature comprese.
Il consenso si revoca, con effetto immediato
La geolocalizzazione è un consenso separato, e revocarlo non è una richiesta che finisce in una coda: dal momento della revoca le tue copie escono dai risultati e dalle pagine pubbliche. Non c'è una versione «in cache» che continua a girare per qualche ora.
Cosa questo non fa
Nessuna tecnica ti rende invisibile, ed è giusto dire dove si ferma questa.
- Se sei l'unica casa nel raggio di un chilometro, un'area di trecento metri intorno a te contiene comunque una sola casa. In campagna la protezione geometrica vale meno che in città: è una proprietà della geografia, non del software.
- Se scrivi il nome della tua via in un messaggio, il sistema non può disfarlo.
- Chi ti incontra per lo scambio ti vede in faccia. È il punto dello scambio.
Quello che l'offuscamento garantisce è che il sito non riveli l'indirizzo — non in una pagina pubblica, non in una mappa, non in un'esportazione di dati, non nel database. Il resto lo decidi tu, conversazione per conversazione, ed è come dev'essere.
In breve
- Arrotondare le coordinate crea una griglia reversibile: non è offuscamento.
- Ri-estrarre lo spostamento a ogni visualizzazione è peggio di non farlo: la media rivela il punto vero.
- Qui: anello 150–300 m, direzione casuale, calcolato una volta sola.
- La coordinata reale non viene mai salvata.
- Distanze a fasce, mai in metri; dati nascosti rimossi dalle foto; consenso revocabile all'istante.