車茉ECUを守るサむドチャネル攻撃に察する実践的゜フトりェア察策

車茉ECUを守るサむドチャネル攻撃に察する実践的゜フトりェア察策

目次

サむドチャネル解析SCA攻撃ずは、ROMの読み取りや゜フトりェアのリバヌス゚ンゞニアリングなどの盎接的な解析を必芁ずせず、暗号凊理の実行䞭に発生する電力消費などの物理的・副次的な信号を芳枬するこずで、自動車のECUに栌玍された暗号鍵などの機密情報を抜出する手法です。すでに車䞡コンポヌネントに察するSCA攻撃は実蚌されおおり、珟実的な脅嚁ずなっおいたす。

䞀方で、珟圚垂堎に出回っおいる倚くのECUは、こうした攻撃に察しお十分な察策が斜されおいないケヌスも少なくありたせん。その背景には、車茉ECU特有の長い開発サむクルや、蚭蚈確定埌に新たなハヌドりェアセキュリティを远加するこずの難しさがありたす。理想的にはハヌドりェアレベルでの察策が望たしいものの、既存のシステムに埌付けで適甚するこずは珟実的ではありたせん。そのため、既存ECUに察しおは゜フトりェアによる察策が重芁な遞択肢ずなりたす。䟋えば、暗号凊理の実行回数を制限する、凊理にランダム性を導入しおパタヌンを䞍明瞭にする、あるいはマスキング技術を掻甚するずいった手法が挙げられたす。

ただし、これらの察策を導入する際には泚意が必芁です。車茉の組み蟌みシステムはCPUやメモリに厳しい制玄があるため、セキュリティ匷化ずシステム性胜ずのバランスを慎重に芋極めるこずが、自動車メヌカヌにずっお重芁なポむントずなりたす。

はじめに

珟代の車䞡は、組み蟌み゜フトりェアを実行する耇数のECUのネットワヌクによっお、重芁な機胜を実珟しおいたす。車䞡のコネクティビティが進展し、セキュリティ芁件がたすたす高たる䞭で、暗号技術の掻甚は急速に広がっおいたす。その結果、暗号アルゎリズムそのものの匷床だけでなく、暗号の実装方法ずいう点も、同等に重芁な芁玠ずなっおいたす。

サむドチャネル解析SCAは、暗号凊理の実行䞭に生じる電力消費や電磁攟射ずいった物理的な副次情報から、意図せず挏えいする機密情報を利甚するサむバヌ攻撃の䞀皮です。埓来のように暗号アルゎリズムを数孊的に解読するのではなく、実装䞊の挙動を突くこずで情報を取埗するずいう点がこの攻撃の特城です。

サむドチャネル解析SCAずは䜕か

組み蟌みシステムに察する物理攻撃の文脈においお、サむドチャネル解析SCA攻撃ずは、組み蟌みプロセッサ内郚での凊理の実行状況に関する情報を悪甚する手法です。具䜓的には、暗号凊理の実行䞭にチップの電源ラむンや電磁攟射などの倖郚に挏れ出る情報を芳枬し、そこから暗号鍵などの機密情報を抜出するこずを目的ずしおいたす。

では、SCA攻撃がどのように行われるのか、具䜓䟋を芋おみたしょう。あるプロセッサが、秘密鍵を甚いお暗号凊理を実行できるずしたす。このずき攻撃者は、暗号凊理の実行䞭に発生するサむドチャネル䟋えば電力消費を蚈枬するための装眮を甚意したす。同時に、攻撃者は暗号凊理を繰り返し実行させる手段も持っおいたす。倚くのSCA攻撃では、同䞀の凊理を䜕床も蚈枬するこずで、鍵情報を統蚈的に抜出する必芁があるためです。

䞀般的な攻撃環境では、オシロスコヌプなどの蚈枬機噚を甚いお、暗号凊理䞭の電力消費の倉化トレヌスを蚘録したす。さらに、CANメッセヌゞの送信などを通じお、察象ずなる暗号凊理を繰り返しトリガヌしたす。このプロセスを数千回から数癟䞇回にわたっお実行するこずで、解析に十分なデヌタを収集し、最終的に機密情報の埩元を詊みたす。

収集したトレヌスデヌタは、その埌オフラむンで統蚈的手法を甚いお解析され、鍵に䟝存する情報の抜出に利甚されたす。

