我正在开发一个项目,该项目将涉及 Android 应用程序和蓝牙设备之间的对称 AES 128 位加密通信。是否有任何可用于 Android 的公共 AES 库,其中包括针对简单和差分电源攻击的对策?
我可以在应用程序中使用哪些其他技术来防止侧信道攻击?
我看过一些演示,显示 iPhone 的 AES 密钥很容易通过相对简单的侧信道分析而被破坏。Android 是否同样脆弱?
我正在开发一个项目,该项目将涉及 Android 应用程序和蓝牙设备之间的对称 AES 128 位加密通信。是否有任何可用于 Android 的公共 AES 库,其中包括针对简单和差分电源攻击的对策?
我可以在应用程序中使用哪些其他技术来防止侧信道攻击?
我看过一些演示,显示 iPhone 的 AES 密钥很容易通过相对简单的侧信道分析而被破坏。Android 是否同样脆弱?
我不知道有任何公共加密库具有基于对 AES(或任何其他对称密码)的功率分析的侧信道攻击对策。有两个很好的理由甚至不想写它们:
简而言之,如果您的攻击者可以物理访问它,请不要在 Android 手机(或 iPhone)中使用重要的 AES 密钥。请注意,在视频中,第一次攻击是针对 ECC 的弱实现,而不是针对 AES。
您可能更愿意解决攻击者从远程操作的更可能的侧通道攻击,例如定时攻击、缓存攻击或填充预言机攻击。
有效的对策可以在协议级别完成,独立于 AES 库。否则,您可以考虑使用 Android NDK 和NaCl 库。