Encriptar Clave Base de Datos Mediante Script PB

Hola y gracias de antemano por tu respuesta trabajo con el ASA 8 yo le pongo una clave diferente a la base de datos de la que siempre se pone por defecto la conexion es multiusuario, Conecto mediante script Power Builder alli le paso recien el Username y el Password, las aplicaciones las instalo en cada terminal que se conectan a un Servidor, el inconveniente es que cuando hay una fallo en la red el usuario abre el Sistema y se quiere conectar pero como no hay red no detecta la base de datos y sale una ventana que dice username: ..... Y password : ******, la clave en asteriscos el inconveniente es que existen pequeños programitas para ver cual es la clave que esconden esos asteriscos, lo que quiero es encriptar esa clave que se muestra tras lo asteriscos o evitar que salga esa ventana que antes mencione. Gracias.

1 respuesta

Respuesta
Create una
function de nombre f_encripta_pass

Retorno -
String

Argumento -
as_pass de tipo string

Codigo:
integer
li_cont,li_operador
string ls_encry,ls_temp
for li_cont = 1 to len(as_pass)
ls_temp=mid(as_pass,li_cont,1)
li_operador=asc(ls_temp)
- 32 + 12
ls_encry =
ls_encry + char(li_operador)
next
return(ls_encry)
*******************************************
para
guardar a tu BD encriptada la usas asi

string
ls_pass
ls_pass=f_encripta_pass('CLAVE1')
luego esa
Variable la insertas a la BD lo que en realidad no guardara la palabra CLAVE1,
si no una serie de símbolos
*******************************************
Para
desencriptar la clave y poder loguearte

String ls_pass,ls_pass2
Ls_pass= f_encripta_pass(sle_pass.text)
Select pass into ls_pass2 from tabla where ...;
If ls_pass=ls_pass2 then
......
Else
Clave incorrecta
End if
Y esa
Variable la comparas con la variable que te capture la BD
Creo q te llego mal... te la mando otra vez
Create una function de nombre f_encripta_pass
Retorno - String
Argumento - as_pass de tipo string

integer li_cont,li_operador
string ls_encry,ls_temp
for li_cont = 1 to len(as_pass)
ls_temp=mid(as_pass,li_cont,1)
li_operador=asc(ls_temp) - 32 + 12
ls_encry = ls_encry + char(li_operador)
next
return(ls_encry)
***************************************
para guardar a tu BD encriptada la usas asi
string ls_pass
ls_pass=f_encripta_pass('CLAVE1')
Luego esa variable la insertas a la BD lo que en realidad no guardara la palabra CLAVE1, si no una serie de símbolos
*******************************
Para desencriptar la clave y poder loguearte
String ls_pass,ls_pass2
Ls_pass= f_encripta_pass(sle_pass.text)
Select pass into ls_pass2 from tabla where .........;
If ls_pass=ls_pass2 then
................
Else
Clave incorrecta
End if
Y esa variable la comparas con la variable que te capture la BD
Finaliza la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas