JPH09218851A - Computer network system - Google Patents

Computer network system

Info

Publication number
JPH09218851A
JPH09218851A JP8022782A JP2278296A JPH09218851A JP H09218851 A JPH09218851 A JP H09218851A JP 8022782 A JP8022782 A JP 8022782A JP 2278296 A JP2278296 A JP 2278296A JP H09218851 A JPH09218851 A JP H09218851A
Authority
JP
Japan
Prior art keywords
data
computer
update
key
information
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
JP8022782A
Other languages
Japanese (ja)
Inventor
Genji Nishioka
玄次 西岡
Hisashi Umeki
久志 梅木
Yutaka Yoshiura
裕 吉浦
Tatsutoshi Sakuraba
健年 櫻庭
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP8022782A priority Critical patent/JPH09218851A/en
Publication of JPH09218851A publication Critical patent/JPH09218851A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PROBLEM TO BE SOLVED: To keep the soundness of a network system by automatically detecting and correcting the loss of data due to the unauthorized alteration and accidents of the data and automatically performing the load distribution of computer processings under a distribution environment and the separation of a computer with a computing function fault. SOLUTION: The computers 100 connected by a communication network and provided with the same data in data bases 200 are respectively divided into a plurality of areas and installed and the respective computers 100 are in charge of the same processing, based on the data inside the data bases 200 in the respective areas. Further, the respective computers 100 compare the data inside the data bases 200 of the other computers 100 with the data provided inside their own data bases 200 through a communication channel 300, and when they are different, issue an alarm and change them to the appropriate data, based on the conditions of the data inside the data bases 200 of all the computers 100.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、計算機ネットワー
クシステムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computer network system.

【0002】[0002]

【従来の技術】高度情報化社会では情報の持つ価値が高
まっている。今後はインターネットを利用して高価値情
報を有償にて提供するサービスが増えるものと予想され
る。このとき、情報提供を行う計算機の有償データを不
正に改竄することにより、不正者が大きな利益を得た
り、また他人に大きな損害を与えるようなことが可能と
なる。例えば、電子決済システムが公開鍵サーバの鍵情
報をもとに認証処理を行っていた場合、不正者は公開鍵
サーバに不正アクセスし、不正者の都合の良いように鍵
情報を書き換えれば、なりすましの不正を行うことが可
能となり、多額の利益を得ることができる。また、管理
者の過失や不慮の事故により計算機の持つ高価値データ
を消去してしまい、大きな損害を被ることも考えられ
る。このようなことから、高価値データを扱う計算機シ
ステムに対して高価値データを保護するセキュリティ機
能を高める必要がある。
2. Description of the Related Art The value of information is increasing in an advanced information society. It is expected that the number of services that provide high-value information for a fee using the Internet will increase in the future. At this time, by fraudulently tampering with the paid data of the computer that provides the information, it is possible for an illicit person to make a great profit or to cause a great damage to another person. For example, if the electronic payment system performs the authentication process based on the key information of the public key server, an unauthorized person can make unauthorized access to the public key server and rewrite the key information for the convenience of the unauthorized person. It is possible to cheat, and it is possible to obtain a large amount of profit. Moreover, it is possible that the high-value data of the computer will be erased due to the administrator's negligence or an accident, resulting in significant damage. For this reason, it is necessary to enhance the security function that protects high-value data for a computer system that handles high-value data.

【0003】[0003]

【発明が解決しようとする課題】そこで、本発明の主目
的は、(1)データの不正改竄や事故によるデータの消
失を自動的に検出・修正、(2)分散環境下において、
計算機への過剰負荷や計算機の事故などによる機能停止
などのトラブルに対して、計算機間の相互干渉によりシ
ステムを健全な状態に保持するの特徴を有する計算機ネ
ットワークシステムを提供するものである。
Therefore, the main objects of the present invention are (1) automatic detection / correction of data tampering or data loss due to an accident, (2) in a distributed environment,
The present invention provides a computer network system having a feature of keeping a system in a healthy state by mutual interference between computers against troubles such as a function stop due to an excessive load on the computer or an accident of the computer.

【0004】[0004]

【課題を解決するための手段】生体の免疫システムでは
「自己・非自己の区別」が厳密に行われる。すなわち、
自己を表すコードがMHC分子であり、自己と同じMH
C分子を持たない異物を攻撃し、自己を保持する。本発
明では、このような生体の免疫システムを模倣すること
により、上記のような本発明の目的を実現する。
[Means for Solving the Problem] In the immune system of the living body, "discrimination between self and nonself" is strictly performed. That is,
The code that represents oneself is an MHC molecule, and the same MH as oneself
Attacks foreign substances that do not have C molecules and holds itself. The present invention realizes the above-described object of the present invention by mimicking such an immune system of a living body.

【0005】本発明の基本的考え方は、通信回線により
接続された同一のデータを持つ計算機をそれぞれ複数の
エリアに分けて設置し、各計算機はそれぞれのエリアに
おいて同一のデータをもとにして同一の処理を担当し、
さらに各計算機は通信回線を介して他計算機のデータと
自身の持つデータとを比較し、もし異なっていれば警告
を発し、全計算機のデータの状況をもとに適正なデータ
に変更する。
The basic idea of the present invention is that computers having the same data, which are connected by a communication line, are installed separately in a plurality of areas, and the computers are the same in each area based on the same data. Is in charge of processing
Furthermore, each computer compares the data of other computers with the data of itself via the communication line, and if they are different, issues a warning and changes to appropriate data based on the status of the data of all computers.

【0006】上記目的(1)を解決するための具体的実
現方法の1つとして、各計算機には1からnまでの番号
が付けられており、任意の相異なる計算機iと計算機j
(1≦i,j≦n)の間では予め共通鍵K(i,j)を
共有している。計算機iは計算機j=i+1(mod
n)にアクセスし、計算機jのメモリにある該データP
(j)のハッシュ値h(P(j))を計算し、さらに計
算機iのメモリにあるデータP(i)のハッシュ値h
(P(i))を計算し、h(P(i))=h(P
(j))を確かめることによりデータの比較検査を行う
ステップをi=1からnまで繰り返す処理を一定時間毎
に行う。
As one of the concrete implementation methods for solving the above-mentioned object (1), each computer is numbered from 1 to n, and any different computer i and computer j can be used.
The common key K (i, j) is shared in advance between (1 ≦ i, j ≦ n). Computer i is computer j = i + 1 (mod
n) to access the data P in the memory of computer j
The hash value h (P (j)) of (j) is calculated, and the hash value h of the data P (i) in the memory of the computer i is calculated.
(P (i)) is calculated and h (P (i)) = h (P
The process of performing the comparative inspection of data by confirming (j)) is repeated from i = 1 to n at regular intervals.

【0007】計算機i(1≦i≦n)のメモリにあるデ
ータP(i)のハッシュ値h(P(i))と計算機j=
i+1(mod n)のメモリにあるデータP(j)の
ハッシュ値h(P(j))が一致しなかった場合、計算
機iは全ての計算機に対してデータ変更のための情報を
送信する。
The hash value h (P (i)) of the data P (i) in the memory of the computer i (1≤i≤n) and the computer j =
When the hash value h (P (j)) of the data P (j) in the memory i + 1 (mod n) does not match, the computer i sends the information for changing the data to all the computers.

【0008】データ変更のための情報を受け取った各計
算機rは自身のメモリにあるデータP(r)とデータ変
更付加情報S(r)(データ変更番号やデータ変更日時
等の識別情報)を鍵K(j,r)で暗号化して、計算機
jに送信する。
Each computer r that has received the information for changing the data uses the data P (r) in its own memory and the additional data change information S (r) (identification information such as the data change number and the data change date / time) as a key. It is encrypted with K (j, r) and transmitted to computer j.

【0009】計算機jは鍵K(j,r)を用いてデータ
P(r)とS(r)を復号化し、S(r)を検査した
後、P(1),…,P(j−1),P(j+1),…,
P(n)のうち、予め定められた値以上の一致するデー
タにデータP(j)を変更する。
The computer j decrypts the data P (r) and S (r) using the key K (j, r), checks S (r), and then P (1), ..., P (j- 1), P (j + 1), ...,
Of P (n), the data P (j) is changed to the matching data having a predetermined value or more.

【0010】上記目的(2)を解決するための具体的実
現方法の1つとして、予め定められた値以上の負荷が計
算機にかかる、または、計算機能の異常により計算処理
に支障が生じた場合、計算機は他の各計算機に負荷分散
を行うための信号を送信する。
As one of the concrete realization methods for solving the above-mentioned purpose (2), when a load of a predetermined value or more is applied to the computer, or the calculation processing is hindered due to the abnormality of the calculation function. , The computer sends a signal for load balancing to each of the other computers.

【0011】負荷分散を行うための信号を受け取った各
計算機は負荷分散を行う計算機に対して自身の処理負荷
を表す情報を送信し、負荷分散を行う計算機は送られて
きた各計算機の負荷情報から各計算機へ分散させる負荷
量を適当に算出し、それに従って各計算機に負荷分散す
る。
Each computer that has received the signal for load balancing transmits information indicating its own processing load to the computer for load balancing, and the computer for load balancing receives the load information of each computer. Then, the load amount to be distributed to each computer is calculated appropriately, and the load is distributed to each computer accordingly.

