criptografar descriptografar arquivos do excel em java

O MS Excel fornece uma ampla gama de recursos para manter e analisar os dados de forma transparente. Você pode realizar cálculos, gerar gráficos e definir sua lógica personalizada usando módulos VBA. Sabendo da importância dos dados nas planilhas, o MS Excel permite proteger as pastas de trabalho usando criptografia. Além disso, você pode proteger com senha os arquivos do Excel para evitar acesso não autorizado. De acordo com isso, este artigo aborda como criptografar/descriptografar e proteger com senha arquivos do Excel usando Java.

API Java para criptografar e descriptografar arquivos do Excel

Aspose.Cells for Java é uma poderosa API de manipulação de planilhas que permite criar e manipular arquivos do Excel sem problemas. Além disso, permite criptografar e descriptografar as pastas de trabalho em poucas linhas de código. Além disso, você pode proteger um arquivo do Excel com uma senha. Aspose.Cells para Java pode ser baixado como JAR ou instalado usando as seguintes configurações do 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>

Criptografar arquivos do Excel usando Java

Aspose.Cells para Java fornece os seguintes tipos de criptografia para arquivos do Excel 2003.

No entanto, as pastas de trabalho 2007/2010 são criptografadas usando técnicas de criptografia SHA e AES da mesma forma que o MS Excel. A seguir estão as etapas para criptografar um arquivo do Excel usando Aspose.Cells para Java.

Para demonstração, o exemplo de código a seguir mostra como criptografar um arquivo do Excel usando Java.

// Instanciar um objeto Workbook pelo caminho do arquivo do Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Proteger o arquivo com senha
workbook.getSettings().setPassword("1234");

// Criptografar especificando o tipo de criptografia
workbook.setEncryptionOptions(EncryptionType.XOR, 40);

// Especifique o tipo de criptografia forte (RC4, Microsoft Strong Cryptographic Provider)
workbook.setEncryptionOptions(EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128);

// Salve o arquivo Excel criptografado
workbook.save("encrypted-workbook.xlsx");

Descriptografar arquivos do Excel usando Java

Para descriptografar um arquivo Excel criptografado, você só precisa fornecer sua senha e o restante será tratado pelo Aspose.Cells for Java. A seguir estão as etapas para descriptografar um arquivo do Excel usando Java.

O exemplo de código a seguir mostra como descriptografar um arquivo do Excel protegido por senha usando Java.

// Inicialize as opções de carregamento
LoadOptions loadOptions = new LoadOptions(LoadFormat.XLSX);

// Definir senha original
loadOptions.setPassword("1234");

// Instanciar um objeto Workbook com o caminho do arquivo do Excel
Workbook workbook = new Workbook("encrypted-workbook.xlsx", loadOptions);

// Definir senha como nula
workbook.getSettings().setPassword(null);

// Salve o arquivo Excel descriptografado
workbook.save("decrypted-workbook.xlsx");

Verificar a senha de um arquivo Excel criptografado

Além de criptografia/descriptografia, Aspose.Cells para Java também permite que você verifique a senha de um arquivo Excel protegido. A seguir estão as etapas para realizar a verificação de senha.

O exemplo de código a seguir mostra como verificar a senha de um arquivo do Excel criptografado usando Java.

// Criar um objeto Stream
FileInputStream fstream = new FileInputStream("encrypted-workbook.xlsx");

// Verifique a senha
boolean isPasswordValid = FileFormatUtil.verifyPassword(fstream, "1234");

// Imprimir resultados
System.out.println("Password is Valid: " + isPasswordValid);

Obtenha uma licença de API gratuita

Caso queira experimentar a API sem limitações de avaliação, você pode obter uma licença temporária gratuita.

Conclusão

Neste artigo, você aprendeu como criptografar ou descriptografar arquivos do Excel usando Java. Além disso, você viu como verificar a senha de um arquivo Excel criptografado. Caso queira explorar mais sobre a API de manipulação de planilhas Java, visite a documentação.

Veja também