JPH1020956A - ソフトウェア課金方法及びシステム - Google Patents

ソフトウェア課金方法及びシステム

Info

Publication number
JPH1020956A
JPH1020956A JP8170106A JP17010696A JPH1020956A JP H1020956 A JPH1020956 A JP H1020956A JP 8170106 A JP8170106 A JP 8170106A JP 17010696 A JP17010696 A JP 17010696A JP H1020956 A JPH1020956 A JP H1020956A
Authority
JP
Japan
Prior art keywords
software
user
decryption
information
processing device
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
JP8170106A
Other languages
English (en)
Inventor
Toshikiyo Tanaka
利清 田中
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.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP8170106A priority Critical patent/JPH1020956A/ja
Publication of JPH1020956A publication Critical patent/JPH1020956A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 ソフトウェアの使用機能に対応し、使用回数
に比例した使用量の徴収を可能にするソフトウェア課金
方法及びシステムを提供することを目的とする。 【解決手段】 被課金者がソフトウェアを起動し、ユー
ザ情報を課金センタに送信すると、課金センタはソフト
ウェアの使用料及び第1の復号・秘密鍵を検索すること
により取得し、被課金者IDに対応する課金情報を更新
し、取得した第1の復号・秘密鍵をユーザ処理装置に送
信し、ユーザ処理装置は、課金センタから受信した第1
の復号・秘密鍵を用いてソフトウェアの全部または、一
部の暗号化されている領域を復号し、実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ソフトウェア課金
方法及びシステムに係り、特に、CD−ROMやフロッ
ピーディスク等の媒体に格納されて配付されるソフトウ
ェアや、ネットワークを介して配付されるソフトウェア
に対して課金を行うソフトウェア課金方法及びシステム
に関する。
【0002】
【従来の技術】従来のソフトウェア課金システムには、
ソフトウェアを販売し、ユーザが当該ソフトウェアを買
い取られた時点で課金が終了する方法がある。また、ユ
ーザが配付されたソフトウェアを使用する際に、課金セ
ンタに使用する旨を通知し、これにより、課金センタで
は、ソフトウェアの使用に対する課金を行うシステムが
ある。
【0003】また、最近では、買い取り形式の変形とし
て暗号化されたソフトウェアをCD−ROM等の媒体ま
たは、ネットワーク経由で配付し、電話、ファクシミ
リ、手紙または、電子メールによる購入手続き後、復号
鍵を通知する方式も採用されている。さらに、予め利用
可能量が設定され、かつ、暗号化されたソフトウェアを
配付して、ユーザが使用した量を日数で管理し、当該日
数に基づいて課金を行う方法等がある。
【0004】
【発明が解決しようとする課題】しかしながら、上記の
買い取り方式では、流通経費を相対的に低減するために
ソフトウェアの機能は肥大化し、ユーザは、殆ど使用し
ない機能を含め、高額の費用を負担しなければならな
い。また、ソフトウェアを購入して実行してみなければ
ユーザが必要とする機能が満足されているか否かを判断
できない。
【0005】また、単に、ユーザが配付されたソフトウ
ェアを使用する際に、課金センタに使用する旨を通知す
る方法では、課金は可能であってもソフトウェアの使用
を制限することができないため、使用料金の未払いがあ
っても対処することができないという問題がある。
【0006】暗号化されたソフトウェアを予め提供し、
使用時に復号鍵を提供するシステムであっても、使用回
数に関わらず、ユーザは、同一の金額を支払う必要があ
り、使用回数または、使用時間当たりの価格には大きな
幅がある。本発明は、上記の点に鑑みなされたもので、
ソフトウェアの使用機能に対応し、使用回数に比例した
使用量の徴収を可能にするソフトウェア課金方法及びシ
ステムを提供することを目的とする。
【0007】詳しくは、ソフトウェアの使用要求に対し
て、ユーザ課金情報を更新した後、使用許可を与え、使
用許可されたソフトウェアがただ1回だけ使用可能であ
ることを保障し、1回当たりの使用料を安価にすること
が可能なソフトウェア課金方法及びシステムを提供する
ことである。
【0008】
【課題を解決するための手段】図1は、本発明の原理を
説明するための図である。本発明は、ユーザ処理装置に
提供するソフトウェアに対する使用料を課金するための
ソフトウェア課金方法において、情報提供機関は、被課
金者に提供するソフトウェアの全部または、一部を暗号
化してユーザに配付し(ステップ1)、課金センタは、
課金対象ソフトウェア毎に、登録情報として、ソフトウ
ェア識別子、ソフトウェア使用料及び暗号化されたソフ
トウェアを復号するための第1の復号・秘密鍵を登録し
ておき(ステップ2)、被課金者は、課金センタに被課
金者IDを登録しておき(ステップ3)、被課金者がソ
フトウェアを起動して(ステップ4)、該ソフトウェア
IDを含む該ソフトウェア使用通知を課金センタに送信
すると(ステップ5)、課金センタは、ソフトウェア使
用通知に基づいてソフトウェアの使用料及び第1の復号
・秘密鍵を検索し(ステップ6)、ソフトウェア使用料
で被課金者IDに対応する課金情報を更新し(ステップ
7)、取得した第1の復号・秘密鍵をユーザ処理装置に
送信し(ステップ8)、ユーザ処理装置は、課金センタ
から受信した第1の復号・秘密鍵を用いてソフトウェア
の全部または、一部の暗号化されている領域を復号し
(ステップ9)、実行する(ステップ10)。
【0009】また、本発明において、ユーザ処理装置
は、乱数を生成し、課金センタに、ソフトウェア使用通
知と共に送信し、課金センタは、ユーザ処理装置から乱
数を受信し、第1の復号・秘密鍵と共に受信した乱数を
ユーザ処理装置に送信し、ユーザ処理装置は、課金セン
タから第1の復号・秘密鍵と乱数を受信し、生成した乱
数と受信した乱数とを比較し、一致するかを判定し、一
致する場合のみソフトウェアの復号を行う。
【0010】また、本発明は、課金センタにおいて、登
録情報として、ソフトウェアに対応する第1の復号・秘
密鍵を暗号化するための第2の秘密鍵を更に含み、第2
の秘密鍵を用いて、ユーザ処理装置に送信する第1の復
号・秘密鍵を暗号化した暗号化情報をユーザ処理装置に
送信し、ユーザ処理装置では、ソフトウェアに埋め込ん
である第2の秘密鍵を抽出し、第2の秘密鍵を用いて、
暗号化情報を復号して第1の復号・秘密鍵を取得し、取
得した第1の復号・秘密鍵を用いてソフトウェアを復号
する。
【0011】また、本発明において、ユーザ処理装置
は、被課金者の第3の私的秘密鍵を用いて、課金センタ
に送信する情報の一部を暗号化することにより署名を生
成して、課金センタに送信し、課金センタは、登録情報
として、更に被課金者の第3の私的秘密鍵に対応した公
開鍵を含み、署名を該公開鍵で復号した情報と、ユーザ
処理装置から受信した他の情報と一致しているかを判定
し、一致する場合のみ第1の復号・秘密鍵をユーザ処理
処理装置に送信する。
【0012】また、本発明において、ユーザ処理装置で
は、暗号化されたソフトウェアを復号して、実行する際
に、命令フェッチ及びオペランド・フェッチによるメモ
リ・アクセスの度に、メモリから読み出した暗号化デー
タを復号して使用する。
【0013】また、本発明において、ユーザ処理装置で
は、暗号化されたソフトウェアを復号して実行する際
に、予め、復号したデータを格納するための領域を確保
し、ソフトウェアの実行開始時または、実行中に、暗号
化されたソフトウェアの全部または、一部を復号して、
復号したデータを格納する領域に格納し、ソフトウェア
の実行中の復号対象領域へのアクセスは、復号したデー
タを格納する領域へのアクセスで代替する。
【0014】また、本発明において、ユーザ処理装置
は、課金センタに、ソフトウェアの機能IDをソフトウ
ェア使用通知に付加して送信し、課金センタは、課金対
象ソフトウェア毎に、ソフトウェアID、機能に対応し
た機能ID、機能に対応した使用料及び機能に対応した
ソフトウェアを復号するための第4の復号・秘密鍵を登
録情報として登録しておき、ユーザ処理装置から送信さ
れたソフトウェアID、及び機能IDを用いて、登録情
報を検索し、機能使用料及び、第4の復号・秘密鍵を取
得し、被課金者ID、及び機能使用料を用いて、ユーザ
情報を検索して、該被課金者IDに対応した課金情報を
更新する。
【0015】また、本発明は、情報提供機関が、ユーザ
に提供するソフトウェアの一部を暗号化する際に、ソフ
トウェアのアドレス範囲内のデータを暗号化する。ま
た、本発明は、情報提供機関が、ユーザに提供するソフ
トウェアの一部を暗号化する際に、ソフトウェアの機能
単位で暗号化する。
【0016】また、本発明は、情報提供機関が、ユーザ
に提供するソフトウェアの一部を暗号化する際に、ソフ
トウェアの暗号化対象領域全ての一種類の秘密鍵で暗号
化する。また、本発明は、情報提供機関が、ユーザに提
供するソフトウェアの一部を暗号化する際に、ソフトウ
ェアの暗号化対象領域を複数の副領域に分割し、分割さ
れた各々の副領域を異なる秘密鍵で暗号化する。
【0017】図2は、本発明の原理構成図である。本発
明は、提供されたソフトウェアを使用するユーザ処理装
置100と、該ユーザ処理装置100が使用するソフト
ウェアについて課金処理を行う課金センタ200と、該
ユーザ処理装置100及び該課金センタ200を接続す
るネットワークからなるソフトウェア課金システムであ
って、ユーザ処理装置100に対して提供するソフトウ
ェアを第1の復号・秘密鍵を用いて暗号化する第1の暗
号化手段と、暗号化されたソフトウェアをユーザ処理装
置100に提供するソフトウェア提供手段とを有する情
報提供機関を含み、課金センタ200は、ユーザ処理装
置100から受信したソフトウェア使用通知に基づい
て、該ユーザ処理装置100が使用するソフトウェアに
対する課金を行う課金手段240と、課金処理が終了し
た時点で、第1の暗号化手段で用いられた第1の復号・
秘密鍵をユーザ処理装置100に送信する復号鍵送信手
段250とを有し、ユーザ処理装置100は、予め、課
金センタ200に対して自装置IDを登録するID登録
手段101と、配付されたソフトウェアを使用するソフ
トウェア使用通知を課金センタ200に通知する使用通
知手段120と、課金センタ200から受信した第1の
復号秘密鍵を用いてソフトウェアの全部または、一部暗
号化された領域を復号し、実行する第1の復号手段13
0とを有する。
【0018】また、本発明において、課金センタ200
の課金手段240は、課金対象となるソフトウェア毎
に、ソフトウェアID、ソフトウェア使用料、及び暗号
化されたソフトウェアを復号するための第1の復号・秘
密鍵を格納するための課金情報記憶手段と、ユーザ毎
に、被課金者ID及び、ユーザ課金情報を保持するユー
ザ情報記憶手段と、ソフトウェアIDを用いて、課金情
報記憶手段を検索して、ソフトウェア使用料、及び第1
の復号・秘密鍵を取得する第1の検索手段と、ユーザ処
理装置100から使用通知手段120により送信された
被課金者IDに基づいてユーザ情報記憶手段を検索し、
該被課金者IDに対応するユーザ課金情報を取得して、
ソフトウェア使用料で更新する第1の課金情報更新手段
とを含む。
【0019】また、本発明のユーザ処理装置100の通
知手段は、乱数を生成する乱数生成手段と、課金センタ
200に、ソフトウェア使用通知と共に、乱数生成手段
で生成された乱数を送信する乱数送信手段とを含み、第
1の復号手段130は、課金センタ200から受信する
乱数と乱数生成手段で生成された乱数とを比較し、一致
するかを判定し、一致するときのみ復号を行う乱数判定
手段とを含み、課金センタ200の復号鍵送信手段25
0は、乱数送信手段によりユーザ処理装置100から受
信した乱数を第1の復号・秘密鍵と共に送信する乱数送
信手段を含む。
【0020】また、本発明の課金センタ200の課金情
報記憶手段は、ソフトウェアに対応する第1の復号・秘
密鍵を暗号化するための第2の秘密鍵を更に含み、復号
鍵送信手段250は、第2の秘密鍵を用いて、ユーザ処
理装置100に送信する第1の復号・秘密鍵を暗号化し
た暗号化情報を生成する第2の暗号化手段を含み、ユー
ザ処理装置100の第1の復号手段130は、課金セン
タ200から受信した暗号化情報を、ソフトウェアに埋
め込んである第2の秘密鍵を抽出し、暗号化情報を復号
して第1の復号・秘密鍵を取得し、該第1の復号・秘密
鍵でソフトウェアを復号する第2の復号化手段を含む。
【0021】また、本発明のユーザ処理装置100の使
用通知手段120は、被課金者の第3の私的秘密鍵を用
いて、課金センタ200に送信するソフトウェア使用通
知の一部を暗号化することにより署名を生成する署名生
成手段と、課金センタ200に送信するソフトウェア使
用通知と共に署名を課金センタ200に送信する署名送
信手段を更に有し、課金センタ200は、ユーザ情報記
憶手段に、被課金者の第3の私的秘密鍵に対応した公開
鍵を含み、ユーザ情報記憶手段上の被課金者の第3の私
的秘密鍵に対応し、署名を復号するための公開鍵を用い
て、ユーザ処理装置100から受信した署名を復号し、
該ユーザ処理装置100から受信したソフトウェア使用
通知との一致を判定するユーザ情報判定手段を更に有す
る。
【0022】また、本発明の第1の復号化手段は、命令
フェッチ及びオペランド・フェッチによるメモリ・アク
セスの度に、メモリから読み出した暗号化データを復号
化して使用する手段を含む。また、本発明の第1の復号
化手段は、予め復号したデータを格納する復号データ格
納手段と、ソフトウェアの実行開始時、または、実行中
に、暗号化されたソフトウェアの全部または、一部を復
号して復号データ格納手段に格納し、該ソフトウェアの
実行中の復号対象領域へのアクセスは、復号データ格納
手段へのアクセスで代替する代替アクセス手段を含む。
【0023】また、本発明の課金センタ200は、課金
対象ソフトウェア毎に、ソフトウェアID、機能に対応
した機能ID、機能に対応した使用料及び機能に対応
し、ユーザ処理装置100に送信され、該課金対象ソフ
トウェアを復号するための第4の復号・秘密鍵を格納す
る第2の課金情報記憶手段と、ソフトウェアID及び機
能IDを用いて、第2の課金情報記憶手段を検索して、
機能使用料及び第4の復号・秘密鍵を取得する第2の検
索手段と、被課金者ID及び機能使用料を用いて、ユー
ザ情報記憶手段を検索して、被課金者IDに対応したユ
ーザ課金情報を更新する第2の課金情報更新手段を更に
有し、ユーザ処理装置100は、被課金者ID及びソフ
トウェアIDと共に、機能IDを課金センタ200に送
信するID通知手段を更に有する。
【0024】また、本発明の情報提供機関の第1の暗号
化手段は、ソフトウェアのアドレス範囲内のデータを暗
号化する手段を含む。また、本発明の情報提供機関の第
1の暗号化手段は、ソフトウェアの機能単位で暗号化す
る手段を含む。
【0025】また、本発明の情報提供機関の第1の暗号
化手段は、ソフトウェアの暗号化対象領域全ての一種類
の秘密鍵で暗号化する手段を含む。また、本発明の情報
提供機関の第1の暗号化手段は、ユーザ処理装置100
に提供するソフトウェアの一部を暗号化する際に、ソフ
トウェアの暗号化対象領域を複数の副領域に分割し、分
割された各々の副領域を異なる秘密鍵で暗号化する手段
を含む。
【0026】上記の各発明では、予め、ユーザに提供す
るソフトウェアの全部または、一部が、当該ソフトウェ
アの開発時または、提供の前に暗号化されているものと
する。このソフトウェアの一部を暗号化する場合には、
あるアドレスの範囲内のデータを暗号化してもよいし、
命令部、または、データ部を暗号化してもよいし、ある
いは、機能の単位で暗号化してもよい。また、暗号化対
象領域の全てを一種類の秘密鍵で暗号化してもよいし、
暗号化対象領域を複数の副領域に分け、それぞれの副領
域を異なる秘密鍵で暗号化してもよい。このように、種
々の方法により暗号化が可能である。
【0027】また、本発明では、ソフトウェアの提供前
に、課金センタの課金情報記憶手段に、ソフトウェアI
Dと、ソフトウェア使用料、及び上記の暗号化されたソ
フトウェアを復号するための秘密鍵を登録しておく。さ
らに、ユーザは、ソフトウェアの使用に先立ち、課金セ
ンタのユーザ情報テーブルに被課金者IDを登録してお
く。
【0028】ユーザがユーザ処理装置上でソフトウェア
を起動し、ソフトウェアの実行前または、実行中に、当
該ユーザ処理装置から、ソフトウェアID及び被課金者
IDを課金センタに送信すると、課金センタでは課金情
報記憶手段を、ユーザ処理装置から受信したソフトウェ
アIDを用いて検索し、ソフトウェアの使用料及び復号
するための秘密鍵を取得する。次に、課金センタのユー
ザ課金情報を、ユーザ処理装置から受信した被課金者I
Dを用いてユーザ情報記憶手段を検索し、課金情報テー
ブルから取得したソフトウェア使用料を用いて被課金者
のユーザ課金情報を更新することにより、被課金者毎の
課金処理を行う。さらに、課金センタは、ユーザ処理装
置に課金情報記憶手段から取得した復号するための秘密
鍵を送信する。これにより、ユーザ処理装置は、課金セ
ンタから受信した秘密鍵を用いて、ソフトウェアの全部
または、一部の暗号化されている領域を復号して実行す
る。
【0029】これにより、情報提供機関から暗号化され
たソフトウェアを提供し、ユーザが当該ソフトウェアを
実行する(起動する)際に、課金センタにおいて課金処
理を行い、当該ソフトウェアを使用するための秘密鍵を
送信することにより、ユーザに当該ソフトウェアの使用
を許可する。
【0030】さらに、ソフトウェアの一部を暗号化して
送信することにより、ユーザが全てのソフトウェアを利
用しない場合に、ユーザは、使用しないソフトウェアに
対する支払いを行う必要がない。また、本発明は、ユー
ザ処理装置において生成した乱数を課金センタに送信
し、課金センタから返却された乱数とを照合して、一致
する場合のみソフトウェアの復号を行うことにより、第
三者の不正使用を防止する。
【0031】また、本発明は、ソフトウェアを復号する
ための第1の復号秘密鍵を更に暗号化した暗号化情報を
ユーザ処理装置に送信し、ユーザ処理装置では、当該暗
号化情報を復号して取得した第1の復号鍵を用いて、ソ
フトウェアを復号して実行することにより、ユーザは、
課金センタから受信した暗号化情報を復号できない限り
ソフトウェアを復号することができない。
【0032】また、本発明は、ユーザ処理装置において
署名を生成して課金センタに送信し、課金センタにおい
て、署名を復号した情報と受信した他の情報が一致して
いるかを判定し、不一致の場合にはユーザ処理装置に第
1の復号秘密鍵を送信しないため、悪意の第三者が別の
署名を送信した場合には、ソフトウェアを復号し、実行
することができない。
【0033】また、本発明は、復号されたデータを格納
する領域を設定しておくことにより、復号されたソフト
ウェアを順次当該領域に格納しておくことにより、実行
時におけるソフトウェアのアクセスを当該領域に対して
行うことにより、既に復号されているソフトウェアが格
納されているため効率のよいアクセスが可能となる。
【0034】また、本発明は、ユーザ処理装置から課金
センタにソフトウェアIDや被課金者IDと共に、ソフ
トウェアの機能IDを併せて送信することにより、起動
するソフトウェア内の機能群単位に課金することが可能
となる。
【0035】
【発明の実施の形態】図3は、本発明のシステム構成図
である。以下に説明するシステムは、ユーザ処理装置1
00と課金センタ200及び当該ユーザ処理装置100
と課金センタ200を接続する通信網(図示せず)から
構成される。
【0036】なお、課金センタ200は、当該ソフトウ
ェアを提供する情報提供業者であり、課金システムを実
行することから便宜的に課金センタと記すものとする
が、情報提供業者と課金センタは別個に独立して設定さ
れていもよい。ユーザ処理装置100は、課金センタ送
信部120と復号部130とを有し、復号部130は、
課金対象となるソフトウェア110を復号鍵(以下、第
1の復号・秘密該)を用いて復号する。ソフトウェア1
10は、その全部または、一部が1つまたは、複数の秘
密鍵を用いて暗号化されているものであり、予め課金セ
ンタ200(情報提供業者)から提供されているものと
する。
【0037】課金センタ送信部120は、自装置の被課
金者ID等のユーザ情報及び起動するソフトウェアID
を送信する。課金センタ200は、課金情報テーブル2
10、ユーザ情報テーブル220、課金情報テーブル検
索部230、ユーザ課金情報更新部240、ユーザ処理
装置送信部250とを有する。
【0038】課金情報テーブル210は、ソフトウェア
ID,ソフトウェア使用料、暗号化されたソフトウェア
を復号するための第1の復号秘密鍵から構成される。な
お、以下の説明では、情報提供業者から、予め、ユーザ
処理装置100に配付するためのソフトウェアの全部ま
たは、一部を暗号化してユーザ処理装置100に送信
し、暗号化時に使用した秘密鍵を第1の復号秘密鍵とし
て、課金センタ200の課金情報テーブル210に登録
しておくものとする。
【0039】ユーザ情報テーブル220は、ユーザ処理
装置100から転送された被課金者IDと、ユーザ課金
情報とから構成される。課金情報テーブル検索部230
は、ユーザ処理装置100から受信したソフトウェアI
Dを用いて課金情報テーブル210を検索し、当該ソフ
トウェアの使用料を取得し、ユーザ課金情報更新部24
0に転送し、さらに、検索により、第1の復号秘密鍵を
取得して、ユーザ処理装置送信部250に転送する。
【0040】ユーザ課金情報更新部240は、ユーザ処
理装置100から受信した被課金者IDを用いてユーザ
情報テーブル220を検索し、当該被課金者のユーザ課
金情報を取得し、ソフトウェアの使用料で更新する。ユ
ーザ処理装置送信部250は、課金情報テーブル検索部
230から取得した第1の復号秘密鍵をユーザ処理装置
100に転送する。
【0041】
【実施例】以下、図面と共に、本発明の実施例を詳細に
説明する。 [第1の実施例]本実施例におけるシステム構成は、前
述の図3に示すシステム構成によるものである。
【0042】図4は、本発明の第1の実施例の動作を説
明するための図である。 ステップ101) ユーザ処理装置100は、予め、情
報提供業者から提供されたソフトウェア110を起動さ
せる。 ステップ102) 当該ソフトウェア110をメモリ上
にロードする。
【0043】ステップ103) ユーザ処理装置100
において、予め暗号化されたソフトウェア110を起動
すると、ユーザ処理装置100の課金センタ送信部12
0は、ソフトウェアIDと被課金者IDとを課金センタ
200に送信する。 ステップ104) 課金センタ200は、ユーザ処理装
置100からソフトウェアIDと被課金者IDとを受信
し、課金情報テーブル検索部230は、ソフトウェアI
Dを用いて課金情報テーブル210を検索し、当該ソフ
トウェアIDに対応するソフトウェアの使用料と、第1
の復号秘密鍵とを取得する。
【0044】ステップ105) ユーザ課金情報更新部
240は、受信した被課金者IDを用いて、ユーザ情報
テーブル220を検索し、当該被課金者のユーザ課金情
報を取得し、課金情報テーブル検索部230で検索され
たソフトウェアの使用料を用いて、ユーザ課金情報を更
新する(ソフトウェアの使用料をユーザ課金情報に加算
する)。
【0045】ステップ106) ユーザ処理装置送信部
250は、課金情報テーブル検索部230で検索された
第1の復号秘密鍵をユーザ処理装置100に送信する。 ステップ107) ユーザ処理装置100は、課金セン
タ200から受信した第1の復号秘密鍵を用いて、ソフ
トウェアの全部または、一部の暗号化されている領域を
復号して実行する。
【0046】このように、本実施例によれば、ユーザ処
理装置100からソフトウェア使用通知としてソフトウ
ェアIDと被課金者IDを課金センタ200に送出する
ことにより、課金センタからソフトウェアを復号するた
めの第1の復号・秘密鍵を受け取り、暗号化されている
ソフトウェアを復号して実行することができる。
【0047】[第2の実施例]本実施例は、乱数を用い
てソフトウェアの復号を許可することが可能か否かを判
定する処理を前述の第1の実施例に付加したものであ
る。図5は、本発明の第2の実施例のシステム構成図で
ある。同図において、図3と同一構成部分には、同一符
号を付し、その説明を省略する。
【0048】同図に示す構成は、前述の図3のシステム
構成において、ユーザ処理装置100に乱数を生成する
乱数生成部140と比較部150とを具備し、課金セン
タ200に乱数受信部260を具備する構成である。ユ
ーザ処理装置100の乱数生成部140は、乱数を生成
し、当該乱数を課金センタ送信部120に転送し、課金
センタ送信部120から課金センタ200に送信する。
比較部150は、課金センタ200から戻された乱数
と、乱数生成部140で生成された乱数と課金センタ2
00から返却された乱数とを比較し、一致している場合
に、復号部120に対してソフトウェア100の復号を
許可する。
【0049】課金センタ200の乱数受信部260は、
ユーザ処理装置100から取得した乱数をユーザ処理装
置送信部250を介してユーザ処理装置100に戻す処
理を行う。
【0050】図6は、本発明の第2の実施例の動作を説
明するための図である。 ステップ201) ユーザ処理装置100は、予め情報
提供業者から提供されたソフトウェア110を起動させ
る。 ステップ202) 当該ソフトウェア110をメモリ上
にロードする。
【0051】ステップ203) 乱数生成部140は、
乱数を生成し、課金センタ送信部120に転送する。 ステップ204) 課金センタ送信部120は、ソフト
ウェアIDと被課金者ID及び、乱数とを課金センタ2
00に送信する。
【0052】ステップ205) 課金センタ200にお
いて、乱数受信部260は、乱数を受信し、第1の実施
例と同様に、ユーザ処理装置100からソフトウェアI
Dと被課金者IDを受信し、課金情報テーブル検索部2
30は、ソフトウェアIDを用いて課金情報テーブル2
10を検索し、当該ソフトウェアIDに対応するソフト
ウェアの使用料と、第1の復号秘密鍵とを取得する。
【0053】ステップ206) ユーザ課金情報更新部
240は、受信した被課金者ID用いて、ユーザ情報テ
ーブル220を検索し、当該被課金者のユーザ課金情報
を取得し、課金情報テーブル検索部230で検索された
ソフトウェアの使用料を用いて、ユーザ課金情報を更新
する(ソフトウェアの使用料をユーザ課金情報に加算す
る)。
【0054】ステップ207) ユーザ処理装置送信部
250は、課金情報テーブル検索部230で検索された
第1の復号秘密鍵と乱数受信部260で受信した乱数を
ユーザ処理装置100に送信する。 ステップ208) ユーザ処理装置100は、課金セン
タ200から受信した乱数とステップ203で生成され
た乱数とを比較し、一致する場合には、復号部130に
おいて、課金センタ200から受信した第1の復号秘密
鍵を用いて、ソフトウェアの全部または、一部の暗号化
されている領域を復号して実行する。
【0055】本実施例では、ユーザ処理層100から課
金センタ200に送信した乱数と、課金センタ200か
ら受信した乱数とが一致したときのみソフトウェアの復
号を可能とする。 [第3の実施例]本実施例のシステム構成は、基本的に
図3に示す構成と同様であるが、課金情報テーブル21
0において、第2の秘密鍵を保持し、課金情報テーブル
検索部230においてソフトウェアIDに基づいて当該
第2の秘密鍵を検索し、ユーザ課金情報更新部240に
おいて、第1の復号・秘密鍵を暗号化する点において異
なる。
【0056】図7は、本発明の第3の実施例の動作を説
明するための図である。 ステップ301) ユーザ処理装置100は、予め、情
報提供業者から提供されたソフトウェア110を起動さ
せる。 ステップ302) 当該ソフトウェア110をメモリ上
にロードする。
【0057】ステップ303) 課金センタ送信部12
0は、ソフトウェアIDと被課金者IDを課金センタ2
00に送信する。 ステップ304) 課金センタ200は、ユーザ処理装
置100からソフトウェアIDと被課金者IDを受信
し、課金情報テーブル検索部230は、ソフトウェアI
Dを用いて課金情報テーブル210を検索し、当該ソフ
トウェアIDに対応するソフトウェアの使用料、第1の
復号秘密鍵及び、第2の秘密鍵とを取得する。
【0058】ステップ305) ユーザ課金情報更新部
240は、受信した被課金者IDを用いて、ユーザ情報
テーブル220を検索し、当該被課金者のユーザ課金情
報を取得し、課金情報テーブル検索部230で検索され
たソフトウェアの使用料を用いて、ユーザ課金情報を更
新する(ソフトウェアの使用料をユーザ課金情報に加算
する)。
【0059】ステップ306) さらに、ユーザ課金情
報更新部240は、第1の復号秘密鍵を課金情報テーブ
ル210から取得した第2の秘密鍵を用いて暗号化し、
ユーザ処理装置送信部250に転送する。 ステップ307) ユーザ処理装置送信部250は、ユ
ーザ課金情報更新部240で暗号化された情報をユーザ
処理装置100に送信する。
【0060】ステップ308) ユーザ処理装置100
の復号部130は、課金センタ200から受信した暗号
化された情報、ソフトウェア110に埋め込まれている
第2の秘密鍵を用いて復号し、第1の復号秘密鍵を取得
する。 ステップ309) さらに、復号部130は、ステップ
308で復号することにより取得した第1の復号秘密鍵
を用いて、ソフトウェアの全部または、一部の暗号化さ
れている領域を復号して実行する。
【0061】このように、本実施例によれば、第1の復
号・秘密鍵を暗号化してユーザ処理装置に送信すること
により、より安全な第1の復号・秘密鍵を送信すること
ができる。 [第4の実施例]図8は、本発明の第4の実施例のシス
テム構成図である。同図において、図3と同一構成部分
には、同一符号を付し、その説明を省略する。
【0062】図8に示すシステムにおいて、図3と異な
る構成は、ユーザ処理装置100においては、第3の私
的秘密鍵保持部160と署名生成部170を含む点であ
る。第3の私的秘密鍵保持部160は、署名を生成する
ための第3の私的秘密鍵を保持する。署名生成部170
は、第3の私的秘密鍵を用いて署名を生成する。
【0063】また、課金センタ200のユーザ情報テー
ブル220は、被課金者ID、課金情報に加えて、署名
を復号するための公開鍵を保持する。図9は、本発明の
第4の実施例のユーザ課金情報更新部の詳細な構成を示
す。同図に示すユーザ課金情報更新部240は、ユーザ
情報テーブルを検索し、公開鍵を取得するテーブル検索
部241、ユーザ処理装置100から取得した署名を公
開鍵を用いて復号する署名復号部242、ユーザ処理装
置100から受信した他の情報と復号された情報とが一
致しているかを比較する比較部243、ユーザ情報テー
ブル220を更新するテーブル更新部244から構成さ
れる。
【0064】テーブル更新部244は、比較部243に
おいて、復号化情報と、ユーザ処理装置100から受信
した情報が一致している場合に限り、被課金者のユーザ
課金情報を課金情報テーブル検索部230から取得した
ソフトウェア使用料で更新し、さらに、テーブル検索部
241から取得した、第1の復号秘密鍵をユーザ処理装
置送信部250に転送する。
【0065】図10は、本発明の第4の実施例の動作を
説明するための図である。 ステップ401) ユーザ処理装置100は、予め、情
報提供業者から提供されたソフトウェア110を起動さ
せる。 ステップ402) 当該ソフトウェア110をメモリ上
にロードする。
【0066】ステップ403) ユーザ処理装置100
の署名生成部170は、第3の私的秘密鍵保持部160
から第3の私的秘密鍵を読み出して、ソフトウェアI
D,被課金者IDとの一部を当該第3の私的秘密鍵を用
いて暗号化することにより、署名を生成し、課金センタ
送信部120に転送する。
【0067】ステップ404) 課金センタ送信部12
0は、暗号化されたソフトウェアIDと被課金者IDを
課金センタ200に送信する。 ステップ405) ユーザ課金情報更新部240のテー
ブル検索部241は、受信した暗号化情報に対して、ユ
ーザ情報テーブル220を検索して公開鍵を取得して署
名復号部242に転送する。署名復号部242は、当該
被課金者の公開鍵を取得し、当該暗号化情報を公開鍵で
復号し、比較部243に転送する。比較部243は、ユ
ーザ処理装置100から受信した他の情報と比較し、一
致しているかを判定する。一致している場合には、次の
ステップに移行する。
【0068】ステップ406) 課金センタ200の課
金情報テーブル検索部230は、ユーザ処理装置100
から受信したソフトウェアIDと被課金者IDを用い
て、課金情報テーブル210を検索し、当該ソフトウェ
アIDに対応するソフトウェアの使用料、第1の復号秘
密鍵とを取得する。
【0069】ステップ407) ユーザ課金情報更新部
240のテーブル更新部244は、課金情報テーブル検
索部230からユーザ課金情報を取得し、課金情報テー
ブル検索部230で検索されたソフトウェアの使用料を
用いて、ユーザ課金情報を更新する(ソフトウェアの使
用料をユーザ課金情報に加算する)。
【0070】ステップ408) さらに、ユーザ課金情
報更新部240は、第1の復号秘密鍵をユーザ処理装置
送信部250に転送し、ユーザ処理装置送信部250
は、ユーザ課金情報更新部240で暗号化された情報を
ユーザ処理装置100に送信する。
【0071】ステップ409) ユーザ処理装置100
の復号部130は、第1の復号秘密鍵を用いてソフトウ
ェアの全部または、一部の暗号化されている領域を復号
して実行する。なお、本発明は、前述の各実施例と組み
合わせて実行することも可能である。これにより、署名
と一致しない場合には、課金センタ200からユーザ処
理装置100に第1の復号・秘密鍵を送信しないため、
正当な署名を持たない限り、ユーザは、ソフトウェアを
復号できない。
【0072】[第5の実施例]本実施例におけるシステ
ム構成は、図3と基本的に同様である。図11は、本発
明の第5の実施例の動作を説明するための図である。 ステップ501) ユーザ処理装置100において、予
め命令部分が暗号化されたソフトウェア110を起動す
る。
【0073】ステップ502) ユーザ処理装置100
は、ソフトウェア100をロードする。 ステップ503) ユーザ処理装置100の課金センタ
送信部120は、ソフトウェアID,被課金者IDとを
課金センタ200に送信する。
【0074】ステップ504) 課金センタ200の課
金情報テーブル検索部230は、ユーザ処理装置100
から受信したソフトウェアIDを用いて課金情報テーブ
ル210を検索し、当該ソフトウェアの使用料と、第1
の復号秘密鍵とを取得する。 ステップ505) ユーザ課金情報更新部240は、ユ
ーザ処理装置100から受信した被課金者IDを用いて
ユーザ情報テーブル220を検索し、被課金者のユーザ
課金情報を課金情報テーブル210から取得したソフト
ウェア使用料で更新する。
【0075】ステップ506) ユーザ処理装置送信部
250は、課金情報テーブル検索部230から取得した
第1の復号秘密鍵をユーザ処理装置100に送信する。 ステップ507) ユーザ処理装置100の復号部13
0は、課金センタ200から受信した第1の復号秘密鍵
を用いて、次に実行する命令を読み出す。
【0076】ステップ508) 復号部130は、読み
出した命令を復号する。 ステップ509) 復号部130により復号された命令
を実行する。 ステップ508とステップ509の処理を当該復号され
た命令の全てが終了するまで繰り返す。
【0077】[第6の実施例]図12は、本発明の第6
の実施例のユーザ処理装置の構成を示す。同図におい
て、図3と同一構成部分には、同一符号を付し、その説
明を省略する。なお、本実施例は、図3の構成と同様で
ある。
【0078】図12において、ユーザ処理装置100
は、図3の構成に、復号部130で復号された命令を格
納する復号済ソフトウェア格納部180と、当該復号済
ソフトウェア格納部180に格納されている命令を順次
読み出して実行する実行部190が付加されたものであ
る。
【0079】図13は、本発明の第6の実施例の動作を
説明するための図である。 ステップ601) ユーザ処理装置100において、予
め命令部分が暗号化されたソフトウェア110を起動す
る。 ステップ602) ユーザ処理装置100は、ソフトウ
ェア100をロードする。
【0080】ステップ603) ユーザ処理装置100
の課金センタ送信部120は、ソフトウェアID,被課
金者IDとを課金センタ200に送信する。 ステップ604) 課金センタ200の課金情報テーブ
ル検索部230は、ユーザ処理装置100から受信した
ソフトウェアIDを用いて課金情報テーブル210を検
索し、当該ソフトウェアの使用料と、第1の復号秘密鍵
とを取得する。
【0081】ステップ605) ユーザ課金情報更新部
240は、ユーザ処理装置100から受信した被課金者
IDを用いてユーザ情報テーブル220を検索し、被課
金者のユーザ課金情報を課金情報テーブル210から取
得したソフトウェア使用料で更新する。
【0082】ステップ606) ユーザ処理装置送信部
250は、課金情報テーブル検索部230から取得した
第1の復号秘密鍵をユーザ処理装置100に送信する。 ステップ607) ユーザ処理装置100の復号部13
0は、課金センタ200から受信した第1の復号秘密鍵
を用いて、ソフトウェアの全部または、一部の暗号化さ
れている領域を復号する。
【0083】ステップ608) 復号部130は、復号
したソフトウェアを復号済ソフトウェア格納部180に
格納する。 ステップ609) 実行部190は、復号済ソフトウェ
ア格納部180にアクセスし、復号されたソフトウェア
を実行する。
【0084】[第7の実施例]本実施例における課金情
報テーブル210は、ソフトウェアID、機能に対応し
た機能ID,機能に対応した使用量と、機能に対応し、
暗号化されているソフトウェアの全部又は一部の領域と
して復号するための第4の復号・秘密鍵とを含むもの構
成である。第4の復号・秘密鍵は、ユーザ処理装置10
0に送信され、ソフトウェア110を復号するための鍵
である。
【0085】図14は、本発明の第7の実施例の動作を
説明するための図である。 ステップ701) ユーザ処理装置100は、予め機能
毎に異なる秘密鍵を用いて暗号化されたソフトウェアを
起動する。 ステップ702) 起動したソフトウェアをメモリ上に
ロードする。
【0086】ステップ703) ユーザ処理装置100
の課金センタ送信部120は、実行しようとする機能の
機能ID(機能A)と、ソフトウェアIDと、被課金者
IDとを課金センタ200に送信する。 ステップ704) 課金センタ200の課金情報テーブ
ル検索部230は、ユーザ処理装置から受信したソフト
ウェアIDと、機能IDとを用いて、課金情報テーブル
210を検索し、当該機能の使用料と、第4の復号秘密
鍵を取得する。
【0087】ステップ705) ユーザ課金情報更新部
240は、課金情報テーブル検索部230により取得さ
れた機能使用料でユーザ情報テーブル220を更新す
る。 ステップ706) ユーザ処理装置送信部250は、課
金情報テーブル210から取得した第1の復号秘密鍵を
ユーザ処理装置100に送信する。
【0088】ステップ707) ユーザ処理装置100
は、課金センタ200から受信した第1の復号秘密鍵を
用いて、当該機能の全部または、一部の暗号化されてい
るソフトウェアの領域を復号して実行する。上記の手順
を、当該ソフトウェアを使用してユーザが必要とする処
理が終了するまで、機能の単位で繰り返す。ステップ7
08以降は、ユーザ処理装置100から機能IDとして
“機能B”を課金センタ200に送信して、上記のステ
ップ704〜ステップ707と同様の処理を繰り返すも
のである。
【0089】なお、上記の各実施例において、ユーザ課
金情報としては、前納方式、後納方式、累積課金方式、
明細課金方式及びクレジット支払い方式のいずれにも適
用可能である。また、上記の各実施例において、ソフト
ウェアをプログラムとして説明しているが、この例に限
定されることなく、プログラムに留まらず、音声情報、
映像除法、画像情報、テキスト情報を含む全てのディジ
タル情報に対して適用可能である。
【0090】なお、本発明は、上記の実施例に限定され
ることなく、特許請求の範囲内で種々変更・応用が可能
である。
【0091】
【発明の効果】上述のように、本発明のソフトウェア課
金方法及びシステムによれば、どの時点においても暗号
化されている部分を含まないソフトウェアが、メモリ及
びディスク等の記憶媒体上に存在しないため、ソフトウ
ェアの反復使用を確実に阻止することができ、ソフトウ
ェアの使用の都度、確実に使用料を徴収することが可能
となるため、ユーザは必要な機能のみを安価な使用料で
使用することが可能となる。
【0092】また、ソフトウェアの暗号化に用いる秘密
鍵の個数と暗号化の範囲を選択することにより、起動す
るソフトウェアの単位で課金することも、起動するソフ
トウェア内の機能群単位に課金することも可能となる。
また、使用料前払い、または、使用限度額に基づくクレ
ジットを課金センタに登録して使用料残高を管理するこ
とにより、使用料の徴収漏れを防止することが可能とな
る。
【0093】また、ユーザ処理装置から課金センタに送
信する時に添付した、乱数と課金センタからユーザ処理
装置に送信する時に添付された乱数との一致を検証する
ことにより、課金センタからユーザ処理装置に送信され
た情報を横取りすることによるソフトウェアの不正使用
を防止することが可能となる。
【0094】また、課金センタからユーザ処理装置に送
信において、公開暗号方式を利用し、署名を添付するこ
とにより、他人の被課金者IDを使用したソフトウェア
の不正使用を防止することが可能となる。
【図面の簡単な説明】
【図1】本発明の原理を説明するための図である。
【図2】本発明の原理構成図である。
【図3】本発明のシステム構成図である。
【図4】本発明の第1の実施例の動作を説明するための
図である。
【図5】本発明の第2の実施例のシステム構成図であ
る。
【図6】本発明の第2の実施例の動作を説明するための
図である。
【図7】本発明の第3の実施例の動作を説明するための
図である。
【図8】本発明の第4の実施例のシステム構成図であ
る。
【図9】本発明の第4の実施例のユーザ課金情報更新部
の構成図である。
【図10】本発明の第4の実施例の動作を説明するため
の図である。
【図11】本発明の第5の実施例の動作を説明するため
の図である。
【図12】本発明の第6の実施例のユーザ処理装置の構
成図である。
【図13】本発明の第6の実施例の動作を説明するため
の図である。
【図14】本発明の第7の実施例の動作を説明するため
の図である。
【符号の説明】
100 ユーザ処理装置 101 ID登録手段 110 ソフトウェア 120 課金センタ送信部、使用通知手段 130 復号部、第1の復号・秘密手段 140 乱数生成部 150 比較部 160 第3の秘密鍵保持部 170 署名生成部 180 復号済ソフトウェア格納部 190 実行部 200 課金センタ 201 第1の暗号化手段 202 ソフトウェア提供手段 210 課金情報テーブル 220 ユーザ情報テーブル 230 課金情報テーブル検索部 240 ユーザ課金情報更新部、課金手段 241 テーブル検索部 242 署名復号部 243 比較部 244 テーブル更新部 250 ユーザ処理装置送信部、復号鍵送信手段 260 乱数受信部
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G09C 1/00 640 7259−5J G09C 1/00 640B 7259−5J 640E 660 7259−5J 660Z 7259−5J 660D

