JP2019505887A - 信頼できる実行環境を有するモバイル装置 - Google Patents
信頼できる実行環境を有するモバイル装置 Download PDFInfo
- Publication number
- JP2019505887A JP2019505887A JP2018529986A JP2018529986A JP2019505887A JP 2019505887 A JP2019505887 A JP 2019505887A JP 2018529986 A JP2018529986 A JP 2018529986A JP 2018529986 A JP2018529986 A JP 2018529986A JP 2019505887 A JP2019505887 A JP 2019505887A
- Authority
- JP
- Japan
- Prior art keywords
- trusted
- application
- mobile
- mobile device
- key
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000015654 memory Effects 0.000 claims description 19
- 230000009471 action Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 12
- 238000007689 inspection Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000000873 masking effect Effects 0.000 claims description 2
- 230000007246 mechanism Effects 0.000 abstract description 21
- 238000010586 diagram Methods 0.000 description 25
- 238000005516 engineering process Methods 0.000 description 11
- 238000012360 testing method Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000013175 transesophageal echocardiography Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring 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
- G06F21/53—Monitoring 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 by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/14—Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
- G06F21/725—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits operating on a secure reference time value
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
- H04W12/069—Authentication using certificates or pre-shared keys
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2149—Restricted operating environment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/04—Masking or blinding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Physics (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
- Mobile Radio Communication Systems (AREA)
- Debugging And Monitoring (AREA)
- Automatic Cycles, And Cycles In General (AREA)
- Telephone Function (AREA)
- Storage Device Security (AREA)
Abstract
Description
信頼できないアプリケーションプロバイダからのモバイルアプリケーションの信頼できない部分を、モバイル装置にロードし、
信頼できるアプリケーションプロバイダからのモバイルアプリケーションの信頼できる部分を、モバイル装置にロードし、
モバイルアプリケーションの信頼できる部分をモバイル装置にインストールし、それによって信頼できる実行環境を提供する
ように構成されることを含む、方法に関する。
モバイルアプリケーションが、モバイルアプリケーションの識別子およびモバイル装置の装置フィンガープリントから、信頼できる実行環境id TEE IDを生成するステップであって、前記生成された信頼できる実行環境id TEE IDが、モバイルアプリケーションによってキー提供サーバに送信されるステップと、
キー提供サーバを動作させて、信頼できる実行環境id TEE IDと関連付けられるキーを生成し、キーディレクタに、信頼できる実行環境id TEE IDおよび生成されたキーを送信し、モバイル装置に、生成されたキーを送信するステップと、
信頼できるアプリケーションプロバイダが、TEE ID、および、モバイル装置によって送信された生成されたキーから計算されたTEE IDのハッシュを受信し、キーディレクタサーバを通してモバイル装置を認証するように構成されるステップと、
モバイル装置を成功裏に認証した際に、信頼できるアプリケーションプロバイダを動作させて、信頼できるアプリケーションを含むモバイルアプリケーションの信頼できる部分をモバイル装置に送信するステップと、
モバイル装置が、モバイルアプリケーションの信頼できる部分をモバイル装置にインストールするように構成され、それにより、信頼できる実行環境を提供するステップと、
を含む。
モバイル装置のリッチ実行環境内で実行可能なクライアントアプリケーションと、
信頼できるアプリケーションを実装できる命令セットのための信頼できるアプリケーションインタープリタと、
を含む。
信頼できるアプリケーションを信頼できる安全な記憶装置と関連付けるステップと、
最初のランダム秘密をモバイル装置の安全な記憶装置に記憶するステップと、
信頼できるアプリケーションの安全な記憶装置内のデータにアクセスするたびに、最初のランダム秘密「IRS」、装置のフィンガープリント、および、信頼できるアプリケーションのための一意のid「UUID」を使用して、信頼できるアプリケーションと関連付けられた信頼できる記憶装置に記憶されたデータを暗号化するために、安全な記憶データキー「TA_SK」を生成するステップと、
を含む。
信頼できるアプリケーションを実行する間に、
信頼できるアプリケーションのその特定の実行と関連付けられた1回限りのランタイムキーを決定するステップと、
信頼できるアプリケーションのその特定の実行中に、信頼できるアプリケーションによって使用されるランタイムメモリに数量を記憶するとき、1回限りのランタイムキーを使用してその数量をマスクするステップと、
信頼できるアプリケーションのその特定の実行中に、信頼できるアプリケーションによって使用されるランタイムメモリから数量を取得するとき、1回限りのランタイムキーを使用してその数量をアンマスクするステップと、
を含む。
実行または解釈するためにコンパイルされた形式を有する信頼できるアプリケーションを初回に実行した際に、信頼できるアプリケーションのコンパイルされた形式に基づいて第1の値を計算し、信頼できるアプリケーションのコンパイルされた形式に基づいてその値を記憶するステップと、
信頼できるアプリケーションの後続の実行をした際に、信頼できるアプリケーションのコンパイルされた形式に基づいて同じ計算を実施し、信頼できるアプリケーションのコンパイルされた形式に基づいて第2の値を生成し、第1の値と第2の値を比較し、第1の値と第2の値が同一でない場合は矯正アクションを行うステップと、
を含む。
ソフトウェアの信頼できる実行環境の初回の実行をした際に、モバイルアプリケーションの特定の命令の予想実行時間を決定し、
前記一定の命令の予想実行時間を記憶し、
ソフトウェアの信頼できる実行環境の後続の実行中に、
命令数を追跡し、
システムクロックを定期的にフェッチし、
現在の命令数から予想実行時間を計算し、
予想実行時間と現在のシステムクロックを比較し、
比較が受け入れがたい偏差を示す場合に矯正アクションを行う
ことにより、潜在的なタイムシフト攻撃を防御するステップをさらに含む。
信頼できるアプリケーションの重要な部分を、複数のループを有し、各ループが短いループまたは長いループとして実行されることができるダミーコード部で修正するステップと、
ダミーコード部の内部および信頼できるアプリケーションの前記重要な部分の近傍に複数の検査ポイントを割り当てるステップと、
信頼できるアプリケーションを実行した際に、定義された数の短いループおよび長いループを実行する、ダミーコードを通る実行経路を決定するステップと、
各検査ポイントの予想到達時間を決定するステップと、
検査ポイントに到達した際に、予想到達時間と実際の到達時間を比較し、実際の到達時間と予想到達時間の間の偏差が所定のしきい値を超える場合に、矯正アクションを行うステップと、
を含む。
(1この説明において、いくつかの関連する要素はそれぞれn−E、n−Cおよびn−Sと呼ばれる。Eはエンティティ、Cはコンピュータ、Sはソフトウェアを表す。したがって、n−Eはエンティティn−Eであり、コンピュータn−Cを動作させ、コンピュータn−Cは命令n−Sに従って実行する。たとえば、信頼できるサービスマネージャエンティティ119−Eは、信頼できるサービスマネージャソフトウェアを実行するコンピュータ119−Cを動作させる。説明を容易にするために、発明者らは時に数字n、たとえばTSM119、によってこうした要素に言及する。文脈上明白に逆の意味となる場合を除いて、通常、これは、それぞれの役割を実施する3つの要素すべてを参照することを意味していると理解すべきである。たとえば、信頼できるサービスマネージャコンピュータ119−Cは、信頼できるサービスマネージャソフトウェア119−Sのソフトウェアによって指図されたいくつかの行動を実施する。)
E=PlainText XOR OTK
OTKは以下で導出される:
mem_addrは、暗号化されるメモリページの開始アドレス。
counterは、(1)TA519の各実行時にリセットされ、各メモリアクセス時にインクリメントされるカウンタ。
ENCは、連結
OTKm=OTK XOR Km
[0001]ステップ1109および1111:マスクされたOTK、OTKmがRAM203に記憶される。
[0002]ステップ1113:記憶される量のプレーンテキストがOTKを使用してマスクされる:
E=PlainText XOR OTK
[0003]ステップ1115および1117:マスクされた量のEがRAM203に転送され記憶される。
Plaintext=E XOR OTK
Claims (13)
- モバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法であって、モバイル装置が、
信頼できないアプリケーションプロバイダからのモバイルアプリケーションの信頼できない部分を、モバイル装置にロードし、
信頼できるアプリケーションプロバイダからのモバイルアプリケーションの信頼できる部分を、モバイル装置にロードし、
モバイルアプリケーションの信頼できる部分をモバイル装置にインストールし、それによって信頼できる実行環境を提供する
ように構成されることを含む、方法。 - モバイルアプリケーションの信頼できる部分をモバイル装置にロードすることが、
モバイルアプリケーションが、モバイルアプリケーションの識別子およびモバイル装置の装置フィンガープリントから、信頼できる実行環境id TEE IDを生成するステップであって、前記生成された信頼できる実行環境id TEE IDが、モバイルアプリケーションによってキー提供サーバに送信される、生成するステップと、
キー提供サーバを動作させて、信頼できる実行環境id TEE IDと関連付けられるキーを生成し、キーディレクトリに、信頼できる実行環境id TEE IDおよび生成されたキーを送信し、モバイル装置に、生成されたキーを送信するステップと、
信頼できるアプリケーションプロバイダが、TEE ID、および、モバイル装置によって送信された生成されたキーから計算されたTEE IDのハッシュを受信し、キーディレクトリサーバを通してモバイル装置を認証するように構成されるステップと、
モバイル装置を成功裏に認証した際に、信頼できるアプリケーションプロバイダを動作させて、信頼できるアプリケーションを含むモバイルアプリケーションの信頼できる部分をモバイル装置に送信するステップと、
モバイル装置が、モバイルアプリケーションの信頼できる部分をモバイル装置にインストールするように構成され、それにより、信頼できる実行環境を提供するステップと、
を含む、請求項1に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。 - モバイルアプリケーションの信頼できない部分が、
モバイル装置のリッチ実行環境内で実行可能なクライアントアプリケーションと、
信頼できるアプリケーションを実装できる命令セットのための信頼できるアプリケーションインタープリタと、
を含む、請求項1または2に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。 - 信頼できるアプリケーションが、信頼できるアプリケーションインタープリタによって解釈できる命令セット内で実装される、請求項1から3のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。
- モバイルアプリケーションに関連付けられたキーが、ホワイトボックスキー「WBCキー」およびイニシャルピン暗号キー「IPEK」を含み、さらに、方法が、モバイルアプリケーションと関連付けられたキーをモバイル装置に送信する前に、WBCキーを使用してIPEKを暗号化することを含み、IPEKの暗号化バージョンがモバイル装置に送信される、請求項1から4のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。
- モバイルアプリケーションの信頼できる部分が、信頼できるサーバプロバイダによってモバイル装置に送信される前に、イニシャルピン暗号キー「IPEK」から生成されたセッションキーを使用して暗号化される、請求項5に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。
- モバイルアプリケーションの信頼できない部分が、信頼できる実行環境のハードウェア実装に似た機能を実装する、アプリケーションプログラムインタフェースを含む、請求項1から6のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。
- 信頼できるアプリケーションを信頼できる安全な記憶装置と関連付けるステップと、
最初のランダム秘密をモバイル装置の安全な記憶装置に記憶するステップと、
信頼できるアプリケーションの安全な記憶装置内のデータにアクセスするたびに、最初のランダム秘密「IRS」、装置のフィンガープリント、および、信頼できるアプリケーションのための一意のid「UUID」を使用して、信頼できるアプリケーションと関連付けられた信頼できる記憶装置に記憶されたデータを暗号化するために、安全な記憶データキー「TA_SK」を生成するステップと
をさらに含む、請求項1から7のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。 - 信頼できるアプリケーションを実行する間に、
信頼できるアプリケーションのその特定の実行と関連付けられた1回限りのランタイムキーを決定するステップと、
信頼できるアプリケーションのその特定の実行中に、信頼できるアプリケーションによって使用されるランタイムメモリに数量を記憶するとき、1回限りのランタイムキーを使用してその数量をマスクするステップと、
信頼できるアプリケーションのその特定の実行中に、信頼できるアプリケーションによって使用されるランタイムメモリから数量を取得するとき、1回限りのランタイムキーを使用してその数量をアンマスクするステップと、
をさらに含む、請求項1から8のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。 - 実行または解釈するためにコンパイルされた形式を有する信頼できるアプリケーションを最初に実行した際に、信頼できるアプリケーションのコンパイルされた形式に基づいて第1の値を計算し、信頼できるアプリケーションのコンパイルされた形式に基づいてその値を記憶するステップと、
信頼できるアプリケーションの後続の実行をした際に、信頼できるアプリケーションのコンパイルされた形式に基づいて同じ計算を実施して、信頼できるアプリケーションのコンパイルされた形式に基づいて第2の値を生成し、第1の値と第2の値を比較し、第1の値と第2の値が同一でない場合は矯正アクションを行うステップと、
をさらに含む、請求項1から9のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。 - ソフトウェアの信頼できる実行環境の最初の実行をした際に、モバイルアプリケーションの特定の命令の予想実行時間を決定し、
前記一定の命令の予想実行時間を記憶し、
ソフトウェアの信頼できる実行環境の後続の実行中に、
命令数を追跡し、
システムクロックを定期的にフェッチし、
現在の命令数から予想実行時間を計算し、
予想実行時間と現在のシステムクロックを比較し、
比較が受け入れがたい偏差を示す場合、矯正アクションを行う
ことにより、潜在的なタイムシフト攻撃を防御するステップをさらに含む、請求項1から10のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。 - 特定の命令が、アプリケーションプログラムインタフェースの機能に対する呼び出しである、請求項11に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。
- 信頼できるアプリケーションの重要な部分を、複数のループを有し、各ループが短いループまたは長いループとして実行されることができるダミーコード部で修正するステップと、
ダミーコード部の内部および信頼できるアプリケーションの前記重要な部分の近傍に複数の検査ポイントを割り当てるステップと、
信頼できるアプリケーションを実行した際に、定義された数の短いループおよび長いループを実行する、ダミーコード部を通る実行経路を決定するステップと、
各検査ポイントの予想到達時間を決定するステップと、
検査ポイントに到達した際に、予想到達時間と実際の到達時間を比較し、実際の到達時間と予想到達時間の間の偏差が所定のしきい値を超える場合に、矯正アクションを行うステップと、
をさらに含む、請求項1から12のいずれか一項に記載のモバイル装置上で実行するためのモバイルアプリケーションを安全にするための方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP15306989.3A EP3179690A1 (en) | 2015-12-11 | 2015-12-11 | Mobile device having trusted execution environment |
EP15306989.3 | 2015-12-11 | ||
PCT/EP2016/080527 WO2017098024A1 (en) | 2015-12-11 | 2016-12-09 | Mobile device having trusted execution environment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019505887A true JP2019505887A (ja) | 2019-02-28 |
JP6888011B2 JP6888011B2 (ja) | 2021-06-16 |
Family
ID=55027656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018529986A Active JP6888011B2 (ja) | 2015-12-11 | 2016-12-09 | 信頼できる実行環境を有するモバイル装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10878083B2 (ja) |
EP (2) | EP3179690A1 (ja) |
JP (1) | JP6888011B2 (ja) |
KR (1) | KR102217501B1 (ja) |
CN (1) | CN108781210B (ja) |
ES (1) | ES2917183T3 (ja) |
WO (1) | WO2017098024A1 (ja) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11424931B2 (en) * | 2016-01-27 | 2022-08-23 | Blackberry Limited | Trusted execution environment |
KR102604046B1 (ko) * | 2016-11-28 | 2023-11-23 | 삼성전자주식회사 | 전자 기기의 프로그램 관리 방법 및 장치 |
US10972265B2 (en) * | 2017-01-26 | 2021-04-06 | Microsoft Technology Licensing, Llc | Addressing a trusted execution environment |
US10897459B2 (en) | 2017-01-26 | 2021-01-19 | Microsoft Technology Licensing, Llc | Addressing a trusted execution environment using encryption key |
US10897360B2 (en) | 2017-01-26 | 2021-01-19 | Microsoft Technology Licensing, Llc | Addressing a trusted execution environment using clean room provisioning |
US10528749B2 (en) * | 2017-03-20 | 2020-01-07 | Huawei Technologies Co., Ltd. | Methods and apparatus for containerized secure computing resources |
CN109218260B (zh) * | 2017-07-03 | 2020-11-06 | 深圳市中兴微电子技术有限公司 | 一种基于可信任环境的认证保护系统及方法 |
US11403540B2 (en) * | 2017-08-11 | 2022-08-02 | Google Llc | On-device machine learning platform |
CN109787943B (zh) * | 2017-11-14 | 2022-02-22 | 华为技术有限公司 | 一种抵御拒绝服务攻击的方法及设备 |
US10872144B1 (en) * | 2017-12-07 | 2020-12-22 | Ent. Services Development Corporation Lp | Systems and methods for secure processing of data streams having differing security level classifications |
US10911236B2 (en) * | 2017-12-13 | 2021-02-02 | Paypal, Inc. | Systems and methods updating cryptographic processes in white-box cryptography |
US10922441B2 (en) * | 2018-05-04 | 2021-02-16 | Huawei Technologies Co., Ltd. | Device and method for data security with a trusted execution environment |
US11093604B2 (en) | 2018-07-27 | 2021-08-17 | BicDroid Inc. | Personalized and cryptographically secure access control in trusted execution environment |
US11206130B2 (en) * | 2018-07-31 | 2021-12-21 | Nxp B.V. | Customizing cryptographic keys between multiple hosts |
US10908935B1 (en) * | 2018-08-02 | 2021-02-02 | Raytheon Company | Estimation of guest clock value based on branch instruction count and average time between branch instructions for use in deterministic replay of execution |
EP3608806A1 (en) * | 2018-08-09 | 2020-02-12 | Gemalto Sa | Anti cloning for white box protected data |
US11132440B2 (en) | 2018-11-01 | 2021-09-28 | Foundation Of Soongsil University-Industry Cooperation | Hybrid trust execution environment based android security framework, android device equipped with the same and method of executing trust service in android device |
EP3887979A4 (en) | 2018-11-30 | 2022-10-12 | BicDroid Inc. | PERSONALIZED AND CRYPTOGRAPHICALLY SECURE ACCESS CONTROL IN OPERATING SYSTEMS |
US11048800B2 (en) * | 2018-12-17 | 2021-06-29 | Intel Corporation | Composable trustworthy execution environments |
KR102137894B1 (ko) * | 2018-12-18 | 2020-07-24 | 서울여자대학교 산학협력단 | 커널 무결성 검사 장치 및 방법 |
CN109739522B (zh) * | 2019-01-03 | 2022-02-18 | 中国—东盟信息港股份有限公司 | 一种适用于eSIM应用的TEE OS适配系统 |
US11646870B2 (en) * | 2019-01-23 | 2023-05-09 | International Business Machines Corporation | Securing mobile device by RAM-encryption |
EP3912064B1 (en) * | 2019-03-13 | 2024-09-25 | Huawei Technologies Co., Ltd. | Apparatus and method for dynamic configuration of trusted application access control |
CN110543764B (zh) * | 2019-09-11 | 2021-07-23 | 飞腾信息技术有限公司 | 片上系统内存防护方法、密码加速引擎及内存防护装置 |
US11416619B1 (en) * | 2019-09-24 | 2022-08-16 | Sprint Communications Company L.P. | Trusted boot-loader authentication |
CN110855667B (zh) * | 2019-11-14 | 2023-04-07 | 宁夏吉虎科技有限公司 | 一种区块链加密方法、装置及系统 |
JP7380251B2 (ja) * | 2020-01-27 | 2023-11-15 | 株式会社Ihi | 仮想マシンにおけるデータ改ざんの監視方法及び装置 |
CN111881467B (zh) * | 2020-06-12 | 2022-10-28 | 海光信息技术股份有限公司 | 利用安全处理器保护文件的方法、装置、cpu和计算机设备 |
CN111740824B (zh) * | 2020-07-17 | 2020-11-17 | 支付宝(杭州)信息技术有限公司 | 可信应用管理方法及装置 |
CN112149134A (zh) * | 2020-09-11 | 2020-12-29 | 支付宝(杭州)信息技术有限公司 | 可信应用管理方法及装置 |
KR102390381B1 (ko) * | 2020-11-25 | 2022-04-25 | 고려대학교 산학협력단 | 시뮬레이션 데이터 기반 웹 페이지 로드 시간 예측 장치, 방법 및 이를 수행하기 위한 프로그램을 기록한 기록매체 |
CN112506531A (zh) * | 2020-12-11 | 2021-03-16 | 中国科学院信息工程研究所 | 软件安装方法、装置、电子设备和存储介质 |
FR3118223B1 (fr) * | 2020-12-17 | 2023-11-17 | Tages | Methode d’association d’un programme logiciel executable avec une plateforme informatique |
US11979396B2 (en) | 2021-05-19 | 2024-05-07 | Bank Of America Corporation | Information security system and method for machine-to-machine (M2M) security and validation |
CN114021141A (zh) * | 2021-10-29 | 2022-02-08 | 中国银联股份有限公司 | 一种电子设备、可信应用调用方法、装置、设备及介质 |
CN115017495B (zh) * | 2021-11-09 | 2023-08-08 | 荣耀终端有限公司 | 定时校验方法、电子设备和可读存储介质 |
US12061710B2 (en) * | 2021-12-08 | 2024-08-13 | Intel Corporation | Mechanism for secure library sharing |
SE2250289A1 (en) * | 2022-03-03 | 2023-09-04 | Crunchfish Digital Cash Ab | Preventing fraudulent use by cloning of a trusted application |
CN114553603B (zh) * | 2022-04-25 | 2022-07-29 | 南湖实验室 | 一种基于隐私计算的新型数据可信解密的方法 |
WO2024075929A1 (ko) * | 2022-10-04 | 2024-04-11 | 삼성전자 주식회사 | 신뢰 실행 환경을 제공하기 위한 전자 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010501953A (ja) * | 2006-09-07 | 2010-01-21 | ノキア コーポレイション | セキュアモジュールアプリケーションに関連する情報の管理 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030037237A1 (en) * | 2001-04-09 | 2003-02-20 | Jean-Paul Abgrall | Systems and methods for computer device authentication |
US8352749B2 (en) | 2010-12-17 | 2013-01-08 | Google Inc. | Local trusted services manager for a contactless smart card |
KR101744748B1 (ko) * | 2011-01-05 | 2017-06-09 | 한국전자통신연구원 | 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치 |
US20140040622A1 (en) * | 2011-03-21 | 2014-02-06 | Mocana Corporation | Secure unlocking and recovery of a locked wrapped app on a mobile device |
US9317689B2 (en) * | 2012-06-15 | 2016-04-19 | Visa International Service Association | Method and apparatus for secure application execution |
US11228427B2 (en) * | 2014-02-11 | 2022-01-18 | Ericsson Ab | System and method for securing content keys delivered in manifest files |
CN104134038B (zh) * | 2014-07-31 | 2016-11-23 | 浪潮电子信息产业股份有限公司 | 一种基于虚拟平台的安全可信运行保护方法 |
US9871821B2 (en) * | 2014-11-11 | 2018-01-16 | Oracle International Corporation | Securely operating a process using user-specific and device-specific security constraints |
CN104765612B (zh) * | 2015-04-10 | 2018-05-08 | 武汉天喻信息产业股份有限公司 | 一种访问可信执行环境、可信应用的系统及方法 |
EP3086585B1 (en) * | 2015-04-23 | 2019-12-11 | Nxp B.V. | Method and system for securing data communicated in a network |
US10114958B2 (en) * | 2015-06-16 | 2018-10-30 | Microsoft Technology Licensing, Llc | Protected regions |
US10178164B2 (en) * | 2015-08-31 | 2019-01-08 | Visa International Service Association | Secure binding of software application to communication device |
-
2015
- 2015-12-11 EP EP15306989.3A patent/EP3179690A1/en not_active Withdrawn
-
2016
- 2016-12-09 WO PCT/EP2016/080527 patent/WO2017098024A1/en active Application Filing
- 2016-12-09 JP JP2018529986A patent/JP6888011B2/ja active Active
- 2016-12-09 CN CN201680081545.7A patent/CN108781210B/zh active Active
- 2016-12-09 KR KR1020187019734A patent/KR102217501B1/ko active IP Right Grant
- 2016-12-09 EP EP16816621.3A patent/EP3387813B1/en active Active
- 2016-12-09 ES ES16816621T patent/ES2917183T3/es active Active
- 2016-12-09 US US15/781,427 patent/US10878083B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010501953A (ja) * | 2006-09-07 | 2010-01-21 | ノキア コーポレイション | セキュアモジュールアプリケーションに関連する情報の管理 |
Also Published As
Publication number | Publication date |
---|---|
WO2017098024A1 (en) | 2017-06-15 |
KR20180093038A (ko) | 2018-08-20 |
ES2917183T3 (es) | 2022-07-07 |
JP6888011B2 (ja) | 2021-06-16 |
CN108781210A (zh) | 2018-11-09 |
CN108781210B (zh) | 2021-11-09 |
EP3387813A1 (en) | 2018-10-17 |
BR112018011782A2 (pt) | 2018-12-04 |
US10878083B2 (en) | 2020-12-29 |
US20190005229A1 (en) | 2019-01-03 |
KR102217501B1 (ko) | 2021-02-18 |
EP3387813B1 (en) | 2022-04-20 |
EP3179690A1 (en) | 2017-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6888011B2 (ja) | 信頼できる実行環境を有するモバイル装置 | |
US9054865B2 (en) | Cryptographic system and methodology for securing software cryptography | |
US11263311B2 (en) | Securing virtual-machine software applications | |
EP3394788B1 (en) | Method and system for enhancing the security of a transaction | |
CN111159658B (zh) | 字节码处理方法、系统、装置、计算机设备和存储介质 | |
CN104751049A (zh) | 一种应用程序安装方法及移动终端 | |
Ahmad et al. | Enhancing the security of mobile applications by using TEE and (U) SIM | |
EP3048553B1 (en) | Method for distributing applets, and entities for distributing applets | |
Cooijmans et al. | Secure key storage and secure computation in Android | |
CN107995230B (zh) | 一种下载方法及终端 | |
KR101473656B1 (ko) | 모바일 데이터 보안 장치 및 방법 | |
US20230058046A1 (en) | Apparatus and Method for Protecting Shared Objects | |
CN112115430A (zh) | 一种apk的加固方法、电子设备及存储介质 | |
US20190199694A1 (en) | Individual encryption of control commands | |
Ribeiro et al. | DBStore: A TrustZone-backed Database Management System for Mobile Applications. | |
KR101906484B1 (ko) | 어플리케이션 보안 방법 및 이를 수행하기 위한 시스템 | |
Choi et al. | Hardware-assisted credential management scheme for preventing private data analysis from cloning attacks | |
BR112018011782B1 (pt) | Método para segurança de um aplicativo para celulares para execução em um dispositivo móvel | |
Sivertsgård | Using Smart Cards to Mitigate Security Threats on Mobile Devices | |
Park et al. | Analyzing security of Korean USIM-based PKI certificate service | |
Jones | An analysis of vulnerabilities presented by Android malware and iOS jailbreaks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191128 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210126 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210423 |
|
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: 20210511 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210519 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6888011 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |