Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/10/2010, 14:03
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Varbinary y Procedimiento Almacenado

Buenas Tardes palmercado,

Te confieso que no he trabajado con Encriptación en SQL Server, pero recuerdo de algunos cursos que he tomado que la función EncryptByAsymKey devuelve un tipo de dato varbinary de hasta 8000 bytes, por lo que creo que la declaración de tu tabla debería ser así:


Código SQL:
Ver original
  1. CREATE TABLE [dbo].[Usuario](
  2. [Id_Usuario] [INT] IDENTITY(100,1) NOT NULL,
  3. [Usuario] [nvarchar](15) NOT NULL,
  4. [Password] [varbinary](8000) NOT NULL,
  5. [Id_Perfil] [INT] NOT NULL,
  6. [Status_Usuario] [bit] NOT NULL)

Como lo tienes entonces estarías truncando caracteres, ejecuta esto para que te des cuenta de lo que te regresa la función:

Código SQL:
Ver original
  1. SELECT ENCRYPTBYASYMKEY(@KeyId, CAST(@Password AS varbinary (15)))

Haz la prueba y nos comentas.

Saludos
Leo