如何将下载的视频安全地存储到设备的 SD 卡中?

信息安全 加密 爪哇 安卓
2021-08-14 05:52:49

我想将视频安全地保存在我的 android 手机的 SD 卡中,这样其他应用程序或用户都无法在应用程序之外或任何其他设备上使用它。

那么为此我能做些什么呢?我考虑将加密的视频存储到 sd 卡。您能否建议哪种加密/解密更好或任何其他我可以用来解决我的问题的方法。

1个回答

你有正确的直觉。每个应用程序都可以读取 SD 卡上的所有内容,因此最好的解决方案是在将文件存储到 SD 卡之前对其进行加密。

我假设您是从应用程序开发人员的角度来询问的,并且您想知道如何在您的应用程序中实施这种保护。如果是这样,一种简单的方法是使用 AES-CBC 模式(使用随机 IV)进行加密,然后获取生成的密文并使用 AES-CMAC 在其上附加消息身份验证代码。您将需要两个单独的(和加密随机的)AES 密钥。您可以使用 生成密钥java.util.SecureRandom然后,您可以将密钥存储在应用程序私有存储中(而不是 SD 卡上)。希望这应该很容易编码。

如果您是从用户的角度提问,那么您需要提供更多关于您想要实现的目标的信息。如果您只想将视频存储在手机上,而不是在手机上观看,那么一种可能是使用桌面上的 GPG(或 PGP)对其进行加密,然后将加密文件下载到手机上;当您以后想要访问它时,请将其从手机中复制并使用 GPG(或 PGP)解密。另一方面,如果您希望能够在手机上查看它,您可能需要解释“没有其他应用程序或用户可以在应用程序之外或任何其他设备上使用它”的意思(例如,什么应用程序?)。