JP4599069B2 - ハードウェア変更の許容度を有するコンピュータシステムに秘密を結び付けるシステム - Google Patents
ハードウェア変更の許容度を有するコンピュータシステムに秘密を結び付けるシステム Download PDFInfo
- Publication number
- JP4599069B2 JP4599069B2 JP2004059841A JP2004059841A JP4599069B2 JP 4599069 B2 JP4599069 B2 JP 4599069B2 JP 2004059841 A JP2004059841 A JP 2004059841A JP 2004059841 A JP2004059841 A JP 2004059841A JP 4599069 B2 JP4599069 B2 JP 4599069B2
- Authority
- JP
- Japan
- Prior art keywords
- class
- component
- instance
- component class
- prime number
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000008859 change Effects 0.000 title description 4
- 238000000034 method Methods 0.000 claims abstract description 49
- 230000006870 function Effects 0.000 description 20
- 230000003287 optical effect Effects 0.000 description 12
- 238000001994 activation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000009434 installation Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000005055 memory storage Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 150000003839 salts Chemical class 0.000 description 3
- 238000000605 extraction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered 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/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
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
-
- D—TEXTILES; PAPER
- D01—NATURAL OR MAN-MADE THREADS OR FIBRES; SPINNING
- D01D—MECHANICAL METHODS OR APPARATUS IN THE MANUFACTURE OF ARTIFICIAL FILAMENTS, THREADS, FIBRES, BRISTLES OR RIBBONS
- D01D1/00—Treatment of filament-forming or like material
- D01D1/10—Filtering or de-aerating the spinning solution or melt
- D01D1/106—Filtering
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61P—SPECIFIC THERAPEUTIC ACTIVITY OF CHEMICAL COMPOUNDS OR MEDICINAL PREPARATIONS
- A61P31/00—Antiinfectives, i.e. antibiotics, antiseptics, chemotherapeutics
- A61P31/04—Antibacterial agents
-
- 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
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
- G06F21/126—Interacting with the operating system
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/00746—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
- G11B20/00782—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of times a program can be installed
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Organic Chemistry (AREA)
- General Chemical & Material Sciences (AREA)
- Veterinary Medicine (AREA)
- General Health & Medical Sciences (AREA)
- Mechanical Engineering (AREA)
- Textile Engineering (AREA)
- Animal Behavior & Ethology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Pharmacology & Pharmacy (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Medicinal Chemistry (AREA)
- Public Health (AREA)
- Chemical Kinetics & Catalysis (AREA)
- Chemical & Material Sciences (AREA)
- Oncology (AREA)
- Communicable Diseases (AREA)
- Storage Device Security (AREA)
- Package Frames And Binding Bands (AREA)
- Joining Of Building Structures In Genera (AREA)
- Emergency Protection Circuit Devices (AREA)
- Orthopedics, Nursing, And Contraception (AREA)
Description
(1)秘密Sは、ハードウェア構成Hで計算することができる。
(2)秘密Sは、望まれる閾値量のコンポーネント変更以下の量のコンポーネント変更が行われたハードウェア構成Hであるハードウェア構成H1で計算することができる。
(3)秘密Sは、他のハードウェア構成H2では計算することが実質的に不可能である。
以下で図面を参照して本発明の例示的実施形態を説明するが、すべての図面で同様の要素は同様の参照符号によって表す。図1に、本発明を実施するための例示的な動作環境を示す。例示的動作環境は、従来のパーソナルコンピュータ20の形態の汎用コンピューティングデバイスを含む。一般に、パーソナルコンピュータ20は、処理装置21、システムメモリ22、およびシステムメモリ22を含む各種のシステム構成要素を処理装置21に結合するシステムバス23を含む。システムバス23は、各種のバスアーキテクチャの任意のものを使用したメモリバスまたはメモリコントローラ、ペリフェラルバス、およびローカルバスを含む数タイプのバス構造のいずれでもよい。システムメモリは、読み取り専用メモリ(ROM)24およびランダムアクセスメモリ(RAM)25を含む。起動時などにパーソナルコンピュータ20内の要素間の情報転送を助ける基本ルーチンを含む基本入出力システム(BIOS)26は、ROM24に記憶される。
上述のように、コンピュータシステムは通例、複数のハードウェアコンポーネントクラスを備える。さらに、コンピュータシステムは、各ハードウェアコンポーネントのクラスに複数のコンポーネント(例えば2つのハードディスクドライブなど)を含む可能性がある。
所与のコンピュータシステムの強いハードウェア識別(SHWID)は、(1)ハードウェアコンポーネント、および(2)部分的秘密のコンポーネント、の2つの別個のコンポーネントからなる。これらのコンポーネントを決定する例示的方法を下記で説明する。この例示的方法のステップは、上記で図1を参照して説明したコンピュータ20と同様の顧客のコンピュータ上のソフトウェア製品のソフトウェアコードによって行うことができる。
本発明のSHWIDは、各ハードウェアコンポーネントクラスのクラスの積を含む。SHWIDのハードウェアコンポーネントは、図2に示すように決定することができる。
(b)xは、約65,000文字までの長さの任意のデータでよい。
(c)f(x)>2t。tは望ましくは約32より大きい整数。tは約64以上であることが望ましい。ただしtの値に制限はない。
(d)f(x)の結果は、xの値に基づいて決定性である。
本発明の強いハードウェア識別(SHWID)は、各ハードウェアコンポーネントクラスについての部分的な秘密のコンポーネントも含む。SHWIDの部分的秘密コンポーネントを決定する例示的方法を図3〜4に示す。この例示的方法のステップは、上記で図1を参照して説明したコンピュータ20と同様の顧客のコンピュータのソフトウェア製品中のソフトウェアコードによって行うことができる。
(b) g(rp)<2v。vはuより大きい整数。
(c) u+v=t
(d) g(rp)の結果は、rpの値に基づいて決定性である。
t=64
u=20
v=44
0<rp<2u(220=1,048,576)
2<g(rp)<2v
2<p2<p3<p1<p4<2v
dp=S mod Pp
pp=g(rp) ここで0<=rp<2u
取り出し時にg(rp)が得られればppはrpによって表すことができる
rpはuビットで表すことができる
dp=S mod pp
0<pp<2v
したがってdp<2v
これで、ステップ207で得たクラスの積cpとステップ310で得たクラスの部分的な秘密Ppを使用して強いハードウェア識別(SHWID)を構成することができる。図5のステップ401に示すように、クラスの強い識別(ID)Cpを各コンポーネントクラスに作成し、ここでCp=cp+Ppである。ステップ402で、コンポーネントクラスのすべてのクラスの強いID、Cpを組み合わせて強いハードウェア識別(SHWID)を形成する。得られたSHWIDは、将来の取り出しのために記憶する。SHWIDは、ローカルに(レジストリ、ファイルシステム、セキュアなストアなど)に記憶しても、アクセス可能な遠隔の場所(データベースなど)に記憶してもよい。
本発明はさらに、所与のコンピュータハードウェア構成から結び付けられた秘密Sを取り出す、または取り出しを試みる方法を対象とする。本発明の一実施形態では、所与のコンピュータハードウェア構成から結び付けられた秘密Sを取り出すことを試みる方法は、(i)ソフトウェア製品のインストール時、(ii)ハードウェア構成のあるコンポーネントにすでに存在するソフトウェアアプリケーションのロード時、あるいは(iii)その両方、に開始される。ハードウェア構成から結び付けられた秘密Sを取り出す例示的方法を図6〜7に示す。この例示的方法のステップは、図1を参照して上記で説明したコンピュータ20と同様の顧客のコンピュータのソフトウェア製品中のソフトウェアコードによって行うことができる。
上記の使用法に加えて、本発明の強いハードウェア識別(SHWID)を使用して、特定のハードウェア構成のみで使用するためにデータを暗号化/解読することができる。
21 処理装置
22 システムメモリ
23 システムバス
24 読み取り専用メモリ(ROM)
25 ランダムアクセスメモリ(RAM)
26 基本入出力システム(BIOS)
27 ハードディスク
28 磁気ディスクドライブ
29 取り外し可能磁気ディスク
30 光ディスクドライブ
31 取り外し可能光ディスク
32 ハードウェアディスクドライブインタフェース
33 磁気ディスクドライブインタフェース
34 光ディスクドライブインタフェース
35 オペレーティングシステム
37 プログラムモジュール
38 マニフェスト
40 キーボード
42 マウス
46 シリアルポートインタフェース
47 モニタ
48 ビデオアダプタ
49 リモートコンピュータサーバ
50 メモリ記憶装置
52 広域ネットワーク(WAN)
51 構内ネットワーク(LAN)
52 ワイドエリアネットワーク
53 ネットワークインタフェース
54 モデム
100 アプリケーションプログラム
105 ライブラリ
Claims (21)
- 第1のハードウェア構成を有する第1のコンピュータシステムの強いハードウェア識別(SHWID)を生成する方法であって、
前記第1のハードウェア構成中の各コンポーネントクラスを識別するステップであって、コンポーネントクラスの数はnに等しいステップと、
各コンポーネントクラスのクラスの積cpを求めるステップであって、前記各コンポーネントクラスのクラスの積c p は、
コンポーネントクラスの数nを選択するステップと、
前記n個のコンポーネントクラスを識別するステップと、
各コンポーネントクラス中のすべてのインスタンスを識別するステップと、
各コンポーネントインスタンスの識別ストリングを割り当てるステップと、
各コンポーネントインスタンスにインスタンス素数p p,q を生成するステップであって、各インスタンス素数は正の素数であり、pは1からnの範囲の所与のコンポーネントクラス番号を表し、qは、前記第1のハードウェア構成中でq番目のコンポーネントタイプを表す、生成するステップと、
各コンポーネントクラス中の前記インスタンス素数を乗算して、各コンポーネントクラスのクラスの積c p を形成するステップと
によって求められるステップと、
各コンポーネントクラスの部分的秘密Ppを求めるステップであって、前記各コンポーネントクラスの部分的秘密P p は、
各コンポーネントクラスについての乱数r p を生成するステップと、
各コンポーネントクラスについての素数p p を生成するステップであって、各クラスの素数は正の素数であるステップと、
必要とされるコンポーネントクラスの一致の数mを選択するステップであって、mはn以下であるステップと、
Nを決定するステップであって、Nはm個の最も小さなクラス素数p p の積に等しいステップと、
Mを決定するステップであって、Mは(m−1)個の最も大きなクラス素数p p の積に等しく、N未満であるステップと、
秘密の数Sを選択するステップであって、M<S<Nであるステップと、
各コンポーネントクラスのクラスの剰余d p を求めるステップであって、d p は、[S(mod p p )]に等しいステップと、
各コンポーネントクラスの第1の2進値を形成するステップであって、前記第1の2進値は、uビットまでの第1の2進値中に符号化された各クラスの前記クラスの素数p p であり、uはt未満であり、uとtはともに2,048未満であるステップと、
各コンポーネントクラスの第2の2進値を形成するステップであって、前記第2の2進値は、vビットまでの第2の2進値中に符号化された各クラスの前記クラスの剰余d p であり、vはt未満であり、(u+v=t)であるステップと、
前記第1の2進値と第2の2進値を連結して、合計のビット数がtに等しい各コンポーネントクラスの部分的秘密P p を形成するステップと
によって求められるステップと、
各コンポーネントクラスの前記クラスの積cpと前記部分的秘密Ppを足してn個の強いクラスIDを形成するステップと
を含み、
前記n個の強いクラスIDは、組み合わさって前記第1のコンピュータシステムの前記強いハードウェア識別(SHWID)を形成することを特徴とする方法。 - 前記nは16までの整数であることを特徴とする請求項1に記載の方法。
- 前記インスタンス素数を生成するステップは、素数生成関数f(x)に各コンポーネントインスタンスの前記識別ストリングを入力するステップを含み、xは、65,000文字までの長さの前記識別ストリングであることを特徴とする請求項1に記載の方法。
- 前記f(x)は、2tより大きい値の正の素数を生成し、tは32から2,048の範囲の整数であることを特徴とする請求項3に記載の方法。
- 前記rpは乱数生成器を使用して生成され、0から2u未満の範囲の値であることを特徴とする請求項1に記載の方法。
- 各コンポーネントクラスのクラス素数ppを生成する前記ステップは、素数生成関数g(x)に各コンポーネントクラスの前記乱数を入力するステップを含み、xは、65,000文字までの長さを有する乱数であることを特徴とする請求項1に記載の方法。
- 前記g(x)は、2より大きく2v未満の範囲の値を有する正の素数を生成することを特徴とする請求項6に記載の方法。
- 第1のハードウェア構成を有する第1のコンピュータシステムの強いハードウェア識別(SHWID)を生成する方法を行うコンピュータ実行可能命令が格納されたコンピュータ可読媒体であって、前記方法は、
前記第1のハードウェア構成中の各コンポーネントクラスを識別するステップであって、コンポーネントクラスの数はnに等しいステップと、
各コンポーネントクラスのクラスの積cpを求めるステップであって、前記各コンポーネントクラスのクラスの積c p は、
コンポーネントクラスの数nを選択するステップと、
前記n個のコンポーネントクラスを識別するステップと、
各コンポーネントクラス中のすべてのインスタンスを識別するステップと、
各コンポーネントインスタンスの識別ストリングを割り当てるステップと、
各コンポーネントインスタンスにインスタンス素数p p,q を生成するステップであって、各インスタンス素数は正の素数であり、pは1からnの範囲の所与のコンポーネントクラス番号を表し、qは、前記第1のハードウェア構成中でq番目のコンポーネントタイプを表す、生成するステップと、
各コンポーネントクラス中の前記インスタンス素数を乗算して、各コンポーネントクラスのクラスの積c p を形成するステップと
によって求められるステップと、
各コンポーネントクラスの部分的秘密Ppを求めるステップであって、前記各コンポーネントクラスの部分的秘密P p は、
各コンポーネントクラスについての乱数r p を生成するステップと、
各コンポーネントクラスについての素数p p を生成するステップであって、各クラスの素数は正の素数であるステップと、
必要とされるコンポーネントクラスの一致の数mを選択するステップであって、mはn以下であるステップと、
Nを決定するステップであって、Nはm個の最も小さなクラス素数p p の積に等しいステップと、
Mを決定するステップであって、Mは(m−1)個の最も大きなクラス素数p p の積に等しく、N未満であるステップと、
秘密の数Sを選択するステップであって、M<S<Nであるステップと、
各コンポーネントクラスのクラスの剰余d p を求めるステップであって、d p は、[S(mod p p )]に等しいステップと、
各コンポーネントクラスの第1の2進値を形成するステップであって、前記第1の2進値は、uビットまでの第1の2進値中に符号化された各クラスの前記クラスの素数p p であり、uはt未満であり、uとtはともに2,048未満であるステップと、
各コンポーネントクラスの第2の2進値を形成するステップであって、前記第2の2進値は、vビットまでの第2の2進値中に符号化された各クラスの前記クラスの剰余d p であり、vはt未満であり、(u+v=t)であるステップと、
前記第1の2進値と第2の2進値を連結して、合計のビット数がtに等しい各コンポーネントクラスの部分的秘密P p を形成するステップと
によって求められるステップと、
各コンポーネントクラスの前記クラスの積cpと前記部分的秘密Ppを足してn個の強いクラスIDを形成するステップと
を含み、
前記n個の強いクラスIDは、組み合わさって前記第1のコンピュータシステムの前記強いハードウェア識別(SHWID)を形成することを特徴とするコンピュータ可読媒体。 - 前記nは16までの整数であることを特徴とする請求項8に記載のコンピュータ可読媒体。
- 前記インスタンス素数を生成するステップは、素数生成関数f(x)に各コンポーネントインスタンスの前記識別ストリングを入力するステップを含み、xは、65,000文字までの長さの前記識別ストリングであることを特徴とする請求項8に記載のコンピュータ可読媒体。
- 前記f(x)は、2tより大きい値の正の素数を生成し、tは32から2,048の範囲の整数であることを特徴とする請求項10に記載のコンピュータ可読媒体。
- 前記rpは乱数生成器を使用して生成され、0から2u未満の範囲の値であることを特徴とする請求項8に記載のコンピュータ可読媒体。
- 各コンポーネントクラスのクラス素数ppを生成する前記ステップは、素数生成関数g(x)に各コンポーネントクラスの前記乱数を入力するステップを含み、xは、65,000文字までの長さを有する乱数であることを特徴とする請求項8に記載のコンピュータ可読媒体。
- 前記g(x)は、2より大きく2v未満の範囲である値を有する正の素数を生成することを特徴とする請求項13に記載のコンピュータ可読媒体。
- 当該コンピューティングシステムで使用することが可能な少なくとも1つのアプリケーションモジュールを含むコンピューティングシステムであって、前記少なくとも1つのアプリケーションモジュールは、第1のハードウェア構成を有する第1のコンピュータシステムの強いハードウェア識別(SHWID)を生成する方法を行うアプリケーションコードを含み、前記方法は、
前記第1のハードウェア構成中の各コンポーネントクラスを識別するステップであって、コンポーネントクラスの数はnに等しいステップと、
各コンポーネントクラスのクラスの積cpを求めるステップであって、前記各コンポーネントクラスのクラスの積c p は、
コンポーネントクラスの数nを選択するステップと、
前記n個のコンポーネントクラスを識別するステップと、
各コンポーネントクラス中のすべてのインスタンスを識別するステップと、
各コンポーネントインスタンスの識別ストリングを割り当てるステップと、
各コンポーネントインスタンスにインスタンス素数p p,q を生成するステップであって、各インスタンス素数は正の素数であり、pは1からnの範囲の所与のコンポーネントクラス番号を表し、qは、前記第1のハードウェア構成中でq番目のコンポーネントタイプを表す、生成するステップと、
各コンポーネントクラス中の前記インスタンス素数を乗算して、各コンポーネントクラスのクラスの積c p を形成するステップと
によって求められるステップと、
各コンポーネントクラスの部分的秘密Ppを求めるステップであって、前記各コンポーネントクラスの部分的秘密P p は、
各コンポーネントクラスについての乱数r p を生成するステップと、
各コンポーネントクラスについての素数p p を生成するステップであって、各クラスの素数は正の素数であるステップと、
必要とされるコンポーネントクラスの一致の数mを選択するステップであって、mはn以下であるステップと、
Nを決定するステップであって、Nはm個の最も小さなクラス素数p p の積に等しいステップと、
Mを決定するステップであって、Mは(m−1)個の最も大きなクラス素数p p の積に等しく、N未満であるステップと、
秘密の数Sを選択するステップであって、M<S<Nであるステップと、
各コンポーネントクラスのクラスの剰余d p を求めるステップであって、d p は、[S(mod p p )]に等しいステップと、
各コンポーネントクラスの第1の2進値を形成するステップであって、前記第1の2進値は、uビットまでの第1の2進値中に符号化された各クラスの前記クラスの素数p p であり、uはt未満であり、uとtはともに2,048未満であるステップと、
各コンポーネントクラスの第2の2進値を形成するステップであって、前記第2の2進値は、vビットまでの第2の2進値中に符号化された各クラスの前記クラスの剰余d p であり、vはt未満であり、(u+v=t)であるステップと、
前記第1の2進値と第2の2進値を連結して、合計のビット数がtに等しい各コンポーネントクラスの部分的秘密P p を形成するステップと
によって求められるステップと、
各コンポーネントクラスの前記クラスの積cpと前記部分的秘密Ppを足してn個の強いクラスIDを形成するステップと
を含み、
前記n個の強いクラスIDは、組み合わさって前記第1のコンピュータシステムの前記強いハードウェア識別(SHWID)を形成することを特徴とするコンピューティングシステム。 - 前記nは16までの整数であることを特徴とする請求項15に記載のコンピューティングシステム。
- 前記インスタンス素数を生成するステップは、素数生成関数f(x)に各コンポーネントインスタンスの前記識別ストリングを入力するステップを含み、xは、65,000文字までの長さの前記識別ストリングであることを特徴とする請求項15に記載のコンピューティングシステム。
- 前記f(x)は、2tより大きい値の正の素数を生成し、tは32から2,048の範囲の整数であることを特徴とする請求項17に記載のコンピューティングシステム。
- 前記rpは乱数生成器を使用して生成され、0から2u未満の範囲の値であることを特徴とする請求項15に記載のコンピューティングシステム。
- 各コンポーネントクラスのクラス素数ppを生成する前記ステップは、素数生成関数g(x)に各コンポーネントクラスの前記乱数を入力するステップを含み、xは、65,000文字までの長さを有する乱数であることを特徴とする請求項15に記載のコンピューティングシステム。
- 前記g(x)は、2より大きく2v未満の範囲の値を有する正の素数を生成することを特徴とする請求項20に記載のコンピューティングシステム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/378,224 US7296294B2 (en) | 2003-03-03 | 2003-03-03 | System for binding secrets to a computer system having tolerance for hardware changes |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004266841A JP2004266841A (ja) | 2004-09-24 |
JP4599069B2 true JP4599069B2 (ja) | 2010-12-15 |
Family
ID=32824752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004059841A Expired - Fee Related JP4599069B2 (ja) | 2003-03-03 | 2004-03-03 | ハードウェア変更の許容度を有するコンピュータシステムに秘密を結び付けるシステム |
Country Status (19)
Country | Link |
---|---|
US (2) | US7296294B2 (ja) |
EP (1) | EP1455257B1 (ja) |
JP (1) | JP4599069B2 (ja) |
KR (1) | KR101036701B1 (ja) |
CN (1) | CN100416445C (ja) |
AT (1) | ATE306101T1 (ja) |
AU (1) | AU2004200683B2 (ja) |
BR (1) | BRPI0400380A (ja) |
CA (1) | CA2459217A1 (ja) |
DE (1) | DE602004000106T8 (ja) |
DK (1) | DK1455257T3 (ja) |
ES (1) | ES2250932T3 (ja) |
HK (1) | HK1068697A1 (ja) |
MX (1) | MXPA04002024A (ja) |
MY (1) | MY134635A (ja) |
PL (1) | PL1455257T3 (ja) |
RU (1) | RU2348968C2 (ja) |
TW (1) | TWI319544B (ja) |
ZA (1) | ZA200401493B (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050027657A1 (en) * | 2003-08-01 | 2005-02-03 | Yuri Leontiev | Distinguishing legitimate hardware upgrades from unauthorized installations of software on additional computers |
JP4699099B2 (ja) * | 2005-06-14 | 2011-06-08 | 富士通株式会社 | 通信制御装置および通信制御方法 |
FR2912529A1 (fr) * | 2007-02-13 | 2008-08-15 | France Telecom | Couplage d'un programme informatique ou de donnees a un systeme de reference et verification associee. |
US8620818B2 (en) | 2007-06-25 | 2013-12-31 | Microsoft Corporation | Activation system architecture |
US20090119744A1 (en) * | 2007-11-01 | 2009-05-07 | Microsoft Corporation | Device component roll back protection scheme |
US9047450B2 (en) * | 2009-06-19 | 2015-06-02 | Deviceauthority, Inc. | Identification of embedded system devices |
US9047458B2 (en) | 2009-06-19 | 2015-06-02 | Deviceauthority, Inc. | Network access protection |
US20100332319A1 (en) * | 2009-06-24 | 2010-12-30 | Craig Stephen Etchegoyen | Methods and Systems for Dynamic Serving of Advertisements in a Game or Virtual Reality Environment |
US9495190B2 (en) * | 2009-08-24 | 2016-11-15 | Microsoft Technology Licensing, Llc | Entropy pools for virtual machines |
US8726407B2 (en) * | 2009-10-16 | 2014-05-13 | Deviceauthority, Inc. | Authentication of computing and communications hardware |
US9967089B2 (en) * | 2011-03-15 | 2018-05-08 | Irdeto B.V. | Change-tolerant method for generating identifier for collection of assets in computing environment using error-correction code scheme |
CN103797490B (zh) * | 2011-03-15 | 2017-04-26 | 爱迪德技术有限公司 | 在使用秘密共享方案的计算环境中生成用于资产集合的标识符的容忍变化方法 |
AU2011101295B4 (en) | 2011-06-13 | 2012-08-02 | Device Authority Ltd | Hardware identity in multi-factor authentication layer |
AU2011101297B4 (en) | 2011-08-15 | 2012-06-14 | Uniloc Usa, Inc. | Remote recognition of an association between remote devices |
US9143496B2 (en) | 2013-03-13 | 2015-09-22 | Uniloc Luxembourg S.A. | Device authentication using device environment information |
US9286466B2 (en) | 2013-03-15 | 2016-03-15 | Uniloc Luxembourg S.A. | Registration and authentication of computing devices using a digital skeleton key |
US11093656B2 (en) * | 2018-11-14 | 2021-08-17 | Irdeto B.V. | Change-tolerant method of generating an identifier for a collection of assets in a computing environment |
WO2021041915A1 (en) * | 2019-08-28 | 2021-03-04 | Sparta Systems, Inc. | Method, apparatus, and computer readable medium for generating an audit trail of an electronic data record |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4796220A (en) * | 1986-12-15 | 1989-01-03 | Pride Software Development Corp. | Method of controlling the copying of software |
US5790783A (en) * | 1996-03-28 | 1998-08-04 | Advanced Micro Devices, Inc. | Method and apparatus for upgrading the software lock of microprocessor |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5113518A (en) * | 1988-06-03 | 1992-05-12 | Durst Jr Robert T | Method and system for preventing unauthorized use of software |
US5182770A (en) * | 1991-04-19 | 1993-01-26 | Geza Medveczky | System and apparatus for protecting computer software |
US5870543A (en) * | 1995-06-07 | 1999-02-09 | Digital River, Inc. | System for preventing unauthorized copying of active software |
US5826011A (en) * | 1995-12-26 | 1998-10-20 | Rainbow Technologies, Inc. | Method of metering and protecting computer software |
EP0881557B1 (en) * | 1997-05-28 | 2003-04-16 | Siemens Aktiengesellschaft | Computer system for protecting software and a method for protecting software |
US6134659A (en) * | 1998-01-07 | 2000-10-17 | Sprong; Katherine A. | Controlled usage software |
US6243468B1 (en) * | 1998-04-29 | 2001-06-05 | Microsoft Corporation | Software anti-piracy system that adapts to hardware upgrades |
US7503072B2 (en) | 1998-04-29 | 2009-03-10 | Microsoft Corporation | Hardware ID to prevent software piracy |
US20040107368A1 (en) * | 1998-06-04 | 2004-06-03 | Z4 Technologies, Inc. | Method for digital rights management including self activating/self authentication software |
CA2310032A1 (en) | 2000-06-09 | 2001-12-09 | Andre J. Brisson | Big soft brother |
JP3840399B2 (ja) | 2000-12-05 | 2006-11-01 | 健太 堀 | ソフトウエアの不正利用防止方法及びプログラム並びに記憶媒体 |
-
2003
- 2003-03-03 US US10/378,224 patent/US7296294B2/en not_active Expired - Fee Related
-
2004
- 2004-02-20 AU AU2004200683A patent/AU2004200683B2/en not_active Ceased
- 2004-02-24 ZA ZA200401493A patent/ZA200401493B/xx unknown
- 2004-02-27 TW TW093105188A patent/TWI319544B/zh not_active IP Right Cessation
- 2004-02-27 MY MYPI20040646A patent/MY134635A/en unknown
- 2004-03-01 CA CA002459217A patent/CA2459217A1/en not_active Abandoned
- 2004-03-02 MX MXPA04002024A patent/MXPA04002024A/es active IP Right Grant
- 2004-03-02 EP EP04004847A patent/EP1455257B1/en not_active Expired - Lifetime
- 2004-03-02 AT AT04004847T patent/ATE306101T1/de active
- 2004-03-02 RU RU2004106183/09A patent/RU2348968C2/ru not_active IP Right Cessation
- 2004-03-02 DK DK04004847T patent/DK1455257T3/da active
- 2004-03-02 DE DE602004000106T patent/DE602004000106T8/de active Active
- 2004-03-02 PL PL04004847T patent/PL1455257T3/pl unknown
- 2004-03-02 BR BR0400380-2A patent/BRPI0400380A/pt not_active IP Right Cessation
- 2004-03-02 ES ES04004847T patent/ES2250932T3/es not_active Expired - Lifetime
- 2004-03-03 JP JP2004059841A patent/JP4599069B2/ja not_active Expired - Fee Related
- 2004-03-03 KR KR1020040014430A patent/KR101036701B1/ko not_active IP Right Cessation
- 2004-03-03 CN CNB2004100286607A patent/CN100416445C/zh not_active Expired - Fee Related
-
2005
- 2005-02-03 HK HK05100910A patent/HK1068697A1/xx not_active IP Right Cessation
-
2007
- 2007-10-22 US US11/876,640 patent/US7647640B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4796220A (en) * | 1986-12-15 | 1989-01-03 | Pride Software Development Corp. | Method of controlling the copying of software |
US5790783A (en) * | 1996-03-28 | 1998-08-04 | Advanced Micro Devices, Inc. | Method and apparatus for upgrading the software lock of microprocessor |
Also Published As
Publication number | Publication date |
---|---|
EP1455257A1 (en) | 2004-09-08 |
RU2004106183A (ru) | 2005-08-10 |
MY134635A (en) | 2007-12-31 |
US7647640B2 (en) | 2010-01-12 |
KR101036701B1 (ko) | 2011-05-24 |
KR20040078593A (ko) | 2004-09-10 |
DE602004000106T8 (de) | 2006-06-08 |
ES2250932T3 (es) | 2006-04-16 |
CN100416445C (zh) | 2008-09-03 |
DE602004000106D1 (de) | 2006-02-16 |
US20080098482A1 (en) | 2008-04-24 |
AU2004200683B2 (en) | 2009-08-13 |
CN1542583A (zh) | 2004-11-03 |
ZA200401493B (en) | 2005-04-19 |
US20040177255A1 (en) | 2004-09-09 |
HK1068697A1 (en) | 2005-04-29 |
TW200422945A (en) | 2004-11-01 |
DK1455257T3 (da) | 2006-02-06 |
EP1455257B1 (en) | 2005-10-05 |
CA2459217A1 (en) | 2004-09-03 |
JP2004266841A (ja) | 2004-09-24 |
ATE306101T1 (de) | 2005-10-15 |
TWI319544B (en) | 2010-01-11 |
AU2004200683A1 (en) | 2004-09-23 |
MXPA04002024A (es) | 2005-02-17 |
BRPI0400380A (pt) | 2005-01-04 |
DE602004000106T2 (de) | 2006-03-23 |
RU2348968C2 (ru) | 2009-03-10 |
US7296294B2 (en) | 2007-11-13 |
PL1455257T3 (pl) | 2006-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7647640B2 (en) | System for binding secrets to a computer system having tolerance for hardware changes | |
JP4652701B2 (ja) | ハードウェア変更の許容度を有するコンピュータシステムにソフトウェアパッケージを結び付けるためのコンパクトハードウェア識別 | |
JP4652702B2 (ja) | ハードウェア変更の許容度を有するコンピュータシステムにソフトウェアパッケージを結び付けるための詳細ハードウェア識別 | |
US6961852B2 (en) | System and method for authenticating software using hidden intermediate keys | |
US20080263366A1 (en) | Self-verifying software to prevent reverse engineering and piracy | |
US20070074038A1 (en) | Method, apparatus and program storage device for providing a secure password manager | |
US8600047B2 (en) | Exponent obfuscation | |
CN112514321A (zh) | 共享秘密建立 | |
JP2010517448A (ja) | セキュアファイル暗号化 | |
KR20060033447A (ko) | Drm 시스템에 있어서 시스템 키를 공유하고 생성하는방법 및 장치 | |
US7080249B1 (en) | Code integrity verification that includes one or more cycles | |
CN111008390A (zh) | 根密钥生成保护方法、装置、固态硬盘及存储介质 | |
JP2010529718A (ja) | データセキュリティ | |
EP2541456B1 (en) | Method for protecting the digital contents of a solid state memory | |
US20060224894A1 (en) | Methods, devices and computer programs for creating ciphertext, plaintext and a cryptographic key | |
JP2009271884A (ja) | 情報処理装置及び情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070305 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100604 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100903 |
|
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: 20100921 |
|
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: 20100927 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131001 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |