JP4774684B2 - 通信システム、暗号化/復号中継装置、及び通信制御装置 - Google Patents

通信システム、暗号化/復号中継装置、及び通信制御装置 Download PDF

Info

Publication number
JP4774684B2
JP4774684B2 JP2004164866A JP2004164866A JP4774684B2 JP 4774684 B2 JP4774684 B2 JP 4774684B2 JP 2004164866 A JP2004164866 A JP 2004164866A JP 2004164866 A JP2004164866 A JP 2004164866A JP 4774684 B2 JP4774684 B2 JP 4774684B2
Authority
JP
Japan
Prior art keywords
transmission
data
node
communication
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004164866A
Other languages
English (en)
Other versions
JP2005348064A (ja
Inventor
剛宏 岩村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2004164866A priority Critical patent/JP4774684B2/ja
Publication of JP2005348064A publication Critical patent/JP2005348064A/ja
Application granted granted Critical
Publication of JP4774684B2 publication Critical patent/JP4774684B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数の通信ノードが通信線を介して接続された通信システムと、その通信システムに用いられる暗号化/復号中継装置及び通信制御装置に関する。
従来、例えば車両に搭載される車内通信システム(車内LAN)のような閉じられた狭い範囲内でのネットワークに対しては、セキュリティ性能を求められることはほとんどなかったため、その通信システム内では、データの暗号化などのセキュリティ技術を施すことなくそのままデータ伝送を行っていた。
しかし近年、従来はそれほどセキュリティ性能を求められていなかった通信システムに対しても、徐々にセキュリティ性能の向上が求められるようになってきており、データを暗号化して伝送するなどのセキュリティ対策を施す必要がでてきた。
一方、通信システムにおけるデータの暗号化技術としては、例えば、システムを構成する各通信ノードが暗号化・復号の機能を持ったものが知られている(例えば、特許文献1,2参照。)。
図12は、上記特許文献1の技術が適用された通信システムの概略構成を示すものであり、ECU−A101、ECU−B102、ECU−C103、ECU−D104などの複数のECU(電子制御装置)がバス110に接続され、このバス110を介して相互にデータ通信できるよう構成されたものである。
このうちECU−A101は、他の各ECUに対するセンター装置としても機能し、乱数表に基づいて乱数を発生する乱数発生部111と、複数の暗号キーを記憶する暗号キー記憶部112と、他の各ECU102,103,104・・・から送信された暗号化データを、暗号キー記憶部112が記憶する暗号キーの中から選択された暗号キーに従って復号する復号部113とを備える。他の各ECU102,103,104・・・は、所定の暗号化アルゴリズムとECU−A101から指定される暗号キーとによって送信データを暗号化する暗号化部106を備える。
このように構成された従来の通信システムでは、ECU−A101以外の他のECUが通信を行う度に、センター装置としてのECU−A101が、乱数発生部111からの乱数に基づいて暗号キー記憶部112に記憶されている複数の暗号キーの中から選択した一つの暗号キーをその通信対象のECUへ送信する。ECU−A101以外の他のECUは、通信の都度、ECU−A101から送信される暗号キーに従って送信データを暗号化して送信する。
特開平5−37523号公報 特開平10−145352号公報
しかしながら、上記の特許文献1,2に記載された暗号化/復号技術を例えば車内LANなどの既存の通信システムに適用してソフト的に実現しようとすると、システムを構成する通信ノードにおける処理負荷が増大し、暗号化/復号の処理或いはその他の処理に悪影響を及ぼすおそれがある。
即ち、車内LANなどの既存の通信システムでは、システムを構成する各通信ノードに組み込まれるCPU(組み込みCPU)の性能は一般に高性能なものではなく、実行すべき処理量相応の性能である場合が一般的である。そのため、そのような既存の組み込みCPUに対して暗号化/復号処理まで行わせると、処理負荷が過大となるのである。
特に、例えばISO(国際標準化機構)などで安全性が認定されているような高レベルの暗号/復号アルゴリズムを適用すると、処理負荷はより過大となるため現実的ではない。また、CPUを高性能のものに変更すれば上記の暗号化/復号処理を実現することが可能となるが、CPUの性能を上げるとコストも大幅にアップする。そのため、技術的には可能であってもコスト的な面でやはり現実的ではない。
本発明は上記課題に鑑みなされたものであり、既存の通信システムに対し、通信ノードの処理負荷増大を抑え、ハードウェアの大幅な設計変更を加えることなく、暗号化されたデータによる通信が可能となるようにすることを目的とする。
本発明者は、例えばISOで規定された周知のOSI基本参照モデルにおける物理層或いはデータリンク層などのような、通信プロトコルにおける下位の階層(ハードウェアにより制御される機能を規定した階層)で暗号化/復号を行うようにすれば、既存の通信システムに対してソフト的な処理負荷を増大させることなく、且つハード的にも大幅な設計変更を加えることなくシステムの暗号化を実現できると考え、本発明に至った。
上記課題を解決するためになされた請求項1記載の通信システムは、車両に搭載され、複数の通信ノードが通信線を介して所定の通信プロトコルにより相互に通信可能に接続された通信システムであり、各通信ノードと通信線との間には、通信ノード毎にそれぞれ、暗号化/復号中継装置が設けられている。
この暗号化/復号中継装置は、対応する通信ノードから送信された送信データを暗号化して通信線上へ送出する。また、通信線を介して伝送されてきた暗号化されたデータを復号して対応する通信ノードへ送信する。
また、各暗号化/復号中継装置は、対応する通信ノードとの間における送信データの受信を含む通信、及び他の暗号化/復号中継装置との間における暗号化されたデータの受信を含む通信を、共に上記通信プロトコルにて行うよう構成されている。
また、通信ノードは、送信すべき送信データを、その送信データを含む所定のフォーマットのノード送信信号として送信し、外部からのデータを正常に受信したときはその旨を示す受信確認信号を出力し、自身が送信データを送信したときは、その送信データに対する外部からの受信確認信号を受信するまではその送信データを再送信するよう構成されている。
そして、暗号化/復号中継装置は、対応する通信ノードからのノード送信信号を受信するノード側受信手段と、そのノード側受信手段により受信されたノード送信信号に含まれる送信データを暗号化して暗号化送信データとする暗号化手段と、その暗号化手段にて暗号化された暗号化送信データを上記フォーマットの暗号化送信信号として通信線上へ送出する通信線側送信手段と、当該暗号化/復号中継装置以外の他の暗号化/復号中継装置から通信線を介して伝送されてきた暗号化送信信号を受信する通信線側受信手段と、その通信線側受信手段により受信された暗号化送信信号に含まれる暗号化送信データを元の送信データに復号する復号手段と、その復号手段にて復号された送信データを上記フォーマットの復号送信信号として対応する通信ノードへ送信するノード側送信手段と、通信線を介して伝送されてきたデータを正常に受信したときに受信確認信号を通信線上へ送出する通信線側確認信号出力手段と、対応する通信ノードから送信されたノード送信信号を正常に受信したときに受信確認信号をその対応する通信ノードへ出力するノード側確認信号出力手段と、通信線側送信手段が暗号化送信信号を通信線上へ送出したとき、その暗号化送信信号に対する他の暗号化/復号中継装置からの受信確認信号を通信線を介して受信したならば、その旨を示す送信完了信号をノード側確認信号出力手段へ出力する送信完了通知手段と、を備え、ノード側確認信号出力手段は、対応する通信ノードから送信されたノード送信信号を正常に受信した場合、送信完了通知手段からの送信完了信号を受信するまでは該通信ノードへの受信確認信号の出力は行わず、該送信完了信号を受信したときに、対応する通信ノードへ受信確認信号を出力する。
所定のフォーマットとは、例えば送信データに、その送信データの種類或いは優先度などを示すデータやエラーチェック用のデータ等を付加した一つのフレームとしたものなど、通信プロトコルによって種々のものが考えられる。
このように構成された通信システムによれば、通信ノードと通信線の間に暗号化/復号中継装置を設け、この暗号化/復号中継装置によって通信ノードからの送信データの暗号化及び通信線からの受信データの復号を行うようにしている。具体的には、各通信ノードに対応した暗号化/復号中継装置が、通信ノードからの送信データ(ノード送信信号)を暗号化手段にて暗号化して通信線上へ送出すると共に、通信線からのデータ(暗号化送信信号)を復号手段にて復号して通信ノードへ送信する。
そのため、既存の通信システムに対し、通信ノードの処理負荷増大を抑え、ハードウェアの大幅な設計変更を加えることなく、暗号化されたデータによる通信を可能とすることができる。
また、通信ノードからの送信データを暗号化/復号中継装置を介して通信線上へ送出するようにすると、例えば通信線上のトラフィックが混雑している場合、暗号化/復号中継装置がまだ暗号化したデータを通信線上へ送出していないにも拘わらず、対応する通信ノードからは新しいデータがどんどん入力され、通信ノードからの送信データが詰まってしまうおそれがある。
これに対し、本発明(請求項1)の通信システムでは、通信ノードが送信データを送信したとき、その送信データが暗号化/復号中継装置により暗号化されて通信線上への送出が完了するまでは、同じ送信データの再送信が行われ、送出が完了した後に次の新たなデータの送信が行われる
そのため、暗号化/復号中継装置から通信線上へのデータ(暗号化されたデータ)の送出が完了していないにも拘わらず通信ノードから新しい送信データが次々と入力されるといった事態を防ぎ、通信線上のトラフィック状態に応じた適切な通信の実現が可能となる。
次に、請求項2載の通信システムは、車両に搭載され、複数の通信ノードが通信線を介して所定の通信プロトコルにより相互に通信可能に接続された通信システムであって、各通信ノードと前記通信線との間には、通信ノード毎にそれぞれ、暗号化/復号中継装置が設けられている。
この暗号化/復号中継装置は、対応する通信ノードから送信された送信データを暗号化して通信線上へ送出する。また、通信線を介して伝送されてきた暗号化されたデータを復号して対応する通信ノードへ送信する。
また、各暗号化/復号中継装置は、対応する通信ノードとの間における送信データの受信を含む通信、及び他の暗号化/復号中継装置との間における暗号化されたデータの受信を含む通信を、共に上記通信プロトコルにて行うよう構成されている。
また、通信ノードは、送信すべき送信データを、その送信データを含む所定のフォーマットのノード送信信号として送信し、送信データを送信中に外部から所定の停止信号を受信した場合は、その送信中の送信データを再送信するよう構成されている。
そして、暗号化/復号中継装置は、対応する通信ノードからのノード送信信号を受信するノード側受信手段と、そのノード側受信手段により受信されたノード送信信号に含まれる送信データを暗号化して暗号化送信データとする暗号化手段と、その暗号化手段にて暗号化された暗号化送信データを上記フォーマットの暗号化送信信号として通信線上へ送出する通信線側送信手段と、当該暗号化/復号中継装置以外の他の暗号化/復号中継装置から通信線を介して伝送されてきた暗号化送信信号を受信する通信線側受信手段と、その通信線側受信手段により受信された暗号化送信信号に含まれる暗号化送信データを元の送信データに復号する復号手段と、その復号手段にて復号された送信データを上記フォーマットの復号送信信号として対応する通信ノードへ送信するノード側送信手段と、ノード側受信手段にてノード送信信号を受信すると、そのノード送信信号に対応した暗号化送信信号の通信線上への送出が完了するまでは、対応する通信ノードからノード送信信号が送信される度に、その送信中における所定のタイミングで停止信号をその対応する通信ノードへ出力する停止信号出力手段と、通信線側送信手段による暗号化送信信号の送出が完了したときにその旨を示す送信完了信号を停止信号出力手段へ出力する送信完了通知手段と、を備え、停止信号出力手段は、送信完了通知手段から送信完了信号を受信するまでは、上記タイミングでの停止信号の出力を行う。
このように構成された通信システムによっても、通信ノードが送信データを送信したとき、その送信データが暗号化/復号中継装置により暗号化されて通信線上への送出が完了するまでは、同じ送信データの再送信が行われ、送出が完了した後に次の新たなデータの送信が行われる。或いは、通信線上への送出が完了するまでは次の新たなデータの再送信が行われ、送出が完了した後にさらに次のデータの送信が行われるようにすることもできる。
そのため、請求項と同様、暗号化/復号中継装置から通信線上へのデータ(暗号化されたデータ)の送出が完了していないにも拘わらず通信ノードから新しい送信データが次々と入力されるといった事態を防ぎ、通信線上のトラフィック状態に応じた適切な通信の実現が可能となる。
次に、請求項記載の通信システムは、請求項1又は2記載の通信システムであって、通信ノードは、ビットデータ形式のノード送信信号を通信線を伝送可能な形式にコード化して通信線上へ送出するよう構成されている。そして、暗号化/復号中継装置を構成する各手段のうち、ノード側受信手段、通信線側送信手段、通信線側受信手段、及びノード側送信手段が、それぞれ次のように構成されている。
まずノード側受信手段は、対応する通信ノードからのコード化されたノード送信信号をビットデータに変換するノード側受信処理部と、そのノード側受信処理部からのビットデータ形式のノード送信信号から送信データを抽出して暗号化手段へ出力する送信データ抽出部とを備える。
次に通信線側送信手段は、暗号化手段により暗号化された暗号化送信データに基づいてビットデータ形式の暗号化送信信号を生成する暗号化送信信号生成部と、その生成した暗号化送信信号をコード化して通信線上へ送出する通信線側送信処理部とを備える。
また通信線側受信手段は、通信線を介して伝送されてきた、コード化された暗号化送信信号をビットデータに変換する通信線側受信処理部と、その通信線側受信処理部からのビットデータ形式の暗号化送信信号から暗号化送信データを抽出して復号手段へ出力する暗号化データ抽出部とを備える。
そしてノード側送信手段は、復号手段により復号された送信データに基づいてビットデータ形式の復号送信信号を生成する復号送信信号生成部と、その生成した復号送信信号をコード化して対応する通信ノードへ送出するノード側送信処理部とを備える。
一方、通信ノードを、ビットデータ形式のノード送信信号を上記コード化せずにそのまま出力するよう構成すれば、例えば請求項に記載のように、上記請求項に記載の暗号化/復号中継装置の構成のうち、ノード側受信手段におけるノード側受信処理部と、ノード側送信手段におけるノード側送信処理部とがいずれも不要となる。
上記のように構成された請求項又は請求項に記載の通信システムによれば、暗号化/復号中継装置を、通信ノードから送信される送信データの形式(プロトコル階層)、通信線上を伝送されるデータの形式(プロトコル階層)に確実に適応したものとして構成できるため、既存の通信システムに対する設計変更等をより抑えつつ、暗号化されたデータによる良好な通信を可能とすることができる。
特に請求項の構成によれば、上述の通り、暗号化/復号中継装置においてノード側受信処理部及びノード側送信処理部が不要となると共に、通信ノードについても、送信データの上記コード化が不要となるため、通信システム全体をより簡易的に構成することができる。
次に、請求項記載の通信システムは、請求項1〜いずれかに記載の通信システムであって、暗号化/復号中継装置は、送信データを暗号化する際、その送信データに所定の認証データを付加して暗号化する。そして、通信線を介して伝送されてきた暗号化されたデータを復号したときは、復号後のデータに含まれる認証データが正規のものであるか否か判断し、正規のものでなければ、その復号後のデータを無効とする。
このように構成された通信システムによれば、暗号化/復号中継装置から通信線上へ送出されたデータ(暗号化されたデータ)が途中で改竄された場合、暗号化/復号中継装置は、認証データの変化によってその改竄を検出でき、そのデータを無効として通信ノードへ入力させないようにする。そのため、改竄されたデータに基づいて通信ノードが無駄な処理或いは誤った処理を実行してしまうのを防ぐことができる。
尚、暗号化/復号中継装置は、例えば対応する通信ノードとは物理的に異なる一つの装置として構成してもよいし、対応する通信ノードに内蔵(物理的に一体化)した構成としてもよい。前者の場合は、既存の通信システムに対して通信ノードは何ら変更することなく単に暗号化/復号中継装置を接続するだけで済むため、通信ノードのハード的な変更が全く(或いはほとんど)不要となる。後者の場合、通信ノードに内蔵するためのハード的な設計変更は必要となるもののそれは微々たるものであり、むしろ一体化することで、見かけ上は従来と同じく通信線に各通信ノードが接続された状態となるため、システム構成を簡素化することが可能となる。しかも、通信ノードを密閉された筐体内に収めれば、通信ノードと暗号化/復号中継装置との接続部分も必然的にその筐体内に密閉された状態となるため、通信ノードと暗号化/復号中継装置との間で送受信される、暗号化されていないデータが不正に外部に引き出されるのを防ぐことができる。
また、このように暗号化/復号中継装置を通信ノード内に内蔵する構成の場合において、更に、例えば請求項に記載のように暗号化/復号中継装置とそれに対応する通信ノードとを同一の半導体集積回路内に形成するようにすれば、通信ノード及び暗号化/復号中継装置の一体化構成をより小型化でき、しかも、上述した暗号化されていないデータの不正引き出しをより強固に防ぐことが可能となる。
ここで、請求項に記載のように、請求項1〜いずれかに記載の通信システムに用いられる暗号化/復号中継装置であって、当該各請求項において暗号化/復号中継装置に関して記載した構成を備える暗号化/復号中継装置や、請求項に記載のように、請求項記載の通信システムを構成する通信ノード及び暗号化/復号中継装置として用いられ、上記同一の半導体集積回路内に形成される通信制御装置であって、当該請求項において通信ノード及び暗号化/復号中継装置に関して記載した構成を備える通信制御装置についても、それぞれ単独で生産・使用・譲渡等することができる。
このような暗号化/復号中継装置や通信制御装置であれば、上述した通信システムに用いられることによって、上述の効果を発揮する上で有意な役割を果たすこととなる。
以下に、本発明の好適な実施形態を図面に基づいて説明する。
[第1実施形態]
図1は、本発明の通信システムを具現化した実施形態としての車内LAN10の概略構成を示す構成図である。この車内LAN10は、図示しない車両に搭載され、車両の各部を制御するための様々な種類のECUの相互間でデータ通信を行うように構成されている。各ECU1,2,3,4(ECU−A1,ECU−B2,ECU−C3,ECU−D4)は、例えば、車両のエンジンの燃料噴射や点火タイミング等を制御するエンジンECU、車両に設けられた自動変速装置を制御するトランスミッション制御ECU、車両のボデー系全体の制御を統括するボデーECUなど、種々のものがある。
そして、本実施形態の車内LAN10は、通信ノードとしての各ECU1,2,3,4がそれぞれ、暗号化/復号中継装置としての暗号平文変換コネクタを介して、通信線としての暗号文バス7に接続されている。
このうちECU−A1は、平文バス−A21を介して暗号平文変換コネクタ−A11と接続され、ECU−B2は、平文バス−B22を介して暗号平文変換コネクタ−B12と接続され、ECU−C3は、平文バス−C23を介して暗号平文変換コネクタ−C13と接続され、ECU−D4は、平文バス−D24を介して暗号平文変換コネクタ−D14と接続されている。そして、各暗号平文変換コネクタ11,12,13,14が、共通の暗号文バス7に接続されている。そのため、各ECU1,2,3,4は、それぞれ対応する(平文バスを介して接続されている)各暗号平文変換コネクタ11,12,13,14及び暗号文バス7を介して相互にデータ通信を行うことができる。
各暗号平文変換コネクタ11,12,13,14は、それぞれ対応する各ECU1,2,3,4から送信されたデータ(送信データ)を所定の暗号化アルゴリズムにて暗号化して、その暗号化されたデータ(暗号化送信データ)を暗号文バス7上へ送出すると共に、暗号文バス7を介して伝送されてきた他の暗号平文変換コネクタからの暗号化されたデータを元のデータに復号して、その復号したデータをそれぞれ対応する各ECU1,2,3,4へ送信する機能を有する。
そして、本実施形態の車内LAN10では、通信プロトコルとしてCAN(Controller Area Network )が採用されている。CANは、ISOで規格化され、自動車を始め様々な分野で採用されている周知のシリアル通信プロトコルである。
このように、CANはよく知られた通信プロトコルではあるが、参考までに、その概要について簡単に説明しておく。
まず、CANでは、バス上の信号レベルにドミナント(優性)とレセッシブ(劣性)とがあり、ドミナントビットは論理「0」であり、レセッシブビットは論理「1」である。そのため、例えばバスに接続された二つの通信ノードが同時にデータを送信した場合に、一方がドミナントビットを、他方がレセッシブビットを送信したときは、ドミナントビットがレセッシブビットを上書きする。つまり、レセッシブビットはドミナントビットによって消されるわけである。
尚、この二つのレベルにより表されるデータがバス上に送出される際は、実際には、CANプロトコルにおける物理層の機能として規定されている通り、二本のワイヤの電位差として出力される。つまり、本実施形態の暗号文バス7や各平文バス21,22,23,24は、詳細には二本のワイヤにより構成されている。そして、各ECU1,2,3,4や各暗号平文変換コネクタ11,12,13,14は、バスを構成する二本のワイヤの電位差に基づいてバスのレベル(ドミナント又はレセッシブ)を判断するのである。
CANバス上でやりとりされるデータのフォーマット(データフレーム)は、図2に示す通りである。尚、このデータフレームは、説明の簡略化のため、アービトレーションフィールド、データフィールド、及びACKフィールドのみを示し、他のフィールドについては図示を省略している。
アービトレーションフィールドは、データの種類及びフレームの優先順位を表すフィールドであり、所定ビット数のID(識別子)を有する。そのため、バス上のデータフレームを受信した通信ノードは、このIDをみることでデータの種類を知ることができる。更に、複数の通信ノードが同時にデータフレームを送信開始した場合は、このIDによる調停が行われる。この調停は、CANプロトコルにおけるデータリンク層の機能である。
即ち、送信側の各通信ノードは、アービトレーションフィールドの第1ビット目からアービトレーション(調停)を行う。そして、調停に勝ったデータフレームを送信している通信ノードが送信権を獲得し、他の全ての通信ノードは受信動作に入る。具体的には、例えば二つの通信ノードが同時にデータ送信を開始した場合であって、一方のIDが「001・・・」、他方のIDが「000・・・」であるとすると、3ビット目にて、他方のIDがドミナントレベルであるため、ここで調停に勝つことになる。
データフィールドは、実際のデータが格納されるフィールドであり、例えば0〜8バイトのデータが格納される。
ACKフィールドは、送信したデータを受信側で正常に受信できたか否かを確認するためのフィールドである。送信側の通信ノードは、データフレームの送信時、このフィールド中のACKスロットでレセッシブビット「1」を送信する。一方、このデータフレームを受信する受信側では、正常に受信できた場合、このACKスロットでドミナントビット「0」を送る。このことを、“ACKを返す”ともいう。正常に受信できなかった場合は、このACKスロットでレセッシブビット「1」を送る。つまり、ACKを返さない。
送信側では、このACKスロットのレベルによって、正常に受信されたか否かを判断する。即ち、正常に受信された場合は、ACKスロットにおいて自身はレセッシブビット「1」を送信しているにも拘わらずバス上のレベルがドミナントレベル「0」となるため、正常に受信されたことが判断できる。逆に、正常に受信されなかった場合は、ACKスロットにおけるバスレベルもレセッシブレベル「1」のままとなるため、正常に受信されなかったことが判断できる。
送信側の通信ノードは、このACKフィールド(詳細にはACKスロット)においてACKが返って来なかった場合は、ACKエラーとして、そのデータフレームを再送信することになる。
また、CANプロトコルでは、各種エラーを検出する機能も備えており、データフレームの送信時或いは受信時にエラーを検出した場合、その通信ノードは、エラーフレーム(例えば、6ビットのドミナントビットからなるエラーフラグと8ビットのレセッシブビットからなるエラーデリミタとからなる)を出力して、バスに接続された他の通信ノードに対しエラーが発生したことを通知する。
データフレーム送信中の通信ノードがエラーを検出した場合、その送信を強制的に終了して上記エラーフレームをバス上へ送出し、その後、そのデータフレームが正常に送信完了するまで再送信を繰り返す。尚、上述したACKフィールドに基づく正常受信の判断や、各種エラーの検出は、いずれも、CANプロトコルにおけるデータリンク層の機能として規定されたものである。
次に、本実施形態の車内LAN10を構成する各ECU1,2,3,4及びこれらに対応してそれぞれ接続されている各暗号平文変換コネクタ11,12,13,14のより具体的な構成・動作について、図3に基づいて説明する。図3は、ECU−A1及びこれに平文バス−A21を介して接続された暗号平文変換コネクタ−A11の概略構成を示す構成図である。尚、他の各ECU12,13,14及び各暗号平文変換コネクタ12,13,14も、CANプロトコルに基づくデータ通信を行うための構成及びその通信動作のみに着目すれば、図3と全く同様の構成・動作である。そのため、以下の説明では、代表としてECU−A1及び暗号平文変換コネクタ−A11について説明する(必要に応じて他のECU、暗号平文変換コネクタも適宜参照する)。
ECU−A1は、CANプロトコルに基づく通信処理はもちろん、車両における所定の制御処理(例えばエンジン制御に関する各種制御処理)を実行するCPU31と、CPU31から他のECU(詳細には他のECU内のCPU)へのデータを、CANプロトコルに従い、図2で説明したフォーマット(ビットデータ形式)のデータフレーム(本発明のノード送信信号)としてCANトランシーバ33を介して送信すると共に、CANトランシーバ33から入力されたデータフレームに基づいて調停やエラー検出などの各種処理を行い、正常に受信したときにそのフレーム中のデータをCPU31へ出力するECU内CANコントローラ32と、ECU内CANコントローラ32から外部(平文バス−A21側)へ送信されるデータフレームを実際にバス上に送出可能な形式(つまり上述した二本のワイヤの電位差にて表される形式)にコード化して平文バス−A21上へ送出すると共に、平文バス−A21を介して入力された信号からバスレベルを読み取ってビットデータ形式のデータフレームとして、ECU内CANコントローラ32へ出力するCANトランシーバ33とを備える。
そして、ECU内CANコントローラ32にて、送信すべきデータのビットデータ化・フレーム化やCANトランシーバ33からのデータフレームの解析が行われる。上述したIDによる調停やACKの応答、エラー検出などもこのECU内CANコントローラ32にて行われる。尚、受信側で正常に受信されたときにその受信側から返ってくるACK(ドミナントビット)は本発明の受信確認信号に相当するものである。
即ち、CANトランシーバ33は、CANプロトコルにおける物理層の機能として規定された各種機能を実現するものであり、ECU内CANコントローラ32は、CANプロトコルにおけるデータリンク層の機能として規定された各種機能を実現するものである。そしてこれらは、いずれもハードウェアにて構成され、上記各種機能はハードウェアによる機能として実現される。
暗号平文変換コネクタ−A11は、平文バス−A21に接続されたCANトランシーバ41と、このCANトランシーバ41に接続されたECU側CANコントローラ42と、暗号文バス7に接続されたCANトランシーバ46と、このCANトランシーバ46に接続されたLAN側CANコントローラ45と、各コントローラ42,45の双方に接続された暗号部43及び復号部44とを備える。
このうち、CANトランシーバ41及びCANトランシーバ46はいずれも、ECU−A1内のCANトランシーバ33と全く同じ構成であって同じ機能を有する。つまり、CANプロトコルにおける物理層での機能を実行する。
また、ECU側CANコントローラ42及びLAN側CANコントローラ45も、基本的には、ECU−A1内のECU内CANコントローラ32と同じ構成であって同じ機能を有する。つまり、CANプロトコルにおけるデータリンク層での機能を実行する。
そして、ECU−A1から平文バス−A21上へ送出されたデータフレームがCANトランシーバ41を介してECU側CANコントローラ42にて受信されると、このECU側CANコントローラ42は、上記データリンク層で規定された機能を実行すると共に、正常に受信できたとき、データフレーム中のデータを抽出して暗号部43へ出力する。
暗号部43は、入力されたデータを所定の暗号化アルゴリズムにて暗号化し、暗号化後のデータをLAN側CANコントローラ45へ出力する。暗号化の具体的なアルゴリズムは様々なものが知られており、適宜採用することができるため、ここではその詳細説明は省略する。
暗号部43にて暗号化されたデータは、LAN側CANコントローラ45にて再びデータフレーム化され、CANトランシーバ46を介して暗号文バス7上へ送出される。このとき暗号文バス7上へ送出されるデータフレームは、本発明の暗号化送信信号に相当するものである。また、このデータフレーム中のIDは、暗号化前のデータがECU−A1から送信されてきたときのデータフレーム中に含まれていたIDと同じものである。
一方、暗号文バス7を介して他の暗号平文変換コネクタ12,13,14から送信されてきたデータ(暗号化されたデータを含むデータフレーム)は、CANトランシーバ46にてビットデータに変換されてLAN側CANコントローラ45に入力され、ここで、データリンク層で規定された各種機能が実行される。そして、正常に受信できたとき、このデータフレーム中に含まれる暗号化されたデータを抽出して復号部44へ出力する。
復号部44は、暗号部43に対応して設けられたものであり、暗号部43にてなされた所定のアルゴリズムに基づく暗号化処理に対して、その暗号化されたデータを元のデータに復号する機能を有する。
復号部44にて復号されたデータは、ECU側CANコントローラ42にて再びデータフレーム化され、CANトランシーバ41を介して平文バス−A21上へ送出される。このとき平文バス−A21上へ送出されるデータフレームが、本発明の復号送信信号に相当するものである。また、このデータフレーム中のIDは、復号前のデータが暗号文バス7を介して受信されたときのデータフレーム中に含まれていたIDと同じものである。
これらに加え、本実施形態では更に、平文バス−A21と暗号文バス7との通信トラフィック状態の差を吸収するためのECU側データフレーム再送機能や、暗号化されたデータが暗号文バス7上のどこかで改竄された場合にそれを検出することができる改竄検出機能を有する。
即ち、暗号文バス7は、複数の暗号平文変換コネクタに接続された共通のバスであるため、通信トラフィックが混雑するおそれがある。これに対し、平文バス−A21は、ECU−A1と暗号平文変換コネクタ−A11との間で送受されるデータフレームだけが伝送される専用線であるため、通信トラフィックが混雑するおそれはない。
そのため、例えばECU−A1(CPU31)が複数のデータを順次送信しようとしてまず一つ目のデータフレームを平文バス−A21上へ送出すると、暗号平文変換コネクタ−A11はそれを受信してデータの暗号化を行い、再びデータフレーム化して暗号文バス7上へ送出するが、この暗号文バス7上への送出時に調停に負けてしまうと、そのデータフレームを再送信することになる。つまり、調停に勝つまでは同じデータフレームが再送信され続けることになる。
そしてその再送信している間、ECU−A1が新しいデータフレームを順次送出してしまうと、ECU−A1からのデータフレームが必然的に詰まってしまう。これを解消するための一手段として、例えば暗号平文変換コネクタ−A11内にバッファを設けてその中にECU−A1からのデータを順次バッファリングすることも考えられるが、そうすると容量の大きいバッファを備える必要があるため、コスト的にも現実的ではない。
そこで本実施形態の暗号平文変換コネクタ−A11は、ECU側データフレーム再送機能を備えている。即ち、ECU−A1からデータが送信されたとき、最初のデータフレーム、即ち暗号平文変換コネクタ−A11に未送信データがない状態で最初に受信したデータフレームについては、そのまま受信してECU−A1側にACKを返すようにするが、次の新たなデータフレームに対しては、先に受信したデータの暗号化後のデータがデータフレームにて暗号文バス7上へ完全に送出される(調停に勝つ)までは、ACKを返さないようにするのである。
具体的には、調停に勝って暗号文バス7上へ完全に送出されたときに、LAN側CANコントローラ45が送信完了信号をECU側CANコントローラ42へ出力する。これにより、ECU側CANコントローラ42は暗号化されたデータの送信が完了したことを知り、暗号平文変換コネクタ−A11で次の新たなデータの受信態勢が整ったものとみて、次にECU−A1から送信されてきたデータフレームに対し、エラー等がない限りACKを返すのである。
これによりECU−A1は、先に送信したデータが暗号平文変換コネクタ−A11から暗号文バス7上へ完全に送出されるまでは、同じデータフレームの再送を繰り返すことになる。そのため、暗号平文変換コネクタA−11から暗号文バス7上へのデータフレーム送出が調停負けしているにも拘わらずその暗号平文変換コネクタ−A11に新しいデータがどんどん入力されてしまうということはない。このように、本実施形態では、暗号平文変換コネクタ−A11からのデータ送信が完了するまでECU−A1にデータを再送させるために、データ送信が完了するまではECU−A1にACKを返さないようにしているのであり、このような方式を以下「ACKによる再送要求方式1」ともいう。
また、暗号平文変換コネクタ−A11が備える改竄検出機能とは、データに付加された認証子に基づいて改竄の有無を検出する機能である。即ち、暗号部43がデータを暗号化する際、そのデータに所定の認証子(本発明の認証データに相当)を付加して暗号化する。そして暗号化されたデータが受信されたとき、復号部44は、その認証子が付加されたデータを復号すると共に、復号された認証子が正規のもの(つまり暗号部43にて付加されたもの)であるか否かを判断し、その判断結果としての認証完了信号をECU側CANコントローラ42へ出力する。
ECU側CANコントローラ42は、復号部44からの認証完了信号に基づいてデータ改竄の有無を判断し、改竄されていなければ引き続き通常通りの処理を行うが、改竄されていた場合は、受信したデータ(復号したデータ)を無効とし、ECU−A1側へ送信しないようにする。これにより、ECU−A1が改竄されたデータに基づく処理を実行してしまうのを防いでいる。
次に、上記説明した本実施形態の車内LAN10において行われるデータ通信動作の一例(ACKによる再送要求方式1)を、図4に示す。図4は、ECU−A1から送信されたデータがECU−B2にて受信される様子を説明している。
図示の如く、時刻t1にてECU−A1内のCPU31がデータXを出力すると、ECU内CANコントローラ32がそのデータXを含むデータフレームを出力する。このときのアービトレーションフィールド中のIDはIDaである。
これにより平文バス−A21上にこのデータフレームが送出されるが、このとき、暗号平文変換コネクタ−A11内には未送信データがないため、暗号平文変換コネクタ−A11内のECU側CANコントローラ42は、その平文バス−A21上のデータフレームを受信してACKを返す。そのため、データフレーム送出中におけるACKスロットでのバスレベルは、ドミナントレベル「0」となる。
尚、図中「ACKr」は、送信側が出力するACKフィールドであってその中のACKスロットがレセッシブレベルであることを意味し、「ACKd」は、受信側にて正常に受信された場合にその受信側がACKを返すことにより、ACKスロットにおいてバスレベルがドミナントレベルになることを意味している。
そして、暗号平文変換コネクタ−A11により受信されたデータXは暗号部43により暗号化されて暗号化データXeとなり、その暗号化データXeがLAN側CANコントローラ45からデータフレームとして暗号文バス7上へ送出される(時刻t2)。このときのIDは、暗号化前のデータXをECU−A1から受信したときのIDと同じくIDaである。
これに対し、ECU−B2に接続されている暗号平文変換コネクタ−B12は、暗号文バス7上の暗号化データXeを受信してACKを返す。そのため、暗号文バス7上のACKスロットにおけるバスレベルはドミナントレベルとなる。
暗号平文変換コネクタ−B12は、この受信した暗号化データXeを元のデータXに復号し、その復号されたデータXを含むデータフレーム(ID=IDa)を平文バス−B22上へ送出する(時刻t3)。そして、このデータフレームをECU−B2が正常に受信すると、ECU−B2内のECU内CANコントローラからACKが返ってくる。そのため、平文バス−B22上のACKスロットにおけるバスレベルはドミナントレベルとなる。
一方、ECU−A1は、最初に時刻t1でデータXを送信した後、時刻t2では次の新たなデータであるデータYを送信する。尚、このときのIDはIDbである。ところが、このデータYがデータフレームにて平文バス−A21上へ送出されたときは、暗号平文変換コネクタ−A11では、先に受信したデータXの暗号化後のデータXeが暗号文バス7上へ送出されている最中である。そのため、暗号平文変換コネクタ−A11内のECU側CANコントローラ42は、ECU−A1からの新規データYに対してはACKを返さない。つまり、平文バス−A21上のACKスロットにおけるバスレベルはレセッシブレベルのままとなる。
そのため、ECU−A1からは、データYが再送信されることになる。但し、暗号平文変換コネクタ−A11からの暗号化データXeの送出が完了すると、LAN側CANコントローラ45はECU側CANコントローラ42へ送信完了信号を出力するため、ECU側CANコントローラ42は、次にデータを正常受信したときはそれに対してACKを返すようになる。そのため、時刻t3にてデータYを含むデータフレームがECU−A1から再送信されると、暗号平文変換コネクタ−A11内のECU側CANコントローラ42は、そのデータフレームに対してACKを返す。
よって、ECU−A1では、データYが正常に受信されたことを知り、次の新たなデータZを送信することとなる(時刻t4)。このデータZについても、暗号平文変換コネクタ−A11から暗号文バス7上への暗号化データYeの送出が完了するまで、つまり暗号化データYeに対する送信完了信号をECU側CANコントローラ42が受信するまでは、ECU−A1は再送信することになる。
次に、ECU−A1とECU−B2とが同時にデータ送信を開始した場合について、図5に基づいて説明する。図示の如く、時刻t1にて、ECU−A1からのデータXを含むフレーム(ID=IDa)の送信とECU−B2からのデータPを含むフレーム(ID=IDj)の送信が同時に開始された場合、時刻t2にて、データXが暗号化された暗号化データXeを暗号平文変換コネクタ−A11が暗号文バス7へ送出開始すると共に、データPが暗号化された暗号化データPeを暗号平文変換コネクタ−B12が暗号文バス7へ送出開始する。つまり、各コネクタ11,12が同時に暗号文バス7上へデータフレームを送出する。
このとき、IDa>IDj(IDaの方がIDjより優先順位が高い)であるため、暗号平文変換コネクタ−A11からの暗号化データXeが調停に勝って暗号平文変換コネクタ−B12に受信される。
そのため、時刻t3において、暗号平文変換コネクタ−B12は、先の調停負けによる暗号化データPeの再送信を行うと同時に、受信した暗号化データXeが復号されたデータXをECU−B12へ送出する。そして、再送信された暗号化データPeは、暗号平文変換コネクタ−A11にて受信され、復号部44にて元のデータPに復号されて、時刻t4でECU−A1へ送出される。
以上説明した本実施形態の車内LAN10によれば、各ECU1,2,3,4と暗号文バス7との間にそれぞれ各暗号平文変換コネクタ11,12,13,14を設け、これら各暗号平文変換コネクタ11,12,13,14によって対応するECUからの送信データの暗号化及び暗号文バス7からの受信データ(暗号化データ)の復号を行うようにしているため、暗号・復号機能のない既存の車内LAN通信システムに対し、ECU内のCPUの処理負荷増大を抑え、ハードウェア(各ECU1,2,3,4など)の大幅な設計変更を加えることなく、暗号化されたデータによる通信を可能とすることができる。
また、各ECU1,2,3,4は、データを送信したとき、その送信データが対応する暗号平文変換コネクタにより暗号化されて暗号文バス7上への送出が完了するまでは、次の新たなデータの再送信させ続けるようにしている。そのため、各暗号平文変換コネクタ11,12,13,14から暗号文バス7上への暗号化データの送出が完了していないにも拘わらず対応するECUから新しい送信データが次々と入力されるといった事態を防ぐことができ、暗号文バス7上のトラフィック状態に応じた適切な通信の実現が可能となる。
更に、暗号文バス7上へ送出された暗号化データが途中で改竄された場合、それを受信した暗号平文変換コネクタ11,12,13,14は、データに付加された認証子の変化によってその改竄を検出でき、そのデータを無効として対応するECUへ送信しないようにする。そのため、改竄されたデータに基づいて各ECU1,2,3,4が無駄な処理或いは誤った処理を実行してしまうのを防ぐことができる。
ここで、本実施形態の構成要素と本発明の構成要素の対応関係を明らかにする。本実施形態において、暗号平文変換コネクタ−A11を構成するCANトランシーバ41は本発明のノード側受信処理部及びノード側送信処理部に相当し、ECU側CANコントローラ42は本発明の送信データ抽出部、復号送信信号生成部及びノード側確認信号出力手段に相当し、LAN側CANコントローラ45は本発明の暗号化送信信号生成部、暗号化データ抽出部及び送信完了通知手段に相当し、CANトランシーバ46は本発明の通信線側送信処理部及び通信線側受信処理部に相当し、暗号部43は本発明の暗号化手段に相当し、復号部44は本発明の復号手段に相当する。
[第2実施形態]
次に、第2実施形態の車内LANにおけるデータ通信動作について、図6に基づいて説明する。尚、本実施形態の車内LANは、そのハード構成自体は、図1や図3で説明した第1実施形態の車内LAN10と同じである。そのため、車内LANの構成に関する説明は省略し、本実施形態においても図1又は図3を参照して説明する。
そして、本実施形態の車内LANは、第1実施形態の車内LAN10と比較すると、ECU−A1から暗号平文変換コネクタ−A11へデータが送信された後、そのデータが暗号化されて暗号平文変換コネクタ−A11から暗号文バス7上へ完全に送出されるまでの間に、ECU−A1に新規データを再送信させるための方法が異なっている。
即ち、上記第1実施形態では、暗号平文変換コネクタ−A11は、ECU−A1からのデータを受信後、そのデータを暗号化して暗号文バス7上への送出が完了するまで(つまり暗号文バス7を介してACKが返ってくるまで)は、ECU−A1から新規データが送信される度にそのデータに対してACKを返さないようにすることで、ECU−A1にデータの再送信を行わせるようにしていた。
これに対し本実施形態では、暗号化データの暗号文バス7上への送出が完了するまでは、ECU−A1から新規データが送信される度に、そのデータ送信中の所定のタイミングでECU側CANコントローラ42がエラーフレームを生成して平文バス−A21へ送出することにより、強制的にデータの再送を行わせるようにしている。つまり、エラーを検出したからエラーフレームを出力するのではなく、再送させるための手段としてエラーフレームを出力するのである。このようにしてデータを再送させる方式を以下「エラーフレームによる再送要求方式」ともいう。また、このエラーフレームは本発明の停止信号に相当するものである。
既述の通り、CANプロトコルではデータ送信中にエラーフレームを受信すると、そのデータを再送信するように規定されている。そのため、ECU−A1は、データ送信中に暗号平文変換コネクタ−A11側からエラーフレームを受信する度に、そのデータを再送信することになる。そして、暗号平文変換コネクタ−A11からの暗号化データが送信完了すると、ECU側CANコントローラ42は、LAN側CANコントローラ45からの送信完了信号を受けて、エラーフレームの出力をやめる。但しもちろん、本当にエラーを検出した場合は通常通りエラーフレームを出力するのはいうまでもない。
図6に、上述したエラーフレームによる再送要求方式が適用されたデータ通信動作の例を示す。本図において、第1実施形態の図4と異なる点は、時刻t2と時刻t4におけるECU−A1からのデータ送信状態及び平文バス−A21の状態であり、その他は図4と同じである。
時刻t1でECU−A1から送信されたデータXが暗号平文変換コネクタ−A11にて受信されると、時刻t2でECU−A1は次の新たなデータYを出力しようとする。
ところが、暗号平文変換コネクタ−A11では、先に受信したデータXの暗号化データXeをまだ暗号文バス7上へ送出していない。そのため暗号平文変換コネクタ−A11内のECU側CANコントローラ42は、時刻t2でECU−A1から出力開始されたデータYを含むデータフレームに対し、その送信中の所定のタイミングでエラーフレームを出力するのである。これに対し、ECU−A1は、エラーフレームが出力されたことをバスレベルに基づいて判断し、それによってデータ送信を停止する。そして、次の時刻t3で再び同じデータYを送信する。時刻t4におけるデータZの送信の際も全く同様である。
そして、暗号平文変換コネクタ−A11からの暗号化データXeが暗号文バス7上へ完全に送出されると、LAN側CANコントローラ45が送信完了信号を出力するため、時刻t3で再送信されるデータYに対しては、実際にエラーが生じない限り、ACKを返して受信する。時刻t5についても同様である。
このように構成された本実施形態の車内LANによれば、暗号化データが完全に暗号文LAN7上へ送出されるまでの間は、暗号平文変換コネクタ−A11が、ECU−A1にデータを再送信させるためのエラーフレームを生成してECU−A1へ送信するようにしているため、第1実施形態と同様の効果が得られる。
[第3実施形態]
本実施形態の車内LANシステムは、基本的には上記第2実施形態の車内LANと同じであり、ECUにデータの再送信をさせるための方式が若干異なるだけである。
即ち、上記第2実施形態では、各暗号平文変換コネクタ11,12,13,14が「エラーフレームによる再送要求方式」によって対応する各ECU1,2,3,4にデータの再送信をさせるようにし、その具体的方法として、例えばECU−A1からのデータ送信中に暗号平文変換コネクタ−A11が平文バス−A21上へエラーフレームを送出するようにしていた。
これに対し本実施形態では、上記のエラーフレームの送出に代えて、ECU側から送信されてくるデータフレーム中のIDよりも優先順位の高いIDを擬似的に生成して平文バス−A21上へ送出するようにしている。このようにしてデータを再送させる方式を以下「ID調停負けによる再送要求方式」ともいう。また、この擬似的に生成する優先順位の高いIDも、本発明の停止信号に相当するものである。
図7に、本実施形態のデータ通信動作の例を示す。本図において、上記第2実施形態の図6と異なる部分は、時刻t2と時刻t4におけるECU−A1からのデータ送信状態及び平文バス−A21の状態であり、その他は図6と同じである。
図示の如く、本実施形態では、時刻t2においてECU−A1がデータYを含むデータフレームの送信を開始してまずそのID(IDb)が平文バス−A21上へ送出される。すると、暗号平文変換コネクタ−A11内のECU側CANコントローラ42は、このIDbよりも優先順位の高いIDである「000・・・」を平文バス−A21上へ送出する。つまり、ECU−A1側が調停負けするまで、アービトレーションフィールドにおいてドミナントビットを送信し続けるのである。
この擬似的なIDにより調停負けしたECU−A1は、次の時刻t3にて、再びそのデータYを送信する。すると、この場合は既に暗号平文変換コネクタ−A11内で送信完了信号が出力された状態となっているため、暗号平文変換コネクタ−A11は、再送されたデータYに対してACKを返す。時刻t4〜t5についても同様である。
このように構成された本実施形態の車内LANによっても、暗号化データが完全に暗号文LAN7上へ送出されるまでの間は、暗号平文変換コネクタ−A11が、ECU−A1にデータを再送信させるための擬似的なIDを生成(ドミナントビットを連続出力)してECU−A1へ送信するようにしているため、第1実施形態と同様の効果が得られる。
[第4実施形態]
次に、第4実施形態の車内LANを構成するECU及びこれに接続される暗号平文変換コネクタについて、図8に基づいて説明する。尚、図8において、第1実施形態の車内LAN10(図1)とそれを構成するECU−A1及び暗号平文変換コネクタ−A11(図3)と同じ構成要素には、同一の符号を付し、詳細な説明を省略する。
図8に示す如く、本実施形態のECU−A51(他の各ECU−A,ECU−B,ECU−Cも同様)は、第1実施形態のECU−A1からCANトランシーバ33を取り除いた構成となっている。つまり、データリンク層で扱われるビットデータが、対応する暗号平文変換コネクタ−A53との間で送受信されるのである。
そのため、平文バス−A55を介してこのECU−A51に接続される暗号平文変換コネクタ−A53も、第1実施形態の暗号平文変換コネクタ−A11からCANトランシーバ41を取り除いた構成となっている。
つまり、ECU−A51と暗号平文変換コネクタ−A53との間のメッセージのやりとりが、物理層のレベルにまで落として行われるのではなく、データリンク層のレベルのまま行われるのである。
尚、本実施形態の暗号平文変換コネクタ(暗号平文変換コネクタ−A53等)による、対応するECUに対するデータ再送信要求方式としても、第1実施形態の「ACKによる再送要求方式1」、第2実施形態の「エラーフレームによる再送要求方式」、第3実施形態の「ID調停負けによる再送要求方式」のいずれも適用することができる。
このような第4実施形態の構成によれば、暗号平文変換コネクタにおいてECUと接続されるCANトランシーバが不要となると共に、ECUにおいても、暗号平文変換コネクタに接続されるCANトランシーバが不要となるため、ECU及び暗号平文変換コネクタの構成を共に簡素化でき、延いては車内LAN全体をより簡易的に構成することが可能となる。
尚、本実施形態において、ECU−A51は本発明(請求項)の通信ノードに相当し、暗号平文変換コネクタ−A53は同じく本発明(請求項)の暗号化/復号中継装置に相当するものである。
[第5実施形態]
次に、第5実施形態の車内LANを構成するECU及びこれに接続される暗号平文変換コネクタについて、図9に基づいて説明する。尚、図9において、第4実施形態(図8)と同じ構成要素には、同一の符号を付し、詳細な説明を省略する。
図9に示す如く、本実施形態では、図8で説明した第4実施形態のECU−A51とそれに接続される暗号平文変換コネクタ−A53とが一体化され、全体として一つのECU−A60として構成されている。しかも、CPU31及びECU内CANコントローラ32が、暗号平文変換コネクタとして機能する暗号平文変換部62と共に同一の半導体集積回路内に形成された、1チップLSI構成となっている。
つまり、本実施形態では、ECU−A60内に暗号平文変換機能付CAN内蔵マイコン(1チップLSI構成)61が搭載されており、このマイコン61の中に、CPU31,ECU内CANコントローラ32,及び暗号平文変換部62が形成されているのである。この暗号平文変換機能付CAN内蔵マイコン61は、本発明(請求項8)の通信制御装置に相当するものである。
他の各ECUとそれに対応する各暗号平文変換コネクタについても同様であり、いずれも一体化され、且つECU内のCPUとECU内CANコントローラ、及び暗号平文変換部(暗号平文変換コネクタに相当する部分)が1チップLSI化されている。
このような第5実施形態の構成によれば、ECU内のCPU及びCANコントローラと、暗号平文変換コネクタとが一体化され、且つ、これらが1チップLSI化されているため、車内LANの構成をより簡素化することができる。しかも、暗号化されていない状態のデータが送受信される部分、即ちECU内CANコントローラ32とECU側CANコントローラ42との間の通信部分がECU−A60の内部(延いてはマイコン61を構成するLSI内部)に位置している。そのため、暗号化されていないデータが不正に外部に引き出されるのを防ぐことも可能となり、データ通信の秘匿性をより強固にすることが可能となる。
[変形例]
以上、本発明の実施の形態について説明したが、本発明の実施形態は上記各実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
例えば、図4で説明した第1実施形態のデータ通信動作(ACKによる再送要求方式1が適用)では、最初に受信したデータXについてはACKを返すようにし、次にECU−A1から送信されるデータYについては、先のデータXの暗号化データXeが暗号文バス7上へ完全に送出されるまではACKを返さずに再送信させるようにしたが、図10に示すように、最初に送信されるデータXについても、その暗号化データXeが暗号文バス7上へ完全に送出されるまではECU−A1に再送させ続けるようにしてもよい。このようにしてデータを再送させる方式を以下「ACKによる再送要求方式2」ともいう。
即ち、図10に示すように、時刻t1でデータXを含むデータフレームを送信したとき、暗号平文変換コネクタ−A11は、そのデータフレームを受信処理するものの、ACKはまだ返さないのである。そのため、ECU−A1は時刻t2で再び同じデータXを再送することになり、この再送したデータXに対しても、暗号平文変換コネクタ−A11は、まだその暗号化データXeの送出が終わっていないため、やはりACKを返さない。そのため、ECU−A1は次の時刻t3でも同じデータXを再送することになる。
一方、暗号平文変換コネクタ−A11は、時刻t2にて暗号文バス7上へ送出した暗号化データXeに対してACKが返ってくると、LAN側CANコントローラ45がECU側CANコントローラ42へ送信完了信号を出力する。そのため、時刻t3でECU−A1が再送信したデータXに対しては、暗号平文変換コネクタ−A11からACKが返されることになる。そのため、次の時刻t4にて、ECU−A1は、次の新たなデータYを送信することができる。
また、上述した「ACKによる再送要求方式2」が適用されたシステムにおいて、例えばECU−A1とECU−B2とが同時にデータ送信を開始した場合の通信動作は、図11に示すようになる。
図11において、ECU−A1からのデータ送信については、基本的に図10と同じである。一方、ECU−B2からのデータPについても、時刻t1での送信後、そのデータPが暗号平文変換コネクタ−B12で受信はされるものの、それに対して暗号平文変換コネクタ−B12からはACKが返ってこない。そのため、ACKが返ってくるまでは、時刻t2以降もそのデータPを再送信することになる。
そして、時刻t2で、各暗号平文変換コネクタ11,12からそれぞれ暗号化データXe,Peが同時に出力開始されるが、図5で説明した通り、ここではIDa>IDjであるためデータXeが調停に勝って暗号平文変換コネクタ−B12にて受信処理される。暗号平文変換コネクタ−B12からの暗号化データPeについては、調停負けしたことにより、時刻t3にて再送信される。
暗号平文変換コネクタ−B12は、暗号平文変換コネクタ−A11側からの暗号化データXeを受信して元のデータXに復号し、それを時刻t3にてECU−B2側へ(つまり平文バス−B22上へ)送出する。一方このとき、平文バス−B22上には、ECU−B2から再送データPも同時に送出される。
しかし、暗号平文変換コネクタ−B12からのデータXのID(IDa)は、ECU−B2からのデータPのID(IDj)よりも優先順位が高いため、暗号平文変換コネクタ−B12からのデータXを含むデータフレームが調停に勝ち、ECU−B2にて受信処理される。
ECU−B2からのデータPの再送信は、暗号平文変換コネクタ−B12から暗号文バス7への暗号データPeの送出が完了することによりこの暗号平文変換コネクタ−B12内のLAN側CANコントローラが送信完了信号を出力した後の次の再送信タイミング(時刻t4)まで行われる。そして、この時刻t4にて再送信されたデータPに対して暗号平文変換コネクタ−B12がACKを返すことにより、ECU−B2はデータPの再送信を終了する。
また、上記第1〜第4実施形態の車内LANは、各ECUと各暗号平文変換コネクタとが物理的に独立したものとして構成され、それぞれ対応するもの同士が平文バスによって接続された構成とした。そのため、暗号化されていないデータが伝送される部分、即ちECUと暗号平文変換コネクタとの接続部分が外部に露出されることになり、データが不正にモニタされてしまうおそれがある。
そこで、このECUと暗号平文変換コネクタとの接続部分を、外部からモニタ出来ないようにカプセル化するようにしてもよい。更にその場合、カプセル化した接続部分を一旦外すとそれに接続された暗号平文変換コネクタの機能が無効となるように構成してもよい。このようにすれば、例えば想定外のECUが不正に接続されて車両がそのECUにより制御されてしまうといった事態を防ぐことができる。
更に、暗号平文変換コネクタ内の暗号化/復号処理で使用される暗号鍵を外部からモニタできなくするために、例えば暗号鍵が入出力される端子部分に外部からのモニタができなくなるような処理を施すようにしてもよい。
また、上記各実施形態では、車内LANにおける通信プロトコルとしてCANを例に挙げて説明したが、本発明の適用はCANに限定されるものではないことはいうまでもなく、他の通信プロトコルにおいても適用することが可能である。
本実施形態の車内LANの概略構成を示す説明図である。 CANにおける通信データフォーマット(データフレーム)を説明するための説明図である。 車内LANを構成するECU−A及び暗号平文変換コネクタ−Aの概略構成を示す構成図である。 第1実施形態のデータ通信動作を説明するためのタイムチャートである。 第1実施形態のデータ通信動作(送受信が重なった場合)を説明するためのタイムチャートである。 第2実施形態のデータ通信動作を説明するためのタイムチャートである。 第3実施形態のデータ通信動作を説明するためのタイムチャートである。 第4実施形態の車内LANを構成するECU−A及び暗号平文変換コネクタ−Aの概略構成を示す構成図である。 第5実施形態の車内LANを構成するECU−Aの概略構成を示す構成図である。 ACKによる再送要求方式2が適用されたデータ通信動作を説明するためのタイムチャートである。 ACKによる再送要求方式2が適用されたデータ通信動作(送受信が重なった場合)を説明するためのタイムチャートである。 従来の通信システムの概略構成を示す構成図である。
符号の説明
1,51,60・・・ECU−A、2・・・ECU−B、3・・・ECU−C、4・・・ECU−D、7・・・暗号文バス、10・・・車内LAN、11,53・・・暗号平文変換コネクタ−A、12・・・暗号平文変換コネクタ−B、13・・・暗号平文変換コネクタ−C、14・・・暗号平文変換コネクタ−D、21,55・・・平文バス−A、22・・・平文バス−B、23・・・平文バス−C、24・・・平文バス−D、31・・・CPU、32・・・ECU内CANコントローラ、33,41,46・・・CANトランシーバ、42・・・ECU側CANコントローラ、43・・・暗号部、44・・・復号部、45・・・LAN側CANコントローラ、61・・・暗号平文変換機能付CAN内蔵マイコン、62・・・暗号平文変換部

Claims (8)

  1. 車両に搭載され、複数の通信ノードが通信線を介して所定の通信プロトコルにより相互に通信可能に接続された通信システムであって、
    前記各通信ノードと前記通信線との間にそれぞれ設けられ、対応する通信ノードから送信された送信データを暗号化して前記通信線上へ送出し、前記通信線を介して伝送されてきた暗号化されたデータを復号して前記対応する通信ノードへ送信する、暗号化/復号中継装置を備え、
    前記各暗号化/復号中継装置は、対応する前記通信ノードとの間における前記送信データの受信を含む通信、及び他の前記暗号化/復号中継装置との間における前記暗号化されたデータの受信を含む通信を、共に前記通信プロトコルにて行うよう構成されており、
    前記通信ノードは、送信すべき送信データを、その送信データを含む所定のフォーマットのノード送信信号として送信し、外部からのデータを正常に受信したときはその旨を示す受信確認信号を出力し、自身が前記送信データを送信したときは、その送信データに対する外部からの前記受信確認信号を受信するまではその送信データを再送信するよう構成されており、
    前記暗号化/復号中継装置は、
    対応する通信ノードからの前記ノード送信信号を受信するノード側受信手段と、
    前記ノード側受信手段により受信されたノード送信信号に含まれる前記送信データを暗号化して暗号化送信データとする暗号化手段と、
    前記暗号化手段にて暗号化された暗号化送信データを前記フォーマットの暗号化送信信号として前記通信線上へ送出する通信線側送信手段と、
    当該暗号化/復号中継装置以外の他の暗号化/復号中継装置から前記通信線を介して伝送されてきた前記暗号化送信信号を受信する通信線側受信手段と、
    前記通信線側受信手段により受信された暗号化送信信号に含まれる前記暗号化送信データを元の前記送信データに復号する復号手段と、
    前記復号手段にて復号された送信データを前記フォーマットの復号送信信号として前記対応する通信ノードへ送信するノード側送信手段と、
    前記通信線を介して伝送されてきたデータを正常に受信したときに前記受信確認信号を前記通信線上へ送出する通信線側確認信号出力手段と、
    対応する前記通信ノードから送信された前記ノード送信信号を正常に受信したときに前記受信確認信号をその対応する通信ノードへ出力するノード側確認信号出力手段と、
    前記通信線側送信手段が前記暗号化送信信号を前記通信線上へ送出したとき、その暗号化送信信号に対する他の前記暗号化/復号中継装置からの前記受信確認信号を前記通信線を介して受信したならば、その旨を示す送信完了信号を前記ノード側確認信号出力手段へ出力する送信完了通知手段と、
    を備え、
    前記ノード側確認信号出力手段は、対応する前記通信ノードから送信された前記ノード送信信号を正常に受信した場合、前記送信完了通知手段からの前記送信完了信号を受信するまでは該通信ノードへの前記受信確認信号の出力は行わず、該送信完了信号を受信したときに、対応する通信ノードへ前記受信確認信号を出力する
    ことを特徴とする通信システム。
  2. 車両に搭載され、複数の通信ノードが通信線を介して所定の通信プロトコルにより相互に通信可能に接続された通信システムであって、
    前記各通信ノードと前記通信線との間にそれぞれ設けられ、対応する通信ノードから送信された送信データを暗号化して前記通信線上へ送出し、前記通信線を介して伝送されてきた暗号化されたデータを復号して前記対応する通信ノードへ送信する、暗号化/復号中継装置を備え、
    前記各暗号化/復号中継装置は、対応する前記通信ノードとの間における前記送信データの受信を含む通信、及び他の前記暗号化/復号中継装置との間における前記暗号化されたデータの受信を含む通信を、共に前記通信プロトコルにて行うよう構成されており、
    前記通信ノードは、送信すべき送信データを、その送信データを含む所定のフォーマットのノード送信信号として送信し、前記送信データを送信中に外部から所定の停止信号を受信した場合は、その送信中の送信データを再送信するよう構成されており、
    前記暗号化/復号中継装置は、
    対応する通信ノードからの前記ノード送信信号を受信するノード側受信手段と、
    前記ノード側受信手段により受信されたノード送信信号に含まれる前記送信データを暗号化して暗号化送信データとする暗号化手段と、
    前記暗号化手段にて暗号化された暗号化送信データを前記フォーマットの暗号化送信信号として前記通信線上へ送出する通信線側送信手段と、
    当該暗号化/復号中継装置以外の他の暗号化/復号中継装置から前記通信線を介して伝送されてきた前記暗号化送信信号を受信する通信線側受信手段と、
    前記通信線側受信手段により受信された暗号化送信信号に含まれる前記暗号化送信データを元の前記送信データに復号する復号手段と、
    前記復号手段にて復号された送信データを前記フォーマットの復号送信信号として前記対応する通信ノードへ送信するノード側送信手段と、
    前記ノード側受信手段にて前記ノード送信信号を受信すると、そのノード送信信号に対応した前記暗号化送信信号の前記通信線上への送出が完了するまでは、対応する通信ノードからノード送信信号が送信される度に、その送信中における所定のタイミングで前記停止信号を該対応する通信ノードへ出力する停止信号出力手段と、
    前記通信線側送信手段による前記暗号化送信信号の送出が完了したときにその旨を示す送信完了信号を前記停止信号出力手段へ出力する送信完了通知手段と、
    を備え、
    前記停止信号出力手段は、前記送信完了通知手段から前記送信完了信号を受信するまでは、前記タイミングでの前記停止信号の出力を行う
    ことを特徴とする通信システム。
  3. 請求項1又は2記載の通信システムであって、
    前記通信ノードは、ビットデータ形式の前記ノード送信信号を、前記通信線を伝送可能な形式にコード化して通信線上へ送出するよう構成されており、
    前記暗号化/復号中継装置を構成する前記各手段のうち、
    前記ノード側受信手段は、対応する通信ノードからの前記コード化された前記ノード送信信号をビットデータに変換するノード側受信処理部と、そのノード側受信処理部からのビットデータ形式の前記ノード送信信号から前記送信データを抽出して前記暗号化手段へ出力する送信データ抽出部とを備え、
    前記通信線側送信手段は、前記暗号化手段により暗号化された暗号化送信データに基づいてビットデータ形式の前記暗号化送信信号を生成する暗号化送信信号生成部と、その生成した暗号化送信信号を前記コード化して前記通信線上へ送出する通信線側送信処理部とを備え、
    前記通信線側受信手段は、前記通信線を介して伝送されてきた、前記コード化された前記暗号化送信信号をビットデータに変換する通信線側受信処理部と、その通信線側受信処理部からのビットデータ形式の前記暗号化送信信号から前記暗号化送信データを抽出して前記復号手段へ出力する暗号化データ抽出部とを備え、
    前記ノード側送信手段は、前記復号手段により復号された前記送信データに基づいてビットデータ形式の前記復号送信信号を生成する復号送信信号生成部と、その生成した復号送信信号を前記コード化して前記対応する通信ノードへ送出するノード側送信処理部とを備えている
    ことを特徴とする通信システム。
  4. 請求項1又は2記載の通信システムであって、
    前記通信ノードは、ビットデータ形式の前記ノード送信信号を、前記通信線を伝送可能な形式にコード化せずにそのまま出力するよう構成されており、
    前記暗号化/復号中継装置を構成する前記各手段のうち、
    前記ノード側受信手段は、対応する通信ノードからの前記ノード送信信号から前記送信データを抽出して前記暗号化手段へ出力する送信データ抽出部を備え、
    前記通信線側送信手段は、前記暗号化手段により暗号化された暗号化送信データに基づいてビットデータ形式の前記暗号化送信信号を生成する暗号化送信信号生成部と、その生成した暗号化送信信号を前記コード化して前記通信線上へ送出する通信線側送信処理部とを備え、
    前記通信線側受信手段は、前記通信線を介して伝送されてきた、前記コード化された前記暗号化送信信号をビットデータに変換する通信線側受信処理部と、その通信線側受信処理部からのビットデータ形式の前記暗号化送信信号から前記暗号化送信データを抽出して前記復号手段へ出力する暗号化データ抽出部とを備え、
    前記ノード側送信手段は、前記復号手段により復号された前記送信データに基づいてビットデータ形式の前記復号送信信号を生成し、前記対応する通信ノードへ送出するノード側送信処理部を備えている
    ことを特徴とする通信システム。
  5. 請求項1〜4いずれかに記載の通信システムであって、
    前記暗号化/復号中継装置は、
    前記送信データを暗号化する際、その送信データに所定の認証データを付加して暗号化し、
    前記通信線を介して伝送されてきた暗号化されたデータを復号したとき、復号後のデータに含まれる前記認証データが正規のものであるか否か判断し、正規のものでなければ、その復号後のデータを無効とする
    ことを特徴とする通信システム。
  6. 請求項1〜5いずれかに記載の通信システムであって、
    前記暗号化/復号中継装置とそれに対応する通信ノードとが同一の半導体集積回路内に形成されている
    ことを特徴とする通信システム。
  7. 請求項1〜5いずれかに記載の通信システムに用いられる暗号化/復号中継装置であって、
    当該各請求項において暗号化/復号中継装置に関して記載した構成を備えることを特徴とする暗号化/復号中継装置。
  8. 請求項記載の通信システムを構成する通信ノード及び暗号化/復号中継装置として用いられ、前記半導体集積回路内に形成される通信制御装置であって、
    当該請求項において通信ノード及び暗号化/復号中継装置に関して記載した構成を備えることを特徴とする通信制御装置。
JP2004164866A 2004-06-02 2004-06-02 通信システム、暗号化/復号中継装置、及び通信制御装置 Expired - Fee Related JP4774684B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004164866A JP4774684B2 (ja) 2004-06-02 2004-06-02 通信システム、暗号化/復号中継装置、及び通信制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004164866A JP4774684B2 (ja) 2004-06-02 2004-06-02 通信システム、暗号化/復号中継装置、及び通信制御装置

Publications (2)

Publication Number Publication Date
JP2005348064A JP2005348064A (ja) 2005-12-15
JP4774684B2 true JP4774684B2 (ja) 2011-09-14

Family

ID=35500029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004164866A Expired - Fee Related JP4774684B2 (ja) 2004-06-02 2004-06-02 通信システム、暗号化/復号中継装置、及び通信制御装置

Country Status (1)

Country Link
JP (1) JP4774684B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008109205A (ja) * 2006-10-23 2008-05-08 Tokai Rika Co Ltd 暗号通信装置
CN102783093B (zh) 2010-02-26 2016-12-21 株式会社自动网络技术研究所 通信连接器、通信线束及通信系统
JP5310761B2 (ja) * 2011-03-04 2013-10-09 トヨタ自動車株式会社 車両ネットワークシステム
JP5377614B2 (ja) * 2011-11-07 2013-12-25 三菱電機株式会社 通信管理装置
JP2024041375A (ja) * 2022-09-14 2024-03-27 株式会社Gsユアサ 管理装置、蓄電装置、システム及び通信方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0685851A (ja) * 1992-09-01 1994-03-25 Oki Electric Ind Co Ltd 中継装置間の同期ずれ軽減装置
JPH10256972A (ja) * 1997-03-10 1998-09-25 Omron Corp 通信システム
JP2000013368A (ja) * 1998-06-25 2000-01-14 Hitachi Ltd 秘話用接続装置
JP3844904B2 (ja) * 1999-03-31 2006-11-15 三菱電機株式会社 車両制御通信システム
JP3854055B2 (ja) * 2000-10-16 2006-12-06 株式会社リコー インターネットファクシミリゲートウェイ装置およびその制御方法
JP2002135743A (ja) * 2000-10-24 2002-05-10 Yazaki Corp 映像配信用のネットワークシステムのセキュリティ方式
US20030051131A1 (en) * 2001-08-31 2003-03-13 Juergen Reinold Vehicle active network with data encryption
JP3867604B2 (ja) * 2002-03-27 2007-01-10 株式会社デンソー 車両用走行距離積算計

Also Published As

Publication number Publication date
JP2005348064A (ja) 2005-12-15

Similar Documents

Publication Publication Date Title
CN108494725B (zh) 一种车载can总线报文的加密通信方法
JP6126980B2 (ja) ネットワーク装置およびネットワークシステム
JP6477281B2 (ja) 車載中継装置、車載通信システム及び中継プログラム
EP3050251B1 (en) Real-time frame authentication using id anonymization in automotive networks
CN104412537B (zh) 用于配对的方法、配对装置以及遥控钥匙
US11245673B2 (en) Method for communicating data from a sensor device to an electronic control unit, a sensor device and an electronic control unit
KR20140122188A (ko) 센서 및/또는 센서의 센서 데이터의 조작 검출 방법
WO2013175633A1 (ja) 通信装置、通信システム及び通信方法
CN107836095B (zh) 用于在网络中产生秘密或密钥的方法
WO2018017566A1 (en) Hash-chain based sender identification scheme
WO2017057165A1 (ja) 車載通信システム
Halabi et al. A lightweight synchronous cryptographic hash chain solution to securing the vehicle CAN bus
US10311005B2 (en) Message translator
JP2017121091A (ja) Ecu、及び車用ネットワーク装置
KR20130021157A (ko) 차량용 데이터의 인증 및 획득 방법 및 시스템
JP4774684B2 (ja) 通信システム、暗号化/復号中継装置、及び通信制御装置
JP2018182767A (ja) Ecu、ネットワーク装置、及び車用ネットワーク装置
JP2004048474A (ja) エレベータのデータ伝送装置
JP2023519059A (ja) ネットワークのセキュリティ手段を高めるネットワーク上におけるデータ交換のための方法およびシステムおよびその種のシステムを包含する乗り物
KR101705639B1 (ko) 차량 네트워크 시스템에서의 메시지 송수신 방법
JP6620696B2 (ja) 電子制御装置
JP7132132B2 (ja) 車載通信システム、車載通信制御装置、車載通信装置、コンピュータプログラム、通信制御方法及び通信方法
CN109194490B (zh) 一种配电网通信安全认证系统及方法
Fujioka et al. Implementation and Evaluation of an Efficient MAC Based on OMAC for CAN on 8-Bit Microcomputer
JP7328419B2 (ja) 車載通信システム、車載通信装置、コンピュータプログラム及び通信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101005

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101206

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110531

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110613

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees