зашифровать расшифровать файлы excel в java

MS Excel предоставляет вам широкий спектр функций для беспрепятственного хранения и анализа данных. Вы можете выполнять вычисления, создавать диаграммы, а также определять собственную логику с помощью модулей VBA. Зная важность данных в электронных таблицах, MS Excel позволяет защитить книги с помощью шифрования. Кроме того, вы можете защитить паролем файлы Excel, чтобы избежать несанкционированного доступа. В соответствии с этим в этой статье рассказывается, как шифровать/дешифровать и защищать паролем файлы Excel с помощью Java.

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

Aspose.Cells for Java — это мощный API для работы с электронными таблицами, который позволяет легко создавать файлы Excel и управлять ими. Кроме того, он позволяет вам шифровать и расшифровывать книги с помощью нескольких строк кода. Кроме того, вы можете защитить файл Excel паролем. Aspose.Cells для Java можно загрузить как JAR или установить, используя следующие конфигурации Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>20.12</version>
</dependency>

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

Aspose.Cells for Java предоставляет следующие типы шифрования для файлов Excel 2003.

Однако книги 2007/2010 шифруются с использованием методов шифрования SHA и AES так же, как это делает MS Excel. Ниже приведены шаги для шифрования файла Excel с помощью Aspose.Cells для Java.

Для демонстрации в следующем примере кода показано, как зашифровать файл Excel с помощью Java.

// Создание экземпляра объекта Workbook по пути к файлу excel
Workbook workbook = new Workbook("workbook.xlsx");

// Защитить файл паролем
workbook.getSettings().setPassword("1234");

// Зашифровать, указав тип шифрования
workbook.setEncryptionOptions(EncryptionType.XOR, 40);

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

// Сохраните зашифрованный файл Excel
workbook.save("encrypted-workbook.xlsx");

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

Чтобы расшифровать зашифрованный файл Excel, вам нужно только указать его пароль, а все остальное сделает Aspose.Cells for Java. Ниже приведены шаги для расшифровки файла Excel с помощью Java.

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

// Инициализировать параметры загрузки
LoadOptions loadOptions = new LoadOptions(LoadFormat.XLSX);

// Установить исходный пароль
loadOptions.setPassword("1234");

// Создайте экземпляр объекта Workbook с путем к файлу Excel
Workbook workbook = new Workbook("encrypted-workbook.xlsx", loadOptions);

// Установить пароль на ноль
workbook.getSettings().setPassword(null);

// Сохраните расшифрованный файл Excel.
workbook.save("decrypted-workbook.xlsx");

Проверка пароля зашифрованного файла Excel

В дополнение к шифрованию/дешифрованию, Aspose.Cells for Java также позволяет вам проверить пароль защищенного файла Excel. Ниже приведены шаги для проверки пароля.

  • Загрузите зашифрованный файл Excel с помощью класса FileInputStream.
  • Используйте метод FileFormatUtil.verifyPassword(FileInputStream, string) для проверки пароля.
  • В результате, если возвращаемое значение истинно, то пароль действителен, в противном случае он недействителен.

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

// Создайте объект потока
FileInputStream fstream = new FileInputStream("encrypted-workbook.xlsx");

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

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

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

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

Вывод

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

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