JPH0383132A - Software protection control system - Google Patents

Software protection control system

Info

Publication number
JPH0383132A
JPH0383132A JP1218615A JP21861589A JPH0383132A JP H0383132 A JPH0383132 A JP H0383132A JP 1218615 A JP1218615 A JP 1218615A JP 21861589 A JP21861589 A JP 21861589A JP H0383132 A JPH0383132 A JP H0383132A
Authority
JP
Japan
Prior art keywords
software
key
user
unit
section
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
JP1218615A
Other languages
Japanese (ja)
Inventor
Mitsuhiro Azuma
充宏 東
Takayuki Hasebe
高行 長谷部
Masami Matsumoto
松元 雅美
Satoshi Sonohara
苑原 聡
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 JP1218615A priority Critical patent/JPH0383132A/en
Publication of JPH0383132A publication Critical patent/JPH0383132A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To protect software by ciphering a decipher key of software with an individual key of a user to obtain assent information and enabling only a regular user to decipher the decipher key from assent information. CONSTITUTION:In a software managing part 1, an individual key of the regular user is generated by an individual key generating part 3 and is reported, and software of a normal text is ciphered with the decipher key by a software ciphering part 5 to obtain a ciphered text, and the decipher key is ciphered with the individual key by a key ciphering part 4 to obtain assent information. Ciphered text software and the decipher key ciphered as assent information are transferred to the user. Though software presented from the software managing part 1 is copied, deciphering and execution without the decipher key are impossible because it is ciphered, and thus, software is protected.

Description

【発明の詳細な説明】 〔概要〕 コンピュータの各種のソフトウェアの不正使用を防止す
るソフトウェア保護制御方式に関し、正規のユーザのみ
が暗号化されたソウトウエアを復号して実行できるよう
にすることを目的とし、ソフトウェア管理部に於いてソ
フトウェアを暗号化してユーザに提供し、該ソフトウェ
アをソフトウェア実行部に於いて復号して実行するソフ
トウェア保護制御方式に於いて、前記ソフトウェア管理
部の個別鍵生成部に於いてユーザの個別鍵を生成し、該
個別鍵によりソフトの復号鍵を鍵暗号化部に於いて暗号
化して許諾情報を形成し、且つ前記復号鍵によりソフト
ウェアをソフトウェア暗号化部に於いて暗号化して提供
し、前記ソフトウェア実行部の鍵復号化部に於いて前記
許諾情報を前記個別鍵により復号して前記復号鍵を形成
し、該復号鍵により前記暗号化されたソフトウェアをソ
フトウェア復号化部に於いて復号して実行するように構
成した。
[Detailed Description of the Invention] [Summary] This invention relates to a software protection control method for preventing unauthorized use of various types of computer software, and aims to enable only authorized users to decrypt and execute encrypted software. In a software protection control method in which a software management section encrypts software and provides it to a user, and a software execution section decrypts and executes the software, an individual key generation section of the software management section generates a user's individual key, uses the individual key to encrypt a software decryption key in a key encryption unit to form permission information, and uses the decryption key to encrypt the software in a software encryption unit. The key decryption unit of the software execution unit decrypts the permission information using the individual key to form the decryption key, and the decryption key causes the encrypted software to be sent to the software decryption unit. It was configured to decrypt and execute it.

〔産業上の利用分野〕[Industrial application field]

本発明は、コンピュータの各種のソフトウェアの不正使
用を防止するソフトウェア保護制御方式に関するもので
ある。
The present invention relates to a software protection control system for preventing unauthorized use of various types of computer software.

コンピュータのソフトウェアの開発が、ハードウェアの
開発を凌ぐ勢いで行われており、特に、パーソナルコン
ピュータ(以下パソコン、l称)用のソフトウェアは、
多数のソフトウェアベンダーによって提供されるように
なり、その種類も多数となっている。
The development of computer software is progressing at a faster pace than the development of hardware, and in particular, software for personal computers (hereinafter referred to as personal computers) is
It is now provided by many software vendors, and there are many types.

しかし、ソフトウェアはハードウェアのような有体物で
はなく、復製が容易なものであり、従って、新たに開発
されたソフトウェアであっても、複製により正規のユー
ザ以外でも容易に利用することが可能となり、ソフトウ
ェアベンダーの利益を守ることができないものであった
However, software is not a tangible object like hardware and can be easily reproduced. Therefore, even newly developed software can be easily used by non-authorized users by copying it. It was impossible to protect the interests of software vendors.

そこで、ソフトウェアの正規のユーザのみが、そのソフ
トウェアを実行できるようにすることが要望されている
Therefore, it is desired to allow only authorized users of the software to execute the software.

[従来の技術] パソコン用のソフトウェアの保護制?1方式は、例えば
、(1)ソフトウェアによる方式と、(2)ハードウェ
アを併用する方式と、(3)その他の方式に分けること
ができる。ソフトウェアによる方式(1)は、例えば、
ソフトウェアが格納されたフロッピィディスク等の記憶
領域の中で、O3(オペレーティング・システム)によ
りサポートするコマンドではコピーできない領域に、成
る情報を書込んで置き、ソフトウェアの実行開始時に、
その領域のデータを続出して、設定データと一敗しない
場合は実行できないようにする方式である。
[Conventional technology] Protection system for computer software? One method can be divided into, for example, (1) a method using software, (2) a method using hardware in combination, and (3) other methods. Method (1) using software is, for example,
In a storage area such as a floppy disk in which software is stored, information is written in an area that cannot be copied using commands supported by O3 (operating system), and when the software starts running,
This is a method in which the data in that area is output one after another, and execution is not possible unless the setting data is defeated.

