Page 1 of 2

Encriptacion de Bases de Datos desde xHarbour

PostPosted: Thu Jun 15, 2006 12:38 am
by Raymundo Islas M.
Hola a todos

Hace dias leyendo un post, tenia un link donde se mencionan algunas funciones propias de xHarbour, y en especial me llamo mucha la atencion una que es para poder encriptar las Dbfs o algunos registros de las mismas, pregunto :

- Alguien las a implementado con exito en sus Apps ?
- Son estables ? ( no daña la informacion o tiene problemas con los indices )

- tendran algun pequeño ejemplo ?

- Existen algunas opciones mas para realizar esta operacion ?

Obviamente, todo esto es para que algunos usuarios "curiosos" no puedan accesar o modificar el contenido :wink:


Saludos a todos

PostPosted: Thu Jun 15, 2006 3:53 am
by El Loco
Raymundo, yo utilizo las que vienen con FiveWin (Encrypt() Decrypt()) y funcionan barbaro.

Te comento que una de mis aplicaiones, que es solo de consulta, y por la importancia de los datos no sean "extraidos" (por decirlo en forma amable), me vi en la necesidad de encriptar la informacion.
Ademas te comento que si bien utilizo Dbf esta( por que solo consta de una sola dbf) tiene un solo campo de nn posiciones (para ser mas exacto 180) y contiene todos los diseños de registros necesarios, que se identifican por las dos primeras posiciones (tipo tecnica txt). O sea toda la informacion esta de corrido y encriptada, es el programa el encargado de armar dentro de ese chorizo de informacion los campos necesarios para mostrar y calcular lo que sea necesario.
Todo este cuento va a relacion ( no se si sea tu caso) para explicarte que la hice mas complicada todavia, y pensa que contiene 24 millones de registros, y para darte un ejenplo, cuando todavia la tenia en 16bits, una consulta alfabetica de 350000 casos los mostraba sin pestañar la pantalla.
Lo unico que si no hice (pero se puede hacer) es encriptar los apellidos y nombres, porque ahi si se ponia un poco lenta.
Con indices no tuve ningun problema, como si no estuvieran encriptado
No se si te sirva tanta lata, pero te muestro mi experiencia.

Un abrazo. El Loco =>))

PostPosted: Thu Jun 15, 2006 5:01 am
by Manuel Valdenebro
Pero creo que con la función Encrypt, solo encripta campos de caracteres, pero no fechas/numéricos.

En xHarbour creo que el tema es diferente y que utilizan una libreria de Przemyslaw Czerpak. He visto en el foro de xHarbour una consulta de Jose Luis Sánchez Navarro que la estaba probando. Si está por este foro me gustaria su opinión, porque a mi tambien me interesa el tema.

PostPosted: Thu Jun 15, 2006 1:21 pm
by José Luis Sánchez
Hola:

Como dice Manuel, las funciones de encriptación de FWH sólo funcionan bien con caracteres, así que si quieres encriptar una DBF todos sus campos tienen que ser caracter. Y no puedes usar índices encriptado, sino que tienes que desencriptar la DBF si vas a usar índices. En fin, que es un auténtico lio.

Por eso pregunté en el foro de xHB sobre la encriptación a bajo nivel. Me fio más de lo que pueda hacer Przemyslaw que lo que pueda hacer yo. Este señor ha demostrado ser un auténtico fenómeno muchas veces en público y alguna en privado. Ahora estoy probando el sistema de encriptación nativo de xHB. En cuanto tenga algo claro lo publicaré en avemundi.

Saludos,

PostPosted: Thu Jun 15, 2006 2:07 pm
by R.F.
Personalmente pase del tema de funciones nativas de encriptamiento, es un verdadero rollo que ralentiza el acceso a los datos y a los indices.

Lo que yo hago es dejar que el motor de ADS se encargue de todo el tema de bases de datos encriptadas, y la verdad funciona tremendo.

El algoritmo de encriptamiento es de 128 bits, encrypta TODO, desde la cabecera de la base de datos, pasando por campos caracter, fecha, logicos, numericos, en fin todo.

