跳转到主要内容

静态数据加密几乎是一个前沿话题。但是,尽管大多数安全专业人士认为加密以数字方式存储的非活动数据以及使用中的数据和传输中的数据都是必须的,但在移动方面,需要考虑一些特殊的考虑。

这是我最新的一篇博客,关注传统安全问题和移动通信之间的交叉点。我还写过关于移动恶意软件、移动pharming和移动网络钓鱼的文章。我想解决移动设备上的静态数据加密问题,因为与其他博客一样,移动设备与传统设备的细节可能非常不同。

硬件加密

硬件加密在大多数现代移动设备上都可用。然而,虽然95%左右的设备在iOS设备上启用加密是非常常见的,但据估计,在Android设备上启用的加密在大约10%的设备上不太常见。

硬件加密通常遵循对整个文件系统进行加密的一些排列,其中包括操作系统和用户数据,而这些数据在闪存中。然后在使用时在主存储器中解密。考虑这一点的一个简单方法是身份验证过程。当您使用PIN、指纹等进行身份验证时,设备将被解密并准备使用。当您手动锁定设备或由于您处于非活动状态而锁定设备时,它会自动加密。


软件加密

如果硬件加密是散弹枪方法,软件加密是狙击步枪。软件加密可以与特定应用或应用组相关联。也许您将它用于电子邮件、日历和联系人应用程序,或者它只是您的CRM应用程序。从用户体验的角度来看,您将针对移动设备进行身份验证,然后再针对应用程序进行身份验证。

如果您正在共享一个物理设备,或者您的设备不支持硬件加密,或者您只是想用另一层加密保护敏感数据,以防有人破解、猜到您的PIN,那么添加一层软件加密直观地讲是有意义的。在最后一种情况下,它们将进入您的设备,但您的软件加密仍将保护该应用程序,该应用程序希望具有与刚刚破解的应用程序不同的、更强的身份验证机制。

其他考虑

从应用程序开发人员的角度来看,当决定使用静态数据加密构建应用程序时,需要考虑数据类型。与传统设备一样,可以有多种数据结构,如数据库、日志和文档。加密三种不同的数据结构可能需要三种完全不同的方法。对于每种方法,可以有许多选择。

考虑一个常见的移动数据库,如SQLite。在SQLite中,有多个加密选项,如SEE、CEROD、SQLiteCrypt、SQLCipher。对于加密,始终需要考虑性能。为了提高性能,开发人员可能需要从加密过程中排除某些类型的文件,如MP3和MP4文件,如果这会损害用户体验。他们还需要考虑加密的类型和级别。

关于本系列的更多信息

例如,他们想使用256位AES加密吗?或者是否需要使用FIPS 140-2加密模块的加密?FIPS要求对于需要证明其应用程序在美国联邦政府机构部署时符合NIST标准的静态数据的开发者来说是常见的。

我们都知道静态数据加密是有价值的。移动设备也是如此。在移动设备上,需要从开发角度和用户角度考虑许多特定于移动设备的因素,以确保数据安全,同时仍满足移动设备的可用性要求。

本文:https://cioctocdo.com/data-rest-encryption-mobile-devices