【0012】[0012]

【発明の実施の形態】以下、図面を用いて、本発明の実
施の形態について詳しく説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described in detail below with reference to the drawings.

【0013】図1は本発明の実施の形態のシステム構成
を示す図である。このシステムは、複数のエリア1〜5
の各々において設けられた計算機100と、同一のデー
タを格納したデータベース200から構成されている。
各エリアの計算機100とデータベース200は接続さ
れており、各計算機100相互間は通信回線300を介
して接続されている。閣計算機100は、そのエリアに
ある複数の計算機に対して情報提供を行うようなエリア
を代表する計算機である。
FIG. 1 is a diagram showing a system configuration of an embodiment of the present invention. This system has multiple areas 1-5
And a database 200 storing the same data.
The computer 100 and the database 200 in each area are connected to each other, and the computers 100 are connected to each other via a communication line 300. The cabinet computer 100 is a computer representing an area that provides information to a plurality of computers in the area.

【0014】図2は計算機100の内部構成を示す。計
算機100は、ハッシュ計算装置101、署名作成・検
証装置102、データ変更装置103、演算装置10
4、暗復号化装置105、メモリ106、通信装置10
7、負荷分散装置108を備えている。ハッシュ計算装
置101は、与えられたデータPのハッシュ値h(P)
を計算するための装置である。ハッシュ値を求めるハッ
シュ関数の詳細については、例えば、岡本栄司著、「暗
号理論入門」、共立出版(1993)、第138〜14
1頁に記載されている。署名作成・検証装置102は、
後述する識別情報を作成したり、データの比較検査を行
うための装置である。データ変更装置103は、データ
ベース内のデータの変更を行うための装置である。演算
装置104は、データに関する演算を行うための装置で
ある。暗復号化装置105は、データの暗号化および複
合化を行うための装置である。負荷分散装置108は、
計算機相互間で負荷の分散を行うための処理を実行する
装置である。これらの各部の具体的な処理については、
後述する。
FIG. 2 shows the internal configuration of the computer 100. The computer 100 includes a hash calculation device 101, a signature creating / verifying device 102, a data changing device 103, and a computing device 10.
4, encryption / decryption device 105, memory 106, communication device 10
7. A load balancer 108 is provided. The hash calculator 101 calculates the hash value h (P) of the given data P.
Is a device for calculating. For details of the hash function for obtaining a hash value, see Eiji Okamoto, "Introduction to Cryptography", Kyoritsu Shuppan (1993), Nos. 138-14.
It is described on page 1. The signature creation / verification device 102
This is a device for creating identification information to be described later and for performing a data comparison inspection. The data changing device 103 is a device for changing the data in the database. The arithmetic device 104 is a device for performing arithmetic on data. The encryption / decryption device 105 is a device for encrypting and decrypting data. The load balancer 108
This is a device that executes processing for distributing the load between computers. For specific processing of each of these parts,
It will be described later.

【0015】(第1の実施の形態)本実施の形態では、
情報提供サーバシステムについて述べる。すなわち、情
報提供を受けることのできる資格者は計算機100にア
クセスし、資格者であることの認証処理を行い、受理さ
れるとデータベース200に格納されている情報の提供
が行われるシステムである。図1に示すように、通信回
線300で接続した同一のデータを格納したデータベー
ス200を持つ計算機100をそれぞれ複数のエリアに
分けて設置し、各計算機100はそれぞれのエリアにお
いてデータを提供するサービスを行う。
(First Embodiment) In the present embodiment,
The information providing server system will be described. That is, in this system, a qualified person who can receive the information access accesses the computer 100, performs an authentication process for being a qualified person, and, when accepted, provides the information stored in the database 200. As shown in FIG. 1, a computer 100 having a database 200 storing the same data connected by a communication line 300 is installed in a plurality of areas, and each computer 100 provides a service for providing data in each area. To do.

【0016】データベース200のメモリは、図3に示
すように、m個の領域に分けられており、計算機100
はハッシュ計算装置101を用いて領域k(1≦k≦
m)に格納されているデータPkのハッシュ値h(P
k)を計算し、その計算結果を付加領域a(k)に格納
する。ここに、kは1,2,・・・,mを示す。なお、
データPkは保護すべきデータであり、例えば株価など
の有償の情報である。
The memory of the database 200 is divided into m areas as shown in FIG.
Is a region k (1 ≦ k ≦
m) hash value h (P
k) is calculated, and the calculation result is stored in the additional area a (k). Here, k indicates 1, 2, ..., M. In addition,
The data Pk is data to be protected, and is paid information such as stock prices.

【0017】また、各計算機100には1からnまでの
番号が付けられており、番号iの付いた計算機100を
計算機100(i)と表す。
Each computer 100 is assigned a number from 1 to n, and the computer 100 with the number i is referred to as a computer 100 (i).

【0018】さらに、任意の2つの計算機100(i)
と計算機100(j)の間では暗復号化のための固有の
共通鍵K(i,j)を共有しており、それぞれのメモリ
106に格納している。なお、共通鍵暗号方式として
は、DES,FEAL等の公知のものを用いることがで
きる。
Further, any two computers 100 (i)
And the computer 100 (j) share a unique common key K (i, j) for encryption / decryption and store them in their respective memories 106. As the common key cryptosystem, known ones such as DES and FEAL can be used.

【0019】各計算機100は次のデータ検査ステップ
により、データベース200に格納されているデータの
検査を行う。
Each computer 100 inspects the data stored in the database 200 in the following data inspection step.

【0020】(データ検査ステップ)各計算機100
(1),…,100(n)は、図4に示すように一定時
間毎に次の処理をi=1,…,n、k=1,…,mまで
繰り返し、相互のデータベース200内のデータの比較
検査する。
(Data inspection step) Each computer 100
(1), ..., 100 (n) repeats the following processing at regular intervals as shown in FIG. 4 until i = 1, ..., N, k = 1 ,. Compare and inspect the data.

【0021】(1)計算機100(i)は計算機100
(j=i+1(mod n))に通信装置107(i)
を用いて通信回線300を介してアクセスし、データベ
ース200(j)のメモリ内の付加領域a(k)にある
データh(Pj(k))を得る。ここに、”j=i+1
(mod n)”は、i+1をnで割った余りの値をj
とすることを意味する。
(1) Computer 100 (i) is computer 100
(J = i + 1 (mod n)) to the communication device 107 (i)
Is accessed via the communication line 300 to obtain data h (Pj (k)) in the additional area a (k) in the memory of the database 200 (j). Where "j = i + 1"
(Mod n) "is the remainder value obtained by dividing i + 1 by n is j.
Means that

【0022】(2)計算機100(i)はそのデータベ
ース200(i)のメモリの付加領域a(k)にあるh
(Pi(k))に対して、演算装置104(i)を用い
て、 h(Pi(k))=h(Pj(k)), が成立すること、すなわち、両ハッシュ値が等しいこと
を確かめる。もし、この等式が成立しなければ、計算機
100(i)は通信装置107(i)を用いて他の各計
算機100に対してデータ変更を行う領域の番号kを含
むデータ変更のための情報を通信装置107(i)を用
いて通信回線300を介して送信する。ただし、Pi
(k)は計算機100(i)のデータベースのメモリの
領域kにあるデータを表す。ここで、「データ変更のた
めの情報」とは、例えば、データ変更を行う計算機の番
号、データ変更を行うメモリの領域の番号、データ変更
のための情報を発信したときの時間情報、データ変更の
ための情報を発信した計算機の番号等である。
(2) The computer 100 (i) has h in the additional area a (k) of the memory of the database 200 (i).
For (Pi (k)), using the arithmetic unit 104 (i), h (Pi (k)) = h (Pj (k)), holds, that is, both hash values are equal. confirm. If this equation is not satisfied, the computer 100 (i) uses the communication device 107 (i) to make information for data change including the number k of the area in which data is changed with respect to each of the other computers 100 (i). Is transmitted via the communication line 300 using the communication device 107 (i). However, Pi
(K) represents the data in the area k of the memory of the database of the computer 100 (i). Here, the "information for changing data" means, for example, the number of the computer for changing the data, the number of the memory area for changing the data, the time information when the information for changing the data is transmitted, the data changing Is the number of the computer that sent the information for

【0023】上記データ検査ステップ(2)において、
計算機100(i)がデータ変更のための情報を発信し
た場合、各計算機100は次のステップによりデータの
変更を行う。
In the data inspection step (2),
When the computer 100 (i) transmits information for data change, each computer 100 changes the data by the following steps.

【0024】(データ変更ステップ) (1)データ変更のための情報を受信した各計算機10
0(r)(1≦r≦n)は異常が発見された領域kのデ
ータPk(r)とデータ変更付加情報S(r)(データ
変更番号やデータ変更日時等の情報)をメモリ106
(r)内の共通鍵K(r,j)で暗復号化装置105
(r)を用いて暗号化する。すなわち、 E(r,k:j)=E(K(r,j):Pr(k)‖S
(r)), を計算して、E(r,k:j)を通信装置107(r)
を用いて通信回線300を介して計算機100(j)に
送信する。ただし、A‖BはデータAとBの連接を表
す。連接とは、たとえば、A=1011、B=1100
1であれば、A‖B=101111001のように、連
接対象のデータを単純に時系列に並べる操作をいう。
(Data Change Step) (1) Each computer 10 that has received the information for data change
0 (r) (1 ≦ r ≦ n) stores the data Pk (r) in the area k where the abnormality is found and the data change additional information S (r) (information such as the data change number and the data change date / time) in the memory 106.
The encryption / decryption device 105 using the common key K (r, j) in (r)
Encrypt using (r). That is, E (r, k: j) = E (K (r, j): Pr (k) || S
(R)), and E (r, k: j) is calculated by the communication device 107 (r).
To send to the computer 100 (j) via the communication line 300. However, A || B represents the connection of data A and B. Concatenation means, for example, A = 1011 and B = 1100.
If it is 1, it means an operation of simply arranging data to be connected in time series, such as A | B = 101111001.

【0025】(2)計算機100(j)は送られてきた
暗号文E(r,k:j)から、メモリ106(j)内の
鍵K(r,j)により暗復号化装置105(j)を用い
て、 Pr(k)‖S(r)=D(K(r,j):E(r,
k:j)), にてPr(k)とS(r)を復号化する。計算機100
(j)は付加情報S(r)のデータ変更番号・時間日付
情報などを確認した後、予め定められているセキュリテ
ィレベルtに従って、各計算機の領域kのデータP1
(k),…,Pj−1(k),Pj+1(k),…,P
n(k)のうちt個以上の一致するデータを正当なデー
タと判断して、データ変更装置103(j)を用いてデ
ータベース100(j)内の領域kのデータを当該正当
なデータに統一するように変更する。
(2) The computer 100 (j) uses the sent encrypted text E (r, k: j) and the encryption / decryption device 105 (j) with the key K (r, j) in the memory 106 (j). ), Pr (k) ‖S (r) = D (K (r, j): E (r,
k: j)), and Pr (k) and S (r) are decoded. Calculator 100
(J) confirms the data change number, time date information, etc. of the additional information S (r), and then, in accordance with a predetermined security level t, the data P1 in the area k of each computer.
(K), ..., Pj-1 (k), Pj + 1 (k), ..., P
Of t (k), t or more matching data are judged to be valid data, and the data changing device 103 (j) is used to unify the data in the area k in the database 100 (j) to the valid data. To change.

【0026】(第2の実施の形態)本実施の形態では、
第1の実施の形態において、データベース200内の具
体的なデータの更新方法について述べる。
(Second Embodiment) In the present embodiment,
In the first embodiment, a specific method of updating data in the database 200 will be described.

【0027】(データ更新ステップ) (1)各計算機100には管理者が設定されており、計
算機100(i)のメモリ106(i)には管理者iの
固有の秘密鍵diが格納されており、各計算機100の
メモリ106には秘密鍵diに対応する公開鍵(ei,
ni)が格納されている。ただし、ni=pi×qi
(pi,qiは素数)、ei×di≡1(mod N
i)(Niはpi−1とqi−1の最小公倍数)なる関
係がある。なお、このような鍵に関しては前述の「暗号
理論入門」の第88〜91頁に記載されている。
(Data Update Step) (1) An administrator is set for each computer 100, and the unique secret key di of the administrator i is stored in the memory 106 (i) of the computer 100 (i). In the memory 106 of each computer 100, the public key (ei,
ni) is stored. However, ni = pi × qi
(Pi and qi are prime numbers), ei × di≡1 (mod N
i) (Ni is the least common multiple of pi-1 and qi-1). Note that such a key is described on pages 88 to 91 of the above-mentioned "Introduction to Cryptographic Theory".

【0028】(2)データ更新を指示する計算機100
(r)は、更新データRと更新付加情報S(更新データ
の番号や更新日時等の情報)に対して計算機100
(r)内のハッシュ計算装置101(r)を用いてR‖
Sのハッシュ値h(R‖S)を計算し、メモリ106
(r)内の秘密鍵drと署名作成・検証装置102
(r)を用いて、 wr=exp(h(R‖S),dr) mod nr, を計算し、さらにRとSとwrを暗復号化装置105
(r)を用いて鍵K(i,r)で暗号化して、すなわ
ち、 E(r,i,R)=E(K(i,j):R‖S‖w
r), を計算して、E(r,i,R)を他の各計算機100
(i)に通信装置107(r)を用いて通信回線300
を介して送信する。ただし、A‖BはデータAとBの連
接を表す。
(2) Computer 100 for instructing data update
(R) is the computer 100 for the update data R and the update additional information S (information such as the update data number and update date and time).
Using the hash calculation device 101 (r) in (r), R ‖
The hash value h (R | S) of S is calculated, and the memory 106
Private key dr in (r) and signature creation / verification device 102
Using (r), wr = exp (h (R | S), dr) mod nr, is calculated, and R, S, and wr are further calculated in the encryption / decryption device 105.
It is encrypted with the key K (i, r) using (r), that is, E (r, i, R) = E (K (i, j): R | S || w
r), and E (r, i, R) is calculated by each of the other computers 100.
The communication line 107 (r) is used for (i)
To send via. However, A || B represents the connection of data A and B.

【0029】(3)暗号文E(r,i,R)を受け取っ
た計算機100(i)の管理者iはメモリ内106
(i)の鍵K(i,r)により暗復号化装置105
(r)を用いて、 R‖S‖wr=D(K(i,r):E(r,i,
R)), により、R,S,wrを復号化する。管理者iは更新デ
ータRと更新付加情報Sを確かめた後、計算機100
(i)内のハッシュ計算装置101(i)を用いてR‖
Sのハッシュ値h(R‖S)を計算し、メモリ106
(i)内の秘密鍵diにより署名作成・検証装置102
(i)を用いて、 wi=exp(h(R‖S),di) mod ni, により、識別情報wiを作成し、wiをメモリ106
(i)内の鍵K(i,j)と暗復号化装置105(i)
を用いて暗号化した暗号文E(K(i,j):wi)を
他の各計算機100(j)に通信装置107(i)を用
いて通信回線300を介して送信する。ただし、exp
(a,x)はaをx乗した値を表す。
(3) The administrator i of the computer 100 (i) who has received the ciphertext E (r, i, R) reads 106 in the memory.
The encryption / decryption device 105 using the key K (i, r) of (i)
Using (r), R | S | wr = D (K (i, r): E (r, i,
R)), and decode R, S, and wr. After confirming the update data R and the update additional information S, the administrator i
Using the hash calculation device 101 (i) in (i), R‖
The hash value h (R | S) of S is calculated, and the memory 106
The signature creation / verification device 102 using the private key di in (i)
Using (i), the identification information wi is created by wi = exp (h (R || S), di) mod ni, and wi is stored in the memory 106.
Key K (i, j) in (i) and encryption / decryption device 105 (i)
The encrypted text E (K (i, j): wi) encrypted by using the communication device 107 (i) is transmitted to each of the other computers 100 (j) via the communication line 300. However, exp
(A, x) represents a value of a raised to the power x.

【0030】(4)各計算機100(j)の管理者jは
メモリ106(j)内の鍵K(i,j)と暗復号化装置
105(j)を用いて暗号文E(K(i,j):wi)
からwiを復号化し、識別情報w1,w2,…,wnに
対して、データ更新コードCを、 C=(w1,w2,…,wn), にて作成し(図5)、更新データRとCを計算機100
(j)に入力する。
(4) The manager j of each computer 100 (j) uses the key K (i, j) in the memory 106 (j) and the encryption / decryption device 105 (j) to obtain the ciphertext E (K (i , J): wi)
, Wn are decrypted, and the data update code C is created for the identification information w1, w2, ..., Wn by C = (w1, w2, ..., Wn) (FIG. 5), and the update data R is obtained. C is computer 100
Input in (j).

【0031】(5)計算機100(j)は、メモリ10
6(j)内の各公開鍵(ek,nk)(1≦k≦n)と
署名作成・検証装置102(j)を用いて、 h(R‖S)≡exp(wk,dk)(mod n
k), を検査する。この式は、h(R‖S)−exp(wk,
dk)がnkで割り切れることを意味する。全てのkに
ついて上式が成立すれば、データ更新処理が第1の実施
の形態で述べたデータ検査・変更処理に優先し、計算機
100(j)はデータ変更装置103を用いてデータベ
ース200(j)内のデータをRに更新する。
(5) The computer 100 (j) has the memory 10
Using each public key (ek, nk) (1 ≤ k ≤ n) in 6 (j) and the signature creation / verification device 102 (j), h (R | S) ≡exp (wk, dk) (mod n
k), are inspected. This expression is h (R | S) -exp (wk,
dk) is divisible by nk. If the above equation is satisfied for all k, the data update processing has priority over the data inspection / change processing described in the first embodiment, and the computer 100 (j) uses the data change device 103 to make the database 200 (j The data in () is updated to R.

【0032】(第3の実施の形態)本実施の形態では、
第1の実施の形態においてデータベース200内のデー
タの更新を行う第2の実施の形態の変形例について述べ
る。
(Third Embodiment) In the present embodiment,
A modification of the second embodiment for updating the data in the database 200 in the first embodiment will be described.

【0033】(データ更新ステップ) (1)各計算機100には管理者が設定されており、計
算機100(i)のメモリ106(i)には管理者iの
固有の秘密鍵diが格納されており、各計算機100の
メモリ106には秘密鍵diに対応する公開鍵(ei,
ni)が格納されている。ただし、ni=pi×qi
(pi,qiは素数)、ei×di≡1(mod N
i)(Niはpi−1とqi−1の最小公倍数)なる関
係がある。
(Data Update Step) (1) An administrator is set for each computer 100, and a unique secret key di of the administrator i is stored in the memory 106 (i) of the computer 100 (i). In the memory 106 of each computer 100, the public key (ei,
ni) is stored. However, ni = pi × qi
(Pi and qi are prime numbers), ei × di≡1 (mod N
i) (Ni is the least common multiple of pi-1 and qi-1).

【0034】(2)データ更新を指示する計算機100
(r)は、更新データRと更新付加情報S(更新データ
の番号や更新日時等の情報)に対して計算機100
(r)内のハッシュ計算装置101(r)を用いてR‖
Sのハッシュ値h(R‖S)を計算し、メモリ106
(r)内の秘密鍵drと署名作成・検証装置102
(r)を用いて、 wr=exp(h(R‖S),dr) mod nr, を計算し、さらにRとSとwrを暗復号化装置105
(r)を用いて鍵K(i,r)で暗号化する。すなわ
ち、 E(r,i,R)=E(K(i,j):R‖S‖w
r), を計算して、E(r,i,R)を他の各計算機100
(i)に通信装置107(r)を用いて通信回線300
を介して送信する。ただし、A‖BはデータAとBの連
接を表す。
(2) Computer 100 for instructing data update
(R) is the computer 100 for the update data R and the update additional information S (information such as the update data number and update date and time).
Using the hash calculation device 101 (r) in (r), R ‖
The hash value h (R | S) of S is calculated, and the memory 106
Private key dr in (r) and signature creation / verification device 102
Using (r), wr = exp (h (R | S), dr) mod nr, is calculated, and R, S, and wr are further calculated in the encryption / decryption device 105.
Encrypt with the key K (i, r) using (r). That is, E (r, i, R) = E (K (i, j): R || S || w
r), and E (r, i, R) is calculated by each of the other computers 100.
The communication line 107 (r) is used for (i)
To send via. However, A || B represents the connection of data A and B.

【0035】(3)暗号文E(r,i,R)を受け取っ
た計算機100(i)の管理者iはメモリ内106
(i)の鍵K(i,r)により暗復号化装置105
(r)を用いて、 R‖S‖wr=D(K(i,r):E(r,i,
R)), により、R,S,wrを復号化する。管理者iは更新デ
ータRと更新付加情報Sを確かめた後、計算機100
(i)内のハッシュ計算装置101(i)を用いてR‖
Sのハッシュ値h(R‖S)を計算し、メモリ106
(i)内の秘密鍵diにより署名作成・検証装置102
(i)を用いて、 wi=exp(h(R‖S),di) mod ni, により、識別情報wiを作成し、wiをメモリ106
(i)内の鍵K(i,r)と暗復号化装置105(i)
を用いて暗号化した暗号文E(K(i,r):wi)を
計算機100(r)に通信装置107(i)を用いて通
信回線300を介して送信する。ただし、exp(a,
x)はaをx乗した値を表す。
(3) The administrator i of the computer 100 (i) who has received the ciphertext E (r, i, R) reads 106 in the memory.
The encryption / decryption device 105 using the key K (i, r) of (i)
Using (r), R | S | wr = D (K (i, r): E (r, i,
R)), and decode R, S, and wr. After confirming the update data R and the update additional information S, the administrator i
Using the hash calculation device 101 (i) in (i), R‖
The hash value h (R | S) of S is calculated, and the memory 106
The signature creation / verification device 102 using the private key di in (i)
Using (i), the identification information wi is created by wi = exp (h (R || S), di) mod ni, and wi is stored in the memory 106.
Key K (i, r) in (i) and encryption / decryption device 105 (i)
The encrypted text E (K (i, r): wi) encrypted by using the communication device 107 (i) is transmitted to the computer 100 (r) via the communication line 300. However, exp (a,
x) represents a value of a raised to the power x.

【0036】(4)計算機100(r)の管理者rはメ
モリ106(r)内の鍵K(i,r)と暗復号化装置1
05(r)を用いて暗号文E(K(i,r):wi)か
らwiを復号化し、識別情報w1,w2,…,wnに対
して、データ更新コードCを、 C=(w1,w2,…,wn), にて作成し(図5)、更新データRとCを計算機100
(r)に入力する。
(4) The administrator r of the computer 100 (r) uses the key K (i, r) in the memory 106 (r) and the encryption / decryption device 1.
05 (r) is used to decrypt wi from the ciphertext E (K (i, r): wi), and the data update code C is C = (w1, for identification information w1, w2, ..., Wn. w2, ..., Wn) (Fig. 5) and update data R and C are calculated by computer 100.
Input in (r).

【0037】(5)計算機100(r)は、メモリ10
6(r)内の各公開鍵(ek,nk)(1≦k≦n)と
署名作成・検証装置102(r)を用いて、 h(R‖S)≡exp(wk,dk)(mod n
k), を検査し、全てのkについて上式が成立すれば、データ
更新処理が第1の実施の形態で述べたデータ検査・変更
処理に優先し、計算機100(r)はデータ変更装置1
03を用いてデータベース200(r)内のデータをR
に更新する。
(5) The computer 100 (r) has the memory 10
Using each public key (ek, nk) (1 ≤ k ≤ n) in 6 (r) and the signature creation / verification device 102 (r), h (R | S) ≡exp (wk, dk) (mod n
If the above equation is satisfied for all k, the data update processing has priority over the data inspection / change processing described in the first embodiment, and the computer 100 (r) is the data change device 1
Data in the database 200 (r) using R.03.
To update.

【0038】(6)計算機100(r)はRとSとCを
暗復号化装置105(r)を用いて鍵K(i,r)で暗
号化して、すなわち、 E(r,i,C)=E(K(i,r):R‖S‖C), を計算して、E(r,i,C)を他の各計算機100
(j)に通信装置107(r)を用いて通信回線300
を介して送信する。
(6) The computer 100 (r) encrypts R, S and C with the key K (i, r) using the encryption / decryption device 105 (r), that is, E (r, i, C) ) = E (K (i, r): R || S || C), and E (r, i, C) is calculated by each of the other computers 100.
A communication line 300 using the communication device 107 (r) for (j)
To send via.

【0039】(7)各計算機100(j)は、メモリ1
06(j)内の各公開鍵(ek,nk)(1≦k≦n)
と署名作成・検証装置102(j)を用いて、 h(R‖S)≡exp(wk,dk)(mod n
k), を検査し、全てのkについて上式が成立すれば、データ
更新処理が第1の実施の形態で述べたデータ検査・変更
処理に優先し、計算機100(j)はデータ変更装置1
03を用いてデータベース200(j)内のデータをR
に更新する。
(7) Each computer 100 (j) has a memory 1
Each public key (ek, nk) in 06 (j) (1 ≦ k ≦ n)
And signature creation / verification device 102 (j), h (R | S) ≡exp (wk, dk) (mod n
If the above equation is satisfied for all k, the data update processing has priority over the data inspection / change processing described in the first embodiment, and the computer 100 (j) is the data change device 1
Data in the database 200 (j) using R.03.
To update.

【0040】(第4の実施の形態)第2の実施の形態お
よび第3の実施の形態のデータ更新ステップ(1)にお
いて、管理者iは秘密鍵diを計算機100(i)のメ
モリ106(i)ではなく、ICカードなどの計算機1
00(i)以外の記憶媒体に記憶し、管理者iが所持す
る。
(Fourth Embodiment) In the data updating step (1) of the second and third embodiments, the administrator i stores the secret key di in the memory 106 (of the computer 100 (i) ( i), not a computer such as an IC card 1
It is stored in a storage medium other than 00 (i) and is owned by the manager i.

【0041】(第5の実施の形態)本実施の形態では、
第1の実施の形態において図6に示すように各計算機1
00間で負荷分散を行うメカニズムについて述べる。
(Fifth Embodiment) In the present embodiment,
In the first embodiment, each computer 1 as shown in FIG.
The mechanism of load balancing between 00s will be described.

【0042】(負荷分散ステップ) (1)予め定められた値以上の負荷が計算機100にか
かる、または、計算機能の異常により計算処理に支障が
生じた場合、計算機100の負荷分散装置108が起動
し、他の各計算機100に負荷分散を行うための信号を
通信装置107を用いて通信回線300を介して送信す
る。
(Load Balancing Step) (1) When a load equal to or more than a predetermined value is applied to the computer 100 or the calculation processing is hindered due to an abnormality in the calculation function, the load distribution device 108 of the computer 100 is activated. Then, a signal for load balancing is transmitted to each of the other computers 100 using the communication device 107 via the communication line 300.

【0043】(2)負荷分散を知らせる信号を受け取っ
た各計算機100は、負荷分散装置108を用いて自身
の計算処理負荷の情報を負荷分散の信号を発した計算機
100に対して通信装置107を用いて通信回線300
を介して送信する。
(2) Each computer 100 that has received the signal notifying the load balancing uses the load balancing device 108 to send the communication device 107 to the computer 100 that has issued the load balancing signal regarding the information of its own calculation processing load. Using communication line 300
To send via.

【0044】(3)負荷分散を行う計算機100は、各
計算機100から送られてきた負荷情報をもとに負荷分
散装置108を用いて負荷分散を行う。その方法として
は、例えば、負荷の比較的軽い1または複数の計算機に
対して、自己の負荷の一部または全部を分散させる。
(3) The load balancing computer 100 performs load balancing using the load balancing device 108 based on the load information sent from each computer 100. As a method thereof, for example, a part or all of its own load is distributed to one or a plurality of computers having a relatively light load.

【0045】(第6の実施の形態)第1の実施の形態に
おいて、ある計算機100(i)の機能が停止した場
合、計算機100(j=i−1(mod n))は計算
機100(i)が停止したことを認識すると、計算機1
00(i)を切り離し、計算機100(i+1(mod
n))を計算機100(i)とみなして、第1の実施
の形態の方法によりデータの比較検査・変更を行ない、
第2の実施の形態の方法によりデータ更新を行ない、第
5の実施の形態の方法により負荷分散を行う。
(Sixth Embodiment) In the first embodiment, when the function of a computer 100 (i) is stopped, the computer 100 (j = i-1 (mod n)) is replaced by the computer 100 (i). ), The computer 1
00 (i) is disconnected, and computer 100 (i + 1 (mod
n)) is regarded as the computer 100 (i), and the comparison inspection / change of data is performed by the method of the first embodiment.
Data is updated by the method of the second embodiment and load distribution is performed by the method of the fifth embodiment.

【0046】[0046]

【発明の効果】本発明によれば、各計算機はそれぞれ独
立に他計算機のデータの検査・修正を行っているため、
不正者(管理者であるかも知れない)がある計算機のデ
ータを不正に改竄したり、または、事故などによりデー
タを消失しても他計算機がこれを検出し、適正なデータ
に変更される。このため、高価値データを安全に保護す
ることができる。
According to the present invention, since each computer independently inspects and corrects the data of another computer,
Even if an illicit person (maybe an administrator) tampered with the data of a certain computer, or even if the data was lost due to an accident, another computer would detect it and change it to proper data. Therefore, high-value data can be protected safely.

【0047】また、計算機の過剰負荷や計算機能停止な
どのトラブルに対して、分散環境下で自動的に他計算機
に対して負荷分散を行う。このため、負荷分散のための
管理用計算機を設置する必要はなく、負荷分散を行う計
算機が正常に作動していれば負荷分散を行うことができ
る。これにより、常にシステムを健全な状態に保持する
ことができる。
Further, in the case of a trouble such as an excessive load on a computer or a stoppage of a calculation function, the load is automatically distributed to other computers in a distributed environment. Therefore, it is not necessary to install a management computer for load balancing, and load balancing can be performed if the load balancing computer is operating normally. As a result, the system can always be kept in a healthy state.

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

【図1】本発明のシステム構成を示す図である。FIG. 1 is a diagram showing a system configuration of the present invention.

【図2】図1のシステム構成内の計算機の内部構成を示
す図である。
FIG. 2 is a diagram showing an internal configuration of a computer in the system configuration of FIG.

【図3】図1のシステム構成内のデータベースのメモリ
を示す図である。
3 is a diagram showing a memory of a database in the system configuration of FIG. 1. FIG.

【図4】図1のシステム構成内の計算機が他計算機のデ
ータベースのデータを検査するステップを示す図であ
る。
FIG. 4 is a diagram showing steps in which a computer in the system configuration of FIG. 1 checks data in a database of another computer.

【図5】図1のシステム構成内のデータベースのデータ
を更新するためのデータ更新コードを作成するステップ
を示す図である。
5 is a diagram showing steps of creating a data update code for updating data in a database in the system configuration of FIG.

【図6】図1のシステム構成内の計算機が負荷分散を行
うメカニズムを示す図である。
FIG. 6 is a diagram showing a mechanism by which a computer in the system configuration of FIG. 1 performs load distribution.

【符号の説明】[Explanation of symbols]

100…計算機、101…計算機100のハッシュ計算
装置、102…計算機100内の署名・検証装置、10
3…計算機100内のデータ変更装置、104…計算機
100内の演算装置、105…計算機100内の暗復号
化装置、106…計算機100内のメモリ、107…計
算機100内の通信装置、108…計算機100内の負
荷分散装置。
100 ... Calculator, 101 ... Hash Calculator of Calculator 100, 102 ... Signature / Verification Device in Calculator 100, 10
3 ... data changing device in computer 100, 104 ... arithmetic device in computer 100, 105 ... encryption / decryption device in computer 100, 106 ... memory in computer 100, 107 ... communication device in computer 100, 108 ... computer A load balancer within 100.

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04L 9/32 H04L 9/00 675B (72)発明者 櫻庭 健年 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification number Internal reference number for FI Technical indication H04L 9/32 H04L 9/00 675B (72) Inventor Kenji Sakuraba Ozenzenji, Aso-ku, Kawasaki-shi, Kanagawa Address: 1099 Company Hitachi, Ltd. System Development Laboratory

Claims (12)

【特許請求の範囲】[Claims] 【請求項1】特定のデータを用いて計算処理を行う計算
機システムにおいて、 通信回線で接続した該データを持つ計算機をそれぞれ複
数のエリアに分散して設置し、各計算機はそれぞれのエ
リアにおいて該データを用いて同一の計算処理を担当
し、各計算機は通信回線を介して他計算機のデータと自
身の持つデータとを比較し、もし異なっていれば他の全
計算機にデータ変更のための情報を送信し、全計算機の
データの状況をもとに各計算機のデータを適正なデータ
に変更することを特徴とする計算機ネットワークシステ
ム。
1. In a computer system for performing calculation processing using specific data, computers having the data connected by a communication line are respectively installed in a plurality of areas, and each computer has the data in each area. Is in charge of the same calculation process, each computer compares the data of other computers with its own data via the communication line, and if they are different, it sends the information for data change to all other computers. A computer network system characterized by transmitting and changing the data of each computer to proper data based on the status of the data of all computers.
【請求項2】請求項1において、計算機が通信回線を介
して他計算機のデータと自身の持つデータを比較する方
法として、 各計算機には1からnまでの番号が付けられており、計
算機iは計算機j=i+1(mod n)にアクセス
し、計算機jのメモリにあるデータP(j)のハッシュ
値h(P(j))を計算し、さらに計算機iのメモリに
あるデータP(i)のハッシュ値h(P(i))を計算
し、h(P(i))=h(P(j))を確かめることに
よりデータの比較検査を行うステップをi=1からnま
で繰り返す処理を一定時間毎に行うことを特徴とする計
算機ネットワークシステム。
2. A computer according to claim 1, wherein each computer is numbered from 1 to n as a method of comparing the data of another computer with the data of its own via a communication line. Accesses the computer j = i + 1 (mod n), calculates the hash value h (P (j)) of the data P (j) in the memory of the computer j, and further, the data P (i) in the memory of the computer i. Of the hash value h (P (i)) of i and confirming h (P (i)) = h (P (j)), the step of performing the data comparison check is repeated from i = 1 to n. A computer network system characterized by being performed at regular intervals.
【請求項3】請求項1において、計算機が通信回線を介
して他計算機の該データと自身の持つ該データを比較す
る方法として、 各計算機には1からnまでの番号が付けられており、各
計算機のメモリは複数の領域1,…,mに分けられてお
り、各計算機i(1≦i≦n)のメモリの領域k(1≦
k≦m)には格納されているデータPi(k)のハッシ
ュ値h(Pi(k))が格納されており、 計算機iは計算機j=i+1(mod n)にアクセス
し、計算機jのメモリの領域kにあるハッシュ値h(P
j(k))と計算機iのメモリの領域kにあるハッシュ
値h(Pi(k))に対して、h(Pj(k))=h
(Pi(k))を確かめることにより領域毎のデータの
比較検査をし、各計算機は順次領域毎のデータ比較検査
を行うことによりデータの比較検査を行うことを特徴と
する計算機ネットワークシステム。
3. A computer according to claim 1, wherein each computer is numbered from 1 to n as a method of comparing the data of another computer with the data of its own via a communication line. The memory of each computer is divided into a plurality of areas 1, ..., M, and the area k (1 ≦ i ≦ n) of the memory of each computer i (1 ≦ i ≦ n).
The hash value h (Pi (k)) of the stored data Pi (k) is stored in k ≦ m), the computer i accesses the computer j = i + 1 (mod n), and the memory of the computer j is accessed. Hash value h (P
j (k)) and the hash value h (Pi (k)) in the memory area k of the computer i, h (Pj (k)) = h
A computer network system characterized by performing a comparative inspection of data for each area by confirming (Pi (k)), and each computer performing a comparative inspection of data by sequentially performing a data comparative inspection for each area.
【請求項4】請求項1において、適正なデータに変更す
る方法として、 各計算機には1からnまでの番号が付けられており、任
意の相異なる計算機iと計算機j(1≦i,j≦n)の
間では予め共通鍵K(i,j)を共有しており、 請求項2において、計算機i(1≦i≦n)のメモリに
あるデータP(i)のハッシュ値h(P(i))と計算
機j=i+1(mod n)のメモリにあるデータP
(j)のハッシュ値h(P(j))が一致しなかった場
合、計算機iは全ての計算機に対してデータ変更のため
の情報を送信し、 該データ変更のための情報を受け取った各計算機rは自
身のメモリにあるデータP(r)とデータ変更付加情報
S(r)(データ変更番号やデータ変更日時等の識別情
報)を鍵K(j,r)で暗号化して、計算機jに送信
し、 計算機jは鍵K(j,r)を用いてデータP(r)とS
(r)を復号化し、S(r)を検査した後、P(1),
…,P(j−1),P(j+1),…,P(n)のう
ち、予め定められた値以上の一致するデータにデータP
(j)を変更することを特徴とする計算機ネットワーク
システム。
4. The method according to claim 1, wherein each computer is numbered from 1 to n as a method of changing to appropriate data, and any different computer i and computer j (1 ≦ i, j) are selected. The common key K (i, j) is shared in advance between ≦ n, and the hash value h (P) of the data P (i) in the memory of the computer i (1 ≦ i ≦ n) is defined in claim 2. (I)) and the data P in the memory of the computer j = i + 1 (mod n)
When the hash value h (P (j)) of (j) does not match, the computer i transmits the information for changing the data to all the computers, and receives the information for changing the data. The computer r encrypts the data P (r) and the data modification additional information S (r) (identification information such as the data modification number and the data modification date and time) in its own memory with the key K (j, r), and the computer j Computer j uses the key K (j, r) to send data P (r) and S
After decoding (r) and checking S (r), P (1),
, P (j−1), P (j + 1), ..., P (n), the data P is the matching data having a predetermined value or more.
A computer network system characterized by changing (j).
【請求項5】請求項3において、適正なデータに変更す
る方法として、 各計算機には1からnまでの番号が付けられており、任
意の異なる計算機iと計算機j(1≦i,j≦n)の間
では予め共通鍵K(i,j)を共有しており、 計算機i(1≦i≦n)のメモリの領域k(1≦k≦
m)にあるデータPi(k)のハッシュ値h(Pi
(k))と計算機j=i+1(mod n)のメモリの
領域kにあるデータPj(k)のハッシュ値h(Pj
(k))が一致しなかった場合、計算機iは全ての計算
機に対して変更する領域の番号を含むデータ変更のため
の情報を送信し、 該データ変更のための情報を受け取った各計算機rは自
身のメモリの領域kにあるデータPk(r)とデータ変
更付加情報S(r)(データ変更番号やデータ変更日時
等の識別情報)を鍵K(j,r)で暗号化して、計算機
jに送信し、 計算機jは鍵K(j,r)を用いてデータPr(k)と
S(r)を復号化し、S(r)を検査した後、P1
(k),…,Pj−1(k),Pj+1(k),…,P
n(k)のうち、予め定められた値以上の一致するデー
タにデータPj(k)を変更することを特徴とする計算
機ネットワークシステム。
5. A method according to claim 3, wherein each computer is numbered from 1 to n as a method of changing to appropriate data, and any different computer i and computer j (1 ≦ i, j ≦ n) share a common key K (i, j) in advance, and the area k (1 ≦ k ≦) of the memory of the computer i (1 ≦ i ≦ n) is shared.
m) the hash value h (Pi of the data Pi (k)
(K)) and the hash value h (Pj of the data Pj (k) in the memory area k of the computer j = i + 1 (mod n).
If (k) does not match, the computer i transmits information for data change including the number of the area to be changed to all computers, and each computer r that has received the information for data change Encrypts the data Pk (r) in the area k of its own memory and the data modification additional information S (r) (identification information such as data modification number and data modification date) with the key K (j, r), and , the computer j uses the key K (j, r) to decrypt the data Pr (k) and S (r), examines S (r), and then P1
(K), ..., Pj-1 (k), Pj + 1 (k), ..., P
A computer network system, characterized in that, among n (k), data Pj (k) is changed to matching data having a predetermined value or more.
【請求項6】請求項2〜5のいずれかにおいて、各計算
機が所持するデータを更新する方法として、 各計算機には1からnまでの番号が付けられており、任
意の相異なる2つの計算機iと計算機j(1≦i,j≦
n)との間では予め共通鍵K(i,j)を共有してお
り、 各計算機i(1≦i≦n)にはそれぞれ管理者iが設定
されており、管理者iはそれぞれ固有の秘密情報siを
所持し、 計算機r(1≦r≦n)を使用するデータ更新を指示す
る管理者rは、更新データPとデータ更新付加情報S
(更新日時や更新データ番号等)から作成されたデータ
h(P,S)に対して秘密情報srを用いて識別情報w
rを作成し、PとSとwrのそれぞれを計算機r内の鍵
K(r,i)を用いて暗号化した暗号文を各計算機iに
送信し、 各管理者iは、計算機rから送られてきた暗号文から計
算機i内の鍵K(r,i)を用いて更新データPとデー
タ更新付加情報Sを復号化し、Sを検査した後、更新デ
ータPと更新データ付加情報Sから作成されたデータh
(P,S)に対して秘密情報siを用いて識別情報wi
を作成し、wiを他の各計算機jに対して共通鍵K
(i,j)で暗号化した暗号文E(K(i,j):w
i)を送信し、 各管理者jは、送られてきた暗号文E(K(i,j):
wi)から計算機j内の鍵K(i,j)を用いてwiを
復号化し、データ更新のためのデータ更新コードC=
(s1,s2,…,sn)を作成し、更新データPと更
新データ付加情報Sとデータ更新コードCを計算機jに
入力し、計算機jはデータ更新コードCの各識別情報に
ついて正当性が確認されると、請求項2から請求項5の
データ検査・変更処理に優先して、更新データPに更新
することを特徴とする計算機ネットワークシステム。
6. The method according to claim 2, wherein each computer is numbered from 1 to n as a method of updating the data possessed by each computer. i and computer j (1 ≦ i, j ≦
n), the common key K (i, j) is shared in advance, and each computer i (1 ≦ i ≦ n) has an administrator i set, and the administrator i is unique. The administrator r who possesses the secret information si and instructs the data update using the computer r (1 ≦ r ≦ n) is the update data P and the data update additional information S.
The identification information w using the secret information sr for the data h (P, S) created from (update date and time, update data number, etc.)
r is created, and each of P, S, and wr is encrypted using the key K (r, i) in the computer r, and the ciphertext is sent to each computer i. The update data P and the data update additional information S are decrypted from the obtained ciphertext using the key K (r, i) in the computer i, and after checking S, the update data P and the update data additional information S are created. Data h
The identification information wi is obtained by using the secret information si for (P, S).
Is created and wi is a common key K for each of the other computers j.
Ciphertext E (K (i, j): w encrypted with (i, j)
i) is sent, and each manager j sends the sent ciphertext E (K (i, j):
Wi) is decrypted from wi using the key K (i, j) in the computer j, and the data update code C =
(S1, s2, ..., Sn) are created, the update data P, the update data additional information S, and the data update code C are input to the computer j, and the computer j confirms the correctness of each identification information of the data update code C. Then, the computer network system updates the update data P with priority over the data inspection / change processing according to any one of claims 2 to 5.
【請求項7】請求項1において、各計算機が所持する該
データを更新する方法として、 各計算機には1からnまでの番号が付けられており、任
意の相異なる2つの計算機iと計算機j(1≦i,j≦
n)との間では予め共通鍵K(i,j)を共有してお
り、 各計算機i(1≦i≦n)にはそれぞれ管理者iが設定
されており、管理者iはそれぞれ固有の秘密鍵diを所
持し、秘密鍵diに対応する公開鍵(ei,ni)を各
計算機は所持し、 計算機r(1≦r≦n)を使用するデータ更新を指示す
る管理者rは、更新データPとデータ更新付加情報S
(更新の日時や更新データ番号等)の連接データP‖S
のハッシュ値h(P‖S)に対して秘密鍵diを用い
て、 wr=exp(h(P‖S),dr) mod nr, にて識別情報wrを作成し、連接データP‖S‖wrを
計算機r内の鍵K(r,i)を用いて暗号化した暗号文
E(K(r,i):P‖S‖wr)を他の各計算機iに
送信し、 各管理者iは、該暗号文E(K(r,i):P‖S‖w
r)から計算機i内の鍵K(r,i)を用いて更新デー
タPとデータ更新付加情報Sと識別情報wrを復号化
し、Sを検査した後、更新データPと更新データ付加情
報Sの連接データP‖Sのハッシュ値h(P‖S)に対
して秘密鍵diを用いて識別情報wiを、 wi=exp(h(P‖S),di) mod ni, にて作成し、wiを鍵K(i,j)で暗号化した暗号文
E(K(i,j):wi)を他の各計算機jに送信し、 各管理者jは送られてきた暗号文E(K(i,j):w
i)から計算機j内の鍵K(i,j)を用いてwiを復
号化し、データ更新のためのデータ更新コードC=(s
1,s2,…,sn)を作成し、更新データPとデータ
更新付加情報Sとデータ更新コードCを計算機iに入力
し、計算機iはデータ更新コードCの各識別情報wt
(1≦t≦n)について公開鍵(et,nt)を用い
て、 h(P‖S)≡exp(wt,et)(mod n
t), にてデータ更新コードCの正当性が確認されると、請求
項2から請求項5のデータ検査・変更処理に優先して、
更新データPに更新することを特徴とする計算機ネット
ワークシステム。ただし、ni=pi×qi(pi、q
iは素数),ei×di≡1(modNi)(Niはp
i−1とqi−1の最小公倍数)で、exp(a,x)
はaをx乗した値を表す。
7. The method according to claim 1, wherein each computer is numbered from 1 to n as a method of updating the data possessed by each computer, and two arbitrary computers i and j are different from each other. (1 ≦ i, j ≦
n), the common key K (i, j) is shared in advance, and each computer i (1 ≦ i ≦ n) has an administrator i set, and the administrator i is unique. Each computer possesses the private key di, each computer possesses the public key (ei, ni) corresponding to the private key di, and the administrator r who instructs the data update using the computer r (1 ≦ r ≦ n) Data P and data update additional information S
Concatenated data P‖S (update date and time, update data number, etc.)
Using the secret key di for the hash value h (P || S) of, the identification information wr is created with wr = exp (h (P | S), dr) mod nr, and the concatenated data P | S || The ciphertext E (K (r, i): P.parallel.s.vertline.wr) obtained by encrypting wr using the key K (r, i) in the computer r is transmitted to each other computer i, and each administrator i. Is the ciphertext E (K (r, i): P | S | w
From r), the update data P, the data update additional information S and the identification information wr are decrypted using the key K (r, i) in the computer i, and after checking S, the update data P and the update data additional information S For the hash value h (P | S) of the concatenated data P | S, the identification information wi is created using the secret key di as follows: wi = exp (h (P | S), di) mod ni, The encrypted text E (K (i, j): wi) obtained by encrypting the encrypted key E with the key K (i, j) is transmitted to each of the other computers j, and each manager j transmits the encrypted text E (K ( i, j): w
i) is decrypted wi using the key K (i, j) in the computer j, and the data update code C = (s
, S2, ..., Sn), and inputs the update data P, the data update additional information S, and the data update code C to the computer i, and the computer i identifies each identification information wt of the data update code C wt.
For (1 ≦ t ≦ n), using the public key (et, nt), h (P∥S) ≡exp (wt, et) (mod n
When the validity of the data update code C is confirmed in t) and, the data inspection / change processing of claims 2 to 5 is given priority,
A computer network system characterized by updating to update data P. However, ni = pi × qi (pi, q
i is a prime number, ei × di≡1 (modNi) (Ni is p
i−1 and qi−1, the least common multiple), exp (a, x)
Represents the value of a raised to the power x.
【請求項8】請求項2〜5のいずれかにおいて、各計算
機が所持する該データを更新する方法として、 各計算機には1からnまでの番号が付けられており、任
意の相異なる2つの計算機iと計算機j(1≦i,j≦
n)との間では予め共通鍵K(i,j)を共有してお
り、 各計算機i(1≦i≦n)にはそれぞれ管理者iが設定
されており、管理者iはそれぞれ固有の秘密情報siを
所持し、 計算機r(1≦r≦n)を使用するデータ更新を指示す
る管理者rは、更新データPとデータ更新付加情報S
(更新日時や更新データ番号等)から作成されたデータ
h(P,S)に対して秘密情報srを用いて識別情報w
rを作成し、PとSとwrのそれぞれを計算機r内の鍵
K(r,i)を用いて暗号化した暗号文を各計算機iに
送信し、 各管理者iは、計算機rから送られてきた該暗号文から
計算機i内の鍵K(r,i)を用いて更新データPとデ
ータ更新付加情報Sを復号化し、Sを検査した後、更新
データPと更新データ付加情報Sから作成されたデータ
h(P,S)に対して秘密情報siを用いて識別情報w
iを作成し、wiを計算機rに対して共通鍵K(i,
r)で暗号化した暗号文E(K(i,r):wi)を送
信し、 管理者rは、送られてきた暗号文E(K(i,r):w
i)から計算機r内の鍵K(i,r)を用いてwiを復
号化し、データ更新のためのデータ更新コードC=(s
1,s2,…,sn)を作成し、更新データPと更新デ
ータ付加情報Sとデータ更新コードCを計算機jに入力
し、計算機jはデータ更新コードCの各識別情報につい
て正当性が確認されると、請求項2から請求項5のデー
タ検査・変更処理に優先して、更新データPに更新し、
さらに計算機rはPとSとCのそれぞれを計算機r内の
鍵K(r,j)を用いて暗号化した暗号文erjを他の
各計算機jに送信し、 各管理者jは、計算機rから送られてきた暗号文erj
から計算機j内の鍵K(r,j)を用いてPとSとCを
復号化し、PとSとCを計算機jに入力し、計算機jは
データ更新コードCの各識別情報について正当性が確認
されると、請求項2から請求項5のデータ検査・変更処
理に優先して、更新データPに更新することを特徴とす
る計算機ネットワークシステム。
8. The method according to any one of claims 2 to 5, wherein each computer is assigned a number from 1 to n as a method of updating the data possessed by each computer. Computer i and computer j (1 ≦ i, j ≦
n), the common key K (i, j) is shared in advance, and each computer i (1 ≦ i ≦ n) has an administrator i set, and the administrator i is unique. The administrator r who possesses the secret information si and instructs the data update using the computer r (1 ≦ r ≦ n) is the update data P and the data update additional information S.
The identification information w using the secret information sr for the data h (P, S) created from (update date and time, update data number, etc.)
r is created, and each of P, S, and wr is encrypted using the key K (r, i) in the computer r, and the ciphertext is sent to each computer i. The update data P and the data update additional information S are decrypted from the obtained ciphertext using the key K (r, i) in the computer i, and after checking S, the update data P and the update data additional information S are extracted. The identification information w is created for the created data h (P, S) by using the secret information si.
i is created, and wi is a common key K (i,
The ciphertext E (K (i, r): wi) encrypted by r) is transmitted, and the manager r sends the ciphertext E (K (i, r): w sent.
From i), wi is decrypted using the key K (i, r) in the computer r, and the data update code C = (s
, S2, ..., Sn), and inputs the update data P, the update data additional information S, and the data update code C to the computer j, and the computer j confirms the validity of each identification information of the data update code C. Then, prioritizing the data inspection / change processing of claims 2 to 5, the update data P is updated,
Further, the computer r transmits the ciphertext erj obtained by encrypting P, S, and C, respectively, using the key K (r, j) in the computer r, to each other computer j. Ciphertext sent from erj
To decrypt P, S and C using the key K (r, j) in the computer j, input P, S and C to the computer j, and the computer j validates each identification information of the data update code C. Is confirmed, the computer network system is updated with the update data P in preference to the data inspection / change processing of claims 2-5.
【請求項9】請求項1において、各計算機が所持する該
データを更新する方法として、 各計算機には1からnまでの番号が付けられており、任
意の相異なる2つの計算機iと計算機j(1≦i,j≦
n)との間では予め共通鍵K(i,j)を共有してお
り、 各計算機i(1≦i≦n)にはそれぞれ管理者iが設定
されており、管理者iはそれぞれ固有の秘密鍵diを所
持し、秘密鍵diに対応する公開鍵(ei,ni)を各
計算機は所持し、 計算機r(1≦r≦n)を使用するデータ更新を指示す
る管理者rは、更新データPとデータ更新付加情報S
(更新の日時や更新データ番号等)の連接データP‖S
のハッシュ値h(P‖S)に対して秘密鍵diを用い
て、 wr=exp(h(P‖S),dr) mod nr, にて識別情報wrを作成し、連接データP‖S‖wrを
計算機r内の鍵K(r,i)を用いて暗号化した暗号文
を他の各計算機iに送信し、 各管理者iは、該暗号文から計算機i内の鍵K(r,
i)を用いて更新データPとデータ更新付加情報Sと識
別情報wrを復号化し、Sを検査した後、更新データP
と更新データ付加情報Sの連接データP‖Sのハッシュ
値h(P‖S)に対して秘密鍵diを用いて識別情報w
iを、 wi=exp(h(P‖S),di) mod ni, にて作成し、wiを鍵K(i,r)で暗号化した暗号文
E(K(i,r):wi)を計算機rに送信し、 管理者rは送られてきた暗号文E(K(i,r):w
i)から計算機r内の鍵K(i,r)を用いてwiを復
号化し、データ更新のためのデータ更新コードC=(s
1,s2,…,sn)を作成し、更新データPとデータ
更新付加情報Sとデータ更新コードCを計算機rに入力
し、計算機rはデータ更新コードCの各識別情報wt
(1≦t≦n)について公開鍵(et,nt)を用い
て、 h(P‖S)≡exp(wt,et)(mod n
t), にてデータ更新コードCの正当性が確認されると、請求
項2から請求項5のデータ検査・変更処理に優先して、
更新データPに更新し、さらに計算機rはPとSとCの
それぞれを計算機r内の鍵K(r,j)を用いて暗号化
した暗号文E(K(r,j):P‖S‖C)を各計算機
jに送信し、 各管理者jは、計算機rから送られてきた暗号文E(K
(r,j):P‖S‖C)から計算機j内の鍵K(r,
j)を用いてPとSとCを復号化し、PとSとCを計算
機jに入力し、計算機jはデータ更新コードCの各識別
情報wt(1≦t≦n)について公開鍵(et,nt)
を用いて、 h(P‖S)≡exp(wt,et)(mod n
t), にてデータ更新コードCの正当性が確認されると、請求
項2から請求項5のデータ検査・変更処理に優先して、
更新データPに更新することを特徴とする計算機ネット
ワークシステム。ただし、ni=pi×qi(pi、q
iは素数),ei×di≡1(modNi)(Niはp
i−1とqi−1の最小公倍数)で、exp(a,x)
はaをx乗した値を表す。
9. The method according to claim 1, wherein each computer is numbered from 1 to n as a method of updating the data possessed by each computer, and two arbitrary computers i and j are different from each other. (1 ≦ i, j ≦
n), the common key K (i, j) is shared in advance, and each computer i (1 ≦ i ≦ n) has an administrator i set, and the administrator i is unique. Each computer possesses the private key di, each computer possesses the public key (ei, ni) corresponding to the private key di, and the administrator r who instructs the data update using the computer r (1 ≦ r ≦ n) Data P and data update additional information S
Concatenated data P‖S (update date and time, update data number, etc.)
Using the secret key di for the hash value h (P || S) of, the identification information wr is created with wr = exp (h (P | S), dr) mod nr, and the concatenated data P | S || The ciphertext obtained by encrypting wr using the key K (r, i) in the computer r is transmitted to each of the other computers i, and each manager i uses the key K (r,
i) is used to decode the update data P, the data update additional information S, and the identification information wr, and after checking S, the update data P
For the hash value h (P | S) of the concatenated data P || S of the update data additional information S and the identification information w using the secret key di.
A ciphertext E (K (i, r): wi) in which i is created with wi = exp (h (P | S), di) mod ni, and wi is encrypted with a key K (i, r). To the computer r, and the administrator r sends the ciphertext E (K (i, r): w
From i), wi is decrypted using the key K (i, r) in the computer r, and the data update code C = (s
, S2, ..., Sn), and inputs the update data P, the data update additional information S, and the data update code C to the computer r, and the computer r identifies each identification information wt of the data update code C.
For (1 ≦ t ≦ n), using the public key (et, nt), h (P∥S) ≡exp (wt, et) (mod n
When the validity of the data update code C is confirmed in t) and, the data inspection / change processing of claims 2 to 5 is given priority,
The updated data P is updated, and the computer r further encrypts each of P, S, and C using the key K (r, j) in the computer r to obtain a ciphertext E (K (r, j): P | S ‖C) is sent to each computer j, and each manager j sends the ciphertext E (K
(R, j): From key P (| S || C), the key K (r,
j) is used to decrypt P, S, and C, and P, S, and C are input to the computer j, and the computer j uses the public key (et) for each identification information wt (1 ≦ t ≦ n) of the data update code C. , Nt)
, H (P | S) ≡exp (wt, et) (mod n
When the validity of the data update code C is confirmed in t) and, the data inspection / change processing of claims 2 to 5 is given priority,
A computer network system characterized by updating to update data P. However, ni = pi × qi (pi, q
i is a prime number, ei × di≡1 (modNi) (Ni is p
i−1 and qi−1, the least common multiple), exp (a, x)
Represents the value of a raised to the power x.
【請求項10】請求項1において、 予め定められた値以上の負荷が計算機にかかる、また
は、計算機能の異常により計算処理に支障が生じた場
合、該計算機は他の各計算機に負荷分散を行うための信
号を送信し、 該負荷分散を行うための信号を受け取った各計算機は、
負荷分散を行う該計算機に対して自身の処理負荷を表す
情報を送信し、 負荷分散を行う該計算機は、送られてきた各計算機の該
負荷情報から各計算機へ分散させる負荷量を適当に算出
し、それに従って各計算機に負荷分散することを特徴と
する計算機ネットワークシステム。
10. The computer according to claim 1, wherein a load equal to or greater than a predetermined value is applied to the computer, or when the calculation processing is hindered due to an abnormality in the calculation function, the computer distributes the load to each of the other computers. Each computer that transmits a signal for performing the load and receives the signal for performing the load balancing is
Information indicating the processing load of the computer is transmitted to the load-balancing computer, and the load-balancing computer appropriately calculates the load amount to be distributed to each computer from the received load information of each computer. The computer network system is characterized in that the load is distributed to each computer accordingly.
【請求項11】請求項2において、 各計算機には1からnまでの番号が付けられており、あ
る計算機i(1≦i≦n)の機能が停止した場合、計算
機j=i−1(mod n)は計算機iが停止したこと
を認識すると、計算機iを切り離し、計算機i+1(m
od n)を計算機iとみなして、請求項2または請求
項3の方法により該データの比較・検査を行ない、請求
項4または請求項5の方法により該データの変更を行
い、請求項6〜9のいずれか方法により該データの更新
を行い、請求項10の方法により負荷分散を行うことを
特徴とする計算機ネットワークシステム。
11. The computer according to claim 2, wherein each computer is numbered from 1 to n, and when the function of a computer i (1 ≦ i ≦ n) is stopped, the computer j = i−1 ( When the mod n) recognizes that the computer i has stopped, it disconnects the computer i, and the computer i + 1 (m
od n) is regarded as the computer i, the data is compared / inspected by the method of claim 2 or 3, and the data is changed by the method of claim 4 or 5, A computer network system characterized in that the data is updated by any one of the methods 9 and the load is distributed by the method of claim 10.
【請求項12】請求項1において、 通信回線に接続された新たなる計算機が追加された場
合、請求項2から請求項10のいずれかにおいてnをn
+1とみなして、請求項2または請求項3の方法により
該データの比較・検査を行ない、請求項4または請求項
5の方法により該データの変更を行い、請求項6〜9の
いずれかの方法により該データの更新を行い、請求項1
0の方法により負荷分散を行うことを特徴とする計算機
ネットワークシステム。
12. In claim 1, when a new computer connected to a communication line is added, n is replaced by n in any one of claims 2 to 10.
It is considered as +1 and the data is compared / inspected by the method of claim 2 or 3, the data is changed by the method of claim 4 or 5, and the data is changed by any of the methods of claims 6-9. A method for updating the data according to claim 1,
A computer network system characterized by performing load distribution by the method 0.
JP8022782A 1996-02-08 1996-02-08 Computer network system Pending JPH09218851A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8022782A JPH09218851A (en) 1996-02-08 1996-02-08 Computer network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8022782A JPH09218851A (en) 1996-02-08 1996-02-08 Computer network system

Publications (1)

Publication Number Publication Date
JPH09218851A true JPH09218851A (en) 1997-08-19

Family

ID=12092252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8022782A Pending JPH09218851A (en) 1996-02-08 1996-02-08 Computer network system

Country Status (1)

Country Link
JP (1) JPH09218851A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082834A (en) * 2000-09-07 2002-03-22 Toshiba Corp Storage medium for history management, and ic card
JP2012115461A (en) * 2010-11-30 2012-06-21 Copcom Co Ltd Game program and game device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002082834A (en) * 2000-09-07 2002-03-22 Toshiba Corp Storage medium for history management, and ic card
JP2012115461A (en) * 2010-11-30 2012-06-21 Copcom Co Ltd Game program and game device

Similar Documents

Publication Publication Date Title
US6516413B1 (en) Apparatus and method for user authentication
US7051211B1 (en) Secure software distribution and installation
EP1485769B1 (en) A method and arrangement for protecting software
CN107742212B (en) Asset verification method, device and system based on block chain
US7644278B2 (en) Method for securely creating an endorsement certificate in an insecure environment
JP4061270B2 (en) Secure method and system for determining pricing and ensuring privacy
CN100458807C (en) Verifying binding of an initial trusted device to a secured processing system
US6647494B1 (en) System and method for checking authorization of remote configuration operations
RU2584500C2 (en) Cryptographic authentication and identification method with real-time encryption
CN111104691A (en) Sensitive information processing method and device, storage medium and equipment
CN1763684A (en) Method and system for backup and restore of a context encryption key
CN112565265B (en) Authentication method, authentication system and communication method between terminal devices of Internet of things
CN112332975A (en) Internet of things equipment secure communication method and system
CN111971929A (en) Secure distributed key management system
CN110708162B (en) Resource acquisition method and device, computer readable medium and electronic equipment
CN114662087B (en) Multi-terminal verification security chip firmware updating method and device
CN111160908A (en) Supply chain transaction privacy protection system and method based on block chain and related equipment
CN110866261A (en) Data processing method and device based on block chain and storage medium
CN111695097A (en) Login checking method and device and computer readable storage medium
CN106790045A (en) One kind is based on cloud environment distributed virtual machine broker architecture and data integrity support method
CN115242553B (en) Data exchange method and system supporting safe multi-party calculation
CN108550035B (en) Cross-border online banking transaction method and cross-border online banking system
CN114020705A (en) File processing method and device and storage medium
JP2003530739A (en) Network system
US20230107805A1 (en) Security System