Claims (23)

    【特許請求の範囲】
  1. 【請求項1】 ユーザ処理装置に提供するソフトウェア
    に対する使用料を課金するためのソフトウェア課金方法
    において、 情報提供機関は、 被課金者に提供するソフトウェアの全部または、一部を
    暗号化してユーザに配付し、 課金センタは、 課金対象ソフトウェア毎に、登録情報として、ソフトウ
    ェア識別子、ソフトウェア使用料、及び暗号化されたソ
    フトウェアを復号するための第1の復号・秘密鍵を登録
    しておき、 前記被課金者は、前記課金センタに被課金者IDを登録
    しておき、 前記被課金者がソフトウェアを起動して、該ソフトウェ
    アIDを含む該ソフトウェア使用通知を前記課金センタ
    に送信すると、 前記課金センタは、前記ソフトウェア使用通知に基づい
    て前記ソフトウェアの使用料及び前記第1の復号・秘密
    鍵を検索し、 前記ソフトウェア使用料で前記被課金者IDに対応する
    課金情報を更新し、 取得した前記第1の復号・秘密鍵をユーザ処理装置に送
    信し、 前記ユーザ処理装置は、前記課金センタから受信した前
    記第1の復号・秘密鍵を用いて前記ソフトウェアの全部
    または、一部の暗号化されている領域を復号し、実行す
    ることを特徴とするソフトウェア課金方法。
  2. 【請求項2】 前記ユーザ処理装置は、 乱数を生成し、前記課金センタに、前記ソフトウェア使
    用通知と共に送信し、 前記課金センタは、 前記ユーザ処理装置から乱数を受信し、前記第1の復号
    ・秘密鍵と共に受信した乱数を前記ユーザ処理装置に送
    信し、 前記ユーザ処理装置は、 前記課金センタから前記第1の復号・秘密鍵と前記乱数
    を受信し、 生成した前記乱数と受信した乱数とを比較し、一致する
    かを判定し、一致する場合のみ前記ソフトウェアの復号
    を行う請求項1記載のソフトウェア課金方法。
  3. 【請求項3】 前記課金センタにおいて、 前記登録情報として、前記ソフトウェアに対応する前記
    第1の復号・秘密鍵を暗号化するための第2の秘密鍵を
    更に含み、前記第2の秘密鍵を用いて、前記ユーザ処理
    装置に送信する前記第1の復号・秘密鍵を暗号化した暗
    号化情報を前記ユーザ処理装置に送信し、 前記ユーザ処理装置では、 前記ソフトウェアに埋め込んである第2の秘密鍵を抽出
    し、 前記第2の秘密鍵を用いて、前記暗号化情報を復号して
    前記第1の復号・秘密鍵を取得し、 取得した前記第1の復号・秘密鍵を用いて前記ソフトウ
    ェアを復号する請求項1又は、2記載のソフトウェア課
    金方法。
  4. 【請求項4】 前記ユーザ処理装置は、 被課金者の第3の私的秘密鍵を用いて、前記課金センタ
    に送信する情報の一部を暗号化することにより署名を生
    成して、前記課金センタに送信し、 前記課金センタは、 前記登録情報として、更に被課金者の第3の私的秘密鍵
    に対応した公開鍵を含み、前記署名を該公開鍵で復号し
    た情報と、前記ユーザ処理装置から受信した他の情報と
    一致しているかを判定し、 一致する場合のみ前記第1の復号・秘密鍵を前記ユーザ
    処理処理装置に送信する請求項1、2、又は、3記載の
    ソフトウェア課金方法。
  5. 【請求項5】 前記ユーザ処理装置では、 暗号化された前記ソフトウェアを復号して、実行する際
    に、命令フェッチ及びオペランド・フェッチによるメモ
    リ・アクセスの度に、メモリから読み出した暗号化デー
    タを復号して使用する請求項1、2、3、又は4記載の
    ソフトウェア課金方法。
  6. 【請求項6】 前記ユーザ処理装置では、 前記暗号化されたソフトウェアを復号して実行する際
    に、 予め、復号したデータを格納するための領域を確保し、 前記ソフトウェアの実行開始時または、実行中に、前記
    暗号化されたソフトウェアの全部または、一部を復号し
    て、前記復号したデータを格納する領域に格納し、 前記ソフトウェアの実行中の復号対象領域へのアクセス
    は、前記復号したデータを格納する領域へのアクセスで
    代替する請求項1、2、3又は4記載のソフトウェア課
    金方法。
  7. 【請求項7】 前記ユーザ処理装置は、 前記課金センタに、前記ソフトウェアの機能IDを前記
    ソフトウェア使用通知に付加して送信し、 前記課金センタは、 課金対象ソフトウェア毎に、ソフトウェアID、機能に
    対応した機能ID、機能に対応した使用料及び機能に対
    応した前記ソフトウェアを復号するための第4の復号・
    秘密鍵を登録情報として登録しておき、 前記ユーザ処理装置から送信された前記ソフトウェアI
    D、及び前記機能IDを用いて、前記登録情報を検索
    し、機能使用料及び、前記第4の復号・秘密鍵を取得
    し、 前記被課金者ID、及び前記機能使用料を用いて、前記
    ユーザ情報を検索して、該被課金者IDに対応した課金
    情報を更新する請求項1、2、3、4、5又は、6記載
    のソフトウェア課金方法。
  8. 【請求項8】 前記情報提供機関が、ユーザに提供する
    ソフトウェアの一部を暗号化する際に、 前記ソフトウェアのアドレス範囲内のデータを暗号化す
    る請求項1記載のソフトウェア課金方法。
  9. 【請求項9】 前記情報提供機関が、ユーザに提供する
    ソフトウェアの一部を暗号化する際に、 前記ソフトウェアの機能単位で暗号化する請求項1記載
    のソフトウェア課金方法。
  10. 【請求項10】 前記情報提供機関が、ユーザに提供す
    るソフトウェアの一部を暗号化する際に、 前記ソフトウェアの暗号化対象領域全ての一種類の秘密
    鍵で暗号化する請求項1記載のソフトウェア課金方法。
  11. 【請求項11】 前記情報提供機関が、ユーザに提供す
    るソフトウェアの一部を暗号化する際に、 前記ソフトウェアの暗号化対象領域を複数の副領域に分
    割し、 分割された各々の副領域を異なる秘密鍵で暗号化する請
    求項10記載のソフトウェア課金方法。
  12. 【請求項12】 提供されたソフトウェアを使用するユ
    ーザ処理装置と、該ユーザ処理装置が使用するソフトウ
    ェアについて課金処理を行う課金センタと、該ユーザ処
    理装置及び該課金センタを接続するネットワークからな
    るソフトウェア課金システムであって、 前記ユーザ処理装置に対して提供するソフトウェアを第
    1の復号・秘密鍵を用いて暗号化する第1の暗号化手段
    と、 暗号化されたソフトウェアを前記ユーザ処理装置に提供
    するソフトウェア提供手段とを有する情報提供機関を含
    み、 前記課金センタは、 前記ユーザ処理装置から受信したソフトウェア使用通知
    に基づいて、該ユーザ処理装置が使用するソフトウェア
    に対する課金を行う課金手段と、 前記課金処理が終了した時点で、前記第1の暗号化手段
    で用いられた前記第1の復号・秘密鍵を前記ユーザ処理
    装置に送信する復号鍵送信手段とを有し、 前記ユーザ処理装置は、 予め、前記課金センタに対して自装置IDを登録するI
    D登録手段と、 配付されたソフトウェアを使用するソフトウェア使用通
    知を前記課金センタに通知する使用通知手段と、 前記課金センタから受信した前記第1の復号秘密鍵を用
    いて、前記ソフトウェア全部、または、一部の暗号化さ
    れている領域を復号し、実行する第1の復号手段とを有
    することを特徴とするソフトウェア課金システム。
  13. 【請求項13】 前記課金センタの前記課金手段は、 課金対象となるソフトウェア毎に、ソフトウェアID、
    ソフトウェア使用料、及び暗号化されたソフトウェアを
    復号するための第1の復号・秘密鍵を格納するための課
    金情報記憶手段と、 前記ユーザ毎に、被課金者ID及び、ユーザ課金情報を
    保持するユーザ情報記憶手段と、 前記ソフトウェアIDを用いて、前記課金情報記憶手段
    を検索して、ソフトウェア使用料、及び第1の復号・秘
    密鍵を取得する第1の検索手段と、 前記ユーザ処理装置から前記使用通知手段により送信さ
    れた被課金者IDに基づいて前記ユーザ情報記憶手段を
    検索し、該被課金者IDに対応するユーザ課金情報を取
    得して、前記ソフトウェア使用料で更新する第1の課金
    情報更新手段とを含む請求項12記載のソフトウェア課
    金システム。
  14. 【請求項14】 前記ユーザ処理装置の前記通知手段
    は、 乱数を生成する乱数生成手段と、 前記課金センタに、前記ソフトウェア使用通知と共に、
    前記乱数生成手段で生成された乱数を送信する乱数送信
    手段とを含み、 前記第1の復号手段は、 前記課金センタから受信する乱数と前記乱数生成手段で
    生成された乱数とを比較し、一致するかを判定し、一致
    するときのみ復号を行う乱数判定手段とを含み、 前記課金センタの前記復号鍵送信手段は、 前記乱数送信手段により前記ユーザ処理装置から受信し
    た前記乱数を前記第1の復号・秘密鍵と共に送信する乱
    数送信手段を含む請求項12又は13記載のソフトウェ
    ア課金システム。
  15. 【請求項15】 前記課金センタの前記課金情報記憶手
    段は、 前記ソフトウェアに対応する前記第1の復号・秘密鍵を
    暗号化するための第2の秘密鍵を更に含み、 前記復号鍵送信手段は、 前記第2の秘密鍵を用いて、前記ユーザ処理装置に送信
    する前記第1の復号・秘密鍵を暗号化した暗号化情報を
    生成する第2の暗号化手段を含み、 前記ユーザ処理装置の第1の復号手段は、 前記課金センタから受信した前記暗号化情報を、前記ソ
    フトウェアに埋め込んである第2の秘密鍵を抽出し、前
    記暗号化情報を該第2の秘密鍵で復号して、該第1の復
    号・秘密鍵を取得し、該第1の復号・秘密鍵で前記ソフ
    トウェアを復号する第2の復号化手段を含む請求項1
    2、13又は、14記載のソフトウェア課金システム。
  16. 【請求項16】 前記ユーザ処理装置の使用通知手段
    は、 被課金者の第3の私的秘密鍵を用いて、前記課金センタ
    に送信するソフトウェア使用通知の一部を暗号化するこ
    とにより署名を生成する署名生成手段と、 前記課金センタに送信する前記ソフトウェア使用通知と
    共に署名を前記課金センタに送信する署名送信手段を更
    に有し、 前記課金センタは、 前記ユーザ情報記憶手段に、被課金者の第3の私的秘密
    鍵に対応した公開鍵を含み、 前記ユーザ情報記憶手段上の前記被課金者の第3の私的
    秘密鍵に対応し、署名を復号するための公開鍵を用い
    て、前記ユーザ処理装置から受信した前記署名を復号
    し、該ユーザ処理装置から受信した前記ソフトウェア使
    用通知との一致を判定するユーザ情報判定手段を更に有
    する請求項12、13、14又は15記載のソフトウェ
    ア課金システム。
  17. 【請求項17】 前記第1の復号化手段は、 命令フェッチ及びオペランド・フェッチによるメモリ・
    アクセスの度に、メモリから読み出した暗号化データを
    復号化して使用する手段を含む請求項12、13、1
    4、15又は16記載のソフトウェア課金システム。
  18. 【請求項18】 前記第1の復号化手段は、 予め復号したデータを格納する復号データ格納手段と、 前記ソフトウェアの実行開始時、または、実行中に、暗
    号化されたソフトウェアの全部または、一部を復号して
    前記復号データ格納手段に格納し、該ソフトウェアの実
    行中の復号対象領域へのアクセスは、前記復号データ格
    納手段へのアクセスで代替する代替アクセス手段を含む
    請求項12、13、14、15又は16記載のソフトウ
    ェア課金システム。
  19. 【請求項19】 前記課金センタは、 課金対象ソフトウェア毎に、ソフトウェアID、機能に
    対応した機能ID、機能に対応した使用料及び機能に対
    応し、前記ユーザ処理装置に送信され、該課金対象ソフ
    トウェアを復号するための第4の復号・秘密鍵を格納す
    る第2の課金情報記憶手段と、 前記ソフトウェアID及び前記機能IDを用いて、前記
    第2の課金情報記憶手段を検索して、機能使用料及び第
    4の復号・秘密鍵を取得する第2の検索手段と、 前記被課金者ID及び前記機能使用料を用いて、前記ユ
    ーザ情報記憶手段を検索して、前記被課金者IDに対応
    したユーザ課金情報を更新する第2の課金情報更新手段
    を更に有し、 前記ユーザ処理装置は、 被課金者ID及びソフトウェアIDと共に、機能IDを
    前記課金センタに送信するID通知手段を更に有する請
    求項12、13、14、15、16、17または、18
    記載のソフトウェア課金システム。
  20. 【請求項20】 前記情報提供機関の前記第1の暗号化
    手段は、 前記ソフトウェアのアドレス範囲内のデータを暗号化す
    る手段を含む請求項12記載のソフトウェア課金システ
    ム。
  21. 【請求項21】 前記情報提供機関の前記第1の暗号化
    手段は、 前記ソフトウェアの機能単位で暗号化する手段を含む請
    求項12記載のソフトウェア課金システム。
  22. 【請求項22】 前記情報提供機関の前記第1の暗号化
    手段は、 前記ソフトウェアの暗号化対象領域全ての一種類の秘密
    鍵で暗号化する手段を含む請求項12記載のソフトウェ
    ア課金システム。
  23. 【請求項23】 前記情報提供機関の前記第1の暗号化
    手段は、 前記ユーザ処理装置に提供するソフトウェアの一部を暗
    号化する際に、前記ソフトウェアの暗号化対象領域を複
    数の副領域に分割し、分割された各々の副領域を異なる
    秘密鍵で暗号化する手段を含む請求項22記載のソフト
    ウェア課金システム。
