¿Qué algoritmo criptográfico debe usarse en el lado del cliente para cifrar el archivo antes de subirlo a una nube que es solo para fines de almacenamiento?

-3

Quiero desarrollar un sitio web que tome los archivos de mi computadora, lo cifre con mi clave y lo cargue en la nube que es solo para almacenamiento y lo descifre después de descargarlo en mi computadora. Para esto, qué algoritmo criptográfico debo usar y que están disponibles en cualquier biblioteca criptográfica.

    
pregunta nitin desai 20.07.2016 - 04:41
fuente

4 respuestas

2

Lo que debe hacer es cifrar los archivos antes de subirlos al proveedor de la nube y descifrarlos en la descarga.

Asumptions

  • No desea que el proveedor de la nube pueda leer (descifrar) estos archivos.
  • Le gustaría algo simple de implementar

Haz esto

Use un algoritmo simétrico para cifrar los archivos. El algoritmo seguro más común es AES

Hay muchas implementaciones, consulte Implementaciones AES

Un ejemplo es usar 7-zip para cifrar los archivos usando AES, luego subirlos al servidor en la nube . Esto se considera seguro y debería oponerse a todos los adversarios, suponiendo que elija una buena configuración (longitud de la clave, etc.)

¿Quieres seguridad perfecta?

Si realmente quieres asegurarte de que uno pueda ver estos archivos, puedes cifrarlos con un One Time Pad , que haría que los archivos sean matemáticamente irrompibles para siempre *, pero le daría una clave del mismo tamaño que los archivos. Normalmente no es práctico.

* asumiendo generación de claves aleatorias

    
respondido por el Aaron 20.07.2016 - 20:07
fuente
0

Su necesidad es solo para almacenar el archivo en la nube y suponer que la clave siempre estará con usted y solo con usted.

Aquí está la lista de algoritmos que puede usar:

  1. Triple DES
  2. RSA
  3. Blowfish
  4. Twofish
  5. AES

Puedes cifrar con cualquiera de estos y subirlos a la nube y para el descifrado, solo tendrás la clave.

    
respondido por el Shaswat 20.07.2016 - 11:45
fuente
-1

AES está disponible en cualquier biblioteca criptográfica. Utilice AES. O mejor que eso, use una biblioteca de blackbox como NaCl o libsodium con los valores predeterminados, que fue diseñada por un criptógrafo de primera categoría, lo que significa que no tiene que preocuparse por arruinar la implementación que es muy probable que haga si lo hace. intente e implemente esto usted mismo.

    
respondido por el Xander 20.07.2016 - 16:53
fuente
-1

El que cumple con sus requisitos.

  • Si solo quieres subirlo y descargarlo, no lo cifres.

  • Si quieres cifrarlo porque su cifrado suena muy bien, solo XOR con 01010101b.

  • Si desea cifrarlo para que sea seguro, defina lo que significa seguro para usted.

    • ¿Desea evitar que el proveedor de la nube analice automáticamente su archivo?
    • ¿Desea evitar que el proveedor de la nube descifre su archivo ahora?
    • ¿Desea evitar que el proveedor de la nube descifre los archivos en 1/10/100 años?
    • ¿Desea evitar que gobiernos poderosos (por ejemplo, NSA) descifren su archivo ahora / en 1/10/100 años?
    • ...
  • ¿Cuántos recursos de CPU puede usar para el cifrado?

  • ¿El hardware que usa tiene soporte para algunos cifrados como AES-NI ?
  • ¿Hay normas legales / reglamentarias que deba cumplir?
  • ...

Con la poca información que proporcionó, nadie puede responder correctamente esa pregunta.

Si no te importa, descarga este informe y simplemente elija un cifrado al azar de la página 23 o 27

    
respondido por el Josef 20.07.2016 - 12:08
fuente