【问题标题】:Android Encryption & Decryption algorithm for large filesAndroid大文件加解密算法
【发布时间】:2014-05-22 19:34:21
【问题描述】:

我在 Android 中使用 AES 算法进行加密和解密。小文件没问题,但是当我尝试解密大约 70 mb 的文件时,我要等 2-3 分钟。我应该使用哪种算法?

【问题讨论】:

  • 你能告诉我们你的加密/解密代码吗?也许可以在您的实施中进行改进。您需要一次解密整个文件还是可以接受流式解决方案?
  • @Duncan 我们可以聊聊这个吗?
  • 最近有一个similar question。您应该尝试相同的建议 - 测量使用循环输入和输出流复制 70mb 文件所需的时间。加密可能不是这里的主要瓶颈。
  • 你使用的是哪种操作模式?

标签: android performance encryption encryption-symmetric encryption-asymmetric


【解决方案1】:

我不知道是否有一种算法会在加密/解密该大小文件所需的时间方面有所不同。

但您始终可以尝试拆分文件并分别加密/解密每个部分的方法,您可以使用一些异步任务以“并行”方式进行操作。

例如,您可以有 7 个文件,每个文件 10MB。你把这7个部分并行解密,解密后粘在一起。

如果您仍然想要一个物理文件,您可以将加密的单独部分放在一个 zip 文件中,并在需要解密时提取它们。

【讨论】:

  • 我有一个视频文件,我怎么能放7个单独的文件?还可以在视频播放时解密吗?
  • 如果您想并行运行加密/解密,CTR 模式很有用。
猜你喜欢
  • 2021-05-19
  • 2011-10-13
  • 2012-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多