JP5591841B2 - デバイスの完全性を判定する方法及び装置 - Google Patents

デバイスの完全性を判定する方法及び装置 Download PDF

Info

Publication number
JP5591841B2
JP5591841B2 JP2012028360A JP2012028360A JP5591841B2 JP 5591841 B2 JP5591841 B2 JP 5591841B2 JP 2012028360 A JP2012028360 A JP 2012028360A JP 2012028360 A JP2012028360 A JP 2012028360A JP 5591841 B2 JP5591841 B2 JP 5591841B2
Authority
JP
Japan
Prior art keywords
complete
response
application
integrity
reference value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012028360A
Other languages
English (en)
Other versions
JP2012141996A (ja
Inventor
イバン・ヒュー・マクリーン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2012141996A publication Critical patent/JP2012141996A/ja
Application granted granted Critical
Publication of JP5591841B2 publication Critical patent/JP5591841B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/305Authentication, i.e. establishing the identity or authorisation of security principals by remotely controlling device operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/565Static detection by checking file integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/40Monitoring; Testing of relay systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/104Location integrity, e.g. secure geotagging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2103Challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Social Psychology (AREA)
  • Virology (AREA)
  • Electromagnetism (AREA)
  • Mobile Radio Communication Systems (AREA)
  • General Factory Administration (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は一般に、無線データネットワークに関し、特に、デバイスの完全性を動的に判定する方法及び装置に関する。
技術の進歩は、広域のデータネットワークの発達及び展開をもたらした。これらのネットワークは、インターネットといった公衆データネットワークと、無線電気通信ネットワークといった専門のネットワークの双方を含む。これらのネットワークのユーザは、ネットワークリソースとして利用可能な多種多様の情報及びサービスにアクセスする能力を有する。
ネットワークリソースへの需要が増えつつある一例としては、無線ネットワーク環境がある。無線環境においては、携帯電話、パーソナルデジタルアシスタント(PDA)、及びページングデバイスといった種々の無線デバイスが、無線ネットワークを介して通信する。無線ネットワークはまた、種々のネットワークリソースを無線デバイスに提供するネットワークサーバも含み得る。さらに、公衆ネットワーク上のリソースが、無線ネットワークの無線デバイスに利用可能にできるように、無線ネットワークはインターネットといった公衆ネットワークにも結合されてもよい。
通常、無線デバイスは、アプリケーションプログラム又はマルチメディアコンテンツをネットワークサーバから無線ネットワークを使用してダウンロードし得る。アプリケーション又はコンテンツは、無料でダウンロードされるか、無線デバイスのユーザによって購入されてもよく、当該ユーザはアプリケーション又はコンテンツを使用する権利を、無制限の期間、一定の期間、又は、使用回数に基づいた期間の間、有効に獲得する。
残念ながら、ネットワークリソースにアクセスすることの容易さ及び利便性のために、現在、様々なデバイスの完全性(integrity)の問題が存在する。例えば、通常の動作及び使用の期間に、デバイスは、当該デバイスの動作を危うくし得る、ウィルス、ワーム、バグ等の形で悪意的なコードをダウンロードすることがあり得る。デバイスは、それらのセキュリティ又はライセンス機能を無効にした、密造されたバージョンといった違法なバージョンをダウンロードすることで、無許可のアプリケーション又はコンテンツを受信してしまうこともあり得る。デバイスはまた、ネットワークのセキュリティ機能を欺くように設計されたアプリケーションや他のソフトウェアを有することで、当該デバイスがネットワークサービスを無許可に得ることを可能にするかもしれない。
これらの問題に対処する一つの解決法は、クライアントデバイスの状況を報告するために定期的に「家に電話をする("phones home")」スタティックなクライアントベースのソフトウェアを使用することを含む。しかし、そのようなスタティックなクライアントベースのソフトウェアアプローチは、これらがスタティックなクライアントベースのコードの完全性に依存するために、不備がある。クライアント環境は極めて敵対的であり得るし、クライアントベースのコードは、調査解析及び/又は変形されて、罪になるような如何なる証拠も隠蔽あるいは無視し、又は、意味のある如何なる機能も欺くようにされがちである。従って、クライアントソフトウェアの定期的な更新は部分的な解決方法を形成するが、これらは必然的に同じ運命に苦しむ。
従って、必要とされるのは、完全性のチェックが動的に実行されることで、完全性チェック処理が調査解析され、さもなければ欺かれることを回避する、デバイスの完全性をチェックするように動作するシステムである。
一以上の実施形態において、デバイスの動的な完全性チェック(integrity check)を実行するように動作する完全システム(integrity system)が提供される。例えば、一実施形態では、クライアントデバイスの動的な完全性チェックを実行して、敵意ある活動の徴候、違法なアプリケーション若しくはコンテンツの存在、又は、デジタルコンテンツ若しくはアプリケーションに関連する権利の悪用を検知するメカニズムが提供される。そのような如何なる攻撃もリアルタイムで有効に実行されなければならないが、一実施形態では、完全システムによって提供される当該メカニズムは動的であるので、調査解析をすること又は欺くことは極めて困難である。
一実施形態では、クライアントデバイスの動的な完全性チェックを提供するためにサーバで使用される方法が提供される。当該方法は、一以上の完全アプリケーションから、選択された完全アプリケーションを選択し、当該選択された完全アプリケーションは、一意の予め選択された完全応答を生成するように動作する。当該方法はまた、選択された完全アプリケーションをクライアントデバイスでの実行のためにダウンロードし、選択された完全アプリケーションから応答を受信することを備える。当該方法はまた、応答が、予め選択された完全応答であるか否かを判定することを備える。
別の実施形態では、クライアントデバイスの動的な完全性チェックを提供する装置が提供される。当該装置は、一以上の完全アプリケーションから、選択された完全アプリケーションを選択するように動作する選択ロジックを備え、選択された完全アプリケーションは、一意の予め選択された完全応答を生成するように動作する。当該装置はまた、選択された完全アプリケーションをクライアントデバイスでの実行のためにダウンロードするように動作する送信ロジックを備える。当該装置はまた、選択された完全アプリケーションから応答を受信するように動作する受信ロジックを備える。当該装置はまた、応答は、予め選択された完全応答であるか否かを判定するように動作する判定ロジックを備える。
別の実施形態では、クライアントデバイスの動的な完全性チェックを提供するように動作する装置が提供される。当該装置は、一以上の完全アプリケーションから、選択された完全アプリケーションを選択する手段を備え、選択された完全アプリケーションは、一意の予め選択された完全応答を生成するように動作する。当該装置はまた、選択された完全アプリケーションをクライアントデバイスでの実行のためにダウンロードする手段を備える。当該装置はまた、選択された完全アプリケーションから応答を受信する手段を備える。当該装置はまた、応答は、予め選択された完全応答であるか否かを判定する手段を備える。
別の実施形態では、完全システムのプロセッサによって実行されるときに、デバイスの完全性を動的にチェックするように動作する命令を備える、コンピュータ読み取り可能な媒体が提供される。当該コンピュータ読み取り可能な媒体は、一以上の完全アプリケーションから、選択された完全アプリケーションを選択する命令を備え、当該選択された完全アプリケーションは、一意の予め選択された完全応答を生成するように動作する。当該コンピュータ読み取り可能な媒体はまた、選択された完全アプリケーションをクライアントデバイスでの実行のためにダウンロードする命令を備える。当該コンピュータ読み取り可能な媒体はまた、選択された完全アプリケーションから応答を受信する命令を備える。当該コンピュータ読み取り可能な媒体はまた、応答は、選択された完全応答であるか否かを判定する命令を備える。
本発明の他の面、利点、及び特徴は、以下に述べられる図面の簡単な説明、発明の詳細な説明、及び特許請求の範囲の概観後に明白になるであろう。
図1は、デバイスの完全性をチェックする完全システムの一実施形態を備えるデータネットワークを示す。 図2は、デバイスの動的な完全性チェックを実行するように動作する完全システムの一実施形態を示す機能ブロック図である。 図3は、デバイスの完全性をチェックするように完全システムを動作させる方法の一実施形態を示す。
本明細書に記載された実施形態の前述の面及び付随する利点は、以下の詳細な説明を添付の図面と共に参照することによって、より容易に明らかになるであろう。
以下の詳細な説明は、クライアントデバイスの動的な完全性チェック(integrity checking)を実行する完全システム(integrity system)を説明する。一実施形態では、多数のユニーク且つ極めて小さな完全アプリケーションが所定の期間に作成される。各アプリケーションは、クライアントデバイスでの実行時に、僅かに異なる一組の完全性チェック動作を実行する。これらの完全性チェック動作の結果は、中央のサーバに報告される。一実施形態では、アプリケーションをダウンロードするため、又は、他のサーバのサービスを要求するために、クライアントがサーバに接続するとき、サーバは、一以上の完全アプリケーションを選択及びダウンロードする。これが起こる頻度、及びダウンロードされるべきアプリケーションの選択の基準は、クライアントハードウェアのタイプ、地理的なロケーション、キャリアの識別子(ID)、又は、クライアント動作の統計的分析を含み得るが、これらに限定されるものではない。各完全アプリケーションは、クライアントデバイスの一以上の面をチェックし、一意の応答メッセージを生成するが、これは一実施形態では、暗号化され、認証され、中央のサーバに送信される。アプリケーションは次に、それ自身をクライアントから除去する。応答メッセージが罪になるような証拠を含む場合、認証が失敗する場合、又は、認証が受信されないか、カットオフ期間後に受信される場合、サーバは適当な処置を取り得る。例えば、クライアントのサーバに対する活動が制限される。
一以上の実施形態では、完全アプリケーション(integrity applications)は、例えばデバイス専用のリソースへの一般的な呼を提供することで、クライアントの動作を単純化するために用いられる、クライアントで実行されるランタイム環境とやり取りする。そのようなランタイム環境の一つは、カリフォルニア州サンディエゴのクアルコム株式会社によって開発されたBinary Runtime Environment for Wireless(登録商標)(BREW(登録商標))のソフトウェアプラットフォームである。以下の説明では、クライアントは、BREWソフトウェアプラットフォームといったランタイム環境を実行している無線デバイスと仮定されるであろう。しかし、一以上の実施形態では、完全アプリケーションは、種々の有線デバイス又は無線デバイスの動的な完全性チェックを提供するために、他のタイプのランタイム環境と共に使用するのに適している。例えば、無線デバイスは、無線電話、ページャ、PDA、電子メール装置、タブレットコンピュータ、又は他のタイプの無線デバイスを含む、任意のタイプの無線デバイスであってよいが、これらに限定されるものではない。
図1は、デバイスの完全性をチェックする完全システムの一実施形態を備えるデータネットワーク100を示す。ネットワーク100は、無線通信チャネル106を介して無線データネットワーク104と通信する無線デバイス102を備える。ネットワーク100はまた、無線デバイス102、及びネットワーク104と通信している他のエンティティ(entities)にサービスを提供するために動作する当局(authority)108を備える。例えば、当局は、電気通信ネットワークに関連付けられたネットワークサーバであってよい。当局108は、リンク110を使用して無線ネットワークと通信するが、これは有線又は無線のリンクであってもよい。例えば、無線デバイス102は無線電話であってよく、当局108は、デバイス102に電気通信サービスを提供する全国的な電気通信ネットワークの一部であってよい。
動作期間中、完全システムは、デバイス102の完全性を動的にチェックするように動作する。例えば、一実施形態において、当局108は、パス114で示されるように、デバイス102へのダウンロードのための一以上の完全アプリケーション112を選択するように動作する。完全アプリケーション112は、無作為の又は定期的な間隔でセットアップされ、変更され、更新され、さもなければ決定され得る、公知の一意の予め定義された応答を有する。
一旦、完全アプリケーションがデバイス102にダウンロードされると、それはデバイスで実行されてデバイスの完全性を一以上の面について判定する。例えば、完全アプリケーション118は、パス114を使用してデバイスにダウンロードされる。一実施形態において、完全アプリケーション118は、デバイス102で実行されるランタイム環境、例えばBREWランタイム環境下で実行される。一実施形態では、完全アプリケーション118はデバイス102に公知のウィルス、ワーム、又は他の悪意的なコードが無いか検索する。別の実施形態では、完全アプリケーション118は、デバイス102に所有権を主張できる(proprietary)コンテンツが無いか検索し、そのようなコンテンツが見つかると、完全アプリケーション118は次に、当該コンテンツについて適当なライセンスが存在するかを判定すべくチェックする。完全アプリケーション118は、デバイス102の完全性を判定するために、デバイス102の如何なる面も実質的にチェックし得る。
一旦、完全アプリケーション118がデバイス102の完全性を判定すると、アプリケーション118は、パス116に示されるように、当局108に返信される応答を生成するように動作する。例えば、完全アプリケーション118が、デバイスの完全性が許容可能であると判定する場合、予め定義された完全応答が完全アプリケーション118によって生成され、当局108に送信される。応答は、デバイスについて発見された他の任意の完全性情報も含み得る。例えば、応答は、アプリケーション、コンテンツ、又は、デバイスで発見された他の情報を含んでもよい。更に、一実施形態において、応答はリアルタイムで生成及び送信される。デバイスの完全性が許容可能ではない場合、完全アプリケーション118は、当局108に返信される否定応答メッセージを生成する。
一実施形態において、デバイス102がソフトウェア、ハードウェア、ソフトウェアとハードウェアの組合せ、又は、完全アプリケーション118の動作を妨害する何らかの他のエージェントを備える場合、完全応答は生成されないであろう。この場合、当局108は、応答が受信されなかったので、デバイスの完全性が許容可能ではないと自由に仮定できる。例えば、完全システムが所定の期間に応答を受信しない場合は、応答が送信されなかったものと仮定される。
一つの状況においては、デバイス102が、予め定義された応答メッセージを偽ろうと試みるエージェントを含むことがあり得るかもしれない。しかし、完全システムは動的であり、応答はリアルタイムで求められるため、エージェントが応答を偽ることは極めて困難である。一実施形態において、当局108は、デバイス102にダウンロードするための完全アプリケーションを無作為に選択するように動作する。これは、どのような完全性チェックが実行されるのかをデバイス102のエージェントが予期することを防止する。別の実施形態において、当局108は、選択された完全アプリケーションの予め定義された完全応答を変更するように動作する。例えば、当局は、予め定義された応答メッセージ中に電子署名又はリアルタイムインジケータを備えてもよい。従って、たとえデバイスのエージェントが先の予め定義された完全応答を知っていても、当該先の応答を当局に送信することは、結果として失敗した完全性チェックになるであろう。
完全アプリケーションの選択、及び/又は、完全応答のタイプは、デバイスで動作している如何なるエージェントも事前に予め定義された完全応答を知ることができないように、無作為に又は定期的に変化するよう動的に調整されることができる。更に、完全アプリケーションを調査解析して予め定義された完全応答が何であるかを判定するのは、そのような調査解析がリアルタイムでなされなければならないため、極めて困難であろう。結果として、完全システムの動作を欺くのは極めて困難である。
図2は、デバイスの動的な完全性チェックを実行するように動作する完全システム200の一実施形態を説明する機能ブロック図を示す。例えば、完全システム200は、無線デバイス102の完全性をチェックするために、当局108と共に使用されるか、当局108の一部として使用されるのに適している。
完全システム200は、内部データバス204に結合される処理ロジック202を備える。メモリ206、ユーザインタフェース208、及びI/Oインタフェース210も内部データバス204に結合される。完全システム200はまた、処理ロジック202に結合される選択ロジック212、及び、内部データバス204に結合されるアプリケーションメモリ214を備える。アプリケーションメモリ214は、一組の完全アプリケーション(App1,App2,…AppN)を備える。
一以上の実施形態において、処理ロジック202は、CPU、ゲートアレイ、ハードウェアロジック、ソフトウェア、又は、ハードウェアとソフトウェアの任意の組合せを備える。従って、処理ロジック202は一般に、機械読み取り可能な命令を実行するロジックを備える。
メモリ206は、RAM、ROM、FLASH、EEROM、又は他の任意の適当なタイプのメモリ、又はこれらの組合せを備える。一実施形態では、メモリ206は完全システム200の内部に配置され、別の実施形態では、メモリ206は、完全システム200に選択的に取り付けられ得る、取り外し可能なメモリカード又はメモリデバイスを備えることで、内部バス204に結合する。従って、メモリ206は、処理ロジック202によって実行され得る命令を記憶することができる如何なるタイプのメモリも実質的に備え得る。
ユーザインタフェース208は、例えばキーパッド、ポインティングデバイス、タッチパッド、又は、ユーザがデバイス102とやり取りすることを可能にする他の入力機構から、ユーザ入力216を受け取る。ユーザインタフェース208はまた、CRT、LCD、LED、又は、ユーザに画像表示を提供するための他の任意のタイプのディスプレイ装置といった、ディスプレイ装置に結合される。ディスクストレージ、音声ロジック、ビデオ装置等といった、他の任意のタイプの入力デバイス又は出力デバイスも、ユーザインタフェース208に結合されて得る。
I/Oインタフェース210は、完全システム200と外部のデバイス、システム、及び/又は、ネットワークとの間で、通信リンク218を用いて情報を送信及び受信するように動作する。例えば、I/Oインタフェース210は、完全システム200と当局108との間に通信を提供する。別の実施形態において、I/Oインタフェース210は、完全システム200と無線ネットワーク104との間に通信を提供することで、完全システム200がデバイス102と直接通信できるようにしている。
一実施形態では、I/Oインタフェース210は、通信リンク218を使用して無線データネットワークを介して情報を送信及び受信するように動作する無線トランシーバ回路(図示せず)を備える。例えば、通信リンク218は、図1に示される通信リンク110であってよい。例えば、トランシーバは、処理ロジック202から受信された情報を変調し、変調された情報を無線送信に適した高周波信号に変換する回路を備える。同様に、トランシーバは、受信された高周波通信信号を、処理ロジック202による復調及びその後の処理に適した信号に変換するための回路も備える。
別の実施形態では、I/Oインタフェース210は、インターネットといった公衆データネットワーク上の遠隔システムと通信するための、電話線、又は他のタイプのデータ線といった、配線による(hardwired)通信リンクを介して情報を送信及び受信するように動作するトランシーバを備える。
更に別の実施形態では、I/Oインタフェース210は、ローカルワークステーションといった、ローカルデバイスと通信するように動作する回路を備える。I/Oインタフェース210はまた、プリンタ、又は、フロッピー(登録商標)ディスク或いはメモリカードといった他のローカルなコンピュータ或いはデバイスと通信するための(シリアルポートロジック又はパラレルポートロジックといった)回路を備え得る。従って、I/Oインタフェース210は、完全システム200が他のローカルな又は遠隔に位置するデバイス又はシステムと通信することを可能にする、如何なるタイプのハードウェア、ソフトウェア、又はこれらの組合せも備え得る。
一実施形態において、選択ロジック212は、CPU、プロセッサ、ロジック、ソフトウェア、又は、ハードウェアとソフトウェアの任意の組合せを備える。選択ロジック212は、処理ロジックに選択リンク220を介して結合され、処理ロジック202に選択情報を提供するように動作する。選択情報は、デバイス102に送信されるべき一以上の完全アプリケーション(App1−AppN)を識別する。例えば、どの完全アプリケーションをアプリケーションメモリ214から取り出すべきかを判定するために、選択ロジック212は処理ロジック202に使用されるが、当該完全アプリケーションは次にデバイス102に送信される。デバイスに送信するための完全アプリケーションを選択するために、実質的に任意のタイプの選択処理又は手続きが、選択ロジック212によって使用されることができる。例えば、選択ロジックは、デバイス102に送信するための選択された完全アプリケーションを選択するために、時間インジケータ、位置インジケータ、ランダムインジケータ、又は定期的なインジケータ(periodic indicators)を用いてもよい。
デバイスに送信されるべき完全アプリケーションの選択後、処理ロジック202は、アプリケーションによって生成された予め定義された応答メッセージ中で使用されるアプリケーションの基準インジケータ(reference indicator)を含むように動作する。例えば、基準インジケータは、時間又は日付基準、電子署名、又は、他の任意のタイプの基準インジケータであってよい。アプリケーションが、応答メッセージを完全システムに返信しようと試みるとき、基準インジケータが当該応答中で使用される。従って、完全システムは、基準インジケータを使用して、実際の応答と虚偽の応答とを区別することができる。例えば、偽の応答や虚偽の応答は、正確な基準インジケータを有さないであろう。
完全システム200の構成は、一つの適切な構成に過ぎないことに注意するべきである。本発明の範囲内で、他の構成、機能要素、又は要素の構成を用いて完全システム200を実現することも可能である。
完全システム200の動作期間中、処理ロジック202は、メモリ206に記憶されたプログラム命令を実行して、本明細書に記載された機能を実行する。例えば、一実施形態において、処理ロジック202がメモリ206に記憶されたプログラム命令を実行するときに、完全システム200は記載された機能を実行する。別の実施形態では、プログラム命令は、フロッピー(登録商標)ディスク、CD、メモリカード、FLASHメモリデバイス、ROM、又は、任意の他のタイプのメモリデバイスといった、コンピュータ読み取り可能な媒体に記憶される。プログラム命令は、I/Oインタフェース210を介してメモリ206にロードされる。例えば、完全システム200は、プログラム命令をコンピュータ読み取り可能な媒体からI/Oインタフェース210を介してメモリ206にダウンロードしてもよい。
図3は、完全システムの一実施形態、例えば完全システム200を動作させる方法300の一実施形態を示す。例えば、方法300は、図2に示される完全システム200を参照しつつ説明されるであろう。システム200がデバイス、例えば無線デバイス102と通信し得るように、完全システム200はデータネットワークに結合されるものと仮定されるであろう。
ブロック302で、クライアントデバイスは当局にログインして、当局からサービスを得る。例えば、アプリケーション、マルチメディアコンテンツをダウンロードするために、又は何らかの他のサービスを受け取るために、デバイスは当局にログインする。
ブロック304で、当局で動作している完全システムは、デバイスにダウンロードすべき完全アプリケーションを選択する。例えば、処理ロジック202は、選択情報を選択ロジック212から受け取り、当該情報は、一以上の完全アプリケーションをメモリ214から取り出すのに用いられる。各完全アプリケーションは、クライアントの完全性の一面を判定するように動作する。例えば、ある完全アプリケーションは、ウィルスがクライアントに存在するか否かを判定し得るし、別のアプリケーションは、認可された(licensed)マルチメディアコンテンツがクライアントに存在するか否かを判定し得る。各完全アプリケーションは、当局に知られている予め定義された応答メッセージを有する。
ブロック306で、完全システムは、完全アプリケーションの所望の応答メッセージを動的に調整する。例えば、一実施形態において、完全システムは、応答メッセージを、リアルタイムの基準、例えば現在の時刻、電子署名、又は、何らかの他の基準インジケータを含むように設定する。従って、完全アプリケーションが応答メッセージを当局に返信するとき、完全システムはリアルタイムの基準を確認することができる。実質的に、任意のリアルタイムの基準又は他の確認基準が、応答メッセージ中に動的に含まれることができる。
ブロック308で、完全システムは、選択された完全アプリケーションをデバイスにダウンロードする。例えば、処理ロジック202は、I/Oインタフェース210を使用してアプリケーションをデバイスに送信する。アプリケーションは動的な基準インジケータを含む。
ブロック310で、選択された完全アプリケーションは、デバイスで実行され、完全性情報を取得する。例えば、選択された完全アプリケーションは、デバイスで実行されているランタイム環境下で作動する。例えば、ランタイム環境はBREW環境であってよい。動作期間中、完全アプリケーションは、クライアントの完全性の一以上の面に関連する情報を獲得する。例えば、アプリケーションは、デバイスがウィルスを有するかを判定してもよいし、あるいは、デバイスが無許可の(un-licensed)コンテンツを有するかを判定してもよい。実質的には、クライアントの完全性の任意の面が、完全アプリケーションによって判定され得る。アプリケーションが上手く作動すると、完全アプリケーションは、完全応答メッセージを当局の完全システムに返信する。
ブロック312で、テストが実行されて、完全アプリケーションが応答メッセージを完全システムに返信したかが判定される。例えば、クライアントデバイスの完全性を判定した後、完全アプリケーションは、完全システムに返信される応答メッセージを生成する。応答メッセージは、完全システムによって最初に提供されるようなリアルタイムの基準を含む。完全アプリケーションから応答が受信される場合、方法はブロック314に進む。応答が受信されない場合、方法はブロック316に進む。
ブロック314で、完全システムは、クライアントデバイスで実行されている完全アプリケーションから送信された応答メッセージを受け取る。完全システムは、応答メッセージを処理して、クライアントデバイスの完全性を判定するように動作する。例えば、応答メッセージは基準インジケータを含むが、これはダウンロードされたアプリケーションから応答が来たことを示す。実質的に、任意の他の情報が応答メッセージに含まれて、クライアントデバイスの完全性について完全システムに知らせ得る。
ブロック316で、完全アプリケーションから応答が受信されなかった場合、完全システムは、デバイスが完全プログラムの動作をブロックしたと仮定してもよく、結果として、当局は適当な処置を取るように動作し得る。例えば、デバイスは、当局から更なるサービスを受信することを制限されてもよい。
クライアントデバイスの完全性を動的にチェックするための方法及び装置を含む完全システムを説明してきた。当該システムは、あらゆるタイプの有線又は無線のデバイスについて動的な完全性チェックを提供するのに適しており、特に携帯電話に使用するのに大変適している。
従って、本明細書では完全システムの方法及び装置の一以上の実施形態が図解及び記載されてきたが、複数の実施形態に、これらの精神又は本質的な特性から逸脱することなく、種々の変更を加えることができることが認識されるであろう。従って、本明細書の開示及び記載は、本発明の範囲の例証となることを意図されたものであって、限定することを意図されたものではなく、本発明の範囲は以下の特許請求の範囲に述べられている。

Claims (21)

  1. サーバがクライアントデバイスの動的な完全性チェックを提供するための方法であって、
    前記クライアントデバイスの完全性をチェックするために前記クライアントデバイスによって実行可能な一以上の完全アプリケーションのうちの1つの完全アプリケーションを選択することと、ここにおいて前記選択された完全アプリケーションは、許容可能な前記クライアントデバイスの完全性に対して予め定義された完全応答を有する、
    前記選択された完全アプリケーションを前記クライアントデバイスでの実行のためにダウンロードすることと、
    前記クライアントデバイスでの完全性チェックの結果として得られた応答を受信することと、
    前記受信された応答が前記予め定義された完全応答を有するか否かを少なくとも判定することを備え、
    前記予め定義された完全応答は前記選択された完全アプリケーションをダウンロードすることに先立って変更される、方法。
  2. 前記予め定義された完全応答を、基準値を含むように動的に調整することを更に備える、請求項1記載の方法。
  3. 前記基準値は、時間ベースの基準値、日ベースの基準値及びデジタル署名のうちの少なくとも1つを含む、請求項2記載の方法。
  4. 前記応答は、選択可能な期間内に如何なる応答も無いことを含む、請求項1記載の方法。
  5. 前記クライアントデバイスは無線デバイスである、請求項1記載の方法。
  6. 前記完全アプリケーションは、デバイスロケーション、ハードウェアのタイプ、キャリア識別子、前記クライアントデバイスに関連するふるまい、時間、周期的なインジゲータのうちの少なくとも1つに基づいて選択されることを備える、請求項1記載の方法。
  7. デバイスの動的な完全性チェックを提供する装置であって、
    前記デバイスの完全性をチェックするために前記デバイスによって実行可能な一以上の完全アプリケーションのうちの1つの完全アプリケーションを選択するように動作する選択ロジックと、ここにおいて前記選択された完全アプリケーションは、許容可能な前記デバイスの完全性に対して予め定義された完全応答を有する、
    前記選択された完全アプリケーションを前記デバイスでの実行のためにダウンロードするように動作する送信ロジックと、
    前記デバイスでの完全性チェックの結果として得られた応答を受信するように動作する受信ロジックと、
    前記受信された応答が前記予め定義された完全応答を有するか否かを少なくとも判定するように動作する判定ロジックと
    を備え、
    前記予め定義された完全応答は前記選択された完全アプリケーションをダウンロードすることに先立って変更される、装置。
  8. 前記予め定義された完全応答を、基準値を含むように動的に調整するロジックを更に備える、請求項7記載の装置。
  9. 前記基準値は、時間ベースの値、日ベースの基準値及びデジタル署名のうちの少なくとも1つを含む、請求項8記載の装置。
  10. 前記デバイスは無線デバイスである、請求項7記載の装置。
  11. 前記完全アプリケーションは、デバイスロケーション、ハードウェアのタイプ、キャリア識別子、前記デバイスに関連するふるまい、時間、周期的なインジゲータのうちの少なくとも1つに基づいて選択されることを備える、請求項7記載の装置。
  12. デバイスの動的な完全性チェックを提供するように動作する装置であって、
    前記デバイスの完全性をチェックするために一以上の完全アプリケーションのうちの1つの完全アプリケーションを選択する手段と、ここにおいて前記選択された完全アプリケーションは、許容可能な前記デバイスの完全性に対して予め定義された完全応答を有する、
    前記選択された完全アプリケーションを前記デバイスでの実行のためにダウンロードする手段と、
    前記デバイスでの完全性チェックの結果として得られた応答を受信する手段と、
    前記受信された応答が前記予め定義された完全応答を有するか否かを少なくとも判定する手段とを備え、
    前記予め定義された完全応答は前記選択された完全アプリケーションをダウンロードすることに先立って変更される、装置。
  13. 前記予め定義された完全応答を、基準値を含むように動的に調整する手段を更に備える、請求項12記載の装置。
  14. 前記基準値は、時間ベースの基準値、日ベースの基準値及び時間ベース値であるデジタル署名のうちの少なくとも1つを含む、請求項13記載の装置。
  15. 前記デバイスは無線デバイスである、請求項12記載の装置。
  16. 前記完全アプリケーションは、デバイスロケーション、ハードウェアのタイプ、キャリア識別子、前記デバイスに関連するふるまい、時間、周期的なインジゲータのうちの少なくとも1つに基づいて選択されることを備える、請求項12記載の装置。
  17. 完全システムのプロセッサによって実行されるときに、デバイスの完全性を動的にチェックするように動作する命令を備えるコンピュータ読み取り可能な記憶媒体であって、
    前記デバイスの完全性をチェックするために一以上の完全アプリケーションのうちの1つの完全アプリケーションを選択する命令と、ここにおいて前記選択された完全アプリケーションは、許容可能な前記デバイスの完全性に対して予め定義された完全応答を有する、
    前記選択された完全アプリケーションを前記デバイスでの実行のためにダウンロードする命令と、
    前記デバイスでの完全性チェックの結果として得られた応答を受信する命令と、
    前記受信された応答が前記予め定義された完全応答を有するか否かを少なくとも判定決定する命令とを備え、
    前記予め定義された完全応答は前記選択された完全アプリケーションをダウンロードすることに先立って変更される、コンピュータ読み取り可能な記憶媒体。
  18. 前記予め定義された完全応答を、基準値を含むように動的に調整する命令を更に備える、請求項17記載のコンピュータ読み取り可能な記憶媒体。
  19. 前記基準値は、時間ベースの基準値、日ベースの基準値及び時間ベース値であるデジタル署名のうちの少なくとも1つを含む、請求項18記載のコンピュータ読み取り可能な記憶媒体。
  20. 前記デバイスは無線デバイスである、請求項17記載のコンピュータ読み取り可能な記憶媒体。
  21. 前記完全アプリケーションは、デバイスロケーション、ハードウェアのタイプ、キャリア識別子、前記デバイスに関連するふるまい、時間、周期的なインジゲータのうちの少なくとも1つに基づいて選択されることを備える、請求項17記載のコンピュータ読み取り可能な記憶媒体。
JP2012028360A 2003-09-10 2012-02-13 デバイスの完全性を判定する方法及び装置 Expired - Fee Related JP5591841B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/659,847 US6973305B2 (en) 2003-09-10 2003-09-10 Methods and apparatus for determining device integrity
US10/659,847 2003-09-10

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2006526101A Division JP2007505394A (ja) 2003-09-10 2004-08-17 デバイスの完全性を判定する方法及び装置

Publications (2)

Publication Number Publication Date
JP2012141996A JP2012141996A (ja) 2012-07-26
JP5591841B2 true JP5591841B2 (ja) 2014-09-17

Family

ID=34273532

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2006526101A Withdrawn JP2007505394A (ja) 2003-09-10 2004-08-17 デバイスの完全性を判定する方法及び装置
JP2012028360A Expired - Fee Related JP5591841B2 (ja) 2003-09-10 2012-02-13 デバイスの完全性を判定する方法及び装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2006526101A Withdrawn JP2007505394A (ja) 2003-09-10 2004-08-17 デバイスの完全性を判定する方法及び装置

Country Status (17)

Country Link
US (1) US6973305B2 (ja)
EP (1) EP1665590A4 (ja)
JP (2) JP2007505394A (ja)
KR (1) KR101041761B1 (ja)
CN (1) CN1868153B (ja)
AR (1) AR047718A1 (ja)
AU (1) AU2004273429A1 (ja)
BR (1) BRPI0414228A (ja)
CA (1) CA2539451A1 (ja)
IL (1) IL173984A0 (ja)
MX (1) MXPA06002812A (ja)
MY (1) MY136940A (ja)
NZ (1) NZ545555A (ja)
PE (1) PE20050741A1 (ja)
RU (1) RU2354054C2 (ja)
TW (1) TW200514382A (ja)
WO (1) WO2005026877A2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1338938A1 (en) * 2002-02-22 2003-08-27 SCHLUMBERGER Systèmes Protection against unauthorised execution of a program on an IC card
US7752320B2 (en) * 2003-11-25 2010-07-06 Avaya Inc. Method and apparatus for content based authentication for network access
US7558848B1 (en) * 2004-02-27 2009-07-07 F5 Networks, Inc. System and method for determining integrity over a virtual private network tunnel
US8539608B1 (en) * 2004-03-25 2013-09-17 Verizon Corporate Services Group Inc. Integrity checking at high data rates
US7496348B2 (en) * 2005-06-07 2009-02-24 Motorola, Inc. Wireless communication network security method and system
US7907531B2 (en) * 2005-06-13 2011-03-15 Qualcomm Incorporated Apparatus and methods for managing firmware verification on a wireless device
US20070123214A1 (en) * 2005-11-25 2007-05-31 Motorola, Inc. Mobile device system and strategies for determining malicious code activity
CN101432749B (zh) * 2006-03-22 2012-11-28 英国电讯有限公司 通信设备监测
WO2007117585A2 (en) 2006-04-06 2007-10-18 Smobile Systems Inc. System and method for managing malware protection on mobile devices
KR101182473B1 (ko) * 2006-05-09 2012-09-13 인터디지탈 테크날러지 코포레이션 무선 장치에 대한 안전 시간 기능
US7734247B2 (en) * 2007-01-25 2010-06-08 Sony Ericsson Mobile Communications Ab Configurable serial memory interface
US8544092B2 (en) * 2009-03-12 2013-09-24 International Business Machines Corporation Integrity verification using a peripheral device
US8850211B2 (en) * 2009-04-27 2014-09-30 Qualcomm Incorporated Method and apparatus for improving code and data signing
US8745747B2 (en) * 2009-12-31 2014-06-03 Fujitsu Limited Data protecting device
US9202049B1 (en) 2010-06-21 2015-12-01 Pulse Secure, Llc Detecting malware on mobile devices
WO2012003591A1 (en) 2010-07-09 2012-01-12 Research In Motion Limited Microcode-based challenge/response process
US8726338B2 (en) 2012-02-02 2014-05-13 Juniper Networks, Inc. Dynamic threat protection in mobile networks
KR101457086B1 (ko) 2012-11-30 2014-11-12 한국전자통신연구원 임베디드 시스템의 펌웨어 무결성 검증 장치 및 방법
KR102324336B1 (ko) 2015-03-20 2021-11-11 한국전자통신연구원 사용자 장치 및 그것에 대한 무결성 검증 방법
KR102522778B1 (ko) 2016-04-27 2023-04-19 한국전자통신연구원 분산 대리자 기반 무결성 검증을 수행하는 개별 기기, 그를 포함하는 개별 기기 무결성 검증 시스템 및 그 방법
US20210383378A1 (en) * 2018-10-23 2021-12-09 Visa International Service Association Validation Service For Account Verification

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4101141C1 (ja) * 1991-01-16 1992-07-02 Siemens Nixdorf Informationssysteme Ag, 4790 Paderborn, De
JP3393521B2 (ja) * 1995-10-19 2003-04-07 日本電信電話株式会社 端末プログラム改ざん検出方法、および情報センタ
JP2001154840A (ja) * 1999-11-26 2001-06-08 Adores Inc プログラムの改変を認識するシステムおよびその方法
JP2001331214A (ja) * 2000-05-23 2001-11-30 Yokogawa Electric Corp 遠隔保守システム
US6745011B1 (en) * 2000-09-01 2004-06-01 Telephia, Inc. System and method for measuring wireless device and network usage and performance metrics
JP2002288136A (ja) * 2001-03-26 2002-10-04 Foundation For Nara Institute Of Science & Technology ユーザ情報管理装置、ユーザ情報管理方法、ユーザ情報管理プログラム及び同プログラムを記録した記録媒体
JP2003099142A (ja) * 2001-09-26 2003-04-04 Mitsubishi Electric Corp ソフトウェアのライセンス管理システム
JP2003124866A (ja) * 2001-10-11 2003-04-25 Nec Commun Syst Ltd 移動端末故障探索システム
JP2003131901A (ja) * 2001-10-25 2003-05-09 Ricoh Co Ltd 電子機器の診断システムおよびコンピュータが実行するためのプログラム
US7263351B2 (en) * 2002-07-01 2007-08-28 Qualcomm Incorporated Wireless network optimization through remote device data

Also Published As

Publication number Publication date
KR101041761B1 (ko) 2011-06-17
TW200514382A (en) 2005-04-16
BRPI0414228A (pt) 2006-10-31
EP1665590A4 (en) 2009-12-23
EP1665590A2 (en) 2006-06-07
CN1868153A (zh) 2006-11-22
PE20050741A1 (es) 2005-10-18
NZ545555A (en) 2008-01-31
AU2004273429A1 (en) 2005-03-24
WO2005026877A3 (en) 2005-07-21
IL173984A0 (en) 2006-07-05
AR047718A1 (es) 2006-02-15
RU2354054C2 (ru) 2009-04-27
RU2006111468A (ru) 2006-09-10
CA2539451A1 (en) 2005-03-24
JP2007505394A (ja) 2007-03-08
US6973305B2 (en) 2005-12-06
US20050059352A1 (en) 2005-03-17
KR20060119967A (ko) 2006-11-24
WO2005026877A2 (en) 2005-03-24
JP2012141996A (ja) 2012-07-26
MXPA06002812A (es) 2006-06-14
MY136940A (en) 2008-11-28
CN1868153B (zh) 2012-08-08

Similar Documents

Publication Publication Date Title
JP5591841B2 (ja) デバイスの完全性を判定する方法及び装置
KR101409634B1 (ko) 무선 네트워크에서의 컨텐츠 보호를 위한 방법 및 장치
US11424943B2 (en) System and method for interapplication communications
Dini et al. Risk analysis of Android applications: A user-centric solution
CN101694688B (zh) 代码签字系统及方法
US7669242B2 (en) Agent presence monitor configured to execute in a secure environment
KR101558715B1 (ko) 서버 결합된 멀웨어 방지를 위한 시스템 및 방법
US7779121B2 (en) Method and apparatus for detecting click fraud
WO2013059138A1 (en) System and method for whitelisting applications in a mobile network environment
MXPA06004676A (es) Metodo y aparato para proporcionar credenciales de aplicacion.
JP2006330835A (ja) デバイス制御装置、デバイス制御方法およびプログラム
CN108566374A (zh) 一种应用下载方法及其系统、区块链节点设备、终端
Sohr et al. Software security aspects of Java-based mobile phones
CN110597557A (zh) 一种系统信息获取方法、终端及介质
O’Connor Attack surface analysis of Blackberry devices
Ortega et al. A novel approach to Trojan horse detection in mobile phones messaging and bluetooth services
Ortega Ramírez et al. A Novel Approach to Trojan Horse Detection in Mobile Phones Messaging and Bluetooth Services

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130409

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130703

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140107

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140324

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140609

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140701

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140730

R150 Certificate of patent or registration of utility model

Ref document number: 5591841

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees