本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 Nordic nrf52840-dk 创建代码签名证书
此参考集成托管在 Amazon-FreeRTOS 存储库中,该存储库已过时。建议您创建新项目时从此处开始。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的 FreeRTOS 项目,请参阅亚马逊 FreeRTOS Github 存储库迁移指南。
Nordic nrf52840-dk 支持带 ECDSA 代码签名证书的自签名 SHA256。
要创建代码签名证书,请在计算机上安装 OpenSSLopenssl
分配给命令提示符或终端环境中的 OpenSSL 可执行文件。
可使用 Amazon Command Line Interface 将代码签名证书、私有密钥和证书链导入 Amazon Certificate Manager 中。有关安装 Amazon CLI 的信息,请参阅安装 Amazon CLI。
-
在工作目录中,使用以下文本创建名为
cert_config.txt
的文件。将test_signer@amazon.com
替换为您的电子邮件地址:[ req ] prompt = no distinguished_name = my_dn [ my_dn ] commonName = test_signer@amazon.com [ my_exts ] keyUsage = digitalSignature extendedKeyUsage = codeSigning
-
创建 ECDSA 代码签名私有密钥:
openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-256 -pkeyopt ec_param_enc:named_curve -outform PEM -out ecdsasigner.key
-
创建 ECDSA 代码签名证书:
openssl req -new -x509 -config cert_config.txt -extensions my_exts -nodes -days 365 -key ecdsasigner.key -out ecdsasigner.crt
-
将代码签名证书、私有密钥和证书链导入 Amazon Certificate Manager 中:
aws acm import-certificate --certificate fileb://ecdsasigner.crt --private-key fileb://ecdsasigner.key
此命令显示了证书的 ARN。在创建 OTA 更新作业时需要此 ARN。
注意 编写此步骤时,假定您计划使用 Code Signing for Amazon IoT 来签署固件映像。虽然我们推荐使用 Code Signing for Amazon IoT,不过您也可以手动签署固件映像。