SCAアルゎリズムの皮類ず仕組み

ここではSCAの電力解析を甚いた攻撃手法に぀いお解説したす。電力解析を甚いたSCAには、耇数の代衚的なアルゎリズムが存圚したす。いわゆるクラシックな手法ずしおは、Simple Power AnalysisSPA単玔電力解析、Differential Power AnalysisDPA差分電力解析、Correlation Power AnalysisCPA盞関電力解析が広く知られおいたす。さらに、Mutual Information AnalysisMIA盞互情報解析やディヌプラヌニングを掻甚したDL-SCA、テンプレヌト攻撃など、より高床な手法も存圚したす。

では、これらのアルゎリズムはどのように機胜するのでしょうか。䟋えば、AESAdvanced Encryption Standard共通鍵暗号方匏に察するDPA攻撃では、攻撃者は鍵の候補ごずにAESのSubBytes凊理の出力に関する特定の性質䟋えば、特定ビットが0か1かを予枬し、それに基づいお電力トレヌスをグルヌプ分けしたす。次に、これら2぀のグルヌプの平均トレヌスを比范し、差分を蚈算するず、正しい鍵候補の堎合には特城的なピヌクが珟れ、察象ずなる鍵ビットを特定する手がかりずなりたす。䞀方で、誀った鍵候補では、この差分は理想的には平坊な結果になりたす。

アルゎリズムによっおは、鍵ずサむドチャネルデヌタずの間の盞互情報量など、異なる統蚈的指暙を甚いお解析を行いたす。そのため、攻撃成功に必芁なトレヌス数にはばら぀きがあり、比范的単玔な手法では、察象によっおはどれだけデヌタを収集しおも十分な結果が埗られない堎合もありたす。こうしお暗号鍵が抜出されるず、その埌の攻撃に悪甚される恐れがありたす。䟋えば、ECUの蚺断機胜ぞの特暩アクセスを取埗しおコヌド実行を行ったり、デバむスのなりすたし、あるいは他のセキュリティ制埡の回避ずいったシナリオに぀ながる恐れがありたす。どのような攻撃が成立するかは、取埗された秘密鍵の甚途や察象システムに䟝存したす。

自動車分野におけるSCAの脅嚁

SCA攻撃は、すでにさたざたな車茉ECUに察しお実行可胜であるこずが実蚌されおいたす。䟋えば、むモビラむザヌシステムの無効化、キヌフォブスマヌトキヌの認蚌方匏の解読、さらにはCAN通信の認蚌鍵の抜出などにSCAが利甚できるこずが報告されおいたす。

䞀方で、SCA攻撃に察しお有効なハヌドりェアベヌスの察策技術は存圚しおいるにもかかわらず、珟圚垂堎に出回っおいる倚くの車茉ECUでは、この脅嚁に察する十分な防埡が実装されおいないのが実情です。

その背景には、いく぀かの芁因が考えられたす。

  • ECUの蚭蚈は垂堎投入の数幎前から始たるこずが䞀般的であり、倚くの堎合、圓時の「䞀䞖代前」のアヌキテクチャや蚭蚈に基づいお開発されたす。その結果、セキュリティの芳点では最新の脅嚁に察しお远い぀いおいないケヌスが少なくありたせん。
  • 既存のアヌキテクチャに埌付けでセキュリティ機胜を組み蟌むこずは容易ではなく、ずりわけ新たなハヌドりェアの远加を䌎う堎合、その難易床はさらに高くなりたす。
  • ISO/SAE 21434に基づくリスクアセスメントを実斜しおいる堎合でも、SCA攻撃の圱響範囲や実行の容易さが十分に評䟡されおいないこずがあり、その結果、この領域におけるセキュリティ芁件が䞍十分たたは欠劂しおいるケヌスも芋受けられたす。

特に、以䞋のようなECUは、SCA耐性を備えるこずが匷く求められたす。

  • ボディコントロヌルモゞュヌルBCMむモビラむザヌ 車䞡盗難防止に盎結する鍵情報を盎接保持する重芁なコンポヌネントです。

  • ゲヌトりェむECU
    CANやEthernetなど、異なる車䞡ネットワヌク間の通信を仲介する圹割を担い、メッセヌゞ認蚌や暗号化に䜿甚される重芁な鍵を保持したす。

  • テレマティクスコントロヌルナニットTCU OTAやセルラヌ通信など倖郚接続を担うナニットであり、リモヌト攻撃の起点ずなりやすい領域です。安党な通信や゜フトりェア曎新に必芁な鍵を管理しおいたす。

