【问题标题】:Sqlite3 Database Password Protection in Java [duplicate]Java中的Sqlite3数据库密码保护[重复]
【发布时间】:2011-08-23 20:57:37
【问题描述】:

可能重复:
SQLite with encryption/password protection

我的问题是我在一个struts2 Web 应用程序上,我正在动态创建一个sqlite 数据库文件。我需要保护该文件(当用户下载该 sqlite 文件时,它需要密码才能打开它,例如受密码保护的 PDF)。有没有其他方法可以完成这个任务?

【问题讨论】:

    标签: java encryption sqlite password-protection


    【解决方案1】:

    C 中有一个可用的加密库 (sqlite-crypt),但如果您想用 Java 进行加密,我只需像任何其他文件一样加密该文件,并为用户提供一个带有密码的解密工具。请参阅file encryption/decryption in Java 的此示例。

    【讨论】:

    • 非常感谢........我正在尝试
    【解决方案2】:

    最好的解决方案是安装 SqlCipher 或类似的东西,但这意味着您必须在 Java 环境中构建和安装 C 扩展。

    如果您在启动应用程序时解密 SQLite 数据库,然后在结束时对其进行加密,那么它在您实际使用它时会“暴露”(如果应用程序异常终止)。使用 SqlCipher 数据始终是加密的,即使在操作中间也是如此。另一种选择是加密/解密存储在数据库中的单个“blob”,但是您无法搜索它们,等等。

    【讨论】:

      【解决方案3】:

      您可以使用 Zip4j (http://www.lingala.net/zip4j/) 创建受密码保护的 zip 文件。

      【讨论】:

        猜你喜欢
        • 2011-08-14
        • 2019-01-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多