2010-06-28 10 views
6

Estoy tratando de cifrar y descifrar algunos datos de archivos de texto usando el método ProtectedData.Protect de .NET. Me gustaría poder encriptar el texto (y guardarlo en un archivo) en una máquina y descifrar el texto en una máquina diferente. Las máquinas están ambas en el mismo dominio y ambas ejecutan el mismo servicio bajo el mismo nombre de usuario, así que pensé que usar DataProtectionScope.CurrentUser permitiría que cualquiera de los servicios encriptara y descifrara el archivo.El cifrado de DataProtectionScope.CurrentUser no parece funcionar en todas las máquinas

Cuando el servicio número dos intenta descifrar el archivo, arroja una "clave no válida para usar en el estado especificado". Otros sitios sugieren que este tipo de problema ocurre cuando la suplantación no se realiza correctamente, pero no hay suplantación. Ambos servicios se ejecutan bajo la misma cuenta de AD. Me parece que los servicios están usando diferentes claves para encriptar los datos, pero no sé por qué ocurriría esto, ya que se están ejecutando bajo la misma cuenta.

¿Alguien más ha encontrado este tipo de problema?

El código que estoy usando para cifrar y decypt es básicamente:

byte[] bytes = Encoding.Unicode.GetBytes(password); 
byte[] protectedPassword = ProtectedData.Protect(bytes, null, DataProtectionScope.CurrentUser); 
return Convert.ToBase64String(protectedPassword); //then I write this to a file 

Gracias!

+3

Esto podría explicar su situación: http://support.microsoft.com/kb/309408#4 – Toby

+0

¿Son ambos corriendo bajo el mismo dominio * * cuenta, o son en cuentas locales que resulta tener el mismo nombre de usuario y contraseña? –

Respuesta

1

El usuario debe tener un perfil móvil.

En la documentación de la API de Windows debajo de la función DPAPI, CryptProtectData function, no es este comentario:

... descifrado por lo general sólo se puede hacer en el equipo donde se cifran los datos. Sin embargo, un usuario con un perfil itinerante puede descifrar los datos de otra computadora en la red.

Cuestiones relacionadas