JPH11282667A - Microprocessor having cipher processing function of multiple key system - Google Patents

Microprocessor having cipher processing function of multiple key system

Info

Publication number
JPH11282667A
JPH11282667A JP10103958A JP10395898A JPH11282667A JP H11282667 A JPH11282667 A JP H11282667A JP 10103958 A JP10103958 A JP 10103958A JP 10395898 A JP10395898 A JP 10395898A JP H11282667 A JPH11282667 A JP H11282667A
Authority
JP
Japan
Prior art keywords
key
de
data
decoding
software
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
JP10103958A
Other languages
Japanese (ja)
Inventor
Toshinari Suematsu
俊成 末松
Original Assignee
Nakamichi 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 Nakamichi Corp, ナカミチ株式会社 filed Critical Nakamichi Corp
Priority to JP10103958A priority Critical patent/JPH11282667A/en
Publication of JPH11282667A publication Critical patent/JPH11282667A/en
Application status is Pending legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To obtain the data which can be decoded by only a CMP and to prevent the disadvantage caused by the leakage of data by enciphering and decoding a data group by means of a job key that is enciphered by a secret key proper to the CMP. SOLUTION: A CMP 1 has its proper secret key Ksmp that is stored in its built-in storage register 10 and to be used for the decoding jobs of a decoding part 9. An offset register 4 receives a fetch signal s4 which is outputted from a CPU 2 and outputs the head address data to a scramble code generator 6. The generator 6 outputs a scramble code F(Re) generated from the head address data and the address data inputted from an address bus 16 to an adder 11 via a signal path 13. The adder 11 performs an exclusive OR operation between the code F(Re) and the data which are inputted from one of data paths 14 or 15. Then the adder 11 outputs the result of its exclusive OR operation to the other one of paths 14 and 15 to carry out the scramble and descramble operations.

Description

【発明の詳細な説明】 DETAILED DESCRIPTION OF THE INVENTION

【0001】 [0001]

【発明の属する技術分野】本発明は、暗号処理機能を有するマイクロプロセッサに関し、特に暗号化されたソフトウエアを復号化する際に、複数の鍵を用いて行うマイクロプロセッサに関する。 BACKGROUND OF THE INVENTION The present invention relates to a microprocessor having an encryption processing function, in decoding a software specially encrypted, to the microprocessor performed using a plurality of keys.

【0002】 [0002]

【従来の技術】従来のこの種の暗号化方式に於いては、 BACKGROUND OF THE INVENTION is at the encryption scheme this type of conventional,
1種類の鍵でソフトウエアの復号化を行う方式のコンピュ−タシステムが提案されている。 One method of performing the software decryption with key computer - Tashisutemu have been proposed.

【0003】 [0003]

【発明が解決しようとする課題】従来方式の場合、同じ内容のソフトウエアであっても、コンピュ−タシステム毎に異なる鍵で暗号化する必要があるため、例えばCD [Problems that the Invention is to Solve When the conventional method, even software of the same content, computer - it is necessary to encrypted with different keys for each Tashisutemu, for example CD
−ROMのような同一の複数媒体を市場に投入出来ない。 The same multiple media, such as -ROM can not be introduced into the market. また、あるコンピュ−タシステムがソフトウエアを暗号/復号する場合、鍵が限定されるために解読されやすく、安全上に問題があった。 Further, there is computer - Tashisutemu may be encryption / decryption software, easy to be decrypted because the key is limited, there is a problem on the safety.

【0004】 [0004]

【課題を解決するための手段】ソフトウエアに用意された例えば作業鍵によって暗号化された暗号化ソフトウエアと、例えば後述する秘密鍵に対応する公開鍵で前記作業鍵を暗号化した暗号コ−ドとを別々に入手し、例えばマイクロプロセッサに固有の秘密鍵を外に読み出し不可に保存する記憶手段と、この秘密鍵で前記暗号コ−ドを復号化して前記作業鍵を生成する復号手段と、この作業鍵を保持する記憶手段と、この作業鍵によって前記暗号化ソフトウエアを復号化する復号手段とを有するマイクロプロセッサによって前記暗号化ソフトウエアを復号化する。 And encryption software encrypted by the software to prepared the example session key SUMMARY OF THE INVENTION, Cryptographic Coprocessor obtained by encrypting the session key with the public key corresponding to the private key example described below - a de available separately, for example, a storage means for storing a disable reading out the secret key unique to the microprocessor, the encryption co in this secret key - decoding means for generating the work key by decrypting the de storage means for holding the session key, decrypts the encrypted software by a microprocessor and a decoding means for decoding the encrypted software by the session key.

【0005】また、例えばユ−ザ−が設定した作業鍵を暗号化し、暗号化された作業鍵を生成する暗号化手段と、暗号化された作業鍵を保存する記憶手段と、この暗号化を行うための例えばこのマイクロプロセッサに固有の秘密鍵を保存する記憶手段と、前記暗号化された作業鍵によって前記ソフトウエアを暗号化/復号化するための暗号化/復号化手段とを有するマイクロプロセッサによって前記ソフトウエアを暗号化/復号化する。 Further, Tatoebayu - The - encrypts the work key has been set, encryption means for generating a working key encrypted, a storage unit for storing the session key encrypted, the encrypted microprocessor having storage means for storing the private key, an encryption / decryption means for encrypting / decrypting said software by said encrypted session key, for example unique to the microprocessor for performing encrypt / decrypt the software by.

【0006】 [0006]

【発明の実施の形態】図1は、本発明の一実施例を示す構成図で、図中1は、暗号化機能を有するマイクロプロセッサ(以下CMPと称す)であり、1チップで構成されている。 Figure 1 DETAILED DESCRIPTION OF THE INVENTION is a constitutional view showing one embodiment of the present invention, reference numeral 1 is a microprocessor having an encryption function (hereinafter referred to as CMP), it is composed of one chip there. この中の2は中央演算処理装置(以下CPU 2 in the central processing unit (hereinafter CPU
と称す)を示し、3は制御ユニットを示す。 It indicates a referred), 3 denotes a control unit. この制御ユニット3は、CPU2からの指令信号s1を入力して、 The control unit 3 inputs the command signal s1 from the CPU 2,
スクランブル符号発生器6の動作のオン、オフを指令する動作指令信号s2と暗号処理器7の暗号化/復号化機能の実行、停止の各動作を指令する動作指令信号s3とをそれぞれ出力する。 On the operation of the scrambling code generator 6, the execution of the encryption / decryption functions of the operation command signal s2 and the encryption processor 7 for commanding off, respectively output the operation command signal s3 for commanding the operation of the stop.

【0007】このCMP1は、固有の秘密鍵Ksmpを所有する。 [0007] The CMP1 is, to own a unique secret key Ksmp. これは内蔵の保管レジスタ10に保管され、後述するごとくこの秘密鍵に対応する公開鍵Kpmpで作業鍵Ksfを暗号化したパ−ミットコ−ドを復号部9で復号化するための鍵となる。 This is stored in the internal storage registers 10, Pas as by encrypting the session key Ksf the public key Kpmp corresponding to the secret key to be described later - the key for decoding at the decoding unit 9 de - Mittoko. この秘密鍵Ksmpは、CMPの製造元のみが知るもので、CMPの外に現れないようにされてユ−ザ−等の第3者が知ることは出来ず、逆に公開鍵Kpmpは、CMPの入手時にユ−ザ−に知らされて全ての人が知り得るものである。 The secret key Ksmp is intended that only the manufacturer of CMP know, it is so as not to appear on the outside of the CMP User - The - the third party is not Can I know of, such as, public key Kpmp Conversely, the CMP Yu at the time available - the - is what you get to know all of the people are informed to. ここで復号化された作業鍵Ksfは、保管レジスタ8に保管される。 Session key Ksf decoded here are stored in the storage register 8.

【0008】CMP1につながるアドレスバス16とデ−タバス12は、I/Oバス20を介してメインメモリ21、ハ−ドディスク22、CD−ROM23、フロッピディスク24の各ドライブ、及びモデム25の各入出力ポ−トにつながっている。 [0008] leads to CMP1 address bus 16 and de - buses 12, main memory 21 via the I / O bus 20, ha - de disk 22, CD-ROM 23, each drive floppy disk 24, and each of the modem 25 It has led to the door - input and output ports.

【0009】一方CMP1内部において、アドレスバス16は、CPU2のアドレスポ−ト18、制御ユニット3、オフセットレジスタ4、及びスクランブル符号発生器6につながり、デ−タバス12は、暗号処理器7、加算回路11を介してCPU2のデ−タポ−ト17につながっている。 Meanwhile inside CMP1, the address bus 16, CPU 2 address port - DOO 18, the control unit 3, the offset register 4, and lead to the scrambling code generator 6, de - buses 12, the encryption processing unit 7, the addition CPU2 de via circuit 11 - Tapo - has led to bets 17.

【0010】オフセットレジスタ4は、CPU2から出力される取り込み信号s4を受信し、後述するようにC [0010] offset register 4 receives a latch signal s4 outputted from the CPU 2, as described below C
PU2がメインメモリ21との間で読み書きする際のデ−タの先頭位置を示す先頭アドレスデ−タを取り込んでメモリし、この先頭アドレスデ−タをスクランブル符号発生器6に出力する。 And memory captures data, the start address de - - Starting address de indicating the head position of the data - PU2 is de when reading and writing to and from the main memory 21 and outputs the data to the scrambling code generator 6. スクランブル符号発生器6は、後述するようにこの先頭アドレスデ−タとアドレスバス1 Scrambling code generator 6, the head address de as described below - data and address bus 1
6から入力するアドレスデ−タをもとに生成したスクランブル符号F(Re)を信号経路13を介して加算器11に出力する。 Address decoding input from 6 - outputs the scrambling code F which is generated based on the data of the (Re) to the adder 11 via signal path 13.

【0011】加算器11は、このスクランブル符号F(R [0011] Adder 11, the scrambling code F (R
e)とデ−タ経路14,15の一方のデ−タ経路から入力するデ−タの排他論理和演算を行い、その結果を他方のデ−タ経路に出力することによりこれ等のデ−タのスクランブルとデスクランブルを実行する。 One data of data paths 14, 15 - - e) the de de input from data path - performs an exclusive OR operation of data, so that the other de - de of this like by outputting the data path - to perform the scrambling and descrambling of data.

【0012】ここで、図1の各部で、デ−タに対して行う暗号化、復号化、及びデ−タスクランブルの各内容について更に説明する。 [0012] Here, in each section of FIG. 1, De - encryption performed on data, decoding, and de - further describes the contents of the data scrambling. ここで使用される共通鍵方式と公開鍵方式の2つの暗号化方式は一般的なものであり、その詳細な説明は省略するが、本文で用いるそれらの記述方法について説明する。 Wherein two encryption schemes common key system the public key schemes used are those in general, its detailed description is omitted, will be described how those described for use in the body.

【0013】共通鍵方式では、デ−タDを暗号化するときに秘密鍵Kabを用い、これによって暗号化されたデ− [0013] In common key system, de - using a secret key Kab to encrypt the data D, which by encrypted de -
タをEab(D)と標記する。 The data to the title and Eab (D). この場合、秘密鍵Kabがあれば、Eab(D)と記述された暗号化デ−タを復号化して再びデ−タDを取り出すことができる。 In this case, if the secret key Kab, encryption cade written and Eab (D) - it is possible to take out the data D - again de decrypts the data.

【0014】一方、公開鍵方式では、デ−タDを暗号化するときに、公にされた公開鍵Kpabを用いて行ない、 [0014] On the other hand, in the public key system, de - when encrypting data D, performed using the publicly public key Kpab,
これによって暗号化された暗号化デ−タをEpab(D) This encrypted encryption cade - the data Epab (D)
と標記する。 To the title with. この場合、この暗号化デ−タの解読はこの公開鍵Kpabに対応する秘密鍵Ksabによってのみ行なうことが出来る。 In this case, the encryption Cadet - decryption of data can be carried out only by the secret key Ksab corresponding to the public key Kpab.

【0015】即ち、共通鍵方式では、一つの秘密鍵Kab [0015] That is, in the common key system, one of the secret key Kab
によってデ−タの暗号化と復号化を行なうが、公開鍵方式では、公にする公開鍵Kpabではデ−タの暗号化のみが可能であって、その復号化には秘密鍵Ksabを用いて行なう。 By de - it performs the encryption data and decryption, the public key system, the public key de In Kpab publicly - A can only encrypt data, and its decrypted using the private key Ksab carried out.

【0016】次に、アドレスによって行なわれるデ−タスクランブルについて、その一例を示す本実施例の原理を説明する。 Next, de performed by the address - for data scrambling, to explain the principles of the present embodiment shows an example thereof. 簡単のため、デ−タDが記憶手段に書き込まれる際には1バイト単位で行なわれ、各単位毎にアドレスAdを対応させて処理するものとする。 For simplicity, de - is when the data D is written to the storage means is performed in units of bytes it shall be processed in correspondence with the address Ad in each unit. また暗号化スクランブルされるデ−タは、メインメモリ21内の連続した領域におかれ、この一連の連続するデ−タの集合をデ−タ群と呼ぶことにする。 The de encrypted scramble - data is placed in consecutive areas in the main memory 21, de successive this series - is called a data group - a set of data de. 1つのプログラムやデ− One of the programs and de -
タは、通常1つ以上のデ−タ群で構成されるが、スクランブルは、デ−タ群毎に処理される。 Data is usually one or more de - consists of a data group, scrambling, de - processed per data group.

【0017】以降では説明を簡単にするため、プログラムやデ−タは、1デ−タ群で構成されるものと仮定する。 [0017] Since the subsequent ease of explanation, program or de - data is 1 de - assumed to be composed of a data group. そこで、デ−タ群DXを1バイトデ−タのデ−タ列、D1,D2……DNの集合として標記し、アドレス群A Therefore, the de - the other groups DX 1 Baitode - other de - data column, the title as a set of D1, D2 ...... DN, address group A
dXをこれ等の各1バイトデ−タに対応して付されるアドレスAd1,Ad2……AdNの集合として標記する。 Each 1 Baitode of this, such as the dX - to the title as a set of address Ad1, Ad2 ...... AdN to be subjected to correspond to the data.

【0018】従って、この連続デ−タの各アドレスAdi [0018] Therefore, the continuous de - each address of the data Adi
(i=1,2,……N)は、その先頭アドレスをToとし(通常はTo=Ad1)、この先頭アドレスからの相対位置を示す相対アドレスをReiとしたとき、Adi=To+Reiとして表せる。 (I = 1,2, ...... N) is to the start address and To (usually the To = Ad1), when the relative address indicating a relative position from the start address and Rei, expressed as Adi = To + Rei. 図1のオフセットレジスタ4は、この先頭アドレスToをメモリするものである。 Offset register 4 in FIG. 1 is to memory the start address To.

【0019】一方、スクランブル符号発生器6は、逐次入力するアドレスAdiと先頭アドレスToとからこの相対アドレスReiを算出し、この値に1対1で対応するも、規則性を示さない1バイトのスクランブル符号F(R Meanwhile, the scramble code generator 6 calculates the relative address Rei from the address Adi and head address To be entered sequentially, also a one-to-one correspondence to this value, one-byte does not exhibit regularity scrambling code F (R
ei)を発生する。 ei) to generate. このようにして生成されるスクランブル符号の集合をF(ReX)と標記する。 Such a set of scrambling codes generated by To title and F (ReX). 加算器11は、デ−タ経路14,15の内、一方から逐次入力する1バイトのデ−タと、このデ−タのアドレスに対応して入力するスクランブル符号F(Rei)との排他論理和デ−タを他方のデ−タ経路に出力する。 The adder 11 is de - in the data path 14, 15, 1-byte de that sequentially inputted from one - data and, the de - exclusive of the scrambling code F (Rei) to enter the path corresponding to the address of the data Kazude - to output to another path - the data the other de.

【0020】従って、例えば、CPU2から出力されるデ−タD1がメインメモリ21にメモリされる時の一過程を説明すると、この時にデ−タD1、例えば(1001000 [0020] Thus, for example, de output from CPU 2 - To explain one process when the data D1 is a memory in the main memory 21, de when this - data D1, for example, (1001000
1)が出力されると共に、このデ−タの番地を指定するアドレスAd1が出力される。 With 1) is output, the de - address Ad1 to specify the data address of is output. 加算器11は、このデ−タを入力すると共に、この時の指定アドレスから算出された相対アドレスRe1に対応して発生したスクランブル符号F(Re1)、例えば(11001100)を入力し、これ等の排他論理和(01011101)を暗号処理器7に出力する。 The adder 11, the de - inputs the data, the scramble code generated in response to the relative address Re1 calculated from the specified address when F (Re1) type such as (11001100), which like the exclusive ORing (01011101) and outputs it to the encryption processing unit 7.

【0021】このように、デ−タDiとスクランブル符号F(Rei)との排他論理和によってスクランブルされたデ−タを(Di(+)F(Rei))と記述して図1中に示す。 [0021] Thus, de - shows the data (Di (+) F (Rei)) and was described in Figure 1 - data Di and the scramble code F (Rei) and the exclusive scrambled de which by . 従って、この図からもわかるように、デ−タ経路14はスクランブルされたデ−タの経路となる。 Thus, as can be seen from this figure, de - data path 14 is scrambled de - a data path.

【0022】次に、スクランブルされたデ−タを解除する例として、CPU2が上記したデ−タD1を読み込む時の一過程を考えてみる。 [0022] Next, scrambled de - as an example to release the data, de CPU2 is described above - Consider one process at the time of reading the data D1. この時、このデ−タD1を読み出すためのデ−タとして上記アドレスAd1が出力され、これに伴ってスクランブル符号F(Re1)がスクランブル符号発生器6から出力されことが理解される。 At this time, the de - de for reading the data D1 - the address Ad1 is output as data, scrambling code F (Re1) It is understood that the output from the scramble code generator 6 accordingly.

【0023】従って加算器11は、この時デ−タ経路1 [0023] Thus the adder 11, the Tokide - data path 1
4に表れるスクランブルされた(D1(+)F(Re1))のデ− De of 4 to the scrambled appears (D1 (+) F (Re1)) -
タ列(01011101)とスクランブル符号F(Re1)のデ−タ列 Data string (01011101) and the de-scrambling code F (Re1) - data row
(11001100)との排他論理和(10010001)、即ちデスクランブルされる前の元のデ−タD1をCPU2に出力する。 Exclusive of (11001100) (10010001), i.e. the original data of before being descrambled - output data D1 to the CPU 2.

【0024】このように、加算器11は、デ−タD1とこれに対応するスクランブル符号F(Re1)との排他論理和をとってスクランブルされたデ−タ(D1(+)F(Re1)) [0024] Thus, the adder 11, de - scrambling code F (Re1) scrambled exclusive OR of the De corresponding thereto and data D1 - data (D1 (+) F (Re1) )
を形成し、逆にこのデ−タ(D1(+)F(Re1))とスクランブル符号F(Re1)との排他論理和をとってデスクランブルされる前の元のデ−タD1を生じるべく動作することが理解される。 Is formed and this de conversely - data (D1 (+) F (Re1)) and the scrambling code F (Re1) and the original data of before being descrambled exclusive OR of - to produce data D1 it works is to be understood.

【0025】次に、図2の実行準備フロ−に従って、暗号化され更にスクランブルされたアプリケ−ションソフトを入手し、その実行に際してCPU2内への読み込みを可能にするまでの準備過程について主に説明する。 Next, execution preparation of 2 flow - according to, applique encrypted is further scrambled - Get Deployment software, mainly described the preparation process to allow for loading during its execution into the CPU2 to. この時のアプリケ−ションソフトをデ−タ群DapXで示すと、上記した如くこのデ−タ群DapXに対応して生成されるスクランブル符号F(ReX)でスクランブルされ、共通鍵方式の作業鍵Ksf2で暗号化されたアプリケ−ションソフトは、Esf2(DapX(+)F(ReX))で示される。 In this case the applique - Deployment software de - when indicated by data groups DapX, as described above the de - scrambled with scrambling code F (ReX) generated corresponding to the data group DapX, working keys for symmetric scheme Ksf2 applique in encrypted - Deployment software, represented by Esf2 (DapX (+) F (ReX)).

【0026】尚、この作業鍵Ksf2は、前記した共通鍵方式の秘密鍵に相当するものであるが、公開鍵方式の秘密鍵と区別するために以後作業鍵と称すことにする。 [0026] In addition, this work key Ksf2, which is equivalent to a secret key of the common key system described above, will be referred to hereinafter as the work key in order to distinguish it from the secret key of the public key system. また、ここで設定される作業鍵Ksf2は、このアプリケ− In addition, work key Ksf2 that are set here, this applique -
ションソフト供給元がこのソフト専用に用意するもので、この作業鍵Ksf2で他のアプリケ−ションソフトを解読することは出来ない。 Those Deployment software supplier is prepared to this software-only, other applique in this work key Ksf2 - Deployment can not decrypt the software.

【0027】この暗号化されたアプリケ−ションソフトEsf2(DapX(+)F(ReX))は、図10に示すように後述するパ−ミットコ−ドを管理するための暗号化されていない起動処理プログラムと一対にされた配給ソフトとしてソフト供給元から供給される。 [0027] The encrypted applique - Deployment soft Esf2 (DapX (+) F (ReX)) are path described later as shown in FIG. 10 - Mittoko - unencrypted to manage de activation process as distribution software is a program with a pair supplied from the soft supplier.

【0028】図示しない入力手段により所望のアプリケ−ションソフトの実行指令を受けると(ステップ1)、 [0028] The input means (not shown) the desired applique - receives the execution command of Deployment software (Step 1),
CPU2は、先ずスクランブル符号発生器6の出力を停止すると共に、暗号処理器7の復号機能を停止するための指令信号s1を出力する(ステップ2)。 CPU2, first stops the output of the scrambling code generator 6 outputs a command signal s1 to stop the decryption function of the encryption processing unit 7 (Step 2). そして次のステップ3で、この配給ソフトがメインメモリ21にロ−ドされ、更に起動処理プログラムがCPU2に読み込まれて実行される。 Then in a next step 3, the distribution software B in the main memory 21 - are de, it is read and executed by further activation processing program in CPU 2.

【0029】この暗号化されたアプリケ−ションソフトEsf2(DapX(+)F(ReX))がメインメモリにロ−ドされる際に、メインメモリ21に指定される先頭アドレスToはその管理状況によって変わるが、前記したようにそれに続くアドレスは連続的に指定されるため、この時の先頭アドレスToからの相対位置を示す相対アドレス群は、スクランブル時に用いられた相対アドレス群R [0029] The encrypted applique - Deployment soft Esf2 (DapX (+) F (ReX)) is b in main memory - when being de, by the start address To its management status specified in the main memory 21 It varies but, since the address subsequent as described above are designated consecutively, the relative address group that indicates the relative position from the start address to at this time, relative address group R used during scrambling
eXと同じデ−タとなる。 The data - the same out with eX.

【0030】この配給ソフトの供給手段としてはハ−ドディスク22、CD−ROM23、フロッピ−ディスク24及び、モデム25等による方法が考えられるが、その方法は一般的に行なわれている方法を採用できるため、ここでその詳しい説明は省略する。 [0030] as a supply means of the delivery software ha - de disk 22, CD-ROM 23, a floppy - disk 24 and, although the method according to the modem 25 or the like are considered, use a method the method that is generally carried out since it, and a detailed description thereof will be omitted here.

【0031】続くステップ4から10のステップは、いま実行された起動処理プログラムに従って実行され、次のステップ4では、この暗号化アプリケ−ションソフト専用の作業鍵Ksf2を公開鍵Kpmpで暗号化したパ−ミットコ−ドEpmp(Ksf2)がハ−ドディスク22に既にメモリされているかを確認する。 [0031] The following step of step 4 from 10 is executed in accordance with the now executed start-up processing program, the next step 4, the encryption applique - by encrypting and Deployment software dedicated work key Ksf2 with the public key Kpmp path - Mittoko - de Epmp (Ksf2) Gaha - already sure it is the memory in the de-disk 22. この公開鍵Kpmp The public key Kpmp
は、上記したように図1のCMP1固有の秘密鍵Ksmp Is, CMP1 unique secret key Ksmp of Figure 1 as described above
に対応するもので、この秘密鍵Ksmpのみによって復号することが可能となる。 Those corresponding to, it is possible to decode only by the secret key Ksmp.

【0032】従って、この場合のパ−ミットコ−ドEpm [0032] Therefore, in this case path - Mittoko - de Epm
p(Ksf2)は、公開鍵で作業鍵を暗号化したものであり、アプリケ−ションソフト供給元が、CMP1のユ− p (Ksf2) is obtained by encrypting the session key with the public key, applique - Deployment software supplier, CMP1 of Yu -
ザ−から公開鍵Kpmpを入手して作成する。 The - the public key Kpmp to create to obtain from. ステップ4 Step 4
でこのパ−ミットコ−ドの存在が確認できないと、CM In this path - Mittoko - When the presence of the soil can not be confirmed, CM
P1のユ−ザ−は何らかの方法でソフト供給元からこれを入手し(ステップ5)、このアプリケ−ションソフトの専用ファイルにパ−ミットコ−ドを入力し、ハ−ドディスク22にこれを保存する(ステップ6)。 P1 Yu - The - it is to get it from the software supplier in some way (step 5), this applique - path to the Deployment software-only file - Mittoko - enter the soil, ha - save it to de disk 22 (step 6). この様にパ−ミットコ−ドの入力保存は、通常は暗号化されたアプリケ−ションソフトと対になったこの起動処理プログラムによって行なわれる。 Thus the path - Mittoko - input storage de is usually encrypted applique - performed by Deployment software and the activation process program paired.

【0033】次に、パ−ミットコ−ドEpmp(Ksf2) [0033] Next, Pa - Mittoko - de Epmp (Ksf2)
の存在を確認するとこれを読み込み(ステップ7)、内蔵の保管レジスタ10に保管している秘密鍵Ksmpでこれを復号化して得た作業鍵Ksf2を保管レジスタ8に保管する(ステップ9)。 Reading this confirms the presence of (Step 7), stored in the storage register 8 working key Ksf2 obtained by decoding it in secret key Ksmp that stored in the storage register 10 of the internal (step 9).

【0034】次にCPU2は、スクランブル符号発生器6の出力を再開し、暗号処理器7の暗号化/復号化機能を起動するための指令信号s1を出力する(ステップ1 [0034] Next CPU2 resumes the output of the scrambling code generator 6 outputs a command signal s1 for starting the encryption / decryption function of the encryption processing unit 7 (Step 1
0)。 0). そしてステップ11に至り、必要に応じてこのメインメモリ21に保管された暗号化されたアプリケ−ションソフトEsf2(DapX(+)F(ReX))がCPU2へ読み込まれて実行される。 Then reaches the step 11, the encrypted stored as required to the main memory 21 the applique - Deployment soft Esf2 (DapX (+) F (ReX)) is loaded into and executed to CPU 2.

【0035】従って、この時この暗号化されたアプリケ−ションソフトEsf2(DapX(+)F(ReX))は、暗号処理器7によって作業鍵Ksf2で復号化されて(DapX [0035] Therefore, applique this time was the encrypted - Deployment software Esf2 (DapX (+) F (ReX)) is decoded in the session key Ksf2 by the cryptographic processor 7 (DapX
(+)F(ReX))となる。 (+) Becomes F (ReX)). また上記のごとく、この時のアドレスデ−タから生成されるスクランブル符号はF(Re Also as described above, at this time the address de - scrambling is generated from the data symbols F (Re
X)であり、加算器11は、これ等の排他論理和を行なってデスクランブルされたアプリケ−ションソフトDap An X), the adder 11, applique descrambled by performing exclusive OR of this such - Deployment software Dap
XをCPU2のデ−タポ−ト17に出力する。 X the CPU2 of the de - Tapo - and outputs it to the door 17.

【0036】以上のようにして、アドレススクランブルと暗号化されたアプリケ−ションソフトがCPU2に読み込まれる。 [0036] As described above, address scrambled and encrypted applique - Deployment software is loaded into the CPU2. このようにして暗号化されたアプリケ−ションソフトとパ−ミットコ−ドの組合せにより、下記の長所をあげることができる。 Thus applique was encrypted - Deployment software and Pas - Mittoko - by a combination of de, it can be mentioned the following advantages:.

【0037】長所 1. [0037] advantages 1. ソフト供給元は、供給するソフトを所定のCMPでのみ利用させることが出来る。 Soft supplier, can be use of software supplies only a predetermined CMP. CMPの秘密鍵Ksmpがその外部に現れることがなく、ユ−ザ−を含む第3者によってチェック出来ないため。 Without the secret key Ksmp appears on the outside of the CMP, Yu - The - because you can not check by a third party, including. 2. 2. 暗号化されたアプリケ−ションソフトをCD−RO Encrypted applique - Deployment software the CD-RO
M等の複製可能な媒体により市場に出すことができる。 It can be put on the market by the replicable media of M, and the like.
同種のアプリケ−ションソフトは、同じ作業鍵で暗号化されるため。 Because Deployment software, which is encrypted with the same session key - the same type of applique. 3. 3. 異種のアプリケ−ションソフトは、それぞれ専用の作業鍵で暗号化されなければならないが、アプリケ−ションソフトの種類だけ異なる作業鍵を用意すればよい。 Heterologous applique - Deployment software, but must be encrypted in a dedicated session key, respectively, applique - Deployment Software nature only different session key may be prepared.

【0038】次に、ユ−ザ−によって作成され、一旦メインメモリ21に保存したデ−タを、暗号化して再度メインメモリ21に保存しなおす過程を図3のフロ−チャ−トを用いて説明する。 Next, Yu - The - created by, once de was stored in the main memory 21 - the data, the process of re-stored in the main memory 21 again encrypts flow of Figure 3 - using the door - tea explain. この場合、このデ−タを作成する段階では、デ−タの暗号化は行なわれないものとする。 In this case, the de - at the stage of creating the data, de - encryption data shall not be performed.

【0039】このプログラムが起動すると、上記したようにユ−ザ−によって作成されたデ−タ群DsXが暗号化されないままメインメモリ21に保管される(ステップ21)。 [0039] When this program is started, Yoo as described above - The - De created by - data group DsX is stored in the main memory 21 without being encrypted (step 21). 次にCPU2は、キ−ボ−ド等の入力手段(図示せず)から入力するユ−ザ−からの指示に基づいてこのデ−タ群DsXを共通鍵方式で暗号化するための作業鍵Kusrを決定し(ステップ22)、これを保管レジスタ8に出力して保管する。 Then CPU2 is key - ball - yu input from the input means such as de (not shown) - The - The de on the basis of an instruction from the - session key for encrypting the data group DsX in common key system determine the Kusr (step 22), stores and outputs it to the storage register 8.

【0040】次にCPU2は、メインメモリ21のデ− [0040] Next, the CPU2 is, data of the main memory 21 -
タ群DsXを読み込むために、スクランブル符号発生器6の出力を停止すると共に、暗号処理器7の機能を一時停止すための指令信号s1を出力する(ステップ2 To read the data group DSX, stops the output of the scrambling code generator 6 outputs a command signal s1 for Pause functions of the cryptographic processor 7 (Step 2
5)。 5). この時デ−タ群DsXはそのままCPU2に読み込まれるが1バイト毎にアドレス指定されて読み込まれ(ステップ26)、この段階では最初の1バイト分のデ−タDs1がCPU2に読み込まれる。 The Tokide - data group DsX is directly loaded into CPU2 read is addressed to each byte (step 26), the first one byte of the de at this stage - data Ds1 is read into CPU2. 尚、デ−タ群Ds It should be noted that the de - the other groups Ds
Xは、1バイトデ−タDs1,Ds2,……DsNの集合として標記する。 X is 1 Baitode - data Ds1, Ds2, to the title as a set of ...... DsN.

【0041】次にCPU2は、スクランブル符号発生器6の出力を再開し、暗号処理器7の復号化機能を起動するための指令信号s1を出力する(ステップ27)。 [0041] Next CPU2 resumes the output of the scrambling code generator 6 outputs a command signal s1 for starting the decryption function of the encryption processing unit 7 (step 27). この状態でCPU2は、取り込んだ1バイト分のデ−タD CPU2 In this state, captured one byte of de - data D
s1を再度メインメモリ21に書き込む。 The s1 again written to the main memory 21.

【0042】この書き込み過程で、先ずこのデ−タの番地を指定するアドレスに対応してスクランブル符号発生器6から出力されるスクランブル符号F(Re1)と、このデ−タDs1との排他論理和(Ds1(+)F(Re1))によるアドレススクランブルが行なわれ、これがデ−タ経路14 Exclusive logical sum of the data Ds1 - [0042] In this write process, first, the de - scramble code F (Re1) which is output from the scramble code generator 6 in response to the address that specifies the data address of the de (Ds1 (+) F (Re1)) address scramble is performed by, Koregade - data path 14
に現れる(ステップ28)。 Appearing in (step 28). 尚、スクランブル符号F(R Note that the scrambling code F (R
e1)は、上記したデ−タ群DsXの各1バイトデ−タに対応して生成されるスクランブル符号F(Re1),F(Re2),… e1) shows the above-mentioned de - each 1 Baitode of data groups DSX - scrambling is generated corresponding to the data code F (Re1), F (Re2), ...
…F(ReN)の1番目に相当し、これ等の集合をF(ReX) ... F corresponds to the first (ReN), which set such as F (ReX)
と標記する。 To the title with.

【0043】更にこのデ−タ(Ds1(+)F(Re1))は、暗号処理器7によって作業鍵Kusrで暗号化され(ステップ28)、Eusr(Ds1(+)F(Re1))の状態でメインメモリ21に書き込まれる。 [0043] Furthermore, the de - data (Ds1 (+) F (Re1)) is encrypted with the session key Kusr by the cryptographic processor 7 (step 28), Eusr (Ds1 (+) F (Re1)) state in is written in the main memory 21. 次に、再びステップ24に戻って、暗号化するデ−タ群DsXが終了するまで1バイトづつ同様の暗号化処理が繰り返される。 Then, again returning to step 24, de encrypts - 1 byte at the same encryption processing until data group DsX ends are repeated.

【0044】そして、処理するデ−タDsXがなくなった段階でステップ30に至り、スクランブル符号発生器6の出力停止と、暗号処理器7の暗号化機能停止のための指令信号s1を出力する。 [0044] Then, the processing de - leads to step 30 at the stage of data DsX has disappeared, and outputs the output and stop scrambling code generator 6, a command signal s1 for encryption outages cryptographic processor 7. そしてこのメインメモリ2 And the main memory 2
1に書き込まれた暗号化されたデ−タを、HD,FD等の補助記憶装置に保存して(ステップ31)このプログラムを終了する。 Written encrypted de 1 - the data, HD, and stored in the auxiliary storage device such as an FD (step 31) and terminates this program.

【0045】尚、CPU2のデ−タポ−ト17部にキャッシュメモリ26を設けると、入出力するデ−タをためることができ、暗号化処理効率を上げることが出来る。 [0045] Incidentally, CPU 2 of de - The provision of the cache memory 26 to the preparative 17 parts of de input and output - - Tapo can accumulate data, it is possible to raise the encryption processing efficiency.
即ち、ステップ26で複数バイト、例えば100バイト分のデ−タを連続して読み込み、ステップ28でこの1 That is, a plurality of bytes, for example, 100 bytes of de Step 26 - read continuously data, the 1 at step 28
00バイト分のデ−タを連続してスクランブル及び暗号化することによって、ステップ25とステップ27の各機能の切り換え行程をその分省略することが出来る。 00 bytes of de - by scrambling and encryption continuously data, the switching stroke of the functions of steps 25 and step 27 can be correspondingly omitted.

【0046】上記の例では、ユ−ザ−が作成したデ−タを暗号化する行程を説明したが、前記したアプリケ−ションソフト提供元が、暗号化プログラムを作成する場合も同様の行程で処理することが出来る。 [0046] In the above example, User - The - has been described process for encrypting data, it said the applique - - de created the Deployment software provider is in the same stroke may create an encrypted program it can be processed. アプリケ−ションソフトを暗号化する場合には、作成したアプリケ−ションソフトをデ−タ群DapXとしてメインメモリ21に一旦保管し、共通鍵方式の秘密鍵として作業鍵Ksf2を設定し、上記した図3のフロ−に従って処理すれば、前記した暗号化されたアプリケ−ションソフトEsf2(D Applique - to encrypt and Deployment software, applique was created - a Deployment software de - once stored in the main memory 21 as the other groups DapX, set the working key Ksf2 as a secret key of the common key system, the above-mentioned Fig. if the operation in accordance with, the above-mentioned encrypted applique - - 3 on the front and Deployment soft Esf2 (D
apX(+)F(ReX))を補助記憶装置に保管することが出来る。 apX (+) F (ReX)) it is possible to store in the auxiliary storage device.

【0047】また上記の実施例の場合、ステップ2で一旦デ−タをメインメモリに作成し、その後暗号化処理を行なうケ−スを示したが、デ−タを作成する過程で直接暗号化してメモリに出力する方法も考えられる。 [0047] In the case of the embodiment described above, once de in Step 2 - Create a data to main memory, then performs the encryption process Ke - showed scan, de - directly encrypted in the process of creating a data how to output to the memory Te is also conceivable. この場合、作成したデ−タをメインメモリに出力する際に、その過程で1バイト毎にデ−タのアドレススクランブルと暗号化を行ない、メインメモリに保存するように構成すればよい。 In this case, de-created - when outputting the data to main memory, de in the process for each byte - performs address data scrambling and encryption, may be configured to store in the main memory.

【0048】また前記実施例では、オフセットレジスタ4にアドレス群の先頭アドレスをメモリするように説明したが、これに限定されるものではなく、相対アドレスReiを導き出せる基準値であればよい。 [0048] In the above embodiment describes the start address of the address group in the offset register 4 to the memory, it is not limited thereto and may be a reference value derivable relative address Rei.

【0049】次に、CMP1内に設けられた秘密メモリ5の働きについて説明する。 Next, a description will be given of the action of the secret memory 5 provided in the CMP1. このため、ソフト供給元によってその稼働時間が管理されたアプリケ−ションソフトを、例えば図4乃至図7の各フロ−チャ−トに従ってCD−ROM23から取り込み、実行する場合を例に説明する。 Therefore, applique its operating time is managed by the software supplier - a Deployment software, for example, the flow of FIGS. 4-7 - Cha - DOO uptake from CD-ROM 23 according to example explains how to run.

【0050】これ等のフロ−チャ−トの説明の前に、理解を容易にするために秘密メモリ5の働きについて、その要点を先ず説明する。 [0050] like on the front - Cha - before the bets description, serve the secret memory 5 in order to facilitate understanding, first described the main points. 図9は、秘密メモリ5に保存されるデ−タの内容を示すが、ここには、CMP1が実行するn種類のアプリケ−ションソフトに1対1で対応するパスワ−ドPwが保存される。 Figure 9 is de-stored in the secret memory 5 - shows the contents of data, here, n type of applique that CMP1 performs - corresponding password in Deployment software in one-to-one - de Pw is stored .

【0051】このパスワ−ドPwは、秘密メモリ5内で唯一の値であればどのような値でも良く、後述する図4 [0051] The password - de Pw may be any value as long as the only value in the secret memory 5, Fig. 4 to be described later
のインスト−ルフロ−のステップ75では、生成される乱数によって決定される例を示す。 Installation - Rufuro - In step 75, an example which is determined by a random number to be generated. この様にして決定されるパスワ−ドPwは、秘密メモリ5内に保存されると共に、インスト−ル実行中のアプリケ−ションソフトの環境設定ファイルにも保存され、後述する図5の実行フロ−のステップ47で秘密値Nraの照合を行なう際に利用される。 Password is determined in this manner - de Pw, along with being stored in the secret memory 5, installation - Le running applique - also stored in Deployment software configuration file, the execution of FIG. 5 described later furo - in step 47 it is used when performing the matching private value Nra.

【0052】この秘密値Nraは、同じく図6の実行フロ−のステップ57でアプリケ−ションソフトの実行が終了する毎に任意に発生される乱数などによって更新され、稼働可能時間を示す残量時間Treと共に実行中のアプリケ−ションソフトの時間デ−タファイルDdat(Dd [0052] The secret value Nra, like execution flow of FIG. 6 - in step 57 applique - updated random numbers, such as by the Deployment software execution is generated arbitrarily each time ended, the remaining amount indicating the uptime time applique running in conjunction with a Tre - Deployment software of time de - datafile Ddat (Dd
at=Tre+Nra')としてハ−ドディスク22に保存される(ステップ59)。 at = Tre + Nra ') as ha - is stored in de disk 22 (step 59). 更に、ここで更新された秘密値Nra'は、ステップ60で秘密メモリ5内に確保された実行中のアプリケ−ションソフトに対応するパスワ−ドPwによって同メモリ内で識別される秘密値Nraに上書きされる。 Furthermore, where the updated secret value Nra 'is applique running secured in secret memory 5 in step 60 - the secret value Nra identified in the same memory by de Pw - password corresponding to Deployment software It is overwritten. 尚、図5、6に示す実行フロ−内において、 The execution flow shown in FIGS. 5 and 6 - in the,
秘密値の更新前後を区別するために、更新前の秘密値をNraで、また更新後の秘密値をNra'としてそれぞれを示す。 To distinguish before and after the update of the secret value, in Nra secret value before updating, also indicating each secret value updated as Nra '.

【0053】このステップ60での秘密値の更新に際しては、後述するように安全性を高めるために秘密メモリ5の更新前の秘密値Nraによる照合が行なわれる。 [0053] In updating the secret value at the step 60, in order to increase safety as described later matching by secret value Nra before updating the secret memory 5 are performed. よって、更新時には(Pw,Nra,Nra')が用意され、パスワ−ドPwによって識別された秘密メモリ5内のNraと照合のために用意したNraとが一致した場合のみ、新しい秘密値Nra'によって書換が行なわれる。 Therefore, at the time of updating (Pw, Nra, Nra ') are prepared, password - when the Nra prepared for matching the Nra in secret memory 5 identified by de Pw match only new secret value Nra' rewriting is performed by. このようにしてユ−ザ−等の第3者によるNraの安易な変更を防止する。 In this way, the User - The - to prevent the easy change of Nra by a third party such as.

【0054】以上の様に秘密値Nraを秘密メモリ5に保管すると共に、時間デ−タファイルDdatとしてハ−ドディスク22内に保存し、このアプリケ−ションソフトが実行される毎にこれ等を照合することによって、ハ− [0054] together to save the secret value Nra in secret memory 5 As described above, the time de - datafile Ddat as hard - to save the soil disk 22, the applique - matching this like every time the Deployment software is executed by, ha -
ドディスク22に保管されている時間デ−タファイルD Time de-stored in the soil disc 22 - datafile D
datが第3者によって改ざんされていないかをチェックすることができる。 dat it is possible to check whether or not been tampered with by a third party.

【0055】例えばユ−ザ−が、残量時間Treが十分残っている段階で時間デ−タファイルDdatをコピ−して予め別途確保しておき、このアプリケ−ションソフトが実行されて残量時間が僅かになった段階で、ハ−ドディスク22に保存される時間デ−タファイルDdatと置き換えたとする。 [0055] Tatoebayu - The - is, time de at the stage where the remaining time Tre is still good - datafile Ddat a copy - to advance separately secured, the applique - Deployment software is executed and the remaining time in step becomes slightly ha - time de-stored in de disc 22 - and replaced with datafile dDAT. しかしながらこの場合、この置き換えられた時間デ−タファイルの秘密値と秘密メモリ5に保存してある秘密値を照合することによって、このデ−タが正規のデ−タでないことが判明する。 However, in this case, the replacement of time de - by matching secret values ​​stored in the secret value of the datafile and the secret memory 5, the de - data is normal de - turn out to be not a data. なぜならば、この場合の両者の秘密値Nraは、生成されたタイミングが異なるため、当然異なった値となっているからである。 Because secret value Nra of both this case, since the generated timing is different, because has a course different values.

【0056】以上の記載から理解されるように、秘密メモリ5内のデ−タは、ユ−ザ−を含め第3者によって操作出来ないようにすることが好ましい。 [0056] As can be understood from the above description, data of the secret memory 5 - data is User - The - is possible not be operated by a third party including preferred. 従って、CMP Therefore, CMP
1の外部に秘密メモリ5のデ−タが出力されないように構成される必要がある。 1 external to de secret memory 5 - there data needs is constructed so as not to output.

【0057】図4乃至図7の各フロ−チャ−トは、上記したように、不正なデ−タの改ざんを防ぐべく、秘密メモリ5を使って実施される秘密デ−タ管理方法の全体の手順を示すもので、以下その流れを順に説明する。 [0057] Each of FIGS. 4-7 furo - Cha - DOO, as described above, incorrect de - overall data management method - in order to prevent falsification of data, secret de performed with the private memory 5 shows the procedure thereof will be described below in this order.

【0058】先ず、所望のアプリケ−ションソフトを入手してハ−ドディスク22にインスト−ルし、更に必要な諸環境を初期設定するまでの流れを図4のインスト− [0058] First, the desired applique - Deployment software to obtain ha - Installation in de disc 22 - Le to flow to the installation of Figure 4 to initialize the more necessary various environments -
ルフロ−に従って説明する。 Rufuro - will now be described with reference to. 所望のアプリケ−ションソフトの入手方法は種々考えられるが、このソフトが入ったCD−ROMを所定のル−トで入手し(ステップ7 Desired applique - although Deployment Obtaining software are various, the software contains a CD-ROM predetermined Le - obtained in preparative (Step 7
1)、インスト−ルする例を記述する。 1) Installation - describes an example in which Le. 尚、このインスト−ルフロ−は、アプリケ−ションソフトに付随するセットアッププログラムファイルに基づいて実行されるものである。 Note that this installation - Rufuro - is applique - which is executed on the basis of the setup program files associated with the Deployment software.

【0059】この場合、このCD−ROM23がCD− [0059] In this case, the CD-ROM23 is CD-
ROMドライブにセットされ、図示しない入力手段によってインスト−ルの指示を受けると、そのアプリケ−ションソフトがハ−ドディスク22にインスト−ルされる(ステップ72)。 Upon receiving an instruction of Le, the applique - - is ROM drive, the input means (not shown) Installation Deployment software ha - Installation in de disc 22 - is Le (step 72). 他のインスト−ル例として、アプリケ−ションソフトをモデム25を介してダウンロ−ドし、ハ−ドディスク22にインスト−ルするようにしてもよい。 As Le example, applique - - Other Installation Deployment softwares through the modem 25 downloaded - to de, ha - the de disk 22 Installation - may be Le.

【0060】但し、この時インスト−ルされたアプリケ−ションソフトDexeXは、前記した方法でスクランブル符号F(ReX)によるアドレススクランブルと作業鍵Ksf3による暗号化が行なわれ、Esf3(DexeX(+)F [0060] However, this time install - le has been applique - Deployment software DexeX is scrambling code F (ReX) encryption address scramble the session key Ksf3 by is performed by the method described above, Esf3 (DexeX (+) F
(ReX))の状態でハ−ドディスクに保存されているものとする。 In the state of (ReX)) c - it is assumed to be stored in the disk.

【0061】そして次のステップ73では、作業鍵Ksf [0061] Then, in the next step 73, the working key Ksf
3を確保し、保管レジスタ8にこれを保管する。 3 to secure, store it in the storage register 8. そのため、このステップでは、図2のフロ−のステップ5からステップ9で説明したように所定の手順でソフト供給元から入手したパ−ミットコ−ドEpmp(Ksf3)をハ− Therefore, in this step, the flow 2 - Pas was obtained from step 5 from soft sources in a predetermined procedure as described in Step 9 - Mittoko - de Epmp the (Ksf3) ha -
ドディスク22に保管し、復号部9で復号化する作業が含まれる。 Store in de disc 22, includes the task of decoding by the decoding unit 9.

【0062】そして次のステップ74では、スクランブル符号発生器6の出力を開始し、暗号処理器7の暗号化/復号化機能を起動するための指令信号s1を出力する。 [0062] The next step 74, starts outputting the scrambling code generator 6 outputs a command signal s1 for starting the encryption / decryption function of the encryption processor 7. これにより、後述するステップ82で両機能がオフとされるまで、CMP1とメインメモリ21等の外部記憶装置との間で入出力するデ−タはすべて暗号化されたものとなる。 Thus, until both functions are turned off in step 82 to be described later, de input and output between the external storage device such as CMP1 and the main memory 21 - data is assumed that all encrypted.

【0063】次のステップ75では、前記したようにこのアプリケ−ションソフトに1対1で対応するパスワ− In the next step 75, the applique as described above - a one-to-one correspondence with Deployment software password -
ドPw3を生成すべく乱数を発生させ、まだ秘密メモリ5内に存在しない数値であることを確認して確定し、同メモリ内にこれを確保する。 Generates a random number to produce a de Pw3, still determined to confirm that the numerical value that does not exist in the secret memory 5, to secure it in the memory. そして、インスト−ルされたアプリケ−ションソフトDexeXの環境設定ファイルAcfg3を作成し、この中に生成したパスワ−ドPw3 And, installation - Le has been applique - Deployment software to create a configuration file Acfg3 of DexeX, was generated in the password - de Pw3
を書き込んでハ−ドディスク22に保存する(ステップ76)。 Writing ha - Save to de disk 22 (step 76).

【0064】次に、このアプリケ−ションソフトの稼働可能な残量時間Treをゼロとし(ステップ77)、乱数を発生させて秘密値Nraを生成する(ステップ78)。 Next, the applique - Deployment software and running possible remaining time Tre zero (step 77), by generating a random number to generate a secret value Nra (step 78). そして残量時間Treと秘密値Nraとからなる時間デ−タファイルDdat(Ddat=Tre+Nra)を作成し、ハ−ドディスク22にこれを保存する(ステップ79、80)。 And time de-consisting of the remaining time Tre and the secret value Nra - to create a datafile Ddat (Ddat = Tre + Nra), ha - to save it to de disk 22 (step 79, 80).
尚、この時作成される時間デ−タファイルDdatは、 It should be noted that the time de-is created at this time - datafile Ddat is,
必要に応じて一旦メインメモリ21に保存されるが、この際のデ−タは当然暗号化され、且つスクランブルされたデ−タとして保存される。 While it is temporarily stored in the main memory 21 as necessary, de when this - data is naturally encrypted and scrambled de - stored as data.

【0065】また、この時生成した秘密値Nraは、図9 [0065] In addition, secret value Nra generated at this time, as shown in FIG. 9
に示すように秘密メモリ5内に確保されたパスワ−ドP Password reserved in the secret memory 5 as shown in - de P
w3に対応してこれに保存され(ステップ81)、このパスワ−ドPw3によって照合などの操作が可能とされる。 In response to w3 stored thereto (step 81), the password - operations such as matched by de Pw3 is possible. そして、ステップ82でスクランブル符号発生器6 The scrambling code generator in step 82 6
の出力と、暗号処理器7の暗号化/復号化機能と停止してこのフロ−を終了する。 An output of, stops the encryption / decryption function of the encryption processor 7 the flow - End.

【0066】以上のステップによって所望のアプリケ− [0066] By the above step desired applique -
ションソフトDexeXが暗号化された状態でハ−ドディスク22にインスト−ルされ、更に必要な諸環境が初期設定されたことになる。 Deployment soft DexeX is in a state of being encrypted ha - Installation in de disc 22 - is Le, the further required specifications environment is initialized.

【0067】次に、所望のアプリケ−ションソフトを実行する場合の手順について、図5,6の実行フロ−チャ−トを参照しながら説明する。 Next, the desired applique - the procedure for executing Deployment software execution flow of FIGS - be described with reference to bets - tea. 説明を容易にするため、 For ease of explanation,
ここで実行するアプリケ−ションソフトを、上記の説明でインスト−ルされたDexeXとする。 Applique run here - the Deployment software installation in the above description - and Le have been DexeX.

【0068】ステップ41でこのアプリケ−ションソフトが実行されると、このソフトの読み込みが行なわれる(ステップ42)。 [0068] The applique Step 41 - If Deployment software is executed, reading of the software is performed (step 42). このステップ42の行程は、前記した図2の示すフロ−チャ−トのステップ2からステップ10の行程に対応するもので、既に説明したように暗号化スクランブルされたアプリケ−ションソフトEsf3 Stroke of step 42, flow indicated by FIG. 2 described above - Cha - correspond from bets Step 2 stroke step 10, the encrypted scrambling as previously described applique - Deployment software Esf3
(DexeX(+)F(ReX))がメインメモリ21にロ−ドされると共に、パ−ミットコ−ドEpmp(Ksf3)が復号され、作業鍵Ksf3が保管レジスタ8に保管される。 (DexeX (+) F (ReX)) in the main memory 21 b - while being de, Pa - Mittoko - are de Epmp (Ksf3) is decoded, the working key Ksf3 is stored in the storage register 8.

【0069】更に、スクランブル符号発生器6の出力を開始し、暗号処理器7の暗号化/復号化機能を起動するための指令信号s1を出力する。 [0069] Further, it starts outputting the scrambling code generator 6 outputs a command signal s1 for starting the encryption / decryption function of the encryption processor 7. これにより、後述するステップ49で両機能がオフとされるまで、CMP1とメインメモリ21等の外部記憶装置との間で入出力するデ−タはすべて暗号化されたものとなる。 Thus, until both functions are turned off in step 49 to be described later, de input and output between the external storage device such as CMP1 and the main memory 21 - data is assumed that all encrypted.

【0070】尚、図2で説明したように、この暗号化スクランブルされたアプリケ−ションソフトEsf3(Dex [0070] As described in FIG 2, the encrypted scrambled applique - Deployment soft Esf3 (Dex
eX(+)F(ReX))には前記した起動処理プログラムが添付されているものとする。 The eX (+) F (ReX)) shall start processing program described above is attached. また今回は、図4のフロ−に基づくインスト−ル時にパ−ミットコ−ドの保管が行なわれるので、結果的に図2中の起動処理プログラムによるステップ4からステップ6の行程を省略できる。 Also this time, flow of FIG. 4 - Mittoko - - Pas at Le - Installation based on so de storage is performed, consequently can be omitted stroke Step 6 Step 4 by the activation processing program in FIG.

【0071】そして、このソフトの環境設定ファイルA [0071] Then, the configuration file A of this software
cfg3を読み出し、この中にパスワ−ドPwがあるか確認する(ステップ43)。 It reads Cfg3, password in this - de Pw is either confirmed there (Step 43). このケ−スでは、パスワ−ドPw3が存在するのでステップ44に至るが、もし存在しない場合、このソフトのインスト−ル時にエラ−が生じてパスワ−ドが生成されなかったことを意味するので、このことを図示しない表示手段で表示して再インスト−ルの指令を出し(ステップ45,46)、更にステップ49でスクランブル符号発生器6の出力と暗号処理器7の機能とを停止した後、待機状態に戻る。 The scan, password - - The Ke but leads to step 44 since de Pw3 exists, if it does not exist if installation of the software - it means that de was not generated - is caused password - error during Le , this is displayed in the display means that is not shown in reinstall - issues a command for Le (step 45), further after stopping function and output an encryption processor 7 scrambling code generator 6 in step 49 , it returns to the standby state.

【0072】次にステップ44でこのアプリケ−ションソフトの時間デ−タファイルDdat(Ddat=Tre+Nr [0072] Next, the applique in step 44 - Deployment software of time de - datafile Ddat (Ddat = Tre + Nr
a)が読み出される。 a) is read. この時、当然作業鍵Ksf3による復号化とアドレスによるデスクランブルが行なわれる。 At this time, the descrambling is carried out by naturally decoding the address by session key Ksf3.
尚、この時読み出される暗号化された時間デ−タファイルDdatは、必要に応じてメインメモリ21にそのままの形で保管される。 Note that the encrypted time de-read at this time - datafile Ddat is kept intact in the main memory 21 as necessary.

【0073】次に、秘密メモリ5内の秘密値Nraと時間デ−タファイルDdatの秘密値との照合が行なわれる(ステップ47)。 [0073] Next, the secret value Nra and time data of the secret memory 5 - is performed matching the secret value of the datafile dDAT (step 47). 今は、上記図4のインスト−ルフロ−の説明でインスト−ルされたアプリケ−ションソフトDexeXの秘密値が照合されるため、この時間デ−タファイルDdatが何らかの方法で改ざんされないかぎりこれら2つの秘密値は一致し、ステップ50に移行することが理解される。 Now, installation of FIG 4 - Rufuro - since the secret value of Deployment soft DexeX is collated, the time de - - Le been applique that - Installation description unless datafile Ddat is not tampered in any way these two secrets values ​​match, it is understood that the process proceeds to step 50.

【0074】もしここで、前記したような時間デ−タファイルDdatの置き換えが行なわれていると、当然これら2つの秘密値が異なるためステップ48に移行し、後述する処理が行なわれる。 [0074] If now, Time de as described above - the replacement datafile Ddat is being performed, naturally moves to these two for secret values ​​are different step 48, processing described later is performed.

【0075】ステップ50乃至ステップ53は、アプリケ−ションソフトDexeXを実行処理すると同時に残量時間を監視するフロ−になっている。 [0075] Step 50 to Step 53, applique - have become - when Deployment software DexeX processes the execution flow for monitoring the remaining time at the same time. 即ち、ステップ5 In other words, step 5
0では実行時間を計測して逐次残量時間を更新し、ステップ51では残量時間がゼロになったかを監視し、更にステップ53ではこの実行の停止指令が入ったかどうかを監視する。 0 In the execution time to update to sequentially remaining time measurement, the remaining time in step 51 monitors whether becomes zero, monitors whether containing the stop command further step 53 the execution.

【0076】また、このステップ52では、必要に応じて順次メインメモリ21にロ−ドされたアプリケ−ションソフトEsf3(DexeX(+)F(ReX))がCPU2へ読み込まれるが、その際には前記した復号化、及びデスクランブルが逐次実行される。 [0076] In step 52, b sequentially main memory 21 as necessary - de been applique - although Deployment soft Esf3 (DexeX (+) F (ReX)) is loaded into the CPU 2, when its wherein the decryption and descrambling are executed sequentially.

【0077】この実行中に残量時間がゼロになるとステップ51でこれを判定し、一旦ソフト処理を終了した後(ステップ54)、図示しない表示手段によって例えば「残量時間がありません。」等の表示を行なって(ステップ55)、後述するようにソフト供給元に残量時間の追加を申請するプログラムに入る(ステップ56)。 [0077] determines this at step 51 the remaining time during this run is zero, once the completion of the software processing (step 54), "No remaining time." For example by the display means (not shown), such as perform the display (step 55), enters the program to apply additional remaining time software supplier as will be described later (step 56). 今は、インスト−ルされたばかりのアプリケ−ションソフトDexeXの例を想定して記述しているので残量時間がゼロになっており、当然このル−トをたどる。 Now, installation - applique that has just been Lumpur - because it describes assuming an example of Deployment software DexeX the remaining time has become zero, of course This Le - follow the door.

【0078】このステップ56の残量時間追加申請プログラムは、図7に示すフロ−チャ−トに示す手順によって行なわれる。 [0078] the remaining time additional application program in step 56, flow shown in FIG. 7 - is carried out by the procedure shown in bets - tea. 即ちユ−ザ−は、残量時間がなくなって暗号化された状態の時間デ−タファイルDdatを何等かの方法でソフト供給元に届ける(ステップ91)。 That User - The - the time encrypted state gone remaining time de - datafile Ddat deliver soft supplier what mag ways (steps 91). その方法は種々考えられるが、例えばモデム25を介して行なわれるインタ−ネットなどのパソコン通信によって行なってもよい。 The method is are various, inter performed for example through a modem 25 - may be performed by computer communication such as Internet.

【0079】一方、ソフト供給元では、このファイルの復号化とデスクランブルを行なってデ−タを復元し、このDdat(Ddat=Tre+Nra)の残量時間Treの追加補充を行なう(ステップ92)。 [0079] On the other hand, in the soft supplier, De perform the decoding and descrambling of the file - the data to restore, perform additional replenishment of the remaining time Tre of Ddat (Ddat = Tre + Nra) (step 92). その補充量は、ユ−ザ− The replenishment amount, Yu - The -
の依頼に応じて決定されるが、対価の補充料金の支払については別途行なわれるものとし、ここでの説明は省略する。 Is determined in accordance with the request, to be separately performed for the payment of the consideration replenishment rates for, description thereof will be omitted.

【0080】ソフト供給元では、この残量時間Treの補充を行なった後、一緒に送られてきた秘密値と共に、再びアドレススクランブルと作業鍵Ksf3による暗号化を行なった後ユ−ザ−に返信する(ステップ93)。 [0080] Koyu in the software supplier, this after remaining subjected to replenishment of time Tre, together with the secret value that has been sent to, was carried out encrypted by the address scramble and working key Ksf3 again - The - in reply (step 93). この方法も、パソコン通信を介して行なってもよいし、フロッピィディスクに納めて郵送するようにしてもよい。 This method also may be performed through a personal computer communication, it may be mailed by paying a floppy disk.

【0081】ユ−ザ−は、この時間補充された時間デ− [0081] User - The -, this time supplemented time de -
タファイルを再度入手し、前のデ−タファイルと置き換える如くこれをハ−ドディスク22に保存し(ステップ94)、この残量時間追加申請のフロ−を終了する。 Again to get the datafile, prior to the de - as replace the datafile this hard - to save to de disk 22 (step 94), of the remaining time additional application flow - End. 従って、この時のDdat(Ddat=Tre+Nra)において、 Therefore, in this case the Ddat (Ddat = Tre + Nra),
残量時間Treは所定量補充されているものの、秘密値N Although the remaining time Tre is predetermined replenishing amount, the secret value N
raは、秘密メモリ5に保存されている秘密値と同じままであることが理解される。 ra is understood to remain the same as secret values ​​stored in a secret memory 5.

【0082】ユ−ザ−は、このアプリケ−ションソフトDexeXを引き続いて実行したい場合、再度図5の実行フロ−のステップ41に戻らなければならない。 [0082] User - The - is, this applique - If you want to run is subsequently Deployment software DexeX, execution flow of Figure 5 again - must be returned to the step 41 of the. 然し乍ら今回は、残量時間が所定量補充されているので、ステップ41で実行が指令されると、ステップ50乃至ステップ53のフロ−が繰り返されて、アプリケ−ションソフトDexeXの実行状態が継続されることになる。 However this time, since the remaining time is a predetermined amount replenished, when executed in step 41 is commanded, flow of steps 50 to step 53 - are repeated, applique - execution state of Deployment soft DexeX is continued It becomes Rukoto.

【0083】そして、残量時間Treがゼロとなる前に、 [0083] and, before the remaining time Tre is zero,
ユ−ザ−によるソフト処理終了の指令を受けると、次のステップ57に至る。 Yu - The - Upon receiving the instruction of the software process is completed by, leading to the next step 57. このステップ57では、乱数を発生して秘密値Nra'を更新し、その後この更新した秘密値Nra'とこの時のソフトの実行時間が差し引かれた残量時間Treとを対にして新たな時間デ−タファイルDda In step 57, 'to update, then the updated secret value Nra' secret value Nra a random number is generated new time and the residual quantity execution time is subtracted soft at this time Tre pair de - datafile Dda
t(Ddat=Tre+Nra')を作成する(ステップ5 To create a t (Ddat = Tre + Nra ') (step 5
8)。 8). 尚、この時作成されたデ−タDdatは、必要に応じて一旦メインメモリ21に保存されるが、この際のデ−タは当然暗号化され、スクランブルされたデ−タとして保存される。 At this time created de - data Ddat is being temporarily stored in the main memory 21 as necessary, de when this - data is naturally encrypted, it scrambled de - stored as data.

【0084】そしてこれをハ−ドディスク22に保存されている更新前の時間デ−タファイルに代えて保存する(ステップ59)と共に、更新された秘密値Nra'を、 [0084] and this ha - of time before the update that is stored in the soil disk 22 de - to save instead of the datafile together with (step 59), the updated secret value Nra ',
秘密メモリ5内に確保されたパスワ−ドPw3によって識別可能に同メモリ内に保持されている更新前の秘密値に代えて保存する(ステップ60)。 Password reserved secret memory 5 - Save instead secret value before updating held in the same memory to be identified by de Pw3 (step 60).

【0085】この時、前記した更新前の秘密値Nraの照合が行なわれる。 [0085] In this case, before the above-mentioned update the collation of secret value Nra is done. 図11に示すフロ−チャ−トは、ステップ60内で行なわれるこの照合動作の流れを示すもので、ステップ60−1では秘密メモリ5内の秘密値Nra Flow shown in FIG. 11 - Cha - DOO, shows a flow of collation operations performed at 60 within the step, the secret value Nra in private memory 5 in step 60-1
と照合のために別途用意されたNraとが合致するかをチェックする。 And a Nra which is separately prepared for the match to check whether the match. これ等が合致する場合はステップ60−2 If this like matches step 60-2
で上記したデ−タの更新が行なわれ、合致しない場合は、ステップ60−3に至って、図示しない表示手段によって、「不正が行なわれました。」等の表示を行ない、図5のBへ戻るように構成しても良い。 In de above - the data update is performed, if not match, led to step 60-3, the display means (not shown), performs display such as ". Fraud has been made", in Figure 5 the B Back as it may be configured.

【0086】そして再度このアプリケ−ションソフトD [0086] and again this applique - Deployment software D
exe3が実行されると、上記した各ステップを経てステップ47に至り、ここで秘密値が照合される。 When exe3 is performed, leading to step 47 through steps as described above, wherein the secret value is verified. この時、 At this time,
秘密メモリから読み出した秘密値とハ−ドディスク22 The secret value read from the secret memory and leaves - de disk 22
から読み出された秘密値とは一致するはずであるが、もし、ユ−ザ−によって前記したようなデ−タの改ざんがあるとこれ等は一致しない。 Although secret value and read from should match, if, Yu - The - This etc. do not match if there is tampering with data - de as described above by. この時はステップ48に至って「不正行為が行なわれました。」等のメッセ−ジを表示し、実行を中止すべくステップ49を経由して待機状態に戻る。 At this time, "it was carried out fraud." Led to the step 48 or the like of the message - to display the di-, returns to the standby state via the step 49 in order to stop the execution.

【0087】一方、このアプリケ−ションソフトDexe [0087] On the other hand, this applique - Deployment software Dexe
Xの使用を中止し、アンインスト−ルする場合には、このソフトに設定されたパスワ−ドPw3と秘密値Nraを秘密メモリ5から消去する必要がある。 Stop using the X, uninstall - when Le is the software to set password - it is necessary to erase the de Pw3 and secret value Nra from the private memory 5. これを行なわないと同メモリ内に不要な秘密値が蓄積されることになる。 Unnecessary secret into the memory and do not do this is accumulated. またこの消去作業はアンインスト−ル時のみに、またハ−ドディスク22にパスワ−ドが存在する段階で行なわれる必要があるため、例えば、図8に示すフロ−に従って行なわれる。 The erase operation is uninstall - only during Le, Mataha - since it is necessary to be performed at the stage of de exists, for example, flow shown in FIG. 8 - - to de disk 22 passwords is performed in accordance with.

【0088】即ち、図示しない入力手段によってアンインスト−ルの指示を受けると、ステップ101に至り、 [0088] That is, by the input means, not shown uninstall - Upon receiving an instruction of Le leads to step 101,
先ずパスワ−ドと秘密値の消去が行なわれる。 First password - erasing of the soil and the secret value is performed. この際にも、安全性を高めるために前記したような秘密値Nraによる照合が行なわれる。 In this case also, the verification by the secret value Nra as described above to enhance the security is performed. このために(Pw3,Nra)が用意され、パスワ−ドPw3によって識別された秘密メモリ5内のNraと照合のために用意したNraとが一致した場合にのみこのアプリケ−ションソフトDexeXに対応するパスワ−ドPw3と秘密値Nraとが同時に消去される。 To this (Pw3, Nra) is prepared, password - only if the Nra prepared for matching the Nra in secret memory 5 identified by de Pw3 matches the applique - corresponding to Deployment soft DexeX password - de Pw3 and the secret value Nra are erased at the same time. そしてこの消去が終了した後、アプリケ−ションソフトDexeX自体のアンインスト−ルが実行される(ステップ102)。 And after the erase is complete, applique - Deployment software DexeX own uninstall - le is executed (step 102).

【0089】次に、本発明の他の実施例について説明する。 [0089] Next, another embodiment of the present invention. 図14は、秘密メモリ部51がCMP50の外にあって独立して存在する場合を示し、その他の前記した図1と同じ機能を有する構成要素については、同符号を付してその説明を省略する。 14 shows a case where secret memory unit 51 is present independently be outside of CMP50, the constituent elements having the same functions as those in FIG. 1 with other said, not be described by the same symbol to. 図1に対する図14の構成上の違いは、CMP1内部にあった秘密メモリがその外部の秘密メモリ部51に照合手段52と共に独立して設けられた点であり、全体的な機能は全く同じである。 Differences in the configuration of FIG. 14 with respect to FIG. 1 is a point that the secret memory that was in the interior CMP1 is provided independently with matching means 52 in the secret memory portion 51 of the outer, quite the overall function same is there.

【0090】一方、図1に対する図14の部分的な機能の相違点は、図1の構成では秘密メモリ5の内部デ−タがCMP1の外部に出力されないように構成されているのに対し、図14の構成では秘密メモリ部51の内部デ−タがその外部に出力されないように構成される点である。 [0090] On the other hand, differences partial functions of FIG. 14 with respect to FIG. 1, in the configuration of FIG. 1 inside de secret memory 5 - while being configured so as not to output data to an external of the CMP1, in the configuration of FIG. 14 the internal data of the secret memory portion 51 - a point which is configured so as not to be output to the outside data.

【0091】従って、図1の構成のCMP1内に設けられた秘密メモリの働きについて、図4乃至図7のフロ− [0091] Therefore, the workings of the secret memory provided inside CMP1 configuration of Figure 1, shown in FIGS. 4 to 7 furo -
チャ−トを参照して説明したが、図14構成のCMP5 Cha - has been described with reference to preparative, in FIG. 14 structure CMP5
0外に設けられた秘密メモリ部51についても、これ等のフロ−チャ−トに従って同様の作業が実行できる。 0 regard to private memory unit 51 provided outside, which like the flow - Cha - like work according bets can be performed. しかしながら、図5のステップ47、図11のステップ6 However, Step 6 in step 47, 11 in FIG. 5
1−1、及び図8のステップ101の各ステップで行なわれる照合作業は、秘密メモリ部51内部の照合手段5 1-1, and verification operations performed at each step of the step 101 in FIG. 8, reference means 5 of the internal secret memory portion 51
2で行なわれ、YES,NOの結果のみが出力されるように構成されている。 Place in 2, YES, only the results of NO is configured to be output.

【0092】次に、本発明の他の実施例について説明する。 [0092] Next, another embodiment of the present invention. 図12は、本発明の他の実施例を示す構成図で、前記した図1と同じ機能を有する構成要素については、同符号を付してその説明を省略し、図1の構成及び動作と異なる部分について重点的に説明する。 Figure 12 is a block diagram showing another embodiment of the present invention, components having the same functions as those in FIG. 1 described above, explanation thereof is omitted with denoted by the same reference numerals, the configuration and operation of FIG. 1 to focuses on different parts.

【0093】この実施例の場合、暗号化されアドレススクランブルされたデ−タDを前記した標記方法に従って標記すると、Escri(D)となる(i=1,2,3……N)。 [0093] In this embodiment, the de addressed scrambled encrypted - When title accordance title how the data D above, become Escri (D) (i = 1,2,3 ...... N). 但しこの秘密鍵Kscriは、Kscri=Ksf(+)F(Rei)ということになる。 However, this secret key Kscri is, it comes to Kscri = Ksf (+) F (Rei). 即ち、このデ−タDに用意される作業鍵Ksf In other words, the de - Work key Ksf prepared for data D
と逐次生成されるスクランブル符号F(Rei)との排他論理和符号によってデ−タDを暗号化したものとなる。 De the exclusive codes with scrambling code F (Rei) to sequentially generated when - becomes that encrypted the data D.

【0094】このようにして暗号化されたアプリケ−ションソフトを図12のCMPによって復号化する過程を説明する。 Illustrating a process of decoding by the Deployment software Figure 12 CMP - [0094] In this way, the encrypted applique. いま、このアプリケ−ションソフトの1バイト単位のデ−タ群D1,D2……DNの集合をDXと記述し、これに対応して生成されるスクランブル符号群F Now, the applique - 1 bytes Deployment soft de - a set of data groups D1, D2 ...... DN described as DX, scrambling code group F generated corresponding thereto
(Re1),F(Re2)……F(ReN)の集合をF(ReX)と記述し、この暗号化されたアプリケ−ションソフトをEsc (Re1), F (Re2) a set of ...... F (ReN) is described as F (ReX), the encrypted applique - Deployment software the Esc
r(DX)と記述する。 Referred to as r (DX). 但し、Kscr=Ksf(+)F(ReX) However, Kscr = Ksf (+) F (ReX)
である。 It is.

【0095】従って、いま最初の1バイトのデ−タD1 [0095] Therefore, now the first byte of the de - data D1
を復号する過程を記述すると、この時デ−タバス12には、暗号化されたデ−タEscr1(D1)が現れ、スクランブル符号発生器6からはF(Re1)が出力される。 When describing a process of decoding the this Tokide - the data bus 12 is encrypted de - data Escr1 (D1) appears, F (Re1) is output from the scramble code generator 6. 従ってこの時の暗号処理器7は、作業鍵Ksfとスクランブル符号F(Re1)の排他論理和符号Ksf(+)F(Re1)によってデ−タEscr1(D1)を復号することになるため、暗号化した時と同じ鍵でこれを復号化して得たデ−タD1をCPU2に出力することが出来る。 Therefore cryptographic processor 7 at this time, the session key Ksf and exclusive scrambling code F (Re1) logical sum code Ksf (+) de by F (Re1) - to become able to decode the data Escr1 (D1), encryption de obtained by decoding it in the same key as it was turned into - data D1 and can be output to CPU2. 以下同様にして、全ての暗号化されたデ−タ群を順次復号化してCPU2に送る。 In the same manner, all encrypted de - Send the CPU2 sequentially decodes the data group.

【0096】先に、図1に示す構成のCMP1による、 [0096] destination, due to the CMP1 of the configuration shown in FIG. 1,
アプリケ−ションソフトの入手、及びその実行に際してのCPU2内への読み込み過程について、図2のフロ− Applique - Deployment software availability, and the loading process into the CPU2 in during its execution, in FIG. 2 flow -
チャ−トを参照しながら説明したが、図12構成のCM Cha - has been described with reference to preparative, CM in FIG. 12 structure
P30もこのフロ−チャ−トに従って同様の作業が実行できる。 P30 also this flow - tea - the same work can be performed in accordance with the door. 但し、ステップ11の復号方法が上記した説明に基づいて実行されるところが異なる。 However, it differs from the decoding process of step 11 is executed based on the above description.

【0097】また、ユ−ザ−によって作成され、一旦メインメモリ21に保存したデ−タを、図1の構成のCM [0097] In addition, Yu - The - created by, once de was stored in the main memory 21 - the data, CM of the configuration of FIG. 1
Pによって暗号化して再度メインメモリに保存しなおす過程を図3のフロ−チャ−トを参照して説明したが、図12構成のCMP30もこのフロ−チャ−トに従って同様の作業が実行できる。 It has been described with reference to preparative, 12 configuration of CMP30 Again flow - - the process of re-stored in the encrypted main memory again flow in FIG. 3 by the P - Cha Cha - like work according bets can be performed. 但し、ステップ28の暗号化方法が異なり、排他論理和符号(Kusr(+)F(ReX))によってデ−タ群DXを逐次暗号化するものとなる。 However, different encryption method in step 28, de by exclusive code (Kusr (+) F (ReX)) - becomes for sequentially encrypting the data group DX.

【0098】更に、図1の構成のCMP1内に設けられた秘密メモリの働きについて、図4乃至図7のフロ−チャ−トを参照して説明したが、図12構成のCMP30 [0098] Furthermore, the action of the secret memory provided inside CMP1 configuration of Figure 1, shown in FIGS. 4 to 7 furo - Cha - has been described with reference to preparative, in FIG. 12 structure CMP30
内に設けられた秘密メモリ5についても、これ等のフロ−チャ−トに従って同様の作業が実行できる。 For even secret memory 5 provided within which such a flow - Cha - like work according bets can be performed. 但し、フロ−で実行されるデ−タの暗号化又は復号化の方法が図1のCMP1と異り、上記したように排他論理和符号(Kusr(+)F(ReX))を作業鍵として行なわれる。 However, flow - De is performed in - CMP1 way encryption or decryption of data is 1 and Ili, exclusive code as described above the (Kusr (+) F (ReX)) as a working key It is carried out.

【0099】次に、本発明の他の実施例について説明する。 [0099] Next, another embodiment of the present invention. 図13は、本発明の他の実施例を示す構成図で、前記した図1と同じ機能を有する構成要素については、同符号を付してその説明を省略し、図1の構成及び動作と異なる部分について重点的に説明する。 Figure 13 is a block diagram showing another embodiment of the present invention, components having the same functions as those in FIG. 1 described above, explanation thereof is omitted with denoted by the same reference numerals, the configuration and operation of FIG. 1 to focuses on different parts.

【0100】この実施例の場合、暗号化されアドレススクランブルされたデ−タDを前記した標記方法に従って標記すると、Esss(D(+)F(Re))となる。 [0100] In this embodiment, the de addressed scrambled encrypted - When title accordance title how the data D above, the Esss (D (+) F (Re)). 但しこの作業鍵Ksssは、Ksss=Essp(Kusr)ということになる。 However, this work key Ksss is, it comes to Ksss = Essp (Kusr).
即ち暗号部41は、CPU2からユ−ザ−によって設定される作業鍵Kusrを入力し、保管レジスタ10が保管しているこのCMP40に固有の秘密鍵Ksspでこれを暗号化した前記作業鍵Ksssを生成し、これを保管レジスタ8に出力する。 That encryption unit 41, CPU 2 shell liquid - The - by type a session key Kusr set, this CMP40 the storage register 10 is storing the working key Ksss encrypted it a unique secret key Kssp generated, and outputs it to the storage register 8.

【0101】暗号処理部7は、この保管レジスタ8に保管された作業鍵Ksssでアドレススクランブルされたデ−タ(D(+)F(Re))を暗号化し、この暗号化したデ− [0102] encryption processing section 7, an address scrambled de with the session key Ksss that is stored in the storage register 8 - the data (D (+) F (Re)) and encrypted, the encrypted de -
タEsss(D(+)F(Re))をデ−タバス12を介してメインメモリ21等の外部メモリに出力する。 Data Esss the (D (+) F (Re)) de - via the data bus 12 and outputs to the external memory, such as main memory 21.

【0102】このようにして暗号化されたデ−タを図1 [0102] In this way, the encrypted de - figure and one other
3のCMPによって復号化する過程を説明する。 A process of decoding the third CMP will be described. いま、 Now,
デ−タの1バイト単位のデ−タ群D1,D2……DNの集合をDXと記述し、これに対応して生成されるスクランブル符号群F(Re1),F(Re2)……F(ReN)の集合をF De - de of 1 byte of data - a set of data groups D1, D2 ...... DN described as DX, scrambling code group F generated corresponding to (Re1), F (Re2) ...... F ( F a set of ReN)
(ReX)と記述し、このスクランブル暗号化されたデ− (ReX) and described, this scramble encrypted de -
タをEsss(DX(+)F(ReX))と記述する。 Referred to as Esss the data (DX (+) F (ReX)). 但し、Kss However, Kss
s=Essp(Kusr)である。 A s = Essp (Kusr).

【0103】従って、いま最初の1バイトのデ−タD1 [0103] Therefore, now the first byte of the de - data D1
を復号する過程を記述すると、この時デ−タバス12には、暗号化されたデ−タEsss(D1(+)F(Re1))が現れ、スクランブル符号発生器6からはF(Re1)が出力される。 When describing a process of decoding the this Tokide - the data bus 12, the encrypted de - appeared data Esss (D1 (+) F (Re1)) is, from the scrambling code generator 6 F (Re1) is is output. 従って暗号処理器7は、この時作業鍵Ksssでデ−タEsss(D1(+)F(Re1))を復号化した(D1(+)F(R Therefore cryptographic processor 7, this time working key Ksss Dede - decoding the data Esss (D1 (+) F (Re1)) (D1 (+) F (R
e1))を加算器11に出力し、加算器11はF(Re1)でこれをデスクランブルして得たデ−タD1をCPU2に出力することが出来る。 e1)) to the adder 11, the adder 11 which de obtained by descrambling with F (Re1) - can output data D1 to the CPU 2. 以下同様にして、全ての暗号化されたデ−タ群を順次復号化してCPU2に送る。 In the same manner, all encrypted de - Send the CPU2 sequentially decodes the data group.

【0104】また、ユ−ザ−によって作成され、一旦メインメモリ21に保存したデ−タを、図1の構成のCM [0104] In addition, Yu - The - created by, once de was stored in the main memory 21 - the data, CM of the configuration of FIG. 1
Pによって暗号化して再度メインメモリに保存しなおす過程を図3のフロ−チャ−トを参照して説明したが、図13構成のCMPもこのフロ−チャ−トに従って同様の作業が実行できる。 It has been described with reference to preparative, also CMP of FIG. 13 structure the flow - - the process of re-stored in the encrypted main memory again flow in FIG. 3 by the P - Cha Cha - like work according bets can be performed. 但し、ステップ23では作業鍵Kss However, it works key Kss In step 23
s=Essp(Kusr)を保管レジスタ8に保管する必要があり、このため前記した暗号部41よる作業鍵Kusrの暗号化が行なわれる。 s = ESSP must store (Kusr) the storage register 8, the encryption of the session key Kusr this order by encrypting unit 41 described above is performed.

【0105】従って、この図13に構成されたCMP4 [0105] Thus, configured in FIG. 13 CMP4
0によって暗号化されたデ−タは、この暗号化したCM Encrypted de by 0 - data was encrypted CM
Pのみによって復号化されることが理解される。 It is understood to be decoded by the P alone. 更に、 In addition,
作業鍵Ksssが二重鍵の構成を有するため、暗号化するデ−タ群ごとに作業鍵を変えることができるために鍵自体が解読されにくくなり、デ−タの氾濫を防ぐと共にその機密性を高めることが出来る。 Since the session key Ksss has the configuration of a double key, de encrypts - becomes key itself is hardly decrypted in order to be able to change the working key for each data group, de - its confidentiality prevents the flooding of the motor it can be increased.

【0106】次に、本発明の他の実施例について説明する。 [0106] Next, another embodiment of the present invention. 図15は、本発明の他の実施例を示す構成図で、前記した図1と同じ機能を有する構成要素については、同符号を付してその説明を省略し、図1の構成及び動作と異なる部分について重点的に説明する。 Figure 15 is a block diagram showing another embodiment of the present invention, components having the same functions as those in FIG. 1 described above, explanation thereof is omitted with denoted by the same reference numerals, the configuration and operation of FIG. 1 to focuses on different parts.

【0107】この実施例の場合、作業鍵の保管レジスタ8を複数P個有する保管レジスタ部61を設け、これ等の各保管レジスタに異なる作業鍵Ksfi(i=1,2,……P)をそれぞれ保管可能とする。 [0107] In this embodiment, the work storage registers 8 of the key is provided with a plurality P pieces having storage register unit 61, the session key Ksfi (i = 1,2, ...... P) different for each storage register of this such a respectively, and it can be stored. この保管レジスタ部61は、 The storage register 61,
復号部9から出力される作業鍵を保管するレジスタの選択、及び暗号処理部7に出力する作業鍵の選択を、制御ユニット3から出力される鍵選択信号s5によって実行できるように構成されている。 Selection of storing register the work key that is outputted from the decoding unit 9, and the selection of the working key to be output to the encryption processing unit 7 is configured to be executed by the key selection signal s5 outputted from the control unit 3 .

【0108】また、オフセットレジスタ部62には、前記したデ−タ群の先頭アドレスを保管するための複数P [0108] Further, in the offset register 62, the above-mentioned de - multiple P for storing the start address of group data
個のオフセットレジスタ4が、異なる先頭アドレスToi Number of offset register 4 is different from the first address Toi
(i=1,2,……P)をそれぞれ保管可能に設けられ、制御ユニット3から出力される先頭アドレス選択信号s6によって、先頭アドレスToiの保存、及び読み出しの対象となるレジスタが選択可能に構成されている。 (I = 1,2, ...... P) respectively storable in provided a by start address selection signal s6 outputted from the control unit 3, the start address stored in Toi, and subjected to read registers can be selected It is configured.

【0109】次にこのような構成のCMP60の動作について説明する。 [0109] Next, a description will be given of the operation of the CMP60 of such a configuration. 今、前記した図2の実行準備フロ−が実行され、そのステップ3の段階でメインメモリ21にロ−ドされたソフトが図17に示すようにM個のプログラムから構成され、それぞれが異なる作業鍵Ksfj(j= Now, the above-mentioned execution of the FIG. 2 Preparation flow - is performed, that step b into the main memory 21 in three stages - software is de is composed of M program as shown in FIG. 17, the operation of each different key Ksfj (j =
1,2,……M、M≦P)で暗号化されているものとする。 1,2, ...... M, is assumed to be encrypted with M ≦ P).

【0110】また各プログラムは、前記したようにそれぞれ所定単位のデ−タの集合であるデ−タ群で構成され、各デ−タ群の先頭アドレスをToj(j=1,2,……M) [0110] Also, each program, data of each as the predetermined units - De is a set of data - consists of data groups, each de - Toj the start address of the group data (j = 1, 2, ...... M)
と記す。 Referred to as. この場合の各作業鍵Ksfjは、各プログラムを管理するソフト供給元が前記したパ−ミットコ−ドとして供給するため、図2の実行準備フロ−のステップ4 Each session key Ksfj case, Pas soft suppliers to manage each program described above - Mittoko - for supplying a de preparation run in Figure 2 flow - Step 4
からステップ9までのステップが図1のCMP1と異なる。 Step from to step 9 differs from the CMP1 in FIG.

【0111】即ち、ステップ4からステップ6までで、 [0111] That is, in steps 4 through 6,
パ−ミットコ−ドの存在の確認、入手、保存の各行程を実施するが、今このパ−ミットコ−ドがM個必要となるため、この各行程もM回繰り返すように構成される。 Pa - Mittoko - confirmation of the presence of de, availability, and to implement the process of storage, this path now - Mittoko - for de is M pieces required, configured to repeat the respective stroke also M times. 更に、ステップ7からステップ9までの行程で、パ−ミットコ−ドを読み込み、それを復号し、生成した作業鍵をレジスタに保存するが、ここでもこの各行程をM回繰り返すように構成される。 Furthermore, in process from Step 7 to Step 9, Pa - Mittoko - Reads de, decodes it, but stores the generated session key to the register, and again the respective stroke to repeat M times .

【0112】この時逐次生成される作業鍵Ksfjが、C [0112] work key Ksfj this time is sequentially generated, C
PUから出力される指令信号s1に基づいて制御ユニット3から出力される鍵選択信号s5によって選択された1からMまでの各保管レジスタ8にそれぞれ保管される。 To each storage register 8 from 1 selected by the key selection signal s5 outputted from the control unit 3 in accordance with a command signal s1 outputted from the PU to M stored.

【0113】更にステップ11で、必要に応じてメインメモリ21に保管された各プログラムがCPU2に読み込まれて実行される際には、それぞれのプログラムの作業鍵Ksfjを保管するレジスタが選択され読み出され、 [0113] Further in step 11, when each program stored in the main memory 21 as necessary is loaded into and executed by CPU2 is read out is selected to store register the work key Ksfj of the respective programs It is,
暗号処理器7に供給される。 It is supplied to the encryption processor 7. これと共に、読み出されるプログラムに対応する先頭アドレスがCPUから出力される指令信号s1に基づいて制御ユニット3から出力されるアドレス選択信号s6によって選択される。 At the same time, it is selected by the address selection signal s6 to the head address is output from the control unit 3 in accordance with a command signal s1 outputted from the CPU corresponding to the program being read. そして選択された先頭アドレスTojがスクランブル符号発生器6に出力され、前記したアドレススクランブルが各プログラム毎に実行される。 And the selected start address Toj is output to the scramble code generator 6, wherein the address scramble is performed for each program. 尚、iとjとが対応して管理されることにより、各プログラムとこれを実行する際に読み出される各作業鍵、及び各先頭アドレスとの対応関係が維持される。 Incidentally, by where the i and j are managed in correspondence, each work key is read in performing this with the program, and the corresponding relationship between each head address is maintained.

【0114】次に、本発明の他の実施例について説明する。 [0114] Next, another embodiment of the present invention. 図16は、本発明の他の実施例を示す構成図で、前記した図1と同じ機能を有する構成要素については、同符号を付してその説明を省略し、図1の構成及び動作と異なる部分について重点的に説明する。 Figure 16 is a block diagram showing another embodiment of the present invention, components having the same functions as those in FIG. 1 described above, explanation thereof is omitted with denoted by the same reference numerals, the configuration and operation of FIG. 1 to focuses on different parts.

【0115】この実施例の場合、復号部72と保管レジスタ73とからなる多重鍵生成部71が追加構成される。 [0115] In this embodiment, additional constituted multiplex key generation unit 71 composed of a storage register 73 and decoder 72. そして保管レジスタ73は、このCMP70に固有の秘密鍵Ksmppを保管し、復号部72は前記した公開鍵Kpmpに対応する秘密鍵Ksmpを、秘密鍵Ksmppに対応する公開鍵Kpmppで暗号化したEpmpp(Ksmp)を得て秘密鍵Ksmppで復号化し、生成した秘密鍵Ksmpを保管レジスタ10に出力する。 The storage register 73 stores the unique secret key Ksmpp this CMP70, Epmpp decoding unit 72 to the private key Ksmp corresponding to the public key Kpmp described above, encrypted with the public key Kpmpp corresponding to the private key Ksmpp ( Ksmp) the obtained decrypted with the private key Ksmpp, and outputs the generated secret key Ksmp in storage register 10.

【0116】このように構成することにより、CMP7 [0116] With this configuration, CMP7
0にとって、一対の公開鍵Kpmpと秘密鍵Ksmpとがすでに登録された固有のものではなく、例えばCMP70の供給元から別途これ等の鍵を入手して設定することが出来るなど、種々の態様を可能とするものとなる。 Taking 0, not specific to a pair of public key Kpmp and private key Ksmp has already been registered, for example, from CMP70 supplier can separately set to get the key of this such, various aspects It becomes a thing to be possible.

【0117】 [0117]

【発明の効果】本発明によれば、ソフト供給元は、供給するソフトを所定のCMPでのみ利用させることが可能となるだけでなく、同一のアプリケ−ションソフトは同じ鍵で暗号化されるため、暗号化したアプリケ−ションソフトをCD−ROM等の複製のみ可能な媒体によって市場に出すことができる。 According to the present invention, soft supplier, not only it is possible to use a soft supplies only a predetermined CMP, a same applique - Deployment software is encrypted with the same key Therefore, encrypted applique - can be marketed by a Deployment software capable only replication such as a CD-ROM medium. 一方、図13の構成の本発明によれば、CMP固有の秘密鍵で暗号化された作業鍵によってデ−タ群を暗号化/復号化するため、同じCMP On the other hand, according to the present invention of the structure of FIG. 13, the de by encrypted work key CMP unique secret key - to encrypt / decrypt group data, the same CMP
でしか解読出来ないデ−タとなり、デ−タの漏洩による不利益を防ぐことが出来る。 De can not be deciphered only - data and become, de - it is possible to prevent a disadvantage by other leakage.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】本発明の一実施例を示す構成図 Constitutional view showing one embodiment of the present invention; FIG

【図2】本発明の動作説明に供するフロ−チャ−ト [Figure 2] explaining the operation of the present invention flow - tea - door

【図3】本発明の動作説明に供するフロ−チャ−ト [Figure 3] explaining the operation of the present invention flow - tea - door

【図4】本発明の動作説明に供するフロ−チャ−ト [Figure 4] explaining the operation of the present invention flow - tea - door

【図5】本発明の動作説明に供するフロ−チャ−ト FIG. 5 illustrating the operation of the present invention flow - tea - door

【図6】本発明の動作説明に供するフロ−チャ−ト [6] explaining the operation of the present invention flow - tea - door

【図7】本発明の動作説明に供するフロ−チャ−ト [7] explaining the operation of the present invention flow - tea - door

【図8】本発明の動作説明に供するフロ−チャ−ト [8] explaining the operation of the present invention flow - tea - door

【図9】本発明の動作説明に供する秘密メモリの説明図 FIG. 9 is an explanatory diagram of a secret memory of assistance in explaining the operation of the present invention

【図10】本発明の動作説明に供するアプリケ−ションソフトの構成図 [10] illustrating the operation of the present invention applique - Deployment configuration diagram of a soft

【図11】本発明の動作説明に供するフロ−チャ−ト [11] explaining the operation of the present invention flow - tea - door

【図12】本発明の他の一実施例を示す構成図 Diagram showing another embodiment of the present invention; FIG

【図13】本発明の他の一実施例を示す構成図 Diagram showing another embodiment of FIG. 13 the present invention

【図14】本発明の他の一実施例を示す構成図 Diagram showing another embodiment of FIG. 14 the present invention

【図15】本発明の他の一実施例を示す構成図 Diagram showing another embodiment of the present invention; FIG

【図16】本発明の他の一実施例を示す構成図 Diagram showing another embodiment of FIG. 16 the present invention

【図17】本発明の動作説明に供するメインメモリの説明図 Explanatory view of the main memory of assistance in explaining the operation of the FIG. 17 of the present invention

【符号の説明】 DESCRIPTION OF SYMBOLS

1 CMP 2 CPU 3 制御ユニット 4 オフセットレジスタ 5 秘密メモリ 6 スクランブル符号発生器 7 暗号処理器 8 保管レジスタ 9 復号部 10 保管レジスタ 11 加算器 21 メインメモリ 22 ハ−ドディスク 23 CD−ROM 24 フロッピディスク 25 モデム 26 キャッシュメモリ 30 CMP 40 CMP 41 暗号部 50 CMP 51 秘密メモリ部 52 照合手段 60 CMP 61 保管レジスタ部 70 CMP 71 多重鍵生成部 1 CMP 2 CPU 3 control unit 4 offset register 5 secret memory 6 scrambling code generator 7 cryptographic processor 8 storage register 9 decoder 10 storage registers 11 adder 21 main memory 22 ha - de disc 23 CD-ROM 24 a floppy disk 25 modem 26 cache memory 30 CMP 40 CMP 41 encryption unit 50 CMP 51 secret memory portion 52 matching means 60 CMP 61 storage register section 70 CMP 71 multiplex key generating unit

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl. 6識別記号 FI H04L 9/14 H04L 9/00 641 9/32 673A ────────────────────────────────────────────────── ─── front page continued (51) Int.Cl. 6 identifications FI H04L 9/14 H04L 9/00 641 9/32 673A

Claims (6)

    【特許請求の範囲】 [The claims]
  1. 【請求項1】暗号化されたソフトウエアを復号化する第1の復号手段と、 前記第1の復号手段による復号化を行うための第1の鍵を保存する第1の記憶手段と、 暗号化された前記第1の鍵を復号化して前記第1の記憶手段に保存する第2の復号手段と、 前記第2の復号手段による復号化を行うための第2の鍵を保存する第2の記憶手段とを有することを特徴とする1チップで構成された多重鍵方式の暗号処理機能を有するマイクロプロセッサ。 And 1. A first decoding means for decoding encrypted software, first storage means for storing the first key in order to decrypt by the first decoding means, encryption second to store second key for performing a second decoding means for saving in the first storage means and decoding the first key that is of the decoding by the second decoding means microprocessor having a cipher processing function of the multi-key scheme is composed of one chip, characterized in that it comprises a storage means.
  2. 【請求項2】前記第1の鍵と前記第1の記憶手段とをそれぞれ複数としたことを特徴とする請求項1に記載の多重鍵方式の暗号処理機能を有するマイクロプロセッサ。 2. A microprocessor having a cipher processing function of the multi-key system according to claim 1, characterized in that the said first key said first storage means and each of the plurality.
  3. 【請求項3】前記第2の鍵を復号化又は暗号化により生成することを特徴とする請求項1に記載の多重鍵方式の暗号処理機能を有するマイクロプロセッサ。 3. A microprocessor having a cipher processing function of the multi-key system according to claim 1, wherein the generating by the decoding or encrypting the second key.
  4. 【請求項4】ソフトウエアに用意された第3の鍵によって暗号化された暗号化ソフトウエアを復号化する1チップで構成された多重鍵方式の暗号処理機能を有するマイクロプロセッサであって、 前記マイクロプロセッサ固有の第4の鍵を該マイクロプロセッサ外に読み出し不可に保存する第3の記憶手段と、 前記第4の鍵に対応する第5の鍵で前記第3の鍵を暗号化した暗号コ−ドを前記第4の鍵で復号化して前記第3 4. A microprocessor having a cipher processing function of the third multi-key scheme is composed of one chip to decrypt the encrypted encryption software by the key that is provided in software, the third storage means and, cryptographic Coprocessor obtained by encrypting the fifth said third key in the key that corresponds to the fourth key to save the fourth key microprocessor specific to unreadable outside the microprocessor - said de by decoding by the fourth key third
    の鍵を生成する第3の復号手段と、 前記第3の鍵を保持する第4の記憶手段と、 前記第3の鍵によって前記暗号化ソフトウエアを復号化する第4の復号手段とを有することを特徴とする多重鍵方式の暗号処理機能を有するマイクロプロセッサ。 It has the third decoding means for generating a key, and a fourth storage means for holding the third key, and a fourth decoding means for decoding the encrypted software by the third key microprocessor having a cipher processing function of the multi-key system, characterized in that.
  5. 【請求項5】ソフトウエアを暗号化/復号化する1チップで構成された多重鍵方式の暗号処理機能を有するマイクロプロセッサであって、 第6の鍵を暗号化した第7の鍵を生成する第1の暗号化手段と、 前記第7の鍵を保存する第5の記憶手段と、 前記第1の暗号化手段による暗号化を行うための第8の鍵を保存する第6の記憶手段と、 前記第7の鍵によって前記ソフトウエアを暗号化/復号化するための暗号化/復号化手段とを有することを特徴とする多重鍵方式の暗号処理機能を有するマイクロプロセッサ。 5. A microprocessor having a cipher processing function of the multi-key scheme is composed of one chip to encrypt / decrypt software, the sixth key generating a seventh key encrypted a first encryption unit, and the fifth storage means for storing the seventh key, and sixth memory means for storing the eighth key for performing encryption by the first encryption means a microprocessor having a cipher processing function of the multi-key system, characterized in that it comprises an encryption / decryption means for encrypting / decrypting said software by said seventh key.
  6. 【請求項6】ソフトウエアに用意された作業鍵によって暗号化された暗号化ソフトウエアを復号化する1チップで構成された多重鍵方式の暗号処理機能を有するマイクロプロセッサであって、 前記マイクロプロセッサ固有の秘密鍵を該マイクロプロセッサ外に読み出し不可に保存する第7の記憶手段と、 前記秘密鍵に対応する公開鍵で前記作業鍵を暗号化した暗号コ−ドを前記秘密鍵で復号化して前記作業鍵を生成する第5の復号手段と、 前記作業鍵を保持する第8の記憶手段と、 前記作業鍵によって前記暗号化ソフトウエアを復号化する第6の復号手段とを有することを特徴とする多重鍵方式の暗号処理機能を有するマイクロプロセッサ。 6. A microprocessor having a cipher processing function of the multi-key scheme is composed of one chip to decrypt the encrypted encryption software by the work key that is provided in software, the microprocessor a seventh memory unit for storing the unreadable unique secret key outside the microprocessor, the encryption co by encrypting the session key with the public key corresponding to the private key - the de and decrypted by the secret key characterized in that it comprises a fifth decoding means for generating the session key, and eighth storage means for holding the work key, and a sixth decoding means for decoding the encrypted software by said working key microprocessor having a cipher processing function of the multi-key scheme to.
JP10103958A 1998-03-31 1998-03-31 Microprocessor having cipher processing function of multiple key system Pending JPH11282667A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10103958A JPH11282667A (en) 1998-03-31 1998-03-31 Microprocessor having cipher processing function of multiple key system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10103958A JPH11282667A (en) 1998-03-31 1998-03-31 Microprocessor having cipher processing function of multiple key system

Publications (1)

Publication Number Publication Date
JPH11282667A true JPH11282667A (en) 1999-10-15

Family

ID=14367916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10103958A Pending JPH11282667A (en) 1998-03-31 1998-03-31 Microprocessor having cipher processing function of multiple key system

Country Status (1)

Country Link
JP (1) JPH11282667A (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002065287A1 (en) * 2001-02-16 2002-08-22 Sony Corporation Data processing method and its apparatus
JP2005303370A (en) * 2004-04-06 2005-10-27 Sony Corp Semiconductor chip, start program, semiconductor chip program, storage medium, terminal, and information processing method
US6983374B2 (en) 2000-02-14 2006-01-03 Kabushiki Kaisha Toshiba Tamper resistant microprocessor
JP2006080636A (en) * 2004-09-07 2006-03-23 Fujitsu Ltd Information processing apparatus
JP2007272923A (en) * 2007-06-04 2007-10-18 Matsushita Electric Ind Co Ltd Server
JP2008210225A (en) * 2007-02-27 2008-09-11 Fujitsu Ltd Secure processor system, secure processor, and control method for it
US7539312B2 (en) 2002-11-15 2009-05-26 Panasonic Corporation Program update method and server
JP2009169986A (en) * 2009-05-07 2009-07-30 Panasonic Corp Content reproducing method and information processing apparatus
US7603703B2 (en) 2001-04-12 2009-10-13 International Business Machines Corporation Method and system for controlled distribution of application code and content data within a computer network
JP2009301571A (en) * 2009-08-21 2009-12-24 Panasonic Corp Semiconductor device and boot method therefor
US7657760B2 (en) 2000-12-28 2010-02-02 Kabushiki Kaisha Toshiba Method for sharing encrypted data region among processes in tamper resistant processor
JP2010044792A (en) * 2009-11-18 2010-02-25 Panasonic Corp Secure device, integrated circuit, and encryption method
US7685435B2 (en) 2002-07-24 2010-03-23 Panasonic Corporation Program development method, program development supporting system, and program installation method
US7865733B2 (en) 2004-06-30 2011-01-04 Fujitsu Semiconductor Limited Secure processor and a program for a secure processor
US7971239B2 (en) 2005-07-07 2011-06-28 Sony Computer Entertainment Inc. Device control apparatus

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7353404B2 (en) 2000-02-14 2008-04-01 Kabushiki Kaisha Toshiba Tamper resistant microprocessor
US6983374B2 (en) 2000-02-14 2006-01-03 Kabushiki Kaisha Toshiba Tamper resistant microprocessor
US7270193B2 (en) 2000-02-14 2007-09-18 Kabushiki Kaisha Toshiba Method and system for distributing programs using tamper resistant processor
US7657760B2 (en) 2000-12-28 2010-02-02 Kabushiki Kaisha Toshiba Method for sharing encrypted data region among processes in tamper resistant processor
US8141057B2 (en) 2001-02-16 2012-03-20 Sony Corporation Data processing apparatus and associated method
US7240345B2 (en) 2001-02-16 2007-07-03 Sony Corporation Data processing apparatus and associated method
WO2002065287A1 (en) * 2001-02-16 2002-08-22 Sony Corporation Data processing method and its apparatus
SG140467A1 (en) * 2001-02-16 2008-03-28 Sony Corp Data processing method and its apparatus
US7650491B2 (en) 2001-04-12 2010-01-19 International Business Machines Corporation Method and system for controlled distribution of application code and content data within a computer network
US7603703B2 (en) 2001-04-12 2009-10-13 International Business Machines Corporation Method and system for controlled distribution of application code and content data within a computer network
US7685435B2 (en) 2002-07-24 2010-03-23 Panasonic Corporation Program development method, program development supporting system, and program installation method
US8190912B2 (en) 2002-07-24 2012-05-29 Panasonic Corporation Program development method, program development supporting system, and program installation method
US7539312B2 (en) 2002-11-15 2009-05-26 Panasonic Corporation Program update method and server
US7546468B2 (en) 2002-11-15 2009-06-09 Panasonic Corporation Program update method and server
US7849331B2 (en) 2002-11-15 2010-12-07 Panasonic Corporation Program update method and server
JP2005303370A (en) * 2004-04-06 2005-10-27 Sony Corp Semiconductor chip, start program, semiconductor chip program, storage medium, terminal, and information processing method
US8886959B2 (en) 2004-06-30 2014-11-11 Fujitsu Semiconductor Limited Secure processor and a program for a secure processor
US9141829B2 (en) 2004-06-30 2015-09-22 Socionext Inc. Secure processor and a program for a secure processor
US9536110B2 (en) 2004-06-30 2017-01-03 Socionext Inc. Secure processor and a program for a secure processor
US9652635B2 (en) 2004-06-30 2017-05-16 Socionext Inc. Secure processor and a program for a secure processor
US9672384B2 (en) 2004-06-30 2017-06-06 Socionext Inc. Secure processor and a program for a secure processor
US7865733B2 (en) 2004-06-30 2011-01-04 Fujitsu Semiconductor Limited Secure processor and a program for a secure processor
US10095890B2 (en) 2004-06-30 2018-10-09 Socionext Inc. Secure processor and a program for a secure processor
JP2006080636A (en) * 2004-09-07 2006-03-23 Fujitsu Ltd Information processing apparatus
JP4562464B2 (en) * 2004-09-07 2010-10-13 富士通株式会社 The information processing apparatus
US7971239B2 (en) 2005-07-07 2011-06-28 Sony Computer Entertainment Inc. Device control apparatus
JP2008210225A (en) * 2007-02-27 2008-09-11 Fujitsu Ltd Secure processor system, secure processor, and control method for it
JP2007272923A (en) * 2007-06-04 2007-10-18 Matsushita Electric Ind Co Ltd Server
JP2009169986A (en) * 2009-05-07 2009-07-30 Panasonic Corp Content reproducing method and information processing apparatus
JP4580024B2 (en) * 2009-05-07 2010-11-10 パナソニック株式会社 Content playback method
JP2009301571A (en) * 2009-08-21 2009-12-24 Panasonic Corp Semiconductor device and boot method therefor
JP4676547B2 (en) * 2009-08-21 2011-04-27 パナソニック株式会社 Semiconductor device and the boot method
JP4580030B2 (en) * 2009-11-18 2010-11-10 パナソニック株式会社 Secure device
JP2010044792A (en) * 2009-11-18 2010-02-25 Panasonic Corp Secure device, integrated circuit, and encryption method

Similar Documents

Publication Publication Date Title
US4916738A (en) Remote access terminal security
US4888798A (en) Modular software security
KR100484421B1 (en) Copyright protection system, recorder and decoder
EP0644474B1 (en) A method for utilising medium nonuniformities to minimize unauthorized duplication of digital information
JP4206529B2 (en) Content management method and content storage system
KR100236697B1 (en) Software copying system
US5586186A (en) Method and system for controlling unauthorized access to information distributed to users
US7739495B2 (en) Data transmitting system and method, drive unit, access method, data recording medium, recording medium producing apparatus and method
US5982899A (en) Method for verifying the configuration the computer system
EP0817485B1 (en) Conditional access system and smartcard allowing such access
US4633388A (en) On-chip microprocessor instruction decoder having hardware for selectively bypassing on-chip circuitry used to decipher encrypted instruction codes
US6859535B1 (en) Digital content protection system
US5499298A (en) Controlled dissemination of digital information
CN1132373C (en) Method and appts. for dubbing control
JP4668619B2 (en) Device keys
EP0002390A1 (en) Method for cryptographic file security in multiple domain data processing systems
JP5532291B2 (en) Method and apparatus for processing sensitive content securely in the processor of the virtual machine
US5625690A (en) Software pay per use system
EP0002388A1 (en) Data processing terminal
KR100692425B1 (en) Method and device for encryption/decryption of data on mass storage device
JP3627384B2 (en) An information processing method with software protection function information processing apparatus and software protection
EP1422591B1 (en) Program update method and server
KR100445406B1 (en) Apparatus for encrypting the data and method therefor
US7373506B2 (en) Data authentication system
US9240883B2 (en) Multi-key cryptography for encrypting file system acceleration