JPH09185501A - ソフトウェア実行制御システム - Google Patents

ソフトウェア実行制御システム

Info

Publication number
JPH09185501A
JPH09185501A JP7343820A JP34382095A JPH09185501A JP H09185501 A JPH09185501 A JP H09185501A JP 7343820 A JP7343820 A JP 7343820A JP 34382095 A JP34382095 A JP 34382095A JP H09185501 A JPH09185501 A JP H09185501A
Authority
JP
Japan
Prior art keywords
execution
software
random number
recording medium
decryption
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.)
Pending
Application number
JP7343820A
Other languages
English (en)
Inventor
Natsume Matsuzaki
なつめ 松崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP7343820A priority Critical patent/JPH09185501A/ja
Publication of JPH09185501A publication Critical patent/JPH09185501A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 実行回数が所定の条件を満足する場合に、ソ
フト鍵で復号して得られたソフトウェアを実行し、か
つ、ソフト鍵および実行回数の不正な使用を防止するソ
フトウェア実行制御システムを提供する。 【解決手段】 実行器2は、読み出しおよび書き込みが
困難な乱数格納部3に乱数を格納し、記録媒体1は、暗
号化ソフトウェアおよび暗号化ソフト鍵/実行回数を格
納している。実行器2は、記録媒体1から暗号化ソフト
鍵/実行回数を獲得して乱数で復号し、次にソフト鍵で
暗号化ソフトウェアを復号し、実行回数が所定の条件を
満足すればソフトウェアを実行する。続いて実行器2
は、実行回数と乱数とを更新し、更新した乱数によっ
て、ソフト鍵および更新した実行回数を暗号化して記録
媒体1に格納する。ソフトウェアの実行毎に乱数の更新
を行うことで、コピーされた暗号化ソフト鍵/実行回数
を復号不能にすることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ソフトウェア実行
制御システムに関し、より特定的には、ソフトウェアの
不正使用を防止するためのソフトウェア実行制御システ
ムに関する。
【0002】
【従来の技術】近年、種々のマルチメディア機器が開発
され、ゲームや教育用のソフトウェアをはじめとする多
くの有償マルチメディアソフトウェアが販売されてい
る。ところが、それらのソフトウェアの保護は不完全で
あり、不正コピーのソフトウェアが数多く出回っている
のが現状である。ソフトウェアの不正使用を防ぐため
に、特許法や著作権法等の、法律による規制があるが、
同時に、不正にコピーされたソフトウェアを実行できな
いようにする実行制御システムが開発されている。
【0003】例えば、特開昭61−145642号公報
に、ソフトウェアの実行に必要なソフト鍵を実行器に固
有の情報で暗号化することにより、ソフトウェアの不正
使用を防止する方法が提案されている。ここで開示され
ている構成の一部を変更して第1の従来例とする。さら
に、この第1の従来例において、実行回数を制限された
ソフトウェアの不正使用を防止する方法を第2の従来例
とする。また、例えば、特公平3−32813号公報
に、ソフトウェアの実行を制御するためのコプロッセサ
を実行器に接続する方法が提示されている。この方法
を、実行回数を制限するよう構成の一部を変更して第3
の従来例とする。
【0004】(第1の従来例)図9は、第1の従来例に
係るソフトウェア実行制御システムの構成を示すブロッ
ク図である。図9において、実行器101は、あるソフ
トウェアSoftAを実行することを許可された、特定
の実行器である。実行器101は、自己に固有の秘密情
報Sx(固有鍵)を格納するための固有鍵格納部102
を内蔵する。固有鍵格納部102は、実行器101の外
部からは、読み出しおよび書き込みができないものとす
る。図では、こうした領域はハッチングをかけて表され
ている。記録媒体103は、実行器101で実行するソ
フトウェアを格納するための記録媒体である。鍵Kによ
りデータDを暗号化することをE(K,D)と表すこと
にすると、記録媒体103には、ソフト鍵Kで暗号化さ
れた暗号化ソフトE(K,SoftA)、および実行器
101の固有鍵Sxで暗号化された暗号化ソフト鍵E
(Sx,K)が格納されている。ソフトウェアSoft
Aを実行する際には、実行器101は、最初、記録媒体
103から暗号化ソフト鍵E(Sx,K)を得て、得た
暗号化ソフト鍵E(Sx,K)を、復号部104におい
て、固有鍵格納部102から獲得した固有鍵Sxで復号
してソフト鍵Kを求める。次に、実行器101は、記録
媒体103から暗号化ソフトE(K,SoftA)を得
て、復号部105において、求めたソフト鍵Kで復号し
てソフトウェアSoftAを求め、これを実行する。
【0005】本従来例では、記録媒体に格納されている
暗号化ソフトE(K,SoftA)および暗号化ソフト
鍵E(Sx,K)をコピーしても、固有鍵Sxを保有し
ている実行器以外では暗号化ソフト鍵E(Sx,K)を
復号できないため、ソフトウェアの実行はできない。ま
た、固有鍵Sxが格納されている固有鍵格納部102
は、実行器101による以外は読み出しおよび書き込み
ができない領域なので、固有鍵Sxの複製はできない。
これにより、不正にコピーされたソフトウェアの実行を
防止している。
【0006】ところで、本従来例は、初めに一度料金を
支払って実行器101用の暗号化ソフト鍵を入手すれ
ば、実行器101は、そのソフトウェアを何度でも実行
できる場合を想定している。ソフトウェアの購入形態と
しては、このいわゆる「買取り制」以外に、ソフトウェ
アの使用量に応じて料金を支払う「従量制」の形態があ
る。さらに、この「従量制」を実現する方法は大きく分
けて2つあって、その第1は、ソフトウェアを実行する
回数や有効期限などの条件を予めソフト販売者とユーザ
との間で契約し、その範囲で実行を許可する「実行制御
方法」であり、第2は、実行器におけるソフトウェアの
実行履歴に関する情報を蓄積し、後日、それに応じた料
金を支払う方法である。
【0007】本従来例の不正防止方法は、上記のような
「従量制」の形態のソフトウェアに対応する機能を備え
ていない。そこで、「従量制」の形態のソフトウェアに
ついても不正使用を防止できるようにした方法が、以下
に説明する第2の従来例である。ただし、第2の従来例
は、上記の2つの方法のうち、「実行制御方法」を採用
しており、簡単のために、ソフトウェアを実行する回数
を制限する場合に限定している。なお、後に説明する第
3の従来例ならびに第1および第2の実施形態において
も同様に、ソフトウェアの実行に関する制限を、実行回
数の制限に限定している。また、ソフト販売者とユーザ
との間で契約し、ユーザが得る情報を「実行許可情報」
と呼ぶことにし、ユーザは、この実行許可情報の範囲内
で、ソフトウェアを実行することができるものとする。
従って、以下では、「実行許可情報」とは、ソフトウェ
アを所定の回数実行する権利を意味する。
【0008】(第2の従来例)図10は、第2の従来例
に係るソフトウェア実行制御システムの構成を示すブロ
ック図である。図10において、ソフト鍵Kおよび実行
回数nを実行器101の固有鍵Sxで暗号化した暗号化
ソフト鍵/実行回数E(Sx,(K,n))が、暗号化
ソフトE(K,SoftA)と共に記録媒体103に格
納されている。ここで、実行回数とは、残りの実行可能
な回数を意味する(以下においても同様である)。ソフ
トウェアSoftAを実行する際には、実行器101
は、最初、記録媒体103から暗号化ソフト鍵/実行回
数E(Sx,(K,n))を獲得し、これを復号部10
4において固有鍵Sxで復号して、ソフト鍵Kおよび実
行回数nを求める。次に、実行器101は、復号部10
5において、ソフト鍵Kにより暗号化ソフトE(K,S
oftA)を復号して、ソフトウェアSoftAを求め
る一方、実行回数検査部106において、実行回数nが
1以上であるか否かを検査する。nが1以上であれば、
実行器101は、復号したソフトウェアSoftAを実
行する。ソフトウェアSoftAの実行後、実行器10
1は、実行回数更新部107において実行回数nを1減
少してn’(=n−1)に更新し、続いて、暗号部10
8において、このn’をソフト鍵Kと共に固有鍵Sxで
暗号化する。そして、実行器101は、この更新された
暗号化ソフト鍵/実行回数E(Sx,(K,n’))を
記録媒体103に再び格納する。
【0009】(第3の従来例)図11は、第3の従来例
に係るソフトウェア実行制御システムの構成を示すブロ
ック図である。図11において、このソフトウェア実行
システムは、読み出し専用の記録媒体110と、ソフト
ウェアを実行する実行器111と、実行器111に接続
されてソフトウェアの実行制御を行い、かつ、外部から
は情報の読み出しおよび書き込みの困難なコプロセッサ
112とを備えている。コプロセッサ112に含まれる
固有鍵格納部113に、実行器111に固有の鍵Syが
格納されており、記録媒体110には、第2の従来例と
同様に、ソフト鍵Kで暗号化された暗号化ソフトE
(K,SoftA)と、固有鍵Syで暗号化された暗号
化ソフト鍵/実行回数E(Sy,(K,n))とが格納
されている。
【0010】本従来例では、最初、ユーザは、記録媒体
110に格納された情報を、コプロセッサ112にイン
ストールする。コプロセサ112は、インストールされ
た暗号化ソフト鍵/実行回数E(Sy,(K,n))
を、復号部114において固有鍵Syで復号し、ソフト
鍵Kおよび実行回数nを求め、求めたソフト鍵Kおよび
実行回数nを、自己の内部のソフト鍵格納部115およ
び実行回数格納部116にそれぞれ格納する。次に、コ
プロセサ112は、インストールされた暗号化ソフトE
(K,SoftA)を、復号部117において求めたソ
フト鍵Kで復号し、実行回数検査部119において、実
行回数nが1以上であることを検査する。実行回数nが
1以上であれば、実行器111は、ソフトウェアSof
tAを実行する。この際、コプロセッサ112は、実行
回数更新部118において、実行回数nを1減少して
n’とし、このn’を実行回数格納部116に格納す
る。なお、このインストールにより、記録媒体110の
暗号化ソフト鍵/実行回数E(Sy,(K,n))に関
する部分は無効化され、再びインストールすることはで
きない。
【0011】
【発明が解決しようとする課題】上記第1の従来例に、
実行回数を制限する機能を加えた上記第2の従来例で
は、以下に述べる二つの問題がある。その第一は、ユー
ザが、実行回数nが0になる以前の記録媒体をコピーし
ておけば、コピーのソフトウェアを、コピーした時点で
の実行回数分だけ実行することができるという問題であ
る。コピーのコピーを実行することも可能であり、従っ
て、実質的にソフトウェアは無限回実行可能となる(以
下ではこれを第1の攻撃と呼ぶことにする)。
【0012】その第二は、実行の度に実行回数nを1ず
つ減少してn’とし、これに伴って更新した暗号化ソフ
ト鍵/実行回数E(Sx,(K,n’))を記録媒体に
書き込むが、この書き込みを妨害することにより、実行
回数の制限を実質的に無効にすることができるという問
題である。すなわち、記録媒体に格納されている実行許
可情報に含まれる実行回数nは、実行しても減少しない
(以下ではこれを第2の攻撃と呼ぶことにする)。
【0013】上記第1および第2の攻撃を防ぐため、上
記第3の従来例では、第2の従来例の実行制御に関わる
構成要素を、外部からは読み出しおよび書き込みができ
ないコプロセッサ内に設けるようにしている。ところ
が、こうした専用のコプロセッサを備えるとコストが高
くなるという問題がある。しかも、第2の従来例では、
ソフト鍵および実行回数を格納する場所は、ソフトウェ
アを格納している記録媒体であるのに対し、第3の従来
例では、第2の従来例の構成要素に加えて、ソフト鍵お
よび実行回数を格納するための記憶領域を、コプロセッ
サ内に、さらに備えることが必要である。特に、複数の
ソフトウェアを同時に扱う場合には、それぞれのソフト
ウェアについて、こうした記憶領域を確保しなければな
らないため、よりコスト高となる問題がある。
【0014】したがって、本発明の目的は、実行回数を
制限されたソフトウェアに対する上記第1および第2の
攻撃を防止することである。さらに、本発明の他の目的
は、実行回数を制限されたソフトウェアを、同時に複数
取り扱う場合にも、上記第1および第2の攻撃を防止す
ると同時に、備える必要のある読み出しおよび書き込み
が困難な記憶領域を、できるだけ小さくすることであ
る。
【0015】
【課題を解決するための手段および発明の効果】以下に
は、上記目的を達成するための本発明の構成を示すが、
後述する実施形態との対応関係を明確にするために、本
発明で採用される各構成要素には、対応する部分の参照
番号を付しておく。ただし、この参照番号は、あくまで
も理解を容易にするためおよび参考のために付されるの
であって、本発明の請求の範囲を限定的に解釈するもの
ではないことを予め指摘しておく。
【0016】第1の発明は、予め定められた実行許可情
報に従ってソフトウェアの実行を制御し、かつ当該実行
許可情報の不正な使用を防止するためのソフトウェア実
行制御システムであって、ソフトウェアおよび暗号化さ
れた実行許可情報を格納し、かつ情報の読み出しおよび
書き込みが可能な記録媒体(1)が、ソフトウェアを実
行する実行器(2)に情報伝達可能に接続され、実行器
(2)は、乱数を格納し、かつ自己の外部からは情報の
読み出しおよび書き込みが困難な乱数格納手段(3)
と、記録媒体(1)から暗号化された実行許可情報を獲
得して、乱数格納手段(3)から取得した乱数で復号す
る復号手段(4)と、記録媒体(1)からソフトウェア
を獲得して、復号手段(4)の復号によって得られた実
行許可情報に従って実行するソフト実行手段(7)と、
ソフトウェアの実行に関連して、乱数格納手段(3)に
格納された乱数を更新する乱数更新手段(9)と、復号
手段(4)の復号によって得られた実行許可情報を、ソ
フト実行手段(7)がソフトウェアを実行した後に、乱
数更新手段(9)によって更新された乱数で暗号化し
て、記録媒体(1)に格納する暗号化手段(10)とを
備えている。
【0017】上記のように、第1の発明は、ソフトウェ
アを実行する実行器と、ソフトウェアおよび暗号化され
た実行許可情報を格納している記録媒体とで構成されて
いる。最初、実行器に備えられた復号手段は、記録媒体
から暗号化された実行許可情報を獲得し、乱数格納手段
に格納された乱数で復号して実行許可情報を求める。次
に、ソフト実行手段は、求められた実行許可情報に従っ
てソフトウェアを実行する。ソフトウェアの実行に関連
して、乱数更新手段は乱数格納手段に格納された乱数を
更新する。次に、暗号化手段は、更新された実行許可情
報を、更新された乱数で暗号化して記録媒体に格納す
る。
【0018】このように、実行器の内部の、情報の読み
出しおよび書き込みが困難な乱数格納手段に乱数を格納
しておき、この乱数で実行許可情報を暗号化する。ソフ
トウェアの実行に関連して、乱数を更新することによ
り、正規の実行器以外の実行器でソフトウェアが不正に
実行されるのを防止することができる。また、第1の発
明では、読み出しおよび書き込みが困難な乱数格納手段
は、1個の乱数を格納するだけの大きさの領域を準備す
ればよく、実現するためのコストも最小にすることがで
きる。
【0019】第2の発明は、第1の発明において、ソフ
トウェアの実行にともなって、復号手段(4)の復号に
よって得られた実行許可情報を更新する実行許可情報更
新手段(8)をさらに備え、暗号化手段(10)は、実
行許可情報更新手段(8)によって更新された実行許可
情報を、乱数更新手段(9)によって更新された乱数で
暗号化して、記録媒体(2)に格納することを特徴とし
ている。
【0020】上記のように、第2の発明は、第1の発明
において、実行許可情報更新手段をさらに備えている。
実行許可情報更新手段は、ソフトウェアの実行にともな
って実行許可情報を更新し、暗号化手段は、実行許可情
報更新手段によって更新された実行許可情報を暗号化し
て記録媒体に格納する。これにより、第2の発明は、コ
ピーされた実行許可情報の不正使用を防止することがで
きる。すなわち、記録媒体に格納された、暗号化された
実行許可情報をある時点でコピーして保存しておき、1
回以上ソフトウェアを実行した後に、記録媒体に格納さ
れている暗号化された実行許可情報を、このコピーされ
た暗号化された実行許可情報に差し替える。このとき、
実行器の保有する乱数は実行に関連して更新されている
ため、実行器は、このコピーされた暗号化された実行許
可情報を復号することができない。また、第2の発明
は、更新された実行許可情報の記録媒体への書き込みを
妨害して、更新を事実上無効にする攻撃を防止すること
ができる。すなわち、実行器は、ソフトウェアの実行の
際、自己の保有する乱数を更新しているため、更新前の
暗号化された実行許可情報を、もはや復号することがで
きない。
【0021】第3の発明は、第1または第2の発明にお
いて、乱数更新手段(9)が、ソフトウェアの実行毎
に、乱数格納手段(3)に格納された乱数を更新するこ
とを特徴としている。
【0022】このように、第3の発明では、ソフト実行
手段がソフトウェアを実行するごとに、乱数更新手段は
乱数格納手段に格納された乱数を更新する。これによ
り、ソフトウェアの不正な使用の防止効果を最も大きく
することができる。
【0023】第4の発明は、第1または第2の発明にお
いて、乱数更新手段(9)が、予め決められた複数回の
ソフトウェアの実行に一度、乱数格納手段(3)に格納
された乱数を更新することを特徴としている。
【0024】このように、第4の発明では、ソフト実行
手段がソフトウェアを予め決められた複数回実行するご
とに一度、乱数更新手段は乱数格納手段に格納された乱
数を更新する。これにより、実行制御に要する処理の負
荷を軽減しながら、ソフトウェアの不正使用を効果的に
防止することができる。
【0025】第5の発明は、第1または第2の発明にお
いて、乱数更新手段(9)が、予め決められた可変の回
数のソフトウェアの実行に一度、乱数格納手段(3)に
格納された乱数を更新し、乱数の更新の間隔に関する情
報を、ソフトウェア使用者に秘密にすることを特徴とし
ている。
【0026】このように、第5の発明では、ソフト実行
手段がソフトウェアを予め決められた可変の回数実行す
るごとに一度、乱数更新手段は乱数格納手段に格納され
た乱数を更新する。これにより、乱数の更新の頻度に対
する不正防止の効果を高めることができる。
【0027】第6の発明は、第1または第2の発明にお
いて、乱数格納手段(3)は、実行器(2)に設けられ
る代わりに、記録媒体(1)に設けられることを特徴と
している。
【0028】上記のように、第6の発明では、記録媒体
が乱数格納手段を備え、実行器は、ソフトウェアを実行
する際に、この乱数格納手段に格納された乱数を取得す
る。実行器は、取得した乱数で暗号化された実行許可情
報を復号して実行許可情報を求め、求めた実行許可情報
に従ってソフトウェアを実行する。次に、実行器は、乱
数を更新し、更新した乱数を記録媒体内の乱数格納手段
に格納する。このように、記録媒体に格納された暗号化
された実行許可情報を、当該記録媒体に格納された乱数
で復号するため、ソフトウェアを実行する実行器を特定
することなく、実行制御を行うことができる。
【0029】第7の発明は、第1または第2の発明にお
いて、記録媒体(1)の代わりに、読み出し専用の第1
の記録媒体と、読み出しおよび書き込みが可能な第2の
記録媒体とが実行器(2)に接続され、第1の記録媒体
はソフトウェアを格納し、第2の記録媒体は暗号化され
た実行許可情報を格納することを特徴としている。
【0030】このように、第7の発明では、読み出し専
用の記録媒体にソフトウェアを格納し、読み出しおよび
書き込みが可能な記録媒体には暗号化された実行許可情
報を格納する。これにより、乱数の更新にともなって書
き換えが必要な実行許可情報は、読み出しおよび書き込
みが可能な記録媒体に格納するが、更新の必要がないソ
フトウェアの格納には、読み出し専用の記録媒体を用い
ることができる。
【0031】第8の発明は、第1または第2の発明にお
いて、記録媒体(1)に格納されたソフトウェアは、暗
号化されており、ソフト実行手段(7)は、記録媒体
(1)から暗号化されたソフトウェアを獲得して、復号
手段(4)の復号によって得られた実行許可情報に従っ
て復号し、復号して得たソフトウェアを実行することを
特徴としている。
【0032】上記のように、第8の発明では、記録媒体
に格納されたソフトウェアは暗号化されており、ソフト
実行手段は、復号手段の復号によって得られた実行許可
情報に従って、暗号化されたソフトウェアを復号し、復
号して得たソフトウェアを実行する。このように、ソフ
トウェアを暗号化しておくことにより、さらに安全性を
高めることができる。
【0033】第9の発明は、予め定められた実行許可情
報に従ってソフトウェアの実行を制御し、かつ当該実行
許可情報の不正な使用を防止するためのソフトウェア実
行制御システムであって、複数の、ソフトウェア、暗号
化された実行許可情報および暗号化された補助鍵を格納
し、かつ情報の読み出しおよび書き込みが可能な記録媒
体(20)が、ソフトウェアを実行する実行器(21)
に情報伝達可能に接続され、実行器(21)は、乱数を
格納し、かつ自己の外部からは情報の読み出しおよび書
き込みが困難な乱数格納手段(22)と、記録媒体(2
0)から暗号化された補助鍵を獲得して、乱数格納手段
(22)から取得した乱数で復号する第1の復号手段
(23)と、記録媒体(20)から暗号化された実行許
可情報を獲得して、第1の復号手段(23)の復号によ
って得られた補助鍵で復号する第2の復号手段(24)
と、記録媒体(20)から対応するソフトウェアを獲得
して、第2の復号手段(24)の復号によって得られた
実行許可情報に従って実行するソフト実行手段(29)
と、第2の復号手段(24)の復号によって得られた実
行許可情報を、ソフト実行手段(29)が対応するソフ
トウェアを実行した後に、第1の復号手段(23)の復
号によって得られた補助鍵で暗号化して、記録媒体(2
0)に格納する第1の暗号化手段(28)と、ソフトウ
ェアの実行に関連して、記録媒体(20)から全ての暗
号化された補助鍵を獲得して、乱数格納手段(22)に
格納された乱数で復号する第3の復号手段(30)と、
第3の復号手段(30)の復号に連携して、乱数格納手
段(22)に格納された乱数を更新する乱数更新手段
(31)と、第3の復号手段(30)の復号によって得
られた補助鍵を、乱数更新手段(31)によって更新さ
れた乱数で暗号化して、記録媒体(20)に格納する第
2の暗号化手段(32)とを備えている。
【0034】上記のように、第9の発明は、ソフトウェ
アを実行する実行器と、複数の、ソフトウェア、暗号化
された実行許可情報および暗号化された補助鍵が格納さ
れた記録媒体とで構成される。最初、実行器に備えられ
た第1の復号手段は、記録媒体から、実行すべきソフト
ウェアに対応する暗号化された補助鍵を獲得し、乱数格
納手段に格納された乱数で復号して補助鍵を求める。次
に、第2の復号手段は、記録媒体から当該ソフトウェア
に対応する暗号化された実行許可情報を獲得し、第1の
復号手段の復号によって求められた補助鍵で復号して、
実行許可情報を得る。ソフト実行手段は、得られた実行
許可情報に従って、当該ソフトウェアを実行する。続い
て、第1の暗号化手段は、第1の復号手段の復号によっ
て求められた補助鍵で、得られた実行許可情報を暗号化
して記録媒体に格納する。また、第3の復号手段は、ソ
フトウェアの実行に関連して、記録媒体から、全ての暗
号化された補助鍵を獲得し、乱数格納手段に格納された
乱数で復号して補助鍵を求める。第3の復号手段の復号
に連携して、乱数更新手段は乱数格納手段に格納された
乱数を更新する。第2の暗号化手段は、第3の復号手段
の復号によって求められた補助鍵を、更新された乱数で
暗号化して記録媒体に格納する。
【0035】このように、一つの実行器で複数のソフト
ウェアを取り扱う場合には、ソフトウェア毎の実行許可
情報をそれぞれに専用の補助鍵で暗号化し、さらに、こ
れらの補助鍵を乱数で暗号化する。そして、ソフトウェ
アの実行に関連して乱数を更新することにより、第1の
発明と同様に、正規の実行器以外の実行器でソフトウェ
アが不正に実行されるのを防止することができる。ま
た、取り扱うソフトウェアの数に関わらず、使用する乱
数は一つだけでよため、乱数を格納するための読み出し
および書き込みが困難な記憶領域は、一つの乱数を格納
するだけの大きさを備えればよい。
【0036】第10の発明は、第9の発明において、ソ
フトウェアの実行にともなって、第2の復号手段(2
4)の復号によって得られた実行許可情報を更新する実
行許可情報更新手段(27)をさらに備え、第1の暗号
化手段(28)は、実行許可情報更新手段(27)によ
って更新された実行許可情報を、第1の復号手段(2
3)の復号によって得られた補助鍵で暗号化して、記録
媒体(20)に格納することを特徴としている。
【0037】上記のように、第10の発明では、実行許
可情報更新手段が、ソフトウェアの実行にともなって実
行許可情報を更新し、第1の暗号化手段は、実行許可情
報更新手段によって更新された実行許可情報を補助鍵で
暗号化する。これにより、第10の発明は、一つの実行
器で複数のソフトウェアを取り扱う場合にも、第2の発
明と同様にして、コピーされた実行許可情報の不正な使
用、および更新された実行許可情報の記録媒体への書き
込み妨害を防止することができる。
【0038】第11の発明は、第9または第10の発明
において、第3の復号手段(30)が、ソフトウェアの
実行毎に記録媒体(20)から全ての暗号化された補助
鍵を獲得して、乱数格納手段(22)に格納された乱数
で復号することを特徴としている。
【0039】このように、第11の発明では、ソフト実
行手段がソフトウェアを実行するごとに、第3の復号手
段は記録媒体から暗号化された補助鍵を獲得して、乱数
新手段に格納された乱数で復号する。これにより、ソフ
トウェアの不正な使用の防止効果を最も大きくすること
ができる。
【0040】第12の発明は、第9または第10の発明
において、第3の復号手段(30)が、予め決められた
複数回のソフトウェアの実行に一度、記録媒体(20)
から全ての暗号化された補助鍵を獲得して、乱数格納手
段(22)に格納された乱数で復号することを特徴とし
ている。
【0041】上記のように、第12の発明では、ソフト
実行手段がソフトウェアを予め決められた複数回実行す
るごとに一度、第3の復号手段は記録媒体から全ての暗
号化された補助鍵を獲得して、乱数格納手段に格納され
た乱数で復号する。これにより、実行制御に要する処理
の負荷を軽減しながら、ソフトウェアの不正な使用を効
果的に防止することができる。
【0042】第13の発明は、第9または第10の発明
において、第3の復号手段(30)は、予め決められた
可変の回数のソフトウェアの実行に一度、記録媒体(2
0)から全ての暗号化された補助鍵を獲得して、乱数格
納手段(22)に格納された乱数で復号し、暗号化され
た補助鍵の復号の間隔に関する情報をソフトウェア使用
者に秘密にすることを特徴としている。
【0043】上記のように、第13の発明では、ソフト
実行手段がソフトウェアを予め決められた可変の数回実
行するごとに一度、第3の復号手段は記録媒体から全て
の暗号化された補助鍵を獲得して、乱数格納手段に格納
された乱数で復号する。また、補助鍵の復号に関する情
報は、ソフトウェア使用者に秘密にされる。これによ
り、乱数の更新の頻度に対する不正防止の効果を高める
ことができる。
【0044】第14の発明は、第9または第10の発明
において、乱数格納手段(22)は、実行器(21)に
設けられる代わりに、記録媒体(20)に設けられるこ
とを特徴としている。
【0045】このように、第14の発明では、記録媒体
が乱数格納手段を備え、実行器は、ソフトウェアを実行
する際に、記録媒体から乱数を取得する。実行器は、取
得した乱数で、暗号化された実行許可情報を復号して実
行許可情報を求め、求めた実行許可情報に従ってソフト
ウェアを実行する。実行器は、ソフトウェアの実行に連
携して乱数を更新し、実行後に、更新した乱数を記録媒
体内の乱数格納手段に格納する。このように、記録媒体
に格納された暗号化された実行許可情報を当該記録媒体
に格納された乱数で復号するため、ソフトウェアを実行
する実行器を特定することなく、実行制御を行うことが
できる。
【0046】第15の発明は、第9または第10の発明
において、記録媒体(20)の代わりに、読み出し専用
の第1の記録媒体と、読み出しおよび書き込みが可能な
第2の記録媒体とが実行器に接続され、第1の記録媒体
はソフトウェアを格納し、第2の記録媒体は暗号化され
た実行許可情報を格納し、乱数格納手段(22)は、実
行器(21)に設けられる代わりに、第2の記録媒体に
設けられることを特徴としている。
【0047】このように、第15の発明では、読み出し
専用の記録媒体にソフトウェアを格納し、読み出しおよ
び書き込みが可能な記録媒体には暗号化された実行許可
情報を格納する。これにより、乱数の更新にともなって
書き換えが必要な実行許可情報は、読み出しおよび書き
込みが可能な記録媒体に格納するが、更新の必要がない
ソフトウェアの格納には、読み出し専用の記録媒体を用
いることができる。また、第2の記録媒体に乱数格納手
段を設けることにより、第2の記録媒体に格納された暗
号化された実行許可情報を当該記録媒体に格納された乱
数で復号することになり、ソフトウェアを実行する実行
器を特定することなく、実行制御を行うことができる。
【0048】第16の発明は、第9または第10の発明
において、記録媒体(20)に格納されたソフトウェア
は、それぞれ暗号化されており、ソフト実行手段(2
9)は、記録媒体(20)から、対応する暗号化された
ソフトウェアを獲得して、第2の復号手段(24)の復
号によって得られた実行許可情報に従って復号し、復号
して得たソフトウェアを実行することを特徴としてい
る。
【0049】上記のように、第16の発明では、記録媒
体に格納されたソフトウェアはそれぞれ暗号化されてお
り、ソフト実行手段は、第2の復号手段の復号によって
得られた実行許可情報に従って、対応する暗号化された
ソフトウェアを復号し、復号して得たソフトウェアを実
行する。このように、ソフトウェアをそれぞれ暗号化し
ておくことにより、さらに安全性を高めることができ
る。
【0050】第17の発明は、ソフトウェアを実行する
実行器(2または21)と、当該実行器(2または2
1)に情報伝達可能に接続され、かつ情報の読み出しお
よび書き込みが可能な記録媒体(1または20)と、実
行器(2または21)の求めに応じて実行許可情報を配
布するソフト配布器(11)とからなり、ソフト配布器
(11)から配布される実行許可情報の不正な使用を防
止するためのソフトウェア実行制御システムであって、
ソフト配布器(11)は、実行許可情報を保有してお
り、記録媒体(1または20)は、ソフトウェアを格納
しており、実行器(2または21)は、自己の外部から
は情報の読み出しおよび書き込みが困難な記憶領域(3
または22)に、乱数を格納しており、実行許可情報の
配布を求める際、実行器(2または21)は、ソフト配
布器(11)に対して、格納している乱数を通知し、ソ
フト配布器(11)は、通知された乱数で実行許可情報
を暗号化して、実行器(2または21)へ配布し、実行
器(2または21)は、暗号化された実行許可情報の配
布を受けると、配布された暗号化された実行許可情報
を、格納している乱数で復号し、復号に連携して、格納
している乱数を更新することを特徴としている。
【0051】上記のように、第17の発明は、ソフトウ
ェアを実行する実行器と、実行器に接続され、かつ情報
の読み出しおよび書き込みが可能な記録媒体と、実行許
可情報を配布するソフト配布器とで構成されている。実
行器は、当該実行器の外部からは情報の読み出しおよび
書き込みが困難な記憶領域を備えており、この記憶領域
に乱数を格納している。記録媒体は、ソフトウェアを格
納しており、ソフト配布器は、実行許可情報を保有して
いる。実行器は、実行許可情報を入手するために、格納
している乱数をソフト配布器に対して通知する。ソフト
配布器は、乱数の通知を受けると、保有している実行許
可情報を、通知された乱数で暗号化して実行器に配布す
る。実行器は、最初、配布された暗号化された実行許可
情報を、格納している乱数で復号して実行許可情報を求
め、その後、格納している乱数を更新する。
【0052】このように、ソフト配布器から配布される
実行許可情報を乱数で暗号化することにより、当該乱数
を保有している実行器以外の実行器では、ソフトウェア
を実行することができない。また、乱数は配布毎に更新
されるため、実行許可情報が実行量に関する制限を含む
ものである場合に、正規の実行器で、コピーされた実行
許可情報が繰り返し使用されるような不正を防ぐことも
できる。
【0053】第18の発明は、ソフトウェアを実行する
実行器(2または21)と、当該実行器(2または2
1)に情報伝達可能に接続され、かつ情報の読み出しお
よび書き込みが可能な記録媒体(1または20)と、実
行器(2または21)の求めに応じて実行許可情報を配
布するソフト配布器(11)とからなり、実行器(2ま
たは21)が保有している実行許可情報に、ソフト配布
器(11)から追加で配布される実行許可情報を加え、
かつ実行許可情報の不正な使用を防止するためのソフト
ウェア実行制御システムであって、実行器(2または2
1)は、自己の外部からは情報の読み出しおよび書き込
みが困難な記憶領域(3または22)に、第1および第
2の乱数を格納しており、記録媒体(1または20)
は、ソフトウェアおよび第1の暗号化された実行許可情
報を格納しており、ソフト配布器(11)は、第2の実
行許可情報を保有しており、実行器(2または21)
は、第2の実行許可情報の配布を求める際に、ソフト配
布器(11)に対して第2の乱数を通知し、ソフト配布
器(11)は、通知された第2の乱数で第2の実行許可
情報を暗号化して、実行器(2または21)に配布し、
実行器(2または21)は、第2の暗号化された実行許
可情報を受け取ると、受け取った第2の暗号化された実
行許可情報を、格納している第2の乱数で復号して、第
2の実行許可情報を求め、第2の暗号化された実行許可
情報の復号に連携して、格納している第2の乱数を更新
し、記録媒体(1または20)から第1の暗号化された
実行許可情報を獲得して、第1の乱数で復号して、第1
の実行許可情報を求め、第1の暗号化された実行許可情
報の復号に連携して、格納している第1の乱数を更新
し、求めた第1および第2の実行許可情報に基づいて、
第3の実行許可情報を作成し、作成した第3の実行許可
情報を、更新した第1の乱数で暗号化して、記録媒体
(1または20)に格納することを特徴としている。
【0054】上記のように、第18の発明は、ソフトウ
ェアを実行する実行器と、実行器に接続され、かつ情報
の読み出しおよび書き込みが可能な記録媒体と、実行許
可情報を配布するソフト配布器とで構成されている。実
行器は、当該実行器の外部からは情報の読み出しおよび
書き込みが困難な記憶領域を備えており、この記憶領域
に第1および第2の乱数を格納している。記録媒体は、
ソフトウェアおよび第1の実行許可情報を格納してお
り、ソフト配布器は、第2の実行許可情報を保有してい
る。実行器は、第2の実行許可情報を入手するために、
保有している第2の乱数をソフト配布器に対して通知す
る。ソフト配布器は、第2の乱数の通知を受けると、保
有している実行許可情報を、通知された第2の乱数で暗
号化して実行器に配布する。実行器は、最初、配布され
た、第2の暗号化された実行許可情報を、保有している
第2の乱数で復号して第2の実行許可情報を求めるとと
もに、保有している第2の乱数を更新する。次に、実行
器は、記録媒体から第1の暗号化された実行許可情報を
獲得し、保有している第1の乱数で復号して第1の実行
許可情報を求めるとともに、保有している第1の乱数を
更新する。次に、実行器は、求めた第1および第2の実
行許可情報に基づいて第3の実行許可情報を作成し、作
成した第3の実行許可情報を、更新した第1の乱数で暗
号化して記録媒体に格納する。これにより、実行器は、
保有している実行許可情報にソフト配布器から入手した
他の実行許可情報加えた新しい実行許可情報を作成し、
その実行許可情報に基づいてソフトウェアを実行するこ
とができる。
【0055】第19の発明は、ソフトウェアを実行する
第1および第2の実行器(2または21)と、情報の読
み出しおよび書き込みが可能な記録媒体(1または2
0)とからなり、第1の実行器(2または21)が保有
している実行許可情報を第2の実行器(2または21)
へ譲渡し、かつ実行許可情報の不正な使用を防止するた
めのソフトウェア実行制御システムであって、第1の実
行器(2または21)は、自己の外部からは情報の読み
出しおよび書き込みが困難な記憶領域(3または22)
に、乱数を格納しており、記録媒体(1または20)
は、ソフトウェアおよび暗号化された実行許可情報を格
納しており、第1の実行器(2または21)から第2の
実行器(2または21)に対して、第1の実行器(2ま
たは21)が保有している実行許可情報を譲渡する際
に、第1の実行器(2または21)と第2の実行器(2
または21)とを情報伝達可能に接続し、第1の実行器
(2または21)は、自己の格納している乱数を第2の
実行器(2または21)に通知し、通知に連携して、自
己の格納している乱数を更新し、第2の実行器(2また
は21)は、乱数の通知を受けると、通知された乱数
を、自己の外部からは情報の読み出しおよび書き込みが
困難な記憶領域(3または22)に格納することを特徴
としている。
【0056】上記のように、第19の発明は、ソフトウ
ェアを実行する第1および第2の実行器と、実行器に情
報伝達可能に接続され、かつ情報の読み出しおよび書き
込みが可能な記録媒体とで構成されている。第1および
第2の実行器は、いずれも当該実行器の外部からは情報
の読み出しおよび書き込みが困難な記憶領域を備えてお
り、第1の実行器は、この記憶領域に乱数を格納してい
る。記録媒体は、ソフトウェアおよび暗号化された実行
許可情報を格納し、かつ第1の実行器に接続されてい
る。今、第1の実行器は、保有している乱数で、暗号化
された実行許可情報を復号して、ソフトウェアを実行す
ることができる。第1の実行器が、この実行許可情報を
第2の実行器に譲渡する際、第1の実行器は、最初、保
有している乱数を第2の実行器に通知し、次に、保有し
ている乱数を更新する。通知をうけて、第2の実行器
は、通知された乱数を自己に備わる記憶領域に格納す
る。これにより、第2の実行器は、第1の実行器に接続
されていた記録媒体を自己に接続し、記録媒体から暗号
化された実行許可情報を獲得して復号し、ソフトウェア
を実行することができる。
【0057】第20の発明は、ソフトウェアを実行する
第1および第2の実行器(2または21)と、それぞれ
の実行器(2または21)に情報伝達可能に接続され、
かつ情報の読み出しおよび書き込みが可能な第1および
第2の記録媒体(1または20)とからなり、第1の実
行器(2または21)が保有している実行許可情報の一
部を第2の実行器(2または21)に譲渡し、かつ実行
許可情報の不正な使用を防止するためのソフトウェア実
行制御システムであって、第1の実行器(2または2
1)は、自己の外部からは情報の読み出しおよび書き込
みが困難な記憶領域(3または22)に、第1および第
2の乱数を格納しており、第1の記録媒体(1または2
0)は、ソフトウェアおよび暗号化された実行許可情報
を格納しており、第2の記録媒体(1または20)は、
ソフトウェアを格納しており、第1の実行器(2または
21)から第2の実行器(2または21)に対して、第
1の実行器(2または21)が保有している実行許可情
報の一部を譲渡する際に、第1の実行器(2または2
1)と第2の実行器(2または21)とを情報伝達可能
に接続し、第1の実行器(2または21)は、第1の記
録媒体(1または20)から暗号化された実行許可情報
を獲得して、格納している第1の乱数で復号し、復号に
連携して、格納している第1の乱数を更新し、復号して
求めた実行許可情報を、第1の実行許可情報と第2の実
行許可情報とに分割し、分割して得た第1の実行許可情
報を、更新した第1の乱数で暗号化して、第1の記録媒
体(1または20)に格納し、分割して得た第2の実行
許可情報を、格納している第2の乱数で暗号化し、第2
の乱数と、第2の暗号化された実行許可情報とを、第2
の実行器(2または21)に通知し、通知に連携して、
格納している第2の乱数を更新し、第2の実行器(2ま
たは21)は、第2の乱数と第2の暗号化された実行許
可情報とを受け取ると、第2の乱数を自己の外部からは
情報の読み出しおよび書き込みが困難な記憶領域(3ま
たは22)に、第2の暗号化された実行許可情報を第2
の記録媒体(1または20)に、それぞれ格納すること
を特徴としている。
【0058】上記のように、第20の発明は、ソフトウ
ェアを実行する第1および第2の実行器と、それぞれの
実行器に情報伝達可能に接続され、かつ情報の書き込み
および読み出しが可能な第1および第2の記録媒体とで
構成されている。第1および第2の実行器は、いずれも
当該実行器の外部からは情報の読み出しおよび書き込み
が困難な記憶領域を備えており、第1の実行器は、この
記憶領域に第1および第2の乱数を格納している。第1
の記録媒体はソフトウェアおよび暗号化された実行許可
情報を格納し、第2の実行器はソフトウェアを格納して
いる。今、第1の実行器は、保有している乱数で、暗号
化された実行許可情報を復号して、ソフトウェアを実行
することができる。第1の実行器は、この実行許可情報
の一部を第2の実行器に譲渡する際、最初、第1の記録
媒体から暗号化された実行許可情報を獲得し、保有して
いる第1の乱数で復号して実行許可情報を求め、次に、
保有している第1の乱数を更新するとともに、求めた実
行許可情報を第1および第2の実行許可情報に分割す
る。次に、第1の実行器は、第1の実行許可情報を、更
新した第1の乱数で暗号化して、第1の記録媒体に格納
し、第2の実行許可情報を、保有している第2の乱数で
暗号化して、第2の乱数と共に第2の実行器に通知す
る。この際、第1の実行器は、第2の乱数を更新する。
通知を受けた第2の実行器は、第2の乱数を自己に備わ
る、情報の読み出しおよび書き込みが困難な記憶領域
へ、第2の暗号化された実行許可情報を第2の記録媒体
へ、それぞれ格納する。これにより、分割して得られ
た、第1の暗号化された実行許可情報は第1の実行器
が、第2の暗号化された実行許可情報は第2の実行器
が、それぞれ復号することができる。
【0059】第21の発明は、ソフトウェアを実行する
にはソフト鍵を必要とし、かつソフト鍵の不正な使用を
防止するためのソフトウェア実行制御システムであっ
て、暗号化されたソフトウェアおよび暗号化されたソフ
ト鍵を格納し、かつ情報の読み出しおよび書き込みが可
能な記録媒体(1)が、ソフトウェアを実行する実行器
(2)に情報伝達可能に接続され、実行器(2)は、乱
数を格納し、かつ自己の外部からは情報の読み出しおよ
び書き込みが困難な乱数格納手段(3)と、記録媒体
(1)から暗号化されたソフト鍵を獲得して、乱数格納
手段(3)から取得した乱数で復号する第1の復号手段
(4)と、記録媒体(1)から暗号化されたソフトウェ
アを獲得して、第1の復号手段(4)の復号によって得
られたソフト鍵で復号する第2の復号手段(6)と、第
2の復号手段(6)の復号によって得られたソフトウェ
アを実行するソフト実行手段(7)と、ソフトウェアの
実行に関連して、乱数格納手段(3)に格納された乱数
を更新する乱数更新手段(9)と、第1の復号手段
(4)の復号によって得られたソフト鍵を、更新された
乱数で暗号化して、記録媒体(1)に格納する暗号化手
段(10)とを備えている。
【0060】上記のように、第21の発明は、ソフトウ
ェアを実行する実行器と、暗号化されたソフトウェアお
よび暗号化されたソフト鍵を格納している記録媒体とで
構成されている。ソフトウェアを実行する際、実行器に
備わる第1の復号手段は、記録媒体から暗号化されたソ
フト鍵を獲得し、乱数格納手段に格納された乱数で復号
してソフト鍵を求める。次に、第2の復号手段は、記録
媒体から暗号化されたソフトウェアを獲得し、求められ
たソフト鍵で復号してソフトウェアを得る。次に、ソフ
ト実行手段は、得られたソフトウェアを実行する。この
際、乱数更新手段は、乱数格納手段に格納された乱数を
更新する。続いて、暗号化手段は、更新された乱数でソ
フト鍵を暗号化して、記録媒体に格納する。このよう
に、ソフト鍵を暗号化するための鍵を乱数とし、実行毎
に更新することで、鍵を第三者に知られても、暗号化さ
れたソフト鍵を復号できないようにすることができる。
【0061】第22の発明は、実行回数が所定の条件を
満足する場合に、ソフトウェアを実行し、かつ当該実行
回数の不正な使用を防止するためのソフトウェア実行制
御システムであって、ソフトウェアおよび暗号化された
実行回数を格納し、かつ情報の読み出しおよび書き込み
が可能な記録媒体(1)が、ソフトウェアを実行する実
行器(2)に情報伝達可能に接続され、実行器(2)
は、乱数を格納し、かつ自己の外部からは情報の読み出
しおよび書き込みが困難な乱数格納手段(3)と、記録
媒体(1)から暗号化された実行回数を獲得して、乱数
格納手段(3)から取得した乱数で復号する復号手段
(4)と、復号手段(4)の復号によって得られた実行
回数が、所定の条件を満足するか否かを検査し、所定の
条件を満足する場合に、ソフトウェアの実行を指示する
実行回数検査手段(5)と、実行回数検査手段(5)か
らの指示に応答して、ソフトウェアを実行するソフト実
行手段(7)と、ソフトウェアの実行にともなって、復
号によって得られた実行回数を更新する実行回数更新手
段(8)と、ソフトウェアの実行に連携して、乱数格納
手段(3)に格納された乱数を更新する乱数更新手段
(9)と、更新された実行回数情報を、更新された乱数
で暗号化して、記録媒体(1)に格納する暗号化手段
(10)とを備えている。
【0062】上記のように、第22の発明は、ソフトウ
ェアを実行する実行器と、ソフトウェアおよび暗号化さ
れた実行回数を格納している記録媒体とで構成されてい
る。最初、実行器に備えられた復号手段は、記録媒体か
ら、暗号化された実行回数を獲得して、乱数格納手段に
格納された乱数で復号して実行回数を求める。次に、実
行回数検査手段は、求められた実行回数が所定の条件を
満足するか否かを検査し、満足すれば、ソフト実行手段
に対して、ソフトウェアの実行を指示する。ソフト実行
手段は、実行回数検査手段の指示を受けてソフトウェア
を実行し、乱数更新手段は、ソフトウェアの実行にとも
なって、乱数を更新する。次に、暗号化手段は、更新さ
れた実行回数を更新された乱数で暗号化して、記録媒体
に格納する。このように、実行回数を乱数で暗号化し、
実行毎に乱数を更新することにより、コピーされた、暗
号化された実行回数を復号不能にすることができる。ま
た、更新された実行回数を記録媒体へ書き込むのを妨害
する攻撃を防止することもできる。
【0063】第23の発明は、実行回数が所定の条件を
満足する場合に、ソフト鍵で復号して得られたソフトウ
ェアを実行し、かつ実行回数およびソフト鍵の不正な使
用を防止するためのソフトウェア実行制御システムであ
って、暗号化されたソフトウェアおよび暗号化されたソ
フト鍵/実行回数を格納し、かつ情報の読み出しおよび
書き込みが可能な記録媒体(1)が、ソフトウェアを実
行する実行器(2)に情報伝達可能に接続され、実行器
(2)は、乱数を格納し、かつ自己の外部からは情報の
読み出しおよび書き込みが困難な乱数格納手段(3)
と、記録媒体(1)から暗号化されたソフト鍵/実行回
数を獲得して、乱数格納手段(3)から取得した乱数で
復号する第1の復号手段(4)と、記録媒体(1)から
暗号化されたソフトウェアを獲得して、第1の復号手段
(4)の復号によって得られたソフト鍵で復号する第2
の復号手段(6)と、第1の復号手段(4)の復号によ
って得られた実行回数が、所定の条件を満足するか否か
を検査し、所定の条件を満足する場合に、ソフトウェア
の実行を指示する実行回数検査手段(5)と、実行回数
検査手段(5)からの指示に応答して、第2の復号手段
(6)の復号によって得られたソフトウェアを実行する
ソフト実行手段(7)と、ソフトウェアの実行に伴っ
て、復号によって得られた実行回数を更新する実行回数
更新手段(8)と、ソフトウェアの実行に連携して、乱
数格納手段(3)に格納された乱数を更新する乱数更新
手段(9)と、復号によって得られたソフト鍵と更新さ
れた実行回数とを、更新された乱数で暗号化して記録媒
体(1)に格納する暗号化手段(10)とを備えてい
る。
【0064】上記のように、第23の発明は、ソフトウ
ェアを実行する実行器と、ソフトウェアおよび暗号化さ
れたソフト鍵/実行回数を格納している記録媒体とで構
成されている。最初、実行器に備わる第1の復号手段
は、記録媒体から暗号化されたソフト鍵/実行回数を獲
得し、乱数格納手段に格納された乱数で復号して、ソフ
ト鍵および実行回数を求める。次に、第2の復号手段
が、記録媒体から暗号化されたソフトウェアを獲得し
て、求められたソフト鍵で復号し、実行回数検査手段
は、求められた実行回数が所定の条件を満足するか否か
を検査し、満足する場合にソフト実行手段に対してソフ
トウェアの実行を指示する。ソフト実行手段は、実行回
数検査手段の指示を受けて、ソフトウェアを実行する。
ソフトウェアの実行に伴って、実行回数更新手段が実行
回数を更新し、乱数更新手段は乱数格納手段に格納され
た乱数を更新する。続いて、暗号化手段は、ソフト鍵お
よび更新された実行回数を、更新された乱数で暗号化し
て記録媒体に格納する。
【0065】このように、実行回数を乱数で暗号化して
実行毎に乱数を更新することにより、コピーされた、暗
号化された実行回数を復号することができないように
し、また、更新された実行回数を記録媒体に書き込む書
き込み妨害する攻撃を防止することができる。また、ソ
フトウェアをソフト鍵で暗号化し、さらにソフト鍵を乱
数で暗号化して、ソフトウェアの実行毎に乱数を更新す
ることで、ソフト鍵が第三者に知られることによるソフ
トウェアの不正な使用を防止することもできる。
【0066】第24の発明は、実行回数が所定の条件を
満足する場合に、ソフト鍵で復号して得られたソフトウ
ェアを実行し、かつソフト鍵および実行回数の不正な使
用を防止するためのソフトウェア実行制御システムであ
って、複数の、暗号化されたソフトウェア、暗号化され
たソフト鍵/実行回数および暗号化された補助鍵が格納
され、かつ情報の読み出しおよび書き込みが可能な記録
媒体(20)が、ソフトウェアを実行する実行器(2
1)に情報伝達可能に接続され、実行器(21)は、乱
数を格納し、かつ自己の外部からは情報の読み出しおよ
び書き込みが困難な乱数格納手段(22)と、記録媒体
(20)から、当該ソフトウェアに専用の暗号化された
補助鍵を獲得して、乱数格納手段(22)から取得した
乱数で復号する第1の復号手段(23)と、記録媒体
(20)から、当該ソフトウェアに専用の暗号化された
ソフト鍵/実行回数を獲得して、第1の復号手段(2
3)の復号によって得られた補助鍵で復号する第2の復
号手段(24)と、記録媒体(20)から暗号化された
ソフトウェアを獲得して、第2の復号手段(24)の復
号によって得られたソフト鍵で復号する第3の復号手段
(25)と、第2の復号手段(24)の復号によって得
られた実行回数が、所定の条件を満足するか否かを検査
し、所定の条件を満足する場合に、当該ソフトウェアの
実行を指示する実行回数検査手段(26)と、実行回数
検査手段(26)からの指示に応答して、第3の復号手
段(25)の復号によって得られたソフトウェアを実行
するソフト実行手段(29)とソフトウェアの実行に伴
って、第2の復号手段(24)の復号によって得られた
実行回数を更新する実行回数更新手段(27)と、第2
の復号手段(24)の復号によって得られたソフト鍵
と、実行回数更新手段(27)によって更新された実行
回数とを、第1の復号手段(23)の復号によって得ら
れた補助鍵で暗号化して、記録媒体(20)に格納する
第1の暗号化手段(28)と、所定のタイミングで、記
録媒体(20)から全ての暗号化された補助鍵を獲得し
て、乱数格納手段(22)から取得した乱数で復号する
第4の復号手段(30)と、第4の復号手段(30)の
復号に連携して、乱数格納手段(22)に格納された乱
数を更新する乱数更新手段(31)と、第4の復号手段
(30)の復号によって得られた補助鍵を、乱数更新手
段(31)によって更新された乱数で暗号化して、記録
媒体(20)に格納する第2の暗号化手段(32)とを
備えている。
【0067】上記のように、第24の発明は、ソフトウ
ェアを実行する実行器と、複数の、ソフトウェア、暗号
化されたソフト鍵/実行回数および暗号化された補助鍵
を格納している記録媒体とで構成されている。実行器に
備わる第1の復号手段は、最初、記録媒体から当該ソフ
トウェアに対応する暗号化された補助鍵を獲得し、乱数
格納手段に格納された乱数で復号して、補助鍵を求め
る。次に、第2の復号手段は、記録媒体から、暗号化さ
れたソフト鍵実行回数を獲得し、求められた補助鍵で復
号してソフト鍵および実行回数を得る。次に、第3の復
号手段が、記録媒体から暗号化されたソフトウェアを獲
得し、得られたソフト鍵で復号してソフトウェアを求
め、実行回数検査手段は、求められた実行回数が所定の
条件を満足するか否かを検査し、満足する場合にソフト
実行手段に対してソフトウェアの実行を指示する。ソフ
ト実行手段は、実行回数検査手段の指示を受けて、求め
られたソフトウェアを実行する。ソフトウェアの実行に
伴って、実行回数更新手段は実行回数を更新する。続い
て、第1の暗号化手段は、更新された実行回数を、求め
られた補助鍵で暗号化して記録媒体に格納する。第4の
復号手段は、所定のタイミングで、記録媒体から全ての
暗号化された補助鍵を獲得して、乱数格納手段に格納さ
れた乱数で復号して補助鍵を求める。乱数更新手段は、
第4の復号手段の復号に連携して、乱数格納手段に格納
された乱数を更新する。第2の暗号化手段は、第4の復
号手段の復号によって得られた補助鍵を、更新された乱
数で暗号化して記録媒体に格納する。
【0068】このように、複数のソフトウェアを扱う場
合には、それぞれのソフト鍵および実行回数を専用の補
助鍵で暗号化し、さらに、これらの補助鍵を乱数で暗号
化する。そして、所定のタイミングで乱数を更新するこ
とにより、コピーされた、暗号化された実行回数を復号
することができないようにし、また、更新された実行回
数を記録媒体に書き込むのを妨害する攻撃を防ぐことが
できる。また、ソフト鍵が第三者に知られることによる
ソフトウェアの不正な使用を防止することもできる。さ
らに、実行器の外部からの情報の読み出しおよび書き込
みが困難な記憶領域は、ソフトウェアの数に関わらず、
1個の乱数を格納する大きさの領域があればよく、コス
トを低く押さえることもできる。
【0069】
【発明の実施の形態】
(第1の実施形態)図1は、本発明の第1の実施形態に
係るソフトウェア実行制御システムの構成を示すブロッ
ク図である。図1において、本システムは、ソフトウェ
アを格納する記録媒体1と、ソフトウェアを実行する実
行器2とを備えている。実行器2は、乱数格納部3と、
第1の復号部4と、実行回数検査部5と、第2の復号部
6と、ソフト実行部7と、実行回数更新部8と、乱数更
新部9と、暗号部10とを含む。
【0070】図2は、図1のソフトウェア実行制御シス
テムの動作を示すフローチャートである。以下には、図
2を用いて、図1に示すシステムの動作を説明する。
今、乱数格納部3には、乱数Rが格納されており、記録
媒体1には、あるソフトウェアSoftAをソフト鍵K
で暗号化した暗号化ソフトE(K,SoftA)と、ソ
フト鍵Kおよび実行回数nを乱数Rで暗号化した暗号化
ソフト鍵/実行回数E(R,(K,n))とが格納され
ている。記録媒体1を実行器2に接続して、ソフトウェ
アSoftAを実行する際に、実行器2は、記録媒体1
から暗号化ソフトE(K,SoftA)と暗号化ソフト
鍵/実行回数E(R,(K,n))とを獲得する(ステ
ップS101)。次に、実行器2内の第1の復号部4
は、暗号化ソフト鍵/実行回数E(R,(K,n))を
乱数Rで復号して、ソフト鍵Kおよび実行回数nを求め
る(ステップS102)。次に、実行回数検査部5は、
求めた実行回数nが1以上であるか否かを検査し(ステ
ップS103)、nが1以上であればソフト実行部7に
対して、実行OKを通知し、nが0であれば、システム
の動作を終了させる。nが1以上の場合、第2の復号部
6は、暗号化ソフトE(K,SoftA)を、求めたソ
フト鍵Kで復号してソフトウェアSoftAを求める
(ステップS104)。次に、ソフト実行部7は、実行
回数検査部5から実行OKの通知を受けて、求めたソフ
トウェアSoftAを実行する(ステップS105)。
ソフトウェアSoftAを実行すると、実行回数更新部
8は、実行回数nを1減少してn’(=n−1)に更新
し(ステップS106)、乱数更新部9は、乱数格納部
3の乱数RをR’に更新する(ステップS107)。次
に、暗号部10は、更新された乱数R’で、ソフト鍵K
および実行回数n’を暗号化し(ステップS108)、
この更新された暗号化鍵/実行回数E(R’,(K,
n’))を記録媒体1に再び格納する(ステップS10
9)。
【0071】ここで、記録媒体1および実行器2は、以
下の条件を満たしているものとする。 (1)記録媒体は、情報の読み出しおよび書き込みがで
きる。 (2)記録媒体と実行器との間では、情報の読み出しお
よび書き込みができる。 (3)実行器内の、動作中の各部の間を移動する情報
は、実行器の外部からは、読み出しおよび書き込みはで
きない。また、各部で動作中に求められ、利用される情
報は、実行器の内部のRAMに格納して利用し、動作後
には消去される。 (4)実行器内の乱数格納部は、実行制御を行なう特別
なシステムプログラム以外からは、情報の読み出しおよ
び書き込みはできない。
【0072】このとき、図1のソフトウェア実行制御シ
ステムは、次のようにして第1の攻撃を防ぐことができ
る。実行回数nが0になる前に、記録媒体1をコピーし
ておく。コピーの記録媒体には、暗号化ソフトE(K,
SoftA)、およびコピーした時点での暗号化ソフト
鍵/実行回数E(R,(K,n))が格納されている。
この暗号化ソフト鍵/実行回数E(R,(K,n))を
復号するには、暗号鍵である乱数Rが必要である。記録
媒体1に格納された実行許可情報の実行回数nが少なく
なった時点で、コピーに差し替えて再び実行を試みて
も、実行器2内の乱数は、すでにRとは異なる値に更新
されており、コピーに格納されている暗号化ソフト鍵/
実行回数E(R,(K,n))を復号してソフト鍵Kを
得ることができず、従って、ソフトウェアSoftAを
実行することができない。
【0073】同時に、図1のソフトウェア実行制御シス
テムは、次のようにして第2の攻撃を防ぐことができ
る。更新された暗号化ソフト鍵/実行回数E(R’,
(K,n’))の、記録媒体1への書き込みを、記録媒
体と実行器との間で妨害する。実行器2内の乱数はRか
らR’に更新されているのにも関わらず、記録媒体1に
は更新前の乱数Rで暗号化された暗号化ソフト鍵/実行
回数E(R,(K,n))が格納されたままになってい
る。このため、次に実行を試みても、乱数R’では暗号
化ソフト鍵/実行回数E(R,(K,n))を復号する
ことができず、従って、ソフトウェアSoftAを実行
することができない。
【0074】なお、本実施形態では、実行可能な回数を
実行制御のためのパラメータとし、これを1ずつ減少し
ていく構成にしたが、実行の上限回数を設定しておき、
実行した回数をパラメータとして、これを1づつ増加し
ていく構成にしてもよい。あるいは、実行時間で制御す
ることもできる。このように、実行制御のためのパラメ
ータは、実行の分量を表すことのできる量であればよ
い。また、ソフトウェアの実行回数だけでなく、1つの
ソフトウェアの中で、項目を限定して、実行回数を制限
するよう拡張することもできる。もちろん、コンピュー
タソフトウェアだけでなく、ゲームやその他さまざまな
マルチメディアソフトウェアを対象としてもよい。
【0075】ところで、本実施形態では、ソフトの実行
毎に乱数を更新しているが、数回の実行毎に乱数を更新
するようにすれば、実行制御に要する処理の負荷を軽減
することができる。この場合には、同じ乱数Rを使用し
ている間は上記第1および第2の攻撃が可能であるが、
乱数の更新の頻度を適切に設定することにより、これら
を有効に防止することができる。
【0076】また、本実施形態において、乱数Rの更新
の間隔をまちまちにして、かつ、ユーザに秘密にするこ
とにより、更新の頻度に対する第1および第2の攻撃の
防止効果を高めることができる。
【0077】さらにまた、本実施形態において、乱数を
格納する記憶領域を、実行器2にではなく、記録媒体1
に備えることにより、実行器を限定することなく、ソフ
トウェアの実行回数だけを制御するようにすることもで
きる。
【0078】あるいは、本実施形態において、記録媒体
1に代えて、読み出し専用の第1の記録媒体と、読み出
しおよび書き込みが可能な第2の記録媒体とを備えるよ
うにし、暗号化ソフトは第1の記録媒体に、暗号化ソフ
ト鍵/実行回数は第2の記録媒体に、それぞれ格納する
ようにすることもできる。この際には、例えば、第1の
記録媒体はCD−ROM、第2の記録媒体は拡張メモリ
を用いればよい。
【0079】図3は、本実施形態に係るソフトウェア実
行制御システムの、実行器がソフト配布器からソフトウ
ェアの配布を受ける際の構成を示すブロック図である。
図3において、本システムは、記録媒体1と、実行器2
と、ソフト配布器11とを備えている。ソフト配布器1
1は、暗号部12を備えており、実行器2は、図1にお
けるものに、さらに、第3の復号部13が追加されてい
るが、ここでは、必要な部分だけが表示されている。
【0080】図4は、図3に示すシステムの動作を示す
フローチャートである。図4を用いて、図3に示すシス
テムの動作を説明する。実行器2内の乱数格納部3に
は、実行制御のための乱数Rに加えて、実行許可情報の
移動を制御するための乱数rが格納されている。実行器
2は、ソフトウェアSoftAの配布を注文する際に、
ソフト配布器11に対して乱数rを通知する(ステップ
S201)。乱数rを通知されたソフト配布器11は、
最初、暗号部12において、ソフト鍵Kおよび実行回数
nをこの乱数rで暗号化する。次に、ソフト配布器11
は、この暗号化ソフト鍵/実行回数E(r,(K,
n))と、暗号化ソフトE(K,SoftA)とを、実
行器2に対して、記録媒体1に格納して送付、または通
信回線を介して送信する(ステップS202)。これら
を受け取った実行器2は、まず、第3の復号部13にお
いて、乱数格納部3に格納した乱数rで暗号化ソフト鍵
/実行回数E(r,(K,n))を復号して、ソフト鍵
Kおよび実行回数nを得る(ステップS203)。この
際、乱数更新部9は、乱数格納部3に格納された乱数r
をr’に更新する(ステップS204)。続いて、実行
器2は、暗号部10において、乱数格納部3に格納され
た乱数Rで、ソフト鍵Kおよび実行回数nを暗号化し
(ステップS205)、この暗号化ソフト鍵/実行回数
E(R,(K,n))を記録媒体1に格納する(ステッ
プS206)。
【0081】上記のようにして配布されたソフトウェア
は、乱数rを保有しているもの以外の実行器では、実行
することができない。また、暗号鍵として乱数rを用い
ると、ソフト購入毎に乱数rが更新されるため、一度入
手した実行許可情報をコピーして繰り返し使用されるの
を防ぐことができる。
【0082】なお、上記の手順では、実行器2はソフト
配布器11に乱数rをそのまま通知しているが、乱数r
を暗号化することでより一層安全性を高めることができ
る。また、認証や署名の情報を付加すると、さらに安全
性が向上する。
【0083】ところで、第1の実施形態において、複数
の実行器の間で、あるいはソフト配布器と実行器との間
で、実行許可情報の移動を伴う次の3つの場合について
のソフトウェア実行制御方法を説明する。 (1)ソフトウェアSoftAをN回実行することので
きる実行許可情報を、追加で購入する場合。 実行器2は、乱数Rおよびrを内部に保有している。ま
ず、実行器2は、乱数rをソフト配布器11に通知す
る。ソフト配布器11は、ソフト鍵Kおよび実行回数N
を、通知された乱数rで暗号化し、実行器2に送付す
る。実行器2は、送付された暗号化ソフト鍵/実行回数
E(r,(K,N))を乱数rで復号してソフト鍵Kお
よび実行回数Nを得ると同時に、自己の内部の乱数rを
r’に更新する。次に、実行器2は、記録媒体1から、
先に購入した暗号化ソフト鍵/実行回数E(R,(K,
n))を獲得し、乱数Rで復号してソフト鍵Kおよび実
行回数nを求めるとともに、乱数RをR’に更新する。
続いて、実行器2は、nにNを加算した実行回数n+N
とソフト鍵Kとを、更新した乱数R’で暗号化し、この
暗号化ソフト鍵/実行回数E(R’,(K,n+N))
を記録媒体1に格納する。このようにして、実行器2
は、更にn回実行する許可を得る。
【0084】(2)第1の実行器が所有する実行許可情
報を、第2の実行器に譲渡する場合。 内部に乱数Rを保有している第1の実行器に、第2の実
行器を接続する。第1の実行器は、乱数Rを第2の実行
器に通知すると同時に、自己の保有する乱数RをR’に
更新する。第2の実行器は、第1の実行器から通知され
た乱数Rを内部に格納する。第2の実行器は、記録媒体
に格納された暗号化ソフト鍵/実行回数E(R,(K,
n))を復号して、ソフトウェアSoftAを実行する
ことができる。このようにして、第1の実行器の保有し
ていた実行許可情報は、第2の実行器に譲渡され、第1
の実行器は実行する権利を失う。
【0085】(3)第1の実行器が所有する実行許可情
報を分割して、その一部を第2の実行器に譲渡する場
合。 第1の実行器は、内部に、乱数Rおよびrを保有してい
る。第1の実行器は、記録媒体から獲得した実行許可情
報を乱数Rで復号してソフト鍵Kおよび実行回数nを得
ると、nをn1とn2とに分割する。この際、第1の実
行器は、乱数RをR’に更新する。次に、ソフト鍵Kお
よび実行回数n1を、更新された乱数R’により暗号化
して、この暗号化ソフト鍵/実行回数E(R’,(K,
n1))を、自己と接続された記録媒体に格納する。同
時に、第1の実行器は、乱数rでソフト鍵Kおよび実行
回数n2を暗号化し、この暗号化ソフト鍵/実行回数E
(r,(K,n2))と乱数rとを第2の実行器に通知
した後、自己の内部の乱数rをr’に更新する。第2の
実行器は、これらを受け取ると、乱数rを自己の内部
に、暗号化ソフト鍵/実行回数E(r,(K,n2))
を自己に接続された記録媒体に、それぞれ格納する。こ
のようにして、第1の実行器の保有していた、ソフトウ
ェアSoftAをn回実行することのできる実行許可情
報のうち、n2回分の実行許可情報が第2の実行器に譲
渡され、第1の実行器には、n1回分の実行許可情報が
残される。
【0086】なお、本実施形態では、ソフトウェアをソ
フト鍵で暗号化する構成になっているが、ソフトウェア
を暗号化しない構成でも、目的を達成することができ
る。
【0087】ところで、本実施形態のソフトウェア実行
制御システムは、一つの実行器につき一つのソフトウェ
アを扱っている。本システムにおいて、一つの実行器で
複数のソフトを扱えるようにするには、実行制御のため
の乱数をソフト毎に用意し、実行器の内部に格納してお
く必要がある。従って、実行器に、複数の乱数を格納可
能な大きさの記憶領域を設けることが必要である。そこ
で、次に述べる第2の実施形態では、一つの実行器で同
時に複数のソフトを扱う場合にも、当該実行器に、1つ
の乱数だけを格納可能な記憶領域を設ければよいような
ソフトウェア実行制御システムを提供する。
【0088】(第2の実施形態)図5は、本発明の第2
の実施形態に係るソフトウェア実行制御システムの構成
を示すブロック図である。図5において、本システム
は、ソフトウェアを格納する記録媒体20と、ソフトウ
ェアを実行する実行器21とを備えている。実行器21
は、乱数格納部22と、第1の復号部23と、第2の復
号部24と、第3の復号部25と、実行回数検査部26
と、実行回数更新部27と、第1の暗号部28と、ソフ
ト実行部29とを含む。
【0089】図6は、図5のソフトウェア実行制御シス
テムの動作を示すフローチャートである。図6を用い
て、図5に示すシステムの動作を説明する。記録媒体2
0には、ソフトウェアSoftAに関する情報として、
暗号化ソフトE(KA,SoftA)と、暗号化ソフト
鍵/実行回数E(RA,(KA,nA))と、暗号化補
助鍵E(R,RA)とが、ソフトウェアSoftBに関
する情報として、暗号化ソフトE(KB,SoftB)
と、暗号化ソフト鍵/実行回数E(RB,(KB,n
B))と、暗号化補助鍵E(R,RB)とが、格納され
ている。ここで、RAおよびRBは、それぞれソフトウ
ェアSoftAおよびソフトウェアSoftBに専用の
補助鍵であり、E(R,RA)およびE(R,RB)
は、これらをそれぞれ乱数Rで暗号化したものである。
【0090】乱数格納部22は、図1における乱数格納
部3と同様に、読み出しおよび書き込みの困難な領域で
あり、乱数Rを格納している。実行器21は、記録媒体
20からソフトウェアSoftAに関する情報を獲得す
ると(ステップS301)、第1の復号部23におい
て、乱数Rによって、暗号化補助鍵E(R,RA)を復
号し、補助鍵RAを得る(ステップS302)。続い
て、実行器21は、第2の復号部24において、この補
助鍵RAにより、暗号化ソフト鍵/実行回数E(RA,
(KA,nA))を復号し、ソフト鍵KAおよび実行回
数nAを得る(ステップS303)。さらに、実行器2
1は、第3の復号部25において、ソフト鍵KAによ
り、暗号化ソフトE(KA,SoftA)を復号し、ソ
フトウェアSoftAを得る(ステップS304)。同
時に、実行器21は、実行回数検査部26において、実
行回数nAが1以上であるか否かを検査し(ステップS
305)、nAが1以上であればソフト実行部29に対
して実行OKを通知し、この通知を受けて、ソフト実行
部29はソフトウェアSoftAを実行する(ステップ
S306)。この後、実行回数更新部27は、実行回数
nAを1減少してnA’(=nA−1)に更新する(ス
テップS307)。実行回数nA’は、第1の暗号部2
8において、ソフト鍵KAと共に補助鍵RAで暗号化さ
れ(ステップS308)、この暗号化ソフト鍵/実行回
数E(RA,(KA,nA’))が、記録媒体20に再
び格納される(ステップS309)。ソフトウェアSo
ftBについても、同様にして実行される。
【0091】図7は、本実施形態において、所定のタイ
ミングで乱数Rを更新する際の、ソフトウェア実行シス
テムの構成を示すブロック図である。図7において、記
録媒体20は、図5におけるものと同様の情報を格納し
ている。実行器21は、図5におけるものに加えて、第
4の復号部30と、乱数更新部31と、第2の暗号部3
2とを更に含むが、図には必要な部分だけが表示されて
いる。
【0092】図8は、図7に示すシステムの、所定のタ
イミングで乱数Rを更新する際の動作を示すフローチャ
ートである。図8を用いて、図7に示すシステムの動作
を説明する。実行器21は、記録媒体20から暗号化補
助鍵E(R,RA)およびB(R,RB)を獲得すると
(ステップS401)、第4の復号部30において乱数
Rで復号して、補助鍵RAおよびRBを得る(ステップ
S402)。この際、実行器21は、乱数更新部31に
おいて、乱数格納部22に格納された乱数RをR’に更
新する(ステップS403)。続いて、実行器21は、
第2の暗号部32において、乱数R’で補助鍵RAおよ
びRBをそれぞれ暗号化し(ステップS404)、これ
らの暗号化補助鍵E(R’,RA)およびE(R’,R
B)を記録媒体20に再び格納する(ステップS40
5)。
【0093】このように、第2の実施形態では、ソフト
鍵および実行回数を暗号化するための各ソフトウェア毎
の補助鍵と、それらの補助鍵を束ねてそれぞれ暗号化す
るための乱数Rとを用意して、乱数格納部には乱数Rだ
けを格納するようにしている。このため、読み出しおよ
び書き込みのできない領域の大きさを最小にすることが
できて、実現コストも低く抑えることができる。
【0094】なお、乱数Rの更新は、できるだけ頻繁に
行なうほうが、先に述べた第1および第2の攻撃に対す
る防御効果は大きいが、記録媒体に格納されているソフ
トウェアの数が多い場合には、特に処理の負荷が大きく
なってしまう。そのため、更新の頻度は、トレードオフ
を考慮して決定する。また、第1の実施形態でも述べた
通り、更新の間隔を可変にし、かつ秘密にすることも、
安全性を高める上で有効である。
【0095】また、本実施形態では、ソフトウェアをソ
フト鍵で暗号化する構成になっているが、ソフトウェア
を暗号化しない構成でも、目的を達成することができ
る。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るソフトウェア実
行制御システムの、ソフトウェアを実行する際の構成を
示すブロック図である。
【図2】図1のソフトウェア実行制御システムの動作を
示すフローチャートである。
【図3】本発明の第1の実施形態に係るソフトウェア実
行制御システムの、実行器がソフト配布器からソフトウ
ェアの配布を受ける際の構成を示すブロック図である。
【図4】図3のソフトウェア実行制御システムの動作を
示すフローチャートである。
【図5】本発明の第2の実施形態に係るソフトウェア実
行制御システムの、ソフトウェアを実行する際の構成を
示すブロック図である。
【図6】図5のソフトウェア実行制御システムの動作を
示すフローチャートである。
【図7】本発明の第2の実施形態に係るソフトウェア実
行制御システムの、乱数を更新する際の構成を示すブロ
ック図である。
【図8】図7のソフトウェア実行制御システムの動作を
示すフローチャートである。
【図9】第1の従来例に係るソフトウェア実行制御シス
テムの構成を示すブロック図である。
【図10】第2の従来例に係るソフトウェア実行制御シ
ステムの構成を示すブロック図である。
【図11】第3の従来例に係るソフトウェア実行制御シ
ステムの構成を示すブロック図である。
【符号の説明】
1、20、103、110 記録媒体 2、21、101、111 実行器 3、22 乱数格納部 4、23 第1の復号部 5、26、106、119 実行回数検査部 6、24 第2の復号部 7、29 ソフト実行部 8、27、107、118 実行回数更新部 9、31 乱数更新部 10、108 暗号部 11 ソフト配布器 13、25 第3の復号部 28 第1の暗号部 30 第4の復号部 32 第2の暗号部 102、113 固有鍵格納部 104、105、114、117 復号部 112 コプロセッサ 115 ソフト鍵格納部 116 実行回数格納部

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】 予め定められた実行許可情報に従ってソ
    フトウェアの実行を制御し、かつ当該実行許可情報の不
    正な使用を防止するためのソフトウェア実行制御システ
    ムであって、 ソフトウェアおよび暗号化された実行許可情報を格納
    し、かつ情報の読み出しおよび書き込みが可能な記録媒
    体が、ソフトウェアを実行する実行器に情報伝達可能に
    接続され、 前記実行器は、 乱数を格納し、かつ自己の外部からは情報の読み出しお
    よび書き込みが困難な乱数格納手段と、 前記記録媒体から暗号化された実行許可情報を獲得し
    て、前記乱数格納手段から取得した乱数で復号する復号
    手段と、 前記記録媒体からソフトウェアを獲得して、前記復号手
    段の復号によって得られた実行許可情報に従って実行す
    るソフト実行手段と、 ソフトウェアの実行に関連して、前記乱数格納手段に格
    納された乱数を更新する乱数更新手段と、 前記復号手段の復号によって得られた実行許可情報を、
    前記ソフト実行手段がソフトウェアを実行した後に、前
    記乱数更新手段によって更新された乱数で暗号化して、
    前記記録媒体に格納する暗号化手段とを備える、ソフト
    ウェア実行制御システム。
  2. 【請求項2】 ソフトウェアの実行にともなって、前記
    復号手段の復号によって得られた実行許可情報を更新す
    る実行許可情報更新手段をさらに備え、 前記暗号化手段は、前記実行許可情報更新手段によって
    更新された実行許可情報を、前記乱数更新手段によって
    更新された乱数で暗号化して、前記記録媒体に格納する
    ことを特徴とする、請求項1に記載のソフトウェア実行
    制御システム。
  3. 【請求項3】 前記乱数更新手段は、ソフトウェアの実
    行毎に、前記乱数格納手段に格納された乱数を更新する
    ことを特徴とする、請求項1または2に記載のソフトウ
    ェア実行制御システム。
  4. 【請求項4】 前記乱数更新手段は、予め決められた複
    数回のソフトウェアの実行に一度、前記乱数格納手段に
    格納された乱数を更新することを特徴とする、請求項1
    または2に記載のソフトウェア実行制御システム。
  5. 【請求項5】 前記乱数更新手段は、予め決められた可
    変の回数のソフトウェアの実行に一度、前記乱数格納手
    段に格納された乱数を更新し、 乱数の更新の間隔に関する情報を、ソフトウェア使用者
    に秘密にすることを特徴とする、請求項1または2に記
    載のソフトウェア実行制御システム。
  6. 【請求項6】 前記乱数格納手段は、前記実行器に設け
    られる代わりに、前記記録媒体に設けられることを特徴
    とする、請求項1または2に記載のソフトウェア実行制
    御システム。
  7. 【請求項7】 前記記録媒体の代わりに、読み出し専用
    の第1の記録媒体と、読み出しおよび書き込みが可能な
    第2の記録媒体とが前記実行器に接続され、 前記第1の記録媒体はソフトウェアを格納し、前記第2
    の記録媒体は暗号化された実行許可情報を格納すること
    を特徴とする、請求項1または2に記載のソフトウェア
    実行制御システム。
  8. 【請求項8】 前記記録媒体に格納されたソフトウェア
    は、暗号化されており、 前記ソフト実行手段は、前記記録媒体から暗号化された
    ソフトウェアを獲得して、前記復号手段の復号によって
    得られた実行許可情報に従って復号し、復号して得たソ
    フトウェアを実行することを特徴とする、請求項1また
    は2に記載のソフトウェア実行制御システム。
  9. 【請求項9】 予め定められた実行許可情報に従ってソ
    フトウェアの実行を制御し、かつ当該実行許可情報の不
    正な使用を防止するためのソフトウェア実行制御システ
    ムであって、 複数の、ソフトウェア、暗号化された実行許可情報およ
    び暗号化された補助鍵を格納し、かつ情報の読み出しお
    よび書き込みが可能な記録媒体が、ソフトウェアを実行
    する実行器に情報伝達可能に接続され、 前記実行器は、 乱数を格納し、かつ自己の外部からは情報の読み出しお
    よび書き込みが困難な乱数格納手段と、 前記記録媒体から暗号化された補助鍵を獲得して、前記
    乱数格納手段から取得した乱数で復号する第1の復号手
    段と、 前記記録媒体から暗号化された実行許可情報を獲得し
    て、前記第1の復号手段の復号によって得られた補助鍵
    で復号する第2の復号手段と、 前記記録媒体から対応するソフトウェアを獲得して、前
    記第2の復号手段の復号によって得られた実行許可情報
    に従って実行するソフト実行手段と、 前記第2の復号手段の復号によって得られた実行許可情
    報を、前記ソフト実行手段がソフトウェアを実行した後
    に、前記第1の復号手段の復号によって得られた補助鍵
    で暗号化して、前記記録媒体に格納する第1の暗号化手
    段と、 ソフトウェアの実行に関連して、前記記録媒体から全て
    の暗号化された補助鍵を獲得して、前記乱数格納手段に
    格納された乱数で復号する第3の復号手段と、 前記第3の復号手段の復号に連携して、前記乱数格納手
    段に格納された乱数を更新する乱数更新手段と、 前記第3の復号手段の復号によって得られた補助鍵を、
    前記乱数更新手段によって更新された乱数で暗号化し
    て、前記記録媒体に格納する第2の暗号化手段とを備え
    る、ソフトウェア実行制御システム。
  10. 【請求項10】 ソフトウェアの実行にともなって、前
    記第2の復号手段の復号によって得られた実行許可情報
    を更新する実行許可情報更新手段をさらに備え、 前記第1の暗号化手段は、前記実行許可情報更新手段に
    よって更新された実行許可情報を、前記第1の復号手段
    の復号によって得られた補助鍵で暗号化して、前記記録
    媒体に格納することを特徴とする、請求項9に記載のソ
    フトウェア実行制御システム。
  11. 【請求項11】 前記第3の復号手段は、ソフトウェア
    の実行毎に、前記記録媒体から全ての暗号化された補助
    鍵を獲得して、前記乱数格納手段に格納された乱数で復
    号することを特徴とする、請求項9または10に記載の
    ソフトウェア実行制御システム。
  12. 【請求項12】 前記第3の復号手段は、予め決められ
    た複数回のソフトウェアの実行に一度、前記記録媒体か
    ら全ての暗号化された補助鍵を獲得して、前記乱数格納
    手段に格納された乱数で復号することを特徴とする、請
    求項9または10に記載のソフトウェア実行制御システ
    ム。
  13. 【請求項13】 前記第3の復号手段は、予め決められ
    た可変の回数のソフトウェアの実行に一度、前記記録媒
    体から全ての暗号化された補助鍵を獲得して、前記乱数
    格納手段に格納された乱数で復号し、 暗号化された補助鍵の復号の間隔に関する情報をソフト
    ウェア使用者に秘密にすることを特徴とする、請求項9
    または10に記載のソフトウェア実行制御システム。
  14. 【請求項14】 前記乱数格納手段は、前記実行器に設
    けられる代わりに、前記記録媒体に設けられることを特
    徴とする、請求項9または10に記載のソフトウェア実
    行制御システム。
  15. 【請求項15】 前記記録媒体の代わりに、読み出し専
    用の第1の記録媒体と、読み出しおよび書き込みが可能
    な第2の記録媒体とが前記実行器に接続され、 前記第1の記録媒体はソフトウェアを格納し、前記第2
    の記録媒体は暗号化された実行許可情報を格納し、 前記乱数格納手段は、前記実行器に設けられる代わり
    に、前記第2の記録媒体に設けられることを特徴とす
    る、請求項9または10に記載のソフトウェア実行制御
    システム。
  16. 【請求項16】 前記記録媒体に格納されたソフトウェ
    アは、それぞれ暗号化されており、 前記ソフト実行手段は、前記記録媒体から、対応する暗
    号化されたソフトウェアを獲得して、前記第2の復号手
    段の復号によって得られた実行許可情報に従って復号
    し、復号して得たソフトウェアを実行することを特徴と
    する、請求項9または10に記載のソフトウェア実行制
    御システム。
  17. 【請求項17】 ソフトウェアを実行する実行器と、当
    該実行器に情報伝達可能に接続され、かつ情報の読み出
    しおよび書き込みが可能な記録媒体と、実行器の求めに
    応じて実行許可情報を配布するソフト配布器とからな
    り、ソフト配布器から配布される実行許可情報の不正な
    使用を防止するためのソフトウェア実行制御システムで
    あって、 前記ソフト配布器は、実行許可情報を保有しており、 前記記録媒体は、ソフトウェアを格納しており、 前記実行器は、自己の外部からは情報の読み出しおよび
    書き込みが困難な記憶領域に、乱数を格納しており、 実行許可情報の配布を求める際、前記実行器は、前記ソ
    フト配布器に対して、格納している乱数を通知し、 前記ソフト配布器は、通知された乱数で実行許可情報を
    暗号化して、前記実行器へ配布し、 前記実行器は、暗号化された実行許可情報の配布を受け
    ると、 配布された暗号化された実行許可情報を、格納している
    乱数で復号し、 復号に連携して、格納している乱数を更新することを特
    徴とする、ソフトウェア実行制御システム。
  18. 【請求項18】 ソフトウェアを実行する実行器と、当
    該実行器に情報伝達可能に接続され、かつ情報の読み出
    しおよび書き込みが可能な記録媒体と、実行器の求めに
    応じて、実行許可情報を配布するソフト配布器とからな
    り、実行器が保有している実行許可情報に、ソフト配布
    器から追加で配布される実行許可情報を加え、かつ実行
    許可情報の不正な使用を防止するためのソフトウェア実
    行制御システムであって、 前記実行器は、自己の外部からは情報の読み出しおよび
    書き込みが困難な記憶領域に、第1および第2の乱数を
    格納しており、 前記記録媒体は、ソフトウェアおよび第1の暗号化され
    た実行許可情報を格納しており、 前記ソフト配布器は、第2の実行許可情報を保有してお
    り、 前記実行器は、前記第2の実行許可情報の配布を求める
    際に、前記ソフト配布器に対して前記第2の乱数を通知
    し、 前記ソフト配布器は、通知された第2の乱数で前記第2
    の実行許可情報を暗号化して、前記実行器に配布し、 前記実行器は、第2の暗号化された実行許可情報を受け
    取ると、 受け取った第2の暗号化された実行許可情報を、格納し
    ている第2の乱数で復号して、第2の実行許可情報を求
    め、 第2の暗号化された実行許可情報の復号に連携して、格
    納している第2の乱数を更新し、 前記記録媒体から第1の暗号化された実行許可情報を獲
    得して、格納している第1の乱数で復号して、第1の実
    行許可情報を求め、 第1の暗号化された実行許可情報の復号に連携して、格
    納している第1の乱数を更新し、 求めた第1および第2の実行許可情報に基づいて、第3
    の実行許可情報を作成し、 作成した第3の実行許可情報を、更新した第1の乱数で
    暗号化して、前記記録媒体に格納することを特徴とす
    る、ソフトウェア実行制御システム。
  19. 【請求項19】 ソフトウェアを実行する第1および第
    2の実行器と、情報の読み出しおよび書き込みが可能な
    記録媒体とからなり、第1の実行器が保有している実行
    許可情報を第2の実行器へ譲渡し、かつ実行許可情報の
    不正な使用を防止するためのソフトウェア実行制御シス
    テムであって、 前記第1の実行器は、自己の外部からは情報の読み出し
    および書き込みが困難な記憶領域に、乱数を格納してお
    り、 前記記録媒体は、ソフトウェアおよび暗号化された実行
    許可情報を格納しており、 前記第1の実行器から前記第2の実行器に対して、前記
    第1の実行器が保有している実行許可情報を譲渡する際
    に、前記第1の実行器と前記第2の実行器とを情報伝達
    可能に接続し、 前記第1の実行器は、 自己の格納している乱数を前記第2の実行器に通知し、 通知に連携して、自己の格納している乱数を更新し、 前記第2の実行器は、乱数の通知を受けると、通知され
    た乱数を、自己の外部からは情報の読み出しおよび書き
    込みが困難な記憶領域に格納することを特徴とする、ソ
    フトウェア実行制御システム。
  20. 【請求項20】 ソフトウェアを実行する第1および第
    2の実行器と、それぞれの実行器に情報伝達可能に接続
    され、かつ情報の読み出しおよび書き込みが可能な第1
    および第2の記録媒体とからなり、前記第1の実行器が
    保有している実行許可情報の一部を前記第2の実行器に
    譲渡し、かつ、実行許可情報の不正な使用を防止するた
    めのソフトウェア実行制御システムであって、 前記第1の実行器は、自己の外部からは情報の読み出し
    および書き込みが困難な記憶領域に、第1および第2の
    乱数を格納しており、 前記第1の記録媒体は、ソフトウェアおよび暗号化され
    た実行許可情報を格納しており、 前記第2の記録媒体は、ソフトウェアを格納しており、 前記第1の実行器から前記第2の実行器に対して、前記
    第1の実行器が保有している実行許可情報の一部を譲渡
    する際に、前記第1の実行器と前記第2の実行器とを情
    報伝達可能に接続し、 前記第1の実行器は、 前記第1の記録媒体から暗号化された実行許可情報を獲
    得して、格納している第1の乱数で復号し、 復号に連携して、格納している第1の乱数を更新し、 復号して求めた実行許可情報を、第1の実行許可情報と
    第2の実行許可情報とに分割し、 分割して得た第1の実行許可情報を、更新した第1の乱
    数で暗号化して、前記第1の記録媒体に格納し、 分割して得た第2の実行許可情報を、格納している第2
    の乱数で暗号化し、 前記第2の乱数と、第2の暗号化された実行許可情報と
    を、前記第2の実行器に通知し、 通知に連携して、格納している第2の乱数を更新し、 前記第2の実行器は、第2の乱数と第2の暗号化された
    実行許可情報とを受け取ると、前記第2の乱数を自己の
    外部からは情報の読み出しおよび書き込みが困難な記憶
    領域に、第2の暗号化された実行許可情報を第2の記録
    媒体に、それぞれ格納することを特徴とする、ソフトウ
    ェア実行制御システム。
  21. 【請求項21】 ソフトウェアを実行するにはソフト鍵
    を必要とし、かつソフト鍵の不正な使用を防止するため
    のソフトウェア実行制御システムであって、 暗号化されたソフトウェアおよび暗号化されたソフト鍵
    を格納し、かつ情報の読み出しおよび書き込みが可能な
    記録媒体が、ソフトウェアを実行する実行器に情報伝達
    可能に接続され、 前記実行器は、 乱数を格納し、かつ自己の外部からは情報の読み出しお
    よび書き込みが困難な乱数格納手段と、 前記記録媒体から暗号化されたソフト鍵を獲得して、前
    記乱数格納手段から取得した乱数で復号する第1の復号
    手段と、 前記記録媒体から暗号化されたソフトウェアを獲得し
    て、前記第1の復号手段の復号によって得られたソフト
    鍵で復号する第2の復号手段と、 前記第2の復号手段の復号によって得られたソフトウェ
    アを実行するソフト実行手段と、 ソフトウェアの実行に関連して、前記乱数格納手段に格
    納された乱数を更新する乱数更新手段と、 前記第1の復号手段の復号によって得られたソフト鍵
    を、更新された乱数で暗号化して、前記記録媒体に格納
    する暗号化手段とを備える、ソフトウェア実行制御シス
    テム。
  22. 【請求項22】 実行回数が所定の条件を満足する場合
    に、ソフトウェアを実行し、かつ当該実行回数の不正な
    使用を防止するためのソフトウェア実行制御システムで
    あって、 ソフトウェアおよび暗号化された実行回数を格納し、か
    つ情報の読み出しおよび書き込みが可能な記録媒体が、
    ソフトウェアを実行する実行器に情報伝達可能に接続さ
    れ、 前記実行器は、 乱数を格納し、かつ自己の外部からは情報の読み出しお
    よび書き込みが困難な乱数格納手段と、 前記記録媒体から暗号化された実行回数を獲得して、前
    記乱数格納手段から取得した乱数で復号する復号手段
    と、 前記復号手段の復号によって得られた実行回数が、所定
    の条件を満足するか否かを検査し、所定の条件を満足す
    る場合に、ソフトウェアの実行を指示する実行回数検査
    手段と、 前記実行回数検査手段からの指示に応答して、ソフトウ
    ェアを実行するソフト実行手段と、 ソフトウェアの実行にともなって、復号によって得られ
    た実行回数を更新する実行回数更新手段と、 ソフトウェアの実行に連携して、前記乱数格納手段に格
    納された乱数を更新する乱数更新手段と、 更新された実行回数情報を、更新された乱数で暗号化し
    て、前記記録媒体に格納する暗号化手段とを備える、ソ
    フトウェア実行制御システム。
  23. 【請求項23】 実行回数が所定の条件を満足する場合
    に、ソフト鍵で復号して得られたソフトウェアを実行
    し、かつ実行回数およびソフト鍵の不正な使用を防止す
    るためのソフトウェア実行制御システムであって、 暗号化されたソフトウェアおよび暗号化されたソフト鍵
    /実行回数を格納し、かつ情報の読み出しおよび書き込
    みが可能な記録媒体が、ソフトウェアを実行する実行器
    に情報伝達可能に接続され、 前記実行器は、 乱数を格納し、かつ自己の外部からは情報の読み出しお
    よび書き込みが困難な乱数格納手段と、 前記記録媒体から暗号化されたソフト鍵/実行回数を獲
    得して、前記乱数格納手段から取得した乱数で復号する
    第1の復号手段と、 前記記録媒体から暗号化されたソフトウェアを獲得し
    て、前記第1の復号手段の復号によって得られたソフト
    鍵で復号する第2の復号手段と、 前記第1の復号手段の復号によって得られた実行回数
    が、所定の条件を満足するか否かを検査し、所定の条件
    を満足する場合に、ソフトウェアの実行を指示する実行
    回数検査手段と、 前記実行回数検査手段からの指示に応答して、前記第2
    の復号手段の復号によって得られたソフトウェアを実行
    するソフト実行手段と、 ソフトウェアの実行に伴って、復号によって得られた実
    行回数を更新する実行回数更新手段と、 ソフトウェアの実行に連携して、前記乱数格納手段に格
    納された乱数を更新する乱数更新手段と、 復号によって得られたソフト鍵と更新された実行回数と
    を、更新された乱数で暗号化して前記記録媒体に格納す
    る暗号化手段とを備える、ソフトウェア実行制御システ
    ム。
  24. 【請求項24】 実行回数が所定の条件を満足する場合
    に、ソフト鍵で復号して得られたソフトウェアを実行
    し、かつソフト鍵および実行回数の不正な使用を防止す
    るためのソフトウェア実行制御システムであって、 複数の、暗号化されたソフトウェア、暗号化されたソフ
    ト鍵/実行回数および暗号化された補助鍵が格納され、
    かつ情報の読み出しおよび書き込みが可能な記録媒体
    が、ソフトウェアを実行する実行器に情報伝達可能に接
    続され、 前記実行器は、 乱数を格納し、かつ自己の外部からは情報の読み出しお
    よび書き込みが困難な乱数格納手段と、 前記記録媒体から、当該ソフトウェアに専用の暗号化さ
    れた補助鍵を獲得して、前記乱数格納手段から取得した
    乱数で復号する第1の復号手段と、 前記記録媒体から、当該ソフトウェアに専用の暗号化さ
    れたソフト鍵/実行回数を獲得して、前記第1の復号手
    段の復号によって得られた補助鍵で復号する第2の復号
    手段と、 前記記録媒体から暗号化されたソフトウェアを獲得し
    て、前記第2の復号手段の復号によって得られたソフト
    鍵で復号する第3の復号手段と、 前記第2の復号手段の復号によって得られた実行回数
    が、所定の条件を満足するか否かを検査し、所定の条件
    を満足する場合に、当該ソフトウェアの実行を指示する
    実行回数検査手段と、 前記実行回数検査手段からの指示に応答して、前記第3
    の復号手段の復号によって得られたソフトウェアを実行
    するソフト実行手段とソフトウェアの実行に伴って、前
    記第2の復号手段の復号によって得られた実行回数を更
    新する実行回数更新手段と、 前記第2の復号手段の復号によって得られたソフト鍵
    と、前記実行回数更新手段によって更新された実行回数
    とを、前記第1の復号手段の復号によって得られた補助
    鍵で暗号化して、前記記録媒体に格納する第1の暗号化
    手段と、 所定のタイミングで、前記記録媒体から全ての暗号化さ
    れた補助鍵を獲得して、前記乱数格納手段から取得した
    乱数で復号する第4の復号手段と、 前記第4の復号手段の復号に連携して、前記乱数格納手
    段に格納された乱数を更新する乱数更新手段と、 前記第4の復号手段の復号によって得られた補助鍵を、
    前記乱数更新手段によって更新された乱数で暗号化し
    て、前記記録媒体に格納する第2の暗号化手段とを備え
    る、ソフトウェア実行制御システム。