La base de datos se almacena siempre encriptada y el motor de ADS es quien hace la "traduccion" para que la aplicacion reciba los datos sin desencriptar.

Otra cosa interesante es que puedes tener una llave de encriptacion por cada area de trabajo

Vamos, que el sistemas de encriptacion de ADS es super confiable en este aspecto

encriptación con FWH

PostPosted: Thu Jun 15, 2006 2:07 pm
by José Vicente Beltrán
Perdonadme que discrepe de lo comentado sobre la encriptación con FWH, yo la utilizo desde hace años, y con cualquier tipo de campo y/o indices para guardar claves, y siempre funcionó perfectamente.
Si alguien está interesado en algún ejemplo, estoy a su disposición.

Saludos al foro :shock:

PostPosted: Thu Jun 15, 2006 2:17 pm
by José Luis Sánchez
Jose Vicente:
A mi me gustaría mucho ver un ejemplo de la enriptación tal como la haces tu. Si me la puedes enviar por e-mail te lo agradecezco mucho.

Saludos,

PostPosted: Thu Jun 15, 2006 2:21 pm
by lafug
José,

Me inetersa este tema podrías colocar un ejemplo?

De antemano muchas Gracias
Saludos
xHarbrazos

PostPosted: Thu Jun 15, 2006 3:32 pm
by Raymundo Islas M.
Me alegra ver que si existen varias opciones.

En post anteriores el MASTER Rene, ya nos habia comentado de esta caracteristica entre otras muchas bondades por parte del ADS y lo estable que lo maneja, por otro lado, tambien he usado las funciones EnCrypt()/DeCrypt() y es verdad, funcionan muy bien pero como dicen uds, solo en campos Character, sin olvidarnos el viejo truco de tocar los header files de los Dbfs para que no puedan ser "leidos" por X App.

En mi caso, me gustaria profundizar el punto de las funciones propias del xHarbour :

dbRecordInfo( DBRI_ENCRYPTED )
dbInfo(DBI_PASSWORD)
dbInfo(DBI_PASSWORD, dbInfo(DBI_PASSWORD))

o en el trabajo del Sr. Przemyslaw


Ojala y por ahi salga alguna clase, libreria, etc que nos permite hacer esta clase de operacion.

Muchas Gracias y Saludos a todos

Re: encriptación con FWH

PostPosted: Thu Jun 15, 2006 4:30 pm
by Manuel Valdenebro
Jose Vicente,

Te agradecería me enviaras tus ejemplos a mi email.

Gracias

Me anoto

PostPosted: Thu Jun 15, 2006 7:07 pm
by TecniSoftware
Jose:

Me interesa mucho ver alguno de esos ejemplos sobre encriptación.
Mi mail es tecnisoftware@yahoo.com.ar

Muchos salu2!!!

PostPosted: Thu Jun 15, 2006 7:08 pm
by José Vicente Beltrán
José Luis, Manuel, Luis Alfonso, Tecnisoftware, miren su correo

saludos :shock:

Me interesa

PostPosted: Thu Jun 15, 2006 8:00 pm
by jose_murugosa
José Vicente,

Me interesaría el ejemplo, quizá puedas enviarmelo o mejor aún subirlo a HyperUpload de manera que todo el que consulte el foro lo pueda bajar sin molestarte.

Me parece muy interesante lo que planteas, todo lo que tenga que ver con no salir de FWH para lograr los objetivos me gusta.

Gracias desde ya :D

PostPosted: Thu Jun 15, 2006 9:13 pm
by El Loco
Jose Luis perdon que te contradiga, pero un campo o varios encriptados funcionan perfectamente con indices.
Ahora es verdad, solo funciona con caracteres, pero si en difinitiva lo que se pretende es proteger la informacion, tranquilamente se pueden hacer las funciones necesarias para manejar campos numerico o de fecha.

Ahora lo que dice Rene, es totalmente cierto, con ADS es realmente simple manejar la seguridad de los datos

Un abrazo. El Loco =>))

me uno

PostPosted: Thu Jun 15, 2006 9:14 pm
by leandro