TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2025011194
公報種別公開特許公報(A)
公開日2025-01-23
出願番号2024176529,2024158145
出願日2024-10-08,2020-03-24
発明の名称コード行挙動および関係モデルの発生ならびに署名
出願人オーロラ ラブズ リミテッド
代理人個人,個人,個人,個人,個人
主分類G06F 21/57 20130101AFI20250116BHJP(計算;計数)
要約【課題】好適なコード行挙動および関係モデルの発生ならびに署名を提供する方法を提供する。
【解決手段】方法は、実行可能コードを識別し、機能的分析を実施し、実行可能コードによって表される複数のシンボルおよびシンボル関係を判定することを含む。複数のシンボルは、関数、変数、バッファまたはオブジェクトを含む。方法はまた、判定した複数のシンボルおよび関係に基づいて、コード行挙動および関係モデルのうちの第1のコード行挙動および関係モデルを発生させ、第1の署名演算を実施し、第1の一意の署名値を生成し、リンクさせること、実行可能コードの変更された部分を識別すること、判定した複数のシンボルおよび関係に基づいて、第2のコード行挙動および関係モデルを発生させること並びに第2の署名演算を実施し、第2の一意の署名値を生成し、第2のコード行挙動および関係モデルにリンクさせることと、を含む。
【選択図】図6
特許請求の範囲【請求項1】
非一過性コンピュータ可読媒体であって、前記非一過性コンピュータ可読媒体は、命令を含み、前記命令は、少なくとも1つのプロセッサによって実行されると、コード行挙動および関係モデルを発生させて前記コード行挙動および関係モデルに署名するための動作を前記少なくとも1つのプロセッサに実施させ、前記コード行挙動および関係モデルは、実行可能コードによって表される複数のシンボルと前記複数のシンボル間の複数のシンボル関係とをモデル化したものであり、前記動作は、
コントローラのための前記実行可能コードを識別することと、
前記実行可能コードの機能的分析を実施し、前記実行可能コードによって表される前記複数のシンボルおよび前記複数のシンボル間の前記複数のシンボル関係を判定することであって、前記複数のシンボルは、関数、変数、バッファ、またはオブジェクトのうちの少なくとも2つを含む、ことと、
前記判定された複数のシンボルおよび複数のシンボル関係に基づいて、前記実行可能コードのための前記コード行挙動および関係モデルのうちの第1のコード行挙動および関係モデルを発生させることと、
第1の署名演算を前記第1のコード行挙動および関係モデル上で実施し、第1の一意の署名値を生成することと、
前記第1の一意の署名値を前記第1のコード行挙動および関係モデルにリンクさせることと、
前記コントローラのための前記実行可能コードの変更された部分を識別することと、
前記判定された複数のシンボルおよび複数のシンボル関係に基づいて、前記実行可能コードの前記変更された部分の機能の実行を表す、第2のコード行挙動および関係モデルを発生させることと、
第2の署名演算を前記第2のコード行挙動および関係モデル上で実施し、第2の一意の署名値を生成することと、
前記第2の一意の署名値を前記第2のコード行挙動および関係モデルにリンクさせることと
を含む、非一過性コンピュータ可読媒体。
続きを表示(約 1,600 文字)【請求項2】
前記動作は、複数の異なるコード行挙動および関係モデルと関連付けられる複数の署名値とともに、前記第1の一意の署名値または前記第2の一意の署名値のうちの少なくとも1つを情報テーブル内に記憶することをさらに含む、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項3】
前記実行可能コードは、ソフトウェア変更デルタファイルである、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項4】
前記第1の一意の署名値または前記第2の一意の署名値のうちの少なくとも1つは、ハッシュ値または暗号化ノンス数である、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項5】
前記機能的分析を実施することは、前記コントローラのための前記実行可能コードを、セグメントに、前記セグメントの機能的効果または前記セグメント間の機能関係のうちの少なくとも1つに従って、分割することを含む、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項6】
前記第1のコード行挙動および関係モデルまたは前記第2のコード行挙動および関係モデルのうちの少なくとも1つは、統計的分類プロセスを通して発生させられる、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項7】
前記第1のコード行挙動および関係モデルまたは前記第2のコード行挙動および関係モデルのうちの少なくとも1つは、動的分析プロセスを通して発生させられる、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項8】
前記機能的分析を実施することは、前記実行可能コードを物理的または仮想コンピューティング環境内でシミュレートすることを含む、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項9】
前記第1の一意の署名値を前記第1のコード行挙動および関係モデルにリンクさせることは、前記第1の一意の署名値および前記第1のコード行挙動および関係モデルの両方を含むファイルを発生させることを含む、請求項1に記載の非一過性コンピュータ可読媒体。
【請求項10】
コード行挙動および関係モデルを発生させて前記コード行挙動および関係モデルに署名するためのコンピュータ実装方法であって、前記コード行挙動および関係モデルは、実行可能コードによって表される複数のシンボルと前記複数のシンボル間の複数のシンボル関係とをモデル化したものであり、前記方法は、
コントローラのための前記実行可能コードを識別することと、
前記実行可能コードの機能的分析を実施し、前記実行可能コードによって表される前記複数のシンボルおよび前記複数のシンボル間の前記複数のシンボル関係を判定することであって、前記複数のシンボルは、関数、変数、バッファ、またはオブジェクトのうちの少なくとも2つを含む、ことと、
前記判定された複数のシンボルおよび複数のシンボル関係に基づいて、前記実行可能コードのための前記コード行挙動および関係モデルのうちの第1のコード行挙動および関係モデルを発生させることと、
第1の署名演算を前記第1のコード行挙動および関係モデル上で実施し、第1の一意の署名値を生成することと、
前記第1の一意の署名値を前記第1のコード行挙動および関係モデルにリンクさせることと、
前記コントローラのための前記実行可能コードの変更された部分を識別することと、
前記判定された複数のシンボルおよび複数のシンボル関係に基づいて、前記実行可能コードの前記変更された部分の機能の実行を表す、第2のコード行挙動および関係モデルを発生させることと、
第2の署名演算を前記第2のコード行挙動および関係モデル上で実施し、第2の一意の署名値を生成することと、
前記第2の一意の署名値を前記第2のコード行挙動および関係モデルにリンクさせることと
を含む、コンピュータ実装方法。

発明の詳細な説明【技術分野】
【0001】
(関連出願の相互参照)
本願は、参照することによってその全体として本明細書に組み込まれる、2019年3月25日に出願された、米国仮特許出願第62/823,131号の優先権を主張する。
続きを表示(約 2,800 文字)【0002】
本明細書に説明される主題は、概して、分析およびセキュリティを、車両ソフトウェアおよびシステム、ならびに電子制御ユニット(ECU)または他のコントローラ等のコントローラを利用する、種々の他のタイプのモノのインターネット(IoT)またはネットワーク接続システムに提供するための技法に関する。例えば、ある開示される実施形態は、コード行挙動および関係モデルを発生させ、それに署名するステップを対象とする。これらの技法は、コードへの変更に続いて、ソフトウェア機能性変更のステータスを提供するステップを含んでもよい。いくつかの技法は、コード行挙動および関係モデルを通して、ソフトウェア相互依存性を識別するステップ、異種コードソースの中のソフトウェア誤動作のソースを照合するステップ、および/またはコード行挙動ならびに関係モデルを通して、ソフトウェア依存性を識別するステップを伴ってもよい。他の技法は、コード行挙動および関係モデルを使用して、ハードウェア変更の影響を予期してもよい。さらに、いくつかの技法は、コード行挙動および関係モデルを通して、コントローラソフトウェア更新の完全性を照合するステップ、または動的制御フロー完全性を提供するステップに関連してもよい。さらに別の実施例として、いくつかの技法は、コード行挙動および関係モデルを通して、コード実行の動的可視化を提供してもよい。
【背景技術】
【0003】
現代の車両および他のモノのインターネット(IoT)システムは、多くの場合、多くの異なるコントローラを利用し、これは、随時、ソフトウェア変更を必要とし得る。これらのソフトウェア変更は、多くの課題を提示する。例えば、従来のシステムにおいて、無線でソフトウェア変更を承認するために、コントローラは、悪意のあるソフトウェアファイルの導入を通して等、攻撃を受けやすくあり得る、通信チャネルを有し得る。いくつかのシナリオでは、そのような脆弱性は、コントローラ等のデバイスにおけるソフトウェア変更(例えば、更新、アップグレード、パッチ、修正、再較正、構成管理等)の認証の欠如によって増幅され得る。別の実施例として、ソフトウェア開発者は、単一コンポーネントを越えて他のコンポーネントまで、さらには、システム全体に延在し得る、コード変更によって生じる機能的効果を判定することが困難であり得る。これは、システムの意図されない変更につながり得、これは、ある場合には、機能性を損なわせる、またはさらに、ユーザを危険に曝し得る(例えば、車両内の重要なコンポーネントが、危殆化される)。多くの従来の設定では、ソフトウェアの断片間の機能的効果における差異を指摘し、かつそのような差異の伝搬効果を判定することは、リソース集約的であり得る(可能である場合でも)。さらに、ソフトウェア更新が、機能的等価性を保存するかどうかを確認することは、従来の手段を通して遂行することが困難であり得、そのような確認を行うために、大量のデータおよび帯域幅を使用して、長期プロセスを要求し得る。多くの場合、現在の方法は、開発者に、機能的影響の大ざっぱな理解のみ、または重要な機能情報を強調していない、コード行が集中した表示を提供し、ユーザが、コードの変更から生じ得る、可能性として考えられる機能的変更を理解するために時間およびリソース集約的プロセスにし得る。
【0004】
従来のソフトウェア分析およびセキュリティ技法は、現在、これらの問題点に対処するように装備されていない。例えば、それらは、新しいコードによって生じる機能的変更を判定し、機能的変更の広範囲に及ぶ影響を判定し、機能的一貫性を確実にする一方、機能的に破壊的、非認可、および/または悪意のあるソフトウェア更新のインストールを防止するための適正な技法を欠いている。さらに、多くの現在の方法はまた、ソフトウェア開発者に、その破壊性の程度にかかわらず、機能的変更を知らせていない。
【0005】
現在のシステムの技術的欠点に照らして、コントローラおよびシステムのための包括的セキュリティ保護を提供するための改良されたシステムおよび方法の必要性が存在する。下記に議論される技法は、セキュリティ、効率、照合可能性、および可用性における多くの技術的改良をもたらす。例えば、いくつかの技法によると、コントローラのためのコードが、機能的に分析され得、コード行挙動および関係モデルが、発生され得る。署名演算が、コード行挙動および関係モデル上で実施され得、これは、モデル全体を精査する必要なく、コードまたは別のモデルに対するコード行挙動および関係モデルの高速査定を可能にし得る。
【0006】
関連利点は、2つのコード行挙動および関係モデルの機能的差比較を伴う、開示される方法から生じ得る。そのような比較は、ステータスおよび/または判定された機能的等価性の程度をもたらし得る。本情報は、ソフトウェア変更に関する決定を行うために、デバイス、システム、および/またはユーザによって使用されてもよい。
【0007】
本明細書に説明されるようなコード行挙動および関係モデルはまた、ソフトウェア相互依存性の検出を可能にし得る。例えば、いくつかの開示される技法によると、機能的コード行挙動および関係モデルは、可能性として考えられるソフトウェア更新等と併せて分析され、同一コントローラ上のコードの異なる部分間の相互依存性を識別してもよい。
【0008】
さらに別の利点として、開示される技法は、潜在的ソフトウェア変更ならびに関連付けられるソースによって影響される、コードまたはデバイスの識別を可能にする。本識別を使用して、通知は、関連付けられるソースに送信され、より高速のシステムまたはデバイス修復を確実にし得る。
【0009】
開示される実施形態はまた、ハードウェア変更の影響を予期するステップに関する。例えば、ハードウェアの新しい部品が、コード行挙動および関係モデルを活用して、ハードウェアの新しい部品に関する機能的等価性のステータスを判定する、分析プロセスをプロンプトしてもよい。判定されたステータスに基づいて、他の応答性アクションが、システムの中へのハードウェアのよりシームレスな実装を可能にするために使用されてもよい。
【0010】
ソフトウェア相互依存性を識別するステップと同様に、ソフトウェア依存性を識別するステップもまた、開示される技法を用いて達成されてもよい。例えば、複数のコード行挙動および関係モデルが、システム全体を通してコード変更の影響を辿り、システム内の意図されない結果の早期識別および新しいソフトウェアの安全展開を可能にするために使用されてもよい。
(【0011】以降は省略されています)

この特許をJ-PlatPatで参照する
Flag Counter

関連特許

個人
情報提示方法
12日前
個人
プログラム
11日前
個人
プログラム
4日前
個人
アカウントマップ
5日前
個人
RFタグ読取装置
29日前
個人
自動精算システム
20日前
個人
売買システム
26日前
個人
管理サーバ
1か月前
個人
市場受発注システム
18日前
個人
発想支援方法及びシステム
15日前
日本精機株式会社
車両用表示装置
28日前
日本精機株式会社
車両用表示装置
28日前
個人
学習装置及び推論装置
4日前
個人
分類処理プログラム及び方法
15日前
個人
VRによる人体各部位の立体化
1か月前
井関農機株式会社
ロボット作業車両
20日前
富士通株式会社
金融システム
12日前
トヨタ自動車株式会社
推定装置
1か月前
キヤノン株式会社
情報処理装置
1か月前
株式会社プレニーズ
仲介システム
5日前
村田機械株式会社
人員配置システム
15日前
トヨタ自動車株式会社
作業管理装置
18日前
トヨタ自動車株式会社
情報通知方法
18日前
トヨタ自動車株式会社
作業評価装置
27日前
トヨタ自動車株式会社
記号識別方法
1か月前
トヨタ自動車株式会社
作業評価装置
1か月前
ブラザー工業株式会社
無線通信装置
18日前
個人
情報処理装置およびプログラム
1か月前
トヨタ自動車株式会社
画像処理装置
1か月前
個人
販売支援システム
20日前
大王製紙株式会社
RFIDタグ
1か月前
トヨタ自動車株式会社
習熟度判定装置
1か月前
トヨタ自動車株式会社
生成装置
12日前
AICRO株式会社
情報処理システム
18日前
NISSHA株式会社
入力装置
15日前
株式会社半導体エネルギー研究所
検索システム
18日前
続きを見る