JP2024500544A - データ伝送方法及び装置 - Google Patents
データ伝送方法及び装置 Download PDFInfo
- Publication number
- JP2024500544A JP2024500544A JP2023539381A JP2023539381A JP2024500544A JP 2024500544 A JP2024500544 A JP 2024500544A JP 2023539381 A JP2023539381 A JP 2023539381A JP 2023539381 A JP2023539381 A JP 2023539381A JP 2024500544 A JP2024500544 A JP 2024500544A
- Authority
- JP
- Japan
- Prior art keywords
- key
- message
- fresh value
- data
- vehicle device
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 239
- 230000005540 biological transmission Effects 0.000 title claims abstract description 133
- 230000006854 communication Effects 0.000 claims description 89
- 238000004891 communication Methods 0.000 claims description 88
- 238000004590 computer program Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 description 27
- 238000004422 calculation algorithm Methods 0.000 description 20
- 238000009795 derivation Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 13
- 230000003068 static effect Effects 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 102100034112 Alkyldihydroxyacetonephosphate synthase, peroxisomal Human genes 0.000 description 2
- 101000799143 Homo sapiens Alkyldihydroxyacetonephosphate synthase, peroxisomal Proteins 0.000 description 2
- 238000000848 angular dependent Auger electron spectroscopy Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/068—Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1475—Passive attacks, e.g. eavesdropping or listening without modification of the traffic monitored
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/043—Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
- H04W12/0433—Key management protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/44—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/46—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for vehicle-to-vehicle communication [V2V]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/48—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W92/00—Interfaces specially adapted for wireless communication networks
- H04W92/16—Interfaces between hierarchically similar devices
- H04W92/18—Interfaces between hierarchically similar devices between terminal devices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
この出願は、データ伝送方法及び装置を開示する。データ伝送方法が第1デバイスに適用されるとき、当該方法は、第1デバイスによって送信されるメッセージに対応するフレッシュ値が第1フレッシュ値であるとき、暗号化キーを第1キーから第2キーに更新し、第1フレッシュ値と第2キーとに基づいて第1キーストリームを生成し、第1キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得し、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成し、第1メッセージを第2デバイスに送信することを含む。
Description
この出願は、インテリジェントネットワーク化車両の分野に関し、特に、データ伝送方法及び装置に関する。
車両産業全体、特に、自動運転又は支援運転の分野におけるインテリジェンスの絶え間ない発展に伴い、車両走行プロセスにおけるデータ伝送に対するセキュリティ要求がますます高くなっている。車両の車載デバイス間の通信のプロセスにおいて、悪意ある攻撃者が、通信のプロセスにおいて伝送されるデータに対して盗聴、改変、又はリプレイアタックを行うかもしれない。これは、車両の自動運転又は支援運転のセキュリティに深刻な影響を与える。
現在、車両内の異なる車載デバイス間でデータが伝送されるとき、データに対する攻撃者の改変又はリプレイアタックは考慮されていない。結果として、車載デバイス間でのデータ伝送のセキュリティは低く、インテリジェント車両のセキュリティ要求を満たすことは困難である。
この出願は、車両内の異なる車載デバイス間でのデータ伝送のセキュリティを改善するためのデータ伝送方法を提供する。
第1態様によれば、この出願は、第1デバイスに適用されるデータ伝送方法を提供する。第1デバイスは、車載デバイス、路側デバイス、ネットワーク側デバイス、又は車両内のこれらに類似のデバイスとすることができ、又は、第1デバイスは、第1車載デバイス、路側デバイス、又はネットワーク側デバイス内のチップであってもよい。あるいは、第1デバイスは、車両と別のデバイスとの間のデータ伝送を実装することができる機能又はモジュールであってもよい。例えば、当該方法が車両内通信に適用される場合、第1デバイス及び第2デバイスは、同一車両内の車載デバイスとし得る。当該方法が車車間通信に適用される場合、第1デバイス及び第2デバイスは、相異なる車両の車載デバイスとし得る。当該方法が車車間通信に適用されるとき、第1デバイスは、車両内の車載デバイスとすることができ、あるいは、ネットワーク側デバイスとすることができる。当該方法が車両と路側デバイスとの間の通信に適用される場合、第1デバイスは、該車両内の車載デバイスとすることができ、あるいは、路側デバイスとすることができる。当該方法が、路側デバイスと路側デバイスとの間、又は路側デバイスとネットワーク側デバイスとの間の通信に適用される場合、第1デバイスは、路側デバイスであることができ、あるいは、車両内のネットワーク側デバイスであることができる。
当該方法は、第1デバイスによって送信されるメッセージに対応するフレッシュ値が第1フレッシュ値であるとき、暗号化キーを第1キーから第2キーに更新し、第1フレッシュ値と第2キーとに基づいて第1キーストリームを生成し、第1キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得し、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成し、第1メッセージを第2デバイスに送信することを含み得る。
なお、第1デバイスが第1メッセージを送信する前、例えば、第1メッセージの前のメッセージを送信するとき、メッセージに対応するフレッシュ値は、第1フレッシュ値の前のフレッシュ値であり、第1デバイスは、そのメッセージの送信が終了した時点を、第1メッセージを送信する時点として使用し得る。あるいは、要件に基づいて、第1メッセージが送信される必要があると決定したとき、第1デバイスは、この時点が第1メッセージを送信する時点であると決定し得る。あるいは、第1デバイスは更に、第1メッセージを送信する前の予め設定された期間を、第1メッセージを送信する時点として使用してもよい。この予め設定された期間は、第1メッセージを生成するために使用される時間に基づいて決定されることができ、又は暗号化キーを第1キーから第2キーに更新するために使用される時間に基づいて決定されることができ、又は他の要件に基づいて決定されてもよい。これはここで限定されることではない。
上述の方法によれば、第1デバイスは、フレッシュ値が特定の値に達した(例えば、フレッシュ値のオーバーフローに起因してフレッシュ値が初期値に戻った)後にキーストリームが依然として元のキーを用いることによって導出される場合に、過去に送信されたメッセージにおいて使用されたものと同じキーストリームを使用することによって生じるセキュリティリスクの問題を良好に解決することができ、それにより、データ伝送のセキュリティを効果的に改善する。
取り得る一実装において、第1デバイスは更に、第2デバイスによって送信された第3メッセージを受信することができ、ここで、第3メッセージは、第2デバイスが暗号化キーを第2キーに更新することを指し示すために使用される指示情報を含み、そして、第3メッセージに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新することができる。
上述の方法によれば、第1デバイスは、受信した、第2デバイスによって送信された第3メッセージに基づいて、第2デバイスが第2キーに更新したと決定することを可能にされ、その結果、第1デバイスは、第2キーに対応する対応復号キーを用いることによって、受信した第2デバイスのメッセージをより良好に復号することができ、それ故に、第1デバイスと第2デバイスとの間でのデータ伝送のプロセスにおける暗号化及び復号の成功率が改善され、遅延が効果的に低減される。
一部の実施形態において、第3メッセージを復号するプロセスにおいて、第1デバイスは、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し得る。例えば、第1デバイスは、第2キーに対応する復号キーを用いることによって、指示情報に基づいて第3メッセージを復号することができ、第3メッセージの成功裏に復号したとき、第1デバイスは、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新する。斯くして、第3メッセージが伝送すべきデータを搬送するとき、第2デバイスがキーを更新したと第1デバイスが決定したときにデータ伝送は影響されず、それ故に、データ伝送効率及びデータ伝送性能が改善される。
取り得る一実装において、第1デバイスは更に、第3メッセージに基づいて第1キーを削除し得る。
上述の方法によれば、第1デバイスが、第3メッセージに基づいて、第2デバイスがキーを更新したと決定したとき、第1デバイスは第1キーを削除することができ、その結果、第1デバイスの記憶空間の占有を減らすことができる。
取り得る一実装において、第3メッセージは、暗号化された第3データ、第3メッセージのフレッシュ値、及び第1識別子を含み、上記指示情報は該第1識別子である。
上述の方法によれば、第1デバイスは、第3メッセージ内で搬送された第1識別子に基づいて、第2デバイスが第2キーに更新したと決定し得る。斯くして、第3メッセージが伝送すべき第3データを搬送するとき、第2デバイスがキーを更新したと第1デバイスが決定したときに、第1デバイスによって第3データを受信する効果及び効率が改善され、データ伝送効率及びデータ伝送性能が改善される。
取り得る一実装において、第3メッセージは、暗号化された第3データ及び第3メッセージのフレッシュ値を含み、上記指示情報は、特定の条件を満たす第3メッセージのフレッシュ値である。
上述の方法によれば、メッセージフォーマットを変更することなく、第1デバイスは、第3メッセージにて搬送された、特定の条件を満たす第3メッセージのフレッシュ値に基づいて、第2デバイスがキーを更新したと決定し得る。斯くして、第2キーに対応する対応復号キーを用いて復号を実行することができ、その結果、第1デバイスと第2デバイスとの間で第3データを伝送するプロセスにおける暗号化及び復号の成功率が改善され、遅延が効果的に減少される。
取り得る一実装において、上記特定の条件は、第3メッセージのフレッシュ値と、第1デバイスによって最後に受信された第2デバイスからのメッセージのフレッシュ値との間に、プリセットされた値が存在すること、を含む。
上述の方法によれば、第1デバイスは、第3メッセージのフレッシュ値と、第1デバイスによって最後に受信された第2デバイスからのメッセージのフレッシュ値との間の、プリセットされた値に基づいて、第3メッセージのフレッシュ値が特定の条件を満たすと判定し得る。斯くして、第2デバイスがキーを更新したと決定され、メッセージフォーマットを変更することなく、第1デバイスと第2デバイスとの間でのデータ伝送の効率及びセキュリティが改善される。
取り得る一実装において、第1メッセージを第2デバイスに送信した後に、第1デバイスは、切替識別子を有効状態に設定し、第3メッセージと、切替識別子が有効状態であることとに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し、そして、第1デバイスが復号キーを第1キーに対応する復号キーから第2キーに対応する復号キーに更新した後に、第1デバイスは、切替識別子を無効状態に設定する。
上述の方法によれば、第1デバイスと第2デバイスとの間でのデータ伝送のプロセスにおいてパケット損失が発生し得ることを考慮し、第3メッセージについての第1デバイスの誤判定を減らするために、第1デバイスは、第1メッセージを第2デバイスに送信した後に、切替識別子を有効状態に設定し得る。斯くして、切替識別子が有効状態であるときに第3メッセージが受信される場合、第3メッセージのフレッシュ値と、第1デバイスによって最後に受信された第2デバイスからのメッセージのフレッシュ値との間の、プリセットされた値に基づいて、第3メッセージのフレッシュ値が特定の条件を満たすと判定される。しかしながら、第1デバイスが復号キーを第1キーに対応する復号キーから第2キーに対応する復号キーに更新した後、第1デバイスは、切替識別子を無効状態に設定する。この場合、切替識別子が無効状態であるときにメッセージが受信される場合には、該メッセージのフレッシュ値と、第1デバイスによって最後に受信された第2デバイスからのメッセージのフレッシュ値との間の、プリセットされた値に基づいて、該メッセージがパケット損失によって引き起こされているかもしれないと決定され得る。斯くして、第1デバイスと第2デバイスとの間でのデータ伝送の効率及びセキュリティをより良く改善することができる。
取り得る一実装において、第1メッセージを第2デバイスに送信した後に、第1デバイスは更に、タイマーを開始し得る。タイマーが満了したときに、第1デバイスは、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し得る。
一部の実施形態において、第1デバイスが、第2デバイスによって送信されたメッセージを長時間にわたって受信することができないとき、すなわち、タイマーが満了したとき、第1デバイスは、互いによって送受信されるメッセージに対して暗号化及び復号を実行するのに第2キーを用いることについて、第2デバイスとの暗黙の合意に達したと決定し得る。従って、この場合、第1デバイスは、復号キーを第1キーに対応する復号キーから第2キーに対応する復号キーに更新する。斯くして、該方法を用いてタイマーを開始することにより、第2デバイスによって送信されたメッセージを長時間にわたって受信することができないときに、後に受信される第2デバイスのメッセージを復号するのに依然として第1キーに対応する復号キーが使用されることが回避され、その結果、第2デバイスによって送信されるメッセージの、第1デバイスによる復号の成功率が改善される。
取り得る一実装において、当該方法は更に、タイマーが満了したときに、第1キーを削除することを含む。
上述の方法によれば、互いによって送受信されるメッセージに対して暗号化及び復号を実行するのに第2キーを用いることについて第2デバイスとの暗黙の合意に達したと、第1デバイスが決定し得るとき(例えば、タイマーが満了したとき)、第1デバイスは第1キーを削除することができ、その結果、第1デバイスの記憶空間の占有を減らすことができる。
取り得る一実装において、当該方法は更に、タイマーが満了していないとき、第1キーに対応する復号キーを用いることによって、第2デバイスから第1デバイスに送信されたメッセージを復号することを含む。
上述の方法によれば、互いによって送受信されるメッセージに対して暗号化及び復号を実行するのに第2キーを用いることについて第2デバイスとの暗黙の合意に第1デバイスが達していないとき(例えば、タイマーが満了していないとき)、第1デバイスは、第1キーに対応する復号キーを用いることによって、第2デバイスから第1デバイスに送信されたメッセージを復号することができ、その結果、第2デバイスによって送信されたメッセージの第1デバイスによる復号の成功率が改善される。
取り得る一実装において、当該方法は更に、タイマーが満了していないときに、第2デバイスから第1デバイスに送信されたメッセージが、第1キーに対応する復号キーを用いることによって成功裏に復号されることができない場合に、第2キーに対応する復号キーを用いることによって、第2デバイスから第1デバイスに送信されたメッセージを復号することを含む。
上述の方法によれば、第2デバイスから第1デバイスに送信されたメッセージを、第1キーに対応する復号キーを用いて成功裏に復号することができない場合に、第2デバイスから第1デバイスに送信されたメッセージは、第2キーに対応する復号キーを用いることによって復号され、その結果、第2デバイスによって送信されたメッセージの第1デバイスによる復号の成功率が改善される。
取り得る一実装において、当該方法は更に、第2デバイスによって送信された第4メッセージを受信し、第4メッセージが第2フレッシュ値を含むことに基づいて、暗号化キーを第2キーから第3キーに更新し、第3キーと、第1デバイスによって送信されるものであり且つ第2データを搬送する第5メッセージのフレッシュ値と、に基づいて第2キーストリームを生成し、第2キーストリームに基づいて第2データを暗号化して、暗号化された第2データを取得し、暗号化された第2データとフレッシュ値とに基づいて第5メッセージを生成し、第5メッセージを第2デバイスに送信することを含む。
第2デバイスが第1デバイスにメッセージを送信するときに、メッセージのフレッシュ値が特定の値(例えば、第2フレッシュ値)に達するためにセキュリティリスクが発生し得ることを考慮し、第2デバイスが第4メッセージを第1デバイスに送信するとき、第4メッセージのフレッシュ値は第2フレッシュ値である。これは、フレッシュ値が第2フレッシュ値であるとき、第2デバイスは、暗号化キーを第2キーから第3キーに更新し、第2フレッシュ値と第3キーとに基づいて第4メッセージを生成することを示す。従って、第1デバイスは、第4メッセージが第2フレッシュ値を含むことに基づいて、暗号化キーを第2キーから第3キーに更新し得る。第1デバイスが次のメッセージ(例えば、第5メッセージ)を送信すべきとき、第1デバイスは、第3キーと、送信すべき、第2データを搬送する第5メッセージのフレッシュ値と、に基づいて第5メッセージを生成し得る。斯くして、第2デバイスが第1デバイスにメッセージを送信するとき、第1デバイスと第2デバイスとの間のメッセージのフレッシュ値も特定の値に達することができ、キーを更新することができ、その結果、データ伝送のセキュリティが改善される。
取り得る一実装において、第2デバイスによって送信された第4メッセージを受信した後に、第1デバイスは更に、第4メッセージが第2フレッシュ値を含むことに基づいて、第3キーに一致する復号キーを用いることによって第4メッセージを成功裏に復号し得る。
上述の方法によれば、第4メッセージのフレッシュ値が第2メッセージであるとき、第1デバイスは、第4メッセージのキーが第3キーであると決定し得る。斯くして、第1デバイスは、第3キーに対応する復号キーを用いることによって第4メッセージを復号し得る。斯くして、第2デバイスが第1デバイスにメッセージを送信するとき、第1デバイスと第2デバイスとの間のメッセージのフレッシュ値も特定の値に達することができ、キーを更新することができ、その結果、データ伝送のセキュリティが改善され、第1デバイスによる第4メッセージの復号の成功率も改善される。
第2態様によれば、この出願は、第2デバイスに適用されるデータ伝送方法を提供する。第2デバイスは、車載デバイス、路側デバイス、ネットワーク側デバイス、又は車両内のこれらに類似のデバイスとすることができ、又は、第2デバイスは、車載デバイス、路側デバイス、又はネットワーク側デバイス内のチップであってもよい。あるいは、第2デバイスは、車両と別のデバイスとの間のデータ伝送を実装することができる機能又はモジュールであってもよい。例えば、当該方法が車両内通信に適用される場合、第2デバイス及び第1デバイスは、同一車両内の車載デバイスとし得る。当該方法が車車間通信に適用される場合、第2デバイス及び第1デバイスは、相異なる車両の車載デバイスとし得る。当該方法が車車間通信に適用されるとき、第2デバイスは、車両内の車載デバイスとすることができ、あるいは、ネットワーク側デバイスとすることができる。当該方法が車両と路側デバイスとの間の通信に適用される場合、第2デバイスは、該車両内の車載デバイスとすることができ、あるいは、路側デバイスとすることができる。当該方法が、路側デバイスと路側デバイスとの間、又は路側デバイスとネットワーク側デバイスとの間の通信に適用される場合、第2デバイスは、路側デバイスであることができ、あるいは、車両内のネットワーク側デバイスであることができる。
当該方法は、第1デバイスからの第1メッセージを受信し、該第1メッセージは、暗号化された第1データと、該第1メッセージのフレッシュ値とを含み、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し、第1フレッシュ値と、第2キーに対応する復号キーとに基づいて、第1メッセージを復号して、第1データを取得することを含む。
上述の方法によれば、第1メッセージの第1フレッシュ値を受信したとき、第2デバイスは、第1メッセージに使用されるキーが第2キーであると決定し得る。従って、第1メッセージを復号するプロセスにおいて、復号キーが、第1キーに対応する復号キーから第2キーに対応する復号キーに更新され得る。斯くして、フレッシュ値が特定の値に達した(例えば、フレッシュ値のオーバーフローに起因してフレッシュ値が初期値に戻った)後に受信されたメッセージを復号するために新しいキーが使用され、過去に送信されたメッセージのものとは異なるキーストリームが使用されることを確保し、それにより、データ伝送のセキュリティを効果的に改善する。
取り得る一実装において、当該方法は更に、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、暗号化キーを第1キーから第2キーに更新し、第2キーを用いることによって暗号化された第3データを含む第3メッセージを第1デバイスに送信することを含む。
一部の実施形態において、第2デバイスは、第2キーを用いることによって第3データを直接暗号化して、暗号化された第3データを生成し得る。一部の他の実施形態において、第2デバイスは代わりに、第2キーと第3メッセージのフレッシュ値とを用いることによって第3キーストリームを生成し、第3キーストリームを用いることによって第3データを暗号化してもよい。これはここで限定されることではない。
上述の方法によれば、第1メッセージを受信した後、第2デバイスは、暗号化キーを第1キーから第2キーに更新することができ、その結果、第3メッセージを生成するときに、第2デバイスは、更新された第2キーを用いて第3データを暗号化することができる。従って、第1デバイスが第2キーに更新して第1メッセージを送信した後に、第2デバイスは、更新された第2キーに基づいて、送る第3メッセージを暗号化し得ることが確保され、その結果、第1デバイスと第2デバイスとの間でのデータ伝送のプロセスにおける暗号化及び復号の成功率が改善され、遅延が効果的に減少される。
取り得る一実装において、第3メッセージは更に、第2デバイスが暗号化キーを第2キーに更新することを指し示すために使用される指示情報を含む。
上述の方法によれば、第3メッセージが送信すべきデータを搬送するとき、第2デバイスは指示情報を搬送し得る。斯くして、第3メッセージを受信した後、第1デバイスは、指示情報に基づいて、第2デバイスがキーを更新したと決定することができ、その結果、第1デバイスは、更新された第2キーに対応する復号キーに基づいて第3メッセージを復号することができ、それ故に、データ伝送の効率及びデータ伝送のセキュリティが改善される。
取り得る一実装において、第3メッセージは更に第1識別子を含み、上記指示情報は該第1識別子である。
上述の方法によれば、第2デバイスは、第3メッセージ内で第1識別子を搬送することで、第2デバイスがキーを更新したことを示すことができ、その結果、第1デバイスが第3データを受信することの効果及び効率が改善される。
取り得る一実装において、第3メッセージは更に、第3メッセージのフレッシュ値を含み、上記指示情報は、特定の条件を満たす第3メッセージのフレッシュ値である。
上述の方法によれば、第2デバイスは、特定の条件を満たす第3メッセージのフレッシュ値を第3メッセージ内で搬送し、メッセージフォーマットを変更することなく指示情報を送信することができ、その結果、メッセージオーバーヘッドが低減される。
取り得る一実装において、特定の条件は、第3メッセージのフレッシュ値と、第2デバイスによって第1デバイスに最後に送信されたメッセージのフレッシュ値との間に、プリセットされた値が存在すること、を含む。
上述の方法によれば、第2デバイスは、第3メッセージのフレッシュ値を、第3メッセージのフレッシュ値と、第2デバイスによって第1デバイスに最後に送信されたメッセージのフレッシュ値との間の、プリセットされた値に設定することができ、その結果、第3メッセージを受信した後、第2デバイスは、第3メッセージのフレッシュ値と第1デバイスによって最後に受信されたメッセージのフレッシュ値との間のプリセットされた値に基づいて、第3メッセージのフレッシュ値が特定の条件を満たすと判定し、そして、第2デバイスがキーを更新したと決定することができる。斯くして、第2キーに対応する復号キーが復号に用いることができ、その結果、第1デバイスと第2デバイスとの間で第3データを伝送するプロセスにおける暗号化及び復号の成功率が改善され、遅延が効果的に減少させることができる。
第3態様によれば、この出願はデータ伝送装置を提供し、当該装置は第1デバイスとすることができる。当該データ伝送装置は、通信ユニット、暗号化ユニット、及びキー更新ユニットを含み得る。オプションで、当該データ伝送装置は更に復号ユニットを含み得る。キー更新ユニットは、第1デバイスによって送信されるメッセージに対応するフレッシュ値が第1フレッシュ値であるとき、暗号化キーを第1キーから第2キーに更新するように構成され、暗号化ユニットは、第1フレッシュ値と第2キーとに基づいて第1キーストリームを生成し、該第1キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得するように構成され、生成ユニットは、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成するように構成され、通信ユニットは、第1メッセージを第2デバイスに送信するように構成される。
取り得る一実装において、通信ユニットは更に、第2デバイスによって送信された第3メッセージを受信するように構成され、該第3メッセージは、第2デバイスが暗号化キーを第2キーに更新することを指し示すために使用される指示情報を含み、キー更新ユニットは更に、第3メッセージに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新するように構成される。
取り得る一実装において、キー更新ユニットは更に、第3メッセージに基づいて第1キーを削除するように構成される。
取り得る一実装において、第3メッセージは、暗号化された第3データ、第3メッセージのフレッシュ値、及び第1識別子を含み、上記指示情報は該第1識別子である。
取り得る一実装において、第3メッセージは、暗号化された第3データ及び第3メッセージのフレッシュ値を含み、上記指示情報は、特定の条件を満たす第3メッセージのフレッシュ値である。
取り得る一実装において、特定の条件は、第3メッセージのフレッシュ値と、第1デバイスによって最後に受信された第2デバイスからのメッセージのフレッシュ値との間に、プリセットされた値が存在すること、を含む。
取り得る一実装において、通信ユニットが第1メッセージを第2デバイスに送信した後に、キー更新ユニットは更に、切替識別子を有効状態に設定し、第3メッセージと、切替識別子が有効状態であることとに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し、且つ、復号キーが、第1キーに対応する復号キーから第2キーに対応する復号キーに更新された後に、切替識別子を無効状態に設定する、ように構成される。
取り得る一実装において、通信ユニットが第1メッセージを第2デバイスに送信した後に、キー更新ユニットは更に、タイマーを開始し、該タイマーが満了したときに、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新するように構成される。
取り得る一実装において、キー更新ユニットは更に、タイマーが満了したときに、第1キーを削除するように構成される。
取り得る一実装において、当該装置は更に復号ユニットを含み、復号ユニットは、タイマーが満了していないとき、第1キーに対応する復号キーを用いることによって、第2デバイスから第1デバイスに送信されたメッセージを復号するように構成される。
取り得る一実装において、復号ユニットは更に、タイマーが満了していないときに、第2デバイスから第1デバイスに送信されたメッセージが、第1キーに対応する復号キーを用いることによって成功裏に復号されることができない場合に、第2キーに対応する復号キーを用いることによって、第2デバイスから第1デバイスに送信されたメッセージを復号するように構成される。
取り得る一実装において、通信ユニットは更に、第2デバイスによって送信された第4メッセージを受信し、第5メッセージを第2デバイスに送信するように構成され、キー更新ユニットは更に、第4メッセージが第2フレッシュ値を含むことに基づいて、暗号化キーを第2キーから第3キーに更新するように構成され、暗号化ユニットは更に、第3キーと、第2デバイスによって送信されるものであり且つ第2データを搬送する第5メッセージのフレッシュ値と、に基づいて第2キーストリームを生成し、該第2キーストリームに基づいて第2データを暗号化して、暗号化された第2データを取得するように構成され、生成ユニットは更に、暗号化された第2データとフレッシュ値とに基づいて第5メッセージを生成するように構成される。
取り得る一実装において、当該装置は更に復号ユニットを含む。通信ユニットが、第2デバイスによって送信された第4メッセージを受信した後に、復号ユニットは更に、第4メッセージが第2フレッシュ値を含むことに基づいて、第3キーに一致する復号キーを用いることによって第4メッセージを成功裏に復号するように構成される。
第4態様によれば、この出願はデータ伝送装置を提供し、当該装置は第2デバイスとすることができる。当該装置は、通信ユニット、復号ユニット、及びキー更新ユニットを含む。オプションで、当該データ伝送装置は更に暗号化ユニットを含み得る。通信ユニットは、第1デバイスからの第1メッセージを受信するように構成され、第1メッセージは、暗号化された第1データと、該第1メッセージのフレッシュ値とを含み、キー更新ユニットは、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新するように構成され、復号ユニットは、第1フレッシュ値と、第2キーに対応する復号キーとに基づいて、第1メッセージを復号して、第1データを取得するように構成される。
取り得る一実装において、キー更新ユニットは更に、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、暗号化キーを第1キーから第2キーに更新するように構成され、通信ユニットは更に、第2キーを用いることによって暗号化された第3データを含む第3メッセージを第1デバイスに送信するように構成される。
取り得る一実装において、第3メッセージは更に、第2デバイスが暗号化キーを第2キーに更新することを指し示すために使用される指示情報を含む。
取り得る一実装において、第3メッセージは更に第1識別子を含み、上記指示情報は該第1識別子である。
取り得る一実装において、第3メッセージは更に、第3メッセージのフレッシュ値を含み、上記指示情報は、特定の条件を満たす第3メッセージのフレッシュ値である。
取り得る一実装において、特定の条件は、第3メッセージのフレッシュ値と、第2デバイスによって第1デバイスに最後に送信されたメッセージのフレッシュ値との間に、プリセットされた値が存在すること、を含む。
第5態様によれば、この出願は、プロセッサと通信インタフェースとを含むデータ伝送装置を提供する。通信インタフェースは、当該データ伝送装置以外の他の通信装置から信号を受信して該信号をプロセッサに送信したり、プロセッサからの信号を当該データ伝送装置以外の他の通信装置に送信したりするように構成される。プロセッサは、ロジック回路を用いること又はコード命令を実行することによって、第1態様の実装のうちのいずれかの実装に従った方法、又は第2態様の実装のうちのいずれかの実装に従った方法を実行するように構成される。
第6態様によれば、この出願はデータ伝送装置を提供する。当該装置はプロセッサを含むことができ、該プロセッサはメモリに接続され、該メモリはコンピュータプログラムを格納するように構成され、プロセッサが、メモリに格納されたコンピュータプログラムを実行するように構成されることで、第1態様の実装のうちのいずれかの実装に従った方法又は第2態様の実装のうちのいずれかの実装に従った方法を当該装置が実行することを可能にする。
第7態様によれば、この出願は車両を提供する。当該車両は、第3態様又は第5態様に従ったデータ伝送装置を含み、あるいは、第4態様又は第6態様に従った係るデータ伝送装置を含む。
第8態様によれば、この出願はコンピュータ読み取り可能記憶媒体を提供する。当該コンピュータ読み取り可能記憶媒体はコンピュータプログラムを格納し、該コンピュータプログラムが実行されるときに、第1態様の実装のうちのいずれかの実装に従った方法又は第2態様の実装のうちのいずれかの実装に従った方法が実行される。
第9態様によれば、この出願は、コンピュータプログラムプロダクトを提供する。当該コンピュータプログラムプロダクトはコンピュータプログラム又は命令を含み、該コンピュータプログラム又は命令が通信装置によって実行されるときに、第1態様の実装のうちのいずれかの実装に従った方法又は第2態様の実装のうちのいずれかの実装に従った方法が実行される。
第10態様によれば、この出願はチップを提供する。当該チップはプロセッサ及びインタフェースを含むことができ、該プロセッサは、該インタフェースを介して命令を読み取って、第1態様の実装のうちのいずれかの実装に従った方法又は第2態様の実装のうちのいずれかの実装に従った方法を実行するように構成される。
第2態様から第10態様の具体的な有益な効果については、第1態様又は第2態様の対応する取り得る実装において達成され得る技術的効果を参照されたい。詳細をここで再び説明することはしない。
以下では、当業者にとって用語の理解を容易にするために、この出願における幾つかの用語を説明及び記述する。
1.リプレイアタック
リプレイアタック(replay attack)は、再生攻撃又はリピート攻撃とも呼ばれ、攻撃者が、宛先ホストによって受信されたパケットを送信してシステムを偽装することを示し、主に、アイデンティティ認証プロセスにおける認証の正確性を損ねるために使用される。
リプレイアタック(replay attack)は、再生攻撃又はリピート攻撃とも呼ばれ、攻撃者が、宛先ホストによって受信されたパケットを送信してシステムを偽装することを示し、主に、アイデンティティ認証プロセスにおける認証の正確性を損ねるために使用される。
リプレイアタックの基本原理は以下の通りである。盗聴されたデータが受信器に再送される。例えば、システムは、認証情報を送信する前に認証情報を単に暗号化する。この場合、攻撃者は、パスワードを盗聴することはできないが、暗号化されたパスワードを傍受し、暗号化されたパスワードを再生し、斯くして効果的な攻撃を放つことができる。
2.キーストリーム
短いランダムキー(実際のキー又はシードキーとも呼ばれる)を用いることによって長いキーストリームが生成され、該長いキーストリームを用いて平文を暗号化したり、暗号文を復号したりして、短いキーを用いて、より長い平文を暗号化したり、より長い暗号文を復号したりすることができる。短いランダムキーは、交渉を通じて送信者及び受信者によって決定されたキーであってもよいし、受信者の識別子に基づいて対応して設定されるキーであってもよいし、送信者の識別子に基づいて対応して設定されるキーであってもよい。これはここで限定されることではない。この出願において、送信器及び受信器は車載デバイスとし得る。
短いランダムキー(実際のキー又はシードキーとも呼ばれる)を用いることによって長いキーストリームが生成され、該長いキーストリームを用いて平文を暗号化したり、暗号文を復号したりして、短いキーを用いて、より長い平文を暗号化したり、より長い暗号文を復号したりすることができる。短いランダムキーは、交渉を通じて送信者及び受信者によって決定されたキーであってもよいし、受信者の識別子に基づいて対応して設定されるキーであってもよいし、送信者の識別子に基づいて対応して設定されるキーであってもよい。これはここで限定されることではない。この出願において、送信器及び受信器は車載デバイスとし得る。
3.排他的論理和(exclusive OR,xor)演算
排他的論理和の数学記号は、
である。aとbとが異なる場合、排他的論理和の結果は1であり、aとbとが同じである場合、排他的論理和の結果は0である。
排他的論理和の数学記号は、
4.最下位ビット(least significant bit,LSB)
LSBは、二進数での0番目のビット(すなわち、最下位ビット)を指し、20の重みを持つ。ビッグエンディアン(Big-Endian)シナリオでは、すなわち、上位バイトがメモリの下位アドレスに配置され、下位バイトがメモリの上位アドレスに配置される場合、LSBは最も右のビットを指す。
LSBは、二進数での0番目のビット(すなわち、最下位ビット)を指し、20の重みを持つ。ビッグエンディアン(Big-Endian)シナリオでは、すなわち、上位バイトがメモリの下位アドレスに配置され、下位バイトがメモリの上位アドレスに配置される場合、LSBは最も右のビットを指す。
5.最上位ビット(most significant bit,MSB)
MSBは、nビットの2進数における(n-1)番目のビットを指し、最も高い重み2(n-1)を持つ。MSBとLSBは対応する概念である。ビッグエンディアンシナリオでは、MSBは最も左のビットを指す。
MSBは、nビットの2進数における(n-1)番目のビットを指し、最も高い重み2(n-1)を持つ。MSBとLSBは対応する概念である。ビッグエンディアンシナリオでは、MSBは最も左のビットを指す。
この出願において、“少なくとも1つ”は1つ以上を意味し、“複数”は2つ以上を意味する。“以下のアイテム(ピース)のうちの少なくとも1つ”又はその類似表現は、単数のアイテム(ピース)又は複数のアイテム(ピース)の任意の組み合わせを含め、それらのアイテムの任意の組み合わせを指す。例えば、a、b、又はcのうちの少なくとも1つは、a、b、c、aとb、aとc、bとc、又はaとbとc、を示すことができ、ここで、a、b、及びcは、単数であってもよいし複数であってもよい。また、“及び/又は”は、関連するオブジェクト間の連関関係を記述し、3つの関係が存在し得ることを表す。例えば、A及び/又はBは、以下のケース、すなわち、Aのみが存在する、AとBの両方が存在する、そして、Bのみが存在する、というケースを表すことができ、ここでA及びBは単数であってもよいし複数であってもよい。この出願のテキスト記述において、文字“/”は、概して、関連オブジェクト間の“又は”関係を示す。この出願の式において、文字“/”は、関連オブジェクト間の“除算”関係を示す。
理解され得ることには、この出願の実施形態における様々な番号は、説明を容易にするための区別のために使用されるにすぎず、この出願の実施形態の範囲を限定するために使用されてはいない。上述のプロセスのシーケンス番号は実行順序を意味しておらず、プロセスの実行順序は、プロセスの機能及び内部ロジックに基づいて決定されるべきである。用語“第1”及び“第2”などは、同様の対象間での区別のために使用され、特定の順序又は順番を記述するために使用されるわけではない。また、用語“含む”、“有する”、及びそれらの任意の変形は、非排他的な包含をカバーすることを意図しており、例えば、一連のステップ又はモジュールを含む。方法、システム、プロダクト、又はデバイスは、必ずしも、明確に列挙されたステップ又はモジュールに限定されるわけではなく、明確には列挙されていない他のステップ又はモジュールや、そのようなプロセス、方法、プロダクト、又はデバイスに生来的に備わる他のステップ又はモジュールを含んでいてもよい。
図1は、この出願の一実施形態が適用可能な通信システムのアーキテクチャの概略図である。例えば、当該通信システムは、電子・電気(electronic and electrical,E/E)システムである。当該通信システムは、ゲートウェイと、ドメインコントローラと、電子制御ユニット(electronic control unit,ECU)と、少なくとも1つのコントローラローカルエリアネットワーク(controller area network,CAN)バスプロトコルバスとを含み得る。当該通信システムは、機能に基づいて複数の異なるドメインに分割され得る。各ドメインが、少なくとも1つのドメインコントローラを含むことができ、各ドメインコントローラが、ドメイン内の1つ以上のCANバスに接続された複数のECUを管理するように構成される。図1に示すように、ドメインコントローラ1は、ドメイン内の車両制御システムCANバスに接続された複数のECUを管理するように構成され、ドメインコントローラ2は、ドメイン内のエンターテインメントシステムCANバスに接続された複数のECUを管理するように構成され、ドメインコントローラ3は、ドメイン内の診断システムCANバスに接続された複数のECUを管理するように構成され、ドメインコントローラ4は、ドメイン内のインテリジェント運転システムCANバスに接続された複数のECUを管理するように構成される。ドメインコントローラもECUとすることができる。当該通信システム内の各ドメインコントローラはゲートウェイに属する。図1に示すように、ドメインコントローラ1、ドメインコントローラ2、ドメインコントローラ3、及びドメインコントローラ4は別々にゲートウェイに属する。例えば、ゲートウェイは、当該通信システム外のECUを当該通信システムから隔離するように構成されるとともに、当該通信システム内のECU間のプロトコル変換を実施することができる。ゲートウェイもECUであってよい。図1は概略図にすぎない。当該通信システムは更に、他のデバイスを含んでいてもよく、例えば、図1には示していないが、中継デバイスを更に含んでいてもよい。当該通信システムに含まれる様々なCANバスに接続されたゲートウェイ、ドメインコントローラ、及びECUの数は、この出願において限定されることではない。
当該通信システムは、通信機能を有する車両、車載デバイス、自動運転における無線端末、車載ネットワークチップ、及びこれらに類するものを含み得る。当該通信システムが適用可能なシナリオは、この出願において限定されるものではない。なお、この出願に記載されるシステムアーキテクチャ及びアプリケーションシナリオは、この出願における技術的ソリューションをより明確に説明することを意図しているが、この出願において提供される技術的ソリューションを限定することは意図していない。当業者が知り得ることには、システムアーキテクチャが進化し、新しいシナリオが出現するにつれて、この出願において提供される技術的ソリューションは同様の技術的問題にも適用可能である。
この出願における車載デバイスは、車両に配置又は設置されるデバイス又はモジュールとし得る。自律運転機能を実行することができる車両では、センサのような車載デバイスによって収集された情報がADASシステム及びモバイルデータセンタ(mobile data center,MDC)によって処理された後に、運転決定が実施され得る。
また、車両の車載ネットワークに含まれる複数のECUも車載デバイスと見なされ得る。車両内のセンサのような車載デバイスによって収集された情報は、代わりに、ECUを用いることによって処理されて、次いで、処理のためにADASシステムのプロセッサ又はMDCのプロセッサに送信されてもよい。他の一例では、車載デバイスは代わりに、ゲートウェイコントローラ(gateway controller)であってもよい。ゲートウェイコントローラは、車両ネットワークのためのデータインタラクションハブとして機能し、例えば車載コントローラエリアネットワーク(controller area network,CAN)、ローカルインターコネクトネットワーク(local interconnect network,LIN)、メディア指向システムトランスポート(media oriented system transport,MOST)、及び車載ネットワークFlexRayなどのネットワークデータを異なるネットワーク内でルーティングすることができる。ゲートウェイコントローラは、車両トポロジ構造のスケーラビリティ、車両セキュリティ、及び車両ネットワークデータの機密性を改善するために、独立して設定され得る。例えば、ゲートウェイコントローラは、車載インテリジェント端末(telematics BOX,T-BOX)であってもよい。車載インテリジェント端末は、主に、車両と車両サービスプラットフォームのインターネットとの間の通信に使用され、例えばオンボード診断(on-board diagnostics,OBD)、マイクロコントローラユニット(microcontroller unit,MCU)/中央処理ユニット(central processing unit,CPU)、メモリ、及び通信インタフェースなどのモジュールを含み得る。車両内部の各デバイス又はモジュールは、命令及び情報の伝送を実施するためにCANバスに接続され、車両の外部は、車両の内部及び外部で情報インタラクションを実施するためにクラウドプラットフォームを介して端末デバイスと相互接続される。
なお、この出願のこの実施形態が適用可能な通信システムは、図1に示すE/Eアーキテクチャに基づく車載ネットワーク通信システムに限定されず、別のアーキテクチャ形態に基づく車載ネットワーク通信システムであってもよいし、あるいは、例えば、車両と車両との間、車両とネットワーク側デバイスとの間、車両と路側デバイスとの間、路側デバイスと路側デバイスとの間、又は路側デバイスとネットワーク側デバイスとの間の通信といった、車外ネットワーク通信システムであってもよい。
この出願の取り得る一シナリオは、車両内の車載デバイス間でのデータ伝送であるとし得る。データ伝送は、例えばCANバスを介した有線伝送であってもよいし、無線伝送であってもよい。これはここで限定されることではない。例えば、第1車載デバイスと第2車載デバイスとの間でデータが伝送される。第1車載デバイスは車載カメラとすることができ、第2車載デバイスはモバイルデータセンタMDCとすることができ、伝送されるデータはビデオ画像データとすることができる。第1車載デバイスと第2車載デバイスとの間で伝送されるデータが例えば自律運転などのシナリオで使用されるメディアデータであり得ることを考慮すると、第1車載デバイスと第2車載デバイスとの間で伝送されるデータに対するセキュリティ要件は高く、データインテグリティ及びデータセキュリティを検証する必要がある。加えて、自律運転の遅延要件を考慮すると、第1車載デバイスによって第2車載デバイスに送信されるメディアデータのデータ量は大きく、データ伝送レートも非常に高く、データセキュリティ検証の要件が更に改善される。
取り得る一実装において、メッセージが送信されるときに各車載デバイスに対してフレッシュ値が設定され得る。例えば、第1車載デバイスのフレッシュ値は、第1車載デバイスが第2車載デバイスにメッセージを送信する回数を記録するために使用されることができ、第2車載デバイスのフレッシュ値は、第2車載デバイスが第1車載デバイスにメッセージを送信する回数を記録するために使用されることができる。一部の実施形態において、第1車載デバイスはローカルにカウンタを維持し、該カウンタは、第1車載デバイスがメッセージを送信する回数を記録するように構成される。例えば、第1車載デバイスは第1メッセージを送信し、第1車載デバイスのカウンタは、第1車載デバイスのフレッシュ値を1だけ増加させる。例えば、第1メッセージを送信するとき、第1車載デバイスは、異なる第1メッセージに、時系列に基づいて、対応するフレッシュ値を割り当て得る。例えば、時系列に基づいて、第1車載デバイスによって送信される第1メッセージは、それぞれ、メッセージA、メッセージB、及びメッセージCである。第1車載デバイスは、メッセージAのフレッシュ値00000000をメッセージAに割り当て得る。第1車載デバイスは、メッセージBのフレッシュ値00000001をメッセージBに割り当て得る。第1車載デバイスは、メッセージCのフレッシュ値00000010をメッセージCに割り当て得る。
第1車載デバイスは、第1メッセージのフレッシュ値及びキー(例えば、上述のシードキー)を用いることによってキーストリームを決定し、該キーストリームを用いることによって第1データを暗号化して、暗号化された第1データを取得し、暗号化された第1データ及び第1メッセージのフレッシュ値を用いることによって第1メッセージを生成し、そして、第1メッセージを第2車載デバイスに送信することで、第1メッセージを送信するために第1車載デバイスによって使用されるキーストリームが毎回異なるようにされ、その結果、第1車載デバイスによって暗号化されたデータを送信することのセキュリティが改善され、第1車載デバイスによって送信される第1メッセージが盗聴されて改ざんされる可能性が低減される。暗号化された第1データが攻撃者によって盗まれたとしても、第1データを復号することはできない。
また、第2車載デバイスは、現在受信した第1メッセージがリプレイメッセージであるかを判定するために、受信した第1メッセージのフレッシュ値を、ローカルに記憶されている最後に受信した第1メッセージのフレッシュ値と比較し得る。例えば、メッセージを送信する回数に基づいて第1車載デバイスのフレッシュ値が増加するシナリオを一例として用いる。現在受信した第1メッセージのフレッシュ値が、第2車載デバイスにローカルに記憶されている最後に受信した第1メッセージのフレッシュ値よりも大きい場合、又は第1メッセージのフレッシュ値と第2車載デバイスにローカルに記憶されている最後に受信した第1メッセージのフレッシュ値とが昇順である場合、第2車載デバイスは、現在受信した第1メッセージが改ざんされていないと見なす。例えば、メッセージAを受信したとき、第2車載デバイスは、メッセージAのフレッシュ値00000000を記憶し得る。メッセージBが受信されると、先ず、メッセージBのフレッシュ値01が記憶されたフレッシュ値00000000よりも大きいかが検証され得る。メッセージBのフレッシュ値が記憶されたフレッシュ値よりも大きい場合、それは、現在受信したメッセージBがフレッシュであることを示す。そうでない場合には、現在受信したメッセージBはフレッシュではなく、ある人物が伝送メッセージ(例えば、メッセージA)を不正に再送信していると見なされる。上述のプロセスがリプレイアタックプロセスである。フレッシュ値が第1メッセージに付加され、その結果、リプレイアタックを防止することができ、データセキュリティを改善することができる。
しかしながら、フレッシュ値の長さは限られている(一般的に24ビット)。第1メッセージのフレッシュ値が第1フレッシュ値に達した後、第1メッセージのフレッシュ値は、過去の第1メッセージのフレッシュ値と同となる。第1フレッシュ値は、フレッシュ値の任意の範囲内の1つ以上の特定の値とし得る。例えば、第1フレッシュ値は、フレッシュ値の初期値とし得る。この場合、フレッシュ値のオーバーフローによってフレッシュ値が初期値に戻されるとき(例えば、フレッシュ値がシーケンス番号であるとき、シーケンス番号が反転される)、キーストリームが依然として元のキーを用いることによって導出されると、キーストリームが過去に送信されたメッセージで使用されたものと同じであるケースが発生してしまうことができ、それによりセキュリティリスクを引き起こす。特に、車載有線伝送シナリオでは、伝送レートが非常に高いので、フレッシュ値がオーバーフローしたときに初期値に戻る頻度がより速い。それは10Gbpsのレートで推定される。フレッシュ値が24ビットであると仮定すると、1秒当たりに送信されるデータパケットの数は500,000であり、すなわち、フレッシュ値が33.56秒ごとにオーバーフローするときに、初期値に戻る。
これに基づき、この出願のこの実施形態では、第1車載デバイスが第1メッセージを送信することを一例として用いる。第1メッセージを送信する前に、第1車載デバイスは、第1キーを用いることによって、送信すべきデータを暗号化するために使用されるキーストリームを生成する。対応して、第2車載デバイスは、受信した第1メッセージを第1キーに基づいて復号する。送信すべき第1メッセージに対応するフレッシュ値が第1フレッシュ値であると決定したとき、第1車載デバイスは、更新された第2キー(第2キーは第1キーとは異なる)を用いて、第2車載デバイスに送信すべき第1データを暗号化し、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成する。第1メッセージを受信した後、第2車載デバイスは、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、更新された第2キーを用いることによって第1メッセージを復号することを決定する。
例えば、第1メッセージのフレッシュ値は8ビットであり、初期値は00000000に設定される。第1車載デバイスが第2車載デバイスにデータパケットを送信するたびに、第1メッセージのフレッシュ値が一回累積される。例えば、第1車載デバイスが第1データパケットを第2車載デバイスに送信するとき、第1メッセージのフレッシュ値は00000000である。第1車載デバイスが第2データパケットを第2車載デバイスに送信するとき、第1メッセージのフレッシュ値は00000001である。第1車載デバイスが28データパケットを第2車載デバイスに送信するとき、第1メッセージのフレッシュ値は11111111である。換言すれば、第1メッセージのフレッシュ値が再び00000000に達する前、第1車載デバイスは、第1キーを用いることによって暗号化演算を実行して第1メッセージを生成し、第2車載デバイスは、第1キーを用いることによって復号演算を実行して第1メッセージを解析する。第1車載デバイスが次のデータパケットを第2車載デバイスに送信するとき、第1メッセージのフレッシュ値は再び00000000であり、すなわち、第1メッセージのフレッシュ値が第1フレッシュ値に達する。この場合、第1車載デバイスは、更新された第2キーを用いることによって暗号化演算を実行して第1メッセージを生成し、第2車載デバイスは、更新された第2キーを用いることによって復号演算を実行して第1メッセージを解析する。
対応して、第2車載デバイスが第2メッセージを第1車載デバイスに送信することを一例として用いる。第2メッセージを送信する前に、第2車載デバイスは、第3キーを用いることによって、送信すべきデータを暗号化するために使用されるキーストリームを生成する。対応して、第1車載デバイスは、受信した第2メッセージを第3キーに基づいて復号する。送信すべき第2メッセージに対応するフレッシュ値が第2フレッシュ値であると決定したとき、第2車載デバイスは、更新された第4キー(第4キーは第3キーとは異なる)を用いて、第1車載デバイスに送信すべき第2データを暗号化し、暗号化された第2データと第2フレッシュ値とに基づいて第2メッセージを生成する。第2メッセージを受信した後、第1車載デバイスは、第2メッセージのフレッシュ値が第2フレッシュ値であることに基づいて、更新された第4キーを用いることによって第2メッセージを復号することを決定する。
上述の方法によれば、フレッシュ値が特定の値に到達した後に元のキーが依然として使用されるためにセキュリティリスクが存在するという問題を良好に解決することができる。
送信すべきデータを暗号化するために第1車載デバイスによって使用されるキー(第1キー及び第2キーを含む)、並びに送信すべきデータを暗号化するために第2車載デバイスによって使用されるキー(第3キー及び第4キーを含む)は、それぞれ第1車載デバイス及び第2車載デバイスによって維持管理される二組のキーとすることができ(シナリオ1)、あるいは、第1車載デバイス及び第2車載デバイスによって共同で維持管理される同じ組のキーとすることができる(シナリオ2)。以下、シナリオ1及びシナリオ2を別々に詳細に説明する。
シナリオ1:第1キーの第2キーへの更新は、第1メッセージのフレッシュ値を第1フレッシュ値に変えることによってのみトリガされ、第3キーの第4キーへの更新は、第2メッセージのフレッシュ値を第2フレッシュ値に変えることによってのみトリガされる。斯くして、第1車載デバイス及び第2車載デバイスの各々によって送信すべきメッセージに対応するフレッシュ値が特定の値に到達したときに、第1車載デバイスが第2キーを用いデータを送信すること、及び第2車載デバイスが第4キーを用いデータを送信することが確保される。斯くして、キーストリームがフレッシュ値とともに繰り返されないことが保証され、第1車載デバイスと第2車載デバイスとの間でのデータ伝送のセキュリティが改善される。
シナリオ2:第1車載デバイス及び第2車載デバイスは、互いにメッセージを送信するときに、共同管理しているキーのセットを用いることによって暗号化及び復号演算を実行する。第1車載デバイスによって送信される第1メッセージのフレッシュ値は第1フレッシュ値に変化し、第2車載デバイスによって送信される第2メッセージのフレッシュ値は第2フレッシュ値に変化する。2つのトリガイベントのいずれかが発生すると、第1車載デバイス及び第2車載デバイスは、共同管理しているキーを更新する。
例えば、時点1の前、第1車載デバイス及び第2車載デバイスは、第1キーに基づいて、互いの間で送受信されるメッセージに対して暗号化及び復号を実行する。時点1にて、第1車載デバイスが、第2車載デバイスに送信すべき第1メッセージに対応するフレッシュ値が第1フレッシュ値に再び変化すると決定すると、第1車載デバイスは、第1メッセージを生成するのに使用されるキーを第1キーから第2キーに更新し、そして、第1メッセージを第2車載デバイスに送信する。時点1と時点2との間に第1車載デバイスと第2車載デバイスとの間でメッセージインタラクションが存在せず、且つ第1車載デバイスが、互いによって送受信されるメッセージに対して暗号化及び復号を実行するのに更新された第2キーを用いることについて、第2車載デバイスとの暗黙の合意に達すると仮定する。時点2にて、第2車載デバイスが、第2車載デバイスによって送信される第2メッセージに対応するフレッシュ値が再び第2フレッシュ値に変化すると決定すると、第2車載デバイスは、第2メッセージを生成するのに使用されるキーを第2キーから第3キーに更新し、そして、第2メッセージを第1車載デバイスに送信する。更新された第3キーと、第2メッセージのフレッシュ値が第2フレッシュ値であることとに基づいて、時点2の後、第1車載デバイスは、互いによって送受信されるメッセージの暗号化及び復号を実行するのに更新された第3キーを用いることについて、第2車載デバイスとの暗黙の合意に達する。
以下、この出願のこの実施形態におけるキー生成方式を具体的に説明する。
シナリオ1において、第1車載デバイスは、第1メッセージのフレッシュ値が第1フレッシュ値に到達することに依拠することのみによって第1キーを更新し、第2車載デバイスは、第2メッセージのフレッシュ値が第2フレッシュ値に到達することに依拠することのみによって第3キーを更新する。
一部の実施形態において、車両が始動されるとき、又は車両が初期化されるとき、第1車載デバイスによって第2車載デバイスに送信されるデータの記憶された初期キーが、第1車載デバイスが第2車載デバイスにデータを送信する前に最初に特定の値に達する第1キー(すなわち、第1メッセージのフレッシュ値が第1フレッシュ値に達していないキー)として使用され得る。0回目に更新される第1キーは、予め設定されたキーであってもよいし、車両が始動されるとき最初に生成されるキーであってもよい。これはここで限定されることではない。
一部の実施形態において、車両が始動されるとき、又は車両が初期化されるとき、第2車載デバイスによって第1車載デバイスに送信されるデータの記憶された初期キーが、第2車載デバイスが第1車載デバイスにデータを送信する前に最初に特定の値に達する第3キー(すなわち、第2メッセージのフレッシュ値が第2フレッシュ値に達していないキー)として使用され得る。0回目に更新される第3キーは、予め設定されたキーであってもよいし、車両が始動されるとき最初に生成されるキーであってもよい。これはここで限定されることではない。
この出願のこの実施形態において、更新されたキーを決定するための複数の方式が存在し得る。以下では、方式A及び方式Bを例として用いて、第2キーを生成する方式を説明する。第4キーを生成する方式については、第2キーを生成する方式を参照されたい。詳細をここで再び説明することはしない。
方式A:第1車載デバイスは、古いキーに基づいて、第1メッセージが生成されるときの暗号化演算に使用される新しいキー(第2キー)を更新し、第2車載デバイスは、古いキーに基づいて、第1メッセージが解析されるときの復号演算に使用される新しいキー(第2キー)を更新する。
方式A1:新しいキーを導出するのに特定の時間がかかることを考慮して、第2キーを生成するプロセスにおいて、第1車載デバイス及び第2車載デバイスは、第1メッセージのフレッシュ値が第1フレッシュ値に到達する前に、特定の時間だけ前もって第2キーを生成し得る。対応して、第3キーを第4キーに更新するプロセスにおいて、第1車載デバイス及び第2車載デバイスは、第2メッセージのフレッシュ値が第2フレッシュ値に到達する前に、特定の時間だけ前もって第4キーを生成し得る。
例えば、第1閾値が、例えば10000000といった特定のフレッシュ値に設定され得る。第1フレッシュ値が10000000であると決定したとき、第1車載デバイスは、第1メッセージのフレッシュ値が第1フレッシュ値に達することになると決定し得る。対応して、第2フレッシュ値が第2閾値に達したとき、第2メッセージのフレッシュ値が第2フレッシュ値に達することになると決定される。この時点で、キーを更新するステップが開始され得る。なお、第1閾値は、第1フレッシュ値の値域及び第1フレッシュ値の更新頻度に基づいて決定されることができ、第2閾値も、第2フレッシュ値の値域及び第2フレッシュ値の更新頻度に基づいて決定されることができる。確かなことには、代わりに別の方式で決定されてもよい。これはここで限定されることではない。
一部の実施形態において、現在使用されている第1キーがキー導出アルゴリズムに基づいて導出されて、更新された第2キーを取得し得る。ここで、キー導出アルゴリズムは、第1車載デバイス及び第2車載デバイスによって事前に合意され得る。例えば、キー導出アルゴリズムはキー導出関数(key derivation function,KDF)とし得る。オプションで、キー導出アルゴリズムは更に第1パラメータを含んでもよい。第1パラメータは、キーを更新する回数、CAN識別子、及びECU識別子のうちの1つ以上を含み得る。確かなことには、キー導出アルゴリズムは、例えば、第1車載デバイス又は第2車載デバイスの認証証明書のようなパラメータといった、他のパラメータを更に含んでもよい。CAN識別子は、第1車載デバイスに接続されたCANバスの識別子である。図1を参照するに、第1車載デバイスが車両制御システムCANバスに接続されたECUである場合、CANの識別子は車両制御システムCANバスの識別子であり、あるいは、第1車載デバイスが診断システムCANバスに接続されたECUである場合、CANの識別子は診断システムCANバスの識別子である。ECU識別子は、1つのECUを一意に特定することができ、すなわち、第1車載デバイスの識別子である。
なお、特定の実装プロセスでは、第2キーは、現在使用されている第1キーに基づいて生成されてもよいし、過去に使用されていた少なくとも1つの別の古いキーに基づいて生成されてもよい。確かなことには、第2キーは別の方式で生成されてもよい。これはここで限定されることではない。第1車載デバイスによって第2キーを生成する方式が、第2車載デバイスによって第2キーを生成する方式と同じであることが保証されさえすればよい。
方式A2:第1車載デバイス及び第2車載デバイスがキーを導出するのに使用するリソースを減らすために、キーは、第1車載デバイス及び第2車載デバイスにおいて予め設定されていてもよい。すなわち、一群のシーケンシャルキーが予め決定され、第1車載デバイス及び第2車載デバイスにおいて事前設定され得る。第1車載デバイス又は第2車載デバイスがキーを更新する必要があるとき、新しいキーが、事前設定された一群のシーケンシャルキーのグループから順番に選択される。
オプションで、第1メッセージ内の第1データが第2キーを用いることによって暗号化されることを決定した後、第1車載デバイスは第1キーを削除し得る。第1車載デバイスが第1キーを削除した後、第1車載デバイスは、第1メッセージのフレッシュ値が次の第1フレッシュ値に達していないとき、現在使用される第2キーを第1キーとしてデータを暗号化し、次の第1メッセージのフレッシュ値が第1フレッシュ値に達するまで、次に更新される第2キーを用いることによって第1データを暗号化して第1メッセージを生成するステップを実行して、第1車載デバイスのオーバーヘッドを減少させ得る。
対応して、第1メッセージ内の第1データが第2キーを用いることによって成功裏に復号されたと決定した後、第2車載デバイスは第1キーを削除し得る。第2車載デバイスが第1キーを削除した後、第2車載デバイスは、第1メッセージのフレッシュ値が次の第1フレッシュ値に達していないとき、現在使用される第2キーを第1キーとして、受信した第1メッセージ内の第1データを復号し、次の第1メッセージのフレッシュ値が第1フレッシュ値に達するまで、次に更新される第2キーを用いることによって第1メッセージ内の第1データを復号するステップを実行して、第2車載デバイスのオーバーヘッドを減少させ得る。
オプションで、第2メッセージ内の第2データが第4キーを用いることによって暗号化されることを決定した後、第2車載デバイスは第3キーを削除し得る。第2車載デバイスが第3キーを削除した後、第2車載デバイスは、第2メッセージのフレッシュ値が次の第2フレッシュ値に達していないとき、現在使用される第4キーを第3キーとしてデータを暗号化し、次の第2メッセージのフレッシュ値が第2フレッシュ値に達するまで、次に更新される第4キーを用いることによって第2データを暗号化して第2メッセージを生成するステップを実行して、第2車載デバイスのオーバーヘッドを減少させ得る。
第2車載デバイスからのメッセージが第4キーを用いることによって成功裏に復号されたと決定した後、第1車載デバイスは第3キーを削除し得る。第1車載デバイスが第3キーを削除した後、第1車載デバイスは、第2メッセージのフレッシュ値が次の第2フレッシュ値に達していないとき、現在使用される第4キーを第3キーとして、受信した第2メッセージ内の第2データを復号し、次の第2メッセージのフレッシュ値が第2フレッシュ値に達するまで、次に更新される第4キーを用いることによって第1データを暗号化して第1メッセージを生成するステップを実行して、第1車載デバイスのオーバーヘッドを減少させ得る。
方式B:第1車載デバイス及び第2車載デバイスは、第2キーを生成するために、第2キーの更新回数に基づいて第2キーの更新方式を決定し得る。
一部の実施形態において、第2キーが決定されるたびに、使用されるキー導出関数内の第1パラメータが第2キーの更新回数(又は第1メッセージのフレッシュ値が第1フレッシュ値に到達した回数)に関係付けられる。すなわち、第1メッセージのフレッシュ値が第1フレッシュ値であるとき、第2キーの更新回数が決定され、第2キーの該更新回数に基づいて第2キーの更新方式が決定され、そして、第2キーが決定される。
例えば、一部の実施形態において、各回に更新される第2キーは、最後に更新された第2キー(すなわち、現在使用されている第1キー)に基づいて生成されることができ、あるいは、初期キーと過去に更新された少なくとも1つの第2キーとに基づいて生成されることができる。例えば、Nは正の整数であるとして、N回目の更新後に得られる第2キーを生成するために、キー導出アルゴリズムを用いることによって、初期キー、最初のN-1回の前に更新された少なくとも1つの第2キー、及び第1パラメータに対して演算が実行される。第1パラメータについては、方式Aにおける実装を参照されたい。第1パラメータは更に、第2キーの更新回数を含んでもよい。これはここで限定されることではない。初期キーは、初期化中に第1車載デバイス及び第2車載デバイスによって決定されたキーとすることができ、あるいは、第1車載デバイス及び第2車載デバイスによってファームウェアに書き込まれたキーとすることができる。これまた理解され得ることには、キー導出アルゴリズムの入力は、初期キー、最初のN-1回の前に更新された少なくとも1つの第2キー、第2キーの更新回数、及び第1パラメータを含み、N回目の更新後に得られた第2キーが出力される。
なお、第2キーの更新回数は、カウンタを用いることによってカウントされ得る。確かなことには、第2キーの更新回数は、別の方式で決定されてもよい。これはここで限定されることではない。確かなことには、第2キーの更新方式は、第2キーの更新回数に基づく別の方式で決定されてもよい。これはこの出願において限定されることではない。
オプションで、N回目の後に更新された第2キーを暗号化及び復号に用いることを決定するとき、第1車載デバイス及び第2車載デバイスは、記憶空間の占有を減らすために、(N-1)回目の更新後に得られたキーを削除し得る。
対応して、第2車載デバイスは、代わりに、第4キーを生成するために、第2メッセージのフレッシュ値が第2フレッシュ値に達した回数に基づいて、第4キーの更新回数及び第4キーを生成する方式を決定してもよい。対応して、第2メッセージのフレッシュ値が第2フレッシュ値であるとき、第2車載デバイスは、第4キーの更新回数を更新し、そして、第4キーを決定する。例えば、各回に更新される第4キーは、最後に更新された第4キー(すなわち、現在使用されている第3キー)に基づいて生成されることができ、あるいは、初期キーと過去に更新された少なくとも1つの第4キーとに基づいて生成されることができる。例えば、Mは正の整数であるとして、M回目の更新後に得られる第4キーを生成するために、キー導出アルゴリズムを用いることによって、初期キー、最初のM-1回の前に更新された少なくとも1つの第4キー、及び第1パラメータに対して演算が実行される。
なお、方式Bにおいて、第1車載デバイス及び第2車載デバイスは方式A1を参照し得る。第1メッセージのフレッシュ値が第1フレッシュ値に到達する前に、第1車載デバイス及び第2車載デバイスは別々に第2キーを導出する。第1メッセージのフレッシュ値が第1フレッシュ値に到達すると、第1キーの更新回数が決定され、そして、第1キーが第2キーに更新される。同様に、第2メッセージのフレッシュ値が第2フレッシュ値となる前に、第1車載デバイス及び第2車載デバイスは別々に第4キーを導出する。第2メッセージのフレッシュ値が第2フレッシュ値に達すると、第3キーの更新回数が決定され、そして、第3キーが第4キーに更新される。
方式Bにおいて、第1車載デバイス及び第2車載デバイスは、方式A2を参照してもよい。第1車載デバイス及び第2車載デバイスがキーを導出するのに使用される演算量を減らすために、第1キー、更新された第2キー、第3キー、及び更新された第4キーは、第1車載デバイス及び第2車載デバイスによって予め設定されてもよい。すなわち、第1車載デバイス及び第2車載デバイスは、各回に更新される第2キー及び第4キーを予め決定し、該第2キー及び第4キーを第1車載デバイス及び第2車載デバイスに予め記憶し得る。第1メッセージのフレッシュ値がN回目に第1フレッシュ値に達したとき、第1車載デバイス及び第2車載デバイスは、N回目の更新後に得られる第2キーを決定する。第2メッセージのフレッシュ値がM回目に第2フレッシュ値に達したとき、M回目の更新後に得られる第4キーが決定される。
シナリオ2では、一部の実施形態において、車両が始動されるとき、又は車両が初期化されるとき、第1車載デバイスと第2車載デバイスとの間で記憶されたキーが、第1車載デバイスと第2車載デバイスとの間でのデータ伝送において第1フレッシュ値又は第2フレッシュ値に初めて到達する前の第1キー(すなわち、0回目に更新されるキー)として使用され得る。0回目に更新されるキーは、予め設定された第1キーであってもよいし、車両が始動されるとき最初に生成される第1キーであってもよい。これはここで限定されることではない。
方式A:第1車載デバイスは、過去に生成された第1キー又は第2キーに基づいて第2キーを導出し得る。
具体的な実装については、シナリオ1における方式Aを参照されたい。詳細をここで再び説明することはしない。
方式A1では、オプションで、第1メッセージのフレッシュ値が第1閾値に到達する時間及び第2メッセージのフレッシュ値が第2閾値に到達する時間が同じ時間範囲内となり得るシナリオが考慮される。例えば、第1メッセージのフレッシュ値が第1閾値に達するとき、及び第1メッセージのフレッシュ値が第1フレッシュ値に達するとき、第2メッセージのフレッシュ値も第2閾値に達する。この場合、第2キーを生成することには複数のソリューションが存在し得る。以下では、説明のための例として方式1及び方式2を用いる。
方式a1:第1車載デバイス及び第2車載デバイスは、対応して、第1メッセージのフレッシュ値及び第2メッセージのフレッシュ値が対応する閾値に達する順序に基づいて第2キーを計算し、最新の第2キーを更新された第2キーとして選択することに合意する。
例えば、第1フレッシュ値は8ビットであり、初期値は00000000に設定される。第1車載デバイスは、先ず、第1メッセージのフレッシュ値が第1フレッシュ値に達することを決定し、そして、キー導出アルゴリズムを用いることによって、1回目の更新後に得られる第2キーを決定する。次いで、第1車載デバイスは、第2メッセージのフレッシュ値も第2フレッシュ値に達することを決定し、そして、キー導出アルゴリズムを用いることによって、2回目の更新後に得られる第2キーを決定する。このシナリオでは、第1車載デバイスによって第2車載デバイスに送信される第1メッセージの第1フレッシュ値が00000000であるとき、第1車載デバイスによって第2車載デバイスに送信される第1メッセージによって使用される第2キーは、2回目の更新後に得られる第2キーである。
方式a2:第1車載デバイス及び第2車載デバイスが短時間に2回にわたって第2キーを生成する必要がある場合を回避するために、第2キーが1回だけ生成されるように設定し得る。具体的には、第1車載デバイスが、第1メッセージのフレッシュ値が第1閾値に達し、第1メッセージのフレッシュ値が第1フレッシュ値には達しておらず、第2メッセージのフレッシュ値が第2閾値に達したと決定したとき、第2キーを導出するステップが1回だけ実行され、すなわち、第2キーが1回決定される。あるいは、第1車載デバイスが、第2メッセージのフレッシュ値が第2閾値に達し、第2メッセージのフレッシュ値が第2フレッシュ値には達していないと決定したとき、第1メッセージのフレッシュ値が第1閾値に達し、第2キーを導出するステップが1回だけ実行され、すなわち、第2キーが1回決定される。
上述の方法によれば、第1車載デバイス及び第2車載デバイスは、毎回更新される第2キーが異なることを保証するために、第1メッセージのフレッシュ値が第1フレッシュ値に達すること又は第2メッセージのフレッシュ値が第2フレッシュ値に達することを決定したときに、キー導出アルゴリズムを用いることによって、更新された第2キーを生成する必要がある。
オプションで、第2車載デバイスからの第2メッセージが第2キーを用いることによって成功裏に復号されたと決定した後、第1車載デバイスは第1キーを削除し得る。第1車載デバイスが第1キーを削除した後、第1車載デバイスは、第1メッセージのフレッシュ値が次の第1フレッシュ値に達していないとき、現在使用される第2キーを第1キーとしてデータを暗号化し、次の第1メッセージのフレッシュ値が第1フレッシュ値に達するまで、次に更新される第2キーを用いることによって第1データを暗号化して第1メッセージを生成するステップを実行し得る。あるいは、第1車載デバイスは、第2メッセージのフレッシュ値が次の第2フレッシュ値に達していないとき、現在使用される第2キーを第1キーとして、受信した第2メッセージ内の暗号化された第2データを復号し、次の第2メッセージのフレッシュ値が第2フレッシュ値に達するまで、更新された第2キーを用いることによって第2データを復号するステップを実行して、第1車載デバイスのオーバーヘッドを減少させ得る。
対応して、第1車載デバイスからの第1メッセージが第2キーを用いることによって成功裏に復号されたと決定した後、第2車載デバイスは第1キーを削除し得る。第2車載デバイスが第1キーを削除した後、第2車載デバイスは、第2メッセージのフレッシュ値が次の第2フレッシュ値に達していないとき、現在使用される第2キーを第1キーとしてデータを暗号化し、次の第2メッセージのフレッシュ値が第2フレッシュ値に達するまで、次に更新される第2キーを用いることによって第2データを暗号化して第2メッセージを生成するステップを実行し得る。あるいは、第2車載デバイスは、第1メッセージのフレッシュ値が次の第1フレッシュ値に達していないとき、現在使用される第2キーを第1キーとして、受信した第1メッセージ内の暗号化された第1データを復号し、次の第1メッセージのフレッシュ値が第1フレッシュ値に達するまで、更新された第2キーを用いることによって第1メッセージ内の第1データを復号するステップを実行して、第2車載デバイスのオーバーヘッドを減少させ得る。
シナリオ2の方式Bにおいて、第1車載デバイスは、第2キーの更新回数に基づいてキー更新方式を決定し、そして、更新されたキーを生成し得る。
例えば、第2キーが生成されるたびに、使用されるキー導出関数内の第1パラメータが、第2キーの更新回数に関係付けられる。
一部の実施形態において、第1メッセージのフレッシュ値が第1フレッシュ値であるとき、第2キーの更新回数が決定され、そして、第2キーが生成される。第2メッセージのフレッシュ値が第2フレッシュ値であるとき、第2キーの更新回数が決定され、そして、第2キーが生成される。N番目の第1メッセージのフレッシュ値が第1フレッシュ値となり、且つM番目の第2メッセージのフレッシュ値が第2フレッシュ値となった後、現在のキーは、(N+M)回目の更新後に得られたキーであり、ここで、N及びMは正の整数であり、N及びMはどちらも0ではない。
例えば、第2車載デバイスが第1メッセージを受信する前に、第2車載デバイスにローカルに記憶された第1メッセージのフレッシュ値は11111111であり、第2キーの更新回数は4である。このケースにおいて、第1メッセージ内で搬送される第1フレッシュ値00000000が受信されると、第2キーを生成する必要があると決定され得る。従って、ローカルに記憶された第2キーの更新回数が5に更新されるとともに、第2キーが5回目の更新後に得られた第2キーであると決定される。
一部の実施形態において、各回に更新される第2キーは、最後に更新された第2キーに基づいて生成されることができ、あるいは、初期キーと過去に更新された少なくとも1つの第2キーとに基づいて生成されることができる。例えば、(N+M)回目の更新後に得られる第2キーを生成するために、キー導出アルゴリズムを用いることによって、初期キー、最初のN+M-1回の前に更新された少なくとも1つの第2キー、及び第1パラメータに対して演算が実行される。第1パラメータについては、方式Aにおける実装を参照されたい。第1パラメータは更に、第2キーの更新回数を含んでもよい。これはここで限定されることではない。初期キーは、初期化中に第1車載デバイス及び第2車載デバイスによって決定されたキーとすることができ、あるいは、第1車載デバイス及び第2車載デバイスによってファームウェアに書き込まれたキーとすることができる。これまた理解され得ることには、キー導出アルゴリズムの入力は、初期キー、最初のN+M-1回の前に更新された少なくとも1つのキー、第2キーの更新回数、及び第1パラメータを含み、(N+M)回目の更新後に得られた第2キーが出力される。
オプションで、第1メッセージのフレッシュ値が第1フレッシュ値に到達する時間及び第2メッセージのフレッシュ値が第2フレッシュ値に到達する時間が同じ時間範囲内となるシナリオが考慮される。以下では、説明のための例として方式b1及び方式b2を用いる。
方式b1:第1車載デバイス及び第2車載デバイスは、第1メッセージのフレッシュ値が第1フレッシュ値に達すること、及び第2メッセージのフレッシュ値が第2フレッシュ値に達することの順序に基づいて第2キーを決定し、最新の第2キーを、更新された第2キーとして選択することに合意する。第1メッセージのフレッシュ値が(i-1)回目に第1フレッシュ値に到達し、第2メッセージのフレッシュ値が(j-1)回目に第2フレッシュ値に到達したと仮定する(i及びjは、1より大きい正の整数である)。例えば、第1メッセージのフレッシュ値が最初に第1フレッシュ値に達する。第1メッセージのフレッシュ値が第1フレッシュ値に達したときに、(i+j-1)回目の更新後に得られる第2キーが決定され、第2メッセージのフレッシュ値が第2フレッシュ値に達したときに、(i+j)回目の更新後に得られる第2キーが決定される。i番目の第1メッセージのフレッシュ値が第1フレッシュ値に達したとき、第1車載デバイスは、(i+j-1)回目の更新後に得られた第2キーを用いて第1データを暗号化し、第1メッセージ(暗号化された第1データ及び第1フレッシュ値)を第2車載デバイスに送信する。第2車載デバイスは、(i+j-1)回目の更新後に得られた第2キーを用いて第1データを復号する。j番目の第2メッセージのフレッシュ値が第2フレッシュ値に達したとき、第2車載デバイスは、(i+j)回目の更新後に得られた第2キーを用いて第2データを暗号化し、第2メッセージ(暗号化された第2データ及び第2フレッシュ値)を第1車載デバイスに送信する。第1車載デバイスは、(i+j)回目の更新後に得られた第2キーを用いて、第2メッセージ内の第2データを復号する。
方式b2:第2キーが1回だけ生成されることを設定し得る。上述の例を参照するに、第1車載デバイス又は第2車載デバイスが、i番目の第1メッセージのフレッシュ値が第1フレッシュ値に到達する時点及びj番目の第2メッセージのフレッシュ値が第2フレッシュ値に到達する時点が、予め設定された時間範囲内にあると決定したとき、第1車載デバイス又は第2車載デバイスによって使用される(i+j)回目の更新後に得られる第2キーは、(i+j-1)回目の更新後に得られた第2キーと同じである。
オプションで、(N+M)回目の更新後に得られた第2キーが成功裏に復号されたと決定した後、第1車載デバイス及び第2車載デバイスは、(N+M-1)回目の更新後に得られた第2キーを削除し得る。そして、第1車載デバイス及び第2車載デバイスは、記憶空間の占有を減らすために、(N+M)回目の更新後に得られた第2キーを第1キーとして用いて送信データを暗号化し、(N+M)回目の更新後に得られた第2キーを第1キーとして用いて受信データを復号し得る。
なお、シナリオ1における方式Bを参照するに、第2キーは、第1メッセージのフレッシュ値が第1フレッシュ値に達する前に、第1車載デバイス及び第2車載デバイスによって別々に導出され得る。あるいは、第2キーは、第2メッセージのフレッシュ値が第2フレッシュ値に達する前に、第1車載デバイス及び第2車載デバイスによって別々に導出され得る。あるいは、第1車載デバイス及び第2車載デバイスが第2キーを導出するのに使用される演算量を減らすために、第2キーは、第1車載デバイス及び第2車載デバイスによって予め設定されてもよい。すなわち、第1車載デバイス及び第2車載デバイスは、各回に更新される第2キーを予め決定し、該第2キーを第1車載デバイス及び第2車載デバイスに予め記憶し得る。例えば、第1メッセージのフレッシュ値がN回目に第1フレッシュ値に達し、第2メッセージのフレッシュ値がM回出現しているとき、第1車載デバイスは、(N+M)回目の更新後に得られた第2キーを用いることによって第1データを暗号化することを決定して、暗号化された第1データを取得する。
この出願は、データ伝送方法を提供する。当該方法は、図1に示した通信システムに適用され得る。第1デバイスが、暗号化されたデータを第2デバイスに送信し、第2デバイスが、第1デバイスによって送信された暗号化されたデータを復号するとし得る。第1デバイスは、車載デバイス、路側デバイス、ネットワーク側デバイス、又は車両内のこれらに類似のデバイスとし得る。あるいは、第1デバイスは、第1車載デバイス、路側デバイス、又はネットワーク側デバイスのチップであってもよい。あるいは、第1デバイスは、車両と別のデバイスとの間のデータ伝送を実装することができる機能又はモジュールであってもよい。例えば、当該方法が車両内通信に適用される場合、第1デバイス及び第2デバイスは、同一車両内の車載デバイスとし得る。当該方法が車車間通信に適用される場合、第1デバイス及び第2デバイスは、相異なる車両の車載デバイスとし得る。当該方法が車車間通信に適用されるとき、第1デバイスは、車両内の車載デバイスとすることができ、あるいは、ネットワーク側デバイスとすることができる。当該方法が車両と路側デバイスとの間の通信に適用される場合、第1デバイスは、該車両内の車載デバイスとすることができ、あるいは、路側デバイスとすることができる。当該方法が、路側デバイスと路側デバイスとの間、又は路側デバイスとネットワーク側デバイスとの間の通信に適用される場合、第1デバイスは、路側デバイスであることができ、あるいは、車両内のネットワーク側デバイスであることができる。以下では、第1デバイスが第1車載デバイスであり、且つ第2デバイスが第2車載デバイスである例を用いて説明する。図2は、この出願に従ったデータ伝送方法の概略フローチャートである。当該方法は以下のステップを含む。
ステップ201:送信するメッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第1車載デバイスが、第1フレッシュ値と第2キーとに基づいてキーストリームを生成する。
フレッシュ値は、第1車載デバイスによって第2車載デバイスに送信される第1メッセージのフレッシュ値とし得る。
ステップ201の前に、第1車載デバイスは、各回に送信されるメッセージに対応するフレッシュ値及び第1キーを用いることによって、キーストリームを生成する。第2キーは、更新されたキーであり、第1キーとは異なる。
第1フレッシュ値は、キー更新をトリガすることができるプリセットされた特定のフレッシュ値である。
一部の実施形態において、第1車載デバイスは、第1フレッシュ値とキーとに基づいてキーストリームを生成し得る。キーストリームを生成するための処理は、暗号化アルゴリズムに基づくことができ、あるいは、KDFに基づくことができる。理解され得ることには、第1車載デバイスは、KDFに入力されるキー及び第1フレッシュ値に対して演算を実行して、キーストリームを出力し得る。あるいは、第1車載デバイスは、暗号化アルゴリズムに入力されるキー及び第1フレッシュ値に対して演算を実行して、キーストリームを出力し得る。
ステップ202:第1車載デバイスが、キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得する。
取り得る一実装では、図3aを参照されたい。キーストリームの第1データの排他的論理和を用いて、暗号化された第1データを取得し得る。一部の実施形態において、キーストリームを生成するための入力は更に、キーストリームの長さ(length)、送信する第1データの識別子、第1車載デバイスの識別子、第2車載デバイスの識別子、及びこれらに類するもののうちの少なくとも1つを含んでもよい。理解されるべきことには、キーストリームの長さは、第1車載デバイスのデフォルトの長さであってもよい。斯くして、排他的論理和演算がキーストリーム及び第1データに対して実行されて、暗号化された第1データが生成される。
なお、第2キーは、第1メッセージのフレッシュ値が第1フレッシュ値であると決定される前に決定されてもよいし、第1車載デバイスに予め記憶されていてもよい。詳細をここで再び説明することはしない。シナリオ2では、第1車載デバイスによって使用される第1キーは、第2車載デバイスの第3キーとは異なる。シナリオ2では、第1車載デバイスによって使用される第1キーは共有キーであり、第2車載デバイスの第3キーと同じである。
ステップ203:第1車載デバイスが、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成する。
図3bを参照されたい。第1メッセージは、暗号化された第1データと第1フレッシュ値とを含み得る。
オプションで、フレッシュ値リセット速度を遅くするために、この出願において、第1車載デバイス及び第2車載デバイスは別々に、拡張されたフレッシュ値を維持管理してよく、例えば、フレッシュ値の上位ビットを増加させ、メッセージ伝送プロセスにおいてフレッシュ値の下位ビットのみを伝送してよい。換言すれば、実際に伝送されるフレッシュ値は、フレッシュ値のうち予め設定されたビット数のビット値であってもよく、予め設定されたビット数は、第1フレッシュ値における下位ビットから上位ビットまでの予め設定されたビット数である。斯くして、伝送されるフレッシュ値によって占有されるビットが不変のままであることが保証される場合、フレッシュ値のリセットが遅延される。
オプションで、第1メッセージは更にメッセージ認証コード(message authentication code,MAC)を含み得る。メッセージ認証コードは、第2キーに基づいて第1車載デバイスによって生成され得る。第1メッセージを受信した後、第2車載デバイスは更に、第1メッセージの第1フレッシュ値に基づいて第2キーを決定し得る。第2車載デバイスは、第2キーに基づいてMACを計算する。第2車載デバイスは、第1メッセージ内のMACを、第1メッセージの第2キーに基づいて計算されたMACと比較する。比較が成功である場合、第2車載デバイスは、第1メッセージは信頼できる、すなわち、第1メッセージは改ざんされていないとみなす。
なお、第1車載デバイスによって送信されるデータのセキュリティを更に改善するために、暗号化に使用されるキーとインテグリティ保護に使用されるキーとが相異なるキーであってもよい。例えば、それは、異なるパラメータ(例えば、アルゴリズムタイプパラメータ(algorithm type distinguisher))を入力することによって実施され得る。例えば、暗号化データのキーを生成するためのパラメータは第1パラメータであり、インテグリティ保護のためのキーを生成するためのパラメータは第2パラメータであり、第1パラメータと第2パラメータとは異なる。例えば、第1パラメータが“0x01”であり、第2パラメータが“0x02”であるとし得る。他の一例では、第1パラメータは“暗号化(encryption)”であり、第2パラメータは“インテグリティ(integrity)”である。また、第1パラメータ及びキー導出アルゴリズムは、第1車載デバイス及び第2車載デバイスによって合意され得る。
ステップ204:第1車載デバイスが、第1メッセージを第2車載デバイスに送信する。
第1メッセージは、暗号化された第1データと第1フレッシュ値とを含み得る。第1メッセージの第1フレッシュ値は平文で送信され得る。対応して、第2車載デバイスは、第1車載デバイスから、暗号化された第1データと第1フレッシュ値とを受信し得る。
ステップ205:第2車載デバイスが、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、第1メッセージに対応するキーが第2キーであると決定する。
一部の実施形態において、第2車載デバイスが、第1メッセージに対応するキーが第2キーであると決定したとき、第2車載デバイスは、第1キーを第2キーに更新し得る。
一部の実施形態において、ローカルに記憶した第1フレッシュ値が、受信した第1メッセージの第1フレッシュ値と異なり、且つ第1メッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第2車載デバイスは、第1メッセージがリプレイメッセージではないと決定することができ、すなわち、第1メッセージがセキュアであると確認することができる。さらに、第2車載デバイスは、第1メッセージに対応するキーが第2キーであると決定することができる。シナリオ1及びシナリオ2を参照して、以下にて、異なるシナリオにおける対応する第2キーについて簡単に説明する。
シナリオ1の方式Aにおいて、第1メッセージを受信する前に、第1メッセージのフレッシュ値が第1フレッシュ値に達することになると決定したとき、第2車載デバイスは、キー導出アルゴリズムを用いることによって、更新された第2キーを決定し得る。
シナリオ1の方式Bにおいて、第1メッセージが送信される前に第2キーがN-1回更新されていると仮定する。この場合、第1メッセージを受信した後に、第1メッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第2車載デバイスは、第1メッセージに対応するキーがN回目の更新後に得られた第2キーであると決定し得る。
シナリオ2の方式Aにおいて、第1メッセージを受信する前に、第1メッセージのフレッシュ値が第1フレッシュ値に達することになると決定したとき、第2車載デバイスは、キー導出アルゴリズムを用いることによって、現在使用している第1キーに基づいて第2キーを決定し得る。
シナリオ2の方式Bにおいて、第2車載デバイスにローカルに記憶された第2キーの更新回数がN+M-1である例を用いる。この場合、第2車載デバイスは、第1メッセージを受信し、第1メッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第2車載デバイスは、ローカルに記憶している第2キーの更新回数を累積し、第2キーが(N+M)回目の更新後に得られた第2キーであると決定する。
ステップ206:第2キーに対応する復号キーと第1フレッシュ値とに基づいて第1メッセージを復号して、第1データを取得する。
具体的には、第2車載デバイスは、第2キーに対応する復号キーと第1フレッシュ値とに基づいて第1メッセージを復号して、第1データを取得し得る。取り得る一方式において、第2車載デバイスは、第2キーに対応する復号キーと第1フレッシュ値とに基づく演算を実行してキーストリームを生成する。第2車載デバイスは、キーストリーム及び暗号化された第1データに対して排他的論理和演算を実行して、第1データを取得する。このステップについては、ステップ202にて第1車載デバイスが第2キーと第1フレッシュ値とに基づく演算を実行してキーストリームを生成する方式を参照することができる。詳細をここで再び説明することはしない。
ステップ201乃至ステップ206から分かることには、第1車載デバイスは、第1メッセージのフレッシュ値が第1フレッシュ値であるかに基づいて、送信する第1データを暗号化するのに第2キーを使用する必要があるかを決定し得る。対応して、第2車載デバイスは、第1メッセージのフレッシュ値が第1フレッシュ値であるかに基づいて、送信された暗号化された第1データを復号するのに第2キーを使用する必要があるかを決定し得る。斯くして、データを送るとき、第1車載デバイス及び第2車載デバイスは、フレッシュ値が特定の値に達したときに、それに対応してキーを更新する。これは、元のキーが用いられるためにセキュリティが低下する問題、及びキーが更新されることを両者が確認した後にデータが送信されるために余分な遅延が発生する問題を回避する。
例1
第1車載デバイスと第2車載デバイスとの間でのデータ伝送中に遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスが正確な復号を実行することを確保する必要がある。例えば、第1車載デバイス及び第2車載デバイスはシナリオ2にある。シナリオ1における第1車載デバイス及び第2車載デバイスについては、この実施形態を参照されたい。詳細をここで再び説明することはしない。図2を参照するに、この出願の一実施形態は更にデータ伝送方法を提供する。図4A及び図4Bに示すように、当該方法は以下のステップを含み得る。
第1車載デバイスと第2車載デバイスとの間でのデータ伝送中に遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスが正確な復号を実行することを確保する必要がある。例えば、第1車載デバイス及び第2車載デバイスはシナリオ2にある。シナリオ1における第1車載デバイス及び第2車載デバイスについては、この実施形態を参照されたい。詳細をここで再び説明することはしない。図2を参照するに、この出願の一実施形態は更にデータ伝送方法を提供する。図4A及び図4Bに示すように、当該方法は以下のステップを含み得る。
ステップ401:送信するメッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第1車載デバイスが、第1フレッシュ値と第2キーに基づいてキーストリームを生成する。
ステップ402:第1車載デバイスが、キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得する。
ステップ403:第1車載デバイスが、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成する。
ステップ404:第1車載デバイスが、第1メッセージを第2車載デバイスに送信する。
ステップ405:第1メッセージを第2車載デバイスに送信した後、第1車載デバイスはタイマーを開始する。
第2車載デバイスが長時間にわたって第1車載デバイスにデータを送信しないことがあることを考慮し、このケースでは、第1車載デバイスが、第1メッセージを送信した後にタイマーを設定し、第1プリセット期間が満了したときに第1キー(あるいは、(N+M-1)回目の更新後に得られたキーとして表現され得る)を削除し得る。第1プリセット期間は、第1車載デバイスと第2車載デバイスとの間でのデータ伝送の時間に基づいて決定され得る。例えば、第1プリセット期間は、第1車載デバイスと第2車載デバイスとの間で1.5データパケットを伝送するための時間とし得る。なお、ステップ405はオプションのステップである。
ステップ406:第2車載デバイスが、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、第1メッセージに対応するキーが第2キーであると決定する。
ステップ407:第2キーに対応する復号キーと第1フレッシュ値とに基づいて第1メッセージを復号して、第1データを取得する。
ステップ401乃至ステップ404並びにステップ406及びステップ407については、ステップ201乃至ステップ206の実装を参照されたい。詳細をここで再び説明することはしない。
ステップ408:第2車載デバイスが、第2メッセージを第1車載デバイスに送信する。
第2メッセージは、第2車載デバイスの暗号化された第2データと、第2メッセージのフレッシュ値とを含み得る。
なお、第1メッセージ及び第2メッセージの伝送中にパケット損失又は遅延が生じ得ることを考慮して、ステップ408は、第2車載デバイスが第1メッセージを成功裏に受信した後に実行され得る。この場合、第2メッセージ内の第2データは第2キーに基づいて暗号化される。他の取り得る一ケースにおいて、ステップ402も、第2車載デバイスが第1メッセージを成功裏に受信する前に実行され得る。この場合、第2メッセージ内の第2データは第1キーに基づいて暗号化される。以下では、具体的なシナリオを例として用いて説明を提供する。
シナリオ2の方式Aでは、一部の実施形態において、ステップ408は、第1メッセージが成功裏に受信された後に第2車載デバイスによって送信され得る。この場合、第2車載デバイスが、第1メッセージのフレッシュ値が第1フレッシュ値であると決定していて、且つ第2メッセージのフレッシュ値が第2フレッシュ値に達していないと決定したとき、第2車載デバイスは、第2キーを用いて第2データを暗号化する。第2キーを決定する具体的な方式については、シナリオ2における方式Aを参照されたい。詳細をここで再び説明することはしない。一部の実施形態において、ステップ408は、第2車載デバイスが第1メッセージを受信する前に、又は第2車載デバイスが第1メッセージを受信するのに失敗する前に送信され得る。この場合、第2車載デバイスに過去に記憶された第1メッセージのフレッシュ値は第1フレッシュ値に達しておらず、第2車載デバイスは、第2メッセージのフレッシュ値に基づいて、第2メッセージのフレッシュ値が第2フレッシュ値に達していないと決定する。従って、第2車載デバイスは、第1キーを用いて第2データを暗号化する。故に、第1車載デバイスは、受信した第2メッセージのフレッシュ値に基づいて、第2車載デバイスがキーを最大で1回更新した又はキーを更新していないと決定する。従って、第2メッセージは、第1キー又は第2キーに基づいて復号され得る。他と取り得る一シナリオでは、ステップ408にて、第2車載デバイスが、第1メッセージのフレッシュ値が第1フレッシュ値であると決定したとき、及び第2メッセージのフレッシュ値が第2フレッシュ値であると決定したとき、第2車載デバイスは、第3キーを用いることによって第2データを暗号化する。対応して、第2車載デバイスによって受信されない第1メッセージのフレッシュ値が第1フレッシュ値であり、第2メッセージのフレッシュ値が第2フレッシュ値であると決定されたとき、第2車載デバイスは、第2キーを用いることによって第2データを暗号化する。従って、第1車載デバイスは、受信した第2メッセージの第2フレッシュ値に基づいて、第2車載デバイスがキーを少なくとも1回更新したと決定する。故に、第2メッセージは、第2キー又は第3キーに基づいて復号され得る。
シナリオ2の方式Bにおいて、第2車載デバイスにローカルに記憶された第2キーの更新回数がN+M-1である例を使用する。
一部の実施形態において、ステップ408は、第2車載デバイスが第1メッセージを受信する前に送信されることができ、第2メッセージのフレッシュ値は第2フレッシュ値に達していない。第2車載デバイスは、(N+M-1)回目の更新後に得られた第2キーを用いて第2データを暗号化する。
一部の実施形態では、ステップ408にて、第2車載デバイスが、第1メッセージを受信することに失敗し、第2メッセージのフレッシュ値は第2フレッシュ値に達していない。従って、第2車載デバイスは、(N+M-1)回目の更新後に得られた第2キーを用いて第2データを暗号化する。
一部の実施形態では、ステップ408にて、第2車載デバイスは第1メッセージを成功裏に受信し、第2メッセージのフレッシュ値は第2フレッシュ値に達していない。第1メッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第2車載デバイスは、ローカルに記憶している第2キーの更新回数を累積し、第2キーが(N+M)回目の更新後に得られる第2キーであると決定する。
一部の実施形態では、ステップ408にて、第2車載デバイスは、第1メッセージを受信することに失敗し、第2メッセージのフレッシュ値が第2フレッシュ値に達する。従って、第2車載デバイスは、(N+M)回目の更新後に得られた第2キーを用いて第2データを暗号化する。
一部の実施形態では、ステップ408にて、第2車載デバイスは第1メッセージを成功裏に受信し、第2メッセージのフレッシュ値が第2フレッシュ値に達する。従って、第2車載デバイスは、第(N+M+1)回目の更新後に得られた第2キーを用いて第2データを暗号化する。
シナリオ1の方式Aにおいて、第2メッセージを送信する前に、第2メッセージのフレッシュ値が第2フレッシュ値であると決定したとき、第2車載デバイスは、第4キーを用いることによって第2データを暗号化することを決定する。第2メッセージのフレッシュ値が第2フレッシュ値に達していないと決定されたとき、第2データは、現在使用されている第3キーに基づいて暗号化され得る。
シナリオ1の方式Bにおいて、第2車載デバイスが第1車載デバイスに第2メッセージを送信する前に、第4キーがM-1回更新されていると仮定する。この場合、第2メッセージのフレッシュ値が第2フレッシュ値であると第2車載デバイスが決定すると、第2メッセージに対応するキーは、M回目の更新後に得られる第4キーである。第2メッセージのフレッシュ値が第2フレッシュ値に達していないと第2車載デバイスが決定したとき、第2メッセージに対応するキーは、(M-1)回目の更新後に得られた第4キー(すなわち、第3キー)である。
上述の異なるシナリオに基づいて、第1車載デバイスは、第2メッセージにおいて使用されるキーが第1メッセージに基づいて第2キーに更新されているのか、それとも第1キーが依然として使用されているのかを決定することができない。この場合、第1車載デバイスは、タイマーが満了したかに基づいて、第1キーを用いて又は第2キーを用いて第2メッセージを復号することを決定し得る。オプションで、復号の成功率を改善するために、第1車載デバイスは、優先タイマーが満了していないときに第1キーを用いることによって第2メッセージ内の暗号化されたデータを復号することができ、あるいは、第1車載デバイスは、優先タイマーが満了していないときに第2キーを用いることによって第2メッセージ内の暗号化されたデータを復号することができ、すなわち、ステップ4011が実行される。優先タイマーが満了した後、第2メッセージ内の暗号化されたデータは、第2キーを用いることによって復号される。以下では、説明のためにこの方式を用い、すなわち、ステップ4010が実行される。オプションで、第1車載デバイスはまた、満了になっていないときに、優先的に第2キーに基づいて第2メッセージ内の暗号化されたデータを復号してもよく、あるいは、第1車載デバイスは、満了になっていないときに、優先権に第1キーに基づいて第2メッセージ内の暗号化されたデータを復号してもよい。この方式については、この実施形態を参照されたい。詳細をここで再び説明することはしない。
ステップ409:第1車載デバイスが、タイマーが満了したかを決定し、満了した場合にはステップ4011を実行し、満了していない場合にはステップ4010を実行する。
具体的には、第1車載デバイスは、タイマーが第1プリセット期間を超えたかを決定し、タイマーが満了したかを決定する。
ステップ4010:第1車載デバイスが、第2キーに対応する復号キーを用いることによって第2メッセージを復号する。
具体的な復号方式については、第2キーに対応する復号キーに基づいて第2車載デバイスが第1メッセージを復号するステップ(例えば、ステップ205)を参照されたい。詳細をここで再び説明することはしない。
ステップ4011:第1車載デバイスが、第2キーに対応する復号キー又は第1キーに対応する復号キーと、第2メッセージのフレッシュ値とを用いることによって、第2メッセージを復号する。
ステップ4012:第1車載デバイスが、第2メッセージが成功裏に復号されたかを決定し、そうである場合にはステップ4013を実行し、そうでない場合にはステップ4014を実行する。
ステップ4013:第1車載デバイスが第1キーを削除する。
ステップ4014:第1車載デバイスが、第1キーに対応する復号キーに基づいて第2メッセージを復号する。
復号が失敗した後、第1車載デバイスは、第1キーに対応する復号キーに基づいて、第2メッセージ内のデータを復号し得る。復号が失敗する理由は、第2車載デバイスが第2キーを用いていないことであるかもしれない。この場合、第1車載デバイスは、第1キーに対応する復号キーに基づいて、第2メッセージ内のデータを復号することができる。第1車載デバイスが、第1キーに対応する復号キーに基づいて第2メッセージ内のデータを成功裏に復号することができる場合、第1車載デバイスは、第2車載デバイスが第2キーを用いていないと決定し得る。この場合、第1車載デバイスは第1キーを取っておき得る。
オプションで、ステップ4015にて、第2車載デバイスは、ローカルに記憶している第1キーを削除し得る。
なお、ステップ4015はステップ407の直後に実行されてもよい。ステップ4015とステップ408乃至ステップ4014との間の実行順序は、この出願において限定されることではない。
オプションで、第1キーを削除した後、第1車載デバイスは、次の第1メッセージのフレッシュ値が第1フレッシュ値になるまでタイマーを再セットすることができ、ステップ404が実行された後にタイマーが再始動される。
なお、タイマーが満了していないとき、第2メッセージ内の暗号化されたデータは、第2キーに対応する復号キーに優先的に基づいて復号されてもよい。すなわち、ステップ4011にて、第1車載デバイスは、第1キーに対応する復号キーに基づいて第2メッセージを復号する。復号が成功した後、第2車載デバイスが第1キーを更新していないと決定され、第1キーが保持され得る。復号が失敗した後、第1車載デバイスは、第2キーに対応する復号キーに基づいて第2メッセージ内のデータを復号し得る。具体的な実装プロセスについては、ステップ409乃至ステップ4014を参照されたい。詳細をここで再び説明することはしない。
例2
第1車載デバイスと第2車載デバイスとの間でのデータ伝送中に遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスが正確な復号を実行することを確保する必要がある。例えば、第1車載デバイス及び第2車載デバイスはシナリオ2にある。シナリオ1における第1車載デバイス及び第2車載デバイスについては、この実施形態を参照されたい。詳細をここで再び説明することはしない。図2を参照するに、この出願の一実施形態は更にデータ伝送方法を提供する。図5に示すように、当該方法は以下のステップを含み得る。
第1車載デバイスと第2車載デバイスとの間でのデータ伝送中に遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスが正確な復号を実行することを確保する必要がある。例えば、第1車載デバイス及び第2車載デバイスはシナリオ2にある。シナリオ1における第1車載デバイス及び第2車載デバイスについては、この実施形態を参照されたい。詳細をここで再び説明することはしない。図2を参照するに、この出願の一実施形態は更にデータ伝送方法を提供する。図5に示すように、当該方法は以下のステップを含み得る。
ステップ501:送信するメッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第1車載デバイスが、第1フレッシュ値と第2キーに基づいてキーストリームを生成する。
ステップ502:第1車載デバイスが、キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得する。
ステップ503:第1車載デバイスが、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成する。
ステップ504:第1車載デバイスが、第1メッセージを第2車載デバイスに送信する。
ステップ505:第2車載デバイスが、第2メッセージを第1車載デバイスに送信する。
第2メッセージは、第2車載デバイスの暗号化された第2データと、第2メッセージのフレッシュ値とを含み得る。
例2では、第2メッセージのフレッシュ値が第2フレッシュ値に達していない例を説明のために使用する。
ステップ506:第1車載デバイスが、第1キーに対応する復号キーを用いることによって第2メッセージを復号する。
第2車載デバイスが長時間にわたって第1車載デバイスにデータを送信しないことがあることを考慮し、ステップ505及びステップ506はオプションのステップである。従って、図5において、破線は、ステップ505及びステップ506を実行することがオプションであることを示している。
ステップ507:第2車載デバイスが、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、第1メッセージに対応するキーが第2キーであると決定する。
ステップ508:第2キーに対応する復号キーと第1フレッシュ値とに基づいて第1メッセージを復号して、第1データを取得する。
ステップ501乃至ステップ504並びにステップ507及びステップ508については、ステップ201乃至ステップ206の実装を参照されたい。詳細をここで再び説明することはしない。
ステップ509:第2車載デバイスが第1キーを削除する。
方式Aを参照するに、暗号化された第1データを成功裏に復号した後、第2車載デバイスは、現在使用されている第1キーを第2キーに基づいて更新し得る。方式Bを参照するに、現在使用されている第1キーは、(N+M-1)回目の更新後に得られた第2キーとして使用され、暗号化された第1データを成功裏に復号した後、第2車載デバイスは、現在使用されている第1キーを、(N+M)回目の更新後に得られた第2キーで更新し得る。
ステップ5010:第2車載デバイスが、第3メッセージを第1車載デバイスに送信する。
第3メッセージは、第2車載デバイスが第1キーを第2キーに更新することを指し示すために使用される。
オプションで、第3メッセージは更に、第2デバイスが第1キーの通知メッセージを削除することを指し示すために使用され得る。
オプションで、第3メッセージは更に、暗号化された第3データを含み得る。この場合、第3データは、第2キーと第3メッセージのフレッシュ値とに基づいて暗号化され得る。従って、第3データを受信した後、第1車載デバイスは、第2キーとしての第3メッセージに対応するキーに基づいて、第2車載デバイスが第1キーを第2キーに更新したと決定する。
ステップ5011:第1車載デバイスが、第3メッセージに基づいて第1キーを削除する。
ステップ5010を参照するに、第1車載デバイスは、第3メッセージによって示される第2車載デバイスに基づいて第1キーを第2キーに更新し、第1キーが削除され得ることを決定し得る。
上述の方式では、第1車載デバイスは、タイマーを設定することなく、適時に第1キーを削除することができ、それによって、第1車載デバイス及び第2車載デバイスの伝送効率及び伝送効果が改善される。
例3
第1車載デバイスと第2車載デバイスとの間でのデータ伝送において遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスがキーを更新することを確保する必要がある。
第1車載デバイスと第2車載デバイスとの間でのデータ伝送において遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスがキーを更新することを確保する必要がある。
第1車載デバイス及び第2車載デバイスはシナリオ2にある例を使用する。図2を参照するに、この出願の一実施形態は更にデータ伝送方法を提供する。図6に示すように、当該方法は以下のステップを含み得る。
ステップ601:送信するメッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第1車載デバイスが、第1フレッシュ値と第2キーに基づいてキーストリームを生成する。
ステップ602:第1車載デバイスが、キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得する。
ステップ603:第1車載デバイスが、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成する。
ステップ604:第1車載デバイスが、第1メッセージを第2車載デバイスに送信する。
ステップ605:第2車載デバイスが、第2メッセージを第1車載デバイスに送信する。
第2メッセージは、第2車載デバイスの暗号化された第2データと、第2メッセージのフレッシュ値とを含み得る。
例3では、第2メッセージのフレッシュ値が第2フレッシュ値に達していない例を説明のために使用する。
ステップ606:第1車載デバイスが、第1キーに対応する復号キーを用いることによって第2メッセージを復号する。
第2車載デバイスが長時間にわたって第1車載デバイスにデータを送信しないことがあることを考慮し、ステップ605及びステップ606はオプションのステップである。従って、図6において、破線は、ステップ605及びステップ606を実行することがオプションであることを示している。
ステップ607:第2車載デバイスが、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、第1メッセージに対応するキーが第2キーであると決定する。
ステップ608:第2キーに対応する復号キーと第1フレッシュ値とに基づいて第1メッセージを復号して、第1データを取得する。
ステップ601乃至ステップ604並びにステップ607及びステップ608については、ステップ201乃至ステップ206の実装を参照されたい。詳細をここで再び説明することはしない。
ステップ609:第2車載デバイスが、第2キーと第3メッセージのフレッシュ値とに基づいてキーストリームを生成し、該キーストリームに基づいて第3データを暗号化して第3メッセージを生成する。
起こり得るパケット損失問題を考慮して、第1車載デバイスが、第3メッセージのフレッシュ値に基づいて、第2車載デバイスが第2キーに更新されているかを決定することができないことがあるケースを回避するために、この例では、第2車載デバイスが、第3メッセージに、第2車載デバイスの暗号化された第3データと、第3メッセージのフレッシュ値と、第1識別子とを含め得る。第1識別子は、第2車載デバイスが第1キーを第2キーに更新したことを特定するために使用され得る。
オプションで、パケット損失に起因して、第1識別子を搬送する第3メッセージを第1車載デバイスが受信することができないことがあるケースを回避するために、第1識別子は、更新されたキーを持つと決定された2つ以上の第3メッセージに付加され得る。
ステップ6010:第2車載デバイスが、第3メッセージを第1車載デバイスに送信する。
対応して、第1車載デバイスが、第2車載デバイスによって送信された第3メッセージを受信する。
ステップ6011:第1車載デバイスが、第3メッセージ内の第1識別子に基づいて、第3メッセージのキーが第2キーであると決定する。
第1車載デバイスは、第3メッセージの第1識別子に基づいて、第3メッセージ内の暗号化された第3データに使用されるキーが第2キーであると決定し得る。
ステップ6012:第1車載デバイスが、第2キーに対応する復号キーと第3メッセージのフレッシュ値とに基づいて第3メッセージを復号して第3データを取得する。
具体的な復号プロセスについては、ステップ4010又はステップ4014を参照されたい。詳細をここで再び説明することはしない。
ステップ6013:第1車載デバイスが第1キーを削除する。
ステップ6012を参照するに、第1車載デバイスは、第3メッセージによって示された第2車載デバイスに基づいて、第1キーを第2キーに更新し、第1キーが削除されてもよいことを決定し得る。
第1車載デバイスが第2キーに基づいて第3メッセージ内のデータを成功裏に復号し得るとき、第1車載デバイスは、第2車載デバイスが第2キーを用いたと決定することができ、その結果、第1車載デバイスは、ローカルに記憶している第1キーを削除することができる。この例では、第1車載デバイスは、第2車載デバイスによって送信された第3メッセージ又は第2メッセージが第1識別子を搬送しているかに基づいて、第2車載デバイスにおけるキーが更新されているかを決定し得る。従って、第1識別子を搬送する第3メッセージが受信された後に第1キーを削除すればよく、第1キーを削除するためにタイマーを設定する方式を回避し、それによって、システム耐障害性が改善されるとともにオーバーヘッドが減少される。
ステップ6014:第2車載デバイスが第1キーを削除する。
方式Aを参照するに、暗号化された第1データを成功裏に復号した後、第2車載デバイスは、現在使用されている第1キーを第2キーに基づいて更新し得る。方式Bを参照するに、現在使用されている第1キーは、(N+M-1)回目の更新後に得られた第2キーとして使用され、暗号化された第1データを成功裏に復号した後、第2車載デバイスは、現在使用されている第1キーを、(N+M)回目の更新後に得られた第2キーで更新し得る。
上述の方法によれば、第1車載デバイスは、第3メッセージ内の第1識別子に基づいて、第2車載デバイスが第1キーを第2キーに更新したと決定することができ、その結果、第2メッセージ内の暗号化キーが第1キーであるのか第2キーであるのかを第1車載デバイスが更に決定する状況が減らされ、それによって、電力消費及び遅延が低減される。
例4
第1車載デバイスと第2車載デバイスとの間でのデータ伝送において遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスがキーを更新することを確保する必要がある。例えば、第1車載デバイス及び第2車載デバイスはシナリオ2にある。図2を参照するに、第1車載デバイスが第1メッセージを第2車載デバイスに送信した後に、この出願の一実施形態は更にデータ伝送方法を提供する。図7A及び図7Bに示すように、当該方法は以下のステップを含み得る。
第1車載デバイスと第2車載デバイスとの間でのデータ伝送において遅延又はパケット損失のようなシナリオが存在し得ることを考慮すると、データ伝送遅延を短縮するために、データを伝送している間に第1車載デバイス及び第2車載デバイスがキーを更新することを確保する必要がある。例えば、第1車載デバイス及び第2車載デバイスはシナリオ2にある。図2を参照するに、第1車載デバイスが第1メッセージを第2車載デバイスに送信した後に、この出願の一実施形態は更にデータ伝送方法を提供する。図7A及び図7Bに示すように、当該方法は以下のステップを含み得る。
ステップ701:送信するメッセージのフレッシュ値が第1フレッシュ値であると決定したとき、第1車載デバイスが、第1フレッシュ値と第2キーに基づいてキーストリームを生成する。
ステップ702:第1車載デバイスが、キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得する。
ステップ703:第1車載デバイスが、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成する。
ステップ704:第1車載デバイスが、第1メッセージを第2車載デバイスに送信する。
オプションで、第1メッセージを第2車載デバイスに送信した後、第1車載デバイスは、切替識別子を有効状態に設定し得る。図7A及び図7Bにおいて、破線は、切替識別子が有効にされることがオプションのステップであること、及びそれに対応してステップ7013がオプションのステップであることを示すために使用されている。
一部の実施形態において、切替識別子の有効状態は、第1車載デバイスが第1メッセージを送信した後にトリガされることができ(この場合、第1メッセージのフレッシュ値は第1フレッシュ値である)、切替識別子は、第2車載デバイスによって送信された第3メッセージ内の第3データを第1車載デバイスが成功裏に復号した後に無効状態に設定される(この場合、第3データは第2キーを用いることによって暗号化される)。上述の方法によれば、切替識別子が有効な状態であると決定したとき、第1車載デバイスは、特定の条件を満たす第3メッセージのフレッシュ値を設定して、第2車載デバイスが第2キーを用いることによって第3メッセージ内の第3データを暗号化していると決定し得る。斯くして、第2車載デバイスによって送信された第3メッセージのキーが特定の条件に基づいて決定されるとき、第1車載デバイスによって受信された第3メッセージのフレッシュ値が、パケット損失に起因して特定の条件を満たす第3メッセージのフレッシュ値と間違えられ得るケースも回避され、それによって、第3メッセージを受信することの効率及び正確さが効果的に改善される。
ステップ705:第2車載デバイスが、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、第1メッセージに対応するキーが第2キーであると決定する。
ステップ706:第1車載デバイスが、第1キーに対応する復号キーを用いることによって第1メッセージを復号して第1データを取得する。
ステップ701乃至ステップ706については、ステップ201乃至ステップ206の実装を参照されたい。詳細をここで再び説明することはしない。
ステップ707:第1フレッシュ値に基づいて、特定の条件を満たす第3メッセージのフレッシュ値を決定する。
ステップ708:第2車載デバイスが、第2キーと第3メッセージのフレッシュ値とに基づいてキーストリームを生成し、該キーストリームに基づいて第3データを暗号化して第3メッセージを生成する。
起こり得るパケット損失問題を考慮して、第1車載デバイスが、第3メッセージのフレッシュ値に基づいて、第2車載デバイスが第2キーに更新されているかを決定することができないことがあるケースを回避するために、この例では、第2車載デバイスが、第3メッセージのフレッシュ値を、特定の条件を満たす第3メッセージのフレッシュ値に設定し得る。従って、第2車載デバイスは、第3メッセージに、第2車載デバイスの暗号化された第3データと、特定の条件を満たす第3メッセージのフレッシュ値とを含め得る。
取り得る一実装において、第3メッセージのフレッシュ値は、第2車載デバイスによって第1車載デバイスに最後に送信されたメッセージのフレッシュ値からインターバル指定値だけ後に得られるフレッシュ値である。
例えば、第3メッセージが送信される前、第2車載デバイス及び第1車載デバイスによって記憶された、第2車載デバイスによって第1車載デバイスに送信されたメッセージのフレッシュ値は、1000001である。この場合、第2車載デバイスによって第3メッセージ内で搬送されるフレッシュ値は1000006とすることができ、すなわち、インターバル指定値は5であり、第2車載デバイスによって第1車載デバイスに送信されるローカルに記憶されたメッセージのフレッシュ値は1000003に更新される。第3メッセージを受信した後、第2車載デバイスは、第3メッセージのフレッシュ値と、第2車載デバイスによって第1車載デバイスに送信されたローカルに記憶されたメッセージのフレッシュ値との間のインターバル指定値が5であると決定することを可能にされ、そして、第3メッセージ内の第3データが第2キーを用いることによって暗号化されていると決定することができる。
ステップ709:第2車載デバイスが、第3メッセージを第1車載デバイスに送信する。
対応して、第1車載デバイスが、第2車載デバイスによって送信された第3メッセージを受信する。
ステップ7010:第1車載デバイスが、第3メッセージのフレッシュ値が特定の条件を満たすかを判定し、そうである場合にはステップ7011bを実行し、そうでない場合にはステップ7011aを実行する。
一部の実施形態において、第1車載デバイスは、特定の条件が満たされるかを判定するために、第2メッセージの第2フレッシュ値を、第2車載デバイスによって第1車載デバイスに送信されたローカルに記憶されたメッセージのフレッシュ値と比較し得る。例えば、第3メッセージのフレッシュ値が特定の条件(第3メッセージのフレッシュ値と、第2車載デバイスによって第1車載デバイスに送信されたローカルに記憶されたメッセージのフレッシュ値との間のインターバル指定値)を満たすと判定されたとき、第2車載デバイスが第1キーを第2キーに更新していると決定され得る。さらに、第3メッセージは、第2キーに基づいて暗号化されている。
切替識別子が有効に設定されるシナリオを参照するに、この実施形態では、第1車載デバイスが第3メッセージのフレッシュ値が特定の条件を満たすと判定することは、第3メッセージのフレッシュ値とローカルに記憶された第3メッセージのフレッシュ値との間のインターバル指定値、及び切替識別子が有効状態にあることを含む必要がある。
切替識別子が無効状態にあると決定したとき、第1車載デバイスは、第3メッセージのフレッシュ値とローカルに記憶された第3メッセージのフレッシュ値とを比較することができ、第3メッセージのフレッシュ値とローカルに記憶された第3メッセージのフレッシュ値との間にインターバル指定値を決定したとき、パケット損失が以前に発生したかもしれないと決定する。この場合、第1車載デバイスは、受信した第2メッセージの第2フレッシュ値に基づいて、受信した第2メッセージの第2フレッシュ値が第2フレッシュ値であるかを決定し得る。第3メッセージのフレッシュ値が第2フレッシュ値に達していないと第1車載デバイスが決定したとき、ステップ7011aが実行される。第3メッセージのフレッシュ値が第2フレッシュ値であると第1車載デバイスが決定したとき、ステップ7011bが実行される。
ステップ7011a:第1車載デバイスが、第1キーに対応する復号キーと第3メッセージのフレッシュ値とに基づいて、第3メッセージ内の暗号化された第3データを復号する。
具体的な復号方法については、ステップ204を参照されたい。詳細をここで再び説明することはしない。
ステップ7011b:第1車載デバイスが、第2キーに対応する復号キーと第3メッセージのフレッシュ値とに基づいて第3メッセージを復号して第3データを取得する。
具体的な復号プロセスについては、ステップ4010又はステップ4014を参照されたい。詳細をここで再び説明することはしない。
ステップ7012:第1車載デバイスが第1キーを削除する。
第1車載デバイスが、更新されたキーに基づいて第2メッセージ内のデータを成功裏に復号し得るとき、第1車載デバイスは、第2車載デバイスが第2キーを用いており、それ故に第1車載デバイスはローカルに記憶している第1キーを削除してもよいと決定し得るとともに、この場合に切替識別子が無効であると決定し得る。この例では、第1車載デバイスは、第2車載デバイスによって送信された第3メッセージで搬送されたフレッシュ値が特定の条件を満たすかに基づいて、第2車載デバイスが第1キーを第2キーに更新しているかを決定し得る。従って、特定の条件を満たす第3メッセージを搬送するフレッシュ値が受信された後に第1キーを削除すればよく、それによって、システム耐障害性が改善されるとともにオーバーヘッドが減少される。
オプションで、ステップ7013にて、第1車載デバイスが切替識別子を無効状態に設定する。
ステップ7014:第2車載デバイスが第1キーを削除する。
上述の方法を用いることにより、第1車載デバイスは、第2メッセージにおける追加の識別子のオーバーヘッドを増加させることなく、第2メッセージで使用されているキーを決定することを可能にされる。これは、データ伝送遅延を減少させ、データ伝送信頼性を向上させる。
なお、上述の情報の名称は単に例にすぎない。通信技術の進化に伴って、上述の情報の名称は変更され得る。しかしながら、情報の名称がどのように変わるかにかかわらず、情報の意味がこの出願における情報の意味と同じであれば、その情報はこの出願の保護範囲内にある。
以上では主に、この出願で提供されるソリューションを車載装置間のインタラクションの観点から記述した。理解され得ることには、前述の機能を実装するために、上述の車載デバイスが、機能を実行するための対応するハードウェア構造及び/又はソフトウェアモジュールを含む。当業者が容易に認識することには、この明細書に開示された実施形態にて説明された例と組み合わせて、ユニット及びアルゴリズムステップが、本出願におけるハードウェア又はハードウェアとコンピュータソフトウェアとの組み合わせによって実装され得る。機能がハードウェアによって実行されるのか、それともコンピュータソフトウェアによって駆動されるハードウェアによって実行されるのかは、これらの技術的ソリューションの具体的な用途及び設計制約に依存する。当業者は、記載された機能を、具体的な用途ごとに異なる方法を用いて実装し得るが、それらの実装は本出願の範囲を超えるものであると見なされるべきでない。
上述の実施形態及び同じ概念に基づいて、図8は、この出願の一実施形態に従ったデータ伝送装置の概略図である。図8に示すように、当該データ伝送装置800は、車両内の第1デバイスとし得る。第1デバイスは、例えば車両内の任意のECUといった車両内の第1車載デバイスであってもよいし、例えば第1車載デバイス内に配置され得るチップ又は回路といったチップ又は回路であってもよい。
当該データ伝送装置は、上述の方法における第1車載デバイスに相当し得る。当該データ伝送装置は、図1から図7A及び図7Bに示したいずれか1つ以上の対応する方法において第1車載デバイスによって実行されるステップを実装し得る。データ伝送装置800は、通信ユニット801、キー更新ユニット802、暗号化ユニット803、及び生成ユニット804を含み得る。オプションで、データ伝送装置800は更に復号ユニット805を含み得る。
キー更新ユニット802は、第1デバイスによって送信すべきメッセージに対応するフレッシュ値が第1フレッシュ値であるときに、暗号化キーを第1キーから第2キーに更新するように構成される。暗号化ユニット803は、第1フレッシュ値と第2キーとに基づいて第1キーストリームを生成し、該第1キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得するように構成される。生成ユニット804は、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成するように構成される。通信ユニット801は、第1メッセージを第2デバイスに送信するように構成される。
取り得る一実装において、通信ユニット801は更に、第2デバイスによって送信された第3メッセージを受信するように構成され、該第3メッセージは、第2デバイスが暗号化キーを第2キーに更新することを指し示すために使用される指示情報を含み、キー更新ユニットは更に、第3メッセージに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新するように構成される。
取り得る一実装において、キー更新ユニットは更に、第3メッセージに基づいて第1キーを削除するように構成される。
取り得る一実装において、第3メッセージは、暗号化された第3データ、第3メッセージのフレッシュ値、及び第1識別子を含み、上記指示情報は該第1識別子である。
取り得る一実装において、第3メッセージは、暗号化された第3データ及び第3メッセージのフレッシュ値を含み、上記指示情報は、特定の条件を満たす第3メッセージのフレッシュ値である。
取り得る一実装において、特定の条件は、第3メッセージのフレッシュ値と、第1デバイスによって最後に受信された第2デバイスからのメッセージのフレッシュ値との間に、プリセットされた値が存在すること、を含む。
取り得る一実装において、通信ユニット801が第1メッセージを第2デバイスに送信した後に、キー更新ユニット802は更に、切替識別子を有効状態に設定し、第3メッセージと、切替識別子が有効状態であることとに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し、且つ、復号キーが、第1キーに対応する復号キーから第2キーに対応する復号キーに更新された後に、切替識別子を無効状態に設定する、ように構成される。
取り得る一実装において、通信ユニット801が第1メッセージを第2デバイスに送信した後に、キー更新ユニット802は更に、タイマーを開始し、該タイマーが満了したときに、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新するように構成される。
取り得る一実装において、キー更新ユニット802は更に、タイマーが満了したときに、第1キーを削除するように構成される。
取り得る一実装において、当該装置は更に復号ユニット805を含み、復号ユニット805は、タイマーが満了していないとき、第1キーに対応する復号キーを用いることによって、第2デバイスから第1デバイスに送信されたメッセージを復号するように構成される。
取り得る一実装において、復号ユニット805は更に、タイマーが満了していないときに、第2デバイスから第1デバイスに送信されたメッセージが、第1キーに対応する復号キーを用いることによって成功裏に復号されることができない場合に、第2キーに対応する復号キーを用いることによって、第2デバイスから第1デバイスに送信されたメッセージを復号するように構成される。
取り得る一実装において、通信ユニット801は更に、第2デバイスによって送信された第4メッセージを受信し、第5メッセージを第2デバイスに送信するように構成され、キー更新ユニット802は更に、第4メッセージが第2フレッシュ値を含むことに基づいて、暗号化キーを第2キーから第3キーに更新するように構成され、暗号化ユニット803は更に、第3キーと、第2デバイスによって送信されるものであり且つ第2データを搬送する第5メッセージのフレッシュ値と、に基づいて第2キーストリームを生成し、該第2キーストリームに基づいて第2データを暗号化して、暗号化された第2データを取得するように構成され、生成ユニット804は更に、暗号化された第2データとフレッシュ値とに基づいて第5メッセージを生成するように構成される。
取り得る一実装において、当該装置は更に復号ユニット805を含む。通信ユニット801が、第2デバイスによって送信された第4メッセージを受信した後に、復号ユニット805は更に、第4メッセージが第2フレッシュ値を含むことに基づいて、第3キーに一致する復号キーを用いることによって第4メッセージを成功裏に復号するように構成される。
情報を送信するとき、通信ユニット801は送信ユニット又は送信器であり得る。情報を受信するとき、通信ユニット801は受信ユニット又は受信器であり得る。通信ユニット801はトランシーバであってもよい。トランシーバ、送信器、又は受信器は、無線周波数回路とし得る。データ伝送装置800が記憶ユニットを含む場合、該記憶ユニットは、コンピュータ命令を格納するように構成される。キー更新ユニット802、暗号化ユニット803、生成ユニット804、及び復号ユニット805は別々に記憶ユニットに通信可能に接続されることができ、キー更新ユニット802、暗号化ユニット803、生成ユニット804、及び復号ユニット805は別々に、記憶ユニットに格納されたコンピュータ命令を実行し、その結果、データ伝送装置800は、上述の実施形態のうちのいずれかの実施形態において第1車載デバイスによって実行される方法を実行するように構成され得る。キー更新ユニット802、暗号化ユニット803、生成ユニット804、又は復号ユニット805は、汎用中央処理ユニット(CPU)、マイクロプロセッサ、又は特定用途向け集積回路(Application-Specific Integrated Circuit,ASIC)とし得る。
データ伝送装置800が第1車載デバイスである場合、通信ユニット801は、入力及び/又は出力インタフェース、ピン、回路、又はこれらに類するものであってもよい。キー更新ユニット802、暗号化ユニット803、生成ユニット804、及び復号ユニット805が、記憶ユニットに格納されたコンピュータ実行可能命令を実行することで、データ伝送装置800内のチップが実施形態のうちのいずれか1つにおいて実行される方法を実行するようにすることができる。オプションで、記憶ユニットは、例えばレジスタ又はキャッシュといった、チップ内の記憶ユニットである。記憶ユニットは更に、例えば読み出し専用メモリ(Read-Only-Memory,ROM)、静的な情報及び命令を格納することができる別のタイプの静的記憶デバイス、又はランダムアクセスメモリ(Random Access Memory,RAM)といった、データ伝送装置800内のチップ外の記憶ユニットであってもよい。
この出願の実施形態で提供される技術的ソリューションに関係するデータ伝送装置800の概念、説明、詳細説明、及び他のステップについては、上述の方法又は他の実施形態における内容の説明を参照されたい。詳細をここで再び説明することはしない。
上述の方法に従って、図9は、この出願の一実施形態に従ったデータ伝送装置の構成の概略図である。図9に示すように、当該装置は第1デバイスとし得る。第1デバイスは、車両内の第1車載デバイス又は車載モジュールであってもよいし、第1車載デバイス内のチップ又は回路であってもよい。
また、データ伝送装置900は更にバスシステムを含み得る。該バスシステムを介して、プロセッサ902、メモリ903、及びトランシーバ901が接続され得る。
理解されるべきことには、プロセッサ902はチップとし得る。例えば、プロセッサ902は、フィールドプログラマブルゲートアレイ(field programmable gate array,FPGA)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、システム・オン・チップ(system on a chip,SoC)、中央処理ユニット(central processing unit,CPU)、ネットワークプロセッサ(network processor,NP)、デジタル信号プロセッサ(digital signal processor,DSP)、マイクロコントローラユニット(micro controller unit,MCU)、プログラマブルロジックデバイス(programmable logic device,PLD)、又は他の集積チップとし得る。
実装において、上述の方法のステップは、プロセッサ902内のハードウェア集積論理回路又はソフトウェアの形態をした命令を用いることによって遂行され得る。この出願の実施形態を参照して開示された方法のステップは、ハードウェアプロセッサを用いることによって直接的に実行及び遂行されてもよいし、プロセッサ902内のハードウェア及びソフトウェアモジュールの組み合わせを用いることによって実行及び遂行されてもよい。ソフトウェアモジュールは、例えばランダムアクセスメモリ、フラッシュメモリ、読み出し専用メモリ、プログラマブル読み出し専用メモリ、電気的消去可能プログラム可能メモリ、又はレジスタなどの、技術的に成熟した記憶媒体内に置かれ得る。記憶媒体は、メモリ903内に位置し、プロセッサ902が、メモリ903内の情報を読み出し、プロセッサ902のハードウェアとの組み合わせで上述の方法におけるステップを遂行する。
なお、この出願のこの実施形態におけるプロセッサ902は、集積回路チップとすることができ、信号処理能力を持つ。実装において、上述の方法実施形態のステップは、プロセッサ内のハードウェア集積論理回路又はソフトウェアの形態をした命令を用いることによって遂行されることができる。プロセッサは、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)若しくは他のプログラマブル論理デバイス、ディスクリートのゲート若しくはトランジスタ論理デバイス、又はディスクリートのハードウェアコンポーネントとし得る。プロセッサは、この出願の実施形態で開示された方法、ステップ、及び論理ブロック図を実装又は実行し得る。汎用プロセッサは、マイクロプロセッサであってもよく、又はプロセッサは、任意の従来からのプロセッサなどであってもよい。この出願の実施形態を参照して開示された方法のステップは、ハードウェア復号プロセッサによって直接的に実行及び遂行されてもよいし、あるいは、復号プロセッサ内のハードウェア及びソフトウェアモジュールの組み合わせを用いて実行及び遂行されてもよい。ソフトウェアモジュールは、例えばランダムアクセスメモリ、フラッシュメモリ、読み出し専用メモリ、プログラム可能読み出し専用メモリ、電気的消去可能プログラム可能メモリ、又はレジスタなどの、技術的に成熟した記憶媒体内に置かれ得る。記憶媒体は、メモリ内に位置し、プロセッサが、メモリ内の情報を読み出し、プロセッサのハードウェアとの組み合わせで上述の方法におけるステップを遂行する。
理解され得ることには、この出願のこの実施形態におけるメモリ903は、揮発性メモリ又は不揮発性メモリとすることができ、あるいは、揮発性メモリ及び不揮発性メモリを含むことができる。不揮発性メモリは、読み出し専用メモリ(read-only memory,ROM)、プログラム可能読み出し専用メモリ(programmable ROM,PROM)、消去可能プログラム可能読み出し専用メモリ(erasable PROM,EPROM)、電気的消去可能プログラム可能読み出し専用メモリ(electrically EPROM,EEPROM)、又はフラッシュメモリとし得る。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(random access memory,RAM)とし得る。限定的記述ではなく例として、例えば、スタティックランダムアクセスメモリ(static RAM,SRAM)、ダイナミックランダムアクセスメモリ(dynamic RAM,DRAM)、同期ダイナミックランダムアクセスメモリ(synchronous DRAM,SDRAM)、ダブルデータレート同期ダイナミックランダムアクセスメモリ(double data rate SDRAM,DDR SDRAM)、エンハンスド同期ダイナミックランダムアクセスメモリ(enhanced SDRAM,ESDRAM)、シンクリンクダイナミックランダムアクセスメモリ(synchlink DRAM,SLDRAM)、及びダイレクトラムバスダイナミックランダムアクセスメモリ(direct rambus RAM,DR RAM)といった、複数の形態のRAMが使用され得る。なお、この明細書に記載されたシステム及び方法のメモリは、以下に限られないが、これらのメモリ及び他の適切なタイプの任意のメモリを含む。
データ伝送装置900が上述の方法における第1車載デバイスに相当する場合、データ伝送装置は、プロセッサ902、トランシーバ901、及びメモリ903を含み得る。メモリ903は、命令を格納するように構成される。プロセッサ902は、メモリ903に格納された命令を実行して、図1から図7A及び図7Bに示した1つ以上の対応する方法における第1車載デバイスが関係するソリューションを実施するように構成される。
データ伝送装置900が上述の第1車載デバイスである場合、データ伝送装置900は、上述の実施形態のうちのいずれかの実施形態において第1車載デバイスによって実行される方法を実行するように構成され得る。
プロセッサ902は、第1デバイスによって送信すべきメッセージに対応するフレッシュ値が第1フレッシュ値であるときに、暗号化キーを第1キーから第2キーに更新し、第1フレッシュ値と第2キーとに基づいて第1キーストリームを生成し、第1キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得し、そして、暗号化された第1データと第1フレッシュ値とに基づいて第1メッセージを生成し得る。トランシーバ901は、第1メッセージを第2デバイスに送信し得る。
この出願の実施形態で提供される第1車載デバイスの技術的ソリューションに関係するデータ伝送装置900の概念、説明、詳細説明、及び他のステップについては、上述の方法又は他の実施形態における内容の説明を参照されたい。詳細をここで再び説明することはしない。
上述の実施形態及び同じ概念に基づいて、図10は、この出願の一実施形態に従ったデータ伝送装置の概略図である。図10に示すように、当該データ伝送装置1000は、車両内の第2デバイスとし得る。第2デバイスは、例えば車両内の任意のECUといった車両内の第2車載デバイスであってもよいし、例えば第2車載デバイス内に配置され得るチップ又は回路といったチップ又は回路であってもよい。
当該データ伝送装置は、上述の方法における第2車載デバイスに相当し得る。当該データ伝送装置は、図1から図7A及び図7Bに示したいずれか1つ以上の対応する方法において第2車載デバイスによって実行されるステップを実装し得る。データ伝送装置1000は、通信ユニット1001、キー更新ユニット1002、及び復号ユニット1003を含み得る。オプションで、データ伝送装置1000は更に、暗号化ユニット1004及び生成ユニット1005を含み得る。
通信ユニット1001は、第1デバイスからの第1メッセージを受信するように構成され、第1メッセージは、暗号化された第1データと、該第1メッセージのフレッシュ値とを含み、キー更新ユニット1002は、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新するように構成され、復号ユニット1003は、第1フレッシュ値と、第2キーに対応する復号キーとに基づいて、第1メッセージを復号して、第1データを取得するように構成される。
取り得る一実装において、キー更新ユニット1002は更に、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、暗号化キーを第1キーから第2キーに更新するように構成され、通信ユニット1001は更に、第2キーを用いることによって暗号化された第3データを含む第3メッセージを第1デバイスに送信するように構成される。暗号化された第3データは、第2キーに基づいて第3データを暗号化することによって暗号化ユニット1004によって生成されることができ、第3データは、暗号化された第3データ及び第3メッセージのフレッシュ値などに基づいて生成ユニット1005によって生成され得る。
取り得る一実装において、第3メッセージは更に、第2デバイスが暗号化キーを第2キーに更新することを指し示すために使用される指示情報を含む。
取り得る一実装において、第3メッセージは更に第1識別子を含み、上記指示情報は該第1識別子である。
取り得る一実装において、第3メッセージは更に、第3メッセージのフレッシュ値を含み、上記指示情報は、特定の条件を満たす第3メッセージのフレッシュ値である。
取り得る一実装において、特定の条件は、第3メッセージのフレッシュ値と、第2デバイスによって第1デバイスに最後に送信されたメッセージのフレッシュ値との間に、プリセットされた値が存在すること、を含む。
情報を送信するとき、通信ユニット1001は送信ユニット又は送信器であり得る。情報を受信するとき、通信ユニット1001は受信ユニット又は受信器であり得る。通信ユニット1001はトランシーバであってもよい。トランシーバ、送信器、又は受信器は、無線周波数回路とし得る。データ伝送装置1000が記憶ユニットを含む場合、該記憶ユニットは、コンピュータ命令を格納するように構成される。キー更新ユニット1002、復号ユニット1003、生成ユニット1005、及び暗号化ユニット1004は、記憶ユニットに通信可能に接続されることができ、キー更新ユニット1002、復号ユニット1003、生成ユニット1005、及び暗号化ユニット1004は別々に、記憶ユニットに格納されたコンピュータ命令を実行し、その結果、データ伝送装置1000は、上述の実施形態のうちのいずれかの実施形態において第2車載デバイスによって実行される方法を実行するように構成され得る。キー更新ユニット1002、復号ユニット1003、生成ユニット1005、又は暗号化ユニット1004は、汎用中央処理ユニット(CPU)、マイクロプロセッサ、又は特定用途向け集積回路(Application-Specific Integrated Circuit,ASIC)とし得る。
データ伝送装置1000が第2車載デバイスである場合、通信ユニット1001は、入力及び/又は出力インタフェース、ピン、回路、又はこれらに類するものであってもよい。キー更新ユニット1002、復号ユニット1003、生成ユニット1005、及び暗号化ユニット1004が、記憶ユニットに格納されたコンピュータ実行可能命令を実行することで、データ伝送装置1000内のチップが実施形態のうちのいずれか1つにおいて実行される方法を実行するようにすることができる。オプションで、記憶ユニットは、例えばレジスタ又はキャッシュといった、チップ内の記憶ユニットである。記憶ユニットは更に、例えば読み出し専用メモリ(Read-Only-Memory,ROM)、静的な情報及び命令を格納することができる別のタイプの静的記憶デバイス、又はランダムアクセスメモリ(Random Access Memory,RAM)といった、データ伝送装置1000内のチップ外の記憶ユニットであってもよい。
この出願の実施形態で提供される技術的ソリューションに関係するデータ伝送装置1000の概念、説明、詳細説明、及び他のステップについては、上述の方法又は他の実施形態における内容の説明を参照されたい。詳細をここで再び説明することはしない。
上述の方法に従って、図11は、この出願の一実施形態に従ったデータ伝送装置の構成の概略図である。図11に示すように、当該装置は第2デバイスとし得る。第2デバイスは、車両内の第2車載デバイス又は車載モジュールであってもよいし、第2車載デバイス内のチップ又は回路であってもよい。
また、データ伝送装置1100は更にバスシステムを含み得る。該バスシステムを介して、プロセッサ1102、メモリ1103、及びトランシーバ1101が接続され得る。
理解されるべきことには、プロセッサ1102はチップとし得る。例えば、プロセッサ1102は、フィールドプログラマブルゲートアレイ(field programmable gate array,FPGA)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、システム・オン・チップ(system on a chip,SoC)、中央処理ユニット(central processing unit,CPU)、ネットワークプロセッサ(network processor,NP)、デジタル信号プロセッサ(digital signal processor,DSP)、マイクロコントローラユニット(micro controller unit,MCU)、プログラマブルロジックデバイス(programmable logic device,PLD)、又は他の集積チップとし得る。
実装において、上述の方法のステップは、プロセッサ1102内のハードウェア集積論理回路又はソフトウェアの形態をした命令を用いることによって遂行され得る。この出願の実施形態を参照して開示された方法のステップは、ハードウェアプロセッサを用いることによって直接的に実行及び遂行されてもよいし、プロセッサ1102内のハードウェア及びソフトウェアモジュールの組み合わせを用いることによって実行及び遂行されてもよい。ソフトウェアモジュールは、例えばランダムアクセスメモリ、フラッシュメモリ、読み出し専用メモリ、プログラマブル読み出し専用メモリ、電気的消去可能プログラム可能メモリ、又はレジスタなどの、技術的に成熟した記憶媒体内に置かれ得る。記憶媒体は、メモリ1103内に位置し、プロセッサ1102が、メモリ1103から情報を読み出し、プロセッサ1102のハードウェアとの組み合わせで上述の方法におけるステップを遂行する。
なお、この出願のこの実施形態におけるプロセッサ1102は、集積回路チップとすることができ、信号処理能力を持つ。実装において、上述の方法実施形態のステップは、プロセッサ内のハードウェア集積論理回路又はソフトウェアの形態をした命令を用いることによって遂行されることができる。プロセッサは、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)若しくは他のプログラマブル論理デバイス、ディスクリートのゲート若しくはトランジスタ論理デバイス、又はディスクリートのハードウェアコンポーネントとし得る。プロセッサは、この出願の実施形態で開示された方法、ステップ、及び論理ブロック図を実装又は実行し得る。汎用プロセッサは、マイクロプロセッサであってもよく、又はプロセッサは、任意の従来からのプロセッサなどであってもよい。この出願の実施形態を参照して開示された方法のステップは、ハードウェア復号プロセッサによって直接的に実行及び遂行されてもよいし、あるいは、復号プロセッサ内のハードウェア及びソフトウェアモジュールの組み合わせを用いて実行及び遂行されてもよい。ソフトウェアモジュールは、例えばランダムアクセスメモリ、フラッシュメモリ、読み出し専用メモリ、プログラム可能読み出し専用メモリ、電気的消去可能プログラム可能メモリ、又はレジスタなどの、技術的に成熟した記憶媒体内に置かれ得る。記憶媒体は、メモリ内に位置し、プロセッサが、メモリ内の情報を読み出し、プロセッサのハードウェアとの組み合わせで上述の方法におけるステップを遂行する。
理解され得ることには、この出願のこの実施形態におけるメモリ1103は、揮発性メモリ又は不揮発性メモリとすることができ、あるいは、揮発性メモリ及び不揮発性メモリを含むことができる。不揮発性メモリは、読み出し専用メモリ(read-only memory,ROM)、プログラム可能読み出し専用メモリ(programmable ROM,PROM)、消去可能プログラム可能読み出し専用メモリ(erasable PROM,EPROM)、電気的消去可能プログラム可能読み出し専用メモリ(electrically EPROM,EEPROM)、又はフラッシュメモリとし得る。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(random access memory,RAM)とし得る。限定的記述ではなく例として、例えば、スタティックランダムアクセスメモリ(static RAM,SRAM)、ダイナミックランダムアクセスメモリ(dynamic RAM,DRAM)、同期ダイナミックランダムアクセスメモリ(synchronous DRAM,SDRAM)、ダブルデータレート同期ダイナミックランダムアクセスメモリ(double data rate SDRAM,DDR SDRAM)、エンハンスド同期ダイナミックランダムアクセスメモリ(enhanced SDRAM,ESDRAM)、シンクリンクダイナミックランダムアクセスメモリ(synchlink DRAM,SLDRAM)、及びダイレクトラムバスダイナミックランダムアクセスメモリ(direct rambus RAM,DR RAM)といった、複数の形態のRAMが使用され得る。なお、この明細書に記載されたシステム及び方法のメモリは、以下に限られないが、これらのメモリ及び他の適切なタイプの任意のメモリを含む。
データ伝送装置1100が上述の方法における第2車載デバイスに相当する場合、データ伝送装置は、プロセッサ1102、トランシーバ1101、及びメモリ1103を含み得る。メモリ1103は、命令を格納するように構成される。プロセッサ1102は、メモリ1103に格納された命令を実行して、図1から図7A及び図7Bに示した1つ以上の対応する方法における第2車載デバイスが関係するソリューションを実施するように構成される。
データ伝送装置1100が第2車載デバイスである場合、データ伝送装置1100は、上述の実施形態のうちのいずれかの実施形態において第2車載デバイスによって実行される方法を実行するように構成され得る。
データ伝送装置1100が第2車載デバイスであるとき、トランシーバ1101は、第1デバイスから第1メッセージを受信することができ、第1メッセージは、暗号化された第1データと、該第1メッセージのフレッシュ値とを含み、プロセッサ1102は、第1メッセージのフレッシュ値が第1フレッシュ値であることに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し、そして、第1フレッシュ値と、第2キーに対応する復号キーとに基づいて、第1メッセージを復号して、第1データを取得し得る。
この出願の実施形態で提供される第2車載デバイスの技術的ソリューションに関係するデータ伝送装置1100の概念、説明、詳細説明、及び他のステップについては、上述の方法又は他の実施形態における内容の説明を参照されたい。詳細をここで再び説明することはしない。
理解されるべきことには、データ伝送装置800及びデータ伝送装置1000のユニットへの分割は単に論理的な機能分割にすぎない。実際の実装においては、これらのユニットの全て又は一部が1つの物理的エンティティに統合されてもよいし、物理的に分離されてもよい。この出願のこの実施形態において、通信ユニット801、キー更新ユニット802、暗号化ユニット803、生成ユニット804、及び復号ユニット805は、図9のトランシーバ901によって実装されてよく、キー更新ユニット1002、復号ユニット1003、生成ユニット1005、及び暗号化ユニット1004は、図11のプロセッサ1102によって実装されてよい。
この出願の実施形態で提供される方法に従って、この出願は更にコンピュータプログラムプロダクトを提供する。当該コンピュータプログラムプロダクトはコンピュータプログラムコードを含み、該コンピュータプログラムコードがコンピュータ上で実行されるとき、該コンピュータは、図1から図7A及び図7Bに示した実施形態のうちのいずれかの実施形態に従った方法を実行することを可能にされる。
この出願の実施形態で提供される方法に従って、この出願は更にコンピュータ読み取り可能記憶媒体を提供する。当該コンピュータ読み取り可能記憶媒体はプログラムコードを格納し、該プログラムコードがコンピュータ上で実行されるとき、該コンピュータは、図1から図7A及び図7Bに示した実施形態のうちのいずれかの実施形態に従った方法を実行することを可能にされる。
この出願の実施形態で提供される方法に従って、この出願は更に、第1車載デバイス及び1つ以上の第2車載デバイスのうちの少なくとも2つを含むデータ伝送システムを提供する。
この出願の一実施形態は更に、この出願の上述の実施形態において言及された第1車載デバイス及び第2車載デバイスのうちの少なくとも一方を含む車両を提供する。
この明細書で使用される例えば“コンポーネント”、“モジュール”、及び“システム”などの用語は、コンピュータ関連エンティティ、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、又は実行中のソフトウェアを示すために使用される。例えば、コンポーネントは、以下に限られないが、プロセッサ上で走るアプリケーション、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、及び/又はコンピュータとし得る。図を用いることによって示されるように、コンピューティング装置及びコンピューティング装置上で走るアプリケーションはどちらもコンポーネントであり得る。1つ以上のコンポーネントがプロセス及び/又は実行のスレッドの中に存在することができ、コンポーネントは、1つのコンピュータ上に位置してもよいし、及び/又は2つ以上のコンピュータ間で分散されてもよい。また、それらのコンポーネントは、様々なデータ構造を格納した様々なコンピュータ読み取り可能媒体によって実行され得る。例えば、それらのコンポーネントは、ローカル及び/又はリモートのプロセスを用いることによって、及び、1つ以上のデータパケット(例えば、ローカルシステム内で、分散システム内で、及び/又は、信号を用いて他のシステムとインタラクトする例えばインターネットなどのネットワークを横切って、他のコンポーネントとインタラクトする2つのコンポーネントからのデータ)を持つ信号に基づいて、通信し得る。
当業者が認識し得ることには、この出願で開示された実施形態にて説明された例示的な論理ブロック(illustrative logical blocks)及びステップ(steps)と組み合わせて、この出願は、エレクトロニクスハードウェア又はコンピュータソフトウェアとエレクトロニクスハードウェアとの組み合わせによって実装され得る。機能がハードウェアによって実行されるのか、それともコンピュータソフトウェアによって実行されるのかは、これらの技術的ソリューションの具体的な用途及び設計制約に依存する。当業者は、記載された機能を、具体的な用途ごとに異なる方法を用いて実装し得るが、それらの実装はこの出願の範囲を超えるものであると見なされるべきでない。
当業者が明確に理解し得ることには、簡便で簡潔な説明のため、上述のシステム、装置、及びユニットの詳細な動作プロセスについては、前述の方法実施形態における対応するプロセスを参照されたく、詳細をここで再び説明することはしない。
この出願で提供された幾つかの実施形態において、理解されるべきことには、開示されたシステム、装置、及び方法は、別のやり方で実装されてもよい。例えば、説明された装置実施形態は単なる例である。例えば、ユニットの分割は、単なる論理機能分割であり、実際の実装においては別の分割であってもよい。例えば、複数のユニット又はコンポーネントが他のシステムへと結合されたり統合されたりしてもよいし、あるいは、一部の機構が無視されたり実行されなかったりしてもよい。また、図示又は説明された相互の結合、直接的な結合、又は通信接続は、何らかのインタフェースを介して実装されてもよい。装置又はユニット間の間接的な結合又は通信接続は、電気的な形態、機械的な形態、又は他の形態で実装されてもよい。
別々の部分として記載されたユニットは、物理的に分離されてもよいし、されなくてもよく、また、ユニットとして図示された部分は、物理的なユニットであってよいし、なくてもよく、1つの位置に置かれてもよく、あるいは、複数のネットワークユニット上に分散されてもよい。ユニットの一部又は全てが、実施形態におけるソリューションの目的を達成するための実際の要求に基づいて選択され得る。
また、この出願の実施形態における複数の機能ユニットが1つの処理ユニットへと統合されてもよく、それらのユニットの各々が物理的に単独で存在してもよく、あるいは、2つ以上のユニットが1つのユニットへと統合される。
機能がソフトウェア機能ユニットの形態で実装されて、独立したプロダクトとして販売又は使用される場合、それらの機能はコンピュータ読み取り可能記憶媒体に格納され得る。このような理解に基づき、この出願の技術的ソリューションは本質的に、又は従来技術に寄与する部分は、又は技術的ソリューションの一部は、ソフトウェアプロダクトの形態で実装され得る。コンピュータソフトウェアプロダクトは、記憶媒体に記憶され、この出願の実施形態に記載された方法におけるステップの全て又は一部を実行するようにコンピュータ装置(パーソナルコンピュータ、サーバ、又はネットワーク装置であってもよい)に指示するための幾つかの命令を含む。前述の記憶媒体は、例えば、USBフラッシュドライブ、リムーバブルハードディスク、読み出し専用メモリ(read-only memory,ROM)、ランダムアクセスメモリ(random access memory,RAM)、磁気ディスク、又はコンパクトディスクなどの、プログラムコードを格納することができる任意の媒体を含む。
以上の説明は、単にこの出願の特定の実装であり、この出願の保護範囲はそれに限定されない。この出願にて開示された技術範囲内で当業者が容易に考え付く如何なる変更又は置換もこの出願の保護範囲に入るものである。従って、この出願の保護範囲は請求項の保護範囲に従うものである。
Claims (44)
- 第1デバイスに適用されるデータ伝送方法であって、
前記第1デバイスによって送信されるメッセージに対応するフレッシュ値が第1フレッシュ値であるとき、暗号化キーを第1キーから第2キーに更新し、前記第1フレッシュ値と前記第2キーとに基づいて第1キーストリームを生成し、
前記第1キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得し、
前記暗号化された第1データと前記第1フレッシュ値とに基づいて第1メッセージを生成し、
前記第1メッセージを第2デバイスに送信する、
ことを有する方法。 - 前記第2デバイスによって送信された第3メッセージを受信し、該第3メッセージは、前記第2デバイスが前記暗号化キーを前記第2キーに更新したことを指し示す指示情報を有し、
前記第3メッセージに基づいて、復号キーを、前記第1キーに対応する復号キーから前記第2キーに対応する復号キーに更新する、
ことを更に有する請求項1に記載の方法。 - 前記第3メッセージに基づいて前記第1キーを削除する、
ことを更に有する請求項2に記載の方法。 - 前記第3メッセージは、暗号化された第3データ、前記第3メッセージのフレッシュ値、及び第1識別子を有し、前記指示情報は前記第1識別子である、請求項2又は3に記載の方法。
- 前記第3メッセージは、暗号化された第3データ及び前記第3メッセージのフレッシュ値を有し、前記指示情報は、特定の条件を満たす前記第3メッセージの前記フレッシュ値である、請求項2又は3に記載の方法。
- 前記特定の条件は、
前記第3メッセージの前記フレッシュ値と、前記第1デバイスによって最後に受信された前記第2デバイスからのメッセージのフレッシュ値との間に、プリセットされた値が存在すること、
を有する、請求項5に記載の方法。 - 前記第1メッセージを第2デバイスに前記送信することの後に、当該方法は更に、切替識別子を有効状態に設定することを有し、
前記第3メッセージに基づいて、復号キーを、前記第1キーに対応する復号キーから前記第2キーに対応する復号キーに前記更新することは、
前記第3メッセージと、前記切替識別子が前記有効状態であることとに基づいて、前記復号キーを、前記第1キーに対応する前記復号キーから前記第2キーに対応する前記復号キーに更新する、
ことを有し、
前記復号キーを前記第1キーに対応する前記復号キーから前記第2キーに対応する前記復号キーに前記更新することの後に、当該方法は更に、前記切替識別子を無効状態に設定することを有する、
請求項2乃至6のいずれか一項に記載の方法。 - 前記第1メッセージを第2デバイスに前記送信することの前に、当該方法は更に、
タイマーを開始し、
前記タイマーが満了したときに、復号キーを、前記第1キーに対応する復号キーから前記第2キーに対応する復号キーに更新する、
ことを有する、請求項1に記載の方法。 - 前記タイマーが満了したときに、前記第1キーを削除する、
ことを更に有する請求項8に記載の方法。 - 前記タイマーが満了していないとき、前記第1キーに対応する前記復号キーを用いることによって、前記第2デバイスから前記第1デバイスに送信されたメッセージを復号する、
ことを更に有する請求項8又は9に記載の方法。 - 前記タイマーが満了していないときに、前記第2デバイスから前記第1デバイスに送信された前記メッセージが、前記第1キーに対応する前記復号キーを用いることによって成功裏に復号されることができない場合に、前記第2キーに対応する前記復号キーを用いることによって、前記第2デバイスから前記第1デバイスに送信された前記メッセージを復号する、
ことを更に有する請求項10に記載の方法。 - 前記第2デバイスによって送信された第4メッセージを受信し、
前記第4メッセージが第2フレッシュ値を有することに基づいて、前記暗号化キーを前記第2キーから第3キーに更新し、前記第3キーと、前記第2デバイスによって送信されるものであり且つ第2データを搬送する第5メッセージのフレッシュ値と、に基づいて第2キーストリームを生成し、
前記第2キーストリームに基づいて前記第2データを暗号化して、暗号化された第2データを取得し、
前記暗号化された第2データと前記フレッシュ値とに基づいて前記第5メッセージを生成し、
前記第5メッセージを前記第2デバイスに送信する、
ことを更に有する請求項1乃至11のいずれか一項に記載の方法。 - 前記第2デバイスによって送信された第4メッセージを前記受信することの後に、当該方法は更に、
前記第4メッセージが前記第2フレッシュ値を有することに基づいて、前記第3キーに一致する復号キーを用いることによって前記第4メッセージを成功裏に復号する、
ことを有する、請求項12に記載の方法。 - 第2デバイスに適用されるデータ伝送方法であって、
第1デバイスからの第1メッセージを受信し、該第1メッセージは、暗号化された第1データと、該第1メッセージのフレッシュ値とを有し、
前記第1メッセージの前記フレッシュ値が第1フレッシュ値であることに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新し、
前記第1フレッシュ値と、前記第2キーに対応する前記復号キーとに基づいて、前記第1メッセージを復号して、前記第1データを取得する、
ことを有する方法。 - 前記第1メッセージの前記フレッシュ値が前記第1フレッシュ値であることに基づいて、暗号化キーを前記第1キーから前記第2キーに更新し、
前記第2キーを用いることによって暗号化された第3データを有する第3メッセージを前記第1デバイスに送信する、
ことを更に有する請求項14に記載の方法。 - 前記第3メッセージは更に、前記第2デバイスが前記暗号化キーを前記第2キーに更新したことを指し示す指示情報を有する、請求項15に記載の方法。
- 前記第3メッセージは更に第1識別子を有し、前記指示情報は該第1識別子である、請求項16に記載の方法。
- 前記第3メッセージは更に、前記第3メッセージのフレッシュ値を有し、前記指示情報は、特定の条件を満たす前記第3メッセージの前記フレッシュ値である、請求項16に記載の方法。
- 前記特定の条件は、
前記第3メッセージの前記フレッシュ値と、前記第2デバイスから前記第1デバイスに最後に送信されたメッセージのフレッシュ値との間に、プリセットされた値が存在すること、
を有する、請求項18に記載の方法。 - データ伝送装置であって、
第1デバイスによって送信されるメッセージに対応するフレッシュ値が第1フレッシュ値であるとき、暗号化キーを第1キーから第2キーに更新するように構成されたキー更新ユニットと、
前記第1フレッシュ値と前記第2キーとに基づいて第1キーストリームを生成し、該第1キーストリームに基づいて第1データを暗号化して、暗号化された第1データを取得するように構成された暗号化ユニットと、
前記暗号化された第1データと前記第1フレッシュ値とに基づいて第1メッセージを生成するように構成された生成ユニットと、
前記第1メッセージを第2デバイスに送信するように構成された通信ユニットと、
を有する装置。 - 前記通信ユニットは更に、前記第2デバイスによって送信された第3メッセージを受信するように構成され、該第3メッセージは、前記第2デバイスが前記暗号化キーを前記第2キーに更新することを指し示すために使用される指示情報を有し、
前記キー更新ユニットは更に、前記第3メッセージに基づいて、復号キーを、前記第1キーに対応する復号キーから前記第2キーに対応する復号キーに更新するように構成される、
請求項20に記載の装置。 - 前記キー更新ユニットは更に、前記第3メッセージに基づいて前記第1キーを削除するように構成される、請求項21に記載の装置。
- 前記第3メッセージは、暗号化された第3データ、前記第3メッセージのフレッシュ値、及び第1識別子を有し、前記指示情報は前記第1識別子である、請求項21又は22に記載の装置。
- 前記第3メッセージは、暗号化された第3データ及び前記第3メッセージのフレッシュ値を有し、前記指示情報は、特定の条件を満たす前記第3メッセージのフレッシュ値である、請求項21又は22に記載の装置。
- 前記特定の条件は、
前記第3メッセージの前記フレッシュ値と、前記第1デバイスによって最後に受信された前記第2デバイスからのメッセージのフレッシュ値との間に、プリセットされた値が存在すること、
を有する、請求項24に記載の装置。 - 前記通信ユニットが前記第1メッセージを第2デバイスに送信した後に、前記キー更新ユニットは更に、切替識別子を有効状態に設定し、前記第3メッセージと、前記切替識別子が前記有効状態であることとに基づいて、前記復号キーを、前記第1キーに対応する前記復号キーから前記第2キーに対応する前記復号キーに更新し、且つ、前記復号キーが、前記第1キーに対応する前記復号キーから前記第2キーに対応する前記復号キーに更新された後に、前記切替識別子を無効状態に設定する、ように構成される、請求項21乃至25のいずれか一項に記載の装置。
- 前記通信ユニットが前記第1メッセージを第2デバイスに送信した後に、前記キー更新ユニットは更に、タイマーを開始し、該タイマーが満了したときに、復号キーを、前記第1キーに対応する復号キーから前記第2キーに対応する復号キーに更新するように構成される、請求項20に記載の装置。
- 前記キー更新ユニットは更に、前記タイマーが満了したときに、前記第1キーを削除するように構成される、請求項27に記載の装置。
- 当該装置は更に復号ユニットを有し、
前記復号ユニットは、前記タイマーが満了していないとき、前記第1キーに対応する前記復号キーを用いることによって、前記第2デバイスから前記第1デバイスに送信されたメッセージを復号するように構成される、
請求項27又は28に記載の装置。 - 前記復号ユニットは更に、前記タイマーが満了していないときに、前記第2デバイスから前記第1デバイスに送信された前記メッセージが、前記第1キーに対応する前記復号キーを用いることによって成功裏に復号されることができない場合に、前記第2キーに対応する前記復号キーを用いることによって、前記第2デバイスから前記第1デバイスに送信された前記メッセージを復号するように構成される、請求項29に記載の装置。
- 前記通信ユニットは更に、前記第2デバイスによって送信された第4メッセージを受信し、第5メッセージを前記第2デバイスに送信するように構成され、
前記キー更新ユニットは更に、前記第4メッセージが第2フレッシュ値を有することに基づいて、前記暗号化キーを前記第2キーから第3キーに更新するように構成され、
前記暗号化ユニットは更に、前記第3キーと、前記第2デバイスによって送信されるものであり且つ第2データを搬送する前記第5メッセージのフレッシュ値と、に基づいて第2キーストリームを生成し、該第2キーストリームに基づいて前記第2データを暗号化して、暗号化された第2データを取得するように構成され、
前記生成ユニットは更に、前記暗号化された第2データと前記フレッシュ値とに基づいて前記第5メッセージを生成するように構成される、
請求項20乃至30のいずれか一項に記載の装置。 - 当該装置は更に前記復号ユニットを有し、
前記通信ユニットが、前記第2デバイスによって送信された第4メッセージを受信した後に、前記復号ユニットは更に、前記第4メッセージが前記第2フレッシュ値を有することに基づいて、前記第3キーに一致する復号キーを用いることによって前記第4メッセージを成功裏に復号するように構成される、請求項31に記載の装置。 - データ伝送装置であって、
第1デバイスからの第1メッセージを受信するように構成された通信ユニットであり、前記第1メッセージは、暗号化された第1データと、該第1メッセージのフレッシュ値とを有する、通信ユニットと、
前記第1メッセージの前記フレッシュ値が第1フレッシュ値であることに基づいて、復号キーを、第1キーに対応する復号キーから第2キーに対応する復号キーに更新するように構成されたキー更新ユニットと、
前記第1フレッシュ値と、前記第2キーに対応する前記復号キーとに基づいて、前記第1メッセージを復号して、前記第1データを取得するように構成された復号ユニットと、
有する装置。 - 前記キー更新ユニットは更に、前記第1メッセージの前記フレッシュ値が前記第1フレッシュ値であることに基づいて、暗号化キーを前記第1キーから前記第2キーに更新するように構成され、
前記通信ユニットは更に、前記第2キーを用いることによって暗号化された第3データを有する第3メッセージを前記第1デバイスに送信するように構成される、
請求項33に記載の装置。 - 前記第3メッセージは更に、第2デバイスが前記暗号化キーを前記第2キーに更新することを指し示すために使用される指示情報を有する、請求項34に記載の装置。
- 前記第3メッセージは更に第1識別子を有し、前記指示情報は該第1識別子である、請求項35に記載の装置。
- 前記第3メッセージは更に、前記第3メッセージのフレッシュ値を有し、前記指示情報は、特定の条件を満たす前記第3メッセージのフレッシュ値である、請求項35に記載の装置。
- 前記特定の条件は、
前記第3メッセージの前記フレッシュ値と、前記第2デバイスによって前記第1デバイスに最後に送信されたメッセージのフレッシュ値との間に、プリセットされた値が存在すること、
を有する、請求項37に記載の通信装置。 - データ伝送装置であって、
プロセッサと通信インタフェースとを有し、
前記プロセッサは、前記通信インタフェースを介してメモリに結合され、前記プロセッサは、前記メモリ内のプログラムコードを実行して、請求項1乃至13のいずれか一項に記載の方法を実行するように構成される、
データ伝送装置。 - データ伝送装置であって、
プロセッサと通信インタフェースとを有し、
前記プロセッサは、前記通信インタフェースを介してメモリに結合され、前記プロセッサは、前記メモリ内のプログラムコードを実行して、請求項14乃至19のいずれか一項に記載の方法を実行するように構成される、
データ伝送装置。 - 第1デバイス及び第2デバイスを有する車両であって、前記第1デバイスは、請求項1乃至13のいずれか一項に記載の方法を実行するように構成され、前記第2デバイスは、請求項14乃至19のいずれか一項に記載の方法を実行するように構成される、車両。
- 第1デバイス及び第2デバイスを有するデータ伝送システムであって、前記第1デバイスは、請求項1乃至13のいずれか一項に記載の方法を実行するように構成され、前記第2デバイスは、請求項14乃至19のいずれか一項に記載の方法を実行するように構成される、データ伝送システム。
- コンピュータ読み取り可能記憶媒体であって、当該コンピュータ読み取り可能記憶媒体はコンピュータプログラムを格納し、該コンピュータプログラムがプロセッサによって実行されるときに、データ伝送装置が、請求項1乃至13のいずれか一項に記載の方法を実行することが可能にされる、又は請求項14乃至19のいずれか一項に記載の方法を実行することが可能にされる、コンピュータ読み取り可能記憶媒体。
- コンピュータプログラムプロダクトであって、当該コンピュータプログラムプロダクトがプロセッサ上で実行されるときに、データ伝送装置が、請求項1乃至13のいずれか一項に記載の方法を実行することが可能にされる、又は請求項14乃至19のいずれか一項に記載の方法を実行することが可能にされる、コンピュータプログラムプロダクト。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/140012 WO2022140895A1 (zh) | 2020-12-28 | 2020-12-28 | 一种数据传输方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024500544A true JP2024500544A (ja) | 2024-01-09 |
Family
ID=75609546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023539381A Pending JP2024500544A (ja) | 2020-12-28 | 2020-12-28 | データ伝送方法及び装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230345239A1 (ja) |
EP (1) | EP4266717A4 (ja) |
JP (1) | JP2024500544A (ja) |
KR (1) | KR20230121137A (ja) |
CN (2) | CN112740726B (ja) |
WO (1) | WO2022140895A1 (ja) |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8983069B2 (en) * | 2013-03-14 | 2015-03-17 | Robert Bosch Gmbh | System and method for counter mode encrypted communication with reduced bandwidth |
US10721619B2 (en) * | 2014-05-13 | 2020-07-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and network nodes for managing wireless device associated information in a wireless communication network |
US9769664B1 (en) * | 2014-09-04 | 2017-09-19 | Sensys Networks | Nonce silent and replay resistant encryption and authentication wireless sensor network |
KR101882694B1 (ko) * | 2016-11-03 | 2018-07-27 | 현대오토에버 주식회사 | Mac을 포함하는 can 메시지 송수신을 위한 방법 및 시스템 |
US10343649B2 (en) * | 2017-10-23 | 2019-07-09 | Afero, Inc. | Wireless key system and method |
CN109729056A (zh) * | 2017-10-30 | 2019-05-07 | 北京长城华冠汽车科技股份有限公司 | 基于车联网的整车网络安全防护方法及整车网络架构 |
CN109936444B (zh) * | 2017-12-18 | 2021-07-09 | 华为技术有限公司 | 一种密钥生成方法及装置 |
JP2019140577A (ja) * | 2018-02-13 | 2019-08-22 | 株式会社デンソー | 電子制御装置及び通信システム |
US10553058B2 (en) * | 2018-06-29 | 2020-02-04 | Micron Technology, Inc. | Secure wireless lock-actuation exchange |
US11290437B2 (en) * | 2018-12-27 | 2022-03-29 | Beijing Voyager Technology Co., Ltd. | Trusted platform protection in an autonomous vehicle |
US11240006B2 (en) * | 2019-03-25 | 2022-02-01 | Micron Technology, Inc. | Secure communication for a key exchange |
DE102019204608B3 (de) * | 2019-04-01 | 2020-08-27 | Conti Temic Microelectronic Gmbh | Vorrichtungen und Verfahren zum Erzeugen und zur Authentisierungsprüfung mindestens eines in einem Bus-System (BU) eines Kraftfahrzeugs zu übertragenden Datenpakets |
CN110933110A (zh) * | 2019-12-17 | 2020-03-27 | 东软集团股份有限公司 | 一种车载网络的通信方法、发送端、接收端与车辆 |
CN111629359A (zh) * | 2020-06-10 | 2020-09-04 | 西安工程大学 | 一种基于代理车辆的消息认证方法 |
CN111698086B (zh) * | 2020-06-12 | 2023-12-12 | 阿波罗智联(北京)科技有限公司 | 用于数据传输的方法和装置 |
-
2020
- 2020-12-28 CN CN202080005005.7A patent/CN112740726B/zh active Active
- 2020-12-28 CN CN202210610234.2A patent/CN115175137A/zh active Pending
- 2020-12-28 EP EP20967247.6A patent/EP4266717A4/en active Pending
- 2020-12-28 JP JP2023539381A patent/JP2024500544A/ja active Pending
- 2020-12-28 WO PCT/CN2020/140012 patent/WO2022140895A1/zh active Application Filing
- 2020-12-28 KR KR1020237024929A patent/KR20230121137A/ko active Search and Examination
-
2023
- 2023-06-27 US US18/342,497 patent/US20230345239A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20230121137A (ko) | 2023-08-17 |
CN115175137A (zh) | 2022-10-11 |
US20230345239A1 (en) | 2023-10-26 |
WO2022140895A1 (zh) | 2022-07-07 |
EP4266717A4 (en) | 2024-01-24 |
EP4266717A1 (en) | 2023-10-25 |
CN112740726B (zh) | 2022-06-10 |
CN112740726A (zh) | 2021-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6126980B2 (ja) | ネットワーク装置およびネットワークシステム | |
US9838870B2 (en) | Apparatus and method for authenticating network devices | |
Wang et al. | NOTSA: Novel OBU with three-level security architecture for internet of vehicles | |
WO2021168859A1 (zh) | 一种控制器区域网can总线安全通信方法及装置 | |
KR102450811B1 (ko) | 차량 내부 네트워크의 키 관리 시스템 | |
US20220353056A1 (en) | Communication method and apparatus | |
US20220311751A1 (en) | Secure Communications Method and Apparatus | |
WO2022155803A1 (zh) | 数据加密的方法、数据传输的方法、相关装置以及设备 | |
JP2017121091A (ja) | Ecu、及び車用ネットワーク装置 | |
CN112383897B (zh) | 基于智能网联的信息传输方法、装置、介质和电子设备 | |
CN115277219A (zh) | 消息加密方法、解密方法、装置及存储介质 | |
WO2023279283A1 (zh) | 建立车辆安全通信的方法、车辆、终端及系统 | |
US11431730B2 (en) | Systems and methods for extending authentication in IP packets | |
JP2023519059A (ja) | ネットワークのセキュリティ手段を高めるネットワーク上におけるデータ交換のための方法およびシステムおよびその種のシステムを包含する乗り物 | |
WO2018076190A1 (zh) | 通信方法、终端、核心网用户面设备和接入网设备 | |
CN115834210A (zh) | 一种量子安全网络数据的发送、接收方法及通信系统 | |
JP2024500544A (ja) | データ伝送方法及び装置 | |
Murvay et al. | Accommodating time-triggered authentication to FlexRay demands | |
CN113489589A (zh) | 数据加密、解密方法、装置及电子设备 | |
Luo et al. | Routing and security mechanisms design for automotive tsn/can fd security gateway | |
KR20220000537A (ko) | 차량 네트워크 기반의 데이터 송수신 시스템 및 그 방법 | |
CN112134884A (zh) | 一种报文序列号的更新方法 | |
CN116633698B (zh) | 数据传输方法、装置、计算机设备、存储介质和程序产品 | |
CN115150179B (zh) | 软硬生命老化控制方法和相关装置、芯片、介质和程序 | |
JP6681755B2 (ja) | 車両用通信網装置及び通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230802 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230802 |