たとえば、Motorola は der Milestone/Droids のブートローダーに署名していたため、モッディング シーンがコスト ROM を適用するのが難しくなっていました。
私の質問は、これが抽象的なレベルでどのように機能するかです。私はそれが次のようになるかもしれないと思います:
- 製造元 (Motorola など) は、公開鍵をスマートフォンの EEPROM/不揮発性メモリ (NVM) に入れます。
- ブートローダーはメーカーの秘密鍵で署名されています
- デバイスの起動時に、ブートローダーは、eeprom/NVM からロードされた公開鍵を使用して、何らかの方法で独自の署名をチェックします。
- 署名が正しい場合にのみ、ブートローダーが続行されます。
a) では、これが正しいとすれば、ステップ 3 は実際にどのように機能するのでしょうか? 署名されたアプリケーションは、どのようにして自身の署名をチェックできますか?
b) 署名されたブートローダーの前に別のコードが実行されていると思いますが、ブートローダーが最初に実行されるプログラムではありませんか? (startup.Sは別として)
署名されたブートローダーの意味の定義しか見つけられず、これが実際にどのように実装されているかはわからないので、誰かが私を啓発してくれることを願っています。
よろしく