¿Es SpiderOak realmente "conocimiento cero"?

8

Recientemente cambié la contraseña de SpiderOak en la computadora A. Como también tengo SpiderOak instalado en la computadora B, pensé que tendría que actualizar la contraseña para que la aplicación pueda conectarse al servidor.

Me sorprendió bastante cuando descubrí que la contraseña se actualizó automáticamente.

Así que envié una pregunta a SpiderOak. Aquí está lo que respondieron:

  

Debo señalar que si cambia su contraseña, estas actualizaciones   ser detectado en todas sus máquinas porque SpiderOak encripta   Su contraseña y la contraseña cifrada se envían al servidor y luego   Distribuido a cada dispositivo. Cada dispositivo es capaz de descifrar la   Contraseña y actualización a los nuevos cambios.

     

Al cambiar su contraseña, ha creado un nuevo conjunto de cifrado   llaves. Todas las claves están cifradas con AES de 256 bits, utilizando una clave creada   de su contraseña por el algoritmo de derivación / fortalecimiento clave   PBKDF2 (usando sha256), con un mínimo de 16384 rondas y 32 bytes de   Datos aleatorios ("sal"). Este enfoque evita la fuerza bruta y   pre-cómputo o ataques a la base de datos contra la clave.

Realmente no entiendo. ¿Cómo puede un dispositivo descifrar la contraseña recién creada?

    
pregunta Viridis 05.03.2015 - 09:39
fuente

3 respuestas

5

Descargo de responsabilidad: nunca he intentado usar el roble araña, así que solo hago lo que dicen que hacen, lo que te dijeron que hacen y cómo se ve el resultado final.

Dado que dicen estar almacenando sus datos encriptados y que nunca podrán acceder a ellos, asumo que lo único a lo que tienen acceso es en realidad la versión encriptada de sus datos. Esto significaría que la aplicación en el cliente realiza todas las operaciones de cifrado / descifrado y solo almacena los datos resultantes (y posiblemente los metadatos cifrados adicionales en el servidor).

Estos datos deben estar encriptados por algo. Ahora siguiendo su respuesta, supongo que tienen una jerarquía de teclas. Mi conjetura sería al menos 2 niveles, pero para simplificar, simplemente asumamos uno.

Esto significaría que los datos se cifran con una clave K 1 generada de forma aleatoria (en su máquina). Luego, esta clave se encripta con una clave K 2 = PBKDF (sal de 32 bytes, contraseña, 16384 rondas). Por la fea descripción anterior, quiero decir que usan el algoritmo PBKDF2 (función de derivación de clave basada en contraseña v2.) (Usando SHA-2) para generar una clave de cifrado a partir de su contraseña. Esta clave K 2 nunca se almacenará en ningún lugar (excepto la memoria del cliente). Siempre se generará sobre la marcha cuando desee acceder a sus datos.

El paquete que luego se enviaría y almacenaría en los servidores de Spider Oak sería E K 1 (datos), E K 2 (K 1 ). Cuando luego desea recuperar los datos, los datos enviados a usted se cifran y la clave que se le envía también se cifra. Cuando ingresa su contraseña, PBKDF2 se usa para generar K 2 que se usa para descifrar K 1 , que luego se usa para descifrar sus datos.

Entonces, ¿qué sucede cuando cambias tu contraseña? Bueno, el servidor envía a su cliente todos los paquetes E K 2 (K 1 ) $ para cualquier K 1 ' s tiene para sus datos. A nivel local, estos se descifran mediante la clave generada a partir de la contraseña anterior y se vuelven a cifrar mediante la clave generada a partir de la nueva contraseña, que da un nuevo K ' 2 .

Cuando llegas a un dispositivo diferente, enciendes a tu cliente y tratas de recuperar tus datos, los datos encriptados vienen acompañados por la clave encriptada con tu nueva contraseña. Usted ingresa la contraseña, PBKDF2 es mágico, y voilá descifra K 1 y luego descifra sus datos.

edit: GAH ¿cómo consigo que TeX funcione aquí en mis publicaciones?

Edit2 .: Al volver a leer la información que recibió del representante, parece que en realidad todos los nuevos K 1 también se generan. Esto parece algo sospechoso en el sentido de que, o bien hacen cifrado / descifrado en sus servidores (por lo tanto, no es totalmente de conocimiento) o le envían todos los datos cuando cambia su contraseña y su cliente la vuelve a cifrar. El primero de estos parece ser más honesto, ya que los gastos generales para el cliente serían bastante grandes. Por supuesto, también es posible que el representante no sepa realmente lo que está diciendo. He tenido que suceder varias veces.

    
respondido por el DRF 05.03.2015 - 13:19
fuente
0

Bueno, pueden cifrar la nueva contraseña con la contraseña anterior o con alguna clave intercambiada entre las máquinas antes del cambio de contraseña. Esta es la forma en que podrían hacer eso.

Sin embargo, no tengo el código fuente y seguramente no lo sé.

    
respondido por el v6ak 05.03.2015 - 11:56
fuente
0

Es probable que DRF sea correcto, ya que la contraseña está encriptada localmente con su clave privada y no es accesible para SpiderOak.

Sin embargo, para la pregunta más general en el título, diría que no.

La deduplicación es un puerro de información. enlace

Piensa en cómo podría funcionar esto. O bien almacenan un hash de los datos sin cifrar o usan la misma clave de cifrado AES y sal para los dos archivos. Tampoco son ideales.

Se basan en los EE. UU. y, como tales, están sujetos a las leyes locales de protección de datos, o a su falta.

Los archivos compartidos se almacenan descifrados en sus servidores, una trampa para las personas que pueden haber asumido lo contrario. enlace Esperamos que para compartir un archivo sea necesario descargarlo, descifrarlo localmente y volver a cargarlo de forma clara y NO descifrarlo en el servidor.

Tienen una función de registro de dispositivo que mantiene su computadora conectada todo el tiempo. Si pierde un dispositivo, debe desregistrar manualmente el dispositivo de otra computadora. Esto obliga al usuario a recordar cerrar sesión todo el tiempo. enlace

Cuando cierres tu cuenta, eventualmente eliminarán tus archivos, lo que significa que saben qué archivos te pertenecen y eso también es un puerro de información.

Esto no es un error de SpiderOak y es probable que sea común a todos los proveedores de "características" similares. Para mí, las características a menudo implican riesgos adicionales, especialmente si están respaldadas por encima del cifrado después del hecho.

    
respondido por el dave.zap 03.11.2016 - 09:52
fuente

Lea otras preguntas en las etiquetas