JP2008503014A - ソフトウェアのセキュリティ確保 - Google Patents
ソフトウェアのセキュリティ確保 Download PDFInfo
- Publication number
- JP2008503014A JP2008503014A JP2007527785A JP2007527785A JP2008503014A JP 2008503014 A JP2008503014 A JP 2008503014A JP 2007527785 A JP2007527785 A JP 2007527785A JP 2007527785 A JP2007527785 A JP 2007527785A JP 2008503014 A JP2008503014 A JP 2008503014A
- Authority
- JP
- Japan
- Prior art keywords
- software
- dynamic link
- link library
- computer
- readable medium
- 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 439
- 238000012545 processing Methods 0.000 claims abstract description 42
- 238000009434 installation Methods 0.000 claims abstract description 22
- 230000006870 function Effects 0.000 claims description 44
- 150000003839 salts Chemical class 0.000 claims description 34
- 230000002401 inhibitory effect Effects 0.000 claims description 23
- 238000012544 monitoring process Methods 0.000 claims description 15
- 230000000977 initiatory effect Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 13
- 230000004913 activation Effects 0.000 claims description 11
- 230000003993 interaction Effects 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 5
- 230000008439 repair process Effects 0.000 claims description 3
- 208000033748 Device issues Diseases 0.000 claims 1
- 230000009471 action Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 37
- 238000012360 testing method Methods 0.000 description 74
- 238000010586 diagram Methods 0.000 description 30
- 238000004364 calculation method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000033764 rhythmic process Effects 0.000 description 1
- 230000007958 sleep Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000010200 validation analysis Methods 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
-
- 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/121—Restricting unauthorised execution of programs
-
- 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
-
- 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
-
- 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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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
-
- 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/083—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
- H04L9/0836—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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- 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)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
Description
Claims (179)
- コンピューティングマシン上で実行されるソフトウェアの改ざんを抑止する方法であって、
許可されていないサービスの実行を抑止するための、難読化された保護ダイナミックリンクライブラリの保護関数(protection function)を呼び出すことと、
中央階層型データベースのキーおよび値を保護するための、前記難読化された保護ダイナミックリンクライブラリの別の保護関数を呼び出すことと
を備えることを特徴とする方法。 - ログオンモジュールを実行することをさらに備え、前記ログオンモジュールは、前記ソフトウェアが分類される製品クラスに対する保護が利用可能な場合に、前記難読化された保護ダイナミックリンクライブラリをロードすることを特徴とする請求項1に記載の方法。
- 前記難読化された保護ダイナミックリンクライブラリを前記ロードする動作が失敗した場合、前記コンピューティングマシンをシャットダウンすることをさらに備えることを特徴とする請求項2に記載の方法。
- 許可されていないサービスの実行を抑止するための、難読化された保護ダイナミックリンクライブラリの保護関数を前記呼び出す動作は、許可されたサービスのリストをチェックして許可されていないサービスの実行を削除するスレッドを生成することを特徴とする請求項3に記載の方法。
- 中央階層型データベースのキーおよび値を保護するための、前記難読化された保護ダイナミックリンクライブラリの別の保護関数を前記呼び出す動作は、システムコンテキストのキーおよび値を保護するためのスレッドを生成することを含むことを特徴とする請求項4に記載の方法。
- 中央階層型データベースのキーおよび値を保護するための、前記難読化された保護ダイナミックリンクライブラリの別の保護関数を前記呼び出す動作は、ユーザコンテキストのキーおよび値を保護するためのスレッドを生成することを含むことを特徴とする請求項5に記載の方法。
- 前記スレッドが確実に実行されていることを定期的に判定するためのタイマを生成することをさらに備えることを特徴とする請求項6に記載の方法。
- ログオフが開始した場合であって、かつ、前記ソフトウェアが分類される製品クラスに対する保護が利用可能な場合、前記スレッドを停止することをさらに備えることを特徴とする請求項7に記載の方法。
- コンピューティングマシン上で実行されるソフトウェアの改ざんを抑止する方法を実行するためのコンピュータ実行可能命令を有するコンピュータ読取り可能な媒体であって、
前記方法は、
許可されていないサービスの実行を抑止するための、難読化された保護ダイナミックリンクライブラリの保護関数を呼び出すことと、
中央階層型データベースのキーおよび値を保護するための、前記難読化された保護ダイナミックリンクライブラリの別の保護関数を呼び出すことと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記方法は、ログオンモジュールを実行することをさらに備え、前記ログオンモジュールは、前記ソフトウェアが分類される製品クラスに対する保護が利用可能な場合に、前記難読化された保護ダイナミックリンクライブラリをロードすることを特徴とする請求項9に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記難読化された保護ダイナミックリンクライブラリを前記ロードする動作が失敗した場合、前記コンピューティングマシンをシャットダウンすることをさらに備えることを特徴とする請求項10に記載のコンピュータ読取り可能な媒体。
- 許可されていないサービスの実行を抑止するための、難読化された保護ダイナミックリンクライブラリの保護関数を前記呼び出す動作は、許可されたサービスのリストをチェックして許可されていないサービスの実行を削除するスレッドを生成することを特徴とする請求項11に記載のコンピュータ読取り可能な媒体。
- 中央階層型データベースのキーおよび値を保護するための、前記難読化された保護ダイナミックリンクライブラリの別の保護関数を前記呼び出す動作は、システムコンテキストのキーおよび値を保護するためのスレッドを生成することを含むことを特徴とする請求項12に記載のコンピュータ読取り可能な媒体。
- 中央階層型データベースのキーおよび値を保護するための、前記難読化された保護ダイナミックリンクライブラリの別の保護関数を前記呼び出す動作は、ユーザコンテキストのキーおよび値を保護するためのスレッドを生成することを含むことを特徴とする請求項13に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記スレッドが確実に実行されていることを定期的に判定するためのタイマを生成することをさらに備えることを特徴とする請求項14に記載のコンピュータ読取り可能な媒体。
- 前記方法は、ログオフが開始した場合であって、かつ、前記ソフトウェアが分類される製品クラスに対する利用保護が可能な場合、前記スレッドを停止することをさらに備えることを特徴とする請求項15に記載のコンピュータ読取り可能な媒体。
- コンピューティングマシン上で実行されるソフトウェアの改ざんを抑止するためのシステムであって、
許可されていないサービスの実行を抑止するための、難読化された保護ダイナミックリンクライブラリの保護関数を呼び出す手段と、
中央階層型データベースのキーおよび値を保護するための、前記難読化された保護ダイナミックリンクライブラリの別の保護関数を呼び出す手段と
を備えたことを特徴とするシステム。 - ログオンモジュールを実行する手段をさらに備え、前記ログオンモジュールは、前記ソフトウェアが分類される製品クラスに対する保護が利用可能な場合に、前記難読化された保護ダイナミックリンクライブラリをロードすることを特徴とする請求項17に記載のシステム。
- 前記難読化された保護ダイナミックリンクライブラリを前記ロードする動作が失敗した場合、前記コンピューティングマシンをシャットダウンする手段をさらに備えたことを特徴とする請求項18に記載のシステム。
- 許可されていないサービスの実行を抑止するための、難読化された保護ダイナミックリンクライブラリの保護関数を前記呼び出す手段は、許可されたサービスのリストをチェックして許可されていないサービスの実行を削除するスレッドを生成することを特徴とする請求項19に記載のシステム。
- 情報のオリジナル性を検証するための、コンピューティングシステムによって使用されるコンピュータ実行可能命令と、1つまたは複数のデータ構造とを記憶したコンピュータ読取り可能な媒体であって、
保護ダイナミックリンクライブラリの秘密ライブラリキーを用いて暗号化されたプロファイル
を備え、前記プロファイルは、プロファイルデータを含み、前記プロファイルデータのサイズおよびフォーマットは、プロファイルタイプに依存し、前記プロファイルは、前記保護ダイナミックリンクライブラリの公開ライブラリキーを用いてデジタル署名されたシグネチャをさらに含み、前記プロファイルは、前記プロファイルを識別する識別子と前記プロファイルデータとのチェックサムを含むベリファイアブロブ(verifier blob)をさらに含むことを特徴とするコンピュータ読取り可能な媒体。 - 前記プロファイルが記憶される中央階層型データベースを有することを特徴とする請求項21に記載のコンピュータ読取り可能な媒体。
- 秘密呼び出しキーおよび公開呼び出しキーを含むログオンモジュールをさらに備え、前記プロファイルの前記ベリファイアブロブは、前記秘密呼び出しキーを用いて暗号化され、前記公開呼び出しキーを用いて署名されることを特徴とする請求項22に記載のコンピュータ読取り可能な媒体。
- 前記保護ダイナミックリンクライブラリは、公開ライブラリキーおよび秘密ライブラリキーを含み、前記プロファイルの前記シグネチャは、前記公開ライブラリキーを用いて署名され、前記プロファイルは、前記秘密ライブラリキーを用いて暗号化されることを特徴とする請求項22に記載のコンピュータ読取り可能な媒体。
- 前記プロファイルの前記プロファイルデータ、前記シグネチャ、および前記ベリファイアブロブの構造は、別のプロファイルとは異なることを特徴とする請求項22に記載のコンピュータ読取り可能な媒体。
- ソフトウェア間の相互動作を保護するためのコンピュータで実施される方法であって、
公開呼び出しキーおよび秘密呼び出しキーを有する第1のソフトウェアによって、中央階層型データベースに記憶されたプロファイルへのアクセスを開始することであって、前記第1のソフトウェアはランダムなソルト値を送る、アクセスを開始することと、
秘密ライブラリキーを有する第2のソフトウェアによって、前記ランダムなソルト値を受け取った後、前記第2のソフトウェアは、前記中央階層型データベース内で前記プロファイルを見つけて、前記秘密ライブラリキーを使用して前記プロファイルを解読することと
を備えることを特徴とする方法。 - 前記第2のソフトウェアは、前記プロファイルの識別子と、前記プロファイルのデータと、前記プロファイルを見つけた結果と、前記ランダムなソルト値とを含む情報集合の第1のチェックサムを計算することを特徴とする請求項26に記載の方法。
- 前記第2のソフトウェアは、前記プロファイルを見つけた結果と、前記公開呼び出しキーを用いて署名され、かつ、前記秘密呼び出しキーを用いて暗号化された前記プロファイルのベリファイアブロブと、前記第2のソフトウェアによって計算された前記第1のチェックサムとを送ることを特徴とする請求項27に記載の方法。
- 前記第1のソフトウェアは、前記プロファイルの結果と、前記ベリファイアブロブと、前記第1のチェックサムとを受け取った後、前記秘密呼び出しキーを使用して前記ベリファイアブロブを解読し、前記公開呼び出しキーを使用してシグネチャを検証し、前記第1のソフトウェアは、前記プロファイルの識別子と、前記プロファイルのデータと、前記プロファイルを見つけた結果と、前記ランダムなソルト値とを含む情報集合の第2のチェックサムを計算することをさらに備えることを特徴とする請求項28に記載の方法。
- 前記第1のチェックサムと前記第2のチェックサムとを比較することをさらに備え、前記第1のチェックサムと前記第2のチェックサムとが一致しない場合、改ざんが行われたとの結論を下すことを特徴とする請求項29に記載の方法。
- ソフトウェア間の相互動作を保護するためのコンピュータで実施される方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
前記方法は、
公開呼び出しキーおよび秘密呼び出しキーを有する第1のソフトウェアによって、中央階層型データベースに記憶されたプロファイルへのアクセスを開始することであって、前記第1のソフトウェアはランダムなソルト値を送る、アクセスを開始することと、
秘密ライブラリキーを有する第2のソフトウェアによって、前記ランダムなソルト値を受け取った後、前記中央階層型データベース内で前記プロファイルを見つけて、前記秘密ライブラリキーを使用して前記プロファイルを解読することと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記第2のソフトウェアは、前記プロファイルの識別子と、前記プロファイルのデータと、前記プロファイルを見つけた結果と、前記ランダムなソルト値とを含む情報集合の第1のチェックサムを計算することを特徴とする請求項31に記載のコンピュータ読取り可能な媒体。
- 前記第2のソフトウェアは、前記プロファイルを見つけた結果と、前記公開呼び出しキーを用いて署名され、かつ、前記秘密呼び出しキーを用いて暗号化された前記プロファイルのベリファイアブロブと、前記第2のソフトウェアによって計算された前記第1のチェックサムとを送ることを特徴とする請求項32に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記第1のソフトウェアが、前記プロファイルの結果と、前記ベリファイアブロブと、前記第1のチェックサムとを受け取った後、前記秘密呼び出しキーを使用して前記ベリファイアブロブを解読し、前記公開呼び出しキーを使用してシグネチャを検証し、前記第1のソフトウェアが、前記プロファイルの識別子と、前記プロファイルのデータと、前記プロファイルを見つけた結果と、前記ランダムなソルト値とを含む情報集合の第2のチェックサムを計算することをさらに備えることを特徴とする請求項33に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記第1のチェックサムと前記第2のチェックサムとを比較することをさらに備え、前記第1のチェックサムと前記第2のチェックサムとが一致しない場合、改ざんが行われたとの結論を下すことを特徴とする請求項34に記載のコンピュータ読取り可能な媒体。
- ソフトウェア間の相互動作を保護するためのシステムであって、
公開呼び出しキーおよび秘密呼び出しキーを有する第1のソフトウェアによって、中央階層型データベースに記憶されたプロファイルへのアクセスを開始する手段であって、前記第1のソフトウェアはランダムなソルト値を送る、アクセスを開始する手段と、
秘密ライブラリキーを有する第2のソフトウェアによって、前記ランダムなソルト値を受け取った後、前記第2のソフトウェアによって実行される、前記中央階層型データベース内で前記プロファイルを見つけて、前記秘密ライブラリキーを使用して前記プロファイルを解読する手段と
を備えたことを特徴とするシステム。 - 前記第2のソフトウェアは、前記プロファイルの識別子と、前記プロファイルのデータと、前記プロファイルを見つけた結果と、前記ランダムなソルト値とを含む情報集合の第1のチェックサムを計算する手段を使用することを特徴とする請求項36に記載のシステム。
- 前記第2のソフトウェアは、前記プロファイルを見つけた結果と、前記公開呼び出しキーを用いて署名され、かつ、前記秘密呼び出しキーを用いて暗号化された前記プロファイルのベリファイアブロブと、前記第2のソフトウェアによって計算された前記第1のチェックサムとを送る手段を使用することを特徴とする請求項37に記載のシステム。
- 前記第1のソフトウェアが、前記プロファイルの結果と、前記ベリファイアブロブと、前記第1のチェックサムとを受け取った後、前記第1のソフトウェアによって実行される、前記秘密呼び出しキーを使用して前記ベリファイアブロブを解読し、前記公開呼び出しキーを使用してシグネチャを検証する手段をさらに備え、前記第1のソフトウェアは、前記プロファイルの識別子と、前記プロファイルのデータと、前記プロファイルを見つけた結果と、前記ランダムなソルト値とを含む情報集合の第2のチェックサムを計算することを特徴とする請求項38に記載のシステム。
- コンピューティングマシン上で実行されるソフトウェアの改ざんを抑止する方法であって、
前記ソフトウェアが分類される製品クラスに対する保護が利用可能な場合、難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードすることと、
前記コンピューティングマシン上で実行される前記ソフトウェアが、改ざんからの保護が利用可能である前記製品クラス内に依然として存在することを監視するための、システムタイマを生成することと
を備えることを特徴とする方法。 - 前記システムタイマは無期限のスレッド内で実行されることを特徴とする請求項40に記載の方法。
- 前記システムタイマは、予め設定された期間に関連付けられ、前記予め設定されたタイマ期間が過ぎると、タイマルーチンが実行されることを特徴とする請求項41に記載の方法。
- 前記タイマルーチンは、中央階層型データベースに記憶されたアクティベーションキー(activation key)をチェックして、前記製品クラスを復号することを特徴とする請求項42に記載の方法。
- 前記復号した製品クラスに対する利用可能な保護がなく、前記ソフトウェアが改ざんされたことを示す場合、前記タイマルーチンは、セキュリティエラー対策を講じることを特徴とする請求項43に記載の方法。
- ユーザの構成が、前記中央階層型データベースに記憶された予め定められたプロファイルと一致しない場合、前記タイマルーチンは、セキュリティエラー対策を講じることを特徴とする請求項44に記載の方法。
- コンピューティングマシン上で実行されるソフトウェアの改ざんを抑止する方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
前記方法は、
前記ソフトウェアが分類される製品クラスに対する保護が利用可能な場合、難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードすることと、
前記コンピューティングマシン上で実行される前記ソフトウェアが、改ざんからの保護が利用可能である前記製品クラス内に依然として存在することを監視するための、システムタイマを生成することと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記システムタイマは無期限のスレッド内で実行されることを特徴とする請求項46に記載のコンピュータ読取り可能な媒体。
- 前記システムタイマは、予め設定された期間に関連付けられ、前記予め設定されたタイマ期間が過ぎると、タイマルーチンが実行されることを特徴とする請求項47に記載のコンピュータ読取り可能な媒体。
- 前記タイマルーチンは、中央階層型データベースに記憶されたアクティベーションキーをチェックして、前記製品クラスを復号することを特徴とする請求項48に記載のコンピュータ可読媒体。
- 前記復号した製品クラスに対する利用可能な保護がなく、前記ソフトウェアが改ざんされたことを示す場合、前記タイマルーチンは、セキュリティエラー対策を講じることを特徴とする請求項49に記載のコンピュータ読取り可能な媒体。
- ユーザの構成が、前記中央階層型データベースに記憶された予め定められたプロファイルと一致しない場合、前記タイマルーチンは、セキュリティエラー対策を講じることを特徴とする請求項50に記載のコンピュータ読取り可能な媒体。
- コンピューティングマシン上で実行されるソフトウェアの改ざんを抑止する方法であって、
前記コンピューティングマシン上で、難読化された保護ダイナミックリンクライブラリの保護関数を呼び出すことから、複数の実行スレッドを生成することであって、前記複数のスレッドのうちの1つのスレッドは、許可されていないサービスの実行を抑止し、前記複数のスレッドのうちの他のスレッドは、中央階層型データベースのキーおよび値を保護する、複数の実行スレッドを生成することと、
前記複数のスレッドが実行されていることを監視するためのタイマを生成することと
を備えることを特徴とする方法。 - 前記タイマは無期限のスレッド内で実行されることを特徴とする請求項52に記載の方法。
- 前記タイマは、予め設定された期間に関連付けられ、前記予め設定されたタイマ期間が過ぎると、タイマルーチンが実行されることを特徴とする請求項53に記載の方法。
- 前記複数のスレッドのうちの前記1つのスレッドが終了または一時停止して、前記複数のスレッドのうちの前記1つのスレッドが改ざんされたことを示す場合、前記タイマルーチンは、セキュリティエラー対策を講じることを特徴とする請求項54に記載の方法。
- 前記複数のスレッドのうちの前記他のスレッドが終了または一時停止して、前記複数のスレッドのうちの前記他のスレッドが改ざんされたことを示す場合、前記タイマルーチンは、セキュリティエラー対策を講じることを特徴とする請求項55に記載の方法。
- コンピューティングマシン上で実行されるソフトウェアの改ざんを抑止する方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
前記方法は、
前記コンピューティングマシン上で、難読化された保護ダイナミックリンクライブラリの保護関数を呼び出すことから、複数の実行スレッドを生成することであって、前記複数のスレッドのうちの1つのスレッドは、許可されていないサービスの実行を抑止し、前記複数のスレッドのうちの他のスレッドは、中央階層型データベースのキーおよび値を保護する、複数の実行スレッドを生成することと、
前記複数のスレッドが実行されていることを監視するためのタイマを生成することと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記複数のスレッドのうちの前記1つのスレッドが終了または一時停止して、前記複数のスレッドのうちの前記1つのスレッドが改ざんされたことを示す場合、前記方法は、セキュリティエラー対策を講じることを特徴とする請求項57に記載のコンピュータ読取り可能な媒体。
- 前記複数のスレッドのうちの前記他のスレッドが終了または一時停止して、前記複数のスレッドのうちの前記他のスレッドが改ざんされたことを示す場合、前記方法は、セキュリティエラー対策を講じることを特徴とする請求項58に記載のコンピュータ読取り可能な媒体。
- サービス改ざんを抑止する方法であって、
コンピューティングマシンの起動時に、ログオンモジュールによって、難読化されたダイナミックリンクライブラリの保護関数を呼び出して、許可されていないサービスの実行を抑止するスレッドを生成することと、
難読化された保護ダイナミックリンクライブラリと通信して、許可されていないサービスのリストに関連する暗号化された保護プロファイルにアクセスすることと
を備えることを特徴とする方法。 - 前記呼び出す動作は、前記難読化されたダイナミックリンクライブラリによって、前記ログオンモジュールに前記スレッドへのハンドルを返すことを含むことを特徴とする請求項60に記載の方法。
- 許可されていないサービスの実行を抑止する前記スレッドの継続性をチェックするためのタイマを生成することをさらに備えることを特徴とする請求項61に記載の方法。
- 予め設定された期間が過ぎて、前記スレッドが終了した場合、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項62に記載の方法。
- 予め設定された期間が過ぎて、前記スレッドが一時停止した場合、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項63に記載の方法。
- 前記難読化されたダイナミックリンクライブラリによって、前記許可されていないサービスのリストを含むプロファイルを見つけ、前記プロファイルのIDと、前記プロファイルのデータと、前記ログオンモジュールから前記難読化された保護ダイナミックリンクライブラリに送られたソルト値とから、チェックサムを計算することをさらに備えることを特徴とする請求項64に記載の方法。
- 前記難読化された保護ダイナミックリンクライブラリによって、結果データ構造と、前記プロファイルのベリファイアブロブと、前記計算したチェックサムとを、前記ログオンモジュールに返すことをさらに備えることを特徴とする請求項65に記載の方法。
- 前記ログオンモジュールによって計算されたチェックサムと、前記保護ダイナミックリンクライブラリによって計算されたチェックサムとが一致しなかった場合、セキュリティエラー対策を講じることをさらに備え、前記ログオンモジュールによって計算された前記チェックサムは、解読されたベリファイアチェックサムと、受け取った前記結果データ構造と、前記ソルト値とに依存することを特徴とする請求項66に記載の方法。
- 許可されていないサービスが実行されている場合、前記許可されていないサービスに依存するすべてのサービスを停止し、前記許可されていないサービスを削除することをさらに備えることを特徴とする請求項67に記載の方法。
- 予め設定された期間の間、前記スレッドをスリープさせることをさらに備えることを特徴とする請求項68に記載の方法。
- サービス改ざんを抑止する方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
前記方法は、
コンピューティングマシンの起動時に、ログオンモジュールによって、難読化されたダイナミックリンクライブラリの保護関数を呼び出して、許可されていないサービスの実行を抑止するスレッドを生成することと、
難読化された保護ダイナミックリンクライブラリと通信して、許可されていないサービスのリストに関連する暗号化された保護プロファイルにアクセスすることと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記呼び出す動作は、前記難読化されたダイナミックリンクライブラリによって、前記スレッドへのハンドルを前記ログオンモジュールに返すことを含むことを特徴とする請求項70に記載のコンピュータ読取り可能な媒体。
- 前記方法は、許可されていないサービスの実行を抑止する前記スレッドの継続性をチェックするためのタイマを生成することをさらに備えることを特徴とする請求項71に記載のコンピュータ読取り可能な媒体。
- 前記方法は、予め設定された期間が過ぎて、前記スレッドが終了した場合、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項72に記載のコンピュータ読取り可能な媒体。
- 前記方法は、予め設定された期間が過ぎて、前記スレッドが一時停止した場合、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項73に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記難読化されたダイナミックリンクライブラリによって、前記許可されていないサービスのリストを含むプロファイルを見つけ、前記プロファイルのIDと、前記プロファイルのデータと、前記ログオンモジュールから前記難読化された保護ダイナミックリンクライブラリに送られたソルト値とから、チェックサムを計算することをさらに備えることを特徴とする請求項74に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記難読化されたダイナミックリンクライブラリによって、結果データ構造と、前記プロファイルのベリファイアブロブと、前記計算したチェックサムとを、前記ログオンモジュールに返すことをさらに備えることを特徴とする請求項75に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記ログオンモジュールによって計算されたチェックサムと、前記保護ダイナミックリンクライブラリによって計算されたチェックサムとが一致しなかった場合、セキュリティエラー対策を講じることをさらに備え、前記ログオンモジュールによって計算されたチェックサムは、解読されたベリファイアチェックサムと、受け取った前記結果データ構造と、前記ソルト値とに依存することを特徴とする請求項76に記載のコンピュータ読取り可能な媒体。
- 前記方法は、許可されていないサービスが実行されている場合、前記許可されていないサービスに依存するすべてのサービスを停止し、前記許可されていないサービスを削除することをさらに備えることを特徴とする請求項77に記載のコンピュータ読取り可能な媒体。
- 前記方法は、予め設定された期間の間、前記スレッドをスリープさせることをさらに備えることを特徴とする請求項78に記載のコンピュータ読取り可能な媒体。
- ソフトウェアをインストールするための、コンピューティングシステムによって使用されるコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
コンピュータ実行可能命令を含む保護ダイナミックリンクライブラリであって、前記コンピュータ実行可能命令は、改ざんがあるか否かについて中央階層型データベースを監視し、前記コンピューティングシステムに記憶されたファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止する、保護ダイナミックリンクライブラリ
を備えたことを特徴とするコンピュータ読取り可能な媒体。 - 一意な製品識別子を生成して、前記生成した製品識別子を前記中央階層型データベースに記憶するための製品識別子ダイナミックリンクライブラリと、
ダイナミックリンクライブラリをセットアップするための情報を含むセットアップ情報ファイルと、
前記セットアップ情報ファイル内の情報を使用して、前記ダイナミックリンクライブラリをセットアップするためのセットアップソフトウェアと
をさらに備えたことを特徴とする請求項80に記載のコンピュータ読取り可能な媒体。 - 前記セットアップソフトウェアによって、前記セットアップ情報ファイルを使用して生成されたインストールダイナミックリンクライブラリと、
市販のソフトウェアパッケージに関連するファイルに関する情報を含む保護情報ファイルと
をさらに備えたことを特徴とする請求項81に記載のコンピュータ読取り可能な媒体。 - 前記中央階層型データベースは、前記一意な製品識別子と、前記コンピューティングシステムが前記市販のソフトウェアパッケージを実行していることの検証を助けるための、前記一意な製品識別子から得られるアクティベーションキーと、前記システムに記憶された前記ファイルのセットのオリジナル性の検証を容易にするための、前記ファイルのセットのシグネチャを含む暗号化された保護プロファイルとを含むことを特徴とする請求項82に記載のコンピュータ読取り可能な媒体。
- 前記保護ダイナミックリンクライブラリは、前記インストールダイナミックリンクライブラリによって、前記保護情報ファイルに記憶された情報を使用して生成されることを特徴とする請求項83に記載のコンピュータ読取り可能な媒体。
- ソフトウェアセットアップを保護するためのコンピュータで実施される方法であって、
市販のソフトウェアパッケージのクラスに属するものとしてソフトウェアを識別するための製品識別子を生成することと、
前記ソフトウェアが、前記製品識別子に基づいて、ソフトウェア改ざんからの保護が利用可能である市販のソフトウェアパッケージのクラスに属する場合、ソフトウェア改ざんを抑止するための保護ダイナミックリンクライブラリのインストールを容易にすることと
を備えることを特徴とする方法。 - 保護情報ファイルからの情報を使用して、ソフトウェア改ざんを抑止するための前記保護ダイナミックリンクライブラリを生成するセットアップソフトウェアによって、インストールダイナミックリンクライブラリを実行することをさらに備えることを特徴とする請求項85に記載の方法。
- 実行ソフトウェアが市販のソフトウェアパッケージのクラスに属するか否かの検証を容易にするために、前記製品識別子に基づいて、アクティベーションキーを中央階層型データベースに記録することをさらに備えることを特徴とする請求項86に記載の方法。
- サポートされる言語、ハードウェア、およびその他の情報に関するファイルのシグネチャを含む暗号化された保護プロファイルを前記中央階層型データベースに記録することをさらに備えることを特徴とする請求項87に記載の方法。
- 前記保護ダイナミックリンクライブラリによって使用される情報を含むシステムファイルをインストールすることをさらに備えることを特徴とする請求項88に記載の方法。
- ソフトウェアセットアップを保護するためのコンピュータで実施される方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
前記方法は、
市販のソフトウェアパッケージのクラスに属するものとしてソフトウェアを識別するための製品識別子を生成することと、
前記ソフトウェアが、前記製品識別子に基づいて、ソフトウェア改ざんからの保護が利用可能である市販のソフトウェアパッケージのクラスに属する場合、ソフトウェア改ざんを抑止するための保護ダイナミックリンクライブラリのインストールを容易にすることと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記方法は、保護情報ファイルからの情報を使用して、ソフトウェア改ざんを抑止するための前記保護ダイナミックリンクライブラリを生成するセットアップソフトウェアによって、インストールダイナミックリンクライブラリを実行することをさらに備えることを特徴とする請求項90に記載のコンピュータ読取り可能な媒体。
- 前記方法は、実行ソフトウェアが市販のソフトウェアパッケージのクラスに属するか否かの検証を容易にするために、前記製品識別子に基づいて、アクティベーションキーを中央階層型データベースに記録することをさらに備えることを特徴とする請求項91に記載のコンピュータ読取り可能な媒体。
- 前記方法は、サポートされる言語、ハードウェア、およびその他の情報に関するファイルのシグネチャを含む暗号化された保護プロファイルを前記中央階層型データベースに記録することをさらに備えることを特徴とする請求項92に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記保護ダイナミックリンクライブラリによって使用される情報を含むシステムファイルをインストールすることをさらに備えることを特徴とする請求項93に記載のコンピュータ読取り可能な媒体。
- ソフトウェアセットアップを保護するためのシステムであって、
市販のソフトウェアパッケージのクラスに属するものとしてソフトウェアを識別するための製品識別子を生成する手段と、
前記ソフトウェアが、前記製品識別子に基づいて、ソフトウェア改ざんからの保護が利用可能である市販のソフトウェアパッケージのクラスに属する場合、ソフトウェア改ざんを抑止するための保護ダイナミックリンクライブラリのインストールを容易にする手段と
を備えたことを特徴とするシステム。 - 保護情報ファイルからの情報を使用して、ソフトウェア改ざんを抑止するための前記保護ダイナミックリンクライブラリを生成するセットアップソフトウェアによって、インストールダイナミックリンクライブラリを実行する手段をさらに備えたことを特徴とする請求項95に記載のシステム。
- 実行ソフトウェアが市販のソフトウェアパッケージのクラスに属するか否かの検証を容易にするために、前記製品識別子に基づいて、アクティベーションキーを中央階層型データベースに記録する手段をさらに備えたことを特徴とする請求項96に記載のシステム。
- サポートされる言語、ハードウェア、およびその他の情報に関するファイルのシグネチャを含む暗号化された保護プロファイルを前記中央階層型データベースに記録する手段をさらに備えたことを特徴とする請求項97に記載のシステム。
- 前記保護ダイナミックリンクライブラリによって使用される情報を含むシステムファイルをインストールする手段をさらに備えたことを特徴とする請求項98に記載のシステム。
- ソフトウェア改ざんから保護するための、コンピューティングシステムによって使用されるコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
難読化されたコンピュータ実行可能命令を含む保護ダイナミックリンクライブラリであって、前記難読化されたコンピュータ実行可能命令は、改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止する、保護ダイナミックリンクライブラリ
を備えたことを特徴とするコンピュータ読取り可能な媒体。 - コンパイルしてリンクすることができるソースコードであって、改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止する難読化されていないコンピュータ実行可能命令を含む保護ダイナミックリンクライブラリを生成するソースコードをさらに備えたことを特徴とする請求項100に記載のコンピュータ読取り可能な媒体。
- 難読化されていないコンピュータ実行可能命令を含む前記保護ダイナミックリンクライブラリにおけるクラス、メソッド、およびフィールドの名前を含む難読化制御ファイルをさらに備え、前記難読化ファイルを使用して、難読化されていないコンピュータ実行可能命令を含む前記保護ダイナミックリンクライブラリにおけるクラス、メソッド、およびフィールドの前記名前が難読化されて、難読化されたコンピュータ実行可能命令を含む前記保護ダイナミックリンクライブラリが生成されることを特徴とする請求項101に記載のコンピュータ読取り可能な媒体。
- 前記保護ダイナミックリンクライブラリのチェックサムを含むカタログファイルをさらに備えたことを特徴とする請求項102に記載のコンピュータ読取り可能な媒体。
- 前記カタログファイルを含むデジタル署名されたカタログファイルと、前記デジタル署名されたカタログファイルの、非公開の秘密キーを使用して暗号化されたチェックサムとをさらに備えたことを特徴とする請求項103に記載のコンピュータ読取り可能な媒体。
- ソフトウェア改ざんを抑止するための、コンピューティングシステムによって使用されるコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体を作成するためのコンピュータで実施される方法であって、
改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止する難読化された保護ダイナミックリンクライブラリを形成することであって、前記難読化された保護ダイナミックリンクライブラリでは、クラス、メソッド、フィールド、および制御フローの名前が難読化されている、難読化された保護ダイナミックリンクライブラリを形成することと、
前記難読化された保護ダイナミックリンクライブラリのチェックサムを含むデジタル署名されたカタログファイルを生成することと
を備えることを特徴とする方法。 - 改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止するコンピュータ実行可能命令を含むソースコードを生成することをさらに備え、前記ソースコードを生成する動作は、難読化された保護ダイナミックリンクライブラリを前記形成する動作の前に行われることを特徴とする請求項105に記載の方法。
- 改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止するコンピュータ実行可能命令を含む保護ダイナミックリンクライブラリを形成するために、前記ソースコードをコンパイルしてリンクすることをさらに備えることを特徴とする請求項106に記載の方法。
- 前記難読化された保護ダイナミックリンクライブラリの前記チェックサムを計算することと、
前記難読化された保護ダイナミックリンクライブラリの前記チェックサムを記憶するためのカタログファイルを生成することと
をさらに備えることを特徴とする請求項107に記載の方法。 - 前記カタログファイルのチェックサムを計算することと、
非公開の秘密キーを使用して前記カタログファイルの前記チェックサムを暗号化することと、
前記カタログファイルにデジタル署名して、デジタル署名されたカタログファイルを生成することと
をさらに備えることを特徴とする請求項108に記載の方法。 - ソフトウェア改ざんを抑止する方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
前記方法は、
改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止する難読化された保護ダイナミックリンクライブラリを形成することであって、前記難読化された保護ダイナミックリンクライブラリでは、クラス、メソッド、フィールド、および制御フローの名前が難読化されている、難読化された保護ダイナミックリンクライブラリを形成することと、
前記難読化された保護ダイナミックリンクライブラリのチェックサムを含むデジタル署名されたカタログファイルを生成することと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止するコンピュータ実行可能命令を含むソースコードを生成し、前記ソースコードを生成する動作は、難読化された保護ダイナミックリンクライブラリを前記形成する動作の前に行われることを特徴とする請求項110に記載のコンピュータ読取り可能な媒体。
- 改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止するコンピュータ実行可能命令を含む保護ダイナミックリンクライブラリを形成するために、前記ソースコードをコンパイルしてリンクすることを特徴とする請求項111に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記難読化された保護ダイナミックリンクライブラリの前記チェックサムを計算することと、前記難読化された保護ダイナミックリンクライブラリの前記チェックサムを記憶するためのカタログファイルを生成することとをさらに備えることを特徴とする請求項112に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記カタログファイルのチェックサムを計算することと、非公開の秘密キーを使用して前記カタログファイルの前記チェックサムを暗号化することと、前記カタログファイルにデジタル署名して、デジタル署名されたカタログファイルを生成することとをさらに備えることを特徴とする請求項113に記載のコンピュータ読取り可能な媒体。
- ソフトウェア改ざんを抑止するための、コンピューティングシステムによって使用されるコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体を作成するためのシステムであって、
改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止する難読化された保護ダイナミックリンクライブラリを形成する手段であって、前記難読化された保護ダイナミックリンクライブラリでは、クラス、メソッド、フィールド、および制御フローの名前が難読化されている、難読化された保護ダイナミックリンクライブラリを形成する手段と、
前記難読化された保護ダイナミックリンクライブラリのチェックサムを含むデジタル署名されたカタログファイルを生成する手段と
を備えたことを特徴とするシステム。 - 改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止するコンピュータ実行可能命令を含むソースコードを生成する手段をさらに備え、前記ソースコードを生成する動作は、難読化された保護ダイナミックリンクライブラリを前記形成する動作の前に行われることを特徴とする請求項115に記載のシステム。
- 改ざんがあるか否かについてデータベースを監視し、ファイルのセットのオリジナル性を検証し、許可されていないサービスの実行を防止するコンピュータ実行可能命令を含む保護ダイナミックリンクライブラリを形成するために、前記ソースコードをコンパイルしてリンクする手段をさらに備えたことを特徴とする請求項116に記載のシステム。
- 前記難読化された保護ダイナミックリンクライブラリの前記チェックサムを計算する手段と、前記難読化された保護ダイナミックリンクライブラリの前記チェックサムを記憶するためのカタログファイルを生成する手段とをさらに備えたことを特徴とする請求項117に記載のシステム。
- 前記カタログファイルのチェックサムを計算する手段と、非公開の秘密キーを使用して前記カタログファイルの前記チェックサムを暗号化する手段と、前記カタログファイルにデジタル署名して、デジタル署名されたカタログファイルを生成する手段とをさらに備えたことを特徴とする請求項118に記載のシステム。
- ソフトウェア改ざんを抑止する方法であって、
難読化された保護ダイナミックリンクライブラリをコンピューティングマシンにロードする前に、前記難読化された保護ダイナミックリンクライブラリの第1のチェックサムを計算することと、
ソフトウェア改ざんを抑止するためのセキュリティエラー対策を講じるべきか否かを判定するために、前記難読化された保護ダイナミックリンクライブラリのソフトウェアイメージのオリジナル性を検証することと
を備えることを特徴とする方法。 - システムファイルに含まれるカタログファイルのリストを得ることと、前記カタログファイルのリスト内のカタログファイルに含まれる第2のチェックサムを検索することとをさらに備えることを特徴とする請求項120に記載の方法。
- 前記検証する動作は、前記第1のチェックサムと前記第2のチェックサムとが一致しない場合、前記ソフトウェアイメージが、オリジナルの難読化された保護ダイナミックリンクライブラリではないと判定することを特徴とする請求項121に記載の方法。
- 前記難読化された保護ダイナミックリンクライブラリと、前記第2のチェックサムを含む前記カタログファイルとが信用できるか否かを判定するために、信用チェック用(trust-checking)アプリケーションプログラミングインターフェースのセットを呼び出すことをさらに備え、前記信用チェック用アプリケーションプログラミングインターフェースのセットは、状態データを返すことを特徴とする請求項122に記載の方法。
- 前記信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出し、前記状態データを使用して信用できるプロバイダ情報(trust provider information)を検索することをさらに備えることを特徴とする請求項123に記載の方法。
- 前記信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出し、前記信用できるプロバイダ情報を使用してベースサイナ(base signer)を検索することをさらに備えることを特徴とする請求項124に記載の方法。
- 前記信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出し、前記ベースサイナのコンテキストを使用して証明書チェーン(certificate chain)内の最後の要素を妥当性検査することをさらに備えることを特徴とする請求項125に記載の方法。
- 前記検証する動作は、前記最後の要素が前記ソフトウェアイメージのメーカからの正しい公開キーを含む場合、前記ソフトウェアイメージがオリジナルであるとの結論を下すことを特徴とする請求項126に記載の方法。
- ソフトウェア改ざんを抑止する方法を実行するためのコンピュータ実行可能命令を有するコンピュータ読取り可能な媒体であって、
前記方法は、
難読化された保護ダイナミックリンクライブラリをコンピューティングマシンにロードする前に、前記難読化された保護ダイナミックリンクライブラリの第1のチェックサムを計算することと、
ソフトウェア改ざんを抑止するためのセキュリティエラー対策を講じるべきか否かを判定するために、前記難読化された保護ダイナミックリンクライブラリのソフトウェアイメージのオリジナル性を検証することと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記方法は、システムファイルに含まれるカタログファイルのリストを得ることと、前記カタログファイルのリスト内のカタログファイルに含まれる第2のチェックサムを検索することとをさらに備えることを特徴とする請求項128に記載のコンピュータ読取り可能な媒体。
- 前記検証する動作は、前記第1のチェックサムと前記第2のチェックサムとが一致しない場合、前記ソフトウェアイメージが、オリジナルの難読化された保護ダイナミックリンクライブラリではないと判定することを特徴とする請求項129に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記難読化された保護ダイナミックリンクライブラリと、前記第2のチェックサムを含む前記カタログファイルとが信用できるか否かを判定するために、信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出すことをさらに備え、前記信用チェック用アプリケーションプログラミングインターフェースのセットは、状態データを返すことを特徴とする請求項130に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出し、前記状態データを使用して信用できるプロバイダ情報を検索することをさらに備えることを特徴とする請求項131に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出し、前記信用できるプロバイダ情報を使用してベースサイナを検索することをさらに備えることを特徴とする請求項132に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出し、前記ベースサイナのコンテキストを使用して証明書チェーン内の最後の要素を妥当性検査することをさらに備えることを特徴とする請求項133に記載のコンピュータ読取り可能な媒体。
- 前記検証する動作は、前記最後の要素が前記ソフトウェアイメージのメーカからの正しい公開キーを含む場合、前記ソフトウェアイメージがオリジナルであるとの結論を下すことを特徴とする請求項134に記載のコンピュータ読取り可能な媒体。
- ソフトウェア改ざんを抑止するためのシステムであって、
難読化された保護ダイナミックリンクライブラリをコンピューティングマシンにロードする前に、前記難読化された保護ダイナミックリンクライブラリの第1のチェックサムを計算する手段と、
ソフトウェア改ざんを抑止するためのセキュリティエラー対策を講じるべきか否かを判定するために、前記難読化された保護ダイナミックリンクライブラリのソフトウェアイメージのオリジナル性を検証する手段と
を備えたことを特徴とするシステム。 - システムファイルに含まれるカタログファイルのリストを得る手段と、前記カタログファイルのリスト内のカタログファイルに含まれる第2のチェックサムを検索する手段とをさらに備えたことを特徴とする請求項136に記載のシステム。
- 前記検証する手段は、前記第1のチェックサムと前記第2のチェックサムとが一致しない場合、前記ソフトウェアイメージが、オリジナルの難読化された保護ダイナミックリンクライブラリではないと判定することを特徴とする請求項137に記載のシステム。
- 前記難読化された保護ダイナミックリンクライブラリと、前記第2のチェックサムを含む前記カタログファイルとが信用できるか否かを判定するために、信用チェック用アプリケーションプログラミングインターフェースのセットを呼び出す手段をさらに備え、前記信用チェック用アプリケーションプログラミングインターフェースのセットは、状態データを返すことを特徴とする請求項138に記載のシステム。
- ソフトウェアに対してサポート可能なマシンのクラスにコンピューティングマシンが属するか否かを判定するためのコンピュータで実施される方法であって、
前記コンピューティングマシンの中央処理装置のIDを明らかにする、前記中央処理装置に対する命令セットが存在するかを検証することと、
前記中央処理装置が自己識別をサポートするアーキテクチャを有する場合、難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードすることと
を備えることを特徴とする方法。 - 前記難読化された保護ダイナミックリンクライブラリと通信して、除外される中央処理装置クラスに関連する暗号化された保護プロファイルにアクセスすることをさらに備えることを特徴とする請求項140に記載の方法。
- 暗号化された保護プロファイルから、除外されるコンピューティングマシンクラスのリストを抽出することをさらに備えることを特徴とする請求項141に記載の方法。
- 前記中央処理装置に関する情報を前記コンピューティングマシンに明らかにさせることをさらに備え、前記情報は、ベンダIDと、タイプと、ファミリと、モデル番号と、ブランドIDと、特徴セット(feature set)とからなるグループから選択されることを特徴とする請求項142に記載の方法。
- 前記ベンダIDが、前記除外されるコンピューティングマシンクラスのリストに存在しない場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項143に記載の方法。
- 前記タイプ、前記ファミリ、および前記モデル番号が、前記除外されるコンピューティングマシンクラスのリストに存在する場合、前記コンピューティングマシンに対する利用可能な保護がないことを伝えるエラーメッセージを発して、前記コンピューティングマシンのシャットダウンを開始することをさらに備えることを特徴とする請求項144に記載の方法。
- 前記ブランドIDおよび前記特徴セットが、前記除外されるコンピューティングマシンクラスのリストに存在する場合、前記コンピューティングマシンに対する利用可能な保護がないことを伝えるエラーメッセージを発して、前記コンピューティングマシンのシャットダウンを開始することをさらに備えることを特徴とする請求項145に記載の方法。
- 前記中央処理装置のIDを判定する拡張命令が存在しない場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項146に記載の方法。
- 前記中央処理装置の名前を明らかにする拡張命令の実行により、前記名前が、前記除外されるコンピューティングマシンクラスのリストに存在しないことが示された場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項147に記載の方法。
- 前記中央処理装置のキャッシュサイズを明らかにする拡張命令の実行により、前記キャッシュサイズが、前記除外されるコンピューティングマシンクラスのリストに存在しないことが示された場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項148に記載の方法。
- ソフトウェアに対してサポート可能なマシンのクラスにコンピューティングマシンが属するか否かを判定する方法を実行するためのコンピュータ実行可能命令を記憶したコンピュータ読取り可能な媒体であって、
前記方法は、
前記コンピューティングマシンの中央処理装置のIDを明らかにする、前記中央処理装置に対する命令セットが存在するかを検証することと、
前記中央処理装置が自己識別をサポートするアーキテクチャを有する場合、難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードすることと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記方法は、前記難読化された保護ダイナミックリンクライブラリと通信して、除外される中央処理装置クラスに関連する暗号化された保護プロファイルにアクセスすることをさらに備えることを特徴とする請求項150に記載のコンピュータ読取り可能な媒体。
- 前記方法は、暗号化された保護プロファイルから、除外されるコンピューティングマシンクラスのリストを抽出することをさらに備えることを特徴とする請求項151に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記中央処理装置に関する情報を前記コンピューティングマシンに明らかにさせることをさらに備え、前記情報は、ベンダIDと、タイプと、ファミリと、モデル番号と、ブランドIDと、特徴セットとからなるグループから選択されることを特徴とする請求項152に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記ベンダIDが、前記除外されるコンピューティングマシンクラスのリストに存在しない場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項153に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記タイプ、前記ファミリ、および前記モデル番号が、前記除外されるコンピューティングマシンクラスのリストに存在する場合、前記コンピューティングマシンに対する利用可能な保護がないことを伝えるエラーメッセージを発して、前記コンピューティングマシンのシャットダウンを開始することをさらに備えることを特徴とする請求項154に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記ブランドIDおよび前記特徴セットが、前記除外されるコンピューティングマシンクラスのリストに存在する場合、前記コンピューティングマシンに対する利用可能な保護がないことを伝えるエラーメッセージを発して、前記コンピューティングマシンのシャットダウンを開始することをさらに備えることを特徴とする請求項155に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記中央処理装置のIDを判定する拡張命令が存在しない場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項156に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記中央処理装置の名前を明らかにする拡張命令の実行により、前記名前が、前記除外されるコンピューティングマシンクラスのリストに存在しないことが示された場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項157に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記中央処理装置のキャッシュサイズを明らかにする拡張命令の実行により、前記キャッシュサイズが、前記除外されるコンピューティングマシンクラスのリストに存在しないことが示された場合、前記難読化された保護ダイナミックリンクライブラリを前記コンピューティングマシンにロードする動作を実行することをさらに備えることを特徴とする請求項158に記載のコンピュータ読取り可能な媒体。
- ソフトウェア改ざんを抑止する方法であって、
コンピューティングマシンの起動時に、ログオンモジュールによって、難読化されたダイナミックリンクライブラリの保護関数を呼び出して、システムに関連付けられた中央階層型データベースのキーおよび値を保護する第1のスレッドを生成することと、
ユーザが前記コンピューティングマシンにログオンしたときに、前記ログオンモジュールによって、前記難読化されたダイナミックリンクライブラリの前記保護関数を呼び出して、前記ユーザに関連付けられた前記中央階層型データベースのキーおよび値を保護する第2のスレッドを生成することと
を備えることを特徴とする方法。 - 改ざんから保護すべき前記中央階層型データベースの各キーについての変更通知を行うことをさらに備えることを特徴とする請求項160に記載の方法。
- キーの変更についての前記変更通知を受け取り、ソフトウェア改ざんを抑止するために、前記キーおよびキーの値の少なくとも一方を修復することをさらに備えることを特徴とする請求項161に記載の方法。
- 前記システムに関連付けられた前記中央階層型データベースの前記キーおよび前記値を保護する前記第1のスレッドの実行の継続性をチェックするための第1のタイマに、前記第1のスレッドのハンドルを提供することをさらに備えることを特徴とする請求項162に記載の方法。
- 予め設定された期間が過ぎた後、前記第1のスレッドが終了または一時停止した場合、前記第1のタイマに関連付けられたソフトウェアが、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項163に記載の方法。
- 前記第1のスレッドにより、前記難読化された保護ダイナミックリンクライブラリと通信して、前記中央階層型データベース内のシステムキーおよび値に関連する暗号化された保護プロファイルにアクセスすることをさらに備えることを特徴とする請求項164に記載の方法。
- 前記ユーザに関連付けられた前記中央階層型データベースの前記キーおよび前記値を保護する前記第2のスレッドの実行の継続性をチェックするための第2のタイマに、前記第2のスレッドのハンドルを提供することをさらに備えることを特徴とする請求項162に記載の方法。
- 予め設定された期間が過ぎた後、前記第2のスレッドが終了または一時停止した場合、前記第2のタイマに関連付けられたソフトウェアが、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項166に記載の方法。
- 前記第2のスレッドにより、前記難読化された保護ダイナミックリンクライブラリと通信して、前記中央階層型データベース内のユーザレジストリキーおよび値に関連する暗号化された保護プロファイルにアクセスすることをさらに備えることを特徴とする請求項167に記載の方法。
- ソフトウェア改ざんを抑止する方法を実行するためのコンピュータ実行可能命令を有するコンピュータ読取り可能な媒体であって、
前記方法は、
コンピューティングマシンの起動時に、ログオンモジュールによって、難読化されたダイナミックリンクライブラリの保護関数を呼び出して、システムに関連付けられた中央階層型データベースのキーおよび値を保護する第1のスレッドを生成することと、
ユーザが前記コンピューティングマシンにログオンしたときに、前記ログオンモジュールによって、前記難読化されたダイナミックリンクライブラリの前記保護関数を呼び出して、前記ユーザに関連付けられた前記中央階層型データベースのキーおよび値を保護する第2のスレッドを生成することと
を備えることを特徴とするコンピュータ読取り可能な媒体。 - 前記方法は、改ざんから保護すべき前記中央階層型データベースの各キーについての変更通知を行うことをさらに備えることを特徴とする請求項169に記載のコンピュータ読取り可能な媒体。
- 前記方法は、キーの変更についての前記変更通知を受け取り、ソフトウェア改ざんを抑止するために、前記キーおよびキーの値の少なくとも一方を修復することをさらに備えることを特徴とする請求項170に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記システムに関連付けられた前記中央階層型データベースの前記キーおよび前記値を保護する前記第1のスレッドの実行の継続性をチェックするための第1のタイマに、前記第1のスレッドのハンドルを提供することをさらに備えることを特徴とする請求項171に記載のコンピュータ読取り可能な媒体。
- 前記方法は、予め設定された期間が過ぎた後、前記第1のスレッドが終了または一時停止した場合、前記第1のタイマに関連付けられたソフトウェアが、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項172に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記第1のスレッドにより、前記難読化された保護ダイナミックリンクライブラリと通信して、前記中央階層型データベース内のシステムキーおよび値に関連する暗号化された保護プロファイルにアクセスすることをさらに備えることを特徴とする請求項173に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記ユーザに関連付けられた前記中央階層型データベースの前記キーおよび前記値を保護する前記第2のスレッドの実行の継続性をチェックするための第2のタイマに、前記第2のスレッドのハンドルを提供することをさらに備えることを特徴とする請求項171に記載のコンピュータ読取り可能な媒体。
- 前記方法は、予め設定された期間が過ぎた後、前記第2のスレッドが終了または一時停止した場合、前記第2のタイマに関連付けられたソフトウェアが、システムのシャットダウンを開始することをさらに備えることを特徴とする請求項175に記載のコンピュータ読取り可能な媒体。
- 前記方法は、前記第2のスレッドにより、前記難読化された保護ダイナミックリンクライブラリと通信して、前記中央階層型データベース内のユーザレジストリキーおよび値に関連する暗号化された保護プロファイルにアクセスすることをさらに備えることを特徴とする請求項176に記載のコンピュータ読取り可能な媒体。
- ソフトウェア改ざんを抑止するためのシステムであって、
コンピューティングマシンの起動時に、ログオンモジュールによって、難読化されたダイナミックリンクライブラリの保護関数を呼び出して、システムに関連付けられた中央階層型データベースのキーおよび値を保護する第1のスレッドを生成する手段と、
ユーザが前記コンピューティングマシンにログオンしたときに、前記ログオンモジュールによって、前記難読化されたダイナミックリンクライブラリの前記保護関数を呼び出して、前記ユーザに関連付けられた前記中央階層型データベースのキーおよび値を保護する第2のスレッドを生成する手段と
を備えたことを特徴とするシステム。 - 改ざんから保護すべき前記中央階層型データベースの各キーについての変更通知を行い、キーの変更についての前記変更通知を受け取り、ソフトウェア改ざんを抑止するために、前記キーおよびキーの値の少なくとも一方を修復することをさらに備えたことを特徴とする請求項178に記載のシステム。
Applications Claiming Priority (21)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US57893704P | 2004-06-12 | 2004-06-12 | |
US60/578,937 | 2004-06-12 | ||
US11/061,790 | 2005-02-17 | ||
US11/061,399 | 2005-02-17 | ||
US11/061,791 US7584509B2 (en) | 2004-06-12 | 2005-02-17 | Inhibiting software tampering |
US11/061,411 US7631360B2 (en) | 2004-06-12 | 2005-02-17 | Hardware protection |
US11/062,238 | 2005-02-17 | ||
US11/061,484 | 2005-02-17 | ||
US11/062,238 US7526805B2 (en) | 2004-06-12 | 2005-02-17 | Thread protection |
US11/061,280 | 2005-02-17 | ||
US11/061,792 US7577997B2 (en) | 2004-06-12 | 2005-02-17 | Image verification |
US11/061,484 US7640592B2 (en) | 2004-06-12 | 2005-02-17 | Installation setup |
US11/061,791 | 2005-02-17 | ||
US11/061,792 | 2005-02-17 | ||
US11/062,237 | 2005-02-17 | ||
US11/061,790 US7559091B2 (en) | 2004-06-12 | 2005-02-17 | Software obfuscation |
US11/062,237 US7552337B2 (en) | 2004-06-12 | 2005-02-17 | Service protection |
US11/061,280 US7891008B2 (en) | 2004-06-12 | 2005-02-17 | Profile protection |
US11/061,411 | 2005-02-17 | ||
US11/061,399 US7721340B2 (en) | 2004-06-12 | 2005-02-17 | Registry protection |
PCT/US2005/020638 WO2005125081A2 (en) | 2004-06-12 | 2005-06-10 | Securing software |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008503014A true JP2008503014A (ja) | 2008-01-31 |
JP2008503014A5 JP2008503014A5 (ja) | 2008-07-31 |
JP4729575B2 JP4729575B2 (ja) | 2011-07-20 |
Family
ID=35510448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007527785A Expired - Fee Related JP4729575B2 (ja) | 2004-06-12 | 2005-06-10 | ソフトウェアのセキュリティ確保 |
Country Status (5)
Country | Link |
---|---|
US (8) | US7584509B2 (ja) |
EP (1) | EP1757008B1 (ja) |
JP (1) | JP4729575B2 (ja) |
KR (3) | KR101187554B1 (ja) |
WO (1) | WO2005125081A2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009129451A (ja) * | 2007-11-20 | 2009-06-11 | Korea Electronics Telecommun | 悪性コードによって挿入されたダイナミックリンクライブラリ検出装置及び方法 |
JP2013537760A (ja) * | 2010-08-05 | 2013-10-03 | ジェムアルト エスアー | セキュリティ部品及び携帯通信装置において複数の加入者プロファイルを安全に使用するシステムと方法 |
JP2016535354A (ja) * | 2013-08-22 | 2016-11-10 | インカ・エントワークス・インコーポレイテッドInka Entworks, Inc. | 共通中間言語ベースのプログラムのためのセキュリティ提供方法 |
JP2016540282A (ja) * | 2013-10-10 | 2016-12-22 | インカ・エントワークス・インコーポレイテッドInka Entworks, Inc. | 動的ライブラリを保護する方法及び装置 |
JP2020060958A (ja) * | 2018-10-10 | 2020-04-16 | 株式会社Nttドコモ | 難読化判定装置 |
Families Citing this family (109)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2778053A (en) * | 1954-09-13 | 1957-01-22 | Duro Metal Products Co | Separable hinged mounting for motors or the like |
AU9291001A (en) * | 2000-09-22 | 2002-04-02 | Edc Systems Inc | Systems and methods for preventing unauthorized use of digital content |
US8103592B2 (en) * | 2003-10-08 | 2012-01-24 | Microsoft Corporation | First computer process and second computer process proxy-executing code on behalf of first process |
US8271803B2 (en) * | 2003-10-08 | 2012-09-18 | Microsoft Corporation | Anti-debugging protection of binaries with proxy code execution |
US7788496B2 (en) | 2003-10-08 | 2010-08-31 | Microsoft Corporation | First computer process and second computer process proxy-executing code on behalf thereof |
US7979911B2 (en) | 2003-10-08 | 2011-07-12 | Microsoft Corporation | First computer process and second computer process proxy-executing code from third computer process on behalf of first process |
US7860239B2 (en) * | 2004-07-07 | 2010-12-28 | International Business Machines Corporation | Method and apparatus for metering usage of software products using multiple signatures |
US7841009B1 (en) * | 2004-07-09 | 2010-11-23 | Angel Secure Networks | System and method for defending against reverse engineering of software, firmware and hardware |
US20060021066A1 (en) * | 2004-07-26 | 2006-01-26 | Ray Clayton | Data encryption system and method |
US20060259900A1 (en) * | 2005-05-12 | 2006-11-16 | Xerox Corporation | Method for creating unique identification for copies of executable code and management thereof |
US20060259903A1 (en) * | 2005-05-12 | 2006-11-16 | Xerox Corporation | Method for creating unique identification for copies of executable code and management thereof |
GB0516471D0 (en) * | 2005-08-10 | 2005-09-14 | Symbian Software Ltd | Protected software identifiers for improving security in a computing device |
US8214296B2 (en) * | 2006-02-14 | 2012-07-03 | Microsoft Corporation | Disaggregated secure execution environment |
US20070192824A1 (en) * | 2006-02-14 | 2007-08-16 | Microsoft Corporation | Computer hosting multiple secure execution environments |
US8020001B2 (en) * | 2006-02-23 | 2011-09-13 | Qualcomm Incorporated | Trusted code groups |
US8010947B2 (en) | 2006-05-23 | 2011-08-30 | International Business Machines Corporation | Discovering multi-component software products based on weighted scores |
US7814544B1 (en) * | 2006-06-22 | 2010-10-12 | Symantec Corporation | API-profile guided unpacking |
US7805289B2 (en) | 2006-07-10 | 2010-09-28 | Microsoft Corporation | Aligning hierarchal and sequential document trees to identify parallel data |
US8700915B2 (en) * | 2006-07-12 | 2014-04-15 | Irdeto Corporate B.V. | Method and system for verifying authenticity of at least part of an execution environment for executing a computer module |
US8392996B2 (en) * | 2006-08-08 | 2013-03-05 | Symantec Corporation | Malicious software detection |
US20080099141A1 (en) * | 2006-10-26 | 2008-05-01 | Ashland Inc. | Method of producing flexible laminates |
US8584109B2 (en) | 2006-10-27 | 2013-11-12 | Microsoft Corporation | Virtualization for diversified tamper resistance |
US8356356B2 (en) * | 2007-01-30 | 2013-01-15 | Microsoft Corporation | Anti-debugger comprising spatially and temporally separate detection and response portions |
US8286138B2 (en) * | 2007-01-30 | 2012-10-09 | Microsoft Corporation | Multi-threaded detection of a game software debugger |
JP4903071B2 (ja) * | 2007-03-15 | 2012-03-21 | 株式会社リコー | 情報処理装置、ソフトウェア更新方法及び画像処理装置 |
US20080229115A1 (en) * | 2007-03-16 | 2008-09-18 | Microsoft Corporation | Provision of functionality via obfuscated software |
US20080263366A1 (en) * | 2007-04-19 | 2008-10-23 | Microsoft Corporation | Self-verifying software to prevent reverse engineering and piracy |
US8336107B2 (en) * | 2007-04-27 | 2012-12-18 | Angel Secure Networks, Inc. | System and methods for defending against root |
US8176473B2 (en) * | 2007-05-14 | 2012-05-08 | Microsoft Corporation | Transformations for software obfuscation and individualization |
US9545258B2 (en) | 2007-05-17 | 2017-01-17 | Boston Scientific Scimed, Inc. | Tissue aperture securing and sealing apparatuses and related methods of use |
US10552701B2 (en) * | 2008-02-01 | 2020-02-04 | Oath Inc. | System and method for detecting the source of media content with application to business rules |
US8856500B2 (en) | 2008-02-06 | 2014-10-07 | Nxp B.V. | Obfuscating program by scattering sequential instructions into memory regions such that jumps occur with steps of both signs in equal frequency |
US8621187B2 (en) | 2008-02-11 | 2013-12-31 | Nxp, B.V. | Method of program obfuscation and processing device for executing obfuscated programs |
US8208900B2 (en) * | 2008-03-04 | 2012-06-26 | Apple Inc. | Secure device configuration profiles |
US8176337B2 (en) * | 2008-03-12 | 2012-05-08 | Apple Inc. | Computer object code obfuscation using boot installation |
CN101983379B (zh) * | 2008-04-02 | 2014-04-02 | 惠普开发有限公司 | 盘驱动器数据加密 |
US8752185B2 (en) * | 2008-05-01 | 2014-06-10 | Yahoo! Inc. | Method for media fingerprinting |
EP2234031A1 (en) * | 2009-03-24 | 2010-09-29 | SafeNet, Inc. | Obfuscation |
US8474052B2 (en) * | 2009-12-09 | 2013-06-25 | Microsoft Corporation | User-administered license state verification |
US20110225649A1 (en) * | 2010-03-11 | 2011-09-15 | International Business Machines Corporation | Protecting Computer Systems From Malicious Software |
JP2013523043A (ja) | 2010-03-22 | 2013-06-13 | エルアールディシー システムズ、エルエルシー | ソースデータセットの完全性を識別及び保護する方法 |
JP5380604B2 (ja) | 2010-03-26 | 2014-01-08 | 株式会社東芝 | 情報記録装置 |
US11297045B2 (en) | 2010-03-26 | 2022-04-05 | Kioxia Corporation | Information recording apparatus with shadow boot program for authentication with a server |
JP5585257B2 (ja) * | 2010-07-16 | 2014-09-10 | 株式会社リコー | 画像形成装置、機器システム、プログラム管理方法、プログラム |
TWI420339B (zh) | 2010-11-10 | 2013-12-21 | Ind Tech Res Inst | 軟體授權系統及方法 |
US8499173B2 (en) * | 2010-11-23 | 2013-07-30 | Lockheed Martin Corporation | Apparatus and method for protection of circuit boards from tampering |
US8683452B1 (en) * | 2010-12-21 | 2014-03-25 | Emc Corporation | Dynamically obfuscated javascript |
JP5932837B2 (ja) | 2011-01-19 | 2016-06-08 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | コードを更新および認証するための方法およびシステム、プログラムの完全性を試験する方法およびシステム |
US9058482B2 (en) | 2011-03-01 | 2015-06-16 | Angel Secure Networks, Inc. | Controlling user access to electronic resources without password |
US8930717B2 (en) | 2011-03-01 | 2015-01-06 | Angel Secure Networks, Inc. | Secure processing module and method for making the same |
JP2014515858A (ja) * | 2011-04-29 | 2014-07-03 | 北京中天安泰信息科技有限公司 | 実行中の命令を再結合する方法および装置 |
US8516273B2 (en) * | 2011-05-31 | 2013-08-20 | Asobe Systems Incorporated | Porting digital rights management service to multiple computing platforms |
US8595510B2 (en) | 2011-06-22 | 2013-11-26 | Media Patents, S.L. | Methods, apparatus and systems to improve security in computer systems |
US8181035B1 (en) | 2011-06-22 | 2012-05-15 | Media Patents, S.L. | Methods, apparatus and systems to improve security in computer systems |
US8261085B1 (en) * | 2011-06-22 | 2012-09-04 | Media Patents, S.L. | Methods, apparatus and systems to improve security in computer systems |
US9111072B1 (en) * | 2011-08-23 | 2015-08-18 | Tectonic Labs, LLC | Anti-reverse engineering unified process |
US9519648B2 (en) * | 2011-09-27 | 2016-12-13 | International Business Machines Corporation | Software detection |
US9280377B2 (en) | 2013-03-29 | 2016-03-08 | Citrix Systems, Inc. | Application with multiple operation modes |
US20140032733A1 (en) | 2011-10-11 | 2014-01-30 | Citrix Systems, Inc. | Policy-Based Application Management |
US9215225B2 (en) | 2013-03-29 | 2015-12-15 | Citrix Systems, Inc. | Mobile device locking with context |
US9286471B2 (en) | 2011-10-11 | 2016-03-15 | Citrix Systems, Inc. | Rules based detection and correction of problems on mobile devices of enterprise users |
US8640242B2 (en) * | 2011-12-01 | 2014-01-28 | Mcafee, Inc. | Preventing and detecting print-provider startup malware |
US9052824B2 (en) * | 2012-01-26 | 2015-06-09 | Upthere, Inc. | Content addressable stores based on sibling groups |
US9608881B2 (en) * | 2012-04-13 | 2017-03-28 | International Business Machines Corporation | Service compliance enforcement using user activity monitoring and work request verification |
US8997230B1 (en) * | 2012-06-15 | 2015-03-31 | Square, Inc. | Hierarchical data security measures for a mobile device |
CN102799815B (zh) * | 2012-06-29 | 2015-07-29 | 安科智慧城市技术(中国)有限公司 | 一种安全加载程序库的方法和装置 |
CN104408333B (zh) * | 2012-09-24 | 2017-06-13 | 江苏理工学院 | 一种基于片上系统多核融合的软件保护装置 |
US8613070B1 (en) | 2012-10-12 | 2013-12-17 | Citrix Systems, Inc. | Single sign-on access in an orchestration framework for connected devices |
US9774658B2 (en) | 2012-10-12 | 2017-09-26 | Citrix Systems, Inc. | Orchestration framework for connected devices |
US9516022B2 (en) | 2012-10-14 | 2016-12-06 | Getgo, Inc. | Automated meeting room |
US8910239B2 (en) | 2012-10-15 | 2014-12-09 | Citrix Systems, Inc. | Providing virtualized private network tunnels |
US20140109176A1 (en) | 2012-10-15 | 2014-04-17 | Citrix Systems, Inc. | Configuring and providing profiles that manage execution of mobile applications |
US9170800B2 (en) | 2012-10-16 | 2015-10-27 | Citrix Systems, Inc. | Application wrapping for application management framework |
US9971585B2 (en) | 2012-10-16 | 2018-05-15 | Citrix Systems, Inc. | Wrapping unmanaged applications on a mobile device |
US20140108793A1 (en) | 2012-10-16 | 2014-04-17 | Citrix Systems, Inc. | Controlling mobile device access to secure data |
US9606774B2 (en) | 2012-10-16 | 2017-03-28 | Citrix Systems, Inc. | Wrapping an application with field-programmable business logic |
GB2505531B (en) * | 2012-11-16 | 2015-01-07 | F Secure Corp | Methods, systems and apparatus for managing data entries on a database |
US9270660B2 (en) | 2012-11-25 | 2016-02-23 | Angel Secure Networks, Inc. | System and method for using a separate device to facilitate authentication |
CN104812833B (zh) * | 2012-12-12 | 2016-10-12 | 日本瑞翁株式会社 | 粉体成形用氯乙烯树脂组合物、氯乙烯树脂成形体和层合体 |
WO2014142817A1 (en) * | 2013-03-13 | 2014-09-18 | Intel Corporation | Managing device driver cross ring accesses |
US8875247B2 (en) | 2013-03-14 | 2014-10-28 | Facebook, Inc. | Instant personalization security |
US9985850B2 (en) | 2013-03-29 | 2018-05-29 | Citrix Systems, Inc. | Providing mobile device management functionalities |
US9455886B2 (en) | 2013-03-29 | 2016-09-27 | Citrix Systems, Inc. | Providing mobile device management functionalities |
US9369449B2 (en) | 2013-03-29 | 2016-06-14 | Citrix Systems, Inc. | Providing an enterprise application store |
US9355223B2 (en) | 2013-03-29 | 2016-05-31 | Citrix Systems, Inc. | Providing a managed browser |
US10284627B2 (en) | 2013-03-29 | 2019-05-07 | Citrix Systems, Inc. | Data management for an application with multiple operation modes |
US8943592B1 (en) * | 2013-07-15 | 2015-01-27 | Eset, Spol. S.R.O. | Methods of detection of software exploitation |
DE102014204417A1 (de) | 2014-03-11 | 2015-09-17 | Siemens Aktiengesellschaft | Vorrichtung und Verfahren zum Detektieren einer Manipulation an einem Programmcode |
US9639673B2 (en) | 2014-06-17 | 2017-05-02 | Apple Inc. | Protecting software through a fake cryptographic layer |
CN104217137B (zh) * | 2014-08-29 | 2017-09-29 | 广东欧珀移动通信有限公司 | 一种识别智能终端系统是否被更改的方法及装置 |
EP3197953B1 (de) * | 2014-09-24 | 2018-05-23 | Evonik Röhm GmbH | Schlagzäh ausgerüstete formmasse mit verbessertem eigenschaftsprofil |
US9483381B2 (en) * | 2014-12-15 | 2016-11-01 | Dell Products L.P. | Obfuscating debugging filenames |
US10733594B1 (en) | 2015-05-11 | 2020-08-04 | Square, Inc. | Data security measures for mobile devices |
CN104933332B (zh) * | 2015-06-10 | 2018-07-13 | 北京北信源软件股份有限公司 | 一种防止软件被非法卸载的方法及装置 |
KR20170010574A (ko) | 2015-07-20 | 2017-02-01 | 삼성전자주식회사 | 정보처리장치, 영상처리장치 및 그들의 제어방법 |
WO2017146721A1 (en) | 2016-02-26 | 2017-08-31 | Hewlett Packard Enterprise Development Lp | Fault isolation in transaction logs |
US10594731B2 (en) | 2016-03-24 | 2020-03-17 | Snowflake Inc. | Systems, methods, and devices for securely managing network connections |
US10546302B2 (en) | 2016-06-30 | 2020-01-28 | Square, Inc. | Logical validation of devices against fraud and tampering |
US10373167B2 (en) | 2016-06-30 | 2019-08-06 | Square, Inc. | Logical validation of devices against fraud |
US10474446B2 (en) * | 2016-09-16 | 2019-11-12 | Bank Of America Corporation | Installation tool for adhering to enterprise requirements |
US10404667B2 (en) * | 2016-11-17 | 2019-09-03 | Bank Of America Corporation | Secure, autonomous file encryption and decryption |
US10496993B1 (en) | 2017-02-15 | 2019-12-03 | Square, Inc. | DNS-based device geolocation |
US10552308B1 (en) | 2017-06-23 | 2020-02-04 | Square, Inc. | Analyzing attributes of memory mappings to identify processes running on a device |
US10715536B2 (en) | 2017-12-29 | 2020-07-14 | Square, Inc. | Logical validation of devices against fraud and tampering |
US11005971B2 (en) * | 2018-08-02 | 2021-05-11 | Paul Swengler | System and method for user device authentication or identity validation without passwords or matching tokens |
US11494762B1 (en) | 2018-09-26 | 2022-11-08 | Block, Inc. | Device driver for contactless payments |
US11507958B1 (en) | 2018-09-26 | 2022-11-22 | Block, Inc. | Trust-based security for transaction payments |
EP4004773B1 (en) | 2019-07-29 | 2023-09-06 | Intertrust Technologies Corporation | Systems and methods for managing state |
US11610004B2 (en) * | 2021-04-14 | 2023-03-21 | Bank Of America Corporation | System for implementing enhanced file encryption technique |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04107631A (ja) * | 1990-08-28 | 1992-04-09 | Seiko Epson Corp | 情報処理装置 |
JPH06242957A (ja) * | 1993-02-16 | 1994-09-02 | Fujitsu Ltd | プログラム実行制御装置 |
WO2003100610A1 (en) * | 2002-05-28 | 2003-12-04 | Toshiba Corporation | System update protocol and bootable cd controller |
JP2004013608A (ja) * | 2002-06-07 | 2004-01-15 | Hitachi Ltd | プログラムの実行および転送の制御 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9422389D0 (en) | 1994-11-05 | 1995-01-04 | Int Computers Ltd | Authenticating access control for sensitive functions |
JPH08263438A (ja) | 1994-11-23 | 1996-10-11 | Xerox Corp | ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法 |
CN1912885B (zh) | 1995-02-13 | 2010-12-22 | 英特特拉斯特技术公司 | 用于安全交易管理和电子权利保护的系统和方法 |
US6006328A (en) | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
US5802368A (en) * | 1995-09-29 | 1998-09-01 | Informix Software, Inc. | Dynamic Library Task Switching |
US5794232A (en) | 1996-03-15 | 1998-08-11 | Novell, Inc. | Catalog services for distributed directories |
US5845129A (en) | 1996-03-22 | 1998-12-01 | Philips Electronics North America Corporation | Protection domains in a single address space |
WO1999001815A1 (en) | 1997-06-09 | 1999-01-14 | Intertrust, Incorporated | Obfuscation techniques for enhancing software security |
US20040107368A1 (en) | 1998-06-04 | 2004-06-03 | Z4 Technologies, Inc. | Method for digital rights management including self activating/self authentication software |
US20020002678A1 (en) | 1998-08-14 | 2002-01-03 | Stanley T. Chow | Internet authentication technology |
US20020062451A1 (en) * | 1998-09-01 | 2002-05-23 | Scheidt Edward M. | System and method of providing communication security |
US7140005B2 (en) | 1998-12-21 | 2006-11-21 | Intel Corporation | Method and apparatus to test an instruction sequence |
WO2000039987A1 (de) * | 1998-12-29 | 2000-07-06 | Swisscom Ag | Verfahren und system, um benutzern eines telekommunikationsnetzes objekte zur verfügung zu stellen |
US6421768B1 (en) * | 1999-05-04 | 2002-07-16 | First Data Corporation | Method and system for authentication and single sign on using cryptographically assured cookies in a distributed computer environment |
US7146505B1 (en) | 1999-06-01 | 2006-12-05 | America Online, Inc. | Secure data exchange between date processing systems |
US6731756B1 (en) | 1999-06-21 | 2004-05-04 | Elisar Software Corporation, Inc. | Method for securing video images |
WO2001008345A1 (en) | 1999-07-22 | 2001-02-01 | Open Security Solutions, Llc | A computer system and process for accessing an encrypted and self-decrypting digital information product |
ATE365944T1 (de) | 1999-10-26 | 2007-07-15 | Iontas Ltd | Überwachung von rechnerbenutzung |
US6898707B1 (en) * | 1999-11-30 | 2005-05-24 | Accela, Inc. | Integrating a digital signature service into a database |
US20030014315A1 (en) * | 1999-12-03 | 2003-01-16 | Harri Jaalinoja | Method and a system for obtaining services using a cellular telecommunication system |
US7539875B1 (en) | 2000-06-27 | 2009-05-26 | Microsoft Corporation | Secure repository with layers of tamper resistance and system and method for providing same |
AU6371500A (en) * | 2000-07-25 | 2002-02-05 | Mediadna Inc | System and method of verifying the authenticity of dynamically connectable executable images |
US7181017B1 (en) * | 2001-03-23 | 2007-02-20 | David Felsher | System and method for secure three-party communications |
US7000100B2 (en) | 2001-05-31 | 2006-02-14 | Hewlett-Packard Development Company, L.P. | Application-level software watchdog timer |
NL1018494C2 (nl) | 2001-07-09 | 2003-01-10 | Koninkl Kpn Nv | Methode en systeem voor het door een dienstproces aan een client leveren van een dienst. |
US7424615B1 (en) | 2001-07-30 | 2008-09-09 | Apple Inc. | Mutually authenticated secure key exchange (MASKE) |
US20040054952A1 (en) * | 2002-09-13 | 2004-03-18 | Morrow James W. | Device verification system and method |
US7320075B2 (en) * | 2001-11-20 | 2008-01-15 | Safenet, Inc. | Software protection method utilizing hidden application code in a protection dynamic link library object |
US7249262B2 (en) * | 2002-05-06 | 2007-07-24 | Browserkey, Inc. | Method for restricting access to a web site by remote users |
US7318235B2 (en) * | 2002-12-16 | 2008-01-08 | Intel Corporation | Attestation using both fixed token and portable token |
US7607009B2 (en) | 2003-02-10 | 2009-10-20 | International Business Machines Corporation | Method for distributing and authenticating public keys using time ordered exchanges |
US7251732B2 (en) * | 2003-06-18 | 2007-07-31 | Microsoft Corporation | Password synchronization in a sign-on management system |
US7281271B1 (en) | 2003-09-25 | 2007-10-09 | Symantec Corporation | Exception handling validation system and method |
US7478146B2 (en) * | 2003-11-03 | 2009-01-13 | Nokia Corporation | System, apparatus, and method for communicating capabilities of a mobile device |
US7555568B2 (en) * | 2004-02-28 | 2009-06-30 | Huang Evan S | Method and apparatus for operating a host computer from a portable apparatus |
-
2005
- 2005-02-17 US US11/061,791 patent/US7584509B2/en not_active Expired - Fee Related
- 2005-02-17 US US11/061,280 patent/US7891008B2/en not_active Expired - Fee Related
- 2005-02-17 US US11/062,237 patent/US7552337B2/en not_active Expired - Fee Related
- 2005-02-17 US US11/061,411 patent/US7631360B2/en not_active Expired - Fee Related
- 2005-02-17 US US11/061,484 patent/US7640592B2/en not_active Expired - Fee Related
- 2005-02-17 US US11/062,238 patent/US7526805B2/en not_active Expired - Fee Related
- 2005-02-17 US US11/061,792 patent/US7577997B2/en not_active Expired - Fee Related
- 2005-02-17 US US11/061,790 patent/US7559091B2/en not_active Expired - Fee Related
- 2005-06-10 KR KR1020117021880A patent/KR101187554B1/ko active IP Right Grant
- 2005-06-10 JP JP2007527785A patent/JP4729575B2/ja not_active Expired - Fee Related
- 2005-06-10 KR KR1020117021882A patent/KR101159487B1/ko active IP Right Grant
- 2005-06-10 EP EP05773235.6A patent/EP1757008B1/en not_active Not-in-force
- 2005-06-10 KR KR1020117021881A patent/KR101187521B1/ko active IP Right Grant
- 2005-06-10 WO PCT/US2005/020638 patent/WO2005125081A2/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04107631A (ja) * | 1990-08-28 | 1992-04-09 | Seiko Epson Corp | 情報処理装置 |
JPH06242957A (ja) * | 1993-02-16 | 1994-09-02 | Fujitsu Ltd | プログラム実行制御装置 |
WO2003100610A1 (en) * | 2002-05-28 | 2003-12-04 | Toshiba Corporation | System update protocol and bootable cd controller |
JP2005527908A (ja) * | 2002-05-28 | 2005-09-15 | 株式会社東芝 | システム更新プロトコルおよび埋込みオペレーティングシステムを備えたブート可能なcdコントローラ |
JP2004013608A (ja) * | 2002-06-07 | 2004-01-15 | Hitachi Ltd | プログラムの実行および転送の制御 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009129451A (ja) * | 2007-11-20 | 2009-06-11 | Korea Electronics Telecommun | 悪性コードによって挿入されたダイナミックリンクライブラリ検出装置及び方法 |
JP2013537760A (ja) * | 2010-08-05 | 2013-10-03 | ジェムアルト エスアー | セキュリティ部品及び携帯通信装置において複数の加入者プロファイルを安全に使用するシステムと方法 |
JP2016535354A (ja) * | 2013-08-22 | 2016-11-10 | インカ・エントワークス・インコーポレイテッドInka Entworks, Inc. | 共通中間言語ベースのプログラムのためのセキュリティ提供方法 |
JP2016540282A (ja) * | 2013-10-10 | 2016-12-22 | インカ・エントワークス・インコーポレイテッドInka Entworks, Inc. | 動的ライブラリを保護する方法及び装置 |
JP2020060958A (ja) * | 2018-10-10 | 2020-04-16 | 株式会社Nttドコモ | 難読化判定装置 |
JP7084273B2 (ja) | 2018-10-10 | 2022-06-14 | 株式会社Nttドコモ | 難読化判定装置 |
Also Published As
Publication number | Publication date |
---|---|
US20050278782A1 (en) | 2005-12-15 |
EP1757008B1 (en) | 2018-09-26 |
US20060005252A1 (en) | 2006-01-05 |
US7526805B2 (en) | 2009-04-28 |
US20050278553A1 (en) | 2005-12-15 |
US7584509B2 (en) | 2009-09-01 |
US7891008B2 (en) | 2011-02-15 |
EP1757008A2 (en) | 2007-02-28 |
KR20110110866A (ko) | 2011-10-07 |
US20050278791A1 (en) | 2005-12-15 |
JP4729575B2 (ja) | 2011-07-20 |
US20050278535A1 (en) | 2005-12-15 |
US20060005249A1 (en) | 2006-01-05 |
WO2005125081A2 (en) | 2005-12-29 |
KR101159487B1 (ko) | 2012-06-22 |
US7559091B2 (en) | 2009-07-07 |
US7577997B2 (en) | 2009-08-18 |
US7640592B2 (en) | 2009-12-29 |
US7552337B2 (en) | 2009-06-23 |
KR101187554B1 (ko) | 2012-10-02 |
US20060005250A1 (en) | 2006-01-05 |
KR20110119808A (ko) | 2011-11-02 |
KR20110119809A (ko) | 2011-11-02 |
WO2005125081A3 (en) | 2006-03-23 |
US7631360B2 (en) | 2009-12-08 |
EP1757008A4 (en) | 2012-11-21 |
KR101187521B1 (ko) | 2012-10-02 |
US20060005251A1 (en) | 2006-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4729575B2 (ja) | ソフトウェアのセキュリティ確保 | |
US7721340B2 (en) | Registry protection | |
JP4702957B2 (ja) | 耐タンパ・トラステッド仮想マシン | |
JP4796340B2 (ja) | 状態検証を使用した保護されたオペレーティングシステムブートのためのシステムおよび方法 | |
EP2689375B1 (en) | System and method for securely binding and node-locking program execution to a trusted signature authority | |
CN107533594B (zh) | 验证软件的方法、安全软件系统及可读存储介质 | |
US8656190B2 (en) | One time settable tamper resistant software repository | |
KR20130114703A (ko) | 보안 상태 전환을 관리하기 위한 방법 및 장치 | |
Chen et al. | Sweetdroid: Toward a context-sensitive privacy policy enforcement framework for android os | |
KR101203245B1 (ko) | 소프트웨어 보안 | |
CN112685697B (zh) | 一种防止安卓应用被破解篡改的方法及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080610 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080610 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101221 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110322 |
|
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: 20110412 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110418 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4729575 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140422 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |