Armadilloフォーラム

セキュアブートセットアップで使用するcstのバージョンが3.3.1以外でエラーになる仕様について

tkhrosm

2024年8月29日 10時46分

お世話になっております。

Armadillo-IoT-G4でemmcの暗号化のため、セキュリティガイド第5章"セキュアブート"を参考にセキュアブートのセットアップをしております。
その中で署名ツールとして使用してるNXPのCSTのバージョンについて質問です。

【使用環境】
・imx-boot-2020.04-at24
・cst-3.4.1

セキュリティガイド5.3.3節"署名ツール (CST) を準備する"では「本書作成時点では v3.3.1 を利用しました」と記載がありますが、現在の該当ツールはv3.4.1が最新バージョンとなっているため、v3.4.1をダウンロードして進めています。
※旧バージョンのダウンロード方法はv3.1.0のみしか見つけることができませんでした

emmcの暗号化が目的のため5.7節"ストレージの暗号化のセットアップ"を実施しているのですが、5.7.3節"署名済みブートローダーの作成"で行っているコマンドで以下のようなエラーが得られました。

$ ./secureboot.sh imxboot_enc
imxboot encryption is only supported with cst 3.3.1, please downgrade

エラーが発生しているsecureboot.shの該当箇所を確認しました。

imxboot_enc() {
	# sanity check until bug with 3.3.2 is fixed
	if ! "$CST/linux64/bin/cst" --version | grep -q 3.3.1; then
		error "imxboot encryption is only supported with cst 3.3.1, please downgrade"
	fi
	省略
}

以上を踏まえて質問させてください。
・v3.3.2で見つかった不具合というのはv3.4.1で解消されているかわかりますでしょうか?
・解消されている場合、対応としてはsecureboot.shのバージョンチェック処理の削除で良いでしょうか
・解消されていない場合、お手数ではございますがNXPのCSTのv3.3.1をダウンロードする方法をご教授いただけますでしょうか

よろしくお願い致します。

コメント

tkhrosmさん

休日モードなので手っ取り早い返事だけさせていただきます

> ・v3.3.2で見つかった不具合というのはv3.4.1で解消されているかわかりますでしょうか?

先日 v3.4.1 のリリースノーとを確認してちょうど v3.4.1 で修正された可能性があります:

        1. Fixes issue with HABv4 Encrypted boot failure using CST 3.3.2 and
           CST 3.4.0: Following the prescribed procedure for encrypting and
           signing a bootloader image for i.MX8M family devices using CST 3.3.2
           or CST 3.4.0, the resulting image does not work. This problem is
           attributed to an incorrect MAC/Nonce calculation offset, resulting
           from a prior bug fix affecting ECDSA signature size on Windows hosts.
           To address this misalignment issue, this CST version proposes a tool
           (mac_dump) to dump the MAC data location and size from a HABv4 CSF
           binary data file. It iterates over the tags in the binary CSF,
           looking for the position of the HAB_TAG_MAC tag. By doing this we
           receive the right offset of the nonce/MAC and hence, we can construct
           a correct signed encrypted image.

v3.4.0 ではまだ動いてなかった事は確認してましたが、v3.4.1 ではまだ確認できてません。
secureboot.sh からそのチェックを外して試していただければ助かりますので、ご自由に。動かなかった場合は SD ブートで復帰可能ですし、鍵のディレクトリをコピーすれば別のバージョンもまだ切り替えれますので致命的な問題にならないはずです。

試したくない場合、または動かなかった場合はメールにて v3.3.1 を送りますので言ってください。

よろしくお願いします

マルティネさん

ご回答ありがとうございます。
v3.4.1リリースノート記載にある不具合解消がv3.3.2で見つかった不具合に対応している可能性があるとのことで承知しました。
それではsecureboot.shのチェック処理を外して動作を確認してみたいと思います。

> 試したくない場合、または動かなかった場合はメールにて v3.3.1 を送りますので言ってください。
ありがとうございます。もし動かなかった場合はご相談させてください。