JP7343820A 1995-12-28 1995-12-28 ソフトウェア実行制御システム Pending JPH09185501A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7343820A JPH09185501A (ja) 1995-12-28 1995-12-28 ソフトウェア実行制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7343820A JPH09185501A (ja) 1995-12-28 1995-12-28 ソフトウェア実行制御システム

Publications (1)

Publication Number Publication Date
JPH09185501A true JPH09185501A (ja) 1997-07-15

Family

ID=18364495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7343820A Pending JPH09185501A (ja) 1995-12-28 1995-12-28 ソフトウェア実行制御システム

Country Status (1)

Country Link
JP (1) JPH09185501A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001016195A (ja) * 1999-04-27 2001-01-19 Matsushita Electric Ind Co Ltd 情報利用制御装置
JP2002542672A (ja) * 1999-04-13 2002-12-10 トムソン ライセンシング ソシエテ アノニム デジタルホームネットワークとデジタルホームネットワークの作成及び更新方法
JP2004507017A (ja) * 2000-08-16 2004-03-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ デジタル創作物の流通と使用を制御する方法および装置
US7506367B1 (en) 1998-09-17 2009-03-17 Sony Corporation Content management method, and content storage system
JP2010198727A (ja) * 2001-05-22 2010-09-09 Uqe Llc アクセスを制限する方法、記録担体に情報を書き込む方法、記録担体及びコンピュータシステム

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7506367B1 (en) 1998-09-17 2009-03-17 Sony Corporation Content management method, and content storage system
JP2002542672A (ja) * 1999-04-13 2002-12-10 トムソン ライセンシング ソシエテ アノニム デジタルホームネットワークとデジタルホームネットワークの作成及び更新方法
US8345872B2 (en) 1999-04-13 2013-01-01 Thomson Licensing Digital local network, notably digital home network, and method for creating and updating such a network
JP2001016195A (ja) * 1999-04-27 2001-01-19 Matsushita Electric Ind Co Ltd 情報利用制御装置
US7076668B1 (en) 1999-04-27 2006-07-11 Matsushita Electric Industrial Co., Ltd. Data usage controlling apparatus that prevents the unauthorized use of main data by updating a type 1 and a type 2 key used for protecting the main data in accordance with usage of the main data
JP2004507017A (ja) * 2000-08-16 2004-03-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ デジタル創作物の流通と使用を制御する方法および装置
JP2011123995A (ja) * 2000-08-16 2011-06-23 Uqe Llc デジタル創作物の流通と使用を制御する方法および装置
JP2013093096A (ja) * 2000-08-16 2013-05-16 Koninkl Philips Electronics Nv デジタル創作物の流通と使用を制御する方法および装置
JP2010198727A (ja) * 2001-05-22 2010-09-09 Uqe Llc アクセスを制限する方法、記録担体に情報を書き込む方法、記録担体及びコンピュータシステム
JP2011181179A (ja) * 2001-05-22 2011-09-15 Uqe Llc 記録担体、記録担体に情報を書き込む方法及びコンピュータシステム
JP2013109826A (ja) * 2001-05-22 2013-06-06 Uqe Llc 書き込み方法及びコンピュータシステム。
JP2013140666A (ja) * 2001-05-22 2013-07-18 Uqe Llc 記録担体

