6 min readface Aronne Briviofolder Sicurezza 27 Mar 2017

KBFS, il cloud sicuro



Nell'articolo precedente abbiamo visto Keybase e le funzionalità social che offre. Abbiamo anche accennato a KBFS, che sta per Keybase Filesystem ed in questo articolo andremo a vedere di cosa si tratta e del perchè risulta essere un'alternativa davvero innovativa ai più comuni servizi di cloud.

Il servizio di KBFS è integrato nell'applicazione per PC di Keybase e, come le altre funzionalità della suite, è utilizzabile sia da riga di comando che in modalità grafica.

Per semplicità possiamo pensarlo come una sorta di Dropbox, che appare sulla nostra macchina come una cartella dentro la quale possiamo caricare file e documenti.

A differenza di questi servizi però non esiste un modello di sincronizzazione, vale a dire che non dovremo scaricare tutti i file in locale per poterli gestire, ma verranno scaricati solo al momento dell'apertura. Un'altra differenza è la gerarchia delle sottocartelle in cui ci imbattiamo. Questo perchè lo spazio a nostra disposizione è logicamente suddiviso in un'area pubblica e una privata.

KBFS Public

Al fine di descrivere le funzionalità di KBFS utilizzerò il mio username sul sistema, aroblu94.

Detto questo i nostri due spazi personali saranno raggiungibili rispettivamente a /keybase/public/aroblu94/ e /keybase/private/aroblu94/.

Cominciamo vedendo nello specifico le funzionalità della cartella pubblica.

Tutto quello che andremo a inserire qui verrà infatti firmato con la nostra chiave in modo automatico e reso disponibile a tutti gli utenti Keybase comodamente in chiaro. Lo scopo di questa funzionalità è quella di poter condividere determinati file in modo sicuro, dando al tempo stesso la certezza a chi li preleva o visualizza che si tratta di file non manomessi al momento del download. La firma infatti serve proprio a questo, è un po' come dire "Questo file è autentico e funzionante, potete scaricarlo da qui senza temere che possa essere stato modificato".

In aggiunta a questo la vostra cartella pubblica funge da webroot, permettendovi di caricarci al suo interno un "minisito". Basterà infatti la presenza di un file index, che sia .html, .md o quant'altro, per poterlo raggiungere ad un indirizzo del tipo https://aroblu94.keybase.pub.

KBFS Public Cli

Allo stesso modo è possibile raggiungere le cartelle pubbliche di qualsiasi utente Keybase, utilizzando sia il loro username sulla piattaforma, che gli username di qualsiasi altro social network collegato. Vale a dire che il contenuto della cartella /keybase/public/aroblu94/ può essere raggiunto ad esempio anche come

/keybase/public/aro94@twitter/
/keybase/public/aroblu94@reddit/
/keybase/public/aroblu94@github/

Vediamo ora le funzionalità dell'area privata di keybase.

Allo stesso modo ci sarà una cartella /keybase/private/aroblu94/. Tutti i file che vengono caricati qui sono cifrati e accessibili solo a noi stessi, solamente da macchine che sono state verificate. Per poter usare KBFS infatti sarà necessario aggiungere il PC alla lista dei device verificati del nostro account.

Ovviamente non possiamo raggiungere le cartelle private degli altri utenti come facevamo con quelle pubbliche, è possibile però creare delle cartelle condivise tra utenti. Se volessi infatti scambiare dei documenti in modo sicuro con Daniele e Niccolò - gli altri due membri de L'angolo nerd -, sarà sufficiente creare una cartella aroblu94,theloker,nicokant sotto /keybase/private/.

Sempre grazie alla connessione bi-direzionale tra i profili collegati ad ogni account Keybase è possibile utilizzare lo username Twitter, GitHub o quello che preferiamo per collegarci con una persona.

KBFS Private Cli


Per quanto riguarda la sicurezza dell'intero sistema bisogna ricordare che i server Keybase non memorizzano alcuna chiave privata e di conseguenza non possono leggere i file caricati in /keybase/public/, mentre conoscono - ovviamente - il contenuto di quelli pubblici.

Keybase inoltre conosce ulteriori metadata quali la cartella modificata, la data di modifica/accesso e - approssimativamente - la quantità di dati scambiati, fermandosi però all'altezza di /keybase/private/{cartella}/, senza conoscere invece file e sottocartelle all'interno, come possiamo leggere nella citazione seguente presa dalla documentazione di Keybase:

The Keybase servers can obviously read everything in /keybase/public.

As for /keybase/private, Keybase can tell (1) what top level folders you're working in (such as /keybase/private/aroblu94,pal), (2) when you're writing and reading data, and (3) approximately how much data.

The Keybase server does not know individual file names or subdirectory names. It could try to guess whether you're writing 100 small files or 1 large file, but it would be a timing-based guess. If you write a 1MB file in a private folder called /keybase/private/aroblu94/pics_of_me/thong.jpg, the Keybase server has no idea this is a folder called pics_of_me, or that there's a file called thong.jpg, or whether you look good. It doesn't know you're writing pictures, Excel docs, your DNA sequence, or mp3's.

Per ulteriori informazioni sui meccanismi di sicurezza adottati in Keybase Filesystem vi rimando alla documentazione ufficiale.


kbfs keybase filesystem cloud pgp end-to-end crittografia sicurezza
  • Telegram
  • Whatsapp
chat

Commenti