Шифровать и расшифровывать файлы Excel
Contents
[
Hide
]
Microsoft Excel (97–365) позволяет шифровать/защищать паролем электронные таблицы. Он использует алгоритмы, предоставляемые Crypto Service Provider. Поставщик криптографических услуг или CSP — это набор криптографических алгоритмов с различными свойствами. CSP по умолчанию — «Совместимость с Office 97/2000» или «Шифрование недели (XOR)». Также важно выбрать правильную длину ключа шифрования. Некоторые поставщики услуг шифрования не поддерживают более 40 или 56 бит. Это считается слабым типом шифрования. Но для надежного типа шифрования требуется минимальная длина ключа 128 бит. Microsoft Windows содержит провайдеров криптографических услуг, которые также предлагают надежные типы шифрования, например, «Microsoft Strong Cryptographic Provider». Чтобы дать представление, 128-битное шифрование — это то, что банки используют для шифрования соединения со своими системами интернет-банкинга. Aspose.Cells позволяет вам зашифровать / защитить паролем ваши файлы Excel с помощью желаемого типа шифрования.
Использование MS Excel
В MS Excel (например, MS Excel 2003) для реализации настроек шифрования файлов можно попробовать:
- ОтИнструменты меню, выберитеПараметры , а затем выберитеБезопасность вкладка
- ВходПароль для открытия и нажмите наПередовой кнопка.
- Выберите тип шифрования и подтвердите пароль.
Рис.: Диалоговое окно «Параметры»
Рис.: Диалоговое окно «Тип шифрования»
Шифрование файла Excel
В следующем примере показано, как вы можете зашифровать/защитить паролем файл Excel, используя код Aspose.Cells API.
Образец кода:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(EncryptingFiles.class) + "loading_saving/"; | |
// Instantiate a Workbook object by excel file path | |
Workbook workbook = new Workbook(dataDir + "Book1.xls"); | |
// Password protect the file. | |
workbook.getSettings().setPassword("1234"); | |
// Specify XOR encrption type. | |
workbook.setEncryptionOptions(EncryptionType.XOR, 40); | |
// Specify Strong Encryption type (RC4,Microsoft Strong Cryptographic | |
// Provider). | |
workbook.setEncryptionOptions(EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128); | |
// Save the excel file. | |
workbook.save(dataDir + "EncryptingFiles_out.xls"); | |
// Print message | |
System.out.println("Encryption applied successfully on output file."); |
Расшифровка файла Excel с помощью Aspose.Cells
Очень просто открыть защищенный паролем файл Excel и расшифровать его с помощью Aspose.Cells API, используя следующие коды:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Open encrypted file with password. | |
LoadOptions loadOptions = new LoadOptions(); | |
loadOptions.setPassword("password"); | |
Workbook workbook = new Workbook("Book1.xlsx", loadOptions); | |
//Remove password. | |
workbook.getSettings().setPassword(null); | |
//Save the file. | |
workbook.save("Book1.xlsx"); |