Almacenar datos financieros básicos

1

Estoy trabajando en un proyecto similar a una aplicación de presupuesto como mint o ynab. Estaré usando la api de Plaid , que retira números de cuenta / enrutamiento, etc. Por lo tanto, a lo que tendré acceso y seré intentar almacenar, sería el nombre de la cuenta, el saldo, el tipo y los datos transaccionales (cantidad, ubicación, nombre, tipo, fecha, categoría).

También me gustaría almacenar el nombre del usuario y el correo electrónico. Estaba pensando que si cifraba el nombre y el correo electrónico, eso sería "suficiente", pero todavía estoy un poco incómodo por eso. Entonces, aquí están mis preguntas:

  • ¿Cuánto debo cifrar?
  • ¿Cuál es la mejor manera de cifrarlo? Sólo el correo electrónico necesita ser reversible por mí.
  • ¿Cuál es el mejor medio de almacenamiento? Iba a usar postgres, pero podría haber una mejor manera de almacenar esta información.

¡Gracias de antemano por los consejos, trucos, referencias, lo que sea!

    
pregunta Mike 21.03.2018 - 04:17
fuente

1 respuesta

1

En primer lugar, esto depende del país en el que se encuentre y de sus leyes. La mejor práctica es cifrar todos sus datos de usuario ya que está manejando datos financieros.

Solo para evitar confusiones sobre el cifrado de datos, generalmente hay dos cosas que tratar, como se describe a continuación. La razón por la que menciono esto es que, según mi experiencia, la gente me dice, como consultor de seguridad, que "la base de datos está cifrada".

Sin embargo, al hacer algunas preguntas más, resulta que los datos de la base de datos en sí no están cifrados, pero los discos en los que se ejecuta la base de datos.

1. Cifrado de disco

Este tipo de cifrado protege sus datos contra el robo si una o más máquinas físicas están en reposo (tal vez apagadas y robadas)

2. Cifrado de base de datos

Este tipo de cifrado protege sus datos en la propia base de datos. Por ejemplo, si un atacante puede volcar (parcialmente) su base de datos, los registros están cifrados y son básicamente inútiles para el atacante.

El único desafío aquí es dónde almacena la clave de cifrado. Esta clave nunca debe estar en el mismo disco (por ejemplo, en un archivo de configuración) del servidor de aplicaciones y del servidor de bases de datos.

Para leer la clave de cifrado, se recomienda un mecanismo de 'bóveda'. La "bóveda de clave de cifrado" de Google debería llevar a varias soluciones que podría implementar.

¿Cuánto debo cifrar?

En mi opinión, los datos financieros en sí deberían estar definitivamente encriptados, pero esto también depende de las regulaciones y la política de la compañía. He estado en compañías que usan la siguiente política:

"Todos los registros que se pueden usar para identificar a una persona se consideran datos confidenciales"

Los ejemplos son: números de seguridad social, números de cuentas bancarias, etc.

¿Cuál es la mejor manera de cifrarlo?

En mi experiencia, la mayoría de las veces, se utiliza el cifrado de clave simétrica.

¿Cuál es el mejor medio de almacenamiento?

La mayoría de las bases de datos de código abierto son compatibles con el cifrado de columnas, al igual que Postgres.

    
respondido por el Jeroen - IT Nerdbox 21.03.2018 - 07:02
fuente

Lea otras preguntas en las etiquetas