加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

瑞萨安全加密引擎让密钥管理变得更轻松

2021/03/04
777
阅读需 13 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

随着互连设备的不断增多,对通信通道和设备本地存储的安全需求也日趋旺盛,以保护用户数据的机密性及完整性。嵌入式设备开发人员面临的难题是,在传统和现有解决方案的基础上,如何扩展其设备能力以满足此类新的最终用户需求,以及选择哪条迁移路径。特别是密钥的处理可能会带来巨大的挑战,更何况还需要在生产过程中对密钥进行管理。如果量产工厂从未实施过任何特定的安全相关的处理流程,那挑战就更大了。本文介绍了瑞萨如何帮助客户以简单且经济高效的方式解决此类问题。

一种方法是通过商业化软件或从开源社区的软件库简单地实现所有必需的加密功能。这或许是最简单的方法,但同时也有一些缺点。通常,这种解决方案将消耗CPU的大量处理资源,因此会增加功耗及系统延迟。此外,根据处理器类型和工作频率的不同,许多涉及非对称加密的操作(例如在设备和远程服务器之间建立TLS加密连接,以建立安全信道)可能需要花费大量时间才能完成,因此会降低连接性能。

另一个较为极端的方式,加入安全芯片。乍一看,这或许是个解决问题并同时简化开发的好办法。的确,安全芯片的设计初衷就是提供最高级别的物理攻击防护,并且是一个独立的、隔离的分立子系统,用户无需操心加密功能的实现。然而,如果我们仔细看一下这个解决方案,也很快就能发现一些短板。系统成本将由于使用专用芯片而增加。加密芯片与主MCU的连接通常是低带宽的(通过简单的串行总线,如I2CSPI),且是一个SPoF(Single Point of Failure)。尽管安全器件可以安全地存储用户密钥,但用户可用的空间非常有限。安全芯片所实现的加密算法的吞吐率通常都没有说明,当然这些器件的设计初衷也不是追求高性能。特别是对AES加速的支持可能根本不可用(处理批量数据时,如加密固件更新或本地加密文件)。安全芯片可以实现的功能是固定的,系统部署后就无法进行更新。将关键信息写入安全芯片时(如密钥配置)可能需要其他额外的工具,这些工具需要集成到工厂的生产流程中。专门的芯片烧录服务商可能可以提供安全烧录服务以减轻一些负担,但这显然也会增加成本。 
现在,让我们来了解一下瑞萨的安全加密引擎(SCE)。

作为集成解决方案,由SCE定义的安全子系统(如图1所示)提供了类似安全芯片的相关功能,并且具备更高的性能,不仅降低了BOM成本,还可以更容易地集成到开发过程和生产中。它在隔离的片上环境中支持AES、RSA、ECC、哈希算法和真随机数生成。SCE可以通过工厂编程的256位硬件唯一密钥(HUK)派生出加密密钥,从而对客户密钥进行封装(加密),实现无限量的安全密钥存储。安全加密引擎(SCE9)加密子系统完全包含在MCU内部,通过访问管理电路进行保护,在检测到非法访问时会关闭加密引擎。SCE9使用自己内部专用的存储区域执行所有基于明文密钥的加解密操作,无法通过CPU或DMA总线访问该内部存储区域。SCE9的高级密钥存储和密钥管理功能可以确保明文密钥不会暴露或存储在CPU可以访问的RAM或非易失性存储器中。
        

图1: 安全加密引擎 Secure Crypto Engine

RA微控制器产品家族中所有具备连接功能的产品群(如RA6和RA4),均包含SCE。RA6M4是瑞萨新一代RA MCU家族中的第一款产品,专注于安全性。先进的安全功能与一流的外围IP相结合,MCU系列之间的功能和引脚互相兼容,使RA成为几乎所有互联嵌入式产品的最佳选择。

对于重点关注安全性的应用来说,如何在生产流程阶段完成密钥配置而不暴露密钥内容,这始终是个挑战。一种方法是使用硬件安全模块(HSM),编程器可以安全地管理应用密钥,并与配置系统的骨干基础架构进行对接。另一种选择是使用高速编程设备提供的编程服务,这可为许多类似的设备提供批量配置功能,适用于大规模生产。
所有瑞萨MCU历来都支持通过串行接口和USB接口进行编程,提供了一套用于量产的可靠且低成本的烧录机制。通过这个接口,用户可以根据需要烧录应用程序和其参数。

