Grabar y leer un array de bytes en SQL

08/08/2003 - 08:35 por iAtreyu | Informe spam
Hola.
Tengo un problemilla. Encripto una clave con la clase
RSACryptoServiceProvider. Al encriptar me devuelve un
array de bytes que grabo en un campo binary de una base de
datos de SQLServer 2000. Al recuperar el campo la función
para desencriptar me da un error de "Datos no válidos". No
me debe devolver lo mismo que me devuelve la función
encriptadora. Ya que si desencripto antes de grabar en la
base de datos lo hace perfectamente.
¿Alguien podría echarme una mano?
Muchas gracias.

iAtreyu

Preguntas similare

Leer las respuestas

#1 Octavio Hernández
08/08/2003 - 10:49 | Informe spam
Te recomendaría comparar byte a byte lo que envías (ya encriptado) con lo
que recuperas luego de la base de datos para ver si hay algún valor de byte
específico (por ejemplo 0) que SQL Server ignore o trate de un modo
especial...

Salu2,

Octavio

"iAtreyu" escribió en el mensaje
news:079901c35d77$3d48abd0$

Hola.
Tengo un problemilla. Encripto una clave con la clase
RSACryptoServiceProvider. Al encriptar me devuelve un
array de bytes que grabo en un campo binary de una base de
datos de SQLServer 2000. Al recuperar el campo la función
para desencriptar me da un error de "Datos no válidos". No
me debe devolver lo mismo que me devuelve la función
encriptadora. Ya que si desencripto antes de grabar en la
base de datos lo hace perfectamente.
¿Alguien podría echarme una mano?
Muchas gracias.

iAtreyu
Respuesta Responder a este mensaje
#2 iAtreyu
08/08/2003 - 13:12 | Informe spam
Gracias. Ya lo he hecho y son iguales. He hecho pruebas y
el problema está al rcuperar el valor del dataset. Lo
tengo que recoger como un objeto y al hacer la conversion
a byte[]deben corromperse los datos.He hecho la prueba de
convertir a object, despues a byte[] y desencriptar sin
enviar a la BD y me ocurre el mismo problema.

Te recomendaría comparar byte a byte lo que envías (ya


encriptado) con lo
que recuperas luego de la base de datos para ver si hay


algún valor de byte
específico (por ejemplo 0) que SQL Server ignore o trate


de un modo
especial...

Salu2,

Octavio

"iAtreyu" escribió en el mensaje
news:079901c35d77$3d48abd0$

Hola.
Tengo un problemilla. Encripto una clave con la clase
RSACryptoServiceProvider. Al encriptar me devuelve un
array de bytes que grabo en un campo binary de una base de
datos de SQLServer 2000. Al recuperar el campo la función
para desencriptar me da un error de "Datos no válidos". No
me debe devolver lo mismo que me devuelve la función
encriptadora. Ya que si desencripto antes de grabar en la
base de datos lo hace perfectamente.
¿Alguien podría echarme una mano?
Muchas gracias.

iAtreyu


.

Respuesta Responder a este mensaje
#3 Hernan Foffani
08/08/2003 - 16:16 | Informe spam
Gracias. Ya lo he hecho y son iguales. He hecho pruebas y
el problema está al rcuperar el valor del dataset. Lo
tengo que recoger como un objeto y al hacer la conversion
a byte[]deben corromperse los datos.He hecho la prueba de
convertir a object, despues a byte[] y desencriptar sin
enviar a la BD y me ocurre el mismo problema.



¿puedes grabar y recuperar correctamente de la BD otros
tipos de objetos BLOB? imagenes, por ejemplo.
¿de qué tipo es la columna donde guardas el cifrado?
¿qué motor de BD usas? (no soy experto en SQLServer...)
-H.
Respuesta Responder a este mensaje
#4 iAtreyu
12/08/2003 - 10:13 | Informe spam
Sí, se puede. La columna de la base de datos (SQL Server
2000) es varbinary con la longitud que desees.

Gracias. Ya lo he hecho y son iguales. He hecho pruebas




y
el problema está al rcuperar el valor del dataset. Lo
tengo que recoger como un objeto y al hacer la




conversion
a byte[]deben corromperse los datos.He hecho la prueba




de
convertir a object, despues a byte[] y desencriptar sin
enviar a la BD y me ocurre el mismo problema.



¿puedes grabar y recuperar correctamente de la BD otros
tipos de objetos BLOB? imagenes, por ejemplo.
¿de qué tipo es la columna donde guardas el cifrado?
¿qué motor de BD usas? (no soy experto en SQLServer...)
-H.


.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida