安全性最基本的要求是避免密钥落入未授权人的手中。绝不能“明文”(没有加密)传输密钥,而私钥更是不能在任何时间任何范围内传输,包括在可以被攻击者“嗅探”到简单密钥检索操作的系统内。用软件实现的密钥意味着存储在RAM中的密钥可以被攻击者使用正确的工具探测到——这是糟糕的实践。
保护密钥的最好方法是存储在受保护的硬件,尤其是可以处理所有涉及密钥计算的硬件中。这样,密钥不会离开它的藏身之处,并且如果措施得当,可以对任何外部观察者屏蔽所有涉及密钥的操作。如果必须与其它实体共享密钥,那么它应该是一个使用秘密密钥计算出来并在通信时加密的(如在使用RSA的TLS协议情况下)临时(会话)密钥。私钥不应该离开它的保险柜。安全地共享会话密钥的另一种方式是使用椭圆曲线密钥交换机制(ECDH)等密钥协议算法,安全地保护各方私钥的同时只明文发送公钥。 保护边缘节点的正确方法 我们已经介绍了边缘节点受到攻击的多种可能方式。所有下列措施均涉及以一种或另一种方式保存密钥来确保挫败这些攻击。虽然不可能100%地保证安全,这些措施至少提供了可能的最佳保护,并确保攻击者无法获取关键系统的密钥。每个方法都满足CIA重要元素的要求: ●证明进入网络的所有访客的身份。(真实性) ●加密消息。(机密性) ●为所有消息附加消息认证码(MAC)以证明消息没有在途中被篡改。(完整性) ●验证试图附加到节点的所有配件。(真实性) 此外,可以采取以下措施防止“毗邻”或“旁路”攻击。这些都是可以在整个系统或只在某一关键子系统中采用的实用方法。 ●将密钥存储在受到保护的硬件中,确保无电路接触密钥。 ●屏蔽系统以防止电磁辐射泄露密钥信息。 ●添加特别电路以挫败监控功率或其它信号的企图。其中可能包括虚假计数器或带有随机元素争夺有用信息的电路。 ●加密存储的密钥。尽管可以防止电路接触密钥,一个坚定的攻击者可能会尝试剥离芯片外层来查看其内部的嵌入式闪存,并以这种方式获取密钥。加密可以化解这种攻击。 ●避免使用不必要的端口。有些端口看起来是有用的,例如调试端口;但是,如果存在不使用它的可能,那么没有该端口,系统反到更加安全。 在整个制造过程中保护密钥也极其重要。一个深思熟虑的方案必须要保持密钥从其诞生到插入密钥存储装置的全程机密性。使用加密格式并在受保护硬件中存储密钥的硬件安全模块(HSM)是一个绝佳的、行之有效的方法。 保护密钥的真正解决方案 Atmel公司以加密元器件4的形式提供一系列的加密解决方案。作为硬件加密加速器的这些元器件往往注重的是其帮助主机处理器摆脱复杂数学算法的有用性。但还有一个更重要的方面:加密操作涉及到的密钥必须存储在隐蔽的受到保护的硬件中,确保密钥在软件或未受保护的硬件中进行同样的计算而可能暴露的方式下永不可见。 Atmel的加密元器件包括ATSHA204A和ATAES132A,前者是基于安全哈希算法(SHA)对称性认证、对成本敏感的理想选择,后者使用高级加密标准(AES)算法进行对称性认证、同时提供32K字节安全的EEPROM)。Atmel公司的最新产品ATECC508A,在其前代产品ATECC108A上添加了椭圆曲线密钥交换(ECDH)5密钥协议。基于椭圆曲线密码机制(ECC)的这两款元器件都内置有基于椭圆曲线数字签名算法(ECDSA)6的非对称认证能力,所有四款加密元器件均以受保护的基于硬件的安全密钥存储为特征,这正是最强的优势所在。 同时拥有椭圆曲线数字签名算法(ECDSA)和椭圆曲线密钥交换(ECDH)的ATECC508A是保障物联网边缘节点安全的完美选择。只需向物联网节点等含有微控制器的任何系统中添加一个微小的ATECC508A,即可为该系统方便有效地带来保密性、完整性和认证机制。
图3.ATECC508A与任何微处理器配合使用能够安全地提供保密性、数据完整性和真实性。 只需很小的成本就可以将ATECC508A添加到任何微控制器中。它采用的单总线或二线制串行总线(I2C)仅连接最少的引脚数,封装规格可以小到2毫米×3毫米。小于150纳安的睡眠电流使其功率消耗极低。 加密元件接收处理器提供的输入,在内部执行计算并返回签名、认证、会话密钥等计算结果,而不会泄漏计算方法。高品质的真随机数发生器(TRNG)有助于成功防止交易被回放。内部序列号有助于确保密钥的唯一性,而大容量的计数器则用于追踪认证过程。 物理和加密的对抗措施使得攻击者无法通过嗅探操作或探测装置来获取密钥。 ●整个芯片均覆盖着蛇形金属图案,阻止内部信号释放被外部检测到,并提供视觉障碍,阻止攻击者打开包装观察和探测操作。保护壳与其余电路通电相连,如果它被攻破,该芯片将不再运行,防止坚定的攻击者探测电路节点以获取密钥。 ●调节器和计数器用于混淆电源和信号特征。 ●没有额外的内部测试和调试衬垫,所以即使打开包装也不会发现额外的接入点。 Atmel加密元器件的一个重要好处是,通过使用简单的模块(可从Atmel公司购置)可以很容易地在生产过程中进行配置,确保密钥和签名证书安全插入到加密元器件。也可以由Atmel或Atmel公司的授权经销商来进行配置。
图4.在生产过程中配置ATECC508A 安全性是成功部署 的基础。目前,边缘节点是确保安全性中最薄弱的环节,而加密密钥的保护锁定了边缘节点。实现锁定的最佳方式是采用受保护的硬件。这是保持这些密钥和其它秘密远离窥探的唯一途径。的CryptoAuthentication加密元器件系列产品提供了在受保护的硬件中存储并管理密钥以实现多层次安全性的坚实手段。公司广泛的微控制器、无线器件和加密元件的组合带来了智能、安全连接及更多的尖端科技。
|