某专注于加密芯片设计的高科技公司在进行产品开发的过程中,遭遇了一次来自隔壁实验室的电磁辐射窃密事件。这家公司的研发团队正在开发一款新型的加密硬件产品,产品基于FPGA芯片来实现高安全性的加密算法。FPGA是一种可以编程的集成电路,设计人员可以根据自己的需要在芯片内部构建各式各样的数字逻辑电路,非常适用于加密算法的硬件加速和专用实现。研发团队在实验室里使用FPGA开发板对加密算法的硬件实现进行调试和测试,开发板上跑着的是公司自研的加密算法核心代码,其中包含了产品的核心加密密钥。隔壁的实验室是同一个产业园区的另一家科技公司,但是这家公司的主营业务和芯片设计完全不相关。不过这间实验室里有一位对电磁侧信道分析有深入研究的技术人员。他在一次偶然的机会中发现,从自己的办公室位置可以通过简单的电磁探头捕捉到来自隔壁实验室的微弱电磁信号。出于好奇心,他开始对这些信号进行系统的采集和分析。他使用了一个在电磁兼容测试中常用的近场电磁探头,配合一台高灵敏度的频谱分析仪,在靠近两家实验室隔墙的地方持续采集来自隔壁的电磁信号。经过一段时间的采集和预处理之后,他尝试使用差分电磁分析技术来处理这些信号。差分电磁分析的核心思想是通过比较加密设备在处理不同数据输入时的电磁辐射差异,来推断出密钥的位信息。他成功地通过这种方法从采集到的电磁信号中恢复出了FPGA开发板上运行的加密算法所使用的密钥。这个过程没有对隔壁实验室的物理环境做任何侵入,也没有入侵任何网络系统,仅仅是通过在公共空间放置一个电磁探头就完成了对核心密钥的窃取。
从技术原理来分析,差分电磁分析是利用加密设备电磁辐射的一个很经典的技术。它的核心基础在于,加密算法的软件实现或者硬件实现在处理不同的中间数据值的时候,电路的活动状态是不一样的,这些不同的活动状态产生了不同的电磁辐射特征。通过大量的统计采样和差分分析,攻击者可以把和密钥相关的信号从背景噪声中分离出来。FPGA芯片的工作原理是在芯片内部构建数字逻辑电路,由可编程的逻辑单元和互连网络组成。当FPGA执行加密算法的时候,芯片内部的逻辑单元根据算法步骤不断地翻转电平,每一次翻转都会消耗电流并产生电磁辐射。加密密钥在算法中的使用方式决定了逻辑单元翻转到什么程度,不同的密钥位对应了不同的翻转模式。差分分析的具体步骤是,攻击者先假设密钥的某一位是一个特定的值,然后根据这个假设把采集到的电磁信号分成两组,再计算两组信号的平均值之差。如果假设的密钥位是正确的,这两组信号的平均值会呈现出明显的差异。如果假设是错误的,差异就会趋于零。通过反复尝试和比较,攻击者可以逐位地恢复出整个密钥。这个过程的关键在于信号采集的精度和信噪比。FPGA开发板的电磁辐射相对比较强,因为开发板上的电路布线不像最终产品那样优化,电磁兼容性设计也比较弱。再加上隔壁实验室和FPGA开发板所在的实验室之间只隔着一堵普通的墙体,电磁波穿过墙体之后的衰减有限。如果攻击者使用的探头灵敏度够高,数据采样率足够大,从墙体另一侧恢复出足够清晰的有用信号是完全可行的。
这个案例对所有从事硬件安全产品开发的科技公司来说,都提供了一个相当具体的教训。第一,产品研发阶段的物理安全环境管理不应该只局限于人员管控和信息系统的网络安全,还应该包括电磁辐射的管控。FPGA开发板、原型测试板、仿真调试器这些设备在研发过程中会产生较强的电磁辐射,如果研发实验室的物理隔离不够严密,隔壁房间甚至楼上楼下都有可能采集到这些设备的电磁信号。第二,研发实验室在选址和改造的时候应该把电磁兼容性作为一个基本的考虑因素。对于涉密程度较高的硬件研发项目,研发实验室应该具备一定的电磁屏蔽能力。至少应该保证实验室内外之间的电磁信号衰减达到一定的安全水平,不能出现一墙之隔就能收到有效信号的情况。一个相对简单的解决方案是在实验室内部署电磁屏蔽帐篷或者电磁屏蔽工位,将敏感的开发设备和测试设备放在屏蔽罩内运行,这样可以大大降低电磁辐射的外泄风险。第三,加密算法的实现本身也应该具备抵抗侧信道攻击的能力。目前业界已经有很多成熟的防侧信道技术,包括在算法实现中插入随机时间延迟来打乱电磁信号的时间规律、使用掩码技术来消除中间值和电磁信号之间的相关性、以及在硬件层面设计恒定功耗的运算电路。研发团队应该将这些防护技术融入到加密算法的硬件实现中,从源头上降低电磁侧信道攻击的风险。第四,对于从事敏感技术开发的团队来说,周边环境的安全摸底也是一个需要关注的工作。如果研发场地周边的邻居单位中有对电磁分析技术比较了解的团队,就应该采取更加严格的物理隔断措施。电磁安全是硬件安全中相对容易忽视但影响巨大的领域,值得每一个硬件开发团队认真对待。案例来自企密安官网。






