Cifrar Descifrar archivos de Excel

MS Excel proporciona un mecanismo de cifrado para proteger los datos de las hojas de cálculo de usuarios no autorizados. Además de aplicar el cifrado, puede especificar la contraseña necesaria para abrir los archivos de Excel. Este artículo cubre cómo realizar el cifrado de archivos de Excel desde aplicaciones .NET. En particular, aprenderá a cifrar y descifrar los archivos de Excel usando C#.

API de C# para cifrar o descifrar archivos de Excel

Para realizar operaciones de cifrado y descifrado en archivos de Excel, este artículo utiliza Aspose.Cells for .NET API. La API proporciona formas sencillas de cifrar y proteger con contraseña los archivos de Excel con el tipo de cifrado deseado. Puede descargar la API o instalarla dentro de sus aplicaciones .NET usando NuGet.

Install-Package Aspose.Cells

Cifrar archivos de Excel usando C#

Aspose.Cells for .NET admite los tipos de cifrado SHA y AES para cifrar archivos de Excel de la misma manera que lo hace MS Excel. Para los archivos de Excel 2003, puede elegir entre los siguientes tipos de cifrado:

  • XOR
  • Compatible (compatible con Office 97/2000)
  • Proveedor criptográfico mejorado V1
  • Fuerte proveedor criptográfico

Los siguientes son los pasos para cifrar un archivo de Excel usando C#.

El siguiente ejemplo de código muestra cómo cifrar un archivo de Excel usando C#.

// Abrir un archivo de Excel
Workbook workbook = new Workbook("Book1.xls");

// Especifique el tipo de cifrado XOR
workbook.SetEncryptionOptions(EncryptionType.XOR, 40);

// Especifique el tipo de cifrado fuerte (RC4, Microsoft Strong Cryptographic Provider)
workbook.SetEncryptionOptions(EncryptionType.StrongCryptographicProvider, 128);

// Proteger con contraseña el archivo
workbook.Settings.Password = "1234";

// Guarde el archivo de Excel
workbook.Save("encryptedBook.xls");

Descifrar archivos de Excel usando C#

Los siguientes son los pasos para descifrar archivos de Excel usando Aspsoe.Cells for .NET API.

El siguiente ejemplo de código muestra cómo descifrar un archivo de Excel usando C#.

// Abrir un archivo de Excel
Workbook workbook = new Workbook("encryptedBook.xlsx", new LoadOptions { Password="1234" });

// Establecer la contraseña en nulo
workbook.Settings.Password = null;

// Guarde el archivo de Excel.
workbook.Save("decryptedBook.xlsx");

Verifique la contraseña del archivo de Excel cifrado usando C#

Aspose.Cells for .NET también le permite verificar la contraseña de los archivos de Excel cifrados. Para esto, puede seguir los pasos a continuación.

El siguiente ejemplo de código muestra cómo verificar la contraseña de un archivo de Excel cifrado mediante C#.

// Crear un objeto Stream
FileStream fstream = new FileStream("EncryptedBook1.xlsx", FileMode.Open);

// Verificar contraseña
bool isPasswordValid = FileFormatUtil.VerifyPassword(fstream, "1234");

// Imprimir resultados
Console.WriteLine("Password is Valid: " + isPasswordValid);

Obtenga una licencia gratis

Puede obtener una licencia temporal gratuita para probar la API sin limitaciones de evaluación.

Conclusión

En este artículo, ha aprendido a cifrar y descifrar archivos de Excel utilizando C# desde aplicaciones .NET. Además, has visto cómo verificar la contraseña de los archivos de Excel encriptados. Puede explorar más sobre la API de automatización de C# Excel usando documentación.

Ver también