【めじゃーどぶーと】

メジャードブート とは?

💡 起動の全ステップを「証拠写真」として残す、改ざん検知の黒歴史帳
📌 このページのポイント
メジャードブート — 起動ステップをTPMに記録 UEFI/BIOS ハッシュ計算 ブートローダー ハッシュ計算 カーネル ハッシュ計算 OS / アプリ ハッシュ計算 TPM PCR PCR[n] = Hash(PCR[n-1] || 新しいハッシュ値) PCR[0]: UEFI値 → PCR[1]: +BL値 → PCR[2]: +Kernel値 → PCR[3]: +OS値 一度でも変わると全PCRの値が変わる(改ざん検知) アテステーション時にPCR値を検証サーバーへ送付 改ざんがあれば期待値と一致せず即検知できる
起動の各ステップがTPM PCRにハッシュ値として積み上げられるイメージ
ひよこ ひよこ

メジャードブートってセキュアブートと似た名前だけど、何が違うの?

ペンギン先生 ペンギン先生

セキュアブートは「署名のないコードを実行させない」ガードマンで、メジャードブートは「誰が何をしたか全部記録する」監視カメラのイメージだよ

ひよこ ひよこ

具体的にどんな記録をするの?

ペンギン先生 ペンギン先生

UEFIが起動したときのハッシュ、ブートローダーのハッシュ、カーネルのハッシュ…って順番にTPMのPCRというレジスタに積み上げていくんだよ

ひよこ ひよこ

PCRって何なの?

ペンギン先生 ペンギン先生

Platform Configuration Registerの略で、TPMの中にある特殊なメモリだよ。値を書き込むと「前の値 + 新しい値」をハッシュした結果に更新されるから、一度でも変わると全部の値が変わるんだ

ひよこ ひよこ

それって後から改ざんできないの?

ペンギン先生 ペンギン先生

TPMハードウェアで守られているから外から書き換えられないんだよ。だからPCRの値はアテステーションの「信頼できる証拠」として使えるんだ

ひよこ ひよこ

BitLockerでも使われてるって聞いたんだけど、どういうふうに使われるの?

ペンギン先生 ペンギン先生

BitLockerは「起動時のPCR値が変わったら暗号化キーを解放しない」という仕組みで保護しているんだよ。ブートローダーカーネルが改ざんされたら起動できなくなるんだ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「メジャードブート」って出てきたら「起動の各段階の状態をTPMに記録する仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「Measured Boot」 = 計測起動
💬 「Measure(計測する)」がポイントで、各ステップを「ものさし」で計って記録していくイメージだよ。「Secure Boot(セキュアブート)」とセットで語られることが多いんだよ
← 用語集にもどる