Зашифровать расшифровать файлы Excel

MS Excel предоставляет механизм шифрования для защиты данных в электронных таблицах от неавторизованных пользователей. Наряду с применением шифрования вы можете указать пароль, который требуется для открытия файлов Excel. В этой статье рассказывается, как выполнить шифрование файлов Excel из приложений .NET. В частности, вы узнаете, как шифровать и расшифровывать файлы Excel с помощью C#.

C# API для шифрования или расшифровки файлов Excel

Для выполнения операций шифрования и дешифрования файлов Excel в этой статье используется API Aspose.Cells for .NET. API предоставляет простые способы шифрования и защиты паролем файлов Excel с желаемым типом шифрования. Вы можете либо загрузить API, либо установить его в свои приложения .NET с помощью NuGet.

Install-Package Aspose.Cells

Шифровать файлы Excel с помощью C#

Aspose.Cells для .NET поддерживает типы шифрования SHA и AES, чтобы шифровать файлы Excel так же, как это делает MS Excel. Для файлов Excel 2003 можно выбрать один из следующих типов шифрования:

  • исключающее ИЛИ
  • Совместимость (совместимость с Office 97/2000)
  • Усовершенствованный поставщик криптографии V1
  • Сильный криптографический провайдер

Ниже приведены шаги для шифрования файла Excel с помощью C#.

В следующем примере кода показано, как зашифровать файл Excel с помощью C#.

// Откройте файл Excel
Workbook workbook = new Workbook("Book1.xls");

// Укажите тип шифрования XOR
workbook.SetEncryptionOptions(EncryptionType.XOR, 40);

// Укажите тип надежного шифрования (RC4, Microsoft Strong Cryptographic Provider)
workbook.SetEncryptionOptions(EncryptionType.StrongCryptographicProvider, 128);

// Защитить файл паролем
workbook.Settings.Password = "1234";

// Сохраните файл Excel
workbook.Save("encryptedBook.xls");

Расшифровать файлы Excel с помощью C#

Ниже приведены шаги для расшифровки файлов Excel с помощью Aspsoe.Cells для .NET API.

  • Загрузите файл Excel, указав путь и пароль конструктору класса Workbook.
  • Установите для пароля значение null, используя свойство Workbook.Settings.Password.
  • Сохраните книгу, используя метод Workbook.Save(string).

В следующем примере кода показано, как расшифровать файл Excel с помощью C#.

// Откройте файл Excel
Workbook workbook = new Workbook("encryptedBook.xlsx", new LoadOptions { Password="1234" });

// Установите пароль на ноль
workbook.Settings.Password = null;

// Сохраните файл Excel.
workbook.Save("decryptedBook.xlsx");

Проверьте пароль зашифрованного файла Excel с помощью С#

Aspose.Cells для .NET также позволяет проверять пароль зашифрованных файлов Excel. Для этого вы можете выполнить следующие шаги.

  • Загрузите файл Excel с помощью класса FileStream.
  • Чтобы проверить пароль, используйте метод FileFormatUtil.VerifyPassword(FileStream, string), который возвращает логическое значение.
  • Если возвращаемое значение истинно, то пароль действителен, в противном случае он недействителен.

В следующем примере кода показано, как проверить пароль зашифрованного файла Excel с помощью C#.

// Создайте объект потока
FileStream fstream = new FileStream("EncryptedBook1.xlsx", FileMode.Open);

// Подтвердите пароль
bool isPasswordValid = FileFormatUtil.VerifyPassword(fstream, "1234");

// Распечатать результаты
Console.WriteLine("Password is Valid: " + isPasswordValid);

Получить бесплатную лицензию

Вы можете получить бесплатную временную лицензию, чтобы попробовать API без ограничений пробной версии.

Вывод

В этой статье вы узнали, как шифровать и расшифровывать файлы Excel с помощью C# из приложений .NET. Кроме того, вы видели, как проверить пароль зашифрованных файлов Excel. Вы можете узнать больше об API автоматизации C# Excel, используя документацию.

Смотрите также