Eduardo Arenas C. escribió: > Estimad@s, > > Necesito trabajar con información sensible de personas, la cual necesito > que se pueda identificar al dueño de los datos. He hecho algunas consultas > y me dicen que una de las soluciones es encriptar los identificadores de > cada persona, en el caso de chile donde me encuntro, encriptar el rut de la > persona (DNI), he visto que algunas personas utilizan un hash en MD5 ( en > el caso del rut), pero a mi juicio esto no es bueno, ya que uno podría > generar un correlativo de identificadores, hashearlos, y comprarlos con los > registros encriptados lo cual finalmente me permitiría saber a quien > corresponden los datos.
Creo que el RUT debería ser parte de los datos confidenciales, cifrado con una clave que el atacante no tiene; no el identificador. "Hashear" como le llamas no es efectivo. El identificador debería ser algún dato generado internamente sin relación con el mundo real (un UUID quizás, o una secuencia numérica de algún tipo). Cuando diseñas sistemas de seguridad deberías partir por definir de qué ataques te quieres defender. ¿Cómo aseguras que no te roben las claves de cifrado? ¿Cómo te defiendes de que alguien te robe una cinta con un respaldo de la BD? ¿Qué pasa si despides un DBA y se lleva una clave supuestamente secreta? Hay ataques contra los cuales no hay defensas razonables; es importante definir hasta qué punto te quieres seguir protegiendo. Pero es claro que necesitas pensar en proteger las claves de cifrado, en asegurarte que puedes cambiarlas, etc. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services - Enviado a la lista de correo pgsql-es-ayuda ([email protected]) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda
