JAJA733 January   2023 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1305 , MSPM0L1306 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1

 

  1.   概要
  2.   商標
  3. 1はじめに
    1. 1.1 サイバー・セキュリティの目標
    2. 1.2 プラットフォームのセキュリティ・イネーブラ
  4. 2デバイス・セキュリティ・モデル
    1. 2.1 ブート時の初期条件
    2. 2.2 ブート構成ルーチン (BCR)
    3. 2.3 ブートストラップ・ローダ (BSL)
    4. 2.4 ブート・フロー
    5. 2.5 ユーザー指定のセキュリティ・ポリシー
      1. 2.5.1 ブート構成ルーチン (BCR) のセキュリティ・ポリシー
        1. 2.5.1.1 シリアル・ワイヤ・デバッグ関連のポリシー
          1. 2.5.1.1.1 SWD セキュリティ・レベル 0
          2. 2.5.1.1.2 SWD セキュリティ・レベル 1
          3. 2.5.1.1.3 SWD セキュリティ・レベル 2
        2. 2.5.1.2 ブートストラップ・ローダ (BSL) のイネーブル / ディセーブル・ポリシー
        3. 2.5.1.3 フラッシュ・メモリの保護と整合性ポリシー
          1. 2.5.1.3.1 アプリケーション (MAIN) フラッシュ・メモリのロック
          2. 2.5.1.3.2 構成 (NONMAIN) フラッシュ・メモリのロック
          3. 2.5.1.3.3 アプリケーション (MAIN) フラッシュ・メモリの整合性の検証
      2. 2.5.2 ブートストラップ・ローダ (BSL) のセキュリティ・ポリシー
        1. 2.5.2.1 BSL アクセス・パスワード
        2. 2.5.2.2 BSL 読み出しポリシー
        3. 2.5.2.3 BSL セキュリティ・アラート・ポリシー
      3. 2.5.3 構成データのエラー耐性
        1. 2.5.3.1 CRC で保護された構成データ
        2. 2.5.3.2 クリティカル・フィールドの 16 ビット・パターン一致
  5. 3セキュア・ブート
    1. 3.1 セキュア・ブート認証フロー
    2. 3.2 非対称型と対称型のセキュア・ブート
  6. 4暗号化アクセラレーション機能
    1. 4.1 ハードウェア AES アクセラレーション
      1. 4.1.1 概要
      2. 4.1.2 AES の性能
    2. 4.2 ハードウェア真性乱数生成器 (TRNG)
  7. 5デバイス ID
  8. 6まとめ
  9. 7関連資料
  10. 8改訂履歴
  11.   A サブファミリ別のセキュリティ・イネーブラ

CRC で保護された構成データ

NONMAIN メモリの BCR 構成データと BSL 構成データ構造には、それぞれの構造の CRC32 ダイジェストに対応する CRC32 値が含まれています。デバイスのブート・プロセス中に、BCR はデータ構造の CRC ダイジェストを計算し、格納されている CRC 値と比較して、構造体内に含まれるデータが信頼できるものかを確認します。

BCR 構成の CRC エラーの処理

ブート中に BCR 構成データ (SWD ポリシー、BSL イネーブル / ディセーブル・ポリシー、フラッシュ・メモリ保護および整合性チェック・ポリシーを含む) の CRC チェックがエラーとなった場合、致命的なブート・エラーが発生し、以下の制限が課されます。

  • エラーの原因をブート診断として CFG-AP に記録
  • BSL はイネーブルに設定されていても起動しない
  • ユーザー・アプリケーションを開始しない
  • アプリケーションのデバッグ・アクセスはすべてディセーブル
  • 保留中の SWD 工場出荷時リセット・コマンドがイネーブルの場合、またはパスワードを使用してイネーブルになった場合は、それを実行
  • 保留中のテキサス・インスツルメンツ故障解析フロー・エントリがイネーブルの場合は適用
  • ブート・プロセスを最大 3 回再試行
    • 2 回目または 3 回目の試行で成功した場合、デバイスを通常どおり起動
    • 3 回目の試行に失敗した場合、次に BOR または POR が実行されるまで、それ以上のブート試行は許可しない

この CRC チェックの利点は、静的書き込み保護構成 (セキュア・ブートの中核) などの構成データに反転ビットがある場合に、それをブート・プロセス中に高い信頼性で検出できることです。エラー処理手順では、BSL およびユーザー・アプリケーションの実行が明示的に防止され、サポートされているオプション (SWD 工場出荷時リセットおよび TI FA) のみが 16 ビットのパターン一致フィールドによって保護されます。

BSL 構成の CRC エラーの処理

BSL 呼び出し中に BSL 構成データ (BSL パスワードおよび BSL ポリシーを含む) の CRC チェックがエラーとなった場合、致命的なブート・エラーが発生し、以下の制限が課されます。

  • このエラーの原因をブート診断として CFG-AP に記録
  • BSL はイネーブルに設定されていても起動しない
  • ユーザー・アプリケーションを開始しない
  • アプリケーションのデバッグ・アクセスはすべてディセーブル
  • ブート・プロセスを最大 3 回再試行
    • 2 回目または 3 回目の試行で成功した場合、デバイスを通常どおり起動
    • 3 回目の試行に失敗した場合、次に BOR または POR が実行されるまで、それ以上のブート試行は許可しない

この CRC チェックの利点は、BSL 構成データ内に反転ビットがある場合に、それを起動プロセス中に高い信頼性で検出できることです。このエラー処理手順により、BSL が無効なデータから開始するのを防止できます。無効なデータから開始すると、セキュリティが失われる可能性があります。

テキサス・インスツルメンツの工場出荷時トリム・データの CRC エラー処理

ユーザーが指定した構成データに加えて、ブート中にテキサス・インスツルメンツの工場出荷時トリムの CRC チェックがエラーとなった場合も、致命的なブート・エラーが発生し、以下の制限が発生します。

  • エラーの原因をブート診断として CFG-AP に記録
  • BSL はイネーブルに設定されていても起動しない
  • ユーザー・アプリケーションを開始しない
  • アプリケーションのデバッグ・アクセスはすべてディセーブル
  • 保留中のテキサス・インスツルメンツ故障解析フロー・エントリがイネーブルの場合は適用
  • ブート・プロセスを最大 3 回再試行
    • 2 回目または 3 回目の試行で成功した場合、デバイスを通常どおり起動
    • 3 回目の試行に失敗した場合、次に BOR または POR が実行されるまで、それ以上のブート試行は許可しない