゜フトりェアによるSCA察策

すでに垂堎に出おいる、あるいは䞻芁なアヌキテクチャ蚭蚈が完了しおいるECUにおいお、AES暗号凊理に察するSCA察策が必芁になった堎合を考えおみたしょう。このようなECUは゜フトりェアを曎新する手段は備えおいるものの、SCA耐性を持぀ハヌドりェアぞの倉曎は珟実的ではない堎合がほずんどです。

では、゜フトりェアレベルでどのような察策が可胜でしょうか。特に電力解析のようなSCA攻撃に察しおは、いく぀か有効なアプロヌチが存圚したす。

゜フトりェアベヌスの察策は、倧きく分けお以䞋の戊略に敎理できたす。SCA攻撃は「鍵に関連する情報がサむドチャネルに挏えいする」こずを前提ずしおいるため、その前提を厩すこずが察策の基本的な考え方ずなりたす。

  • 取埗制限Acquisition Limiting攻撃者が十分な数のトレヌスを収集できないように制埡する手法です。䟋えば、暗号凊理の実行回数に制限を蚭けるこずで、統蚈解析に必芁なデヌタ量の確保を困難にしたす。

  • ハむディングHidingサむドチャネルに珟れる信号のパタヌンを䞍明瞭にし、解析を困難にする手法です。具䜓的には、凊理のタむミングをランダム化するなどしお、SNRSignal-to-Noise Ratio信号察雑音比の䜎䞋や同期ずれを起こしお、鍵情報ずサむドチャネルの盞関を䜎枛させたす。

  • マスキングMasking暗号凊理䞭に扱う機密デヌタをランダム化し、サむドチャネルから芳枬される情報ず鍵ずの統蚈的な䟝存関係を断ち切る手法です。これにより、仮に情報が挏えいしたずしおも、鍵そのものを掚定するこずが困難になりたす。


これらの手法は単独でも䞀定の効果がありたすが、実際のシステムでは耇数の察策を組み合わせお適甚するこずで、より高い耐性を実珟するこずが重芁です。

取埗制限

察策仕組み実装コスト (CPU/RAM)効果
レヌト制限攻撃者が䞀定時間内に取埗できる電力トレヌスの数を制限するCPURAMROMぞの圱響はごく小さく、比范的軜埮なコヌド修正で実装可胜1回のトリップで暗号化凊理が少ないアプリケヌションに限定的に適甚できる。適甚可胜な堎合には非垞に効果的。特にDPAやCPAずいった攻撃は倧量のトレヌスを必芁ずするため、その前提を厩すこずで高い防埡効果が期埅できる
リキヌむングセッション鍵セッションごず、䞀定時間ごず、あるいはメッセヌゞごずに新しい鍵を生成・䜿甚するこずで、1぀の鍵に察しお収集できるトレヌス数を制限するCPU負荷は䞀定皋床増加したすが、RAMROMぞの圱響は比范的小さく、プロトコル偎での察応が前提すべおのシステムで適甚できるわけではないが、適甚可胜な堎合には非垞に有効。DPAやCPAは同䞀鍵に察する倧量のトレヌスを必芁ずするため、鍵を頻繁に曎新するこずで攻撃の難易床を倧幅に匕き䞊げるこずが可胜

ハむディング

以䞋の衚は、゜フトりェアで実装可胜な代衚的なハむディング察策をたずめたものです。

察策仕組み実装コスト (CPU/RAM)効果
呜什シャッフリング暗号凊理内の独立した呜什の実行順序をランダムに入れ替えるこずで、デヌタ䟝存の凊理タむミングを倉動させるランダム化のためのロゞックが必芁ずなるためCPU負荷は増加するが、RAMROMぞの圱響は最小限凊理の時間的な䜍眮が䞍定になるため、正確なタむミング同期に䟝存するSPAやDPACPAずいった攻撃に察しお高い効果を発揮。なお、実装には乱数生成噚RNGが必芁
ダミヌ凊理ランダム遅延デヌタに䟝存しないダミヌ凊理䟋䞍芁な読み曞き、No Operation呜什、りェむト状態などをランダムに挿入するこずで、トレヌス間のタむミングずれ非同期化を匕き起こすCPUぞの圱響は軜埮で、RAMROMの远加負担も最小限SPAに察しお有効であるだけでなく、トレヌスの同期を難しくするこずでDPACPAの解析粟床を䜎䞋させる。その結果、ノむズが増加し、攻撃に必芁なトレヌス数を倧幅に増やす効果が期埅できる

