Cómo cifrar los datos antes de almacenarlos en la nube

Respuesta breve: cifre en el lado / dispositivo del cliente antes de que deje su dispositivo o red en la nube.

Respuesta larga: depende.

Realmente depende de lo que intente encriptar, cómo se accederá a los datos encriptados (obviamente, debe desencriptarlos), usted mismo o alguien más dentro de su organización.

Tomemos algunos casos de uso.

Archivos: Word, PDF, Excel, Texto, etc.

Si desea almacenarlos en servicios como DropBox / Box y similares, puede usar varias soluciones disponibles en el mercado que cifrarán los datos en su dispositivo antes de que se sincronice con el almacenamiento de archivos en la nube. O puede usar servicios como Cipher Cloud que pueden actuar como proxy para cifrar o descifrar antes de que abandone su red.

Datos – Datos de aplicación.

En este caso, probablemente tenga que escribir una capa API alrededor de la API del proveedor de la nube para cifrar los datos antes de que salgan de su red. La razón por la que digo que la red es, será más de una persona la que necesitará acceso a esta información y debe ser descifrada.

El cifrado es solo una pieza del rompecabezas. La pregunta más importante es cómo administra las claves, la autorización de los datos. A menudo, se ve a personas que encriptan o caen en encriptación transparente de datos, pero luego no hay autorización sobre quién puede acceder a los datos. Necesita una estrategia de gestión de claves y una autorización efectivas.

¿Cómo puede cifrar los datos en la nube?

Debe profundizar en la documentación / proceso del proveedor de la nube para comprender cómo puede mantener seguros los datos. Algunos ofrecen cifrado de datos transparente (la clave es administrada por ellos …) y otros ofrecen servicios en los que puede externalizar la administración de claves y tener cierto control sobre ella. Amazon (AWS) tiene KMS que puede aprovechar para cualquier servicio de AWS.

Box se asocia con AWS para crear una solución en la que pueda integrar AWS KMS con Box.

Entonces pregúntate

a) ¿Qué datos quieres proteger?

b) De quién desea proteger: la fuga no autorizada de datos fuera de la empresa o solo unos pocos dentro de su organización deben tener acceso a los datos.

c) Quién produce los datos, qué hombres tienen la propiedad de los datos y con qué frecuencia cambian.

d) Cómo acceden estos datos a otras aplicaciones o servicios. Una vez que cifre, debe agregar la lógica de descifrado en todas partes. (Es por eso que existe una fuerte preferencia por el cifrado de datos transparente).

e) Quién debe tener control sobre la clave de cifrado. ¿Usuario corporativo o final? (Se remonta a la propiedad de los datos). Ejemplo: si es proveedor de aplicaciones de mensajería, desea que los consumidores tengan control sobre la clave. Si desea proteger a sus empleados, los datos de los clientes, es muy probable que sea de propiedad corporativa para cualquier aplicación o uso legal.

f) Con qué frecuencia se pueden rotar y administrar las claves.

g) Qué fácil es cambiar de proveedor de la nube: esto es más una cuestión arquitectónica. no sucederá con frecuencia, pero en el caso de que ocurra, debes estar preparado.

h) Encriptación transparente pero no transparente. 🙂 Debería ser transparente para los desarrolladores de aplicaciones (de lo contrario, se volverán locos tratando de comprender todos los matices), pero no debe confiar en el cifrado transparente del proveedor de la nube sin control sobre las claves. (Entonces se convierte en una cuestión de confianza y contrato legal que una solución técnica).

Feliz cifrado. Werner Vogels tuvo el mejor tweet sobre este “Baila como si nadie estuviera mirando y Cifra como todo el mundo está mirando”. (No se pudo encontrar la fuente). Alguien hizo una camiseta

Amazon.com: Danza de adultos como nadie está mirando Cifrar como si todo el mundo es unsx / hombres Camiseta: ropa

GNU Privacy Guard es una opción, o alguna otra utilidad de cifrado del lado del cliente si solo está cargando datos en el almacenamiento en la nube (como un servicio de almacenamiento de objetos como S3, o un servicio al consumidor como iCloud / Google Drive / etc.). También hay versiones de GPG para Windows y Mac.

Si tiene una aplicación que se ejecuta en las instalaciones y está operando en un dato que posteriormente debe almacenarse en algún lugar fuera de las instalaciones, se utilizará una biblioteca de cifrado para su lenguaje de programación. En el ejemplo más simple, la función Unix crypt (3) está disponible para programas escritos en C (“man crypt” en el símbolo del sistema para más detalles). PHP tiene la función Mcrypt, python tiene varias opciones y todos los demás lenguajes también tienen algo.

Esto también funciona para aplicaciones que se ejecutan en la nube, como EC2 o Google Cloud Platform.