Amazon FreeRTOSを設定する - renesas/amazon-freertos GitHub Wiki
はじめに
- Renesas MCUs Amazon FreeRTOS は様々な環境に対応しています
- 本項では、e2 studio/CC-RX/Renesas Starter Kit+ for RX65N の環境を例に説明します
- 図中や説明中にある環境特有の言葉はご利用の環境の言葉に適宜読み替えてください
ベースフォルダの定義
- ダウンロード後解凍またはgitでクローンした Amazon FreeRTOS のルートフォルダを ${base_folder} と表記します
- ${base_folder} には demos や tests フォルダが存在します
- ベースフォルダは、Cドライブ直下等浅いパスにしてください。パス全長が256文字を超えるとe2 studioはビルド時にエラーを出力します。
e2 studio 起動 / プロジェクトインポート
- e2 studio のアイコンをダブルクリックして起動
- ワークスペースを指定
- e2 studio起動確認
- プロジェクトインポート
-
参照ボタンで ${base_folder}/projects/renesas/rx65n-rsk/e2studio/aws_demos/ を指定
- ただしくインポートできると、「プロジェクト」にインポートしたプロジェクトが表示される
-
復元ボタンを押す
- プロジェクト -> すべてをビルド -> 0 errors を確認
- プロジェクトエクスプローラ -> demos -> include -> aws_credential.h
- 以下2種(WIFI利用の場合4種)マクロに設定を施します。 " " の中身を置き換える
- clientcredentialMQTT_BROKER_ENDPOINT -> AWS IoTのエンドポイントを確認する で確認した エンドポイント の名前
- clientcredentialIOT_THING_NAME -> デバイスをAWS IoTに登録する で登録した モノ の名前
- clientcredentialWIFI_SSID (WIFI利用の場合) -> 接続するアクセスポイントのSSID
- clientcredentialWIFI_PASSWORD (WIFI利用の場合) -> 接続するアクセスポイントのパスワード
モノの証明書、プライベートキーの取り込み
- デバイスをAWS IoTに登録する で生成したモノの証明書、プライベートキーをソースコードに取り込み
- ${base_folder}\tools\certificate_configuration\CertificateConfigurator.html を起動
- デバイスをAWS IoTに登録する で生成したモノの証明書、プライベートキーの以下2ファイルをCertificateConfigurator.htmlに指定
- xxxxxxxxxx-certificate.pem.crt
- xxxxxxxxxx-private.pem.key
- Generate and save aws_clientcredential_key.h ボタンを押す
- 生成された aws_clientcredential_key.h を ${base_folder}\demos\common\include\aws_clientcredential_key.h に上書き
- プロジェクト -> すべてをビルド -> 0 errors を確認
セキュリティに関する Amazon からの重要なメッセージ
- 「モノの証明書」と「プライベートキー(秘密鍵)」は、AWS接続のための「アカウント名」「パスワード」に相当するデータです
- これらは厳重に管理されるべきです
- Amazon FreeRTOS のソースコードにも以下のように記されています
/* The constants above are set to const char * pointers defined in aws_dev_mode_key_provisioning.c,
* and externed here for use in C files. NOTE! THIS IS DONE FOR CONVENIENCE
* DURING AN EVALUATION PHASE AND IS NOT GOOD PRACTICE FOR PRODUCTION SYSTEMS
* WHICH MUST STORE KEYS SECURELY. */
- このセキュリティリスクは モノの証明書に紐づく秘密鍵等の重要データをTrusted Secure IPで秘匿する方法 で対策可能です
- GR-ROSEに搭載されているRX65NはTrusted Secure IPというセキュリティIP内蔵品です
- 輸出規制該当品のため需要者特定が必要ですが、ルネサス技術お問い合わせ窓口に問い合わせることでTrusted Secure IPドライバを提供可能です
- また、Amazon FreeRTOS内蔵の mbed TLS の Trusted Secure IP対応カスタム版(開発中) も合わせて提供可能です
- RX65N@120MHz Trusted Secure IPでSSL/TLSのTLS_RSA_WITH_AES_128_CBC_SHAをアクセラレートし 40Mbps 程度の性能を確認(詳細評価中)しております