Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-01-2012
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Poder: 16
lmpadron Va por buen camino
Como evitar que SELECT al crear una variable devuelva un valor

Hola amigos

Tengo un soft desarrollado en C++ Builder y lo conecto a una BD en MySQL, pero necesito encriptar la informacion que se transmite para ello uso

Código SQL [-]
INSERT INTO `BD`.`TABLA` VALUES (1,AES_ENCRYPT('VALOR A ENCRIPTAR','@pass'));

Código SQL [-]
SELECT AES_DECRYPT(CAMPO,@pass) FROM `BD`.`TABLA`;

El problema para ejecutar las operaciones creo una variable con el password ahora bien lo quqe necesito es que esa variable creada con un SELECT no se vea o sea que no se pueda capturar por la red. para ello cree un procedimiento almacenado donde se creara pero cada vez que lo llamo el me muestra la variable, asi que necesito saber alguna forma de que el parametro SELECT no me devuelva un valor.
Al ejecutarse en el servidor si no devuelve valores entonces no puede capturarse por la red ... o al menos eso creo.

Se me ocurrio poner un LIMIT 0 y no muestra los valores pero aun asi en el encabezado me los muestra jejejejeje asi que no me parece que eso lo resuelva

les dejo el SP

Código SQL [-]

CREATE DEFINER=`root`@`localhost` PROCEDURE `passlog`()
BEGIN
  SELECT @pass:='MIPASSWORD' LIMIT 0;
END

Gracias de antemano
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código.


Cuando miras fijamente al abismo, este te devuelve la mirada


oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________
Responder Con Cita
  #2  
Antiguo 16-01-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
No queda claro qué quieres hacer. Un SELECT sirve para traer información del servidor al cliente, luego entonces, "cancelar" el valor devuelto equivale a cancelar la consulta, o sea, a no hacerla.

Pienso que podrías seleccionar el campo sin desencriptar, y desencriptarlo en el cliente con alguna biblioteca que lo haga, por ejemplo, Domingo Seoane tiene unas excelentes rutinas para cifrado AES.

// Saludos
Responder Con Cita
  #3  
Antiguo 16-01-2012
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Poder: 16
lmpadron Va por buen camino
Cita:
Empezado por roman Ver Mensaje
No queda claro qué quieres hacer.
Lo que quiero hacer es crear una variable en el servidor MySQL y no conosco otro metodo excepto el SELECT pero el problema es que al crear la variable con el SELECT me pueden capturar su valor en la red usando un Snifer.
Por eso cree un procedimiento almacenado pero al llamar al procedimiento sucede exactamente lo mismo o sea crea la variable, devuelve el valor y ahi esta de nuevo caminado descifradamente por la red jeje

Cita:
Empezado por roman Ver Mensaje
Pienso que podrías seleccionar el campo sin desencriptar, y desencriptarlo en el cliente con alguna biblioteca que lo haga, por ejemplo, Domingo Seoane tiene unas excelentes rutinas para cifrado AES.
Voy a revisar a ver, gracias por su ayuda !!!
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código.


Cuando miras fijamente al abismo, este te devuelve la mirada


oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________
Responder Con Cita
  #4  
Antiguo 16-01-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Si te fijas, para el caso, también cuando insertas el registro, la variable viaja sin encriptar desde el cliente al servidor pues es éste quien la encripta.

// Saludos
Responder Con Cita
  #5  
Antiguo 16-01-2012
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Poder: 16
lmpadron Va por buen camino
Cita:
Empezado por roman Ver Mensaje
Si te fijas, para el caso, también cuando insertas el registro, la variable viaja sin encriptar desde el cliente al servidor pues es éste quien la encripta.
Esto de la seguridad resulta mas complejo de lo que a primera vista parece
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código.


Cuando miras fijamente al abismo, este te devuelve la mirada


oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________
Responder Con Cita
  #6  
Antiguo 16-01-2012
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Poder: 16
lmpadron Va por buen camino
Voy a probar con la AES.pas del amigo Seoane y continuo en el foro de c++ dado que ya no es necesario cifrar en MySQL porque voy a hacerlo desde mi aplicación.

Gracias por la ayuda
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código.


Cuando miras fijamente al abismo, este te devuelve la mirada


oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿funcion que devuelva mas de 1 valor? JXJ Varios 10 15-04-2011 20:13:56
Select que me devuelva n filas con fechas incrementales gluglu Conexión con bases de datos 13 23-02-2011 17:16:05
como usar el valor de una variable jesusomarsanche OOP 4 17-08-2006 19:17:55
Crear Formulario que me devuelva un valor coulthard Internet 2 26-11-2004 13:32:53
Funcion que devuelva mas de un valor ckaki Varios 1 27-11-2003 00:07:59


La franja horaria es GMT +2. Ahora son las 16:00:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi