En version V5R2  esto funciona???  tenemos que añadir o instalar algo para poder usar la Encriptacion.

=======================================================
 La originalidad no esta en el "HECHO", esta en la"SOLUCIÓN"
       Cualquier cosa que gobierne tu vida te autodestruirá
 Sino dices lo que piensas es que no piensas  - M i  O T a  O -
=======================================================
  .~.
 /V\   L   I   N   U   X
// \\ >Phear the Penguin<
/(   )\
^^-^^
Pon un Pinguino en TU VIDA.COM
Pere Soria
Dpto. de Informática
Telf.    +34 964343008
E-mail: [EMAIL PROTECTED]
http://www.recordrent.com
Record Rent a Car S.A.
(quitar nospam para responder)(remove nospam to reply me)



"Juan Carlos Paredes" <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED]

08/05/2006 09:23

Please respond to
forum.help400@combios.es

To
<forum.help400@combios.es>, "Ana Noguero" <[EMAIL PROTECTED]>
cc
Subject
RE: Encriptar Datos en DB2





Como bien os decía Sergio, lo tenéis disponible en el Infocenter de IBM. El link es:

<http://publib.boulder.ibm.com/infocenter/iseries/v5r3/topic/db2/rbafzmst.pdf>

Con respecto al código es algo tan sencillo como esto, para añadir registros:

d Main            pr                  extpgm('PRUENC')  

d                               50a                      

d                               10a                      

d Main            pi                                    

d   Apellidos                   50a                      

d   Password                    10a                      

c/exec sql                                              

c+ set encryption password = :Password                  

c/end-exec                                              

c/exec sql                                              

c+ insert into encriptado                                

c+ values(encrypt_rc2(:Apellidos)

c/end-exec                                              

 /free                                                  

   *inlr=*on;        

   return;          

 /end-free          

La definición de la tabla sería esta:

CREATE TABLE ENCRIPTADO ( APELLIDOS CHARACTER (100) FOR BIT DATA NOT NULL DEFAULT)

A la hora de recuperar los registros, sería algo así:

d Main            pr                  extpgm('PRUENC')  

d                               50a                      

d                               10a                      

d Main            pi                                    

d   Apellidos                   50a                      

d   Password                    10a                      

c/exec sql                                              

c+ set encryption password = :Password                  

c/end-exec                                              

c/exec sql                                              

c+ select decrypt_char(apellidos) into :Apellidos from encriptado                                

c/end-exec                                              

 /free                                                  

   *inlr=*on;        

   return;          

 /end-free          

No os olvidéis en la definición del campo del valor FOR BIT DATA, puesto que si no lo hacéis así, no os permitirá recuperar los datos.

Espero que esto haya servido de ayuda.

Un saludo

Juan Carlos.

Responder a