摘要:军用设备,特别是便携式军用设备(例如:无线电台),密钥的物理安全性至关重要。选择使用特殊设计的元器件能够满足实际应用的标准要求,并可提供额外的保护措施。这些元器件在电气和物理结构上为数字密钥的产生和存储提供保护。
本文还发表于Maxim工程期刊,第62期(PDF,1.1MB)。
保密通信的实质是保护密钥,较长的密钥在一定程度上能够防止通过强硬的计算技术破解代码,但这种保护措施无法满足同样重要的物理安全性的要求。为了从根本上解决物理安全性问题,必须考虑几个问题,包括:产生随机密钥的物理机制,防止在认证代理之间传送密钥时被隐秘地电子拦截,防止被秘密进行物理和机械侦测的安全密钥存储方法。
Maxim的DS36xx系列安全监视器从封装设计到外部传感器接口,直至内部电路体系结构采用了一系列的独特功能,为军品电子设计工程师提供了所需要的全部功能。器件具备这些特性后,更容易达到传统的和新兴的便携式军品的计算以及通信安全标准的要求。因此,这些器件具有强大的应用潜力,如图1所示。
图1. DS36xx器件适合多种现在和未来军事以及国家保密通信功能,包括保密通信和客户认证
电子数据的安全性要求
在联邦信息处理标准(FIPS)中,美国政府规定了密码模块必须符合严格的(尚未分级)应用要求。该标准由国家标准和技术研究所(NIST)出版,FIPS 140-2标准有四个基本级别:
- 第1安全级:无物理安全机制要求(只实现NIST标准化密码算法)
- 第2安全级:篡改存迹物理安全
- 第3安全级:防篡改物理安全
- 第4安全级:物理安全提供保护层
对于要求高级别安全性的军事通信应用,设计必须符合国家安全局(NSA) 1类认证标准。经过NSA认证的设备用于加密机密的美国政府信息。认证过程非常严格,包括以下项目的测试和分析:
- 密码安全
- 功能安全
- 防篡改
- 发射安全
- 产品生产和分销的安全性
必须符合这些标准的一种常见设备是工作在作战信息网络战术(WIN-T)系统中的通信设备,这一战术通信协议用于战争前线。WIN-T支持多种数据、语音和视频功能。该网络提供可靠的移动宽带通信支持,使战士能够始终保持畅通的连接。WIN-T采用通用的通信技术,例如无线局域网(WLAN)、以太网协议传输语音(VoIP),以及第三代蜂窝/卫星通信技术等。WIN-T连接作战地面区域的战士与国防部(DoD)全球网的指挥官之间的通信。
任何军事设备,WIN-T信息安全性非常重要。WIN-T的体系结构必须允许经过认证的用户自由访问网络,同时也要能够监测并拒绝非法攻击。同样,必须从一开始就内置WIN-T安全功能,而不是事后加入安全保护。这种方法保证了语音和数据在网络上的安全保密传输。
过去,系统设计的主要目标是快速部署,而安全功能则通过在现场更新实现。导致这种方式的主要原因是人们通常认为内置安全功能非常昂贵,有可能拖延计划。然而,目前的军事通信设备都要求从一开始就具备高级安全功能,提高通用性和连通能力,符合FIPS 140-2、NSA和WIN-T的要求。在其他军事应用中,安全和防入侵也逐渐成为关键因素。例如,MESHnet Firewall最近开发的General Dynamics®和Secure Computing®已经用于作战车辆。
综上所述,新一代军事通信系统或组件如果不能首先满足应用标准,就不能投入使用。特别是,目前要求军事通信设备至少要符合FIPS 140-2第3和第4安全等级。而且,在更高级的应用中,设计工程师还必须遵照NSA 1类以及最新实施的WIN-T规范。通常情况下,军事应用至少需要符合FIPS 140-2的第3安全级认证。
满足安全性要求
对于系统设计人员而言,达到美国政府颁布的安全要求是一项艰巨任务。随着对系统构成潜在威胁的因素不断增加,安全性标准也随之变化,随着时间的推移安全性的要求也更加苛刻。
为了跟上安全标准的变化,设计人员需要解决很多棘手问题,因为设计过程必须考虑安全等级的要求,以及所设计的安全设备的最终目的等。例如,只对密钥重新加密不会明显提高密钥的安全性,因为已经有成熟技术能够窃取密钥。因此,需要组合使用几种不同方法来保证密钥的安全性,包括增强物理安全性等。
设计符合FIPS 140-2 (第3和第4安全级)、NSA 1类或WIN-T要求的安全军事系统时,重要的是采用具有全面防篡改技术的器件,在主电源失效时这些器件也能发挥效用。Maxim的DS36xx系列产品,例如,图2所示的DS3600,即使在电池供电时仍然能够主动探测篡改侵入,提供了保证密钥和关键数据安全的集成方案(在主电源失效时会立即响应,确保工作的顺畅)。不论是否有电源供电,片内电源监测器以及电池开关保证了所有篡改监测机制始终保持有效的工作。器件持续检测主电源—当它降到下限门限值时,立即自动切换到外部备用电池,保持内部和外部保护电路继续工作。这样,设备主电源失效时,不会中断防篡改探测。
图2. DS3600安全监测器同时利用监测功能和安全机制来侦测篡改,保护备用电池供电的易失存储器的内容,例如,内部存储的密钥及其他存储在外部SRAM中的敏感数据
为达到FIPS 140-2 (第3和第4安全级)以及NSA 1类和WIN-T规范的要求,防篡改侦测器件应该允许设计人员加入他们自己的外部传感器,这样,可以在存储受保护数据的器件周围提供保护层,即安全边界。通过在DS36xx系列附加外部传感器,系统设计人员具备了独特而又灵活的方法来加入应用安全层,从而满足了政府部门颁布的各种标准要求。
为满足各种政府标准的要求,DS36xx安全监测器可以同时监视模拟供电电压、数字信号以及阻性网络保护传感器网格等。此外,所有DS36xx器件都提供芯片级球栅阵列(CSBGA)封装(参见图3)。通过严格限制对安装器件引脚的访问,这些封装还提供了控制保护和数据信号的另一层无源物理安全保护。
图3. 器件安装到电路板后,DS36xx系列的CSBGA封装限制对I/O信号的访问,从而提供了无源保护层
内部安全性
DS36xx器件还包括其他的保护层,实现内部篡改侦测机制。这些内部侦测机制提高了器件和外部防篡改探测传感器定制配置的接口能力。内部防篡改侦测机制包括一个片内温度传感器、开封监测器、电源监测器、电池监测器以及振荡器监测器,提供连续的防篡改侦测。监测功能始终保持工作,特别是在采用电池供电时。
对于外部安全机制,当达到用户定义或工厂设置的门限时,内部保护机制被触发。例如,为满足NSA等必须具备的认证体,以及FIPS和WIN-T等标准,设计人员可以使用内部温度传感器监测基底温度。一旦达到温度门限的上限和下限,器件启动防篡改响应。
除了测量瞬时温度之外,DS36xx还提供其他的温度检测功能。特别是,速率变化探测器对基底温度变化速率的监测。温度的快速增加或降低都会触发器件的防篡改响应,提供额外保护,防止更高级别的加密数据恢复技术的入侵。
从受保护的SRAM中恢复数据的一条途径是在器件断电前加入液氮,这种方法将没有供电的SRAM数据的保持时间延长到毫秒级。然而,DS36xx系列的温度监测功能可以判断出这一篡改事件,在低温存储器保持功能起作用之前,器件就会擦除其内部存储器。存储器采用硬件连接,高速擦除功能在不到100ns的时间内即可清零整个存储阵列。其他的篡改事件(例如,互锁底部)或向器件的I²C/SPI™兼容接口直接发送命令也能够触发这一功能。
DS36xx器件还具备一项专有技术—无印迹密钥存储器†。无印迹密钥存储器解决了SRAM存储单元氧化层电荷累积或耗尽(取决于所存储的数据)导致的安全问题。长期存储在这类传统存储单元中的数据随着时间的变化产生氧化层应变,在存储位置留下了数据记忆。即使清除这些单元后,也可以读出数据。
而新开发的非记忆密钥存储技术避免了氧化应变现象。该技术改进了器件的普通电池供电SRAM存储器。因此,当探测到篡改事件或者通过命令直接清除存储器后,整个存储器都被清除,不会留下可能恢复的数据痕迹。军用和政府机构的应用产品设计人员利用这一功能,可以开发独特而且非常安全的存储高度敏感密钥的产品。
篡改事件响应
DS36xx器件不断监视上述所有篡改入侵事件,侦测到篡改后,通过内部或外部防篡改机制立即做出防篡改响应。侦测篡改事件从识别篡改源开始,在导致篡改事件的状态清除之前,将一直锁定篡改事件。然后,才会复位篡改事件。表1列出了DS36xx器件在篡改响应期间的措施步骤。
表1. DS36xx器件探测到篡改事件时采取的措施步骤
Step |
Action |
1 |
The internal encryption key is immediately, completely, and actively erased (if applicable). |
2 |
The external RAM is erased (if applicable). |
3 |
The tamper-latch registers record the state of the tamper input sources. |
4 |
The tamper output asserts to alert the system processor. |
5 |
The tamper-event time-stamp register records the time of the tamper event. |
支持高度安全的军事应用
不但保护存储密钥需要采用物理安全措施,实际密钥的生成也需要物理安全性。即用于生成数字密钥的方法必须保证不会非法复制密钥,不论是采用相同设备(这违背了DS36xx系列的安全数据存储目的),还是完全复制设备。
DS36xx器件的随机数发生器(RNG)采用确定性伪随机算法,使用芯片自带的两个随机源产生种子。这一函数提供了连续比特流,主机CPU对其进行后处理,形成认证软件RNG函数种子。而且,每一DS36xx安全监测器含有工厂预设的唯一芯片序列号,可通过I/O端口读取该序列号。芯片序列号为用户提供了独特的识别每个最终产品的途径。
此外,最新的DS36xx器件还可以根据篡改类型擦除某些特殊存储单元。这一功能被称为擦除等级(参见表2器件),适用于整个设备保持完整性的应用。即在发生了篡改后,虽然不能使用全部功能,但还可以在一定程度上继续使用该器件。通信设备既属于此类应用,例如安全军事通信设备,即使出现了篡改事件,设备也必须具有一定的工作能力。
表2. DS36xx器件及其独特的功能
Part |
I/O |
No. of Analog Voltages Monitored |
No. of Digital Inputs Monitored |
Operating Temperature Range (°C) |
Internal Key Memory (Bytes) |
External Memory Control |
Random Number Generator |
Overvoltage Monitor |
Battery Monitor |
Erasure Hierarchy |
DS3600 |
3-wire |
4 |
1 |
-40 to +85 |
64 |
√ |
√ |
|
√ |
|
DS3605 |
I²C |
4 |
1 |
-40 to +85 |
N/A |
√ |
√ |
|
√ |
|
DS3640 |
I²C |
5 |
3 |
-40 to +85 |
1k |
|
√ |
√ |
√ |
|
DS3641 |
4-wire |
5 |
3 |
-40 to +85 |
1k |
|
√ |
√ |
√ |
|
DS3644* |
I²C |
12 |
4 |
-55 to +95 |
1k |
√ |
√ |
√ |
√ |
2 levels |
DS3645* |
I²C |
12 |
4 |
-55 to +95 |
4k |
√ |
√ |
√ |
√ |
|
DS3650 |
4-wire |
2 |
N/A |
-40 to +85 |
N/A |
|
|
√ |
√ |
|
DS3655* |
I²C |
N/A |
4 |
-40 to +85 |
64 |
|
|
|
|
|
DS3665* |
SPI |
12 |
4 |
-55 to +95 |
8k |
√ |
√ |
√ |
√ |
4 levels |
除了高级数据安全功能外,很多国防应用还要求承受较宽的工作和存储温度范围。虽然DS36xx器件主要用于在普通工作环境中提供较高的安全功能,该系列中某些最新的产品也支持较宽的工作温度范围,达到整个军品级温度范围(DS36xx为-55°C至+95°C,而军品级范围是-55°C至+125°C)。