La Web del Programador: Comunidad de Programadores
 
    Pregunta:  49643 - ENCRIPTAR CONTRASEñAS EN POWERBUILDER
Autor:  Julio
Alguien ha realizado algún proceso de encriptación de contraseñas en Powerbuilder.
Me gustaria saber que consideraciones hay que tener en cuenta y posibles errores.

  Respuesta:  JUAN VILLAZON LUNA
Te doy dos Store Procedure que encriptan y desencriptan claves:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
create procedure sp_encripta
@cadena char(10)
as
declare
@tempo char(1),
@i int,
@valor_carac int,
@numer_carac int,
@caden_encri char(11)
select @i = 1
select @cadena = rtrim(@cadena)
select @cadena = reverse(@cadena)
while (substring(@cadena, @i, 1) <> '')
begin
select @i = @i + 1
end
select @numer_carac = @i
select @i = 1
while (substring(@cadena, @i, 1) <> '')
begin
select @tempo = substring(@cadena, @i, 1)
if ((@i % 2) = 0)
select @valor_carac = ascii(@tempo) + @i - @numer_carac
else
select @valor_carac = ascii(@tempo) - @i + @numer_carac
select @caden_encri = rtrim(@caden_encri) + char(@valor_carac)
select @i = @i + 1
end
select @caden_encri

GO
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

create procedure sp_desencripta
@cadena char(10)
as
declare
@tempo char(1),
@i int,
@valor_carac int,
@numer_carac int,
@caden_encri char(11)
select @i = 1
select @cadena = rtrim(@cadena)
while (substring(@cadena, @i, 1) <> '')
begin
select @i = @i + 1
end
select @numer_carac = @i
select @i = 1
while (substring(@cadena, @i, 1) <> '')
begin
select @tempo = substring(@cadena, @i, 1)
if ((@i % 2) = 0)
select @valor_carac = ascii(@tempo) - @i + @numer_carac
else
select @valor_carac = ascii(@tempo) + @i - @numer_carac
select @caden_encri = rtrim(@caden_encri) + char(@valor_carac)
select @i = @i + 1
end
select reverse(@caden_encri)

Ojala te sirva