又ハードウェアを併用する方式(2)は、拡張スロット
等に専用のハードウェアをセットし、ソフトウェアの実
行が可能か否かを判断させるもので、正規のユーザのみ
がそのソフトウェアを実行できるようにし、そのハード
ウェアがセットされていないパソコンは、当然にそのソ
フトウェアを実行できないものである。
Method (2), which uses hardware in combination, involves setting dedicated hardware in an expansion slot, etc., and determining whether or not the software can be executed, ensuring that only authorized users can execute the software. , a personal computer that is not equipped with that hardware will naturally not be able to run that software.

又その他の方式(3)は、例えば、暗号化したソフトウ
ェアの利用の条件を記述した許諾条件プログラムを設け
て、許諾条件以外の条件の場合は、そのソフトウェアを
実行できないようにした方式が提案されている。この方
式については、電子通信学会論文誌、1987年1月、
 Vol、 J 70−D、kl、第70頁〜第81頁
の「ソフトウェア・サービス・システム(SSS)の提
案」及び電子通信学会論文誌、1987年2月、 Vo
l、 J70−D、 Nα2.第335頁〜第345頁
の「ソフトウェア・サービス・システム(SSS)の小
規模な試作」の表題で説明されている。
As for the other method (3), for example, a method has been proposed in which a license condition program is provided that describes the conditions for use of encrypted software, and the software cannot be executed if the conditions are other than the license conditions. ing. Regarding this method, see Journal of the Institute of Electronics and Communication Engineers, January 1987.
Vol. J 70-D, kl, pages 70 to 81, "Proposal for Software Service System (SSS)" and Transactions of the Institute of Electronics and Communication Engineers, February 1987, Vo
l, J70-D, Nα2. It is explained on pages 335 to 345 under the title "Small-scale prototyping of a software service system (SSS)."

〔発明が解決しようとするyA題〕[YA problem that the invention attempts to solve]

前述の従来例のソフトウェアによる方式(1)は、ハー
ドウェアによるコピーマシンを使用することにより、総
ての領域のコピーが可能となることから、大量に複製で
きるという問題点があり、ソフトウェアの保護が充分で
ない欠点がある。
The conventional software-based method (1) described above has the problem of being able to copy in large quantities because it is possible to copy all areas by using a hardware-based copy machine. There is a drawback that it is not sufficient.

又ハードウェアを併用する方式(2)は、ソフトウェア
保護用のハードウェアをユーザが購入しなければならな
いから、ユーザの負担が増加する欠点がある。
Furthermore, method (2) in which hardware is also used has the disadvantage that the user must purchase hardware for software protection, which increases the burden on the user.

又その他の方式(3)として、許諾条件プログラムを設
ける方式は、共通りレジット等を用いるものであるから
、ソフトウェアの流通経路を変更する必要があり、又ソ
フトウェアの実行権を管理する為の5SSBOXと称す
る専用のハードウェアを必要とする欠点があり、装置の
大型化とユーザの負担増との問題点がある。
As another method (3), the method of establishing a license condition program uses common credits, etc., so it is necessary to change the distribution route of the software, and the 5SSBOX for managing software execution rights is required. This method has the disadvantage that it requires dedicated hardware called , and there are problems in that it increases the size of the device and increases the burden on the user.

本発明は、正規のユーザのみが暗号化されたソウトウエ
アを復号して実行できるようにすることを目的とするも
のである。
The present invention aims to enable only authorized users to decrypt and execute encrypted software.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のソフトウェア保護制御方式は、ソフトウェアの
復号鍵をユーザの個別鍵で暗号化して許諾情報とし、正
規のユーザのみがその許諾情報から復号鍵を復号できる
ようにしたものであり、第1図を参照して説明する。
The software protection control system of the present invention encrypts the software decryption key with the user's individual key and uses it as permission information, so that only authorized users can decrypt the decryption key from the permission information, as shown in Figure 1. Explain with reference to.

ソフトウェア管理部工に於いてソフトウェアを暗号化し
てユーザに提供し、そのソフトウェアをソフトウェア実
行部2に於いて復号して実行するソフトウェア保護制御
方式に於いて、ソフトウェア管理部lの個別鍵生成部3
に於いてユーザの個別鍵を生成し、この個別鍵により復
号鍵を鍵暗号化部4に於いて暗号化して許諾情報とし、
且つ復号鍵によりソフトウェアをソフトウェア暗号化部
5に於いて暗号化してユーザに提供する。
In a software protection control method in which the software management department encrypts software and provides it to the user, and the software execution section 2 decrypts and executes the software, the individual key generation section 3 of the software management section l
A user's individual key is generated, and a decryption key is encrypted in the key encryption unit 4 using this individual key as permission information,
The software is encrypted in the software encrypting unit 5 using the decryption key and provided to the user.

ユーザは、ソフトウェア実行部2の鍵復号化部6に於い
て許諾情報を個別鍵により復号して復号鍵を形成し、こ
の復号鍵を用いて暗号化されたソフトウェアをソフトウ
ェア復号化部7に於いて復号して実行するものである。
The user decrypts the permission information using the individual key in the key decryption unit 6 of the software execution unit 2 to form a decryption key, and then sends the software encrypted using this decryption key to the software decryption unit 7. It is then decrypted and executed.

〔作用〕[Effect]

ソフトウェア管理部lに於いては、正規のユーザに対す
る個別鍵を個別鍵生成部3に於いて生成して通知し、又
平文のソフトウェアをソフトウェア暗号化部5に於いて
復号鍵で暗号化して暗号文とし、又その復号鍵を個別鍵
で鍵暗号化部4に於いて暗号化して許諾情報とする。そ
して、ユーザには、暗号文ソフトウェアと、許諾情報と
して暗号化された復号鍵とが渡されることになる。
In the software management section 1, an individual key generation section 3 generates and notifies an individual key for an authorized user, and a software encryption section 5 encrypts the plain text software with a decryption key. The decryption key is encrypted in the key encryption unit 4 using an individual key to obtain permission information. Then, the user is given the ciphertext software and the encrypted decryption key as permission information.

従って、ソフトウェア管理部1から提供されたソフトウ
ェアを複製したとしても、暗号化されているから、復号
鍵がないと復号して実行することができないことになり
、ソフトウェアを保護することができる。
Therefore, even if the software provided by the software management unit 1 is copied, since it is encrypted, it cannot be decrypted and executed without the decryption key, and the software can be protected.

又正規のユーザは、個別鍵を用いて鍵復号化部6に於い
て許諾情報を復号して復号鍵を得ることができるから、
その復号鍵を用いて暗号文のソフトウェアをソフトウェ
ア復号化部7に於いて平文のソフトウェアに復号して実
行することになり、正規のユーザのみがそのソフトウェ
アを実行できることになる。
In addition, the authorized user can obtain the decryption key by decrypting the permission information in the key decryption unit 6 using the individual key.
Using the decryption key, the ciphertext software is decrypted into plaintext software in the software decryption unit 7 and executed, and only authorized users can execute the software.

〔実施例〕〔Example〕

以下図面を参照して本発明の実施例について詳細に説明
する。
Embodiments of the present invention will be described in detail below with reference to the drawings.

第2図は本発明の実施例のソフトウェア管理部の説明図
であり、11はフロッピィディスク等に格納された平文
のソフトウェア、12は暗号化処理部、13は書込部、
14はコンパクトディスク(CD)等に格納された暗号
文のソフトウェア、15は暗号化処理部12に加える暗
号鍵(ユーザ側の復号鍵)を発生する乱数発生部、16
はソフトウェア塩と暗号鍵とを対応させて登録する鍵管
理テーブル部、17はユーザの識別情報IDからユーザ
の個別鍵を生成するユーザ個別鍵生成部、18は暗号鍵
を個別鍵で暗号化して許諾情報を形成する許諾情報生成
部、19はバリデージ3ン・ディスク、20はバリデー
ション・ディスク19内のバリデーション・テーブル部
である。
FIG. 2 is an explanatory diagram of the software management section of the embodiment of the present invention, in which 11 is plain text software stored on a floppy disk, etc., 12 is an encryption processing section, 13 is a writing section,
14 is ciphertext software stored on a compact disc (CD) or the like; 15 is a random number generator that generates an encryption key (decryption key for the user) to be added to the encryption processing unit 12; 16
1 is a key management table section that registers software salts and encryption keys in correspondence; 17 is a user individual key generation section that generates a user's individual key from the user's identification information ID; and 18 is a section that encrypts the encryption key with the individual key. 19 is a validation information generation section that forms permission information; 20 is a validation table section in the validation disk 19;

暗号化処理部12が第1図のソフトウェア暗号化部5に
対応し、ユーザ個別鍵生成部I7が第1図の個別鍵生成
部3に対応し、又許諾情報生底部18が第1図の鍵暗号
化部4に対応する。
The encryption processing unit 12 corresponds to the software encryption unit 5 in FIG. 1, the user individual key generation unit I7 corresponds to the individual key generation unit 3 in FIG. Corresponds to the key encryption unit 4.

ソフトウェアベンダー等によって作成された平文ソフト
ウェア11は、暗号化処理部12に於いて暗号化される
。その場合の暗号鍵は乱数発生部15からの乱数が用い
られる。又暗号化方式は、例えば、D E S (Da
ta Encryption S tandard)等
の慣用暗号方式を用いることができる。このDBS方式
は、64ビツトのデータブロック毎に暗号化及び復号化
を行うもので、鍵の長さは56ビツトであり、それに8
ビツトのバリテ・イビットが付加されるものである。
Plaintext software 11 created by a software vendor or the like is encrypted in an encryption processing unit 12. In this case, the random number from the random number generator 15 is used as the encryption key. Further, the encryption method is, for example, D E S (Da
A commonly used encryption method such as TA Encryption Standard) can be used. This DBS method encrypts and decrypts each 64-bit data block, and the key length is 56 bits.
Bit validity bits are added.

