SpiderOak è veramente "zero-conoscenza"?

8

Recentemente ho cambiato la password di SpiderOak sul computer A. Perché ho SpiderOak installato anche sul computer B, ho pensato che dovrò aggiornare la password su di esso in modo che l'applicazione possa connettersi al server.

Sono rimasto piuttosto sorpreso quando ho scoperto la password aggiornata automaticamente da sola.

Quindi ho inviato una domanda a SpiderOak. Ecco cosa hanno risposto:

I must point out that if you change your password, these updates will be detected across all of your machines because SpiderOak encrypts your password and the encrypted password is sent to the server then distributed to each device. Each device is able to decrypt the password and update to the new changes.

By changing your password, you have created a new set of encryption keys. All keys are encrypted with 256 bit AES, using a key created from your password by the key derivation/strengthening algorithm PBKDF2 (using sha256), with a minimum of 16384 rounds, and 32 bytes of random data ("salt"). This approach prevents brute force and pre-computation or database attacks against the key.

Non capisco davvero. In che modo un dispositivo è in grado di decodificare la password appena creata?

    
posta Viridis 05.03.2015 - 09:39
fonte

3 risposte

5

Dichiarazione di non responsabilità: non ho mai provato a utilizzare spider oak quindi sto solo andando a fare quello che affermano di fare, quello che ti hanno detto che fanno e il risultato finale.

Dato che pretendono di archiviare i tuoi dati crittografati e non sono mai in grado di accedervi, presumo che l'unica cosa a cui abbiano accesso sia la versione crittografata dei tuoi dati. Ciò significherebbe che l'applicazione sul client esegue tutte le operazioni di crittografia / decrittografia e memorizza solo i dati risultanti (e possibilmente metadati crittografati aggiuntivi sul server).

Questi dati devono essere crittografati da qualcosa. Passando ora dalla loro risposta a te, suppongo che abbiano una gerarchia di chiavi. La mia ipotesi sarebbe di almeno 2 livelli, ma per semplicità consideriamo solo uno.

Ciò significherebbe che i dati sono crittografati da una chiave generata in modo casuale K 1 (sulla tua macchina). Questa chiave viene quindi crittografata con una chiave K 2 = PBKDF (32 byte salt, password, 16384 round). Con la brutta descrizione precedente voglio dire che usano l'algoritmo PBKDF2 (Password Based Key Derivation Function v2.) (Usando SHA-2) per generare una chiave di crittografia dalla tua password. Questo tasto K 2 non verrebbe mai memorizzato da nessuna parte (tranne la memoria del client). Sarebbe sempre generato al volo quando vuoi accedere ai tuoi dati.

Il pacchetto che verrebbe quindi inviato e memorizzato sui server di Spider Oak sarà E K 1 (dati), E K 2 (K 1 ). Quando si desidera recuperare i dati, i dati inviati vengono crittografati e viene crittografata anche la chiave inviata all'utente. Quando inserisci la password, PBKDF2 viene utilizzato per generare K 2 che viene utilizzato per decrittografare K 1 , che viene quindi utilizzato per decodificare i dati.

Quindi cosa succede quando cambi la tua password? Bene, il server invia al client tutti i pacchetti E K 2 (K 1 ) $ per qualsiasi K 1 ' s ha per i tuoi dati. Localmente vengono decodificati dalla chiave generata dalla vecchia password e reencrittati dalla chiave generata dalla nuova password, che fornisce un nuovo K ' 2 .

Quando arrivi a un altro dispositivo, accendi il client e prova a recuperare i dati, i dati crittografati vengono accompagnati dalla chiave crittografata utilizzando la nuova password. Inserisci la password, PBKDF2 è magico e voilà decifri K 1 e quindi decrittografano i tuoi dati.

modifica: GAH come faccio a far funzionare TeX qui nei miei post?

Edit2 .: Rileggendo le informazioni ottenute dal rappresentante sembra che vengano generati anche tutti i nuovi K 1 . Questo sembra un po 'strano, nel senso che crittografa o decodifica i loro server (quindi non è completamente a conoscenza zero) o loro ti inviano tutti i dati quando cambi la tua password e il tuo client la re-codifica. Il primo di questi sembra più probabile che sia onesto, poiché altrimenti il sovraccarico per il cliente sarebbe piuttosto ampio. Ovviamente è anche possibile che il rappresentante non sappia davvero cosa sta dicendo. L'ho avuto più volte.

    
risposta data 05.03.2015 - 13:19
fonte
0

Bene, possono crittografare la nuova password con la vecchia password o con qualche tasto scambiato tra le macchine prima della modifica della password. Questo è il modo in cui potrebbero farlo.

Tuttavia, non ho il codice sorgente e sicuramente non lo so.

    
risposta data 05.03.2015 - 11:56
fonte
0

Il formato DRF è probabilmente corretto in quanto la password viene crittografata localmente con la chiave privata e non accessibile a SpiderOak stesso.

Comunque alla domanda più generale nel titolo direi di no.

La deduplicazione è un porro di informazioni. link

Pensa a come potrebbe funzionare. O memorizzano un hash dei dati non crittografati o utilizzano la stessa chiave di crittografia AES e salt per i due file. Né sono ideali.

Sono basati negli Stati Uniti e come tali sono soggetti alle leggi locali sulla protezione dei dati - o alla mancanza di.

I file condivisi vengono archiviati decrittografati sui loro server in una trappola per le persone che potrebbero averlo assunto diversamente. link Ci auguriamo che la condivisione di un file richieda il download, la decrittografia localmente e il ricaricamento in chiaro e NON la decrittografia sul server.

Hanno una funzione di registrazione del dispositivo che mantiene il tuo computer connesso in ogni momento. Se perdi un dispositivo, devi annullare manualmente la registrazione del dispositivo da un altro computer. Questo costringe l'utente a ricordarsi di disconnettersi continuamente. link

Quando chiudi il tuo account, alla fine cancelleranno i tuoi file, il che significa che sanno quali file ti appartengono e che è anche un porro di informazioni.

Questo non è un errore di SpiderOak ed è probabilmente comune a tutti i fornitori di 'caratteristiche' simili. Per me le funzionalità spesso comportano rischi aggiuntivi, specialmente se sono supportati sulla crittografia dopo il fatto.

    
risposta data 03.11.2016 - 09:52
fonte

Leggi altre domande sui tag