本应用笔记描述了MAX32520如何通过高速USB连接为上台个人计算机提供安全服务。本文讨论了MAX32520FTHR评估板(EV kit)和软件作为快速应用开发和实验的潜在平台。
系统设计
安全 USB 加密狗由 USB 接口和微控制器组成。微控制器必须提供一些关键的安全功能:
篡改检测
安全且经过身份验证的代码执行
安全加密密钥存储
受保护的唯一身份验证值
MAX32520符合Maxim集成专利ChipDNA的要求™物理不可克隆功能 (PUF) 技术、安全密钥存储、加密固件执行和安全引导加载程序。
下面的系统框图给出了使用高速USB桥接器和MAX32520的典型安全加密狗应用,MAX32520通过4位QSPI接口。该设计在MAX32520FTHR中实现,MAX32520FTHR是ADI公司提供的低成本Adafruit兼容Feather板。
图1.系统架构。
信任根
安全加密狗的第一个要求是固件映像身份验证和加密。MAX32520包含一个安全引导加载程序,用于验证并执行闪存中的固件映像。固件映像必须使用用户特定的密钥进行签名和加密,这些密钥是在IC制造期间分配的。如果检测到篡改事件,内部篡改检测机制会擦除这些密钥。此机制独立于 CPU 运行。如果没有密钥,引导加载程序将无法对固件映像进行身份验证和解密。
内部篡改检测机制监控芯片的物理、电气和散热方面。此外,MAX32520提供独立于CPU的外部篡改检测信号,可用于实现PCB专用保护机制。
USB通信
主机通过 USB 与安全加密狗通信。应对此流量进行加密,以防止对通信协议进行逆向工程。使用MAX32520对称和非对称椭圆发动机,可以在加密狗上轻松实现。主机软件更难保护。特定于PC的软件解决方案通常涉及系统监控和代码执行混淆技术。
MAX32520FTHR使用FTDI FT4222 USB转QSPI桥接器实现USB连接。在主机端,FTDI 提供跨平台库,以简化特定于 USB 的软件开发。此设计有两个可能的外部攻击点 - USB 接口和 QSPI 接口。如果通信流已加密,则两个接口都将受到保护。
应用特定功能
一旦固件、PC 软件和通信链路得到保护,PC 软件应用程序就可以实现各种身份验证、许可证和加密功能,例如:
特定于计算机的许可
用户特定的许可
过期的功能许可
战略或大规模数据加密
主机代码身份验证和加密
MAX32520FTHR实验平台
MAX32520FTHR可作为安全加密狗设计的起点。它预编程了测试键,可实现快速便捷的应用程序开发。MAX32520FTHR的器件固件和主机软件示例可在 www.analog.com 的电路板产品页面上找到。
结论
安全的嵌入式设计需要代码安全和篡改检测以及身份验证和加密机制。MAX32520在小型低功耗封装中提供了这些功能以及被广泛接受且易于使用的ARM Cortext-M4处理器。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !