以块为单位加密数据

时间:2013-01-27 17:17:48

标签: objective-c encryption

前段时间我在这个论坛上询问过如何在不将iphone完全加载到内存中的情况下加密iphone上的大文件。但是没有得到答案。我不想加载兆字节的数据只是为了再加密它们......在ram中。 iDevices有非常有限的ram所以我希望加密引擎加密文件而不是内存数据,而不是将整个文件加载到内存。我不是objective-c的专家,所以我没有找到一种方法来使用Security.framework。相反,我编写了一个类,它以指定大小的块读取源文件,加密它们并写入目标文件。这样我就不会将整个文件读入内存,以解决我的问题。但是......这会引发另一个完全不同的问题吗?如果我将文件拆分为N个部分,分别加密这些部分然后将结果加入加密文件,加密是否会受到影响?我几乎没有加密知识,所以我想确保我的方法不会影响加密算法(我使用的是AES 128bit)。

感谢您分享您的想法

1 个答案:

答案 0 :(得分:1)

文件的加密不会受到块的影响,因为加密始终以小块完成。 AES(您在之前的问题中似乎使用的)具有128位的块大小。