Windows Simulator で Microchip ATECC608A セキュアエレメントの使用の開始方法 - FreeRTOS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Windows Simulator で Microchip ATECC608A セキュアエレメントの使用の開始方法

重要

このリファレンス統合は、非推奨の Amazon-FreeRTOS リポジトリでホストされています。新しいプロジェクトを作成するときは、ここから始めることをお勧めします。現在非推奨の Amazon-FreeRTOS リポジトリをベースにした既存の FreeRTOS プロジェクトが既にある場合は、「Amazon FreeRTOS Github リポジトリ移行ガイド」を参照してください。

このチュートリアルでは、Windows Simulator で Microchip ATECC608A セキュアエレメントの使用を開始するための手順について説明します。

以下のハードウェアが必要です。

開始する前に、 AWS IoT と FreeRTOS ダウンロードを設定して、デバイスを AWS クラウドに接続する必要があります。手順については「最初のステップ」を参照してください。このチュートリアルでは、FreeRTOS ダウンロードディレクトリへのパスを freertos とします。

概要

このチュートリアルでは、以下の手順が含まれています。

  1. ボードをホストマシンに接続します。

  2. マイクロコントローラーボード用の組み込みアプリケーションを開発およびデバッグするためのソフトウェアをホストマシンにインストールします。

  3. FreeRTOS デモアプリケーションをバイナリイメージにクロスコンパイルします。

  4. アプリケーションバイナリイメージをボードにロードし、アプリケーションを実行します。

Microchip ATECC608A ハードウェアのセットアップ

Microchip ATECC608A デバイスを操作する前に、まず SAMD21 をプログラムする必要があります。

SAMD21 XPlained Pro ボードのセットアップ
  1. CryptoAuthSSH-XSTK (DM320109) - Latest Firmware リンクをたどって、手順書 (PDF)、および D21 にプログラムできるバイナリを含む .zip ファイルをダウンロードします。

  2. Atmel Studio 7 IDP をダウンロードしてインストールします。インストール時に必ず SMART ARM MCU ドライバアーキテクチャを選択するようにしてください。

  3. USB 2.0 Micro B ケーブルを使用して「Debug USB」コネクタをコンピュータに接続し、PDF の指示に従います。(「Debug USB」コネクタは、POWER LED とピンに最も近い USB ポートです)。

ハードウェアを接続する
  1. 「Debug USB」コネクタからマイクロ USB ケーブルを取り外します。

  2. mikroBUS XPlained Pro アダプターを EXT1 位置の SAMD21 ボードに差し込みます。

  3. ATECC608A セキュア 4 クリックボードを mikroBUSX XPlained Pro アダプターに差し込みます。クリックボードのノッチ付きコーナーがアダプタボードのノッチ付きアイコンと一致していることを確認します。

  4. マイクロ USB ケーブルをターゲット USB に差し込みます。

セットアップは以下のようになります。

「ターゲット USB」というラベルの USB ケーブルが、「EXT 1 に接続されました」というラベルの外部デバイスに接続された、デフォルトのジャンパー位置に一致するノッチを持つブレッドボード。

開発環境をセットアップする

にサインアップする AWS アカウント

がない場合は AWS アカウント、次の手順を実行して作成します。

にサインアップするには AWS アカウント
  1. https://portal.aws.amazon.com/billing/signup を開きます。

  2. オンラインの手順に従います。

    サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。

    にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。

AWS サインアッププロセスが完了すると、 から確認メールが送信されます。https://aws.amazon.com/[マイアカウント] をクリックして、いつでもアカウントの現在のアクティビティを表示し、アカウントを管理することができます。

管理アクセスを持つユーザーを作成する

にサインアップしたら AWS アカウント、日常的なタスクにルートユーザーを使用しないように、 を保護し AWS IAM Identity Center、 AWS アカウントのルートユーザーを有効にして、管理ユーザーを作成します。

を保護する AWS アカウントのルートユーザー
  1. ルートユーザーを選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者AWS Management Consoleとして にサインインします。次のページでパスワードを入力します。

    ルートユーザーを使用してサインインする方法については、AWS サインイン ユーザーガイドルートユーザーとしてサインインするを参照してください。

  2. ルートユーザーの多要素認証 (MFA) を有効にします。

    手順については、「IAM ユーザーガイド」の AWS アカウント 「ルートユーザーの仮想 MFA デバイスを有効にする (コンソール)」を参照してください。

管理アクセスを持つユーザーを作成する
  1. IAM アイデンティティセンターを有効にします。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「AWS IAM Identity Centerの有効化」を参照してください。

  2. IAM アイデンティティセンターで、ユーザーに管理アクセスを付与します。

    を ID ソース IAM アイデンティティセンターディレクトリ として使用する方法のチュートリアルについては、「 AWS IAM Identity Center ユーザーガイド」の「デフォルトを使用してユーザーアクセスを設定する IAM アイデンティティセンターディレクトリ」を参照してください。

管理アクセス権を持つユーザーとしてサインインする
  • IAM アイデンティティセンターのユーザーとしてサインインするには、IAM アイデンティティセンターのユーザーの作成時に E メールアドレスに送信されたサインイン URL を使用します。

    IAM Identity Center ユーザーを使用してサインインする方法については、「 AWS サインイン ユーザーガイド」の AWS 「 アクセスポータルにサインインする」を参照してください。

追加のユーザーにアクセス権を割り当てる
  1. IAM アイデンティティセンターで、最小特権のアクセス許可を適用するというベストプラクティスに従ったアクセス許可セットを作成します。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「権限設定を作成するを参照してください

  2. グループにユーザーを割り当て、そのグループにシングルサインオンアクセス権を割り当てます。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「グループの結合」を参照してください。

アクセス権限を付与するにはユーザー、グループ、またはロールにアクセス許可を追加します。

設定
  1. FreeRTOS GitHub リポジトリから FreeRTOS レポをダウンロードします。

    GitHub から FreeRTOS をダウンロードするには

    1. FreeRTOS GitHub リポジトリを参照します。

    2. [Clone or download] (クローンまたはダウンロード) を選択します。

    3. コンピュータのコマンドラインから、リポジトリをホストマシンのディレクトリに複製します。

      git clone https://github.com/aws/amazon-freertos.git -\-recurse-submodules
      重要
      • このトピックでは、FreeRTOS ダウンロードディレクトリへのパスを freertos とします。

      • freertos パスにスペース文字が含まれていると、構築が失敗する可能性があります。リポジトリをクローンまたはコピーするときは、作成するパスにスペース文字が含まれていないことを確認してください。

      • Microsoft Windows でのファイルパスの最大長は 260 文字です。FreeRTOS のダウンロードディレクトリパスが長くなると、構築が失敗する可能性があります。

      • ソースコードにはシンボリックリンクが含まれている可能性があるため、Windows を使用してアーカイブを抽出する場合は、次の操作を行う必要があります。

        • 開発者モードを有効にするか、または、

        • 管理者としてコンソールを使用します。

        この操作を行えば、Windows でアーカイブを抽出する際にシンボリックリンクを適切に作成できます。この操作を行わないと、シンボリックリンクは、そのパスがテキストとして含まれる、または空白の通常ファイルとして書き込まれます。詳細については、ブログの投稿「Symlinks in Windows 10!」を参照してください。

        Windows で Git を使用する場合は、開発者モードを有効にするか、以下を実行する必要があります。

        • 次のコマンドを使用して、core.symlinks を true に設定します。

          git config -\-global core.symlinks true
        • システムへの書き込みを行う git コマンド (git pullgit clonegit submodule update -\-init -\-recursive など) を使用する場合は、管理者としてコンソールを使用します。

    4. freertos ディレクトリから、使用するブランチをチェックアウトします。

  2. 開発環境をセットアップします。

    1. WinPCap の最新バージョンをインストールします。

    2. Microsoft Visual Studio をインストールします。

      Visual Studio バージョン 2017 および 2019 は動作することが確認されています。Visual Studio のすべてのエディションがサポートされます (Community、Professional、または Enterprise)。

      IDE に加えて、[Desktop development with C++] (C++ によるデスクトップ開発) コンポーネントをインストールします。次に、[オプション] で、最新の Windows 10 SDK をインストールします。

    3. アクティブな有線イーサネット接続が存在することを確認してください。

FreeRTOS デモプロジェクトを構築して実行する

重要

Microchip ATECC608A デバイスには、プロジェクトが初めて実行されるとき (C_InitToken 呼び出し時) にデバイスにロックされる 1 回だけの初期化があります。ただし、FreeRTOS デモプロジェクトおよびテストプロジェクトには別の設定があります。デモプロジェクト構成中にデバイスがロックされた場合、テストプロジェクトのすべてのテストを成功することはできません。

Visual Studio IDE で FreeRTOS デモプロジェクトを構築して実行するには
  1. Visual Studio にプロジェクトをロードします。

    [File] (ファイル) メニューで、[Open] (開く) を選択します。[File/Solution] (ファイル/ソリューション) を選択し、freertos\projects\microchip\ecc608a_plus_winsim\visual_studio\aws_demos\aws_demos.sln に移動してから [Open] (開く) を選択します。

  2. デモプロジェクトをリターゲットします。

    指定されたデモプロジェクトは、Windows SDK によって異なりますが、Windows SDK バージョンは指定されていません。デフォルトでは、IDE でマシンに存在しない SDK バージョンを使用してデモのビルドが試行されることがあります。Windows SDK バージョンを設定するには、[aws_demos] を右クリックし、[Retarget Projects] (プロジェクトをリターゲット) を選択します。これにより、[Review Solution Actions] (ソリューションのアクションを確認) ウィンドウが開きます。マシンに存在する Windows SDK バージョン (ドロップダウンの初期値でかまいません) を選択して、[OK] を選択します。

  3. プロジェクトを構築して実行します。

    [Build] (構築) メニューから [Build Solution] (ソリューションの構築) を選択し、ソリューションがエラーなしで構築されることを確認します。[Debug] (デバッグ)、[Start Debugging] (デバッグを開始) を選択し、プロジェクトを実行します。最初の実行では、デバイスインターフェイスを設定して再コンパイルする必要があります。詳細については、「ネットワークインターフェイスを設定する」を参照してください。

  4. Microchip ATECC608A をプロビジョニングします。

    Microchip から、ATECC608A 部品のセットアップに役立ついくつかのスクリプトツールが提供されています。freertos\vendors\microchip\secure_elements\app\example_trust_chain_tool に移動し、README.md ファイルを開きます。

    README.md ファイルの手順に従って、デバイスをプロビジョニングします。このステップには、以下が含まれます。

    1. 認証機関を作成して登録します AWS。

    2. Microchip ATECC608A でキーを生成し、公開鍵とデバイスのシリアル番号をエクスポートする。

    3. デバイスの証明書を生成し、その証明書を に登録します AWS。

    4. CA 認定とデバイス証明書をデバイスにロードする。

  5. FreeRTOS サンプルを構築して実行します。

    デモプロジェクトを再実行します。これで、接続に成功します。

トラブルシューティング

一般的なトラブルシューティング情報については、「トラブルシューティングの開始方法」を参照してください。