暗号化処理部12によりソフトウェアが暗号化され、書
込部13によりフロッピィディスクやコンパクトディス
ク(CD)等に書込まれて、暗号文ソフトウェア14と
してユーザに提供される。
The software is encrypted by the encryption processing section 12, written to a floppy disk, compact disk (CD), etc. by the writing section 13, and provided to the user as ciphertext software 14.

コンパクトディスク(CD)を用いた場合は、記憶容量
が非常に大きいので、複数種類の暗号文ソフトウェアを
書込むことができる。
When a compact disc (CD) is used, it has a very large storage capacity, so it is possible to write multiple types of ciphertext software.

叉鍵管理テーブル部16に、乱数発生部工5からの暗号
鍵と、暗号化するソフトウェア塩とが対応して登録され
るものであり、例えば、図示の場合、ソフトウェア塩r
TOWNs  PAINTJと、それに対応する64ビ
ツト長の暗号鍵が16進表示でr2F6B894D3C
EO8DAC」として登録され、同様に、ソフトウェア
塩rT。
The encryption key from the random number generation unit 5 and the software salt for encryption are registered in the fork key management table unit 16 in correspondence with each other. For example, in the case shown in the figure, the software salt r
TOWNs PAINTJ and the corresponding 64-bit encryption key are expressed in hexadecimal as r2F6B894D3C
EO8DAC”, as well as software salt rT.

WNS  VNETJと、それに対応する64ビツト長
の暗号鍵が16進表示でr983ECA56E7F8E
781Jとして登録されている。
WNS VNETJ and the corresponding 64-bit encryption key are expressed in hexadecimal as r983ECA56E7F8E
It is registered as 781J.

ユーザが例えばソフトウェア名rTOWNsPA I 
NT」のソフトウェアを購入する場合、ユーザのパソコ
ンの識別情報IDを基に、ユーザ個別鍵生成部17によ
り個別鍵が生成される。この個別鍵は、ユーザ側のソフ
トウェア実行部2に個別鍵生成部を有しない場合は、こ
の個別鍵を厳重に管理してユーザに引き渡すことになる
。そして、この個別鍵を用いて、許諾情報生成部18に
於いてソフトウェア名rTOWNs  PAINTJの
暗号鍵が暗号化されて許諾情報となる。この許諾情報は
、バリデーション・ディスク19のバリデーション・テ
ーブル部20に登録される。即ち、図示のように、暗号
文ソフトウェアのソフトウェア名rPAINT  、E
NCJとその許諾情報r522E3ABC453F2E
9A」とが登録され、このバリデーシラン・ディスク1
9はユーザに引き渡される。
For example, if the user enters the software name rTOWNsPA I
NT" software, an individual key is generated by the user individual key generation unit 17 based on the identification information ID of the user's personal computer. If the software execution unit 2 on the user side does not have an individual key generation unit, this individual key will be strictly managed and handed over to the user. Then, using this individual key, the encryption key of the software name rTOWNs PAINTJ is encrypted in the permission information generation unit 18 to become permission information. This permission information is registered in the validation table section 20 of the validation disk 19. That is, as shown in the figure, the software name of the ciphertext software rPAINT,E
NCJ and its permission information r522E3ABC453F2E
9A” is registered, and this validation silan disk 1
9 is handed over to the user.

第3図は本発明の実施例のソフトウェア管理部の処理フ
ローチャートを示し、ソフトウェア暗号化処理か許諾情
報発行処理かを判定し■、ソフトウェア暗号化処理の場
合は、乱数発生部15から乱数を発生させ■、その乱数
を暗号鍵として、鍵管理テーブル部16に登録し■、そ
の暗号鍵を用いてソフトウェアを暗号化処理部12に於
いて暗号化し■、書込部13に於いて暗号文のソフトウ
ェアの書込みを行う■。
FIG. 3 shows a processing flowchart of the software management unit according to the embodiment of the present invention, in which it is determined whether software encryption processing or permission information issuance processing. ■, register the random number in the key management table section 16 as an encryption key, ■ encrypt the software in the encryption processing section 12 using the encryption key, and write the ciphertext in the writing section 13. ■ Write software.

又許諾情報発行処理の場合は、鍵管理テーブル部16を
参照して■、ソフトウェア名に対応する暗号鍵を続出し
、又ユーザ個別鍵生成部17に於いてユーザの識別情報
IDを基に個別鍵を生成し■、この個別鍵を用いて暗号
鍵を暗号化して、バリデーション・テーブル部20に登
録し■、これを許諾情報としてユーザに発行する■。
In addition, in the case of permission information issuance processing, refer to the key management table section 16 and generate encryption keys corresponding to the software name one after another, and the user individual key generation section 17 generates individual encryption keys based on the user's identification information ID. A key is generated (1), an encryption key is encrypted using this individual key, and registered in the validation table unit 20 (2), and this is issued to the user as permission information (2).

第4図は本発明の実施例のソフトウェア実行部の説明図
であり、21はソフトウェア管理部から発行されたバリ
デーション・ディスク(第2図の符号19に対応)、2
2はバリデーション・テーブル部、23は許諾情報登録
部、24はユーザ用バリデーション・ディスク、25は
ユーザ用バリデーション・テーブル部、26はユーザ個
別鍵生成部、27は鍵復号化部、28は復号化処理部、
29は暗号文ソフトウェア(第2図の符号14に対応)
、30は平文ソフトウェア、31は実行部である。
FIG. 4 is an explanatory diagram of the software execution unit of the embodiment of the present invention, in which 21 is a validation disk issued by the software management unit (corresponding to the reference numeral 19 in FIG. 2);
2 is a validation table section, 23 is a license information registration section, 24 is a user validation disk, 25 is a user validation table section, 26 is a user individual key generation section, 27 is a key decryption section, and 28 is a decryption section. processing section,
29 is ciphertext software (corresponds to code 14 in Figure 2)
, 30 is plain text software, and 31 is an execution unit.

許諾情報登録部23とユーザ用バリデーション・テーブ
ル部25とユーザ個別鍵生成部26と鍵復号化部27と
復号化処理部28と実行部31とは、ユーザの例えばパ
ソコンの処理機能によって実現することができるもので
ある。
The permission information registration section 23, the user validation table section 25, the user individual key generation section 26, the key decryption section 27, the decryption processing section 28, and the execution section 31 can be realized by the processing functions of the user's personal computer, for example. It is something that can be done.

又バリデーション・ディスク21のバリデーション・テ
ーブル部22は、第2図に於けるバリデーション・ディ
スク19のバリデーション・テーブル部20に対応し、
例えば、暗号化されたソフトウェア名(7)rPAIN
T  、ENCJと、ツレに対応した許諾情報とが書込
まれており、許諾情報登録部23に於いてユーザ用バリ
デーション・ディスク24のユーザ用バリデーション・
テーブル部25に、暗号文ソフトウェアのソフトウェア
名とその許諾情報とが追加登録される。
Further, the validation table section 22 of the validation disk 21 corresponds to the validation table section 20 of the validation disk 19 in FIG.
For example, encrypted software name (7) rPAIN
T, ENCJ, and permission information corresponding to the deviation are written, and the permission information registration section 23 stores the user validation disk 24 in the user validation disk 24.
The software name of the ciphertext software and its permission information are additionally registered in the table section 25.

このユーザ用バリデーション・テーブル部25に於いて
、ソフトウェア名rFB3s6 、ENCJ、rVNE
T  、ENCJ、rsOUND、ENCJのソフトウ
ェアをユーザが購入したことにより、そのソフトウェア
名とその許諾情報とが既に登録され、今回購入したソフ
トウェアのソフトウェア名rPAINT  、ENCJ
 とそ0)許諾情報とが、バリデーション・テーブル部
22から読出されて、ユーザ用バリデーション・テーブ
ル部25に登録された場合を示すものである。
In this user validation table section 25, software names rFB3s6, ENCJ, rVNE
When a user purchases software T, ENCJ, rsOUND, ENCJ, the software name and its license information are already registered, and the software name of the software purchased this time is rPAINT, ENCJ.
0) Permission information is read from the validation table section 22 and registered in the user validation table section 25.

又ユーザの識別情報■D@基にユーザ個別鍵生成部26
に於いて個別情報が生成される。この機能を有しない場
合は、ソフトウェア管理部1から個別鍵を厳密な管理下
で受は取ることになる。そして、これから実行するソフ
トウェア名をユーザが指定すると、バリデーション・テ
ーブル部25から指定ソフトウェア名に対応する許諾情
報が読出されて、鍵復号化部27に加えられ、ユーザの
個別鍵により許諾情報が復号されて復号鍵が形成される
。そして、この復号鍵により指定ソフトウェアが復号化
処理部28に於いて復号されて、平文ソフトウェア30
となり、実行部31に於いて実行されることになる。こ
の復号化処理は、実行部31に於いて実行するステップ
毎等に対応して順次行われるものである。
Also, based on the user's identification information ■D@, the user individual key generation unit 26
Individual information is generated in . If this function is not provided, individual keys will be received from the software management section 1 under strict control. When the user specifies the name of the software to be executed from now on, the license information corresponding to the specified software name is read from the validation table unit 25, added to the key decryption unit 27, and the license information is decrypted using the user's individual key. decryption key to form a decryption key. Then, the designated software is decrypted by the decryption processing unit 28 using this decryption key, and the designated software is decrypted by the plaintext software 30.
This will be executed by the execution unit 31. This decoding process is performed sequentially corresponding to each step executed by the execution unit 31.

第5図は本発明の実施例のソフトウェア実行部の処理フ
ローチャートを示し、許諾情報登録の処理か実行かを判
定し■、許諾情報登録処理の場合は、ユーザ用バリデー
ション・テーブル部25に許諾情報を登録する@。又実
行の場合は、指定ソフトウェア名に対応する許諾情報が
登録されているか否かの許諾チエツクを行い@、許諾情
報が登録されていない場合は不許可となる。又登録され
ている場合は、ユーザ個別鍵生成■、個別鍵による許諾
情報の復号による鍵復号■を行い、指定ソフトウェアを
復号鍵によって復号し■、そのソフトウェアを実行する
@。
FIG. 5 shows a processing flowchart of the software execution unit according to the embodiment of the present invention, in which it is determined whether to process or execute permission information registration; Register @. In addition, in the case of execution, a permission check is performed to see if license information corresponding to the designated software name is registered. If the license information is not registered, permission is denied. If it is registered, generate a user individual key (■), perform key decryption (■) by decrypting the permission information using the individual key, decrypt the specified software (■) with the decryption key, and execute the software @.

ソフトウェアは、全部のステップを総て暗号化すること
も可能であるが、重要なステップのみを暗号化すること
も可能である。その場合は、復号化処理が容易となる。
The software can encrypt all steps, or only the critical steps. In that case, the decoding process becomes easy.

又バリデーション・ディスク19,21のバリデーショ
ン・テーブル部2022は、フロッピィディスク以外の
手段でもユーザに引き渡すこともできるものであり、例
えば、パソコン通信網を利用してユーザに通知すること
もできる。
Further, the validation table section 2022 of the validation disks 19, 21 can be delivered to the user by means other than a floppy disk, and for example, the user can be notified using a personal computer communication network.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明は、ソフトウェア管理部l
の個別鍵生成部3により個別鍵を生成し、鍵暗号化部4
により個別鍵を用いて復号鍵を暗号化して許諾情報とし
、ソフトウェア暗号化部5によりソフトウェアを復号鍵
を用いて暗号化し、ユーザ側では、ソフトウェア実行部
2の鍵復号化部6により、許諾情報を個別鍵により復号
して復号鍵を形成し、ソフトウェア復号化部7により暗
号文ソフトウェアを復号して実行するものであり、ソフ
トウェアは暗号化されていると共に、その復号鍵も、ユ
ーザの個別鍵により暗号化されているから、ソフトウェ
アを複製しても、正規のユーザ以外は、許諾情報から復
号鍵を得ることができないので、そのソフトウェアを実
行できないことになる。即ち、ソフトウェアを保護する
ことができる。
As explained above, the present invention provides software management
The individual key generation unit 3 generates an individual key, and the key encryption unit 4 generates an individual key.
The decryption key is encrypted using an individual key to obtain permission information, the software encryption unit 5 encrypts the software using the decryption key, and on the user side, the key decryption unit 6 of the software execution unit 2 generates the permission information. is decrypted using an individual key to form a decryption key, and the software decryption unit 7 decrypts and executes the ciphertext software.The software is encrypted and the decryption key is also the user's individual key. Since the software is encrypted, even if the software is copied, anyone other than the authorized user will not be able to obtain the decryption key from the permission information and will not be able to execute the software. That is, software can be protected.

又許諾情報の登録や復号化をO3でサポートすることは
容易であり、従って、ユーザは特別なハードウェアを必
要としないから、負担が増加することはない。
Furthermore, it is easy to support the registration and decryption of permission information with O3, and therefore, the user does not need any special hardware, so there is no increase in burden on the user.

又大容量のメディア(コンパクトディスク等)に、複数
種類の暗号化したソフトウェアをまとめて書込んでおき
、その中でユーザが購入するソフトウェアについてのみ
、それに対応する許諾情報を発行することができるから
、ソフトウェアの流通コストを低減することが可能とな
る。又ソフトウェア管理部1に於いて、許諾情報の発行
を管理することが容易であるから、簡単にユーザの動向
を知ることができる。
In addition, multiple types of encrypted software can be written together on a large-capacity medium (such as a compact disc), and license information can be issued only for the software that the user purchases. , it becomes possible to reduce software distribution costs. Furthermore, since the software management section 1 can easily manage the issuance of permission information, user trends can be easily known.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の原理説明図、第2図は本発明のソフト
ウェア管理部の説明図、第3図は本発明のソフトウェア
管理部の処理フローチャ・−ト、第4図は本発明の実施
例のソフトウェア実行部の説明図、第5図は本発明の実
施例のソフトウェア実行部の処理フローチャートである
。 1はソフトウェア管理部、2はソフトウェア実行部、3
は個別鍵生成部、4は鍵暗号化部、5はソフトウェア暗
号化部、6は鍵復号化部、7はソフトウェア復号化部で
ある。
FIG. 1 is an explanatory diagram of the principle of the present invention, FIG. 2 is an explanatory diagram of the software management section of the present invention, FIG. 3 is a processing flowchart of the software management section of the present invention, and FIG. 4 is an implementation of the present invention. FIG. 5, which is an explanatory diagram of the example software execution section, is a processing flowchart of the software execution section according to the embodiment of the present invention. 1 is the software management section, 2 is the software execution section, 3
4 is an individual key generation section, 4 is a key encryption section, 5 is a software encryption section, 6 is a key decryption section, and 7 is a software decryption section.

Claims (1)

【特許請求の範囲】 ソフトウェア管理部(1)に於いてソフトウェアを暗号
化してユーザに提供し、該ソフトウェアをソフトウェア
実行部(2)に於いて復号して実行するソフトウェア保
護制御方式に於いて、前記ソフトウェア管理部(1)の
個別鍵生成部(3)に於いてユーザの個別鍵を生成し、
該個別鍵によりソフトの復号鍵を鍵暗号化部(4)に於
いて暗号化して許諾情報を形成し、且つ前記復号鍵によ
りソフトウェアをソフトウェア暗号化部(5)に於いて
暗号化して提供し、 前記ソフトウェア実行部(2)の鍵復号化部(6)に於
いて前記許諾情報を前記個別鍵により復号して前記復号
鍵を形成し、該復号鍵により前記暗号化されたソフトウ
ェアをソフトウェア復号化部(7)に於いて復号して実
行する ことを特徴とするソフトウェア保護制御方式。
[Claims] In a software protection control method, a software management unit (1) encrypts software and provides it to a user, and a software execution unit (2) decrypts and executes the software, Generating a user's individual key in an individual key generation unit (3) of the software management unit (1);
A decryption key for the software is encrypted in a key encryption unit (4) using the individual key to form permission information, and the software is encrypted and provided in a software encryption unit (5) using the decryption key. The key decryption unit (6) of the software execution unit (2) decrypts the permission information using the individual key to form the decryption key, and software decrypts the encrypted software using the decryption key. A software protection control system characterized by decoding and execution in a decoding unit (7).
JP1218615A 1989-08-28 1989-08-28 Software protection control system Pending JPH0383132A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1218615A JPH0383132A (en) 1989-08-28 1989-08-28 Software protection control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1218615A JPH0383132A (en) 1989-08-28 1989-08-28 Software protection control system

Publications (1)

Publication Number Publication Date
JPH0383132A true JPH0383132A (en) 1991-04-09

Family

ID=16722732

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1218615A Pending JPH0383132A (en) 1989-08-28 1989-08-28 Software protection control system

Country Status (1)

Country Link
JP (1) JPH0383132A (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195217A (en) * 1992-12-24 1994-07-15 Nippon Telegr & Teleph Corp <Ntt> Software addition function providing method
JPH0736991A (en) * 1993-07-21 1995-02-07 Nippon Telegr & Teleph Corp <Ntt> Connection processing method for book information system
US5392351A (en) * 1992-03-16 1995-02-21 Fujitsu Limited Electronic data protection system
JPH0793148A (en) * 1992-10-21 1995-04-07 Internatl Business Mach Corp <Ibm> Software distribution system
JPH07287654A (en) * 1994-04-18 1995-10-31 Nec Corp Software delivery device
WO1995029438A1 (en) * 1994-04-22 1995-11-02 Kabushiki Kaisya Advance Data protection system
JPH0844451A (en) * 1991-05-25 1996-02-16 Ono Katsuyasu Charge call type software rent collecting system
US5870543A (en) * 1995-06-07 1999-02-09 Digital River, Inc. System for preventing unauthorized copying of active software
US5883954A (en) * 1995-06-07 1999-03-16 Digital River, Inc. Self-launching encrypted try before you buy software distribution system
US5883955A (en) * 1995-06-07 1999-03-16 Digital River, Inc. On-line try before you buy software distribution system
US5887060A (en) * 1995-06-07 1999-03-23 Digital River, Inc. Central database system for automatic software program sales
US5903647A (en) * 1995-06-07 1999-05-11 Digital River, Inc. Self-launching encrypted digital information distribution system
US5907617A (en) * 1995-06-07 1999-05-25 Digital River, Inc. Try before you buy software distribution and marketing system
EP0878796A3 (en) * 1997-05-13 2000-05-24 Kabushiki Kaisha Toshiba Information recording apparatus, information reproducing apparatus, and information distribution system
JP2000330873A (en) * 1999-05-18 2000-11-30 M Ken:Kk Contents distribution system, method therefor and recording medium
JP2002123328A (en) * 2000-10-16 2002-04-26 Toshiba Corp Software renting system
WO2004006075A1 (en) * 2002-07-09 2004-01-15 Fujitsu Limited Open type general-purpose attack-resistant cpu, and application system thereof
US7058597B1 (en) 1998-12-04 2006-06-06 Digital River, Inc. Apparatus and method for adaptive fraud screening for electronic commerce transactions
USRE39802E1 (en) 1992-03-16 2007-08-28 Fujitsu Limited Storage medium for preventing an irregular use by a third party
JP2009193528A (en) * 2008-02-18 2009-08-27 Ricoh Co Ltd Software alteration detection method, software alteration detection program, and equipment
US9817650B2 (en) 1998-12-04 2017-11-14 Digital River, Inc. Scheduling of a file download and search for updates

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61145642A (en) * 1984-12-18 1986-07-03 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Software secret protection system
JPS6468835A (en) * 1987-09-10 1989-03-14 Ryoichi Mori Software right management control method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61145642A (en) * 1984-12-18 1986-07-03 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Software secret protection system
JPS6468835A (en) * 1987-09-10 1989-03-14 Ryoichi Mori Software right management control method

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0844451A (en) * 1991-05-25 1996-02-16 Ono Katsuyasu Charge call type software rent collecting system
US5392351A (en) * 1992-03-16 1995-02-21 Fujitsu Limited Electronic data protection system
US5555304A (en) * 1992-03-16 1996-09-10 Fujitsu Limited Storage medium for preventing an illegal use by a third party
US5796824A (en) * 1992-03-16 1998-08-18 Fujitsu Limited Storage medium for preventing an irregular use by a third party
USRE39802E1 (en) 1992-03-16 2007-08-28 Fujitsu Limited Storage medium for preventing an irregular use by a third party
JPH0793148A (en) * 1992-10-21 1995-04-07 Internatl Business Mach Corp <Ibm> Software distribution system
JPH06195217A (en) * 1992-12-24 1994-07-15 Nippon Telegr & Teleph Corp <Ntt> Software addition function providing method
JPH0736991A (en) * 1993-07-21 1995-02-07 Nippon Telegr & Teleph Corp <Ntt> Connection processing method for book information system
JPH07287654A (en) * 1994-04-18 1995-10-31 Nec Corp Software delivery device
WO1995029438A1 (en) * 1994-04-22 1995-11-02 Kabushiki Kaisya Advance Data protection system
US5751805A (en) * 1994-04-22 1998-05-12 Kabushiki Kaisya Advance Data-protecting system
US5903647A (en) * 1995-06-07 1999-05-11 Digital River, Inc. Self-launching encrypted digital information distribution system
US5883955A (en) * 1995-06-07 1999-03-16 Digital River, Inc. On-line try before you buy software distribution system
US5887060A (en) * 1995-06-07 1999-03-23 Digital River, Inc. Central database system for automatic software program sales
US5883954A (en) * 1995-06-07 1999-03-16 Digital River, Inc. Self-launching encrypted try before you buy software distribution system
US5907617A (en) * 1995-06-07 1999-05-25 Digital River, Inc. Try before you buy software distribution and marketing system
US5870543A (en) * 1995-06-07 1999-02-09 Digital River, Inc. System for preventing unauthorized copying of active software
EP1650757A1 (en) * 1997-05-13 2006-04-26 Kabushiki Kaisha Toshiba Information ciphering method and apparatus, information reproducing method and apparatus
EP1653463A1 (en) * 1997-05-13 2006-05-03 Kabushiki Kaisha Toshiba License information copying method and apparatus, license information moving method
EP0878796A3 (en) * 1997-05-13 2000-05-24 Kabushiki Kaisha Toshiba Information recording apparatus, information reproducing apparatus, and information distribution system
US7747871B2 (en) 1997-05-13 2010-06-29 Kabushiki Kaisha Toshiba Information recording apparatus, information reproducing apparatus, and information distribution system
US7058597B1 (en) 1998-12-04 2006-06-06 Digital River, Inc. Apparatus and method for adaptive fraud screening for electronic commerce transactions
US9817650B2 (en) 1998-12-04 2017-11-14 Digital River, Inc. Scheduling of a file download and search for updates
JP2000330873A (en) * 1999-05-18 2000-11-30 M Ken:Kk Contents distribution system, method therefor and recording medium
JP2002123328A (en) * 2000-10-16 2002-04-26 Toshiba Corp Software renting system
WO2004006075A1 (en) * 2002-07-09 2004-01-15 Fujitsu Limited Open type general-purpose attack-resistant cpu, and application system thereof
CN100354786C (en) * 2002-07-09 2007-12-12 富士通株式会社 Open type general-purpose attack-resistant CPU and application system thereof
JP2009193528A (en) * 2008-02-18 2009-08-27 Ricoh Co Ltd Software alteration detection method, software alteration detection program, and equipment

Similar Documents

Publication Publication Date Title
JP3073590B2 (en) Electronic data protection system, licensor&#39;s device and user&#39;s device
JPH0383132A (en) Software protection control system
KR100236697B1 (en) Software copying system
CN1312876C (en) Encrypted/deencrypted stored data by utilizing disaccessible only secret key
US7487366B2 (en) Data protection program and data protection method
EP1067447B1 (en) Storage medium for contents protection
JP3819160B2 (en) Information management method and information management apparatus
US20090210724A1 (en) Content management method and content management apparatus
JP2005505885A (en) Copy method and apparatus using one safe drive
JP2010268417A (en) Recording device, and content-data playback system
JPH11272561A (en) Data protection method for storage medium device for the same and storage medium therefor
EP1471405A1 (en) Method and device for protecting information against unauthorised use
US20070283169A1 (en) Method for controlling file access on computer systems
JP3624971B2 (en) Software usage control method
JPH07244584A (en) Software protection system
WO2010119549A1 (en) Content data reproduction system and recording device
JP3184189B2 (en) Electronic data protection system, licensor side apparatus, user side apparatus, license information generation processing method, and electronic data decryption processing method
JPH05233460A (en) File protection system
JP3184191B2 (en) Electronic data protection system, licensor side apparatus, user side apparatus, license information generation processing method, and electronic data decryption processing method
JP4053009B2 (en) Software copy processing system and software copy processing method
JP3184192B2 (en) Storage medium for electronic data transfer
JPS63127334A (en) Withdrawal and conditioning execution right from software protection mechanism in safety
JP3184190B2 (en) Electronic data protection system, licensor side apparatus, user side apparatus, license information generation processing method, and electronic data decryption processing method
JP3184193B2 (en) Data writing device, data reading device, storage medium, and key sharing method
USRE39802E1 (en) Storage medium for preventing an irregular use by a third party