Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Encriptado de datos y posterior busqueda

Estas en el tema de Encriptado de datos y posterior busqueda en el foro de Mysql en Foros del Web. Hola, Hay alguna forma de trabajar con campos de datos encriptados y luego poder hacer consultas de búsqueda de un campo con LIKE ? Me ...
  #1 (permalink)  
Antiguo 13/05/2018, 16:34
 
Fecha de Ingreso: febrero-2016
Mensajes: 36
Antigüedad: 8 años, 2 meses
Puntos: 2
Encriptado de datos y posterior busqueda

Hola,
Hay alguna forma de trabajar con campos de datos encriptados y luego poder hacer consultas de búsqueda de un campo con LIKE ?
Me refiero a una búsqueda parcial de un texto dentro de un campo.

Gracias.

P.D. En el caso de que sea posible, agradecería algún tipo de orientación para poder buscar información al respecto.
  #2 (permalink)  
Antiguo 14/05/2018, 06:04
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Encriptado de datos y posterior busqueda

Únicamente podrás haciendo que se desencriptase lo encriptado al momento de hacer la consulta... LIKE sólo funciona para buscar un patrón dentro de un texto dado, y no aplica a encriptaciones.

Explícanos por qué estaría encriptado ese campo, y veamos si lo que preguntas es realmente la mejor solución para tu problema.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 15/05/2018, 14:19
 
Fecha de Ingreso: febrero-2016
Mensajes: 36
Antigüedad: 8 años, 2 meses
Puntos: 2
Respuesta: Encriptado de datos y posterior busqueda

Básicamente es para trabajar con información personal de clientes de las facturas que realizo.
Y poder buscar clientes y facturas por direcciones o partes del nombre.
  #4 (permalink)  
Antiguo 16/05/2018, 00:25
 
Fecha de Ingreso: mayo-2011
Ubicación: Palma de Mallorca
Mensajes: 108
Antigüedad: 12 años, 11 meses
Puntos: 4
Respuesta: Encriptado de datos y posterior busqueda

Hola ica1977

Dudo muchísimo que los nombres de los clientes, su dirección o el número de factura estén encriptados en la base de datos.

¿Has hecho tu la base de datos y has encriptado esos datos? ¿Has entrado en una empresa y te has encontrado una base de datos con datos encriptados en algunas tablas?

Explica mejor tu caso. Si es lo segundo, si esos datos están encriptados, es por alguna razón.
  #5 (permalink)  
Antiguo 16/05/2018, 10:30
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Encriptado de datos y posterior busqueda

Oficialmente, al menos en Argentina, la encriptacion de datos solo se usa para datos extremadamente importantes, como contraseñas, números de CUIT, documentos, y cosas de ese nivel. No se encriptan datos como nombres y direcciones, sino que se deben eliminar de acuerdo ala legislación.
Por su parte, los números de tarjeta de crédito y débito no se pueden almacenar, sino que se usan servicios de encriptación y validacion provistas por las plataformas y pasarelas de pago, donde los algoritmos de encriptacion les pertenecen, asi que no aplica.
Me parece que estás complicando innecesariamente las cosas.
Si lo que quieres es segurizar el acceso a los datos de un modo sencillo, implementa mejor seguridad a nivel de web y además genera el acceso a datos a través de stored procedures y no queries smples.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 23/05/2018, 16:34
 
Fecha de Ingreso: febrero-2016
Mensajes: 36
Antigüedad: 8 años, 2 meses
Puntos: 2
Respuesta: Encriptado de datos y posterior busqueda

Hola, gracias por vuestras respuestas y mil disculpas por el retraso en contestar.
La base de datos es mía, y me estoy haciendo una aplicación para llevar la facturación con php.
La duda sobre lo de encriptar la información almacenada con los datos personales de los clientes es por lo de la nueva ley de protección de datos. Actualmente estoy trabajando en local, pero la idea es poder colgar la aplicación en el vps que tengo contratado y poder facturar desde el movil desde cualquier lugar.
Revisando los archivos donde guarda mariadb los datos de las tablas,observe que la información introducida en los archivos es fácilmente reconocible. Y mi intención seria poder encriptar esa información, para evitar que se pudiera acceder a esa información en el caso de un acceso no autorizado al vps.
  #7 (permalink)  
Antiguo 24/05/2018, 08:52
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Encriptado de datos y posterior busqueda

LO de que sea "fácilmente reconocible", lo vas encontrar en TODAS las bases de datos, es parte del funcionamiento del sistema. Lo que se hace es segurizar la base de datos, no ponerse paranoico y encriptar hasta los tags...
SI la base de datos está debidamente protegida en DMZ, y bien configurado su acceso, de modo que sólo pueda ingresarse con los usuarios perfectamente asegurados, no deberías tener problemas.
Respecto a los datos que deben o no deben preservarse, y cómo deben preservarse, eso depende exclusivamente de la legislación aplicable, que NO es la misma en todos los países. Debes verificar cual es la que aplica en tu caso, y cuales son los requisitos de encriptación que se especifican, y en qué datos se aplican.
Lo de acceso por SP es muy importante, porque de ese modo existe una capa de aislamiento entre la lógica de negocio y la capa de datos. No sólo es para evitar todo lo posible que haya SQL embebido en los scripts de PHP, que lo terminan haciendo vulnerable al sistema, sino que además te protegerán de ataques de sqlinjection.
Finalmente, una de las cosas que puedes hacer es sacar las claves y nombres de usuario de base de datos FUERA del web.config y ponerlo en carpetas privadas de la aplicación, y A SU VEZ también encriptarlos pero sólo dentro del archivo de configuración de los connectionstrings. Eso evitará que alguien sin acceso a esos dos datos pueda ver lo que contiene la base.

Como puedes ver, no hay un único método ni tampoco una única técnica que debes usar para tales segurizaciones.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: busqueda, campos, encriptado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:42.