JP8170106A 1996-06-28 1996-06-28 ソフトウェア課金方法及びシステム Pending JPH1020956A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8170106A JPH1020956A (ja) 1996-06-28 1996-06-28 ソフトウェア課金方法及びシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8170106A JPH1020956A (ja) 1996-06-28 1996-06-28 ソフトウェア課金方法及びシステム

Publications (1)

Publication Number Publication Date
JPH1020956A true JPH1020956A (ja) 1998-01-23

Family

ID=15898754

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8170106A Pending JPH1020956A (ja) 1996-06-28 1996-06-28 ソフトウェア課金方法及びシステム

Country Status (1)

Country Link
JP (1) JPH1020956A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000331070A (ja) * 1999-05-17 2000-11-30 Toshiba Corp デジタルデータ販売システム
WO2002025412A1 (en) * 2000-09-21 2002-03-28 Ec-One, Inc. Component service network system
JP2002244757A (ja) * 2001-02-19 2002-08-30 Sony Corp 半導体回路
US7353206B2 (en) 2000-04-14 2008-04-01 Nec Corporation Literary work royalty accounting method, network system therefor and recording medium on which control program therefor is recorded
US8141057B2 (en) 2001-02-16 2012-03-20 Sony Corporation Data processing apparatus and associated method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000331070A (ja) * 1999-05-17 2000-11-30 Toshiba Corp デジタルデータ販売システム
US7353206B2 (en) 2000-04-14 2008-04-01 Nec Corporation Literary work royalty accounting method, network system therefor and recording medium on which control program therefor is recorded
WO2002025412A1 (en) * 2000-09-21 2002-03-28 Ec-One, Inc. Component service network system
US8141057B2 (en) 2001-02-16 2012-03-20 Sony Corporation Data processing apparatus and associated method
JP2002244757A (ja) * 2001-02-19 2002-08-30 Sony Corp 半導体回路

Similar Documents

Publication Publication Date Title
JP3799757B2 (ja) 被検証データ生成装置、及び被検証データ生成プログラムを記録したコンピュータ読み取り可能な記録媒体
CN1312593C (zh) 分布系统、半导体存储卡、接收装置、计算机可读记录介质和接收方法
US6195432B1 (en) Software distribution system and software utilization scheme for improving security and user convenience
US20020002466A1 (en) Information recording apparatus, information reproducing apparatus, and information distribution system
AU2002354095B2 (en) Methods and apparatus for secure distribution of program content
JP2003316913A (ja) サービス提供方法、情報処理システム、その制御プログラム及び記憶媒体
WO2002093370A1 (en) Method and system for conditional installation and execution of services in a secure computing environment
JP2001216198A (ja) 利用許可証発行装置および方法
JP2003016041A (ja) 通信システム、サーバ装置、クライアント装置、携帯電話機、通信方法、連携処理提供方法、連携処理方法、課金代行方法、コンテンツ有効化方法、プログラムおよび記録媒体
JP2002334173A (ja) コンテンツ配信方法及びこれに用いるサーバ及び端末並びにコンピュータプログラム
JP2008515046A (ja) コンテンツの提供方法
JPH1153185A (ja) プログラムの機能単位利用量課金方法
JPH11203128A (ja) デジタルソフトウェア配布システム、端末装置および記録媒体
JP2002334227A (ja) 有料サービス提供方法、有料サービス提供システム、コンテンツサーバ、有料サービス提供用プログラム、および記録媒体
JP3641909B2 (ja) 証明データ生成装置
JP3606148B2 (ja) デジタルコンテンツ利用制御方法及びそのシステム
JP2008217300A (ja) 生体情報付きファイル暗号化システム及び復号化システム、並びにその方法
JPH08335170A (ja) プログラム使用料課金システム
JP2001069133A (ja) 情報処理方法及びその装置
JP2002334278A (ja) 携帯端末を利用した販売方法、その装置、そのプログラム及びその記録媒体
JP2004309737A (ja) 復号鍵保護プログラム及び復号鍵保護方法
JP2002007912A (ja) デジタルコンテンツ賃貸システムおよび方法
JP2003519413A (ja) 電子セキュリティ装置における改良及びこれに関連する改良
JP2002123328A (ja) ソフトウェア貸出システム
JPH09282157A (ja) ソフトウェアの課金方法及びシステム