【发布时间】:2021-09-30 19:50:01
【问题描述】:
上下文:我正在使用 Kotlin 开发个人安全应用程序。我需要添加一个功能,以便在单击按钮时,设备上的所有图像(或相关文件夹)都被加密。解密需要一个用于加密的密钥。
问题:有没有办法通过标准库做到这一点?如果没有,是否有 API 可以帮助我完成这项工作?
链接会很有帮助。
【问题讨论】:
-
简单的答案是“是”。工作流程如下:1)从外部存储读取图像,输入密码,在 GCM 模式下使用(例如)AES-256 加密文件,密钥派生(例如)PBKDF2,存储加密文件并删除原始文件。对于解密,请输入密码,导出解密密钥,加载加密文件并将其作为解密文件存储在外部存储中(并删除加密文件)。所有加密功能都可通过(例如)BouncyCastle 库使用。
-
这实际上很有帮助。你有 BouncyCastle 的示例代码吗?我以前没有使用过这个库..
-
不幸的是,我在 Android 上的文件管理方面的经验确实非常少,在这种情况下我无法为您提供帮助 [这就是为什么我给出了“伪代码”而不是 Java/Kotlin 的原因),抱歉。
标签: android file encryption