Android 和 AES 侧信道攻击

信息安全 安卓 加密 AES
2021-08-25 06:42:15

我正在开发一个项目,该项目将涉及 Android 应用程序和蓝牙设备之间的对称 AES 128 位加密通信。是否有任何可用于 Android 的公共 AES 库,其中包括针对简单和差分电源攻击的对策?

我可以在应用程序中使用哪些其他技术来防止侧信道攻击?

我看过一些演示,显示 iPhone 的 AES 密钥很容易通过相对简单的侧信道分析而被破坏。Android 是否同样脆弱?

1个回答

我不知道有任何公共加密库具有基于对 AES(或任何其他对称密码)的功率分析的侧信道攻击对策。有两个很好的理由甚至不想写它们:

  1. 大量技术已获得专利。您可能会很快收到删除通知。
  2. 通过功耗分析,您必须能够物理访问设备,并且在大多数情况下,您还需要能够在设备上运行任意代码。对于智能手机应用程序,攻击者通过传统手段(例如越狱)更容易解除密钥。

简而言之,如果您的攻击者可以物理访问它,请不要在 Android 手机(或 iPhone)中使用重要的 AES 密钥。请注意,在视频中,第一次攻击是针对 ECC 的弱实现,而不是针对 AES。

您可能更愿意解决攻击者从远程操作的更可能的侧通道攻击,例如定时攻击、缓存攻击或填充预言机攻击。

有效的对策可以在协议级别完成,独立于 AES 库。否则,您可以考虑使用 Android NDK 和NaCl 库