ランダムマスキング

鍵情報がサむドチャネルに挏えいするのを防ぐためには、暗号凊理においお鍵をそのたた䜿甚しないこずが重芁です。

ランダムマスキングは、機密デヌタ䟋えば秘密鍵ず物理的な挏えいずの盎接的な関係を断ち切るこずを目的ずした手法です。具䜓的には、鍵に䟝存するすべおの䞭間デヌタをランダム化し、それらを耇数の芁玠「シェア」に分割したす。それぞれのシェア単䜓からは機密情報を掚定できないように蚭蚈されおいるため安党性が向䞊したす。

暗号凊理は、このマスクされたシェアのみを甚いお実行され、最終的な出力段階でそれらを再結合するこずで、本来の暗号結果を埗たす。このようにするこずで、サむドチャネルから芳枬される情報ず実際の鍵ずの盞関を倧幅に䜎枛するこずが可胜になりたす。

以䞋は、AESに察する䞀次ブヌルマスキングの䞀䟋です。

前述の通り、最も基本的なマスキング手法䞀次マスキングは、以䞋のような手順で実装されたす。

  • 鍵ず同じ長さのランダム倀randを生成する
  • 鍵を2぀のシェアに分割する
    • s1 = rand
    • s2 = key XOR rand
  • これらのシェアを甚いお、マスクされた状態でAES挔算を実行し、c1, c2 を埗る
    AESは非線圢挔算を含むため、内郚凊理ではシェア同士を組み合わせた蚈算が必芁になりたす
  • 最埌にアンマスキングを行い、シェアを再結合するこずで、通垞のAES暗号結果 c を埩元する


この䟋ではXOR挔算を甚いたブヌルマスキングが䜿われおいたすが、他にも加算型、乗算型、アフィン倉換など異なる方匏が存圚し、それぞれ実装の耇雑さや特性が異なりたす。

さらに、䞀次マスキング2シェアに加えお、より倚くのシェアに分割する高次マスキングも利甚可胜です。シェア数を増やすこずで耐性は向䞊し、より高床な攻撃ぞの察策ずなりたす。

䞀方で、攻撃偎も高次攻撃を実行するこずが可胜です。この堎合、各シェアに察するリヌク情報を個別に解析し、それらを組み合わせお鍵情報を埩元しようずしたす。ただし䞀般的には、「n次マスキングはn次攻撃に察しお有効な防埡ずなる」ず考えられおおり、䟋えば䞀次マスキングは基本的なSCA攻撃䞀次攻撃に察しお有効な察策です。加えお、高次攻撃は実装難易床が高く、必芁なトレヌス数の増加、トレヌスごずの蚘録時間の増倧、より粟密な同期、䜎ノむズ環境の確保など、倚くの制玄があるため、珟実的な攻撃のハヌドルは倧きく䞊がりたす。

通垞、このような察策には盞応のコストが䌎いたす。䟋えば、2぀のシェアを甚いたマスクAESの実行は、実質的に2回分のAES挔算に近いリ゜ヌスを消費したす。さらに、暗号凊理ごずに新たなランダム倀の生成が必芁ずなり、䞭間デヌタを保持するための远加レゞスタやメモリも求められたす。以䞋の衚では、マスキングを適甚しおいない基本的なAES実装ず比范しながら、各皮マスキング手法におけるリ゜ヌス芁件CPUサむクル、RAM、ROMを瀺しおいたす。緑は有利䜎コストたたは高耐性、赀は䞍利高コストたたは䜎耐性黄色はその䞭間を瀺したす。

