如何使用Spongy Castle for Android加密和解密文件

问题描述:

我有一个存储在SDCard上的XML文件。我需要对整个文件进行加密和解密。如何使用Spongy Castle for Android加密和解密文件

我已经看到海绵城堡是一个很好的android加密和解密库。但是,我找不到任何密码类来将文件作为单个单元进行加密和解密。如果有人能为此提供进一步的协助,我将非常感激。任何示例代码都会有很大的帮助。

+0

你确定你不是在谈论充气城堡吗?您能否请您扩展您的要求?你需要对称密码还是不对称密码?钥匙从哪里来?在“机密性”,“认证”和“完整性”的标准信息安全条款中,您是否需要全部三个或一些子集? –

+0

我已经阅读了Android中提供的标准Bounty Castle的一些drawbak。所以,我倾向于使用Spongy Castle lib。这些键是保存在资产文件夹中的项目的一部分。 –

+0

海绵城堡是一个简单的Bouncy城​​堡重新包装:https://github.com/rtyley/spongycastle#readme - 所以任何教程Bouncy城​​堡也将适用于海绵城堡。这里有一个非常简单的演示https://github.com/rtyley/spongycastle-eclipse#readme - 它只是演示读取一些密钥,实际上并不解密/加密任何数据。 –

能否请您看看以前的问题,涵盖Android上的密码学,让我们知道他们是否回答您的问题?如果没有,请您详细说明您的要求,特别是详细解释为什么您需要加密这个特定的XML文件,以及您希望密钥来自哪里?

的Android带有一个旧版本快活城堡;如果您需要更多加密算法和模式,您可能需要包含最新版本的Bouncy Caslte。

而请你请在你实施甚至考虑未来使用密码术之前,请阅读以下文章:Cryptographic Right Answers。如果您不理解文章中的任何概念,请考虑查阅一些参考资料,我很乐意在其他SO问题中提供这些参考资料。

+0

我已经找到加密文件的答案,但只有关于加密和解密字符串的答案。你可以让我知道如何使用SpongyCastle lib加密和解密文件。 –

+0

为什么你不能在文件中读取字节数组,然后将它加密,就好像它是一个字符串?如果你不认为这个文件适合你的内存,你可以肯定地按块读取它。但我现在明白了 - 你想要使用SpongyCastle的具体例子,OK。 –