是否可以使用相同的编程接口来有效地注入应用密钥呢?瑞萨正是通过这种方式扩展了RA6M4和后续MCU新产品的内置功能,从而能够通过编程接口对MCU进行安全密钥配置。

对于工厂生产时所需的批量配置,编程接口支持专用的协议命令,允许用户通过内置的引导固件将所选的安装密钥和加密的有效数据(需要注入的应用密钥)传递到SCE的入口。

概念如下图2所示:

图2: 通过编程接口进行MCU配置

SCE子系统包含一个硬件根密钥(HRK),可结合密钥派生功能生成“密钥加密密钥”(KEK)。这些KEK可以用于将加密格式的任何用户密钥传输到SCE的安全边界内,然后在密钥安装过程中,安全地对用户密钥进行安全地解密和重建,以供进一步使用。为了更容易进行描述,我们将经过KDF(HRK)流程产生的KEK称为HRK’。

HRK本身受到保护,且在SCE安全边界之外无法被访问。同样,HRK’也仅存在于SCE安全边界内。那在工厂生产中,用户如何通过引导固件接口,将要注入的应用密钥准备好呢?如图3所示。

第一步是选择(生成)安装密钥(图片中的绿色钥匙)和应用密钥(图片中的黄色钥匙)。安装密钥是AES对称密钥,而应用密钥可以是SCE支持的任何类型和尺寸的密钥包括对称和不对称密钥。该操作应在安全的环境中进行,以确保密钥机密性。

应用密钥代表有效数据载荷,并由用户使用安装密钥进行加密。显然,安装密钥也应该被加密,否则任何能拦截通信协议或复制存储在工厂车间编程设备内部的安装数据的人,都可以轻松地解密应用密钥。

但是,用户如何得到HRK’,以便用它来加密安装密钥呢?无法实现。那么瑞萨如何通过不公开共享来传递保密数据呢?

 

图 3: DLM服务器和密钥安装

瑞萨可为客户提供免费服务,使其用HRK'对安装密钥进行加密,而又不泄露有关HRK本身的内容信息。该服务通过专用的安全服务器提供,以支持MCU设备生命周期管理(DLM服务器)。任何用户都可以注册该服务并生成用于烧录操作的必要数据。用户与服务器之间的所有通信都是安全的,并通过PGP进行加密。

在此方案中,用户将安装密钥(绝对不要提供应用密钥!)安全地发送到DLM服务器,就会收到通过HRK’加密的版本。

如图3所示,绿色钥匙“嵌入”在蓝色钥匙中。 

用户将加密的安装密钥(通过编程接口协议)发送给MCU后,可以在SCE中成功解密安装密钥。绿色安装密钥即被安全传输至SCE安全边界内。

现在,安装密钥又可以用于在SCE中解密黄色密钥。至此,黄色钥匙已被安全地传输到SCE边界内并被重建。

现在还剩下什么没做的?黄色的应用密钥必须以某种形式保存在MCU内存中,否则在断电时就会丢失。但是黄色密钥不能以纯文本格式导出,否则会破坏密钥的机密性。
SCE还有另一个致胜法宝可以提供安全的存储功能:硬件唯一密钥(HUK)。

HUK是仅能通过SCE访问管理电路,通过专用总线访问的只读256位密钥。像HRK一样,KDF可以将硬件唯一密钥与密钥生成信息结合在一起,通过此类派生密钥实现密钥封装,实现了用户密钥的安全存储。HUK本身以封装(加密,非明文)形式存储在独立的内存区域中。因此,可以防止非法访问和复制。

因此,在将黄色密钥导出到SCE子系统外之前,先用HUK派生密钥对其进行封装,以便可以将其内容存储在MCU的任何内存位置。

值得注意的是,安装密钥在工厂烧录完成之后没有任何价值,这意味着它不必被存储在MCU上(通常也不会存储)。SCE驱动程序提供其他API,可以使用出厂时安装的受保护的密钥进行现场密钥刷新。反过来说,工厂烧录完成后,就不需要依赖DLM服务器的服务了。

