Función de encriptar

Hola!
El problema es que utilizando esta simple función en VB para encriptar los
datos que escribimos en las bases de datos:
-----
Function enkrip(pKatea,pGiltza)
Dim Result,lK,lG,i,pG
lK = Len(pKatea)
lG = Len(pGiltza)
Result = ""
pG = 0
for i = 1 to lK
pG = pG + 1
if pG > lG then
pG = 1
end if
Result=Result & Chr(Asc(Mid(PKatea,i,1)) Xor Asc(Mid(pGiltza,pG,1)))
next
enkrip=Result
End Function
-----
Lo que hace es cambiar cada carácter de la cadena que queremos
encriptar en otro según una clave, hastaahi bien. Pero si el carácter
nuevo al que se convierte resulta que es " o ' la sentencia para
escribir en la base de datos falla. Así es la sentencia:
sqlText = "insert into " & DBname & " (IZENA, ENPRESA, LANPOSTUA , HELBIDEA)"
sqlText = sqlText & " values('"&vIzena&"', '"&vEnpresa&"', '"&vLanpostua&"',
'"&vHelbidea&"')"
Si no es de fácil solución, ¿cuáles son los métodos que más se suelen
usar para encriptar a la hora de escribir en bases de datos? Lo que
queremos ocultar no es nada critico ni mucho menos así que no debe ser
nada muy sofisticado, algo tan simple como esta función.
Mil gracias

1 respuesta

Respuesta
1
1- En la cadena codificada substituir cada " por "" que creo que es lo solución y cada ' por '' Eso hará que la inserción en la base de datos sea correcta
2-La otra es que cuando codifiquéis y encontréis " o ' lo sustituas previo a la inserción por una marca vuestra. Algo así como <*cs*> por comillas simple. Luego antes de decodificarlo substituirlo por el valor adecuado.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas