JPH0895777A - ソフトウェア利用制御装置 - Google Patents

ソフトウェア利用制御装置

Info

Publication number
JPH0895777A
JPH0895777A JP6225435A JP22543594A JPH0895777A JP H0895777 A JPH0895777 A JP H0895777A JP 6225435 A JP6225435 A JP 6225435A JP 22543594 A JP22543594 A JP 22543594A JP H0895777 A JPH0895777 A JP H0895777A
Authority
JP
Japan
Prior art keywords
unit
software
authentication
content
code
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
Application number
JP6225435A
Other languages
English (en)
Other versions
JP3630451B2 (ja
Inventor
Noboru Iwayama
登 岩山
Naoya Torii
直哉 鳥居
Takayuki Hasebe
高行 長谷部
Masahiko Takenaka
正彦 武仲
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP22543594A priority Critical patent/JP3630451B2/ja
Publication of JPH0895777A publication Critical patent/JPH0895777A/ja
Application granted granted Critical
Publication of JP3630451B2 publication Critical patent/JP3630451B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 この発明は、ソフトウェア利用制御装置に関
し、ソフトウェアの柔軟な利用制御や課金ができ、供給
するソフトウェアの管理を容易にすることを目的とす
る。 【構成】 ソフトウェアの利用を許可するための認証コ
ードを生成する利用許可部と、この利用許可部からの認
証コードを受けてソフトウェアの利用の可否を決定する
利用制御部とからなるソフトウェア利用制御装置におい
て、前記利用制御部が、ソフトウェア本体とそのソフト
ウェアごとに付与されているコンテンツIDとを格納し
たコンテンツ部と、認証部とを備え、前記認証部が乱数
を生成する乱数生成部と、前記コンテンツIDと前記乱
数を変換して認証コードを生成するコード生成部と、前
記利用許可部にコンテンツIDと乱数を転送するコード
要求部と、利用許可部が生成した認証コードと前記コー
ド生成部が生成した認証コードとを比較しその比較結果
をコンテンツ部に送る比較部とからなることを特徴とす
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、コンピュータの各種
ソフトウェアの不正利用を防止するソフトウェア利用制
御装置に関するものであり、特に、ソフトウェアの正規
のユーザのみがそのソフトウェアを利用できると共に、
適切な課金等の管理ができるようにしたソフトウェア利
用制御装置に関する。
【0002】
【従来の技術】コンピュータプログラムはデジタルデー
タとして記録されているため、製品版と真正に同一のも
のを、簡単な作業によって複写することができる。この
ことは、プログラム作成および流通を行なう者に確実な
利潤を保証しない原因であり、プログラムの健全な流通
をさまたげている。プログラムを記録したフロッピーデ
ィスクなどに複写防止などの保護を施し、プログラム購
入者以外がプログラムを入手することを防ぐという考え
もある。しかし完全には複写を防止することはできな
い。
【0003】これに対し、プログラムが複写されること
は認め、プログラム購入者以外の不正利用やプログラム
の改ざんを防ぐことによって知的財産権保護を行ない、
ひいては確実で公正な料金徴収を可能にする方法が提案
されている。
【0004】たとえば特開平3−83132号公報に
は、プログラム本体すべてを暗号化してユーザに配付
し、ユーザがそのプログラムを利用したい場合には暗号
化されたプログラムを復号するためのユーザ個別の鍵を
購入することによって、プログラムの不正利用を防止す
るソフトウェア保護制御方式が記載されている。
【0005】また、特公平6−19707号公報には、
あらかじめ購入しておいた利用度数を安全な場所に記録
し、ソフトウェア起動時に利用度数を減じることによっ
てソフトウェアの起動を制御する機構を設け、その機構
による利用度数が残っていることを確認した後にソフト
ウェアを起動し、ソフトウェア権利者がソフトウェアの
利用状況を把握できるようにしたソフトウェア管理方式
が記載されている。
【0006】
【発明が解決しようとする課題】しかし、特開平3−8
3132号公報において、プログラム本体を実行するた
めには、プログラム本体をすべて復号しなければなら
ず、プログラムが大きい場合には復号に時間がかかると
いう問題点がある。
【0007】また、上記した従来の方法は、プログラム
本体の起動時にのみ利用制御を行うものであり、たとえ
ばプログラムによって作成したファイルを保存する時に
のみ課金するといったきめ細かな制御をすることができ
ない。また、従来は、プログラム本体の起動時に課金が
開始されるため、ユーザは気軽に試行することができ
ず、さらに誤ってプログラムを起動した場合にも課金さ
れてしまうという問題点がある。
【0008】この発明は、以上のような事情を考慮して
なされたものであり、ソフトウェア本体自体は暗号化せ
ず、ソフトウェアの正規利用であることを2つの認証コ
ードを用いて確認することによって暗号化されたソフト
ウェア本体をすべて復号する必要はなく、ソフトウェア
を起動させて利用することができるまでの時間を短縮化
できるソフトウェア利用制御装置を提供することを目的
とする。
【0009】また、ユーザ固有のIDや認証に利用され
る鍵コードに依存しない認証部のソフトウェアを、供給
するソフトウェア本体と共に1つの媒体に組み込むよう
にすることで、供給するソフトウェアの管理が容易とな
るソフトウェア利用制御装置を提供することを目的とす
る。
【0010】さらに供給されたソフトウェア本体が複写
されても認証に利用される鍵コードを所有していないユ
ーザは利用することができないような不正利用の防止が
可能なソフトウェア利用制御装置を提供することを目的
とする。
【0011】また、ソフトウェア起動時だけでなく、ソ
フトウェアの所定の機能が実行されたときに利用量の管
理ができるようなソフトウェア利用制御装置を提供する
ことを目的とする。また、設定された試行回数だけソフ
トウェアの試行が可能なソフトウェア利用制御装置を提
供することを目的とする。
【0012】
【課題を解決するための手段】図1に、この発明の第1
の基本構成ブロック図を示す。この発明は、ソフトウェ
アの利用を許可するための認証コードを生成する利用許
可部2と、この利用許可部2からの認証コードを受けて
ソフトウェアの利用の可否を決定する利用制御部1とか
らなるソフトウェア利用制御装置において、前記利用制
御部1が、ソフトウェア本体とそのソフトウェアごとに
付与されているコンテンツIDとを格納したコンテンツ
部8と、認証部3とを備え、前記認証部3が、乱数を生
成する乱数生成部4と、前記コンテンツIDと前記乱数
を変換して認証コードを生成するコード生成部5と、前
記利用許可部2にコンテンツIDと乱数を転送するコー
ド要求部6と、利用許可部2が生成した認証コードと前
記コード生成部5が生成した認証コードとを比較しその
比較結果をコンテンツ部8に送る比較部7とからなるこ
とを特徴とするソフトウェア利用制御装置を提供するも
のである。
【0013】図2に、この発明の第2の基本構成ブロッ
ク図を示す。この発明は、ソフトウェアの利用を許可す
るための識別IDコードを入力する識別ID入力部9
と、予め与えられた認証コードを記憶する認証コード記
憶部10と、ソフトウェアの利用の可否を決定する利用
制御部1とからなるソフトウェア利用制御装置におい
て、前記利用制御部1が、ソフトウェア本体とそのソフ
トウェアごとに付与されているコンテンツIDとを格納
したコンテンツ部8と、認証部3とを備え、前記認証部
3が、前記コンテンツ部8から送られるコンテンツID
と前記識別ID入力部9から送られる識別IDとを変換
して認証コードを生成するコード生成部5と、前記認証
コード記憶部10に記憶された認証コードと前記コード
生成部5が生成した認証コードとを比較しその比較結果
をコンテンツ部に送る比較部7とからなることを特徴と
するソフトウェア利用制御装置を提供するものである。
【0014】図3に、この発明の第3の基本構成ブロッ
ク図を示す。ここで、前記コード生成部5が、前記コン
テンツ部8から送られるコンテンツIDを、予め設定さ
れた鍵コードを用いて変換し認証鍵を生成する鍵生成部
11と、前記乱数生成部4が生成した乱数を前記認証鍵
を用いて暗号化し認証コードを生成する暗号化部12と
から構成されることが好ましい。
【0015】図4に、この発明の第4の基本構成ブロッ
ク図を示す。ここで、前記コード生成部5が、前記コン
テンツ部8から送られるコンテンツIDを、予め設定さ
れた鍵コードを用いて変換し認証鍵を生成する鍵生成部
11と、前記識別ID入力部9から入力される識別ID
を前記認証鍵を用いて暗号化し認証コードを生成する暗
号化部12とから構成されることが好ましい。
【0016】図5に、この発明の第5の基本構成ブロッ
ク図を示す。ここで、前記コード生成部5が、前記識別
ID入力部9から入力される識別IDを、予め設定され
た鍵コードを用いて変換し認証鍵を生成する鍵生成部1
1と、前記コンテンツ部8から送られるコンテンツID
を前記認証鍵を用いて暗号化し認証コードを生成する暗
号化部12とから構成されることが好ましい。
【0017】図6に、この発明の第6の基本構成ブロッ
ク図を示す。ここで、コンテンツ部8に格納されたソフ
トウェア本体の利用量に関する情報を記憶・管理する利
用量管理部14をさらに備え、前記利用制御部1が、前
記比較部7から比較結果を受けて利用量情報の記録を前
記利用量管理部14に要求する利用記録要求部13を備
えることを特徴とするものである。
【0018】図7に、この発明の第7の基本構成ブロッ
ク図を示す。ここで、前記コンテンツ部8が、ソフトウ
ェア本体の動作状況を監視するソフト動作監視部15を
備え、前記利用記録要求部13が、前記比較部7から認
証コードの一致を示す比較結果を受け、ソフト動作監視
部15で監視されるソフトウェアの動作状況が所定の条
件を満足したことを検知した場合のみ、前記利用記録要
求部13が前記利用量管理部14に利用量に関する情報
を記憶させることを特徴とするものである。また、前記
利用記録要求部13が前記利用量管理部14から記憶が
正常に終了したことを示す情報を受けとったときにの
み、前記利用制御部1がコンテンツ部8に格納されたソ
フトウェア本体の実行を継続させるようにしてもよい。
【0019】図8に、この発明の第8の基本構成ブロッ
ク図を示す。この発明は、前記コンテンツ部8が予め試
用回数上限値を格納し、前記利用許可部2が試用認証部
16と、試用回数記録部と、試用回数管理部18とをさ
らに備え、前記試用認証部16が、乱数を生成する乱数
生成部4と、前記コンテンツIDと前記乱数を変換して
試用認証コードを生成する試用コード生成部17とを備
え、試用回数記録部19は、前記コード要求部6から送
られる試用回数上限値をもとに試用回数を記憶し、前記
コード要求部6からソフトウェア利用の認証を求めるた
めの利用許可要求が利用許可部2に転送されるごとに試
用回数管理部18が前記試用回数記録部19に記憶され
た試用回数を更新し、前記試用回数が前記試用回数上限
値を越えていない場合に、試用認証部16が試用認証コ
ードを生成し、試用回数管理部18が前記試用認証コー
ドを前記比較部7に転送することを特徴とするものであ
る。
【0020】また、前記コンテンツ部8がコンテンツI
Dと1対1に対応しかつ利用者には秘密にされたコンテ
ンツ認証IDを予め格納し、このコンテンツ認証IDを
用いて前記認証部3及び前記利用許可部2が認証コード
を生成するようにしてもよい。
【0021】この発明の第1,3及び6の基本構成ブロ
ック図において、ソフトウェア利用制御装置は、利用制
御部1と利用許可部2とで構成される。ここで利用制御
部1は、たとえばユーザが所有しているパーソナルコン
ピュータであり、CPU,ROM,RAM,CRT、キ
ーボード等の入力装置、通信制御装置、及び外部記憶装
置などで構成されることが好ましい。
【0022】利用許可部2は、前記パーソナルコンピュ
ータに内蔵することも考えられるが、利用制御部1とは
別筺体の装置であることが好ましく、CPU,ROM,
RAM,及びI/Oコントローラ等のマイクロコンピュ
ータとしての構成を備え、さらに利用許可のためのソフ
トウェアをROMに内蔵していることが好ましい。
【0023】ここで、利用許可部2が別筺体の装置とし
て供給される場合は、ソフトウェア管理センタや情報提
供者(以下、ソフトウェア供給者と呼ぶ)がそのソフト
ウェアを利用するユーザに、予め提供しておくようにす
ることが好ましい。 利用制御部1と利用許可部2と
は、通常SCSIやPCMCIA等の標準インターフェ
ース仕様で接続される。
【0024】また、利用制御部1の中のコンテンツ部8
は、ユーザが利用しようとするソフトウェア本体とその
ソフトウェア本体に付与された個別の番号であるコンテ
ンツID、さらに制御に必要なデータが記憶されるもの
であり、フロッピーディスク、光磁気ディスク、ROM
又は不揮発性RAM等が用いられる。
【0025】認証部3は、認証コード生成及び比較等の
機能を実現するためのソフトウェア及びハードウェアか
ら構成され、ハードウェアとしてはCPU,ROM,R
AM,タイマー、及びI/Oコントローラなどで構成さ
れるいわゆるマイクロコンピュータを通常用いることが
好ましい。
【0026】また、上記機能を実現するソフトウェア、
すなわち乱数生成部4、コード生成部5、コード要求部
6、比較部7の機能を実現するソフトウェアは、コンテ
ンツ部8と同様の媒体で供給されることが好ましい。ま
た、認証部3の機能を実現するソフトウェア(以下認証
プログラムと呼ぶ)とコンテンツ部8はソフトウェア供
給者から同一の媒体で供給されることが好ましく、たと
えば、フロッピーディスク、光磁気ディスク等で供給さ
れ、またデータ通信によって供給してもよい。
【0027】識別ID入力部9は、識別IDコードを入
力するものであり、キーボード等のユーザがIDを実際
に入力する装置であってもよいが、予めROM、ハード
ディスクまたはフロッピーディスク等に設定された固有
のデータをCPUが読み取るようにしてもよい。ここで
識別IDコードは、コンテンツ部8に格納されたソフト
ウェアを動作させるハードウェア固有の機器IDや、通
常ハードウェアのROMの中に格納されているCPU−
IDや、接続されるハードディスクなどの外部機器のI
Dやソフトウェアを利用するユーザこどに個別に与えら
れるユーザIDやパスワードを用いることが好ましい。
【0028】また、認証コード記憶部10は、フロッピ
ーディスク、ICカード、ハードディスク等の外部記憶
装置を用いることが好ましく、ここに記憶される認証コ
ードはソフトウェア供給者から、事前に郵送又は通信等
の手段によって、ユーザに与えられるものである。
【0029】コード要求部6は、コンテンツ部8に格納
されたコンテンツID、乱数生成部4で生成された乱数
あるいは利用許可要求信号を利用許可部2へ転送するも
のである。コード生成部5は、認証コードを生成するも
のであるが、鍵生成部11と暗号化部12とからなり、
コンテンツID、識別ID、乱数等を用いて認証鍵を生
成した後、暗号化によって認証コードを生成するもので
ある。
【0030】鍵生成部11は、認証部3のソフトウェア
によって実現される一機能ブロックであるが、ソフトウ
ェア供給者からユーザに送付されたソフトウェア本体に
付与された個別の番号であるコンテンツIDや、識別I
D入力部9から与えられる識別IDコードを基にして、
そのソフトウェア本体に付随する鍵コードを生成するも
のである。
【0031】暗号化部12も、認証部3のソフトウェア
によって実現される一機能ブロックであり、通常用いら
れる暗号化処理により、ソフトウェア本体の認証コード
を生成するものである。ここで、暗号化処理とは、たと
えば鍵生成部11で生成された鍵コードを用いて乱数生
成部4で発生された乱数を変換し、所望の認証コードと
して暗号化する処理である。
【0032】比較部7も、認証部3のソフトウェアによ
って実現される一機能ブロックであり、たとえば、コー
ド生成部5で生成された認証コードの値と、利用許可部
2で生成された認証コード、あるいは認証コード記憶部
10に記憶された認証コードの値を比較し、その比較結
果をコンテンツ部8へ転送するものである。
【0033】利用記録要求部13は、前記認証部3のソ
フトウェアによって実現される一機能ブロックであり、
利用量管理部14に利用量に関する情報を記録すること
を要求すること、コンテンツ部8にソフトウェアの起動
の可否を指示すること等の処理をするものである。利用
量管理部14は、利用許可部2と同じ別筐体の装置に備
えられることが好ましい。
【0034】ソフト動作監視部15は、コンテンツ部8
に属する一機能ブロックであるが、利用記録要求部13
にソフトウェアが所定の動作をしたことを通知するもの
である。試用認証部16は、利用許可部2において、ソ
フトウェアの試用をする場合に実行される一機能ブロッ
クであり、認証部3と同様の動作を行うものである。
【0035】また、試用コード生成部17は、コード生
成部5と同様の動作を行うものであり、ソフトウェアの
試用をする場合の試用認証コードを生成するものであ
る。試用回数記録部19は、利用許可部2の中にあっ
て、たとえば、不揮発性RAMが用いられる。試用回数
管理部18は、利用許可部2における一機能ブロックで
あり、試用回数記録部19に記録される試用回数の更新
や、試用回数の残りに応じて試用認証コードを比較部7
へ転送すること等を行うものである。
【0036】
【作用】図1において、利用制御部1におけるコンテン
ツ部8に格納されているコンテンツIDが認証部3に与
えられ、認証部3におけるコード生成部5は、乱数生成
部4が生成した乱数と前記コンテンツIDとを変換して
認証コードAを生成する。 また前記コンテンツIDと
乱数は、コード要求部6によって利用許可部2へ転送さ
れ、利用許可部2がこのコンテンツIDと乱数を用いて
認証コードBを生成する。その後、認証部3の比較部7
が、前記認証コードAとBとを比較してその比較結果を
コンテンツ部へ送る。
【0037】この発明によれば、利用制御部1と利用許
可部2を備え、2つの認証コードを生成して比較するこ
とによってソフトウェア利用制御をしているので、ソフ
トウェア本体をすべて暗号化したときに比べて、ソフト
ウェアの実際の利用開始をするまでの時間を短縮化する
ことができる。
【0038】また、コンテンツ部8及び認証部3のソフ
トウェア自体はユーザ固有のIDには依存することがな
いため、共通化することができ、供給するソフトウェア
の管理が容易である。さらに、ソフトウェアの供給媒体
にはユーザ固有のIDは直接含まれておらず、利用制御
部1と利用許可部2において生成される2つの認証コー
ドを比較してソフトウェア利用制御を行うので、ソフト
ウェアの供給媒体が不正に複写されても利用許可が与え
られず不正利用が防止できる。
【0039】また、図3において、前記コード生成部5
において、鍵生成部11が前記コンテンツIDを予め設
定された鍵コードを用いて変換し、認証鍵を生成する。
次に、暗号化部12が、この認証鍵を用いて前記乱数を
暗号化して認証コードを生成する。このように、暗号化
された認証コードを用いることによって、さらにソフト
ウェア利用制御の安全性を高めることができる。
【0040】また、図2に示すように、利用許可部を持
たないソフトウェア利用制御装置の場合、コード生成部
5は、識別ID入力部から送られる識別IDを変換して
認証コードを生成する。また予め認証コード記憶部10
に認証コードを記憶しておく。比較部7は、生成された
認証コードと記憶された認証コードとを比較して、その
比較結果をコンテンツ部8へ送る。
【0041】このように、この発明によれば、利用許可
部2を備えていないソフトウェア利用制御装置において
も、ソフトウェアの実際の利用開始までの時間の短縮
化、供給するソフトウェアの管理の容易化及びより効果
的な不正利用の防止ができる。
【0042】さらに、図4、5に示すように、利用許可
部2を備えていないソフトウェア利用制御装置のコード
生成部5において、前記したような認証鍵を生成する鍵
生成部11と暗号化された認証コードを生成する暗号化
部12を備えることによって、よりソフトウェア利用制
御の安全性を高めることができる。
【0043】また、図6において、利用制御部1におけ
る利用記録要求部13が前記比較部7からの比較結果を
受けて利用量情報を記録することを利用量管理部14に
要求し、この要求に従って利用量管理部14が利用量に
関する情報を記録する。さらに、図7において、コンテ
ンツ部8のソフト動作監視部15がソフトウェア本体の
動作状況を監視し、利用記録要求部13が所定の条件を
満足した動作状況が生じたことを検知した場合に、利用
量管理部14が利用量に関する情報を記憶するようにす
る。
【0044】このように、この発明によれば、利用量に
関する情報を記録するようにしているので、前記したよ
うな不正利用の防止と共に、正規利用者の利用可又は不
可の柔軟な制御が可能である。
【0045】また、図8において、前記コンテンツ部8
に予め試用回数上限値を格納しておく。そして、コード
要求部6が試用回数上限値を利用許可部2の試用回数記
録部19に送り、試用回数を試用回数記録部19に記録
させる。次に、コード要求部6から利用許可要求が利用
許可部2に転送されるごとに、試用回数管理部18が試
用回数を更新する。この後、この試用回数が試用回数上
限値を越えていない場合に、試用認証部16がコンテン
ツIDと乱数を変換して試用認証コードを生成し、試用
回数管理部19が前記試用認証コードを比較部7に転送
する。比較部7においては、認証部3において生成され
た認証コードと前記試用認証コードを比較して、一致す
るかどうか判断する。
【0046】以上のように、この発明によれば、試用回
数記憶部19に試用回数を記憶し、この試用回数がコン
テンツ部8に格納された試用回数上限を越えない場合に
のみ利用を許可するように制御するので、正規の利用者
はコンテンツ部8に格納されたソフトウェアを、すぐに
試用回数上限の範囲内で利用することができる。
【0047】また、コンテンツ部8が、コンテンツID
と、コンテンツIDと1対1に対応し、かつ利用者には
秘密にされたコンテンツ認証IDを予め格納しておくこ
とによって、より安全性の高いソフトウェア利用制御が
可能である。
【0048】
【実施例】以下、図に示す実施例に基づいてこの発明を
詳述する。なお、この発明はこれによって限定されるも
のではない。図9にこの発明におけるソフトウェアの利
用制御を行うシステム(以下、超流通システムと呼ぶ)
全体の構成図を示す。この超流通システムは、ソフトウ
ェアの生産・販売をするソフトウェア供給者とソフトウ
ェアを利用するユーザとから構成され、さらにソフトウ
ェア供給者は、情報提供者と管理センタとから構成され
る。
【0049】この超流通システムの特徴は、ライセンス
情報を持たなければ利用できない仕組みを供給するソフ
トウェアの中に組み込んで広く配付し、利用を希望する
ユーザはライセンスを購入することによってはじめてソ
フトウェアの利用が可能になる点にある。
【0050】すなわち、情報提供者はソフトウェアを管
理センタに登録し、ユーザのソフトウェア利用に応じた
利用料を管理センタから得る。
【0051】管理センタは、登録されたソフトウェアに
保護機構を組み込み、保護されたソフトウェア、すなわ
ちコンテンツを広く配付する。また登録したユーザに対
して、ユーザからのライセンス要求に応じたライセンス
を発行し、ソフトウェア利用に対する料金の徴収分配を
行う。コンテンツには、ソフトウェア本体と、保護化の
ための認証プログラムが組み込まれる。
【0052】ライセンスの発行を受けたユーザは、必要
に応じて利用許可装置を管理センタから有償又は無償で
貸与してもらい、ユーザ所有のハードウェアでコンテン
ツを利用する。コンテンツの利用に際して、認証プログ
ラムと利用許可装置との間でソフトウェアの利用許可を
してよいかどうかの認証処理が行われ、認証が成功した
場合にのみ、ソフトウェアの利用が許可されることにな
る。以上が超流通システムの全体構成であるが、この発
明は、ユーザに配付されたコンテンツと利用許可装置、
及びこれらを用いたソフトウェアの利用許可制御に関す
るものである。
【0053】図10に、この発明を実現する一実施例と
してのハードウェアの構成図を示す。同図において、ソ
フトウェア利用制御装置は、ユーザ所有のハードウェア
50、利用許可装置60及びコンテンツ71から構成さ
れる。コンテンツ71には、ユーザが動作させようとす
るプログラム本体72に認証プログラム73が組み込ま
れて格納されている。
【0054】ここでプログラム本体72とは、たとえば
ワードプロセッサ用ソウトウェア、図面作成用ソフトウ
ェア、データベース用ソフトウェア、あるいはゲームソ
フトウェアなどを言う。
【0055】認証プログラム73とは、プログラム本体
72を動作させようとするユーザが正規のユーザである
かどうかを確認するためのソフトウェアであり、乱数発
生、正規ユーザのみに与えられるソフトウェア認証鍵の
生成、ソフトウェア認証鍵を用いて暗号化により利用許
可を与えるための認証コードの生成等の処理を行うもの
である。
【0056】また、認証プログラム73自体は、プログ
ラム本体72ごとに与えられるコンテンツID、ユーザ
所有のハードウェア等の機器ID(CPU−ID)、ユ
ーザに与えられるユーザIDや、ソフトウェア認証鍵に
依存しないソフトウェアである。したがって、ユーザに
配付されるコンテンツ71は、ユーザごとに異なる情報
は書込まずに、共通化でき、量産が可能である。
【0057】ユーザ所有のハードウェア50としては、
パーソナルコンピュータ、ワークステーション、ゲーム
専用機などが利用されるが、コンテンツ71に格納され
たプログラム本体72を動作させることのできるコンピ
ュータであればよい。ユーザ所有のハードウェア50
は、同図に示すように一般に、CPU51、ROM5
2、RAM53、ハードディスク54、CRT55、キ
ーボード56、I/Oコントローラ57、FDD58及
び通信回線コントローラ59から構成され、必要に応じ
て、外部機器が増設されたり、不要な機器が取りはずさ
れる。
【0058】同図において、コンテンツ71は、フロッ
ピーディスクで供給され、このフロッピーディスクがF
DD(フロッピーディスクドライブ)58に挿入される
例を示しているが、コンテンツ71は他の媒体で供給し
てもよく、媒体の種類に応じて、適切な外部機器又はボ
ードをユーザ所有のハードウェアに組込めばよい。たと
えば、コンテンツ71がCD−ROMで供給される場合
はCD−ROMドライブ装置、ICカードで供給される
場合はICカードリーダ、あるいは公衆回線を通して送
信される場合は、モデム等の通信回線コントローラ59
を備えればよい。
【0059】利用許可装置60も、ユーザ所有のハード
ウェア50と同様にCPU61、ROM62、RAM6
3、I/Oコントローラ66及び通信回線コントローラ
64等で構成される。利用許可装置60は、ユーザ所有
のハードウェアでコンテンツ71に格納されたプログラ
ム本体72の起動を許可するための処理や、プログラム
本体72の利用回数に応じた課金や利用の制限等の処理
を行う装置(課金モジュール)であり、通常ソフトウェ
ア供給者から、ユーザに有償又は無償で貸与されるもの
である。
【0060】利用許可装置60のRAM63には、厳密
な管理のもとで、ソフトウェア供給者から、ユーザごと
に与えられるソフトウェア認証鍵65が書込まれる。こ
のソフトウェア認証鍵65のハードウェアへの書込み
は、プログラム本体72の起動よりも前に行うことが必
要である。
【0061】また、このソフトウェア認証鍵65は、コ
ンテンツ71とは別のフロッピーディスクや光磁気ディ
スク等の媒体で提供されることが望ましく、通信回線を
通して、直接ソフトウェア提供者から利用許可装置60
のRAM63に書込んでもよい。また、ソフトウェア認
証鍵65は安全性のために直接ユーザに与えるのではな
く、利用許可装置に固有の装置鍵コードによってソフト
ウェア認証鍵65に変換できる形式のデータをユーザに
与えてもよい。
【0062】利用許可装置60とユーザ所有のハードウ
ェア50は、互いにI/Oコントローラ57、66によ
って接続され、利用許可制御に必要なデータや信号の転
送が行われる。
【0063】以上のようなハードウェア構成を持つソフ
トウェア利用制御装置におけるソフトウェア利用許可の
動作の概要を次に示す。 1)ソフトウェア認証鍵65をRAM63に書込む。 2)ユーザ所有のハードウェア50のFDD58にコン
テンツ71を挿入する。 3)ユーザがコンテンツ71の起動処理を実行させる
と、ユーザ所有のハードウェア50において認証プログ
ラムが呼び出される。 4)ユーザ所有のハードウェア50において、プログラ
ム本体72に付与されているコンテンツID等に基づ
き、プログラム本体を利用するための認証コードを生成
する。
【0064】5)利用許可装置60において、予めRA
M63に記憶されたソフトウェア認証鍵65を用いてプ
ログラム本体を利用するための認証コードを生成する。 6)ユーザ所有のハードウェア50において、4)で生
成された認証コードと5)で生成された認証コードを比
較する。 7)6)の比較の結果、両認証コードが一致した場合
は、ユーザ所有のハードウェア50においてプログラム
本体72が起動される。 以上のように利用制御を行えば、ソフトウェア認証鍵6
5を持っている正規のユーザのみがコンテンツ71を利
用することができ、したがって不正利用の防止ができ
る。
【0065】図11に、ソフトウェア利用許可制御の第
1実施例の説明図を示す。この第1実施例は、図10に
示した利用許可装置60をユーザ宅内に設置し、ソフト
ウェア供給者から送られてくるコンテンツ71に格納さ
れたコンテンツIDを用いて、正規のユーザかどうかの
認証を行った後に、コンテンツ71に格納されたソフト
ウェアの許可を与える例である。
【0066】ここで、認証は、利用許可装置60で生成
した認証コードと、ユーザ所有のハードウェア50で生
成した認証コードとを比較することにより行う。また、
ユーザ所有のハードウェア50で認証コードを生成する
ために、認証プログラム自体が持つ乱数発生機能と、認
証プログラム自体が持つ固有のライブラリ鍵を用いたソ
フトウェア認証鍵コードの生成機能と、暗号化機能等を
利用する。
【0067】以下、第1実施例の利用許可の制御につい
て詳説する。図11は、制御に用いられるデータの流れ
を説明する模式図であり、これらのデータは、図10に
示す装置のRAM、ハードディスク及びI/Oコントロ
ーラを介して転送される。図11において、図10と同
様に、71はコンテンツ、72はプログラム本体(以
下、プログラムと呼ぶ)、73は認証プログラム(以
下、ライブラリと呼ぶ)、60は課金モジュール(以下
モジュールと呼ぶ)である。
【0068】プログラム72には、そのプログラム固有
のコンテンツIDが付与されており、このコンテンツI
Dはコンテンツ71の中の所定の領域に格納されてい
る。なお、このコンテンツIDは、コンテンツ71に含
まれるプログラム72ごとに付与される固有のIDであ
り、複数のユーザに配付されるすべてのコンテンツ71
において同じプログラム72には同じIDが付与されて
いる。
【0069】ライブラリ鍵klibは、ライブラリに付
与された固定の鍵コードであり、これを用いて、コンテ
ンツIDがソフトウェア認証鍵kauに変換される。こ
のライブラリ鍵klibは、利用されるユーザの目にふ
れることのないデータであり、ライブラリごとに別の鍵
コードを与えることもできる。したがって、ライブラリ
鍵klibと後述する変換処理手順を公開しないように
することで、利用制御の安全性を確保することができ
る。
【0070】ここで変換73aとは、たとえば、コンテ
ンツIDとライブラリ鍵klibをパラメータとして、
所定の数式に代入して得られた結果を、ソフトウェア認
証鍵とする処理である。したがって変換処理手順を記述
したルーチンは、ライブラリの外部から与えられるコン
テンツIDには依存しない手順で記述でき、種々のプロ
グラムに対して共通化される。
【0071】また、暗号73bとは、ライブラリ内部で
発生する乱数Rをもとに、ソフトウェア認証鍵kauを
所定の手順で変換し、暗号化された認証コードA Ek
au(R)を生成する処理である。ここで用いられる所
定の手順とは、通常暗号化技術で用いられるDESやF
EALという処理手順を用いることができる。したがっ
て、暗号の処理手順を記述したルーチンも、ソフトウェ
ア固有のID等に依存しない手順で記述でき、共通化さ
れる。
【0072】また、比較73cとは、ライブラリで生成
された認証コードA Ekau(R)とモジュールで生
成された認証コードB Ekau(R)との値が一致す
るかどうかを判断する処理であり、これもソフトウェア
固有のID等に依存する手順ではないので、共通化でき
る。また、比較73cでは、判断の結果、両認証コード
が一致したか又は相違したかについての情報が、プログ
ラム72に返される。
【0073】モジュール60における暗号60aでの処
理は、ライブラリの暗号73bと同一の処理手順が実行
される。モジュール60では、暗号60aの処理に先立
ち、プログラム72からI/Oコントローラ(57、6
6)を通してモジュールに与えられるコンテンツIDか
ら、ソフトウェア認証鍵kauを生成する処理が行われ
る。
【0074】この処理は、ユーザがソフトウェア供給者
に、あるソフトウェアの利用を請求したときに、ソフト
ウェアの利用に先立って郵送又は通信等の手段によって
ユーザに送られてくる情報を利用する。たとえばこの送
られてくる情報の中に、コンテンツIDと、このコンテ
ンツIDと1対1に対応するソフトウェア認証鍵kau
を格納しておき、前記したモジュール60に与えられた
コンテンツIDにより、この情報の中の対応するソフト
ウェア認証鍵kauを検索して求める。
【0075】また、安全性のために、送られてくる情報
の中にソフトウェア認証鍵kauを格納するのではな
く、モジュール60に固有の装置鍵kdで復号すること
によってソフトウェア認証鍵kauが生成できるような
鍵データをコンテンツIDと対応させて格納しておくこ
とが望ましい。このとき、コンテンツIDにより対応す
る鍵データを検索し、この鍵データを装置鍵で復号する
ことによって対応するソフトウェア認証鍵kauを生成
する。
【0076】このように、コンテンツIDは供給するソ
フトウェア本体に固有のIDであり、ユーザに開放され
る可能性のあるものであるので、不正に複写されること
がありうるが、モジュール60に固有の装置鍵kdは正
規に利用するユーザにも開放されないものであるので、
利用許可をする際の安全性をより向上させることができ
る。
【0077】上記したように、モジュール60では、コ
ンテンツIDによる検索によってソフトウェア認証鍵k
auを生成し、このkauを乱数Rを用いた暗号化処理
60aによって変換し、認証コードB Ekau(R)
を求める。
【0078】以上がプログラム72、ライブラリ73及
びモジュール60内部での各部分の処理であるが、プロ
グラム72とライブラリ73における処理は、図10の
ユーザ所有のハードウェア50のCPU51によって実
行され、モジュール60における処理はモジュール60
内のROMに記憶された手順にしたがって、モジュール
60のCPU61によって実行されるものである。
【0079】図12、13及び14に、第1実施例にお
ける各ソフトウェアの処理手順を示し、以下これについ
て説明する。図12に、プログラム72におけるフロー
チャートを示す。まず、ステップS1においてコンテン
ツIDをライブラリ73に送る。具体的には、たとえば
CPU51がプログラム72を起動し、コンテンツID
を読み出して、コンテンツIDを引数としてライブラリ
73に与え、ライブラリ73を起動させてもよく、ま
た、マルチタスクとしてプログラム72及びライブラリ
73を起動させておき、コンテンツIDをライブラリに
引き渡してもよい。
【0080】次に、ステップS2において、ライブラリ
から認証結果が受理されるのを待つ。ステップS3にお
いて、認証結果を判断し、認証結果がYES、すなわち
正規の利用であり利用許可を与えてよい場合には、ステ
ップS4へ進み、プログラム本体を実行させる。認証結
果がNO、すなわち不正利用であり利用許可を与えない
場合には、処理を終了する。
【0081】図13に、ライブラリ73におけるフロー
チャートを示す。ステップS11において、コンテンツ
IDをプログラム72から受理する。次にステップS1
2において、コンテンツID及び内部で発生した乱数R
をモジュール60へI/Oコントローラ(57、66)
を介して転送する。ステップS13において、認証コー
ドB Ekau(R)モジュール60から受理されるの
を待つ。
【0082】ステップS14において、コンテンツID
をライブラリ鍵klibで変換し、ソフトウェア認証鍵
kauを生成する。ステップS15において、乱数Rを
kauで暗号化し、認証コードA Ekau(R)を生
成する。ステップS16において、上記2つの認証コー
ドA、Bを比較し、その結果を認証結果としてプログラ
ム72に送る。この比較処理によって2つの認証コード
が一致した場合に、プログラム本体の利用許可がされる
ことになる。
【0083】図14に、モジュール60におけるフロー
チャートを示す。ステップS21において、コンテンツ
IDと乱数Rをライブラリ73から受理する。ステップ
S22において、コンテンツIDにより対応するソフト
ウェア認証鍵kauを検索する。ステップS23におい
て、検索によって求められたソフトウェア認証鍵kau
を用いて乱数Rを暗号化し、認証コードB Ekau
(R)を生成する。
【0084】ステップS24において、生成された認証
コードB Ekau(R)をライブラリ73にI/Oコ
ントローラを通して転送する。以上がプログラム72、
ライブラリ73及びモジュール60の個々の処理を示す
フローチャートであるが、各部とも互いに同期をとって
処理が進められることは言うまでもない。
【0085】このように、第1実施例において、コンテ
ンツIDを用いて、ライブラリ73すなわち供給媒体に
格納された認証プログラムによって生成された認証コー
ドと、モジュール60、すなわち利用許可装置によって
生成された認証コードを比較して利用許可制御をしてい
るので、プログラム本体をすべて暗号化した不正利用防
止策をとったときよりも、利用許可を出しプログラムの
実際の利用開始をするまでの時間を短縮化できる。
【0086】また、認証プログラム73は、コンテンツ
IDやその他のユーザ固有のIDやソフトウェア認証鍵
などに依存することなく、配付される媒体に共通のソフ
トウェアとして格納しておくことが可能であり、ソフト
ウェア本体とこの認証プログラムを格納した媒体をユー
ザごとに作成する必要はなく、一種類のみを製造すれば
よいので、供給するソフトウェアの管理が容易である。
【0087】さらに、供給するソフトウェアには、ユー
ザごとに付与されるIDやソフトウェア認証鍵が直接含
まれていないこと、及び利用許可装置で生成される認証
コードと供給ソフトウェアで生成する認証コードとの比
較を行うので、供給媒体が正規のユーザ以外の者に流通
したり、不正に複写されたとしても利用許可は与えられ
ず不正利用が防止できる。
【0088】また、特定ユーザグループなどについて特
に安全性を確保するために、ライブラリ鍵klibをそ
の特定ユーザグループ向けのコードに書き替えて配付す
ることも可能である。
【0089】図15に、ソフトウェア利用許可制御の第
2実施例の説明図を示す。この第2実施例は、図10に
示した利用許可装置60をユーザが持たない場合のソフ
トウェア利用制御を示している。そして、ユーザは、コ
ンテンツ71を動作させるユーザ所有のハードウェア5
0のみを所有している。
【0090】ここでは、第1実施例と同様にしてソフト
ウェア供給者から送られてくるコンテンツ71に格納さ
れたソフトウェアから生成した認証コードと、このコン
テンツ71とは別ルートで送られてくる認証コードとを
比較して正規のユーザかどうかの認証を行う例である。
【0091】また、ユーザ所有のハードウェア50で認
証コードを生成するために、コンテンツIDと認証プロ
グラム自体が持つ固有のライブラリ鍵と、ユーザあるい
はユーザ所有のハードウェア50を特定するための識別
コード、たとえばユーザ所有のハードウェア50のCP
U固有のID(CPU−ID)、予め正規ユーザに付与
されるユーザID、又は、ユーザ所有のハードウェア5
0に接続される外部機器の機器ID等が用いられる。
【0092】図15において、図11と同様に、71は
コンテンツ、72はプログラム、73はライブラリ、5
4はユーザ所有のハードウェア50におけるハードディ
スクである。ハードディスク54には、ソフトウェア供
給者から送られてくる認証コードAEkau(コンテン
ツID)が格納されている。
【0093】これは、第1実施例と同様に、コンテンツ
IDと、このコンテンツIDと1対1に対応する認証コ
ードA Ekau(コンテンツID)が格納された情報
としてユーザに送られてくるものである。このハードデ
ィスク54に格納されたEkau(コンテンツID)
は、プログラム72によって、このプログラム本体に固
有のコンテンツIDを基に検索されて読み出される。こ
の検索処理は、たとえばフロッピーディスクで供給され
たコンテンツ71が、ユーザ所有のハードウェア50の
FDD58に挿入されて、コンテンツが起動されたとき
に、CPU51が行う。
【0094】図15では、ユーザ所有のハードウェア5
0のCPU51に固有のCPU−IDを識別コードとし
て用いる例を示している。CPU−IDはCPU51内
部のROM又は、ROM52に書き込まれている。この
CPU−ID等の識別コードは、ユーザがソフトウェア
の利用をソフトウェア供給者に請求するときに、同時に
申告する必要がある。
【0095】なお、上記した認証コードA Ekau
(コンテンツID)は、ソフトウェア供給者側で、上記
申告された識別コードをもとに暗号化されて生成された
コードである。
【0096】したがって認証コードが何らかの手段によ
って正規ユーザ以外の者に知られたとしても、識別コー
ドがわからない限り不正利用ができないようにすること
ができ、さらに識別コードとしてこの実施例で示したC
PU固有のCPU−IDを用いれば、そのCPU−ID
を持つCPUを搭載したハードウェアでなければ使用が
できないようにすることが可能である。
【0097】ライブラリ73において、変換73a、暗
号73b及び比較73cの処理は、第1実施例と同様で
ある。ただし、ここでは変換されるコードはCPU−I
Dであり、暗号73bによって生成される認証コードB
はEkau(コンテンツID)である。
【0098】図16、17に第2実施例における各ソフ
トウェアの処理手順を示し、以下これについて説明す
る。図16に、プログラム72におけるフローチャート
を示す。ステップS31において、コンテンツ71に格
納されているコンテンツID及びハードディスク54に
格納されている認証コードA Ekau(コンテンツI
D)を読み出してライブラリ73に送る。この送る方法
は、第1実施例と同様である。
【0099】次に、ステップS32において、認証結果
がライブラリ73から受理されるのを待つ。ステップS
33において、認証結果を判断し、認証結果がYES、
すなわち正規の利用であり、利用許可を与えてよい場合
にはステップS34へ進み、プログラム本体を実行させ
る。認証結果がNO、すなわち不正利用であり、利用許
可を与えない場合には処理を終了する。
【0100】図17に、ライブラリ73におけるフロー
チャートを示す。ステップS41において、コンテンツ
IDと認証コードA Ekau(コンテンツID)を、
プログラム72から受理する。次に、ステップS42に
おいて、CPU−IDを読み込む。ステップS43にお
いて、CPU−IDをライブラリ鍵klibで変換し、
ソフトウェア認証鍵kauを生成する。
【0101】ステップS44において、受理したコンテ
ンツIDをソフトウェア認証鍵kauで暗号化し、認証
コードB Ekau(コンテンツID)を生成する。ス
テップS45において、上記2つの認証コードA、Bを
比較し、その結果を認証結果としてプログラム72に送
る。この比較処理によって2つの認証コードが一致した
場合にプログラム本体の利用許可がされることになる。
【0102】このように、第2実施例において、利用許
可装置を備えていないユーザの場合にも、第1実施例と
同様な不正利用の防止が可能である。すなわち、プログ
ラム本体をすべて暗号化することがないので、プログラ
ムの実際の利用開始までの時間が短縮化されること、認
証プログラム73は配付される媒体に共通化して格納で
きるので、供給するソフトウェアの管理が容易であるこ
と、さらに、供給するソフトウェアにはCPU−IDな
どユーザ固有の識別コードは含まれていないので、ソフ
トウェア自体が不正に複写されても利用許可は与えられ
ないこと、という効果がある。
【0103】なお、図15の第2実施例においては、識
別IDとして与えられるCPU−IDをライブラリ鍵で
変換し、さらにこれによって生成されたソフトウェア認
証鍵を用いてコンテンツIDを暗号化したが、これとは
逆に、コンテンツIDをライブラリ鍵で変換し、さらに
これによって生成されたソフトウェア認証鍵を用いてC
PU−IDを暗号化するようにしてもよい。
【0104】図18に、ソフトウェア利用許可制御の第
3実施例の説明図を示す。この第3実施例は、第1実施
例と同様の構成及びソフトウェア利用許可の制御を行
い、さらに、ユーザの利用残高などの課金情報を課金モ
ジュールに記憶させ、利用残高が残っている時などソフ
トウェアが利用可能な状態のときに、ソフトウェアの利
用許可を行うものである。
【0105】ここで、第1実施例とは異なり、ライブラ
リ73にはモジュール60に対して認証の結果を転送す
る処理(利用記憶要求処理)等を追加し、モジュール6
0には、課金情報ここではユーザの利用残高を記憶し、
その利用残高に応じて課金結果、すなわち利用可能であ
るか利用不可とすべきかの情報をライブラリ73に対し
て転送する処理(利用量管理処理)を追加する。
【0106】また、プログラム72においては、認証結
果と課金結果を受理してこれらの結果を判断して、プロ
グラムが利用可能なときにプログラムを実行させるよう
に処理を変更する。
【0107】また、比較によって得られた認証結果は、
得られたデータをそのままモジュール60へ転送しても
よいが、安全性のため、図15に示すようにソフトウェ
ア認証鍵kauで暗号化したコードEkau(R||
Y)またはEkau(R||N)を転送するのが好まし
い。また、モジュール60からライブラリ73へ送られ
る課金結果についても、ソフトウェア認証鍵kauで暗
号化したコードEkau(R||Ok)又はEkau
(R||No)を転送することが好ましい。
【0108】図19、20、21に、第3実施例におけ
る各ソフトウェアの処理手順を示し、以下これについて
説明する。図19に、プログラム72におけるフローチ
ャートを示す。ステップS51において、コンテンツI
Dをライブラリ73に送る。ステップS52において、
ライブラリ73から認証結果及び課金結果が受理される
のを待つ。
【0109】ステップS53において、認証結果を判断
し、認証結果がYES、すなわち正規の利用である場合
には、ステップS54へ進む。ステップS54におい
て、課金結果を判断し、課金結果が成功、すなわちまだ
利用残高が残っている場合には、ステップS55へ進
み、プログラム本体を実行させる。ステップS53又は
S54において、認証結果がNO、又は課金結果が失敗
の場合には、不正利用又は利用残高残っていないので、
利用許可を与えずに、処理を終了する。
【0110】図20に、ライブラリ73におけるフロー
チャートを示す。ステップS61において、コンテンツ
IDをプログラム72から受理する。次にステップS6
2において、コンテンツID及び内部で発生した乱数R
をモジュール60へI/Oコントローラ(57、66)
を介して転送する。ステップS63において、認証コー
ドB Ekau(R)がモジュール60から受理される
のを待つ。
【0111】ステップS64において、コンテンツID
をライブラリ鍵klibで変換しソフトウェア認証鍵k
auを生成する。ステップS65において、乱数Rをk
auで暗号化し、認証コードA Ekau(R)を生成
する。ステップS66において、上記2つの認証コード
A、Bを比較し、その結果を得る。
【0112】ステップS67において、認証結果がYE
S、すなわち、正規利用であると判断された場合には、
乱数Rと値“Y”との連接(R||“Y”)を計算し、
これをソフトウェア認証鍵kauで暗号化する(ステッ
プS68)。すなわちEkau(R||Y)を生成す
る。認証結果がNO、すなわち正規利用でないと判断さ
れた場合には、乱数Rと値“N”との連接(R||
“N”)を計算し、これをソフトウェア認証鍵kauで
暗号化する(ステップS69)。すなわちEkau(R
||N)を生成する。
【0113】次に、ステップS70において、上記で生
成した認証結果Ekau(R||Y)またはEkau
(R||N)をモジュール60へ送る。ステップS71
において、モジュール60から終了通知、すなわち暗号
化された課金結果を受理されるのを待つ。ここで終了通
知は、R||“Ok”をkauで暗号化したEkau
(R||OK)、あるいはR||“No”をkauで暗
号化したEkau(R||No)である。
【0114】ステップS72において、暗号化された課
金結果をkauで復号する。復号によって得られるコー
ドは、R||“Ok”又はR||“No”であり、R|
|“Ok”は課金状態が正常、すなわち利用可能な状態
であることを示し、R||“No”は課金状態が異常、
すなわち利用可能な状態でないことを示す。
【0115】ステップS73において、復号された課金
結果がR||“Ok”のときは、課金結果情報を“成
功”、たとえば1という値に設定する。また復号された
課金結果がR||“No”のときは、課金結果情報を
“失敗”、たとえば0という値に設定する。ステップS
74において、ステップS66で得られた認証結果と、
ステップS73で得られた課金結果情報を、プログラム
72へ送る。
【0116】図21に、モジュール60におけるフロー
チャートを示す。ステップS81において、コンテンツ
IDと乱数Rをライブラリ73から受理する。ステップ
S82において、コンテンツIDにより対応するソフト
ウェア認証鍵kauを検索する。ステップS83におい
て、検索によって求められたソフトウェア認証鍵kau
を用いて乱数Rを暗号化し認証コードB Ekau
(R)を生成する。
【0117】ステップS84において、生成された認証
コードB Ekau(R)をライブラリにI/Oコント
ローラを通して転送する。ステップS85において、モ
ジュール60から暗号化された認証結果Ekau(R|
|Y)又はEkau(R||N)が受理されるのを待
つ。ステップS86において、受理した暗号化された認
証結果をkauで復号する。
【0118】ステップS87において、復号された認証
結果がR||“Y”の場合、認証が正常であるとして、
ステップS88へ進み、モジュール60のハードディス
ク64に記憶された利用残高を確認する。ステップS8
8において、利用残高が残っている場合(≧1)、ステ
ップS89へ進み、利用残高を更新する。ここで利用残
高として利用回数を用いている場合、ステップS89に
おけるように利用残高から1を減ずる。
【0119】ステップS90において、課金結果として
利用可能であることを示す、R||“Ok”を設定す
る。ステップS87において、復号された認証結果がR
||“N”の場合、認証が異常、すなわち不正利用であ
るとして、ステップS91へ進み、課金結果として利用
不可であることを示すR||“No”を設定する。ステ
ップS92において、上記課金結果をkauで暗号化
し、Ekau(R||Ok)またはEkau(R||N
o)を生成する。ステップS93において、上記暗号化
された課金結果Ekau(R||Ok)またはEkau
(R||No)をライブラリ73へ送る。
【0120】このように、第3実施例において、利用許
可装置で生成した認証コードと認証プログラムで生成し
た認証コードとを比較し、さらに利用残高を記憶してお
くようにしているので、不正利用の防止と共に、正規ユ
ーザの利用に対して利用ごとに課金するという柔軟な制
御が可能である。
【0121】また、プログラム72において、利用残高
の記憶が正常に完了しプログラム本体が起動可能な状態
であることを確認後に、プログラム本体を起動している
ので、不当にプログラム本体を起動させたり、プログラ
ム本体の実行が不当に継続され続けることがないように
できる。
【0122】なお、第3実施例では、プログラム本体を
実行させる前に認証を行い、利用残高を確認して利用許
可の制御を行っているが、これに限られたものではな
く、たとえば、プログラム本体が起動後に、所定の機能
が実行されたときに、その機能が実行されたことをプロ
グラム72からライブラリ73及びモジュール60に転
送し、モジュール60において、その機能が実行された
ことを確認した後に課金制御をするようにしてもよい。
【0123】ここで、所定の機能とは、たとえば作成し
たデータあるいはファイルの保存や出力などであり、こ
れらの機能が実行されたときに、課金制御を行う。ま
た、課金制御とは、たとえば、課金を開始する、利用残
高を一定量減らす、利用回数を計算する、あるいは利用
を一部機能に制限する等が上げられる。
【0124】以上のような課金制御を行うためには、た
とえば、プログラム72において現在の動作状況を監視
する機能を追加し、ライブラリがこの動作状況を見て、
所定の機能が実行されたと判断した場合にモジュール6
0に課金制御を要求する処理をライブラリに追加すれば
よい。このように所定の機能に課金制御を行う際、必ず
ライブラリによる認証処理を行った後利用記録要求を行
うようにしておいてもよいが、一度認証処理を行った後
は利用記録要求だけを行うようにしてもよい。すなわ
ち、一度認証処理を行ったあとは認証の必要はないの
で、次に課金が必要な処理が実行された時には、利用記
録要求だけを行なえば十分である。図22に、このよう
な利用制御を行う場合の説明図を示す。2度目以降に利
用記録要求だけを行う際は、安全性を高めるため、図2
2に示すように毎回新しい乱数R’をモジュールに送る
ことが望ましい。
【0125】また、モジュール60においてタイマーを
備え、プログラム本体の利用許可を与えた後の経過時間
を記憶しておき、所定の時間が経過した後にプログラム
の利用を不可とする情報をライブラリ73及びプログラ
ム72に転送してプログラムの利用制御をするようにし
てもよい。あるいは、所定の時間経過後に、前記した課
金制御を起動させてもよい。
【0126】このようにすれば、ユーザが所定の時間だ
け課金されずにプログラムを利用することが可能となる
ので、その間に所望のプログラムかどうかを確認するこ
とができ、さらに所望するプログラムでなかった時、ま
たは誤操作によってプログラムを起動させてしまったと
きなど、課金されずに動作を終了させることができ、ユ
ーザに不利益を与えることがないようにできる。
【0127】また、ライブラリ73にタイマーを備え、
一定時間ごとに、定期的にモジュール60と何らかの交
信を行わせることにより、プログラム動作中にモジュー
ル60が不当に取り去られても、ずっと不当に利用され
続けることがないようにできる。
【0128】すなわち、ライブラリ73からモジュール
60に所定のコードを送っても一定時間経過後にモジュ
ール60からの応答がない場合には、モジュールの異常
と考えて、プログラム72の実行を停止させるような処
理をライブラリ73及びモジュール60に追加すれば、
不正利用を防止することができる。
【0129】この他、ユーザのクラスあるいはレベルに
応じて、利用許可できる機能範囲、時間あるいは回数等
についての各種条件を設定してきめ細かい利用制御をし
たい場合には、プログラム72、ライブラリ73、及び
モジュール60においてそれぞれの条件に対応する処理
プログラムを追加すればよい。このように、利用許可を
与える時期、機能等についての処理プログラムを、さら
にコンテンツ71又は利用許可装置に追加することによ
って、より柔軟な利用制御が可能となる。
【0130】以上に示した3つの実施例では、コンテン
ツIDはコンテンツに格納されたソフトウェアごとに付
与されるIDであり、ユーザ等に公開されるものである
ので、ユーザは容易に知ることができる。そこで、より
ソフトウェア利用制御の安全性をより高めるために、コ
ンテンツIDと1対1に対応し、かつソフト供給者以外
のだれにも知られることのないコンテンツ認証IDをコ
ンテンツ内に格納し、このコンテンツ認証IDを用いて
実施例で示したソフトウェア利用制御をすることが考え
られる。
【0131】すなわち、コンテンツ71に、コンテンツ
IDと、このコンテンツIDに対応するコンテンツ認証
IDを格納し、ライブラリ及び利用許可装置にコンテン
ツ認証IDを送り、このコンテンツ認証IDを用いたソ
フトウェア利用制御を行わせる。
【0132】利用許可装置のない場合には、コンテンツ
認証IDを基に生成することのできる認証コードを、予
めユーザ所有のハードウェア内のハードディスクに記憶
しておく。以上のように、ユーザに知られることのない
コンテンツ認証IDを用いることで、より安全性の高い
ソフトウェア利用制御が可能となる。
【0133】図23に、ソフトウェア利用許可制御の第
4実施例の説明図を示す。この第4実施例は、ユーザが
ソフトウェアの正規購入に先立って、そのソフトウェア
の試用を何回かできるように利用制御する場合の実施例
である。ここで、第1実施例とは異なり、ライブラリ7
3においてライブラリ鍵klibのかわりに試用鍵kl
ib−tryを用い、試用認証鍵ktryを生成する。
【0134】また、比較73cにおいて、この試用認証
鍵ktryを用いて生成した試用認証コードの比較を行
う。また、モジュール60において、ライブラリ73で
行う変換73a及び暗号73bと同様の機能を備え、コ
ンテンツID及び乱数Rを用いて試用認証コードを生成
する処理を行う。
【0135】さらに、プログラム72には予め試用回数
上限を記憶しておき、これをライブラリ73及びモジュ
ール60に送り、モジュール60では、試用回数上限を
試用残高に設定して、試用残高の管理を行う。モジュー
ル60において、この試用残高がなくなれば、試用認証
コードとは異なるコードをライブラリに送り、試用を停
止させるようにする。ここでモジュール60において管
理される試用残高は、モジュール内のRAM63に格納
することが望ましい。
【0136】また、コンテンツ72の中に格納されてい
るソフトウェアごとに試用残高を管理するために、コン
テンツ72から送られてくるコンテンツIDとその試用
残高を対応させてRAM63に記憶しておくことが望ま
しい。なお、ライブラリからモジュール60にコンテン
ツID及び乱数が送られてくるたびに、ソフトウェアの
試用が新たに行われたものとする。
【0137】ただし、このコンテンツID等を送る代わ
りに、新たなソフトウェアの試用が行われたときに、ラ
イブラリ73からモジュール60に認証処理を要求する
ための利用許可要求データを転送してもよく、後述する
試用回数の更新においては、この利用許可要求がモジュ
ール60に転送されてきたときに行うようにしてもよ
い。
【0138】この第4実施例において、ソフトウェア供
給者は、ユーザに試用してもらうために、コンテンツを
ユーザに有償又は無償で配布する。この媒体の中には、
ユーザが正規購入した際に配布される媒体と同様に認証
プログラム73を組み込んだプログラム本体72が格納
されているが、さらに試用回数上限と試用鍵klib−
tryが格納され、認証プログラム73の変換処理ルー
チンで試用鍵klib−tryを用いるようにプログラ
ミングされている。なお、ユーザに事前に配布された利
用許可装置には、コンテンツに格納された試用鍵kli
b−tryと試用鍵klib−tryを用いた変換処理
がすでに備えられているものとする。
【0139】以上のような構成を有する各部分の動作に
ついて以下に説明する。図24、25及び26に、第4
実施例における各ソフトウェアの処理手順を示す。図2
4に、プログラム72におけるフローチャートを示す。
ステップS101において、コンテンツIDと試用回数
上限を、ライブラリ73に送る。
【0140】次に、ステップS102において、ライブ
ラリから認証結果が受理されるのを待つ。ステップS1
03において、認証結果を判断し、認証結果がYES、
すなわち正規の利用であり利用許可を与えてよい場合に
はステップS104へ進み、試用のためにプログラム本
体を実行させる。認証結果がNO、すなわち不正利用で
あり利用許可を与えない場合には処理を終了する。
【0141】図25に、ライブラリ73におけるフロー
チャートを示す。ステップS111において、コンテン
ツIDと試用回数上限をプログラム72から受理する。
次にステップS112において、コンテンツID、試用
回数上限及び内部で発生した乱数Rをモジュール60へ
I/Oコントローラ(57,66)を介して転送する。
ステップS113において、認証コードB Ekau
(R)がモジュール60から受理されるのを待つ。
【0142】ステップS114において、コンテンツI
Dを試用鍵klibで変換し、ソフトウェア認証鍵kt
ryを生成する。ステップS115において、乱数Rを
ktryで暗号化し、試用認証コードAEktry
(R)を生成する。ステップS116において、上記2
つの試用認証コードA,Bを比較し、その結果を認証結
果としてプログラム72に送る。
【0143】図26にモジュール60におけるフローチ
ャートを示す。ステップS121において、コンテンツ
IDと試用回数上限と乱数Rをライブラリ73から受理
する。ステップS122において、コンテンツIDを試
用鍵klib−tryで変換し、試用鍵klib−tr
yを生成する。ステップS123において、コンテンツ
IDを用いて、RAM63に記憶されているコンテンツ
IDに対応した試用残高を検索する。
【0144】ステップS124において、検索の結果そ
のコンテンツIDに対する試用残高がRAM63にエン
トリーされていない場合には、ステップS125におい
て試用回数上限値をそのコンテンツIDに対する試用残
高としてエントリーする。すでに試用残高がエントリー
されている場合には、ステップS126へ進み、試用残
高を更新(−1)する。
【0145】ステップS127において、試用残高が0
以上、すなわち試用を許可できる場合には、ステップS
128へ進み、乱数Rを試用認証鍵klib−tryで
暗号化し、試用認証コードB Ektry(R)を生成
する。試用残高が負の数、すなわち試用を許可できない
場合には、試用認証コードBEktry(R)と異なる
コードを生成するために、乱数RとコンテンツIDとの
排他的論理和をとり、これをktryで暗号化して認証
コードEktry(R_コンテンツID)を生成する。
(ステップS129)。
【0146】ステップS130において、上記ステップ
S128またはS129で生成された認証コードをライ
ブラリに送る。以上の処理により、ライブラリ73の比
較処理において2つの試用認証コードが一致した場合に
は、プログラムの試用が許可される。また、2つの認証
コードが一致しない場合、すなわち、モジュールからE
ktry(R コンテンツID)が送られてきた場合に
は、プログラムの試用が禁止される。
【0147】このように第4実施例において、配布ある
いは購入されるコンテンツに、試用鍵klib−try
と試用回数上限とコンテンツIDとを格納し、コンテン
ツ内の認証プログラム及び利用許可装置に試用認証コー
ドを生成する処理を備え、さらに利用許可装置に試用残
高を記憶するようにしているので、利用許可装置を所有
している正規のユーザが、配布されたコンテンツあるい
は購入したコンテンツの中に含まれるソフトウェアを、
ライセンスの発行をうけることなくすぐに試用回数の限
度内で利用することが可能である。
【0148】
【発明の効果】この発明によれば、利用制御部と利用許
可部を備え、2つの認証コードを生成して比較すること
によってソフトウェア利用制御をしているので、ソフト
ウェア本体をすべて暗号化したときに比べて、ソフトウ
ェアの実際の利用開始をするまでの時間を短縮化するこ
とができる。
【0149】また、コンテンツ部及び認証部のソフトウ
ェア自体はユーザ固有のIDには依存することがないた
め、共通化することができ、供給するソフトウェアの管
理が容易である。さらに、ソフトウェアの供給媒体には
ユーザ固有のIDは直接含まれておらず、利用制御部と
利用許可部において生成される2つの認証コードを比較
してソフトウェア利用制御を行うので、ソフトウェアの
供給媒体が複写されても利用許可が与えられず不正利用
が防止できる。
【0150】また、暗号化された認証コードを用いるこ
とによって、さらにソフトウェア利用制御の安全性を高
めることができる。また、利用許可部を備えていないソ
フトウェア利用制御装置においても、ソフトウェアの実
際の利用開始までの時間の短縮化、供給するソフトウェ
アの管理の容易化及びより効果的な不正利用の防止がで
きる。
【0151】また、利用量に関する情報を記録するよう
にしているので、前記したような不正利用の防止と共
に、正規利用者の利用可又は不可の柔軟な制御が可能で
ある。
【0152】また、試用回数記憶部に試用回数を記憶
し、この試用回数がコンテンツ部8に格納された試用回
数上限を越えない場合にのみ利用を許可するように制御
するので、正規の利用者はコンテンツ部に格納されたソ
フトウェアを、すぐに試用回数上限の範囲内で利用する
ことができる。
【0153】また、コンテンツ部が、コンテンツID
と、コンテンツIDと1対1に対応し、かつ利用者には
秘密にされたコンテンツ認証IDを予め格納しておくこ
とによって、より安全性の高いソフトウェア利用制御が
可能である。
【図面の簡単な説明】
【図1】この発明のソフトウェア利用制御装置の第1構
成ブロック図である。
【図2】この発明のソフトウェア利用制御装置の第2構
成ブロック図である。
【図3】この発明のソフトウェア利用制御装置の第3構
成ブロック図である。
【図4】この発明のソフトウェア利用制御装置の第4構
成ブロック図である。
【図5】この発明のソフトウェア利用制御装置の第5構
成ブロック図である。
【図6】この発明のソフトウェア利用制御装置の第6構
成ブロック図である。
【図7】この発明のソフトウェア利用制御装置の第7構
成ブロック図である。
【図8】この発明のソフトウェア利用制御装置の第8構
成ブロック図である。
【図9】超流通システムの全体構成図である。
【図10】この発明の一実施例におけるハードウェア構
成ブロック図である。
【図11】この発明の第1実施例における利用制御の説
明図である。
【図12】この発明の第1実施例におけるプログラムの
フローチャートである。
【図13】この発明の第1実施例におけるライブラリの
フローチャートである。
【図14】この発明の第1実施例におけるモジュールの
フローチャートである。
【図15】この発明の第2実施例における利用制御の説
明図である。
【図16】この発明の第2実施例におけるプログラムの
フローチャートである。
【図17】この発明の第2実施例におけるライブラリの
フローチャートである。
【図18】この発明の第3実施例における利用制御の説
明図である。
【図19】この発明の第3実施例におけるプログラムの
フローチャートである。
【図20】この発明の第3実施例におけるライブラリの
フローチャートである。
【図21】この発明の第3実施例におけるモジュールの
フローチャートである。
【図22】この発明の第3実施例における利用制御の説
明図である。
【図23】この発明の第4実施例における利用制御の説
明図である。
【図24】この発明の第4実施例におけるプログラムの
フローチャートである。
【図25】この発明の第4実施例におけるライブラリの
フローチャートである。
【図26】この発明の第4実施例におけるモジュールの
フローチャートである。
【符号の説明】
50 ユーザ所有のハードウェア 51 CPU 52 ROM 53 RAM 54 ハードディスク 55 CRT 56 キーボード 57 I/Oコントローラ 58 FDD 59 通信回線コントローラ 60 利用許可装置(課金モジュール) 61 CPU 62 ROM 63 RAM 64 通信回線コントローラ 65 ソフトウェア認証鍵 66 I/Oコントローラ 71 コンテンツ 72 プログラム本体 73 認証プログラム
フロントページの続き (72)発明者 武仲 正彦 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 ソフトウェアの利用を許可するための認
    証コードを生成する利用許可部と、この利用許可部から
    の認証コードを受けてソフトウェアの利用の可否を決定
    する利用制御部とからなるソフトウェア利用制御装置に
    おいて、 前記利用制御部が、ソフトウェア本体とそのソフトウェ
    アごとに付与されているコンテンツIDとを格納したコ
    ンテンツ部と、認証部とを備え、 前記認証部が、乱数を生成する乱数生成部と、前記コン
    テンツIDと前記乱数を変換して認証コードを生成する
    コード生成部と、前記利用許可部にコンテンツIDと乱
    数とを転送するコード要求部と、利用許可部が生成した
    認証コードと前記コード生成部が生成した認証コードと
    を比較しその比較結果をコンテンツ部に送る比較部とか
    らなることを特徴とするソフトウェア利用制御装置。
  2. 【請求項2】 ソフトウェアの利用を許可するための識
    別IDコードを入力する識別ID入力部と、予め与えら
    れた認証コードを記憶する認証コード記憶部と、ソフト
    ウェアの利用の可否を決定する利用制御部とからなるソ
    フトウェア利用制御装置において、 前記利用制御部が、ソフトウェア本体とそのソフトウェ
    アごとに付与されているコンテンツIDとを格納したコ
    ンテンツ部と、認証部とを備え、 前記認証部が、前記コンテンツ部から送られるコンテン
    ツIDと前記識別ID入力部から送られる識別IDとを
    変換して認証コードを生成するコード生成部と、前記認
    証コード記憶部に記憶された認証コードと前記コード生
    成部が生成した認証コードとを比較しその比較結果をコ
    ンテンツ部に送る比較部とからなることを特徴とするソ
    フトウェア利用制御装置。
  3. 【請求項3】 前記コード生成部が、前記コンテンツ部
    から送られるコンテンツIDを、予め設定された鍵コー
    ドを用いて変換し認証鍵を生成する鍵生成部と、 前記乱数生成部が生成した乱数を前記認証鍵を用いて暗
    号化し認証コードを生成する暗号化部とから構成される
    ことを特徴とする請求項1記載のソフトウェア利用制御
    装置。
  4. 【請求項4】 前記コード生成部が、前記コンテンツ部
    から送られるコンテンツIDを、予め設定された鍵コー
    ドを用いて変換し認証鍵を生成する鍵生成部と、 前記識別ID入力部から入力される識別IDを前記認証
    鍵を用いて暗号化し認証コードを生成する暗号化部とか
    ら構成されることを特徴とする請求項2記載のソウトウ
    ェア利用制御装置。
  5. 【請求項5】 前記コード生成部が、前記識別ID入力
    部から入力される識別IDを、予め設定された鍵コード
    を用いて変換し認証鍵を生成する鍵生成部と、 前記コンテンツ部から送られるコンテンツIDを前記認
    証鍵を用いて暗号化し認証コードを生成する暗号化部と
    から構成されることを特徴とする請求項2記載のソフト
    ウェア利用制御装置。
  6. 【請求項6】 コンテンツ部に格納されたソフトウェア
    本体の利用量に関する情報を記憶・管理する利用量管理
    部をさらに備え、 前記利用制御部が、前記比較部から比較結果を受けて利
    用量情報の記録を前記利用量管理部に要求する利用記録
    要求部を備えることを特徴とする請求項1または3に記
    載したソフトウェア利用制御装置。
  7. 【請求項7】 前記コンテンツ部が、ソフトウェア本体
    の動作状況を監視するソフト動作監視部を備え、 前記利用記録要求部が、前記比較部から認証コードの一
    致を示す比較結果を受け、ソフト動作監視部で監視され
    るソフトウェアの動作状況が所定の条件を満足したこと
    を検知した場合のみ、前記利用記録要求部が前記利用量
    管理部に利用量に関する情報を記憶させることを特徴と
    する請求項6記載のソフトウェア利用制御装置。
  8. 【請求項8】 前記利用記録要求部が記憶が正常に終了
    したことを示す情報を前記利用量管理部から受けとった
    ときにのみ、前記利用制御部がコンテンツ部に格納され
    たソフトウェア本体の実行を継続させることを特徴とす
    る請求項7記載のソフトウェア利用制御装置。
  9. 【請求項9】 前記コンテンツ部が、予め試用回数上限
    値を格納し、 前記利用許可部が、試用認証部と、試用回数記録部と、
    試用回数管理部とをさらに備え、 前記試用認証部が、乱数を生成する乱数生成部と、前記
    コンテンツIDと前記乱数を変換して試用認証コードを
    生成する試用コード生成部とを備え、 試用回数記録部は、前記コード要求部から送られる試用
    回数上限値をもとに試用回数を記憶し、 前記コード要求部からソフトウェア利用の認証を求める
    ための利用許可要求が利用許可部に転送されるごとに試
    用回数管理部が前記試用回数記録部に記憶された試用回
    数を更新し、前記試用回数が前記試用回数上限値を越え
    ていない場合に、試用認証部が試用認証コードを生成
    し、試用回数管理部が前記試用認証コードを前記比較部
    に転送することを特徴とする請求項1または3に記載し
    たソフトウェア利用制御装置。
  10. 【請求項10】 前記コンテンツ部が、コンテンツID
    と1対1に対応しかつ利用者には秘密にされたコンテン
    ツ認証IDを予め格納し、このコンテンツ認証IDを用
    いて前記認証部及び前記利用許可部が認証コードを生成
    することを特徴とする前記請求項1,3,6,7または
    8に記載したソフトウェア利用制御装置。
  11. 【請求項11】 前記コンテンツ部が、コンテンツID
    と1対1に対応しかつ利用者には秘密にされたコンテン
    ツ認証IDを予め格納し、前記認証コード記憶部が、こ
    のコンテンツ認証IDを用いて生成された認証コードを
    予め格納し、このコンテンツ認証IDを用いて前記認証
    部が認証コードを生成することを特徴とする前記請求項
    2,4または5に記載したソフトウェア利用制御装置。
JP22543594A 1994-09-20 1994-09-20 ソフトウェア利用制御装置 Expired - Fee Related JP3630451B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22543594A JP3630451B2 (ja) 1994-09-20 1994-09-20 ソフトウェア利用制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22543594A JP3630451B2 (ja) 1994-09-20 1994-09-20 ソフトウェア利用制御装置

Publications (2)

Publication Number Publication Date
JPH0895777A true JPH0895777A (ja) 1996-04-12
JP3630451B2 JP3630451B2 (ja) 2005-03-16

Family

ID=16829328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22543594A Expired - Fee Related JP3630451B2 (ja) 1994-09-20 1994-09-20 ソフトウェア利用制御装置

Country Status (1)

Country Link
JP (1) JP3630451B2 (ja)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128337A (ja) * 1995-10-12 1997-05-16 Internatl Business Mach Corp <Ibm> コンピュータ・ネットワークにおけるマスカレード・アタック保護方法及びその装置
JPH1083298A (ja) * 1996-07-08 1998-03-31 Murakoshi Hiromasa 稼働管理システム及び稼働管理方法
JP2001325455A (ja) * 2000-05-15 2001-11-22 Nec Nexsolutions Ltd セーブ・ロード型販売システムおよび方法
JP2002056128A (ja) * 2000-08-09 2002-02-20 Nec Corp 試用ソフトウェアの管理システムおよび管理方法、および記録媒体
JP2002230432A (ja) * 2001-02-06 2002-08-16 Canon Inc デジタルデータ販売システム、デジタルデータ販売方法、コンピュータ読み取り可能な記憶媒体及びコンピュータ・プログラム
KR100353781B1 (ko) * 1998-12-11 2002-09-26 인터내셔널 비지네스 머신즈 코포레이션 데이타 과금 시스템, 콘텐츠 생성 장치, 데이타 과금 장치및 방법
JP2003072179A (ja) * 2001-09-07 2003-03-12 Toppan Printing Co Ltd 画像付き通帳作製システム及びこの通帳の作製方法
KR100388402B1 (ko) * 1998-05-15 2003-06-25 인터내셔널 비지네스 머신즈 코포레이션 디지털 파일 및 자료의 이용 관리 방법, 컴퓨터 시스템, 데이터 처리 시스템, 관리 서버, 기록 매체 및 카피 관리 시스템
JP2003523003A (ja) * 1999-12-20 2003-07-29 パット−ライツ リミテッド 他のソフトウェアの使用を正当なユーザのみに規制するためのソフトウェアおよびその方法
JP2003256060A (ja) * 2002-02-27 2003-09-10 Fujitsu Ltd プログラム使用認証方法
JP2003345453A (ja) * 2002-05-27 2003-12-05 Igaku-Shoin Ltd ソフトウェアインストール認証方法、ソフトウェアインストール認証プログラム及びソフトウェアインストール認証プログラムを記録したコンピュータ読み取り可能な記録媒体
KR100584800B1 (ko) * 2000-12-19 2006-05-30 가부시키가이샤 히타치세이사쿠쇼 디지털 콘텐츠의 라이센스 요금 계산 방법 및 시스템, 및그 처리 프로그램을 기록한 매체
US7454384B2 (en) 1998-09-29 2008-11-18 Sony Corporation Information distributing method and system
JP2009119146A (ja) * 2007-11-16 2009-06-04 Namco Bandai Games Inc サーバシステム、ゲーム装置、プログラム及び情報記憶媒体
JP2013171346A (ja) * 2012-02-17 2013-09-02 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
JP2013239036A (ja) * 2012-05-15 2013-11-28 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
CN111881423A (zh) * 2020-07-28 2020-11-03 杭州海康威视数字技术股份有限公司 限制功能使用授权方法、装置、系统

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128337A (ja) * 1995-10-12 1997-05-16 Internatl Business Mach Corp <Ibm> コンピュータ・ネットワークにおけるマスカレード・アタック保護方法及びその装置
JPH1083298A (ja) * 1996-07-08 1998-03-31 Murakoshi Hiromasa 稼働管理システム及び稼働管理方法
US5943650A (en) * 1996-07-08 1999-08-24 Hiromasa Murakoshi Operation management system and operation management method
KR100388402B1 (ko) * 1998-05-15 2003-06-25 인터내셔널 비지네스 머신즈 코포레이션 디지털 파일 및 자료의 이용 관리 방법, 컴퓨터 시스템, 데이터 처리 시스템, 관리 서버, 기록 매체 및 카피 관리 시스템
US7454384B2 (en) 1998-09-29 2008-11-18 Sony Corporation Information distributing method and system
KR100353781B1 (ko) * 1998-12-11 2002-09-26 인터내셔널 비지네스 머신즈 코포레이션 데이타 과금 시스템, 콘텐츠 생성 장치, 데이타 과금 장치및 방법
JP2003523003A (ja) * 1999-12-20 2003-07-29 パット−ライツ リミテッド 他のソフトウェアの使用を正当なユーザのみに規制するためのソフトウェアおよびその方法
JP2001325455A (ja) * 2000-05-15 2001-11-22 Nec Nexsolutions Ltd セーブ・ロード型販売システムおよび方法
JP2002056128A (ja) * 2000-08-09 2002-02-20 Nec Corp 試用ソフトウェアの管理システムおよび管理方法、および記録媒体
KR100584800B1 (ko) * 2000-12-19 2006-05-30 가부시키가이샤 히타치세이사쿠쇼 디지털 콘텐츠의 라이센스 요금 계산 방법 및 시스템, 및그 처리 프로그램을 기록한 매체
JP2002230432A (ja) * 2001-02-06 2002-08-16 Canon Inc デジタルデータ販売システム、デジタルデータ販売方法、コンピュータ読み取り可能な記憶媒体及びコンピュータ・プログラム
JP2003072179A (ja) * 2001-09-07 2003-03-12 Toppan Printing Co Ltd 画像付き通帳作製システム及びこの通帳の作製方法
JP2003256060A (ja) * 2002-02-27 2003-09-10 Fujitsu Ltd プログラム使用認証方法
JP2003345453A (ja) * 2002-05-27 2003-12-05 Igaku-Shoin Ltd ソフトウェアインストール認証方法、ソフトウェアインストール認証プログラム及びソフトウェアインストール認証プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2009119146A (ja) * 2007-11-16 2009-06-04 Namco Bandai Games Inc サーバシステム、ゲーム装置、プログラム及び情報記憶媒体
JP2013171346A (ja) * 2012-02-17 2013-09-02 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
JP2013239036A (ja) * 2012-05-15 2013-11-28 Fuji Electric Co Ltd 制御システム、制御装置及びプログラム実行制御方法
CN111881423A (zh) * 2020-07-28 2020-11-03 杭州海康威视数字技术股份有限公司 限制功能使用授权方法、装置、系统
CN111881423B (zh) * 2020-07-28 2023-09-19 杭州海康威视数字技术股份有限公司 限制功能使用授权方法、装置、系统

Also Published As

Publication number Publication date
JP3630451B2 (ja) 2005-03-16

Similar Documents

Publication Publication Date Title
AU2005223193B2 (en) Digital rights management structure, portable storage device, and contents management method using the portable storage device
US9305173B2 (en) Portable authorization device for authorizing use of protected information and associated method
EP2400362B1 (en) Adaptable security mechanism for preventing unauthorized access of digital data
JP3630451B2 (ja) ソフトウェア利用制御装置
EP0809244B1 (en) Software copying system
CN100424678C (zh) 使用隐含中间密钥来认证软件的系统和方法
US20050204405A1 (en) Method and system for digital rights management
KR20040030454A (ko) 콘텐츠 이용권한 관리시스템, 콘텐츠 이용권한 관리방법및 정보처리장치와 컴퓨터 프로그램
EP1672553B1 (en) Method of authentication of memory device and device therefor
US6665797B1 (en) Protection of software again against unauthorized use
JP2001175468A (ja) ソフトウエア使用制御方法とその装置
AU778380B2 (en) Portable authorization device for authorizing use of protected information and associated method
EP1471405A1 (en) Method and device for protecting information against unauthorised use
EP1054315B1 (en) System and program for preventing unauthorized copying of software
KR100693874B1 (ko) 판독을 제어하는 마이크로프로세서를 포함한 컴퓨터 판독매체 및 이러한 매체와 통신하도록 설정된 컴퓨터
JP3641909B2 (ja) 証明データ生成装置
KR100423506B1 (ko) 아이씨칩내장카드를 이용한 온라인상에서의 소프트웨어불법복제방지방법
JPH10312277A (ja) ソフトウェア配給方法
JP2001069133A (ja) 情報処理方法及びその装置
CN114221769B (zh) 一种基于容器的软件授权许可控制方法及装置
JP2000231486A (ja) ソフトウエアの不正コピー防止方法
JP2000207197A (ja) コンピュ―タソフトウェアのプロテクトシステム及び方法
WO2012070922A1 (en) A method of controlling license key generation
JP2012142901A (ja) 情報処理システム、及び情報処理方法
KR20030015192A (ko) 다른 소프트웨어가 정당한 사용자에 의해서만 사용되도록제한하는 소프트웨어 및 그 방법

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040506

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: 20041207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041214

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: 20071224

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081224

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091224

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091224

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101224

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111224

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111224

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121224

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees