当我们重新导入时,jar文件是否会更改编码文本文件的内容?

时间:2011-05-13 15:35:48

标签: java security encoding jar encryption

我有一个Java应用程序,我需要保护文本文件中的内容,然后才能将其导出到jar文件中。所以我使用“javax.crypto.Cipher”提供的BlowFish算法对文件进行编码。我在飞行中解密它。

当我从工作站运行应用程序时,一切正常。但是,一旦我将应用程序导出为jar文件并运行它。它会在尝试解密受保护文本文件内容的代码部分中引发错误。错误是:

  

javax.crypto.BadPaddingException:给定最终块未正确填充

export-jar-file-process是否会改变所包含文本文件的内容,例如:它的编码?

1 个答案:

答案 0 :(得分:0)

Jar命令和java.util API生成zip和& jar不处理编码 - 他们将文件视为二进制文件。我会看看你的构建过程,看看你是否有一些属性替换过滤器等。我已经看到Maven和ANT弄乱了带有文本文件名的二进制文件......顺便说一下,你的编码文件是否零售.txt扩展名?