JPH1031587A - Data terminal device and computer program - Google Patents
Data terminal device and computer programInfo
- Publication number
- JPH1031587A JPH1031587A JP8184406A JP18440696A JPH1031587A JP H1031587 A JPH1031587 A JP H1031587A JP 8184406 A JP8184406 A JP 8184406A JP 18440696 A JP18440696 A JP 18440696A JP H1031587 A JPH1031587 A JP H1031587A
- Authority
- JP
- Japan
- Prior art keywords
- data
- software
- computer program
- license
- program
- 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
Links
- 238000004590 computer program Methods 0.000 title claims description 14
- 238000000034 method Methods 0.000 claims description 21
- 238000007689 inspection Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 claims description 2
- 238000013500 data storage Methods 0.000 claims 6
- 230000006399 behavior Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 239000012141 concentrate Substances 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Abstract
(57)【要約】
【目的】ネットワーク経由で配布するソフトウエアの使
用権を遵守して動作するデータ端末装置を実現する。
【解決手段】使用者の公開鍵で暗号化し、ソフトウエア
開発元自らがディジタル署名したデータをソフトウエア
使用権のためのデータとして、移動可能な媒体に記録
し、データ端末装置はソフトウエア実行時にデータを読
み出して使用権を検査し、検査結果に応じてその動作を
変更する。
(57) [Summary] [Objective] To realize a data terminal device that operates in compliance with the right to use software distributed via a network. SOLUTION: The data is encrypted with a user's public key, and data digitally signed by a software developer himself is recorded as data for software use right on a movable medium. The data is read to check the usage right, and the operation is changed according to the check result.
Description
【0001】[0001]
【発明の属する技術分野】本発明はインターネット等の
公共のネットワークにアクセスして動作するパソコン等
のデータ端末装置およびその装置で実行するコンピュー
タプログラムに関する。[0001] 1. Field of the Invention [0002] The present invention relates to a data terminal device such as a personal computer operating by accessing a public network such as the Internet, and a computer program executed by the device.
【0002】[0002]
【従来の技術】従来のパソコン用ソフトウエアの入手方
法について述べる。この入手方法は大別して二つの方法
がある。第1の方法はユーザがパソコンショップへ出向
き、店頭でパッケージングされたソフトウエアを購入す
る方法であり、第2の方法はネットワーク経由でソフト
ウエアをダウンロードして入手する方法である。ダウン
ロードとはネットワークで接続したホストコンピュータ
から自分のパソコン等に向かってのデータ通信によりソ
フトウエアをコピーすることである。2. Description of the Related Art A conventional method for obtaining personal computer software will be described. There are roughly two ways to obtain this. The first method is a method in which a user goes to a personal computer shop and purchases software packaged at a store, and the second method is a method of downloading and obtaining software via a network. Downloading means copying software by data communication from a host computer connected to the network to a personal computer or the like.
【0003】第1の方法で購入したソフトウエアのパッ
ケージには、1)そのソフトウエアの実行形式のプログ
ラムが記録してある記録メディア、通常はフロッピーデ
ィスクあるいはCD−ROM、2)取扱説明書、3)ソ
フトウエア使用ライセンスを証明するシルアル番号(S
N)、4)ソフトウエア使用ライセンス契約書等が梱包
されている。ソフトウエア開発元とユーザ間のライセン
ス契約は記録メディア梱包を開封することにより成立す
るのが通常である。購入したソフトウエアを使用するた
めには、パソコン本体のハードディスク等の記録装置に
ソフトウエアの実行形式のプログラムをコピーしなけれ
ばならない。この作業を一般的にインストール作業とよ
ぶが、このインストール作業の方法はソフトウエアによ
って異なっている。単純に記録メディアに記録されてい
るプログラムをコピーするだけでよいものもあれば、専
用のプログラム(インストールプログラム)を実行して
プログラムをコピーし、その際、シリアル番号を入力さ
せユーザ毎に特価したプログラムをハードディスクにコ
ピーする場合もある。あるいは、インストールの際に記
録メディアにインストールを行ったことを示すデータを
書き込むなどの動作をするインストールプログラムもあ
る。シリアル番号の入力あるいは記録メディアの書換な
どは不正コピーの防止のためのものである。The software package purchased by the first method includes: 1) a recording medium on which an executable program of the software is recorded, usually a floppy disk or CD-ROM; 2) an instruction manual; 3) Serial number (S
N), 4) Software use license agreement etc. are packed. A license agreement between a software developer and a user is usually established by opening the recording medium package. In order to use the purchased software, the software executable program must be copied to a recording device such as a hard disk of the personal computer. This operation is generally called an installation operation, and the method of the installation operation differs depending on software. Some programs simply need to copy the program recorded on the recording medium. Others run a special program (installation program) to copy the program, and then enter the serial number to get a special price for each user. Sometimes the program is copied to the hard disk. Alternatively, there is an installation program that performs an operation such as writing data indicating that installation has been performed on a recording medium at the time of installation. The input of the serial number or the rewriting of the recording medium is for preventing unauthorized copying.
【0004】第2の入手方法では、記録メディアはな
い。取扱説明書、シリアル番号およびソフトウエア使用
ライセンス契約書はデータの形で配布される。この方法
の利点は簡単かつ迅速に広範囲にソフトウエアを配布で
きることである。第1の方法ではパッケージの箱を運送
するなど流通コストがかかるが、第2の方法では構成要
素はすべてのネットワーク上を伝送するだけでよい。第
2の方法ではソフトウエアのアップグレードも迅速に行
えるだけでなく、ソフトウエアの価格を低減することも
可能である。しかし、この方法ではソフトウエアは容易
に不正コピーができる欠点がある。インストールの過程
でシリアル番号を入力させることでは十分な対策とはな
らない。In the second acquisition method, there is no recording medium. Instruction manuals, serial numbers and software use license agreements are distributed in the form of data. The advantage of this method is that software can be distributed easily and quickly over a wide area. The first method involves distribution costs, such as transporting a package box, whereas the second method requires that components only be transmitted over all networks. In the second method, not only can the software upgrade be performed quickly, but also the cost of the software can be reduced. However, this method has a drawback that software can easily make illegal copies. Entering a serial number during the installation process is not a sufficient measure.
【0005】近年のインターネットの普及によりだれで
も容易にネットワークにアクセスして、ソフトウエアを
入手することが可能になりつつある。ソフトウエア入手
方法としては今後第2の方法が主流になると予想され
る。[0005] With the recent spread of the Internet, anyone can easily access a network and obtain software. The second method is expected to become the mainstream software acquisition method in the future.
【0006】また、一方ではインターネットの普及に対
応して、ネットワークに大きく依存して動作する新しい
端末の形態が議論されている。この一例はオラクル社が
1996年の自社の展示会で発表したネットワークコン
ピュータがある。これはネットワークアクセスを主たる
目的とするものであり、500ドル程度の廉価な小型の
端末装置で、少ない容量の記録装置に必要なソフトウエ
アのみを記録し、必要に応じてネットワークにアクセス
してソフトウエアをダウンロードしながら動作するもの
である。ユーザの個人情報および端末の動作条件等は付
属のICカードに記録し、ICカードを挿入し、パスワ
ードを入力するだけで、個人認証を行い、ユーザの好み
に応じた環境を構築して動作する。On the other hand, in response to the spread of the Internet, a form of a new terminal that operates largely depending on a network is being discussed. An example of this is the network computer announced by Oracle at its own exhibition in 1996. The main purpose of this is to access the network. It is an inexpensive small terminal device of about $ 500, records only the software necessary for a small-capacity recording device, and accesses the network when necessary to access the software. It operates while downloading software. The personal information of the user and the operating conditions of the terminal are recorded on the attached IC card, the personal authentication is performed only by inserting the IC card and entering the password, and the operation is performed by constructing an environment according to the user's preference. .
【0007】[0007]
【発明が解決しようとする課題】しかし、二つの入手方
法のどちらを選んでもソフトウエアの不正使用を完全に
は防止することはできない。シリアル番号による不正使
用防止策では不十分なのである。シリアル番号だけなら
正規のライセンス取得者の知人であれば容易に聞き出す
ことが可能であり、ライセンスを正規に入手せずともソ
フトウエアを自分のハードディスクにインストールして
使用することが可能である。However, neither one of the two acquisition methods can completely prevent unauthorized use of software. Prevention of unauthorized use by serial numbers is not enough. If only a serial number is used, an acquaintance of a legitimate licensee can easily retrieve the license, and can install and use the software on his or her hard disk without obtaining a license.
【0008】この不正使用防止策の不完全性は、ソフト
ウエア開発元にネットワーク経由でのソフトウエアの配
布に対して消極的な態度をとらせる結果となる。[0008] The imperfections of this fraudulent use prevention measure result in software developers becoming reluctant to distribute software over a network.
【0009】また、従来の方法によればソフトウエアの
使用はインストールを行ったパソコンのみに限定されて
しまう。ある時点で複数のパソコンにソフトウエアをイ
ンストールして使用することは許可されない。他のパソ
コンで同一のソフトを使用するためには、以前のパソコ
ンにインストールしたソフトを専用のソフトウエアによ
るかあるいは単純に削除した後に、他のパソコンにイン
ストールしなければならない。この制限は通常ソフトウ
エア使用ライセンス契約書に明記されている規約事項で
あるが、本来購入したのはソフトウエアの使用ライセン
スであるのだからライセンスを取得したものならばどの
パソコンでも当のソフトウエアが使えることが望まし
い。Further, according to the conventional method, use of the software is limited to only the personal computer on which the software has been installed. It is not permitted to install and use the software on more than one personal computer at any one time. In order to use the same software on another personal computer, the software installed on the previous personal computer must be installed on the other personal computer after using the dedicated software or simply deleting it. This restriction is usually a rule stated in the software use license agreement, but since the original purchase was a license to use the software, the software can be used on any personal computer with a license. It is desirable to be able to use it.
【0010】特にネットワーク依存型の端末では頻繁に
ネットワークにアクセスして、ソフトウエアをダウンロ
ードするが、ネットワークの効率的使用のためにはソフ
トウエアを分散して配置してデータトラフィックの集中
をさせないようにすることが望ましい。このためには適
切な不正使用の検査システムが必要であるが、その動作
に際してもソフトウエア開発元へのデータの集中を避け
なければならない。[0010] In particular, network-dependent terminals frequently access the network and download software. However, for efficient use of the network, software is distributed and arranged so as not to concentrate data traffic. Is desirable. For this purpose, an appropriate system for checking for unauthorized use is necessary, but it is necessary to avoid concentration of data on software developers in the operation.
【0011】シリアル番号の盗用による不正使用を摘発
するための方法として、ソフトウエアの動作時にシリア
ル番号をネットワーク経由でソフトウエア開発元に集め
て検査することが考えられるが、この方法はソフトウエ
ア開発元にデータを集中されるものであり好ましくな
い。As a method for detecting unauthorized use due to theft of a serial number, it is conceivable to collect and inspect the serial number at a software developer via a network when operating the software. Data is concentrated on the basis, which is not preferable.
【0012】本発明の第1の目的は、ソフトウエアをネ
ットワーク経由でパソコン等のネットワーク端末にダウ
ンロードし、ソフトウエアを動作させる際に、ソフトウ
エアの使用ライセンス契約が正しく守られているかチェ
ックし、不正使用を防止するシステムを提供することで
ある。ただし、このシステムの運用がネットワーク経由
でのソフトウエアの配布を促進する方向に働かねばなら
ない。また、システムがその運用により極端にホスト側
へのデータの集中を起こすものではならない。[0012] A first object of the present invention is to download software to a network terminal such as a personal computer via a network and check whether a license agreement for use of the software is properly maintained when operating the software. An object is to provide a system for preventing unauthorized use. However, the operation of this system must work in a way that encourages software distribution over the network. In addition, the system does not extremely concentrate data on the host side due to its operation.
【0013】本発明の第2の目的はソフトウエア使用ラ
イセンスを端末から切り離し、どの端末でも使用ライセ
ンスを取得したソフトウエアを使用可能にすることであ
る。[0013] A second object of the present invention is to separate a software use license from a terminal so that any terminal can use the software for which the use license has been acquired.
【0014】[0014]
【課題を解決するための手段】この課題を解決するため
ソフトウエアライセンスをデータ化し、移動可能な媒体
に記録し、ソフトウエア使用時にデータを読み出してラ
イセンスを検査する。In order to solve this problem, a software license is converted into data, recorded on a movable medium, and the license is checked by reading data when the software is used.
【0015】データ化のために公開鍵暗号化方式を用
い、ソフトウエア開発元が使用者の公開鍵で暗号化し、
かつソフトウエア開発元自らがディジタル署名したデー
タをソフトウエアライセンスのためのデータとする。A public key encryption method is used for data conversion, and the software developer encrypts the data with a user's public key.
In addition, the data signed by the software developer itself is used as data for a software license.
【0016】ソフトウエアは実行時に移動可能な媒体か
らデータ読み出し、データを復号することを試みる。デ
ータが正当なものでなければ、復号化は失敗して適当な
復号化データを得ることができず、ソフトウエア使用ラ
イセンスが正しく取得されていないことを知ることがで
きる。ソフトウエアは検査結果に基づいてソフトウエア
の機能を制限あついは変更して動作する。At runtime, the software attempts to read data from the removable medium and decode the data. If the data is not valid, the decryption fails and appropriate decrypted data cannot be obtained, and it can be known that the software use license has not been correctly acquired. The software operates by limiting or changing the functions of the software based on the inspection results.
【0017】[0017]
【発明の実施の形態】以下、図面を用いて本発明の実施
例を説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0018】図1は本発明の第1の実施例であり、イン
ターネットなどのネットワークにアクセスしてソフトウ
エアをダウンロードし、ダウンロードしたソフトウエア
を実行する装置本体の構成を示す。1は移動可能な記録
媒体(カード)、2はカード1を読み書きするための記
録・読みだし装置(カードアダプタ)、3はネットワー
クとの間でデータあるいはプログラムを送受信するネッ
トワークアダプタ、4はハードディスクなどのソフトウ
エアおよびデータを記録するための記録装置、5はメモ
リ、6はCPU(Central Processor Unit;中央演算
処理ユニット)、7は表示装置コントローラ、8は表示
装置、9はキーボード・マウスなどの入力装置である。
カード1、カードアダプタ2を除くと通常のパソコンと
基本的には同様の構成である。FIG. 1 shows a first embodiment of the present invention, and shows a configuration of an apparatus main body that accesses a network such as the Internet to download software and executes the downloaded software. 1 is a movable recording medium (card), 2 is a recording / reading device (card adapter) for reading and writing the card 1, 3 is a network adapter for transmitting / receiving data or a program to / from a network, 4 is a hard disk or the like. A recording device for recording software and data, 5 is a memory, 6 is a CPU (Central Processing Unit), 7 is a display device controller, 8 is a display device, 9 is an input device such as a keyboard and a mouse. It is.
Except for the card 1 and the card adapter 2, the configuration is basically the same as that of a normal personal computer.
【0019】CPUは記憶装置4あるいはネットワーク
アダプタ3より基本ソフト(OS)とアプリケーション
プログラムをメモリ5にロードする。OSおよびアプリ
ケーションプログラムはCPUに対する命令およびその
他のデータにより構成されるものであり、CPUはメモ
リにロードしたOSおよびアプリケーションプログラム
にしたがって動作する。OSおよびアプリケーションプ
ログラムを総称して単にプログラムと記す。記憶装置4
には使用頻度の高い全部あるいは必要な部分のプログラ
ムを記録しておき、動作時に生じるプログラムの不足分
はネットワークアダプタ3を使用してネットワークより
コピーしてメモリ5にロードする。CPUの処理結果は
表示装置コントローラ7を経由して、表示装置8に送
る。利用者は表示装置8を見ることにより、プログラム
の動作結果を知ることができる。利用者からの指示は入
力装置9よりCPUに伝達される。The CPU loads basic software (OS) and application programs from the storage device 4 or the network adapter 3 into the memory 5. The OS and the application programs are constituted by instructions to the CPU and other data, and the CPU operates according to the OS and the application programs loaded in the memory. The OS and the application program are collectively referred to simply as a program. Storage device 4
In this case, all frequently used or necessary programs are recorded, and the shortage of the programs generated during operation is copied from the network using the network adapter 3 and loaded into the memory 5. The processing result of the CPU is sent to the display device 8 via the display device controller 7. By viewing the display device 8, the user can know the operation result of the program. Instructions from the user are transmitted from the input device 9 to the CPU.
【0020】カード1はカードアダプタ2に対して容易
に何度でも抜き差し可能なものであり、CPU6はカー
ドアダプタ2に挿入したカード1のデータ内容を読み書
きすることができる。このカードとしてICカード、フ
ロッピーディスクなどのメディアを使用することができ
る。The card 1 can be easily inserted into and removed from the card adapter 2 as many times as possible, and the CPU 6 can read and write data contents of the card 1 inserted into the card adapter 2. A medium such as an IC card or a floppy disk can be used as the card.
【0021】図3は動作時のメモリ5の内容を示したも
のである。ここではユーザBが本装置を用いてソフトウ
エア開発元Aが開発したアプリケーションプログラムP
1を動作させる場合を説明する。ユーザBは正規にP1
の使用ライセンスを取得しているとする。OSおよびア
プリケーションプログラムのプログラムサイズがメモリ
5の容量に対して十分に小さいならばそれらプログラム
のすべてのプログラムコードをメモリ5にロードする。
そうでなければ、メモリ5にはOSおよびアプリケーシ
ョンプログラムのプログラムコードの内の必要な部分あ
るいは使用頻度の高い部分のみを常駐させる。動作時に
不足分が生じた場合、プログラムの不足分は記録装置4
からメモリ5にロードするかあるいはネットワークアダ
プタ3を使用してネットワークよりコピーしてメモリ5
にロードする。いずれにしろ動作時にはOSおよびアプ
リケーションプログラムの一部あるいは全部がメモリ5
にロードされる。FIG. 3 shows the contents of the memory 5 during operation. Here, a user B uses an application program P developed by a software developer A using the apparatus.
1 will be described. User B is legally P1
Suppose you have a license to use. If the program sizes of the OS and the application programs are sufficiently small with respect to the capacity of the memory 5, all the program codes of those programs are loaded into the memory 5.
Otherwise, only necessary or frequently used portions of the program codes of the OS and the application programs are resident in the memory 5. If a shortage occurs during operation, the shortage of the program is recorded in the recording device 4.
From the network or by copying from the network using the network adapter 3
To load. In any case, during operation, part or all of the OS and application programs are stored in the memory 5.
Is loaded.
【0022】アプリケーションプログラムP1の動作の
初期段階で使用ライセンスの検査を行う。このため、こ
の段階ではP1のプログラム領域にはP1を識別するた
めのコードであるプログラムコードPID、ライセンス
検査プログラム、A社の公開鍵PKA、ライセンス検査
プログラムがロードされ、OSのプログラム領域には公
開鍵暗号化プログラムと記録媒体読み書きプログラムが
ロードされている。The use license is checked at the initial stage of the operation of the application program P1. For this reason, at this stage, the program code PID for identifying P1, the license check program, the public key PKA of the company A, and the license check program are loaded into the program area of P1, and the program code of the OS is opened to the program area of OS. A key encryption program and a recording medium read / write program are loaded.
【0023】ここで、PIDはプログラムP1を識別す
るためのコードである。プログラム名あるいはプログラ
ム毎にユニークに決められた数字などを用いる。処理を
簡単にするためには所定サイズのデータにすることが望
ましい。Here, the PID is a code for identifying the program P1. Use a program name or a number uniquely determined for each program. In order to simplify the processing, it is desirable to use data of a predetermined size.
【0024】ライセンス検査プログラムはP1の使用ラ
イセンスをユーザが正規に取得しているかを検査するプ
ログラムである。ユーザBのライセンスに関するデータ
はカード1に記録されているので、このデータを読み出
すために記録媒体読み書きプログラム303を呼び出し
て実行する。さらに、このデータを復号するために公開
暗号化プログラム302を呼び出して実行する。The license check program is a program for checking whether the user has properly acquired the use license of P1. Since the data relating to the license of the user B is recorded on the card 1, the recording medium read / write program 303 is called and executed to read this data. Further, the public encryption program 302 is called and executed to decrypt this data.
【0025】図2はカード1に記録したデータ内容を示
すものである。データ内容は所有者の公開鍵および秘密
鍵、認証者の公開鍵、ライセンス管理テーブル、個々の
ライセンスデータより構成する。公開鍵および秘密鍵は
公開暗号化方式の暗号化あるいは復号化で使用する鍵デ
ータであり、所有者の公開鍵は適当な認証者たとえば銀
行あるいは公共機関などにより認証を受けたものを用い
る必要がある。公開鍵の正当性を高めるため、認証者は
複数であることが望ましい。ライセンス管理テーブルは
複数のライセンスデータを管理するためのデータであ
り、図に示すように全ライセンス数、個々のライセンス
データの対応するプログラムのPID、カード内での記
憶位置、サイズより構成する。ライセンスデータはユー
ザの個々のソフトウエアに対するソフトウエア使用ライ
センスをデータ化したものである。FIG. 2 shows the contents of data recorded on the card 1. The data content is composed of the owner's public key and secret key, the authenticator's public key, a license management table, and individual license data. The public key and the private key are key data used for encryption or decryption in the public encryption system, and the owner's public key must be authenticated by an appropriate authenticator, for example, a bank or a public institution. is there. In order to enhance the validity of the public key, it is desirable that there be a plurality of certifiers. The license management table is data for managing a plurality of license data, and is composed of the total number of licenses, the PID of the program corresponding to each license data, the storage position in the card, and the size as shown in the figure. The license data is obtained by converting a software use license for each piece of software of the user into data.
【0026】ライセンスデータはソフトウエア開発元が
特定のユーザに対して該当するソフトウエアの使用ライ
センスを証明するものである。具体的には、ソフトウエ
ア開発元がユーザよりユーザの公開鍵を入手し、該当す
るソフトウエアが使用するデータをユーザの公開鍵によ
り公開鍵暗号化し、暗号化したデータをソフトウエア開
発元の秘密鍵により公開鍵暗号化した暗号化データある
いは同上の暗号化データをソフトウエア開発元がディジ
タル署名した暗号化データを用いる。ユーザの公開鍵に
より暗号化することにより、ユーザ以外には現実的には
復元不可能なデータとなり、ユーザのみがそのライセン
スデータを使用することが可能になる。ここで、現実的
と限定を加えた理由は、公開鍵暗号化方式により暗号化
した暗号化データを復号化の鍵の所有者以外のものが復
元することは不可能とは言えないが、そのためには非現
実的なほど膨大な時間あるいは費用が発生するのででき
ないとの意図である。以降の説明ではのような場合には
現実的の限定なしに述べることとする。また、ライセン
スデータ生成の最後の過程がソフトウエア開発元のディ
ジタル署名でも暗号化でもよい理由は、どちらによって
もソフトウエア開発元によって作成されたデータである
ことが証明されるからである。説明でユーザおよびソフ
トウエア開発元の秘密鍵は正しく管理され、第3者がそ
れを使用できない状態にあることは前提条件である。ま
た、ユーザおよびソフトウエア開発元の公開鍵は少なく
とも一つ以上の共通の認証者によって承認されているこ
とが、相互の公開鍵の正当性の確認のために必要であ
る。The license data is used by the software developer to certify the use license of the corresponding software to a specific user. Specifically, the software developer obtains the user's public key from the user, encrypts the data used by the software with the user's public key, and encrypts the encrypted data with the secret of the software developer. Encrypted data obtained by public key encryption using a key or encrypted data obtained by digitally signing the above-described encrypted data by a software developer is used. By encrypting with the user's public key, it becomes data that cannot be actually restored by anyone but the user, and only the user can use the license data. Here, the reason why the limitation is realistic is that it is not impossible for anyone other than the owner of the decryption key to recover the encrypted data encrypted by the public key encryption method. The idea is that this would not be possible because of the impractical amount of time or expense involved. In the following description, such a case will be described without any practical limitation. The reason why the last step of license data generation may be digital signature or encryption of the software developer is that both are proved to be data created by the software developer. In the description, it is a prerequisite that the private keys of the user and the software developer are properly managed and that a third party cannot use them. In addition, it is necessary that the public keys of the user and the software developer have been approved by at least one or more common certifiers in order to confirm the mutual public keys.
【0027】説明でソフトウエアが必要とするデータと
は、ソフトウエア毎にその数、内容が異なってよい。そ
のデータはソフトウエアの動作に変化させることもあれ
ば、その動作にはまったく無関係のデータでもよい。In the description, the data required by the software may differ in the number and contents for each software. The data may be changed to the operation of software, or may be data completely unrelated to the operation.
【0028】最も単純な場合の例として、データとして
ソフトウエアのシリアル番号(SN)を用いることを考
えることができる。これは数1により示すことができ
る。As an example of the simplest case, use of a software serial number (SN) as data can be considered. This can be shown by Equation 1.
【0029】[0029]
【数1】 (Equation 1)
【0030】[0030]
【数2】 (Equation 2)
【0031】ここでライセンスデータはL1、ユーザB
の公開鍵はPKB、ソフトウエア開発元Aの秘密鍵はS
KA、プログラムP1のSNはSN1、公開暗号化方式
による暗号化演算は記号*で表わす。ソフトウエア開発
元Aは数2に基づきライセンスデータL1を発行し、ネ
ットワーク経由でユーザBに送信する。ユーザB以外の
者はライセンスデータL1を利用不可能なデータであ
り、第3者に盗聴あるいはコピーされたとしても問題は
起こらない。Here, the license data is L1, user B
The public key is PKB, and the private key of software developer A is S
The SN of KA and the program P1 is represented by SN1, and the encryption operation by the public encryption method is represented by the symbol *. The software developer A issues the license data L1 based on Equation 2, and transmits the license data L1 to the user B via the network. The license data L1 cannot be used by anyone other than the user B, and no problem occurs even if the third party eavesdrops or copies the license data L1.
【0032】前述の例より複雑な例としては、この例の
SNに替えて、ソフトウエアの動作条件を決定するパラ
メータ、付加機能使用許可のためのデータ、使用期間を
限定するデータなどを使用することが考えられる。ソフ
トウエアの動作条件を決定するパラメータの例は各国語
へのローカライズのデータが考えられる。地球規模のグ
ローバルなネットワーク上を同一のソフトウエアを配布
し、動作時に各国語に応じて切り替えるだけでよい場合
に対応する。付加機能使用許可のためのデータの例は、
ソフトウエアの機能として一般のユーザは使用しない専
門的な機能をオプションとして加える場合が考えられ
る。この場合、当然ながらライセンス料などの契約条件
が変わることが予想される。使用期間限定のデータの例
は、ソフトウエアの試用が考えられる。ソフトウエアの
新規ユーザ獲得のために一定期間に限り無償で試用を許
可することは有効である。この場合でも、ソフトウエア
本体は正規ユーザのものと同一のものを使用することが
できる。この様にライセンスデータを変えることによ
り、同一のソフトウエアを配布しながら、個々のライセ
ンス契約の内容に応じた動作をさせることが可能であ
る。As a more complicated example than the above-mentioned example, instead of the SN in this example, parameters for determining the operating conditions of the software, data for permitting use of the additional function, data for limiting the use period, and the like are used. It is possible. As an example of the parameter for determining the operating condition of the software, localization data for each language can be considered. The same software is distributed over a global network on a global scale, and it is only necessary to switch the language according to each language during operation. Examples of data for permitting use of additional functions
As a software function, a special function not used by a general user may be added as an option. In this case, it is expected that contract conditions such as a license fee will naturally change. An example of the data whose use period is limited may be trial use of software. It is effective to allow trial use free of charge only for a certain period to acquire new users of software. Even in this case, the same software main body as that of the authorized user can be used. By changing the license data in this way, it is possible to distribute the same software and operate according to the contents of each license agreement.
【0033】ソフトウエアの動作の過程を図5のフロー
チャートで説明する。ソフトウエアP1は記録装置ある
いはネットワークアダプタよりメモリロードされた後実
行される。ロード直後にソフトウエアP1内部のライセ
ンス検査プログラムが実行される。このライセンス検査
プログラムはカード1より対応するライセンスデータを
読み出し検査する。検査結果を条件として分岐して、各
結果毎(結果1、結果2、…、結果k)の処理(処理
1、処理2、…、処理k)を行う。ここで、分岐の数k
はプログラムに依存する数で通常2以上である。結果の
中のどれかは不正なライセンスを使用した場合に対応す
る。The operation of the software will be described with reference to the flowchart of FIG. The software P1 is executed after the memory is loaded from the recording device or the network adapter. Immediately after loading, the license inspection program in the software P1 is executed. This license inspection program reads the corresponding license data from the card 1 and inspects it. Branching is performed with the inspection result as a condition, and processing (processing 1, processing 2,..., Processing k) for each result (result 1, result 2,..., Result k) is performed. Here, the number k of branches
Is a number depending on the program and is usually 2 or more. Any of the results correspond to the use of an incorrect license.
【0034】本実施例によれば、ソフトウエアをネット
ワーク経由で配布する際にもライセンスを正しく管理す
ることができ、不正使用を防止することができる。ま
た、使用ライセンスをデータ化し、データにソフトウエ
ア使用上の条件を内包することにより、同一のプログラ
ムを配布しておきながらユーザ毎のライセンスの内容に
応じた動作をするプログラムを提供することができる。According to the present embodiment, licenses can be correctly managed even when software is distributed via a network, and illegal use can be prevented. Further, by converting the use license into data and including the conditions for software use in the data, it is possible to provide a program that operates according to the contents of the license for each user while distributing the same program. .
【0035】[0035]
【発明の効果】本発明によればネットワーク経由で配布
するソフトウエアの使用ライセンスの管理を正しく行う
ことができるので、ソフトウエア開発元は安心して有償
のソフトウエアのネットワーク経由で出荷することがで
きる。これによりソフトウエアのアップグレードが行わ
れる際には世界中場所を問わず迅速なアップグレードを
行うことができる。また、ネットワークによる配布によ
る流通コストの低減、および不正コピー防止の効果によ
り、ソフトウエア代金の低価格化に効果がある。According to the present invention, the use license of software distributed via a network can be correctly managed, so that the software developer can ship the software via the paid software network with peace of mind. . As a result, when a software upgrade is performed, a quick upgrade can be performed anywhere in the world. In addition, the distribution cost over a network reduces distribution costs, and the effect of preventing unauthorized copying is effective in lowering the price of software.
【図1】第1の実施例を示すブロック図。FIG. 1 is a block diagram showing a first embodiment.
【図2】第1の実施例における記録媒体のデータ内容を
示す説明図。FIG. 2 is an explanatory diagram showing data contents of a recording medium in the first embodiment.
【図3】第1の実施例におけるソフトウエア動作時のメ
モリ内容を示す説明図。FIG. 3 is an explanatory diagram showing memory contents at the time of software operation in the first embodiment.
【図4】第1の実施例の装置の利用形態を示すブロック
図。FIG. 4 is a block diagram showing a use form of the apparatus of the first embodiment.
【図5】第1の実施例のアプリケーションプログラムの
動作フローチャート。FIG. 5 is an operation flowchart of an application program according to the first embodiment.
1…移動可能な記録媒体、 2…記録媒体の記録・読み出し装置、 3…ネットワークアダプタ、 4…本体の記録装置、 5…メモリ、 6…CPU、 7…表示装置コントローラ、 8…表示装置。 DESCRIPTION OF SYMBOLS 1 ... Movable recording medium, 2 ... Recording / reading apparatus of a recording medium, 3 ... Network adapter, 4 ... Recording apparatus of a main body, 5 ... Memory, 6 ... CPU, 7 ... Display controller, 8 ... Display.
Claims (3)
段と、上記記録手段より読み出した上記コンピュータプ
ログラムを一時記憶するメモリ手段と、上記メモリ手段
に記憶したコンピュータープログラムを実行する演算処
理手段と、上記演算処理手段の処理結果を表示する表示
装置と、外部ネットワークに接続するネットワーク接続
手段と、脱着可能でかつ携帯可能な小型の脱着可能デー
タ記憶手段と、上記脱着可能データ記憶手段を本装置に
接続し、データを読み書きする脱着可能データ記憶接続
手段より構成し、上記ネットワーク接続手段により上記
外部ネットワークより上記コンピュータプログラムを読
み込み、読み込んだ上記コンピュータプログラムは一時
的に上記記憶手段に記憶するか、あるいは直接上記メモ
リ手段に記憶して上記演算処理手段により実行するよう
にし、上記脱着可能データ記憶手段には所有者の個々の
コンピュータプログラムの使用権に関するデータを記憶
し、上記コンピュータプログラムの実行時に上記使用権
に関するデータを読み出して使用権の正当性を検査し、
上記検査結果に応じて異なった動作をすることを特徴と
するデータ端末装置。Recording means for recording a computer program; memory means for temporarily storing the computer program read from the recording means; arithmetic processing means for executing the computer program stored in the memory means; A display device for displaying a processing result of the means, a network connection means for connecting to an external network, a detachable and portable small detachable data storage means, and the detachable data storage means connected to the present apparatus, A detachable data storage connection means for reading and writing data, wherein the network connection means reads the computer program from the external network, and the read computer program is temporarily stored in the storage means, or is directly stored in the memory Remember in the means The data is stored in the removable data storage means, and the data relating to the right of use of each computer program of the owner is stored in the removable data storage means. To check the legitimacy of
A data terminal device which operates differently according to the inspection result.
グラムの使用権に関するデータは上記コンピュータプロ
グラムの著作権所有者により公開鍵暗号化方式に基づい
て作成され、著作権所有者の秘密鍵および使用権購入者
の公開鍵により暗号化されたデータであるデータ端末装
置。2. The data according to claim 1, wherein the data relating to the right to use the computer program is created by a copyright holder of the computer program based on a public key encryption method, and the secret key of the copyright holder and the right to purchase the right to use are acquired. A data terminal device that is data encrypted with a public key of a user.
グラムはその内部に上記脱着可能データ記憶手段に記憶
された上記コンピュータプログラムの使用権に関するデ
ータを検査するプログラムを含み、上記検査の結果に応
じて処理動作を変更するようにプログラムしたコンピュ
ータプログラム。3. The computer program according to claim 1, wherein said computer program includes a program for checking data relating to a right to use said computer program stored in said removable data storage means, and processes the data in accordance with a result of said test. A computer program programmed to change its behavior.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8184406A JPH1031587A (en) | 1996-07-15 | 1996-07-15 | Data terminal device and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8184406A JPH1031587A (en) | 1996-07-15 | 1996-07-15 | Data terminal device and computer program |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1031587A true JPH1031587A (en) | 1998-02-03 |
Family
ID=16152619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8184406A Pending JPH1031587A (en) | 1996-07-15 | 1996-07-15 | Data terminal device and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1031587A (en) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000092004A (en) * | 1998-09-10 | 2000-03-31 | Matsushita Electric Ind Co Ltd | Reception terminal equipment and center unit |
WO2001093141A1 (en) * | 2000-06-01 | 2001-12-06 | Fujitsu Limited | System for managing right of using and recorded medium |
JP2002109253A (en) * | 2000-09-29 | 2002-04-12 | Cable Tv Kobe:Kk | Package software rental system |
JP2002521893A (en) * | 1998-07-23 | 2002-07-16 | タンブルウィード コミュニケーションズ コーポレイション | Method and apparatus for document delivery and format conversion while ensuring security |
KR100348027B1 (en) * | 2000-06-28 | 2002-08-07 | 류종렬 | Modification prevention system of program cooperated with operating system and compiler and method thereof |
JP2002251479A (en) * | 2001-02-22 | 2002-09-06 | Obic Business Consultants Ltd | Contract managing method of service providing application software on web |
JP2002258965A (en) * | 2001-02-28 | 2002-09-13 | Mitsubishi Electric Corp | Information processor |
JP2003516578A (en) * | 1999-12-07 | 2003-05-13 | ペース アンチ−パイラシー インコーポレイテッド | Portable authorizing device and associated method for authorizing use of protected information |
JP2003256060A (en) * | 2002-02-27 | 2003-09-10 | Fujitsu Ltd | Program use authentication method |
JP2003345453A (en) * | 2002-05-27 | 2003-12-05 | Igaku-Shoin Ltd | Software installation authentication method, software installation authentication program and computer- readable recording medium storing software installation authentication program |
JP2004220357A (en) * | 2003-01-15 | 2004-08-05 | Yamaha Corp | Content providing method and device |
JP2004537785A (en) * | 2001-06-06 | 2004-12-16 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Method of processing a text description, a gesture description, a facial expression description and / or a behavioral description with a permission test for the synthesis of the corresponding profile |
JP2005267493A (en) * | 2004-03-22 | 2005-09-29 | Nec Corp | Application software management system |
JP2005266896A (en) * | 2004-03-16 | 2005-09-29 | Nec Corp | System for preventing unauthorized use of software, method and program for preventing unauthorized use of software |
JP2008140091A (en) * | 2006-12-01 | 2008-06-19 | Shimadzu Corp | Analysis data management system |
JP2008210504A (en) * | 2008-03-10 | 2008-09-11 | Toshiba Corp | Information reproducing device and information recording device |
JP2012009068A (en) * | 1999-07-15 | 2012-01-12 | Thomson Licensing | Method and apparatus for using integrated circuit card to facilitate downloading content from remote server |
JP2018133030A (en) * | 2017-02-17 | 2018-08-23 | 三菱電機株式会社 | Security management system for external storage medium and security management method for external storage medium |
JP2019511759A (en) * | 2016-05-13 | 2019-04-25 | エヌチェーン ホールディングス リミテッドNchain Holdings Limited | Method and system for verifying ownership of digital assets using distributed hash tables and peer-to-peer distributed ledgers |
-
1996
- 1996-07-15 JP JP8184406A patent/JPH1031587A/en active Pending
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002521893A (en) * | 1998-07-23 | 2002-07-16 | タンブルウィード コミュニケーションズ コーポレイション | Method and apparatus for document delivery and format conversion while ensuring security |
JP2000092004A (en) * | 1998-09-10 | 2000-03-31 | Matsushita Electric Ind Co Ltd | Reception terminal equipment and center unit |
JP2012009068A (en) * | 1999-07-15 | 2012-01-12 | Thomson Licensing | Method and apparatus for using integrated circuit card to facilitate downloading content from remote server |
JP4541901B2 (en) * | 1999-12-07 | 2010-09-08 | ペース アンチ−パイラシー インコーポレイテッド | Portable authority granting device and related method for authorizing use of protected information |
JP2003516578A (en) * | 1999-12-07 | 2003-05-13 | ペース アンチ−パイラシー インコーポレイテッド | Portable authorizing device and associated method for authorizing use of protected information |
JP2005174359A (en) * | 1999-12-07 | 2005-06-30 | Pace Anti-Piracy Inc | Portable authorization device for authorizing use of protected information and related method |
WO2001093141A1 (en) * | 2000-06-01 | 2001-12-06 | Fujitsu Limited | System for managing right of using and recorded medium |
KR100348027B1 (en) * | 2000-06-28 | 2002-08-07 | 류종렬 | Modification prevention system of program cooperated with operating system and compiler and method thereof |
JP2002109253A (en) * | 2000-09-29 | 2002-04-12 | Cable Tv Kobe:Kk | Package software rental system |
JP2002251479A (en) * | 2001-02-22 | 2002-09-06 | Obic Business Consultants Ltd | Contract managing method of service providing application software on web |
JP2002258965A (en) * | 2001-02-28 | 2002-09-13 | Mitsubishi Electric Corp | Information processor |
JP2004537785A (en) * | 2001-06-06 | 2004-12-16 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Method of processing a text description, a gesture description, a facial expression description and / or a behavioral description with a permission test for the synthesis of the corresponding profile |
JP2003256060A (en) * | 2002-02-27 | 2003-09-10 | Fujitsu Ltd | Program use authentication method |
JP2003345453A (en) * | 2002-05-27 | 2003-12-05 | Igaku-Shoin Ltd | Software installation authentication method, software installation authentication program and computer- readable recording medium storing software installation authentication program |
JP2004220357A (en) * | 2003-01-15 | 2004-08-05 | Yamaha Corp | Content providing method and device |
US7294776B2 (en) | 2003-01-15 | 2007-11-13 | Yamaha Corporation | Content supply method and apparatus |
JP2005266896A (en) * | 2004-03-16 | 2005-09-29 | Nec Corp | System for preventing unauthorized use of software, method and program for preventing unauthorized use of software |
JP2005267493A (en) * | 2004-03-22 | 2005-09-29 | Nec Corp | Application software management system |
JP2008140091A (en) * | 2006-12-01 | 2008-06-19 | Shimadzu Corp | Analysis data management system |
JP2008210504A (en) * | 2008-03-10 | 2008-09-11 | Toshiba Corp | Information reproducing device and information recording device |
JP4620136B2 (en) * | 2008-03-10 | 2011-01-26 | 株式会社東芝 | Information recording device |
JP2019511759A (en) * | 2016-05-13 | 2019-04-25 | エヌチェーン ホールディングス リミテッドNchain Holdings Limited | Method and system for verifying ownership of digital assets using distributed hash tables and peer-to-peer distributed ledgers |
JP2019514087A (en) * | 2016-05-13 | 2019-05-30 | エヌチェーン ホールディングス リミテッドNchain Holdings Limited | Method and system for verifying ownership of digital assets using distributed hash tables and peer-to-peer distributed ledgers |
JP2018133030A (en) * | 2017-02-17 | 2018-08-23 | 三菱電機株式会社 | Security management system for external storage medium and security management method for external storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH1031587A (en) | Data terminal device and computer program | |
US6195432B1 (en) | Software distribution system and software utilization scheme for improving security and user convenience | |
US4953209A (en) | Self-verifying receipt and acceptance system for electronically delivered data objects | |
US6233567B1 (en) | Method and apparatus for software licensing electronically distributed programs | |
EP0768601B1 (en) | Device for executing enciphered program | |
US6411941B1 (en) | Method of restricting software operation within a license limitation | |
US8065521B2 (en) | Secure processor architecture for use with a digital rights management (DRM) system on a computing device | |
JP4464455B2 (en) | Information processing device | |
US8307215B2 (en) | System and method for an autonomous software protection device | |
US20020083318A1 (en) | Method and system for software integrity control using secure hardware assist | |
KR100888594B1 (en) | License generation method, content providing method using same, and apparatus therefor | |
US20020053024A1 (en) | Encrypted program distribution system using computer network | |
US20080262968A1 (en) | Software licensing control via mobile devices | |
US20070074050A1 (en) | System and method for software and data copy protection | |
JP3955906B1 (en) | Software management system and software management program | |
EA012921B1 (en) | Method and device for protecting software from unauthorized use | |
JPWO2007108127A1 (en) | System program download system | |
JP2000330873A (en) | Contents distribution system, method therefor and recording medium | |
JP2008234217A (en) | Information processor, method of protecting information, and image processor | |
CN107832589A (en) | Software copyright protecting method and its system | |
TW200820076A (en) | Portable mass storage with virtual machine activation | |
JP2003050641A (en) | Program management system, its program management method, and information management program | |
US7334265B1 (en) | System and program for preventing unauthorized copying of software | |
JP3758316B2 (en) | Software license management apparatus and method | |
CA2475384A1 (en) | System and method for digital content management and controlling copyright protection |