Al cifrar archivos individuales en el directorio para almacenamiento en la nube, ¿está almacenando IV y Salt con el archivo incorrecto?

1

Estoy desarrollando una utilidad simple para resolver un problema muy específico: quiero almacenar todas mis imágenes en la nube. Fotos familiares, nada perversas, ilegales o mortales. Los requisitos son:

Quiero que estén al menos "ocultos", como en "no visibles e indexables automáticamente cuando alguien barre mi cuenta de almacenamiento", como Google o Microsoft cuando están recolectando cosas para entrenar sus servicios cognitivos o cualquier mega de corporaciones. co.nz da acceso a mis archivos para. Mejor sería cifrado de forma segura, obviamente.

Necesito poder detectar cambios en una sola imagen y cargar solo eso, evitando así enormes archivos.

He desarrollado una secuencia de operaciones utilizando solo bibliotecas estándar (apache commons crypto principalmente) que deberían ser seguras para los estándares actuales:

[una vez, cuando se ejecuta el cifrado]

  1. ingrese una contraseña (cualquier longitud)

[los siguientes pasos se repiten para cada archivo]

  1. generar un salt SecureRandom (32 bytes)
  2. calcular una contraseña de 16 bytes + hash de sal usando PBKDF2WithHmacSHA512 (1000 iteraciones)
  3. generar un secureRandom IV (16 bytes)
  4. ZIP el archivo único (esto se puede alternar ya que es inútil para las imágenes)
  5. AES cifra el archivo utilizando AES / CBC / PKCS7Padding

Sé que esto no ocultará el nombre, la naturaleza y el tamaño de mis archivos (al contrario de lo que trata de hacer Cryptomator, por ejemplo, pero webdav es un problema cuando se trata de detectar cambios en los archivos), pero debería estar bien por mí, a menos que permita el craqueo de todo el cifrado de alguna manera.

Ahora necesito almacenar el salt y el IV, y actualmente he decidido almacenarlos en un archivo JSON de metadatos en el mismo lugar donde almacenaré el archivo cifrado. He leído y entiendo que la IV debe ser aleatoria pero no necesita ser secreta, corríjame si me equivoco, pero ¿qué pasa con la sal de hachís? ¿Puedo almacenarlo con el IV y el archivo cifrado sin amenazar con ninguna parte del cifrado?

    
pregunta francesco paolo schiavone 02.01.2017 - 16:38
fuente

2 respuestas

1

Como comentó @Limit,

  

toda su seguridad depende de su contraseña. Si un atacante tiene acceso a su directorio, puede acceder tanto a su sal como a su IV.

Por lo tanto, no debería ser un problema almacenarlos.

Su contraseña será el elemento más importante que debe proteger :-)

    
respondido por el Rory Alsop 08.03.2018 - 12:39
fuente
0

Ni la IV ni la sal son secretos, por lo que puedes guardarlos en los metadatos.

para qué se utiliza cada propiedad

    
respondido por el McMatty 08.03.2018 - 23:43
fuente

Lea otras preguntas en las etiquetas