Microchip ATECC608A 安全元件以及 Windows 模拟器入门
重要
该参考集成托管在已弃用的 Amazon-FreeRTOS 存储库中。当您创建新项目时,我们建议从此处开始。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的 FreeRTOS 项目,请参阅 Amazon-FreeRTOS Github 存储库迁移指南。
本教程提供了有关 Microchip ATECC608A 安全元件和 Windows 模拟器入门的说明。
您需要以下硬件:
在开始之前,您必须配置 AWS IoT 和 FreeRTOS 下载以将您的设备连接到 AWS 云。有关说明,请参阅初始步骤:在本教程中,FreeRTOS 下载目录的路径称为 freertos。
概览
本教程包含以下步骤:
-
将主板连接到主机。
-
在主机上安装软件来开发和调试微控制器主板的嵌入式应用程序。
-
将 FreeRTOS 演示应用程序交叉编译为二进制映像。
-
将应用程序二进制映像加载到您的主板中,然后运行该应用程序。
设置 Microchip ATECC608A 硬件
您必须先对 SAMD21 进行编程,然后才能与 Microchip ATECC608A 设备进行交互。
设置 SAMD21 XPlained Pro 主板
-
访问 CryptoAuthSSH-XSTK (DM320109) – 最新固件
链接下载一个 .zip 文件,其中包含说明 (PDF) 和一个可编程到 D21 上的二进制文件。 -
下载并安装 Atmel Studio 7
IDP。请确保在安装过程中选择 SMART ARM MCU 驱动程序架构。 -
使用 USB 2.0 Micro B 电缆将“调试 USB”连接器连接到您的计算机,并按照 PDF 中的说明操作。(“调试 USB”连接器是最接近电源引线和引脚的 USB 端口。)
连接硬件
-
从调试 USB 中拔下微型 USB 电缆。
-
在 EXT1 位置,将 mikroBUS XPlained Pro 适配器插入 SAMD21 主板。
-
将 ATECC608A Secure 4 Click 主板插入 mikroBUSX XPlained Pro 适配器。确保 Click 主板的缺口角与适配器板上的缺口图标匹配。
-
将微型 USB 电缆插入到目标 USB 中。
您的设置应如下所示。
设置开发环境
注册 AWS 账户
如果您还没有 AWS 账户,请完成以下步骤来创建一个。
注册 AWS 账户
打开 https://portal.aws.amazon.com/billing/signup
。 按照屏幕上的说明操作。
在注册时,将接到电话或收到短信,要求使用电话键盘输入一个验证码。
当您注册 AWS 账户 时,系统将会创建一个 AWS 账户根用户。根用户有权访问该账户中的所有 AWS 服务和资源。作为最佳安全实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务。
注册过程完成后,AWS 会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/
创建具有管理访问权限的用户
注册 AWS 账户 后,请保护好您的 AWS 账户根用户,启用 AWS IAM Identity Center,并创建一个管理用户,以避免使用根用户执行日常任务。
保护您的 AWS 账户根用户
-
选择根用户并输入您的 AWS 账户 电子邮件地址,以账户拥有者身份登录 AWS 管理控制台
。在下一页上,输入您的密码。 要获取使用根用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的 Signing in as the root user。
-
为您的根用户启用多重身份验证(MFA)。
有关说明,请参阅《IAM 用户指南》中的为 AWS 账户 根用户启用虚拟 MFA 设备(控制台)。
创建具有管理访问权限的用户
-
启用 IAM Identity Center。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的 Enabling AWS IAM Identity Center。
-
在 IAM Identity Center 中,为用户授予管理访问权限。
有关如何使用 IAM Identity Center 目录 作为身份源的教程,请参阅《AWS IAM Identity Center 用户指南》中的 Configure user access with the default IAM Identity Center 目录。
以具有管理访问权限的用户身份登录
-
要使用您的 IAM Identity Center 用户身份登录,请使用您在创建 IAM Identity Center 用户时发送到您的电子邮件地址的登录网址。
要获取使用 IAM Identity Center 用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的 Signing in to the AWS access portal。
将访问权限分配给其他用户
-
在 IAM Identity Center 中,创建一个权限集,该权限集遵循应用最低权限的最佳做法。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的 Create a permission set。
-
将用户分配到一个组,然后为该组分配单点登录访问权限。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的 Add groups。
要提供访问权限,请为您的用户、组或角色添加权限:
-
AWS IAM Identity Center 中的用户和群组:
创建权限集合。按照《AWS IAM Identity Center 用户指南》中创建权限集的说明进行操作。
-
通过身份提供商在 IAM 中托管的用户:
创建适用于身份联合验证的角色。按照《IAM 用户指南》中针对第三方身份提供商创建角色(联合身份验证)的说明进行操作。
-
IAM 用户:
-
创建您的用户可以担任的角色。按照《IAM 用户指南》中为 IAM 用户创建角色的说明进行操作。
-
(不推荐使用)将策略直接附加到用户或将用户添加到用户组。按照《IAM 用户指南》中向用户添加权限(控制台)中的说明进行操作。
-
设置
-
从 FreeRTOS GitHub 存储库
中下载 FreeRTOS 存储库。 要从 GitHub 下载 FreeRTOS,请执行以下操作:
-
浏览到 FreeRTOS GitHub 存储库
。 -
选择 Clone or download (克隆或下载)。
-
从计算机的命令行中,将存储库克隆到主机上的一个目录中。
git clone https://github.com/aws/amazon-freertos.git -\-recurse-submodules重要
-
在本主题中,FreeRTOS 下载目录的路径称为
。freertos -
路径中的空格字符可能会导致构建失败。克隆或复制存储库时,请确保您创建的路径不包含空格字符。freertos -
Microsoft Windows 上的文件路径最大长度为 260 个字符。FreeRTOS 下载目录路径过长可能会导致构建操作失败。
-
由于源代码可能包含符号链接,因此,如果您使用 Windows 提取存档,则可能必须:
-
启用开发者模式
,或者, -
使用已提升为管理员的控制台。
这样,Windows 就可以在提取存档文件时正确创建符号链接。否则,符号链接将作为普通文件写入,该文件会将符号链接的路径作为文本,或者是空文件。有关更多信息,请参阅博客文章 Windows 10 中的符号链接
。 如果您在 Windows 下使用 Git,则必须启用开发者模式,或者必须:
-
使用以下命令将
core.symlinks设置为 true:git config -\-global core.symlinks true -
每当您使用写入系统的 git 命令(例如,git pull、git clone 和 git submodule update -\-init -\-recursive)时,请使用具有管理员权限的控制台。
-
-
-
从
目录中,检查要使用的分支。freertos
-
-
设置开发环境。
-
安装最新版的 WinPCap
。 -
安装 Microsoft Visual Studio。
Visual Studio 2017 和 2019 版已知可用。支持 Visual Studio 的所有版本(社区版、专业版或企业版)。
除 IDE 之外,请安装 C++ 桌面开发组件。然后,在 Optional (可选) 下安装最新的 Windows 10 开发工具包。
-
确保您有活动的有线以太网连接。
-
构建并运行 FreeRTOS 演示项目
重要
Microchip ATECC608A 设备具有一次性初始化功能,该功能在首次运行项目时(在调用 C_InitToken 期间)被锁定到设备上。但是,FreeRTOS 演示项目和测试项目的配置不同。如果设备在演示项目配置期间被锁定,则测试项目中的所有测试都不可能成功。
使用 Visual Studio IDE 构建并运行 FreeRTOS 演示项目
-
在 Visual Studio 中加载项目。
从 File (文件) 菜单上,选择 Open (打开)。选择 File/Solution (文件/解决方案),导航到
文件,然后选择 Open (打开)。freertos\projects\microchip\ecc608a_plus_winsim\visual_studio\aws_demos\aws_demos.sln -
重新定位演示项目。
此演示项目取决于 Windows 开发工具包,但未指定 Windows 开发工具包版本。默认情况下,IDE 可能会尝试使用计算机上不存在的开发工具包版本构建演示。要设置 Windows 开发工具包版本,请右键单击 aws_demos,然后选择 Retarget Projects (重新定位项目)。这将打开 Review Solution Actions (审核解决方案操作) 窗口。选择计算机上现有的一个 Windows 开发工具包版本(使用下拉列表中的初始值),然后选择 OK (确定)。
-
构建并运行项目。
从构建菜单中选择构建解决方案,确保解决方案已构建且没有错误。选择 Debug (调试)、Start Debugging (开始调试) 以运行项目。在第一次运行时,您需要配置您的设备接口并重新编译。有关更多信息,请参阅 配置网络接口。
-
预置 Microchip ATECC608A。
Microchip 提供了多种脚本工具来帮助设置 ATECC608A 部件。导航到
,然后打开 README.md 文件。freertos\vendors\microchip\secure_elements\app\example_trust_chain_tool请按照
README.md文件中的说明预置您的设备。相应步骤包括:-
创建证书颁发机构并将其注册到 AWS。
-
在 Microchip ATECC608A 上生成您的密钥,并导出公有密钥和设备序列号。
-
为设备生成证书并将该证书注册到 AWS。
-
将 CA 证书和设备证书加载到设备上。
-
-
构建并运行 FreeRTOS 示例。
再次重新运行演示项目。这次应该能成功连接!
故障排除
有关一般故障排除信息,请参阅问题排查入门。