こんにちは、
署名済みの暗号化ブートローダーがあり、HABは有効になっていますが、シールはされていません。NXPのセキュアプロビジョニングツールを使ってフラッシュすると、問題なく動作します。同様に、FCB + パディング + 署名および暗号化されたブートローダー + キーブロブ(キーブロブはターミナルで次のコマンドを実行して生成されます)を連結すると、次のようになります。
blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin"それも効果がある。しかし、デバッグセッション(キーブロブを生成するためだけに用いられる)でカスタムファームウェアを使用してこのプロセスを実行すると、生成されたブロブファイルが受け入れられず、ブートローダーの実行に失敗します。どちらのシナリオにおいても、DEKは変化しない。
両方とも.binファイルを生成しましたファイル間の違いは、ブロブオフセットアドレスのみである。
Secure Provisioning Toolが提供するflashloader.binと公開されているソースコード(MCUブート)との間に違いはありますか?
標準のフラッシュローダーは、このバージョンを報告します。
blhost -u 0x15A2,0x0073 -- get-property 1 Response status = 0
(0x0) Success. Response word 1 = 1258424320 (0x4b020800)
Current Version = K2.8.0bl_version.h に基づくと、ソースコードは一貫しているはずであり、Secure Provisioning Tool のバージョンは 25.09 です。
カスタムファームウェアはフラッシュローダーソースからのコードスニペット(特にbl_keyblob_dcp.cにあります)を使用しています。そして、すべての依存関係は同じソースから取得されます。この実装は内部でのみ使用されるため、ファームウェアからDEKを抽出することは問題ありません。
お時間をいただきありがとうございました。
こんにちは、 @JordanSt さん。
あなたはiMXRT1052を使って以下のようにテストを行ったと理解してよろしいでしょうか?
1. NXPのセキュアプロビジョニングツールからフラッシュローダーをロードし、以下のコマンドを使用してdek.binとblob.binを取得します。
blhost -t 5000 -u 0x15A2,0x0073 -j -- generate-key-blob "dek.bin" "blob.bin"
2. iMXRT1052でflashloaderのSDKデモのコードを使ってカスタムファームウェアを実行し、上記のコマンドでdek.binとblob.binを得ます。
3. 生成された dek.bin ファイルは同じですが、blob.bin ファイルは異なります。
私の理解が正しければ、ステップ2のSDKのフラッシュローダーは試しましたか?結果は同じだったのでしょうか?
すてきな一日を、
カン
-------------------------------------------------------------------------------
注記:
この投稿があなたの質問への回答になっている場合は、「正解としてマーク」ボタンをクリックしてください。ありがとうございます!
- 前回の投稿から7週間Threadをフォローしており、その後の返信は無視しています
もし後で関連する質問があれば、新しいThreadを開き、閉じたThreadを参照してください。
-------------------------------------------------------------------------------