wolfBoot 対 Das U-Boot

現在、ブートローダーは膨大な選択肢があり、最小のフットプリントで最も安全かつ柔軟なブートローダーを探し出すことは大変困難で、難しい調査になっています。この調査に終止符を打つために、競合製品と比較したwolfBootの多くの利点を検討し、wolfBootがアプリケーションに最適である理由を明確にします。

サポート対象の署名検証アルゴリズム

セキュアブートの署名検証は、署名機関によって提供された署名と公開鍵を使用して、ブートイメージを検証および認証するプロセスです。Das U-Boot は、そのままの状態で、SHA-1またはSHA-256ダイジェストを使用したRSAイメージ署名検証をサポートしています。またU-Boot は、任意のアルゴリズムを組み込むように拡張できますが、それには外部暗号ライブラリを組み込むか記述するという追加の作業が必要になります。その結果、コードサイズが増大し、製品を動作させるまでにかかる時間が増加します。これに対しwolfBootは、当社のすべての製品に搭載されている小さな組み込み暗号ライブラリであるwolfCryptを使用して構築されており、それを利用して ED25519、ECC、RSAなどの幅広い署名検証オプションをサポートします。古いSHA-1はサポートしていませんが、代わりに最新の SHA-256、SHA-384、SHA3 ハッシュアルゴリズムをサポートしており、そのフリーソフトウェアは必要に応じて拡張することもできます。

暗号化されたブートパーティション

wolfBootとU-Bootは両方とも暗号化されたイメージをサポートします。wolfBootはAESとCHACHA暗号化アルゴリズムの両方をサポートしますが、U-BootはAESのみをサポートします。

美と膨張(Beauty and the Bloat

U-Bootには、コマンドラインインターフェイスや完全なTCP/IPネットワーキングスタックなど、セキュアブートローダーには不要な機能が多数あります。これらの機能によりコード量が増加し、潜在的なバグの数やイメージのサイズが増加し、システムを侵害する攻撃対象領域が拡大します。

wolfBootは、アプリケーションイメージを可能な限り高速かつ安全に起動できるように設計しています。wolfBootを必須のものに制限することで、コード サイズを抑えることができ、そもそものバグが減り、システムを侵害する攻撃ベクトルが減ります。コードサイズを抑えることで、アプリケーションイメージ内にアプリ自身の機能を配置できる余地が広がります。

ポータビリティ

U-Bootは、OSがロードされる前にシステムの周辺機器を起動する責任を負うため、U-Bootを新しいシステムに移植するのは複雑なプロセスです。wolfBootはハンズオフのアプローチを採用し、これらのタスクをアプリケーションイメージに任せ、システムやOSに依存しません。新しいターゲットでwolfBootを実行するには、クロックアップの設定とフラッシュの読み書きのための新しいハードウェア アブストラクション レイヤー(HAL)ファイルを追加するだけです。HALは適切なドキュメントに従って簡単に作成でき、通常は600行未満のコードで構成されます。

中断可能な更新プロセス

U-BootとwolfBootはどちらもイメージの更新をサポートしていますが、更新中に停電が発生した場合でも、更新を完了できる中断可能な更新プロセスを備えているのは wolfBootだけです。不幸にも時限停電が発生した場合、これが「作業台として使える道具になるか」と「単なる文鎮に成り下がるか」の違いを生み出します。

デルタアップデート

wolfBootには、割り込み安全であることに加えて、更新されたイメージをチャンクして最後のイメージと異なる部分のみに分割するデルタ更新の追加機能もあります。wolfBootは、この新しいイメージを古いイメージにパッチとして適用します。これにより、更新イメージが大幅に小さくなり、フラッシュメモリが不足している環境でのスペースが節約されます。

FIPS サポート

FIPS (Federal Information Processing Standards) は、米国政府と取引する企業が製品を販売するために認証取得することが求められる暗号化標準です。FIPS認証はお客さまのプラットフォーム上でテスト、取得する必要がありますが、wolfBootが使用しているwolfCryptはすでに取得の実績があるのでテスト、取得をスムーズに短期間に完了させることができます。一方、U-Bootはスタンドアロンの暗号化ライブラリを使用しますが、これはFIPS準拠のライブラリに手動で置き換え、認証取得をする必要があり、コストと時間がかかるプロセスです。

DO-178 認証

FIPSに加えて、wolfCryptとwolfBootはDO-178認定を受けています。DO-178は、FAA (連邦航空局)とEASA(欧州連合航空安全局)が、空域での飛行が承認された航空機内で実行されるソフトウェアコンポーネントに対して要求する厳格な航空規格です。wolfSSL自体は、多数のオペレーティング環境でDO-178 DAL A認定を受けており、当社のDO-178専門エンジニアが、オペレーティング環境の認定取得を支援するコンサルティングを提供します。U-Bootのスタンドアロン暗号化ライブラリは、最初から認定プロセスを通過するか、外部ライブラリを認定可能なライブラリと交換する必要があります。

原文:https://www.wolfssl.com/wolfboot-vs-das-u-boot/