i.MX7ULP のタンパー ピンを使用してタンパー イベント情報を処理するために、カーネルで SECVIO を有効にしました。
適切な改ざんピンの構成と検出のために、デバイス ツリー (DTS) または U-Boot で何かを変更する必要はありますか?
さらに、ユーザー空間でタンパー ハンドラーを使用する方法を示すアクセス可能な例やアプリケーションはありますか?
こんにちは、
i.MX7ULP での適切な改ざんピンの設定と検出:
1. デバイスツリー構成:
カーネルで SECVIO がすでに有効になっている場合は、改ざん機能のためにデバイス ツリー (DTS) を必ずしも変更する必要はありません。タンパー ピンは通常、デバイス ツリー内の標準 GPIO 構成ではなく、SNVS (セキュア不揮発性ストレージ) モジュールとそのドライバによって処理されます。
2. U-Boot 構成:
U-Boot でも改ざん検出を使用する予定の場合は、U-Boot defconfig に「CONFIG_IMX_TAMPER=y」を追加して再構築する必要があります。これにより、ブートローダーの改ざん検出機能が有効になります。
3. ユーザー空間の改ざんハンドラー:
ユーザー空間アプリケーションの場合、i.MX7ULP 専用の標準化されたサンプル アプリケーションはありません。ただし、改ざんのメカニズムはこれらのプラットフォーム間で基本的に同様であるため、i.MX6UL や i.MX7D などの同様のプラットフォームからの実装を適応させることができます。
実装のガイダンスについては、以下を参照してください。
- i.MX7リファレンスマニュアルのセクション3.1.4.2(改ざん検出)
- アプリケーションノート「i.MX7Dsabresd の改ざん防止アプリケーション」(AN12210.pdf)
カーネル内の SECVIO ドライバは改ざんイベント情報を処理し、改ざんが検出された場合に適切なセキュリティ対策をトリガーするように構成できます。これらのイベント情報は、SNVS_LP ステータス レジスタ (LPSR) を通じて監視し、SNVS_LP タンパー検出器構成レジスタ (LPTDCR) を通じて管理できます。
よろしくお願いします。