【问题标题】:XML file encryptionXML 文件加密
【发布时间】:2011-09-07 14:44:14
【问题描述】:

我正在使用 XML Serializer 方法创建 XML 文件数据。当自定义事件发生时,将创建 XML 文件并将其存储在 SDCard 上。我需要加密这个文件,同时将它存储在 SDCard 上,然后在用户点击按钮时解密它。

我想对整个 XML 文件进行加密和解密,因为 XML 文件中存储的数据很大。那么,有没有办法对整个XML文件进行加解密呢?

【问题讨论】:

    标签: android xml encryption


    【解决方案1】:

    您不能使用 RSA 加密任何大于密钥大小(通常为 1024-4096 )的内容。对于大数据,您需要使用块(或流)密码,例如 AES。您需要使用具有合适机制的Cipher 类,例如“AES/CBC/PKCS5Padding”。像往常一样,更大的问题是存储密钥的位置和方式。

    你想达到什么目的?您试图保护您的数据不受谁/什么影响?您需要什么级别的保护?

    【讨论】:

    • 我正在尝试将创建的XML文件(在SDCard上)作为一个整体进行加密和解密。我想实现XML文件的单次加密和解密机制。由于我将 XML 文件存储在 SD 卡上,因此我不想让用户获得任何信息,即使它是从 SD 卡复制的。
    • 如果他们将它复制到另一部手机(所有应用程序共享相同的密钥),他们应该能够(通过应用程序)读取它吗?他们甚至需要知道它是加密的吗?
    • 无需通过app阅读。加密的 XML 文件将发布到服务器。文件的解密应在服务器上完成。用户无需知道文件已加密。
    • 在这种情况下,请考虑使用 SSL 与您的服务器通信,并且根本不要将文件存储在 SD 卡上。
    • 考虑编辑您的问题。目前还不清楚你需要做什么。您需要明确:谁创建了文件?谁使用该文件?他们与谁交流?至于你的问题,正如我所说,你需要使用 Cipher 类。您可以使用doFinal 在单个操作中加密/解密。如果文件很大,这可能不实用。
    猜你喜欢
    • 2012-04-29
    • 1970-01-01
    • 2010-11-08
    • 2010-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-15
    相关资源
    最近更新 更多