这一解决方案将为我们的终端客户提供许多优势。

  • 封装密钥可以允许几乎无限量的密钥存储,可以选择RA6M4 MCU中可用的任何程序或数据闪存位置来存储受保护的密钥。同时,HUK的唯一性可防止将封装密钥非法克隆和复制到另一个MCU中。受保护密钥的存储位置在编程命令参数中指定。
  • 将DLM服务器与编程/烧录接口结合,所有与密钥相关的数据都是以加密格式处理,就可以在工厂车间内轻松实现安全生产区域的要求。
  • 应用密钥完全受控于开发人员,永远不需要知会瑞萨,也永远不应离开客户安全环境。
  • 工厂烧写设备无需和DLM服务器进行“在线”通信。某些程序固件版本或某些批次产品的安装密钥可以是相同的。因此,可以在生产线烧录之前“脱机”准备应用密钥和安装密钥。
  • 可以使用相同的编程/烧录界面对应用程序和关键信息进行编程,从而简化流程。瑞萨提供相应工具支持工厂烧录,例如量产烧录器PG-FP6和瑞萨闪存烧录程序RFP(基于PC的可编程工具,可用于原型设计和试生产系列)。

综上所述,瑞萨电子提供了一种经济高效且易于使用的解决方案,帮助客户实现其应用程序中更高的安全级别。

RA6M4 MCU和即将推出的基于Cortex-M33的RA6和RA4的微控制器系列中都带有此功能。

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
ATXMEGA64D4-AU 1 Microchip Technology Inc IC MCU 8BIT 64KB FLASH 44TQFP
$3.44 查看
MK66FN2M0VLQ18R 1 NXP Semiconductors RISC MICROCONTROLLER
$54.39 查看
STM32H743ZIT6 1 STMicroelectronics High-performance and DSP with DP-FPU, Arm Cortex-M7 MCU with 2MBytes of Flash memory, 1MB RAM, 480 MHz CPU, Art Accelerator, L1 cache, external memory interface, large set of peripherals

ECAD模型

下载ECAD模型
$22.21 查看
瑞萨电子

瑞萨电子

(RENESAS)于2003年4月1日—由日立制作所半导体部门和三菱电机半导体部门合并成立。RENESAS结合了日立与三菱在半导体领域方面的先进技术和丰富经验,是无线网络、汽车、消费与工业市场设计制造嵌入式半导体的全球领先供应商。创立日期2003年4月1日公司法人董事长&CEO伊藤达业务范围单片机逻辑模拟等的系统LSI、分立半导体元件、SRAM等的存储器开发、设计、制造、销售、服务的提供。集团成员44家公司(日本20家,日本以外24家)年度销售额2006财年(截止至2007年3月):9526亿日元(约83亿美元)从业人员:26000人(全世界20个国家、43家公司)瑞萨科技是世界十大半导体芯片供应商之一,在很多诸如移动通信、汽车电子和PC/AV 等领域获得了全球最高市场份额。瑞萨集成电路设计(北京)有限公司苏州分公司(RDB-SU)是瑞萨科技全资子公司,2004年1月成立以来,现已拥有150多名优秀工程师,承担着家电和汽车电子领域MCU的一系列设计工作,并在2006年4月开始开发面向中国市场的MCU。

(RENESAS)于2003年4月1日—由日立制作所半导体部门和三菱电机半导体部门合并成立。RENESAS结合了日立与三菱在半导体领域方面的先进技术和丰富经验,是无线网络、汽车、消费与工业市场设计制造嵌入式半导体的全球领先供应商。创立日期2003年4月1日公司法人董事长&CEO伊藤达业务范围单片机逻辑模拟等的系统LSI、分立半导体元件、SRAM等的存储器开发、设计、制造、销售、服务的提供。集团成员44家公司(日本20家,日本以外24家)年度销售额2006财年(截止至2007年3月):9526亿日元(约83亿美元)从业人员:26000人(全世界20个国家、43家公司)瑞萨科技是世界十大半导体芯片供应商之一,在很多诸如移动通信、汽车电子和PC/AV 等领域获得了全球最高市场份额。瑞萨集成电路设计(北京)有限公司苏州分公司(RDB-SU)是瑞萨科技全资子公司,2004年1月成立以来,现已拥有150多名优秀工程师,承担着家电和汽车电子领域MCU的一系列设计工作,并在2006年4月开始开发面向中国市场的MCU。收起

查看更多

相关推荐

电子产业图谱

瑞萨电子提供创新嵌入式设计和完整半导体解决方案。作为专业微控制器供应商、模拟功率器件和SoC产品领导者,瑞萨电子为汽车、工业、家居、办公自动化、信息通信等应用提供综合解决方案。详见瑞萨官网。我们将与您分享近期产品技术资讯和新闻动态。