Similar Documents

Publication Publication Date Title
CN100359425C (zh) 用于解密已加密数据并在存储器空间中定位用于执行的解密数据的方法和设备
EP0768601B1 (en) Device for executing enciphered program
CN101523398B (zh) 用于管理对插件数据文件访问的***和方法
JP4073913B2 (ja) 開放型汎用耐攻撃cpu及びその応用システム
US5392351A (en) Electronic data protection system
US7788487B2 (en) Data processing apparatus
JP3880933B2 (ja) 耐タンパマイクロプロセッサ及びキャッシュメモリ搭載プロセッサによるデータアクセス制御方法
EP1630998A1 (en) User terminal for receiving license
JPH0383132A (ja) ソフトウェア保護制御方式
JP2007257626A (ja) 臨時ライセンスを用いてコンテンツを臨時に使用する方法及び装置
KR20060015552A (ko) 취소 리스트 갱신 방법
US20080104368A1 (en) Storage element having data protection functionality
EA006661B1 (ru) Способ и система защиты информации от несанкционированного использования
JP3624971B2 (ja) ソフトウエア利用制御方法
JPH09185501A (ja) ソフトウェア実行制御システム
JPH1124916A (ja) ソフトウェアライセンス管理装置および方法
JP2001016195A (ja) 情報利用制御装置
JP4850520B2 (ja) 車載装置、失効管理装置および失効管理システム
KR100467571B1 (ko) 디지털 콘텐츠를 위한 보안 서비스 방법 및 그를 위한시스템
JP2010231623A (ja) キャッシュメモリ制御装置及び方法
JP2005346150A (ja) 情報処理装置、情報処理方法、プログラム及び記録媒体
US11748459B2 (en) Reducing software release date tampering by incorporating software release date information into a key exchange protocol
JPH10260902A (ja) 情報保護方法
KR100298506B1 (ko) 집적회로카드와프로그램의공조에의한불법설치방지시스템
JP2010146635A (ja) コンテンツ記録再生装置並びにコンテンツの書き込み及び読み出し方法