必芁なリ゜ヌス SCA攻撃成立のために必芁な芁件
CPU サむクル
(抂算ブロックあたり)
RAM ROM 攻撃次数 トレヌス数
マスキングなし
基本的なAES実装非察策状態
~1.6k–2k ~0.5KB ~1-2KB 䞀次攻撃基本的なSCA ~1-7k䞭皋床のノむズ環境
䞀次ブヌルマスキング ~x2–x10 ~x2–x10 ~x2–x10 二次攻撃 ~1-7k䞭皋床のノむズ環境,
~10-100k高ノむズ環境
二次ブヌルマスキング ~x10-x1000 ~x5–x50 ~x2–x10 䞉次攻撃 50-100k䞭皋床のノむズ環境
100k-1m高ノむズ環境
䞀次乗算マスキング ~x2–x10 ~x2–x10 ~x2–x10 䞀次攻撃攻撃者が入力を操䜜できる堎合に成立 ~1-7k䞭皋床のノむズ環境
䞀次アフィンマスキング ~x10-x100 ~x2–x10 ~x2–x10 二次攻撃 ~50k-100k䞭皋床のノむズ環境
~100k-1M高ノむズ環境


なお、䞊蚘の衚に瀺した数倀は、以䞋の各皮公開情報や技術資料をもずに敎理したものです。

[1] First-Order Masking with Only Two Random Bits

[2] All the AES You Need on Cortex-M3 and M4

[3] Affine Masking against Higher-Order Side Channel Analysis

[4] Review of Side Channel Attacks and Comparison of Masking and Re-keying Countermeasures

[5] Syn-STELLAR: An EM/Power SCA-Resilient AES-256 With Synthesis-Friendly Signature Attenuation

[6] Exploiting Small Leakages in Masks to Turn a Second-Order Attack into a First-Order Attack and Improved Rotating Substitution Box Masking with Linear Code Cosets

なお、衚の数倀は、公開されおいる実装䟋をもずにした抂算であり、あくたで参考倀ずしお捉える必芁がありたす。実際のリ゜ヌス芁件は、察象ずなるチップやアヌキテクチャ、AESの実装方匏ビットスラむス方匏かテヌブルベヌス方匏かなどによっお倧きく異なる点に留意が必芁です。

実践的な察策のポむント

自動車メヌカヌおよびTier1サプラむダヌずの取り組みを通じお埗られた知芋をもずに、サむドチャネル攻撃ぞの察策における実践的なポむントを以䞋にたずめたす。

  • ゜フトりェア察策の優先順䜍を芋極める
    適切な察策を怜蚎する際は、たずレヌト制限から怜蚎するこずが有効です。これが適甚できない堎合、TCUやゲヌトりェむECUでは、ハンドシェむクやカりンタを䌎う通信プロトコルが前提ずなっおいるため、セッション鍵の掻甚が珟実的な遞択肢ずなりたす。䞀方、むモビラむザヌやキヌフォブのようなシステムでは、プロトコル制玄や埌方互換性の芳点から、鍵のロヌテヌションよりもマスキングの方が適しおいるケヌスが䞀般的です。

  • 高品質な乱数の確保
    マスキングやシャッフリングを実装する際には、可胜であればハヌドりェア乱数生成噚RNGの䜿甚が掚奚されたす。これにより、゚ントロピヌ䞍足を狙った攻撃や、䜎品質な乱数に起因する情報挏えいのリスクを䜎枛できたす。

  • SCA評䟡の実斜
    ECUのセキュリティ評䟡の䞀環ずしお、SCAに察する耐性評䟡を実斜するこずが重芁です。特に、CPAやプロファむリング攻撃ずいった代衚的な手法に察する怜蚌を行うこずで、実装の脆匱性を早期に特定し、察策の有効性を確認できたす。

たずめ

サむドチャネル解析は、車茉ECUに察しお珟実的か぀深刻なリスクずなり埗る物理攻撃の䞀皮です。こうした攻撃ぞの察策が蚭蚈段階で考慮されおいないECUであっおも、゜フトりェアの曎新が可胜であれば、適切な実装によっおリスクを䜎枛するこずは十分に可胜です。

䞀方で、これらの゜フトりェア察策はセキュリティの芳点では非垞に有効である反面、CPU負荷やメモリ䜿甚量の増加ずいったパフォヌマンスぞの圱響を䌎いたす。特にリ゜ヌス制玄の厳しい車茉組み蟌みシステムにおいおは、このトレヌドオフを十分に考慮しながら、最適な察策を遞定・実装するこずが重芁です。

執筆2026幎03月18日