Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6729283B2 - Data generation method, data generation system, and data generation program - Google Patents
[go: Go Back, main page]

JP6729283B2 - Data generation method, data generation system, and data generation program - Google Patents

Data generation method, data generation system, and data generation program Download PDF

Info

Publication number
JP6729283B2
JP6729283B2 JP2016204731A JP2016204731A JP6729283B2 JP 6729283 B2 JP6729283 B2 JP 6729283B2 JP 2016204731 A JP2016204731 A JP 2016204731A JP 2016204731 A JP2016204731 A JP 2016204731A JP 6729283 B2 JP6729283 B2 JP 6729283B2
Authority
JP
Japan
Prior art keywords
value
data
candidate
candidate values
values
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.)
Active
Application number
JP2016204731A
Other languages
Japanese (ja)
Other versions
JP2018066827A (en
Inventor
山本 博之
博之 山本
高田 俊之
俊之 高田
武晴 金子
武晴 金子
保利 鈴木
保利 鈴木
聡一郎 佐藤
聡一郎 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016204731A priority Critical patent/JP6729283B2/en
Publication of JP2018066827A publication Critical patent/JP2018066827A/en
Application granted granted Critical
Publication of JP6729283B2 publication Critical patent/JP6729283B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データ生成方法、データ生成システム、およびデータ生成プログラムに関する。 The present invention relates to a data generation method, a data generation system, and a data generation program.

従来、共通鍵や公開鍵といった暗号鍵を用いた暗号化方式を用いて、送信元が有する元データを暗号化した暗号化データを、受信先に送信する技術がある。関連する先行技術として、例えば、原稿の読み取りが開始されたことに応答して、リアルタイムクロックから秒数nを読み取り、上記原稿の先頭からnビット目の原画データを白黒反転させ、圧縮符号化および暗号処理を施した暗号化データを送出するものがある。また、デジタルコンテンツを所定の分割方法に基づき分割ファイルに分割し、それぞれ異なる格納場所に格納し、指示された格納場所から各分割ファイルを無認証でダウンロードし、所定の分割方法に基づく復元処理を行い、デジタルコンテンツを得る技術がある。また、通信を行う場合、まず平文のデータに対して自己相関性を低減させる処理を行い、その結果得られたデータである二次データに対して暗号化処理を行い、暗号化によって生成された暗号文を送信する技術がある。 Conventionally, there is a technique of transmitting encrypted data obtained by encrypting original data of a transmission source to a reception destination by using an encryption method using an encryption key such as a common key or a public key. As a related prior art, for example, in response to the start of reading an original, the number of seconds n is read from the real-time clock, the original image data of the n-th bit from the beginning of the original is black-white inverted, and compression encoding and Some send encrypted data that has been encrypted. In addition, the digital content is divided into divided files based on a predetermined dividing method, stored in different storage locations, each divided file is downloaded from the designated storage location without authentication, and restoration processing based on the predetermined dividing method is performed. There is a technology to do and obtain digital contents. When communicating, the plaintext data is first processed to reduce the autocorrelation, the resulting secondary data is encrypted, and the data generated is encrypted. There is a technology to send ciphertext.

特開平07−250252号公報JP, 07-250252, A 特開2005−099910号公報JP, 2005-099910, A 特開2007−193137号公報JP, 2007-193137, A

しかしながら、従来技術によれば、共通鍵や公開鍵といった暗号鍵を用いた暗号化方式を用いて、送信元が有する元データを暗号化した暗号化データを受信先に送信すると、その元データが漏洩することがある。例えば、復号鍵を知らない第三者であっても、解析に時間をかければ復号鍵を得ることができるため、得られた復号鍵によって暗号化データを復号し、元データを得ることができてしまう。 However, according to the conventional technique, when the encrypted data obtained by encrypting the original data of the transmission source is transmitted to the reception destination by using the encryption method using the encryption key such as the common key or the public key, the original data is May be leaked. For example, even a third party who does not know the decryption key can obtain the decryption key if analysis takes time, so the encrypted data can be decrypted with the obtained decryption key to obtain the original data. Will end up.

1つの側面では、本発明は、送信元が有する元データが漏洩することを抑制することができるデータ生成方法、データ生成システム、およびデータ生成プログラムを提供することを目的とする。 In one aspect, the present invention aims to provide a data generation method, a data generation system, and a data generation program capable of suppressing leakage of original data of a transmission source.

本発明の一側面によれば、元データを有する送信装置と、送信装置と接続する受信装置とを有するデータ生成システムであって、送信装置が、元データが示す値となり得る送信元の候補値の集合を参照して送信元の候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて、第1の値を生成し、生成した第1の値と元データが示す値との差分の大きさを示す差分情報を生成して、生成した差分情報を受信装置に送信し、第1の値と、生成した差分情報とに基づいて、送信元の候補値の集合を更新し、送信元の候補値の集合に含まれる候補値が1つに特定可能となるまで送信する処理を繰り返す、処理を実行し、受信装置が、差分情報を、送信装置から受信し、受信先の候補値の集合を参照して、所定のルールに基づいて、第1の値を生成し、生成した当該第1の値と、受信した差分情報とに基づいて、受信先の候補値の集合を更新し、受信先の候補値の集合に含まれる候補値が1つに特定可能となるまで受信先の候補値の集合を更新する処理を繰り返し、受信先の候補値の集合に含まれる候補値によって示されるデータを生成するデータ生成方法、データ生成システム、およびデータ生成プログラムが提案される。 According to one aspect of the present invention, there is provided a data generation system having a transmitting device having original data and a receiving device connected to the transmitting device, wherein the transmitting device can be a candidate value of a transmission source that can be a value indicated by the original data. Value is generated based on a predetermined rule for generating any value included in the set of transmission source candidate values with reference to the set of Difference information indicating the magnitude of the difference between the first and second values is transmitted to the reception device, and the set of candidate values of the transmission source is updated based on the first value and the generated difference information. Then, the process of transmitting is repeated until one candidate value included in the set of candidate values of the transmission source can be specified, the process is executed, and the reception device receives the difference information from the transmission device and the reception destination. A set of candidate values of the receiving end based on the generated first value and the received difference information with reference to the set of candidate values of Is repeated, and the process of updating the set of candidate values of the receiver is repeated until one candidate value included in the set of candidate values of the receiver can be specified, and the candidates included in the set of candidate value of the receiver are repeated. A data generation method, a data generation system, and a data generation program for generating data indicated by a value are proposed.

本発明の一態様によれば、送信元が有する元データが漏洩することを抑制することができるという効果を奏する。 According to one aspect of the present invention, it is possible to suppress the leakage of the original data of the transmission source.

図1は、本実施の形態にかかるデータ生成システム100の動作例を示す説明図である。FIG. 1 is an explanatory diagram showing an operation example of the data generation system 100 according to the present embodiment. 図2は、送信装置101と受信装置102とのハードウェア構成例を示す説明図である。FIG. 2 is an explanatory diagram showing a hardware configuration example of the transmission device 101 and the reception device 102. 図3は、送信装置101の機能構成例を示す説明図である。FIG. 3 is an explanatory diagram illustrating a functional configuration example of the transmission device 101. 図4は、受信装置102の機能構成例を示す説明図である。FIG. 4 is an explanatory diagram illustrating a functional configuration example of the receiving device 102. 図5は、実施例1における元データ生成例を示す説明図(その1)である。FIG. 5 is an explanatory diagram (part 1) illustrating an example of generating original data according to the first embodiment. 図6は、実施例1における元データ生成例を示す説明図(その2−1)である。FIG. 6 is an explanatory diagram (part 2-1) showing an example of generating original data according to the first embodiment. 図7は、実施例1における元データ生成例を示す説明図(その2−2)である。FIG. 7 is an explanatory diagram (part 2-2) showing an example of generating original data according to the first embodiment. 図8は、実施例2における元データ生成例を示す説明図(その1)である。FIG. 8 is an explanatory diagram (part 1) illustrating an example of generating original data according to the second embodiment. 図9は、実施例2における元データ生成例を示す説明図(その2)である。FIG. 9 is an explanatory diagram (part 2) of an example of generating original data according to the second embodiment. 図10は、送信装置101が記憶する情報の一例を示す説明図である。FIG. 10 is an explanatory diagram showing an example of information stored in the transmission device 101. 図11は、受信装置102が記憶する情報の一例を示す説明図である。FIG. 11 is an explanatory diagram showing an example of information stored in the receiving device 102. 図12は、過去のダンプファイルデータ1001の記憶内容の一例を示す説明図である。FIG. 12 is an explanatory diagram showing an example of the stored contents of the past dump file data 1001. 図13は、送信データ1002の記憶内容の一例を示す説明図である。FIG. 13 is an explanatory diagram showing an example of stored contents of the transmission data 1002. 図14は、受信データ1101の記憶内容の一例を示す説明図である。FIG. 14 is an explanatory diagram showing an example of stored contents of the received data 1101. 図15は、対象データsourceの記憶内容の一例を示す説明図である。FIG. 15 is an explanatory diagram showing an example of the stored contents of the target data source. 図16は、結果インデックス変換情報kekka2valueの記憶内容の一例を示す説明図である。FIG. 16 is an explanatory diagram showing an example of the stored contents of the result index conversion information kekka2value. 図17は、候補リストkouhoの記憶内容の一例を示す説明図である。FIG. 17 is an explanatory diagram showing an example of the stored contents of the candidate list kouho. 図18は、推測結果suisokuの記憶内容の一例を示す説明図である。FIG. 18 is an explanatory diagram showing an example of stored contents of the estimation result suisoku. 図19は、正誤情報kekkaの記憶内容の一例を示す説明図である。FIG. 19 is an explanatory diagram showing an example of the stored contents of the correctness information kekka. 図20は、過去データ抽出サンプルsampleの記憶内容の一例を示す説明図である。FIG. 20 is an explanatory diagram showing an example of the stored contents of the past data extraction sample sample. 図21は、開始インデックス情報value2startindexの記憶内容の一例を示す説明図である。FIG. 21 is an explanatory diagram showing an example of the stored contents of the start index information value2startindex. 図22は、終了インデックス情報value2endindexの記憶内容の一例を示す説明図である。FIG. 22 is an explanatory diagram showing an example of the stored contents of the end index information value2endindex. 図23は、同期式における元データ生成処理手順の一例を示すフローチャートである。FIG. 23 is a flowchart showing an example of the original data generation processing procedure in the synchronous method. 図24は、データ送受信処理手順の一例を示すフローチャートである。FIG. 24 is a flowchart showing an example of a data transmission/reception processing procedure. 図25は、非同期式における元データ生成処理手順の一例を示すフローチャートである。FIG. 25 is a flowchart showing an example of an original data generation processing procedure in the asynchronous method. 図26は、対象データ読込み処理手順の一例を示すフローチャートである。FIG. 26 is a flowchart showing an example of a target data reading processing procedure. 図27は、データ特性抽出処理手順の一例を示すフローチャートである。FIG. 27 is a flowchart showing an example of the data characteristic extraction processing procedure. 図28は、データ特性送信処理手順とデータ特性受信処理手順との一例を示すフローチャートである。FIG. 28 is a flowchart showing an example of a data characteristic transmission processing procedure and a data characteristic reception processing procedure. 図29は、推測関数によるデータ生成処理手順の一例を示すフローチャートである。FIG. 29 is a flowchart showing an example of the data generation processing procedure by the estimation function. 図30は、候補リスト作成処理手順の一例を示すフローチャートである。FIG. 30 is a flowchart showing an example of a candidate list creation processing procedure. 図31は、候補リストkouhoの記憶内容の変化の一例を示す説明図である。FIG. 31 is an explanatory diagram showing an example of changes in the storage contents of the candidate list kouho. 図32は、データ推測処理手順の一例を示すフローチャートである。FIG. 32 is a flowchart showing an example of the data estimation processing procedure. 図33は、正誤判定処理手順の一例を示すフローチャートである。FIG. 33 is a flowchart showing an example of the correctness determination processing procedure. 図34は、正誤結果送信処理手順の一例を示すフローチャートである。FIG. 34 is a flowchart showing an example of the procedure of the correct/wrong result transmission process. 図35は、正誤結果受信処理手順の一例を示すフローチャートである。FIG. 35 is a flowchart showing an example of the procedure of the correct/wrong result reception process. 図36は、生成データ保存処理手順の一例を示すフローチャートである。FIG. 36 is a flowchart showing an example of the generated data storage processing procedure. 図37は、送信元におけるデータ蓄積処理手順の一例を示すフローチャートである。FIG. 37 is a flowchart showing an example of a data storage processing procedure at the transmission source.

以下に図面を参照して、開示のデータ生成方法、データ生成システム、およびデータ生成プログラムの実施の形態を詳細に説明する。 Embodiments of the disclosed data generation method, data generation system, and data generation program will be described in detail below with reference to the drawings.

図1は、本実施の形態にかかるデータ生成システム100の動作例を示す説明図である。データ生成システム100は、送信元が有するデータを、受信先が生成するシステムである。送信元や受信先は、PC(Personal Computer)、サーバ、携帯端末等のコンピュータである。 FIG. 1 is an explanatory diagram showing an operation example of the data generation system 100 according to the present embodiment. The data generation system 100 is a system in which a reception destination generates data that a transmission source has. The transmission source and the reception destination are computers such as a PC (Personal Computer), a server, and a mobile terminal.

ここで、送信元から受信先へデータを送信する機会としては、送信元の物理メモリの内容全てをダンプデータとして出力し、受信先として製品サポートサービスに、ダンプデータを送信することがある。この場合、送信元に重大な障害が発生した場合、障害の原因を解析する目的で、ダンプファイルが送信されている。このダンプファイルには、送信元が物理メモリに保持していた全てのデータを含むため、パスワードや個人情報などの機密情報が含まれる。このため、送信中の情報漏洩を防ぐために、ダンプファイルの暗号化が行われる。暗号化の方法には、例えば、共通鍵や公開鍵等の鍵を用いた暗号化方式が挙げられる。 Here, as an opportunity to transmit data from the transmission source to the reception destination, there is a case where all the contents of the physical memory of the transmission source are output as dump data and the dump data is transmitted to the product support service as the reception destination. In this case, when a serious failure occurs in the transmission source, the dump file is sent for the purpose of analyzing the cause of the failure. Since this dump file includes all the data held in the physical memory by the sender, it contains confidential information such as passwords and personal information. Therefore, the dump file is encrypted in order to prevent information leakage during transmission. Examples of the encryption method include an encryption method using a key such as a common key or a public key.

しかしながら、共通鍵や公開鍵といった暗号鍵を用いた暗号化方式を用いて、送信元が有する元データを暗号化した暗号化データを受信先に送信すると、その元データが漏洩することがある。例えば、復号鍵を知らない第三者であっても、解析に時間をかければ復号鍵を得ることができるため、得られた復号鍵によって暗号化データを復号し、元データを得ることができてしまう。また、コンピュータの計算処理能力の向上によって、復号鍵の解析にかかる時間が短縮することにもなる。また、暗号化方法は、日々研究されているため、ある日その暗号化方法に対する解読方法が発見された結果、その暗号化方法の暗号強度が低下する恐れもある。 However, when the encrypted data obtained by encrypting the original data of the transmission source is transmitted to the reception destination by using the encryption method using the encryption key such as the common key or the public key, the original data may be leaked. For example, even a third party who does not know the decryption key can obtain the decryption key if analysis takes time, so the encrypted data can be decrypted with the obtained decryption key to obtain the original data. Will end up. In addition, the improvement of the calculation processing capability of the computer also shortens the time taken to analyze the decryption key. Further, since the encryption method is being researched every day, there is a possibility that the encryption strength of the encryption method will decrease as a result of the discovery of a decryption method for the encryption method one day.

また、過去データの特性に基づいて、受信先でデータを予測する方法も考えられるが、受信先で、送信元の現在のダンプデータを100%の精度で予測することは前述の方法ではできないことである。従って、障害の原因を解析する目的に対しては、前述の方法を採用することは不適当である。 A method of predicting the data at the receiver based on the characteristics of the past data is also conceivable, but it is not possible for the receiver to predict the current dump data of the sender with 100% accuracy. Is. Therefore, it is inappropriate to adopt the above method for the purpose of analyzing the cause of the failure.

そこで、本実施の形態では、受信先が、元データを持つ送信元と共通のルールから同一の推測値を生成し、送信元から得た推測値の正誤情報から元データを推測することを繰り返して元データを生成することについて説明する。 Therefore, in the present embodiment, the receiving destination repeatedly generates the same estimated value from the same rule as the transmission source having the original data and estimates the original data from the correctness information of the estimated value obtained from the transmission source. Generation of original data will be described.

図1を用いて、データ生成システム100の動作例について説明する。データ生成システム100は、送信元となる送信装置101と、受信先となる受信装置102とを有する。図1の例では、ダンプファイルの一部となる元データとして、1バイトのデータが示す値:36を送信することとする。ここで、元データが示す値は、元データを形成するビット列によって表現できる数値である。 An operation example of the data generation system 100 will be described with reference to FIG. The data generation system 100 includes a transmission device 101 that is a transmission source and a reception device 102 that is a reception destination. In the example of FIG. 1, it is assumed that the value: 36 indicated by 1-byte data is transmitted as the original data that is a part of the dump file. Here, the value indicated by the original data is a numerical value that can be represented by a bit string forming the original data.

一連の処理を説明すると、送信装置101は、受信装置102と共通のルールとなる所定のルールに基づいて生成された第1の値と元データが示す値との差分の大きさを示す差分情報を、受信装置102に送信する。ここで、所定のルールは、元データが示す値となり得る候補値の集合を参照して候補値の集合に含まれるいずれかの値を生成するルールである。一方、受信装置102は、差分情報を受信し、候補値の集合を参照して、所定のルールに基づいて、第1の値を生成する。次に、受信装置102は、生成した第1の値と、受信した差分情報とに基づいて、候補値の集合を更新する。そして、受信装置102は、候補値の集合に含まれる値が1つに特定可能となるまで候補値の集合を更新する処理を繰り返し、候補値の集合に含まれる第2の値によって示されるデータを生成する。 A series of processes will be described. The transmitting device 101 uses the difference information indicating the magnitude of the difference between the first value generated based on a predetermined rule that is a common rule with the receiving device 102 and the value indicated by the original data. Is transmitted to the receiving device 102. Here, the predetermined rule is a rule that refers to a set of candidate values that can be values indicated by the original data and generates any value included in the set of candidate values. On the other hand, the receiving device 102 receives the difference information, refers to the set of candidate values, and generates the first value based on a predetermined rule. Next, the receiving apparatus 102 updates the set of candidate values based on the generated first value and the received difference information. Then, the receiving apparatus 102 repeats the process of updating the set of candidate values until the values included in the set of candidate values can be identified as one, and the data indicated by the second value included in the set of candidate values is displayed. To generate.

ここで、候補値の集合の初期状態は、元データが示す値が取り得る値の集合である。また、候補値の集合は、送信装置101と受信装置102とがそれぞれで管理するものであり、送信装置101と受信装置102とは、同一内容の更新を、自身が管理する候補値の集合に対して行う。 Here, the initial state of the set of candidate values is a set of possible values for the values indicated by the original data. Further, the set of candidate values is managed by the transmitting apparatus 101 and the receiving apparatus 102 respectively, and the transmitting apparatus 101 and the receiving apparatus 102 update the same content into a set of candidate values managed by themselves. To do.

例えば、元データが1バイトのデータであれば、候補値の集合の初期状態は、0から255までの値の集合となる。この候補値の集合の初期状態は、送信装置101と受信装置102とで同一になる。また、元データが2バイトのデータであれば、候補値の集合の初期状態は、0から65535までの値の集合となる。また、元データが2バイト以上のデータについて、送信装置101と受信装置102とは、2バイト以上のデータの各バイトに対して、図1で示す処理を行ってもよい。 For example, if the original data is 1-byte data, the initial state of the set of candidate values is a set of values from 0 to 255. The initial state of the set of candidate values is the same in the transmitting device 101 and the receiving device 102. If the original data is 2-byte data, the initial state of the set of candidate values is a set of values from 0 to 65535. Further, with respect to data whose original data is 2 bytes or more, the transmitting device 101 and the receiving device 102 may perform the processing shown in FIG. 1 on each byte of the data having 2 bytes or more.

また、候補値の集合の管理方法としては、例えば、元データが示す値が取り得る値ごとに、その値が正解候補となるのか、または、誤りであると確定したかを管理してもよい。以下の例では、元データが示す値が取り得る値ごとの管理情報を、候補リストkouhoと称する。候補リストkouhoは、送信装置101と受信装置102とがそれぞれ有するが、図1では、受信装置102が有する候補リストkouhoを示す。 Further, as a method of managing the set of candidate values, for example, for each value that can be taken by the value represented by the original data, it may be managed whether the value becomes a correct answer candidate or is determined to be an error. .. In the following example, the management information for each value that the value represented by the original data can take is referred to as a candidate list kouho. Although the candidate list kouho is included in each of the transmission device 101 and the reception device 102, FIG. 1 illustrates the candidate list khouho included in the reception device 102.

所定のルールは、送信装置101と受信装置102とで共有する、候補値の集合に含まれる第1の値を生成するルールである。送信装置101と受信装置102とは、候補値の集合が同一であれば、所定のルールに基づいて、同一の値となる第1の値を生成することになる。そして、所定のルールは、元の値を推測するために用いるルールであり、生成される第1の値は、推測結果となる値である。以下、第1の値を「推測値」と呼称する。 The predetermined rule is a rule that is shared by the transmission device 101 and the reception device 102 and that generates the first value included in the set of candidate values. If the set of candidate values is the same, the transmitting device 101 and the receiving device 102 will generate a first value that is the same value based on a predetermined rule. Then, the predetermined rule is a rule used for estimating the original value, and the generated first value is a value that is the estimation result. Hereinafter, the first value will be referred to as an “estimated value”.

また、所定のルールは、1つでもよいし、複数あってもよいし、その複数の所定のルールのうち使用するルールを動的に変更してもよい。例えば、送信装置101は、複数の所定のルールのうちのいずれかの所定のルールを選択して推測値を生成し、生成した推測値から差分情報を生成し、差分情報と選択したいずれかの所定のルールを示す識別情報とを、受信装置102に送信してもよい。この場合、受信装置102は、受信した識別情報が示すいずれかの所定のルールに基づいて、推測値を生成する。また、送信装置101と受信装置102とは、推測値を生成する処理を何度か繰り返すことがあるが、繰り返しのたびに異なる所定のルールを選択してもよい。 Further, the predetermined rule may be one or plural, and the rule to be used among the plural predetermined rules may be dynamically changed. For example, the transmission device 101 selects any one of a plurality of predetermined rules to generate an estimated value, generates difference information from the generated estimated value, and selects any one of the selected difference information. The identification information indicating the predetermined rule may be transmitted to the receiving device 102. In this case, the receiving device 102 generates the estimated value based on any one of the predetermined rules indicated by the received identification information. In addition, the transmitting device 101 and the receiving device 102 may repeat the process of generating the estimated value several times, but a different predetermined rule may be selected each time the process is repeated.

また、所定のルールは、元データの特性によるものでもよい。例えば、送信装置101と受信装置102とが、送信装置101の過去のダンプデータを記憶するとする。この場合、所定のルールは、過去のダンプデータに基づく値が候補値の集合に含まれる場合、ダンプデータの特性として、その過去のダンプデータに基づく値を推測値として出力してもよい。過去のダンプデータに基づく値は、過去のダンプデータの値そのものでもよいし、過去のダンプデータの値が複数あるならば、過去のダンプデータの値の平均値、最小値、最大値等でもよい。また、過去のダンプデータの値が候補値の集合に含まれない場合、所定のルールは、候補値の集合に含まれるいずれかの値を推測値として出力する。 Further, the predetermined rule may be based on the characteristics of the original data. For example, it is assumed that the transmission device 101 and the reception device 102 store past dump data of the transmission device 101. In this case, the predetermined rule may output the value based on the past dump data as the estimated value as the characteristic of the dump data when the value based on the past dump data is included in the set of candidate values. The value based on the past dump data may be the value of the past dump data itself, or, if there are multiple values of the past dump data, the average value, the minimum value, the maximum value, etc. of the values of the past dump data. .. Further, when the value of the past dump data is not included in the set of candidate values, the predetermined rule outputs any value included in the set of candidate values as the estimated value.

差分情報は、推測値と元データが示す値との差分の大きさを示す。例えば、差分情報は、差分がないことを示す第1の識別情報、または、差分があることを示す第2の識別情報でもよい。または、差分情報は、第1の識別情報、または、推測値を基準として候補値の集合を複数の部分に分割した複数の部分集合のうちの元データが示す値が含まれる部分集合を示す識別情報でもよい。ここで、差分がないということは、推測値が正解だったことを意味し、差分があるということは、推測値が誤りだったことを意味する。従って、以降の説明では、差分情報を、「正誤情報」と称する。また、候補値の集合は、正解候補となる値の集合となる。図1の説明では、正誤情報は、正解を示す第1の識別情報として「0」、または、誤りを示す第2の識別情報として「1」の1ビットの情報であるとする。 The difference information indicates the magnitude of the difference between the estimated value and the value indicated by the original data. For example, the difference information may be the first identification information indicating that there is no difference or the second identification information indicating that there is a difference. Alternatively, the difference information is the identification information indicating the first identification information or the subset including the value indicated by the original data in the plurality of subsets obtained by dividing the set of candidate values into a plurality of portions based on the estimated value. It may be information. Here, the fact that there is no difference means that the guess value was correct, and the fact that there is a difference means that the guess value was incorrect. Therefore, in the following description, the difference information will be referred to as “correctness information”. The set of candidate values is a set of values that are correct candidates. In the description of FIG. 1, it is assumed that the correctness information is 1-bit information of “0” as the first identification information indicating the correct answer or “1” as the second identification information indicating the error.

図1の上部に示したデータ生成システム100では、送信装置101は、候補値の集合を参照して、所定のルールに基づいて推測値:10を生成する。図1の上部の状態では、候補値の集合は、初期状態であり、0〜255である。この推測値:10は誤りであるため、送信装置101は、「1」を有する正誤情報111を受信装置102に送信する。 In the data generation system 100 shown in the upper part of FIG. 1, the transmission device 101 refers to a set of candidate values and generates an estimated value: 10 based on a predetermined rule. In the upper state of FIG. 1, the set of candidate values is the initial state, which is 0 to 255. Since this estimated value: 10 is an error, the transmitting apparatus 101 transmits the correct/incorrect information 111 having “1” to the receiving apparatus 102.

そして、受信装置102は、図1の(1−1)で示すように、正誤情報111を送信装置101から受信する。また、受信装置102は、図1の(1−2)で示すように、候補値の集合を参照して、所定のルールに基づいて推測値:10を生成する。このように、本実施の形態では、1回以上推測値を生成し、元データが示す値を予測する。以下の記載では、推測値を生成した回数を用いて説明することがある。図1の上部に示したデータ生成システム100は、1回目の推測の状態を示す。 Then, the receiving device 102 receives the correctness information 111 from the transmitting device 101, as shown in (1-1) of FIG. 1. In addition, as illustrated in (1-2) of FIG. 1, the receiving device 102 refers to the set of candidate values and generates an estimated value: 10 based on a predetermined rule. As described above, in the present embodiment, the estimated value is generated one or more times and the value indicated by the original data is predicted. In the following description, the number of times the estimated value is generated may be used for description. The data generation system 100 shown in the upper part of FIG. 1 shows the state of the first guess.

そして、受信装置102は、図1の(1−3)で示すように、生成した推測値:10と、受信した正誤情報111とに基づいて、候補値の集合を更新する。図1の上段の例では、正誤情報111は、誤りを示す情報であるため、推測値:10が誤りであることを示す。従って、受信装置102は、図1の上段で示すように、候補値の集合を、推測値:10が含まれないように更新する。具体的には、受信装置102は、値:10を正解候補から除外するため、候補リストkouhoの値:10を、誤りであることを示す値に更新する。図1では、墨塗りにより正解候補から落としたことを模式的に表現する。なお、図1では図示していないが、送信装置101も、自身の候補リストkouhoの値:10を、誤りであることを示す値に更新する。 Then, as illustrated in (1-3) of FIG. 1, the receiving apparatus 102 updates the set of candidate values based on the generated estimated value: 10 and the received correctness information 111. In the example in the upper part of FIG. 1, since the correctness/incorrectness information 111 is information indicating an error, the estimated value: 10 indicates an error. Therefore, the receiver 102 updates the set of candidate values so that the estimated value: 10 is not included, as shown in the upper part of FIG. Specifically, the receiving apparatus 102 excludes the value :10 from the correct answer candidates, and therefore updates the value :10 in the candidate list kouho to a value indicating an error. In FIG. 1, the fact that the correct answer is dropped by the redaction is schematically expressed. Although not shown in FIG. 1, the transmission device 101 also updates the value: 10 of its own candidate list kouho to a value indicating an error.

図1の(1−3)の状態では、候補値の集合に含まれる値が1つに特定可能となっていないため、送信装置101と、受信装置102とは、再び推測値を生成し、候補値の集合を更新することになる。具体的には、図1の中段において、送信装置101は、更新された候補値の集合を参照して、所定のルールに基づいて、推測値:38を生成し、誤りを示す「1」を正誤情報112として受信装置102に送信する。 In the state (1-3) of FIG. 1, since the value included in the set of candidate values cannot be specified as one, the transmitting apparatus 101 and the receiving apparatus 102 generate the estimated value again, The set of candidate values will be updated. Specifically, in the middle part of FIG. 1, the transmission device 101 refers to the updated set of candidate values, generates an estimated value: 38 based on a predetermined rule, and outputs “1” indicating an error. The correctness information 112 is transmitted to the receiving device 102.

一方、受信装置102は、図1の(2−1)で示すように、正誤情報112を受信する。また、受信装置102は、図1の(2−2)で示すように、更新された候補値の集合を参照して、所定のルールに基づいて、推測値:38を生成する。そして、受信装置102は、図1の(2−3)で示すように、生成した推測値:38と、受信した正誤情報112とに基づいて、候補値の集合を更新する。図1の中段の例では、正誤情報112は、誤りを示す情報であるため、推測値:38が誤りであることを示す。従って、受信装置102は、図1の中段で示すように、候補値の集合を、推測値:38が含まれないように更新する。 On the other hand, the receiving apparatus 102 receives the correct/incorrect information 112, as shown in (2-1) of FIG. In addition, as illustrated in (2-2) of FIG. 1, the receiving device 102 refers to the updated set of candidate values and generates an estimated value: 38 based on a predetermined rule. Then, as illustrated in (2-3) of FIG. 1, the receiving apparatus 102 updates the set of candidate values based on the generated estimated value: 38 and the received correctness information 112. In the example in the middle part of FIG. 1, since the correctness/incorrectness information 112 is information indicating an error, the estimated value: 38 indicates an error. Therefore, the receiving device 102 updates the set of candidate values so that the estimated value: 38 is not included, as shown in the middle part of FIG. 1.

図1の(1−3)の状態では、候補値の集合に含まれる値が1つに特定可能となっていないため、送信装置101と、受信装置102とは、再び推測値を生成し、候補値の集合を更新することになる。具体的には、図1の下段において、送信装置101は、更新された候補値の集合を参照して、所定のルールに基づいて、推測値:36を生成し、正解を示す「0」を正誤情報113として受信装置102に送信する。 In the state (1-3) of FIG. 1, since the value included in the set of candidate values cannot be specified as one, the transmitting apparatus 101 and the receiving apparatus 102 generate the estimated value again, The set of candidate values will be updated. Specifically, in the lower part of FIG. 1, the transmission device 101 refers to the updated set of candidate values, generates an estimated value: 36 based on a predetermined rule, and sets “0” indicating the correct answer. The correctness information 113 is transmitted to the receiving device 102.

一方、受信装置102は、図1の(3−1)で示すように、正誤情報113を受信する。また、受信装置102は、図1の(3−2)で示すように、更新された候補値の集合を参照して、所定のルールに基づいて、推測値:36を生成する。そして、受信装置102は、生成した推測値:36と、受信した正誤情報113とに基づいて、候補値の集合を更新する。図1の下段の例では、正誤情報112は、正解を示す情報であるため、推測値:36が正解であることを示す。従って、受信装置102は、図1の(3−3)で示すように、推測値:36が正解であるとして、推測値:36によって示されるデータを、元データと一致するデータとして生成する。また、正誤情報として、正解を示す「0」を受信した場合、受信装置102は、正解となる値が判明するため、候補リストkouhoを更新しなくてもよい。 On the other hand, the receiving apparatus 102 receives the correct/wrong information 113, as shown in (3-1) of FIG. In addition, as illustrated in (3-2) of FIG. 1, the receiving device 102 refers to the updated set of candidate values and generates an estimated value: 36 based on a predetermined rule. Then, the receiving device 102 updates the set of candidate values based on the generated estimated value: 36 and the received correctness information 113. In the example in the lower part of FIG. 1, since the correctness information 112 is information indicating a correct answer, the estimated value: 36 indicates that the correct answer is correct. Therefore, as shown in (3-3) of FIG. 1, the receiving device 102 generates the data indicated by the estimated value: 36 as the data matching the original data, assuming that the estimated value: 36 is correct. In addition, when “0” indicating the correct answer is received as the correctness information, the receiving device 102 does not have to update the candidate list kouho because the value that is the correct answer is known.

また、図1では示していないが、誤りを示す「1」となる正誤情報を255回受信した場合、候補値の集合に含まれる候補値が1つに特定可能となる。この場合、受信装置102は、候補リストkouhoに含まれるただ1つの候補値によって示されるデータを、元データと一致するデータとして生成する。このように、データ生成システム100は、元データを送信しないため、通信傍受等による元データの漏洩を防ぐことができる。 Further, although not shown in FIG. 1, when correctness information indicating “1” indicating an error is received 255 times, it is possible to specify only one candidate value included in the set of candidate values. In this case, the receiving apparatus 102 generates the data indicated by only one candidate value included in the candidate list kouho as the data that matches the original data. As described above, the data generation system 100 does not transmit the original data, so that it is possible to prevent the leakage of the original data due to communication interception or the like.

また、図1の説明では、本実施の形態は、メモリをダンプしたダンプデータに適用することを説明したが、これに限られない。例えば、本実施の形態は、サーバをバックアップする際のバックアップデータを元データとすることもできるし、仮想マシンのマイグレーションを行う際のマイグレーションデータを元データとすることもできる。 Further, in the description of FIG. 1, the present embodiment has been described as being applied to the dump data obtained by dumping the memory, but the present invention is not limited to this. For example, in this embodiment, the backup data used when backing up the server can be used as the original data, and the migration data used when migrating the virtual machine can also be used as the original data.

次に、送信装置101と、受信装置102とのハードウェアについて、図2で説明する。 Next, the hardware of the transmission device 101 and the reception device 102 will be described with reference to FIG.

図2は、送信装置101と受信装置102とのハードウェア構成例を示す説明図である。また、図2で示すように、送信装置101と受信装置102とは、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等のネットワーク200で接続される。 FIG. 2 is an explanatory diagram showing a hardware configuration example of the transmission device 101 and the reception device 102. Further, as shown in FIG. 2, the transmission device 101 and the reception device 102 are connected via a network 200 such as the Internet, a LAN (Local Area Network), and a WAN (Wide Area Network).

送信装置101は、CPU(Central Processing Unit)201と、メモリ202と、ディスクドライブ203と、ディスク204と、通信装置205と、入力装置206と、出力装置207とを有する。また、CPU201〜ディスクドライブ203、通信装置205〜出力装置207は、バス210によってそれぞれ接続される。 The transmission device 101 includes a CPU (Central Processing Unit) 201, a memory 202, a disk drive 203, a disk 204, a communication device 205, an input device 206, and an output device 207. The CPU 201 to the disk drive 203 and the communication device 205 to the output device 207 are connected by a bus 210.

CPU201は、送信装置101の全体の制御を司る演算処理装置である。CPU201は、複数のコアを有するマルチコアプロセッサでもよい。メモリ202は、CPU201のワークエリアとして使用される揮発性メモリや、ブートプログラムなどのプログラムを記憶する不揮発性メモリである。揮発性メモリは、例えば、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)等がある。不揮発メモリには、例えば、NOR型のフラッシュメモリ等がある。 The CPU 201 is an arithmetic processing device that controls the entire transmission device 101. The CPU 201 may be a multi-core processor having a plurality of cores. The memory 202 is a volatile memory used as a work area of the CPU 201 or a non-volatile memory that stores a program such as a boot program. The volatile memory includes, for example, a DRAM (Dynamic Random Access Memory) and an SRAM (Static Random Access Memory). The non-volatile memory includes, for example, a NOR flash memory.

ディスクドライブ203は、CPU201の制御に従って、ディスク204に対するデータのリード/ライトを制御する制御装置である。例えば、ディスク204が、磁気ディスクであれば、磁気ディスクドライブである。また、ディスクドライブ203がソリッドステートドライブである場合、ディスク204には、半導体素子によって形成された半導体メモリ、いわゆる半導体ディスクを採用することができる。 The disk drive 203 is a control device that controls data read/write with respect to the disk 204 under the control of the CPU 201. For example, if the disk 204 is a magnetic disk, it is a magnetic disk drive. When the disk drive 203 is a solid state drive, the disk 204 may be a semiconductor memory formed of semiconductor elements, that is, a so-called semiconductor disk.

通信装置205は、ネットワーク200を介して受信装置102等の他の装置に接続される。そして、通信装置205は、ネットワーク200と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。通信装置205には、例えばモデムやLANアダプタなどを採用することができる。 The communication device 205 is connected to another device such as the receiving device 102 via the network 200. The communication device 205 administers an internal interface with the network 200 and controls the input/output of data from/to external devices. As the communication device 205, for example, a modem or a LAN adapter can be adopted.

入力装置206は、送信装置101に情報を入力する入力装置である。例えば、入力装置206は、マウスやキーボード等である。マウスは、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う装置である。キーボードは、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う装置である。 The input device 206 is an input device that inputs information to the transmission device 101. For example, the input device 206 is a mouse, a keyboard, or the like. The mouse is a device for moving a cursor, selecting a range, moving a window, and changing a size. The keyboard is a device that has keys for inputting characters, numbers, various instructions, etc., and inputs data.

出力装置207は、送信装置101から情報を出力する入力装置である。例えば、出力装置207は、ディスプレイ等である。ディスプレイは、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する装置である。ディスプレイには、例えば、CRT(Cathode Ray Tube)、TFT(Thin Film Transistor)液晶ディスプレイ、プラズマディスプレイなどを採用することができる。 The output device 207 is an input device that outputs information from the transmission device 101. For example, the output device 207 is a display or the like. The display is a device that displays data such as a document, an image, and functional information in addition to a cursor, an icon, or a tool box. As the display, for example, a CRT (Cathode Ray Tube), a TFT (Thin Film Transistor) liquid crystal display, a plasma display or the like can be adopted.

受信装置102は、CPU251と、メモリ252と、ディスクドライブ253と、ディスク254と、通信装置255と、入力装置256と、出力装置257とを有する。また、CPU251〜ディスクドライブ253、通信装置255〜出力装置257は、バス260によってそれぞれ接続される。CPU251〜出力装置257については、CPU201〜出力装置207の説明において、送信装置101から受信装置102に置き換えるだけであるため、説明を省略する。 The receiving device 102 has a CPU 251, a memory 252, a disk drive 253, a disk 254, a communication device 255, an input device 256, and an output device 257. The CPU 251 to the disk drive 253 and the communication device 255 to the output device 257 are connected by a bus 260. Regarding the CPU 251 to the output device 257, in the description of the CPU 201 to the output device 207, only the transmission device 101 is replaced with the reception device 102, and therefore the description is omitted.

(送信装置101の機能構成例)
図3は、送信装置101の機能構成例を示す説明図である。送信装置101の機能構成例を示すブロック図である。送信装置101は、制御部300を有する。制御部300は、推測値生成部301と、正誤情報生成部302と、送信部303と、更新部304と、を含む。制御部300は、記憶装置に記憶されたプログラムをCPU201が実行することにより、各部の機能を実現する。記憶装置とは、具体的には、例えば、図2に示したメモリ202、ディスク204などである。また、各部の処理結果は、メモリ202や、CPU201のレジスタ、CPU201のキャッシュメモリ等に格納される。
(Example of functional configuration of transmitting device 101)
FIG. 3 is an explanatory diagram illustrating a functional configuration example of the transmission device 101. 3 is a block diagram showing a functional configuration example of a transmission device 101. FIG. The transmission device 101 has a control unit 300. The control unit 300 includes an estimated value generation unit 301, a correctness information generation unit 302, a transmission unit 303, and an update unit 304. The control unit 300 realizes the function of each unit by the CPU 201 executing the program stored in the storage device. The storage device is, for example, the memory 202 or the disk 204 shown in FIG. The processing result of each unit is stored in the memory 202, the register of the CPU 201, the cache memory of the CPU 201, or the like.

また、送信装置101は、対象データsource、候補リストkouhoにアクセス可能である。送信装置101が有する候補リストkouhoは、送信元の候補値の集合を管理する。また、送信装置101は、対象データsource、候補リストkouho以外のデータも記憶する。送信装置101のより具体的な記憶内容の一例については、図10で説明する。 Further, the transmission device 101 can access the target data source and the candidate list kouho. The candidate list kouho included in the transmission device 101 manages a set of candidate values of the transmission source. The transmission device 101 also stores data other than the target data source and the candidate list kouho. An example of a more specific storage content of the transmission device 101 will be described with reference to FIG.

推測値生成部301は、送信装置101が有する候補リストkouhoを参照して送信元の候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて、推測値を生成する。 The estimated value generation unit 301 generates an estimated value based on a predetermined rule that refers to the candidate list kouho included in the transmission device 101 and generates any value included in a set of transmission source candidate values.

正誤情報生成部302は、推測値生成部301が生成した推測値と元データが示す値とに基づいて、正誤情報を生成する。正誤情報は、図1で示したように、正解を示す第1の識別情報、または、誤りを示す第2の識別情報であってもよい。または、正誤情報は、第1の識別情報、または、推測値を基準として候補値の集合を複数の部分に分割した複数の部分集合のうちの元データが示す値が含まれる部分集合を示す識別情報でもよい。候補値の集合の分割の仕方については、均等に分割してもよいし、不均等に分割してもよいが、均等に分割することが好ましい。また、分割する数は、2以上の整数ならばどのような値でもよい。ただし、正誤情報を表現するビット数を考慮すると、正誤情報を表現するビット数がxであれば、2^x−1分割することが好ましい。例えば、x=2であれば、3分割することが好ましい。また、推測値を基準とするとは、例えば、推測値を基点として候補値の集合を複数の部分集合に分割することである。例えば、1つ目の部分集合の先頭が、推測値+1となるようにしてもよい。 The correct/incorrect information generation unit 302 generates correct/incorrect information based on the estimated value generated by the estimated value generation unit 301 and the value indicated by the original data. The correctness information may be the first identification information indicating a correct answer or the second identification information indicating an error, as shown in FIG. Alternatively, the correctness information is the first identification information or the identification indicating a subset including a value indicated by the original data among a plurality of subsets obtained by dividing the set of candidate values into a plurality of portions based on the estimated value. It may be information. The method of dividing the set of candidate values may be divided equally or may be divided unevenly, but it is preferable to divide the set. The number of divisions may be any value as long as it is an integer of 2 or more. However, considering the number of bits expressing correctness information, if the number of bits expressing correctness information is x, it is preferable to divide into 2^x-1. For example, if x=2, it is preferable to divide into three. Further, using the estimated value as a reference means, for example, dividing the set of candidate values into a plurality of subsets with the estimated value as a base point. For example, the beginning of the first subset may be the estimated value +1.

また、正誤情報を表現するビット数は可変でもよい。例えば、1回目の推測では、正誤情報を表現するビット数が3ビットであり、候補値の集合を2^3−1=7分割し、2回目の推測では、正誤情報を表現するビット数が2ビットであり、候補値の集合を3分割するとしてもよい。正誤情報となる識別情報が何を示すか、また、候補値の集合の分割の仕方についても、候補値の集合、および所定のルールと同様に、送信装置101と受信装置102とで同一の方法を用いる。 Further, the number of bits expressing the correctness information may be variable. For example, in the first guess, the number of bits expressing correctness information is 3 bits, the set of candidate values is divided into 2^3-1=7, and in the second guess, the number of bits expressing correctness information is It may be 2 bits and the set of candidate values may be divided into three. As for what the identification information serving as the correctness information indicates and how to divide the set of candidate values, the same method is used for the transmitting device 101 and the receiving device 102, similarly to the set of candidate values and the predetermined rule. To use.

ここで、部分集合を示す識別情報についての具体例について説明する。例えば、候補値の集合が0〜255であり、推測値が10であり、複数の部分集合は、候補値の集合を3つに均等に分割するとする。従って、元データが示す値が10である場合、正誤情報は、第1の識別情報となる。また、元データが示す値が0〜9、11〜255のいずれかである場合、次に示す3つの部分集合のうちのいずれかの部分集合を示す識別情報となる。そして、正誤情報が、1つ目の部分集合を示す識別情報となる場合とは、元データが示す値が、10+1から10+255/3=10+85=95までのいずれかの値となる場合である。また、2つ目の部分集合は、元データが示す値が、10+85+1=96から10+255×2/3=10+170までのいずれかの値となる場合である。また、3つ目の部分集合は、元データが示す値が、10+170+1=181から10+255=265までのいずれかの値となるが、265は候補値の集合の最大値255を超えている。このように、部分集合の最大値が候補値の集合を超えた場合、候補値の集合の最小値から、超えた数分までの数を、その部分集合に含めればよい。従って、3つ目の部分集合は、元データが示す値が、181から255まで、または0から9までのいずれかの値となる場合である。 Here, a specific example of the identification information indicating the subset will be described. For example, it is assumed that the set of candidate values is 0 to 255, the estimated value is 10, and the plurality of subsets equally divides the set of candidate values into three. Therefore, when the value indicated by the original data is 10, the correctness information is the first identification information. When the value indicated by the original data is any of 0 to 9 and 11 to 255, the identification information indicates any one of the following three subsets. The case where the correctness information is the identification information indicating the first subset is the case where the value indicated by the original data is any value from 10+1 to 10+255/3=10+85=95. The second subset is a case where the value indicated by the original data is any value from 10+85+1=96 to 10+255×2/3=10+170. In the third subset, the value indicated by the original data is any value from 10+170+1=181 to 10+255=265, but 265 exceeds the maximum value 255 of the set of candidate values. In this way, when the maximum value of the subset exceeds the set of candidate values, the number from the minimum value of the set of candidate values up to several minutes after that may be included in the subset. Therefore, the third subset is a case where the value indicated by the original data is any value from 181 to 255 or from 0 to 9.

送信部303は、正誤情報生成部302が生成した正誤情報を受信装置102に送信する。 The transmitting unit 303 transmits the correct/wrong information generated by the correct/wrong information generating unit 302 to the receiving apparatus 102.

更新部304は、推測値生成部301が生成した推測値と、正誤情報生成部302が生成した差分情報とに基づいて、送信装置101が有する候補リストkouhoを更新する。候補リストkouhoの更新例については、図4〜図9等で説明する。 The update unit 304 updates the candidate list kouho included in the transmission device 101 based on the estimated value generated by the estimated value generation unit 301 and the difference information generated by the correctness information generation unit 302. An example of updating the candidate list kouho will be described with reference to FIGS.

制御部300は、送信装置101が有する候補リストkouhoに含まれる候補値が1つに特定可能となるまで、送信部303による正誤情報を送信する処理を繰り返す。 The control unit 300 repeats the process of transmitting the correct/wrong information by the transmission unit 303 until it is possible to identify one candidate value included in the candidate list kouho included in the transmission device 101.

(受信装置102の機能構成例)
図4は、受信装置102の機能構成例を示す説明図である。受信装置102の機能構成例を示すブロック図である。受信装置102は、制御部400を有する。制御部400は、受信部401と、推測値生成部402と、更新部403と、元データ生成部404と、を含む。制御部400は、記憶装置に記憶されたプログラムをCPU251が実行することにより、各部の機能を実現する。記憶装置とは、具体的には、例えば、図2に示したメモリ252、ディスク254などである。また、各部の処理結果は、メモリ252や、CPU251のレジスタ、CPU251のキャッシュメモリ等に格納される。
(Example of functional configuration of receiving device 102)
FIG. 4 is an explanatory diagram illustrating a functional configuration example of the receiving device 102. 3 is a block diagram showing an example of a functional configuration of a receiving device 102. The receiving device 102 has a control unit 400. The control unit 400 includes a reception unit 401, an estimated value generation unit 402, an update unit 403, and an original data generation unit 404. The control unit 400 realizes the function of each unit by the CPU 251 executing the program stored in the storage device. The storage device is, for example, the memory 252 or the disk 254 shown in FIG. The processing result of each unit is stored in the memory 252, the register of the CPU 251, the cache memory of the CPU 251, or the like.

また、受信装置102は、候補リストkouhoにアクセス可能である。受信装置102が有する候補リストkouhoは、受信先の候補値の集合を管理する。また、受信装置102は、候補リストkouho以外のデータも記憶する。受信装置102のより具体的な記憶内容の一例については、図11で説明する。 In addition, the receiving apparatus 102 can access the candidate list kouho. The candidate list kouho included in the reception device 102 manages a set of candidate values of the reception destination. In addition, the receiving device 102 also stores data other than the candidate list kouho. An example of a more specific storage content of the receiving device 102 will be described with reference to FIG.

受信部401は、正誤情報を送信装置101から受信する。 The reception unit 401 receives correctness information from the transmission device 101.

推測値生成部402は、受信装置102が有する候補リストkouhoを参照して送信元の候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて、推測値を生成する。 The estimated value generation unit 402 generates an estimated value based on a predetermined rule for generating any value included in the set of candidate values of the transmission source with reference to the candidate list kouho included in the reception device 102.

更新部403は、推測値生成部402が生成した推測値と、受信部401が受信した差分情報とに基づいて、受信装置102が有する候補リストkouhoを更新する。また、更新部403は、受信装置102が有する候補リストkouhoに含まれる候補値が1つに特定可能となるまで、受信装置102が有する候補リストkouhoを更新する処理を繰り返す。 The updating unit 403 updates the candidate list kouho included in the receiving apparatus 102 based on the estimated value generated by the estimated value generating unit 402 and the difference information received by the receiving unit 401. In addition, the updating unit 403 repeats the process of updating the candidate list khouho included in the receiving device 102 until it is possible to specify one candidate value included in the candidate list kouho included in the receiving device 102.

例えば、正誤情報が誤りであることを示す第2の識別情報である場合、更新部403は、推測値が候補値の集合に含まれないように、受信装置102が有する候補リストkouhoを更新する。 For example, when the correctness information is the second identification information indicating an error, the updating unit 403 updates the candidate list kouho included in the receiving apparatus 102 so that the estimated value is not included in the set of candidate values. ..

また、正誤情報が、送信装置101の候補値の集合を、推測値を基準として複数の部分に分割した複数の部分集合のいずれかの部分集合を示す識別情報であるとする。この場合、更新部403は、受信装置102の候補値の集合を、推測値を基準として複数の部分に分割した複数の部分集合のうち、正誤情報が示すいずれかの部分集合に対応する部分集合を、候補値の集合として更新する。ここで、送信装置101の複数の部分集合の各部分集合の識別情報と、受信装置102の複数の部分集合の各部分集合の識別情報とは、同一の値になるとする。従って、正誤情報が示すいずれかの部分集合に対応する部分集合は、同一の識別情報で示される部分集合となる。 Further, it is assumed that the correctness information is identification information indicating any one of a plurality of subsets obtained by dividing the set of candidate values of the transmitting device 101 into a plurality of portions based on the estimated value. In this case, the updating unit 403 divides the set of candidate values of the receiving device 102 into a plurality of parts based on the estimated value, and corresponds to any one of the subsets indicated by the correctness information. Is updated as a set of candidate values. Here, it is assumed that the identification information of each subset of the plurality of subsets of the transmitting apparatus 101 and the identification information of each subset of the plurality of subsets of the receiving apparatus 102 have the same value. Therefore, the subset corresponding to any of the subsets indicated by the correctness information is the subset indicated by the same identification information.

例えば、図3で説明した、候補値の集合が0〜255であり、推測値が10であり、1つ目の部分集合が11から95までとなり、2つ目の部分集合が96から170までとなり、3つ目の部分集合が171から255、0から9までとなるとする。そして、第1の識別情報が「0」、1つ目〜3つ目のそれぞれの部分集合を示す識別情報が、「1]〜「3」であるとする。ここで、正誤情報が「1」である場合、更新部403は、候補値の集合が、11から95までとなるように、受信装置102が有する候補リストkouhoを更新する。 For example, the set of candidate values described in FIG. 3 is 0 to 255, the estimated value is 10, the first subset is 11 to 95, and the second subset is 96 to 170. Then, the third subset is 171 to 255 and 0 to 9. Then, it is assumed that the first identification information is "0", and the identification information indicating each of the first to third subsets is "1" to "3". Here, when the correctness information is “1”, the updating unit 403 updates the candidate list kouho included in the receiving device 102 so that the set of candidate values is 11 to 95.

元データ生成部404は、受信装置102が有する候補リストkouhoに含まれる候補値によって示されるデータを生成する。生成されるデータは、元データと同一のデータとなる。例えば、正誤情報が正解であることを示す第1の識別情報である場合、更新部403による更新を行わず、元データ生成部404が、推測値によって示されるデータを生成してもよい。また、正誤情報が正解であることを示す第1の識別情報である場合に、更新部403は、受信装置102が有する候補リストkouhoの更新を行ってもよい。 The original data generation unit 404 generates data indicated by the candidate values included in the candidate list kouho included in the reception device 102. The generated data is the same as the original data. For example, when the correctness information is the first identification information indicating that it is the correct answer, the original data generation unit 404 may generate the data indicated by the estimated value without performing the update by the update unit 403. Moreover, when the correctness information is the first identification information indicating that the answer is correct, the updating unit 403 may update the candidate list kouho included in the receiving device 102.

(実施例1)
実施例1では、正誤情報として正解を示す「0」、または誤りを示す「1」を取り得る1ビットの情報を送信する方法である。実施例1における元データ生成の一例について、図5〜図7を用いて説明する。図5〜図7で示すデータ生成システム100は、1バイト分のデータの推測を繰り返して、元データと同一のデータを生成する。ここで、図5〜図7における元データは、値:36であるとする。また、データサイズがnバイトの場合、図5〜図7の処理と同様の処理をn回繰り返せばよい。
(Example 1)
The first embodiment is a method of transmitting 1-bit information that can take “0” indicating a correct answer or “1” indicating an error as the correctness information. An example of the original data generation in the first embodiment will be described with reference to FIGS. The data generation system 100 shown in FIGS. 5 to 7 repeats the estimation of 1-byte data to generate the same data as the original data. Here, it is assumed that the original data in FIGS. 5 to 7 is the value: 36. When the data size is n bytes, the same processing as that shown in FIGS. 5 to 7 may be repeated n times.

図5は、実施例1における元データ生成例を示す説明図(その1)である。1回目の推測として、送信装置101は、図5の(S1−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:10を得る。推測値:10は誤りであるため、送信装置101は、図5の(S1−2)で示すように、正誤情報として「1」を受信装置102に送信する。一方、受信装置102は、図5の(D1)で示すように、推測関数によるデータ生成処理を実行し、推測値:10を得る。そして、受信装置102は、送信装置101から正誤情報として「1」を受け取り、推測値:10が誤りであると判断する。 FIG. 5 is an explanatory diagram (part 1) illustrating an example of generating original data according to the first embodiment. As the first guess, the transmitting apparatus 101 executes the data generation process by the guess function as shown in (S1-1) of FIG. 5 and obtains a guess value: 10. Since the estimated value: 10 is an error, the transmission device 101 transmits “1” to the reception device 102 as correctness information, as shown in (S1-2) of FIG. On the other hand, the receiving device 102 executes the data generation process by the estimation function to obtain the estimated value: 10 as shown in (D1) of FIG. Then, the receiving device 102 receives “1” as correctness information from the transmitting device 101, and determines that the estimated value: 10 is an error.

送信装置101と受信装置102とは、推測値:10が誤りであったため、候補リストkouhoから、推測値:10を正解候補から除外する。図5〜図9では、墨塗りにより正解候補から落としたことを模式的に表現する。 Since the estimated value :10 was incorrect in the transmitting device 101 and the receiving device 102, the estimated value :10 is excluded from the correct answer candidates from the candidate list kouho. 5 to 9 schematically represent that the correct answer candidates have been dropped by redacting.

そして、2回目の推測として、送信装置101は、図5の(S2−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:38を得る。推測値:38は誤りであるため、送信装置101は、図5の(S2−2)で示すように、正誤情報として「1」を受信装置102に送信する。一方、受信装置102は、図5の(D2)で示すように、推測関数によるデータ生成処理を実行し、推測値:38を得る。そして、受信装置102は、送信装置101から正誤情報として「1」を受け取り、推測値:38が誤りであると判断する。 Then, as the second estimation, the transmission device 101 executes the data generation process by the estimation function as shown in (S2-1) of FIG. 5, and obtains the estimated value: 38. Since the estimated value: 38 is an error, the transmitting apparatus 101 transmits “1” to the receiving apparatus 102 as correctness information, as shown in (S2-2) of FIG. On the other hand, the receiving device 102 executes the data generation process by the estimation function to obtain the estimated value: 38, as shown in (D2) of FIG. Then, the receiving apparatus 102 receives “1” as correctness information from the transmitting apparatus 101, and determines that the estimated value: 38 is incorrect.

送信装置101と受信装置102とは、推測値:38が誤りであったため、候補リストkouhoから、推測値:38を正解候補から除外する。 Since the estimated value: 38 is incorrect in the transmitting device 101 and the receiving device 102, the estimated value: 38 is excluded from the correct answer candidates from the candidate list kouho.

以下、3回目の推測も2回目の推測と同様に、送信装置101は、図5の(S3−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:3を得る。そして、推測値:3は誤りであるため、送信装置101は、図5の(S3−2)で示すように、正誤情報として「1」を受信装置102に送信する。一方、受信装置102は、図5の(D3)で示すように、推測関数によるデータ生成処理を実行し、推測値:3を得る。そして、受信装置102は、送信装置101から正誤情報として「1」を受け取り、推測値:3が誤りであると判断する。 Similarly to the second guess, the transmitting device 101 executes the data generation process by the guess function as shown in (S3-1) of FIG. 5 to obtain the guess value: 3 as in the second guess. Then, since the estimated value: 3 is an error, the transmitting apparatus 101 transmits “1” to the receiving apparatus 102 as correctness information, as shown in (S3-2) of FIG. On the other hand, the receiving device 102 executes the data generation process by the estimation function to obtain the estimated value: 3 as shown in (D3) of FIG. Then, the receiving device 102 receives “1” as correctness information from the transmitting device 101, and determines that the estimated value: 3 is an error.

図6は、実施例1における元データ生成例を示す説明図(その2−1)である。図6では、9回の推測を繰り返し、10回目の推測で正解する例を示す。送信装置101は、図6の(S10−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:36を得る。そして、推測値:36は正解であるため、送信装置101は、図6の(S10−2)で示すように、正誤情報として「0」を受信装置102に送信する。一方、受信装置102は、図6の(D10)で示すように、推測関数によるデータ生成処理を実行し、推測値:36を得る。そして、受信装置102は、送信装置101から正誤情報として「0」を受け取り、推測値:36が正解であると判断する。これにより、受信装置102は、元データが値:36であることを特定することができる。 FIG. 6 is an explanatory diagram (part 2-1) showing an example of generating original data according to the first embodiment. FIG. 6 shows an example in which the guess is repeated nine times and the correct answer is made in the tenth guess. The transmission apparatus 101 executes the data generation process by the estimation function as shown in (S10-1) of FIG. 6 and obtains the estimated value: 36. Then, since the estimated value: 36 is the correct answer, the transmitting apparatus 101 transmits “0” to the receiving apparatus 102 as correctness information, as shown in (S10-2) of FIG. On the other hand, the receiving device 102 executes the data generation process by the estimation function to obtain the estimated value: 36, as shown in (D10) of FIG. Then, the receiving device 102 receives “0” as correctness information from the transmitting device 101, and determines that the estimated value: 36 is the correct answer. Thereby, the receiving apparatus 102 can specify that the original data is the value: 36.

図7は、実施例1における元データ生成例を示す説明図(その2−2)である。図7では、255回の推測を繰り返し、全て誤りとなる例を示す。送信装置101は、図7の(S255−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:8を得る。そして、推測値:8は誤りであるため、送信装置101は、図7の(S255−2)で示すように、正誤情報として「1」を受信装置102に送信する。一方、受信装置102は、図7の(D255)で示すように、推測関数によるデータ生成処理を実行し、推測値:8を得る。そして、受信装置102は、送信装置101から正誤情報として「1」を受け取り、推測値:8が誤りであると判断する。この時点で、候補リストkouhoを参照すると、正解か誤りかが明らかとなっていない値が36だけであることが特定できるため、受信装置102は、残っている推測値:36が正解であると判断する。このように、受信装置102は、元データが推測値:36であることを特定することができる。 FIG. 7 is an explanatory diagram (part 2-2) showing an example of generating original data according to the first embodiment. FIG. 7 shows an example in which the estimation is repeated 255 times and all are incorrect. The transmission device 101 executes the data generation process by the estimation function to obtain the estimated value: 8 as shown in (S255-1) of FIG. 7. Then, since the estimated value: 8 is an error, the transmitting apparatus 101 transmits “1” to the receiving apparatus 102 as correctness information, as shown in (S255-2) of FIG. On the other hand, the receiving device 102 executes the data generation process by the estimation function, as shown in (D255) of FIG. 7, and obtains the estimated value: 8. Then, the receiving device 102 receives “1” as correctness information from the transmitting device 101, and determines that the estimated value: 8 is an error. At this point, by referring to the candidate list kouho, it is possible to specify that only 36 values are not clear as to whether the answer is correct or incorrect. Therefore, the receiving apparatus 102 determines that the remaining estimated value: 36 is correct. to decide. In this way, the receiving apparatus 102 can specify that the original data is the estimated value: 36.

(実施例2)
実施例2では、正誤情報として正解を示す「0」、または正解が候補値の集合内にあることを示す「1」〜「3」を取り得る2ビットの情報を送信する方法である。ここで、「1」〜「3」のそれぞれにおける候補値の集合は、1回目の推測では、候補値の集合全体を3分割したそれぞれの部分集合である。そして、2以上の整数となるi回目の推測では、「1」〜「3」のそれぞれにおける候補値の集合は、i−1回目の推測で候補値の集合を3分割したそれぞれの部分集合である。また、実施例2では、多くとも5回の推測で正解の値を得ることができる。
(Example 2)
The second embodiment is a method of transmitting 2-bit information that can take “0” indicating a correct answer as correctness information or “1” to “3” indicating that the correct answer is within the set of candidate values. Here, the set of candidate values in each of “1” to “3” is each subset obtained by dividing the entire set of candidate values into three in the first estimation. Then, in the i-th estimation that is an integer of 2 or more, the set of candidate values in each of “1” to “3” is a subset obtained by dividing the set of candidate values into three in the i−1-th estimation. is there. In the second embodiment, the correct value can be obtained by guessing at most 5 times.

実施例2における元データ生成の一例について、図8、図9を用いて説明する。図8、図9で示すデータ生成システム100は、1バイト分のデータの推測を繰り返して、元データと同一のデータを生成する。ここで、図8、図9における元データは、値:36であるとする。また、データサイズがnバイトの場合、図8、図9の処理と同様の処理をn回繰り返せばよい。 An example of original data generation in the second embodiment will be described with reference to FIGS. 8 and 9. The data generation system 100 shown in FIG. 8 and FIG. 9 repeats the estimation of 1-byte data to generate the same data as the original data. Here, it is assumed that the original data in FIGS. 8 and 9 has a value of 36. Further, when the data size is n bytes, the same processing as the processing in FIGS. 8 and 9 may be repeated n times.

図8は、実施例2における元データ生成例を示す説明図(その1)である。1回目の推測として、送信装置101は、図8の(S1−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:10を得る。推測値:10は誤りであるため、送信装置101は、図8の(S1−2)で示すように、候補値の集合のうち、誤りである推測値:10を除いた10+1〜10+255を3分割し、分割したそれぞれの部分集合を正誤情報の「1」〜「3」に割り当てる。ここで、10+255は、候補値の集合の最大値である255を超えるが、この場合、超えた分の数10を、候補値の集合の最小値である0から数えると、9となる。 FIG. 8 is an explanatory diagram (part 1) illustrating an example of generating original data according to the second embodiment. As the first guess, the transmission apparatus 101 executes a data generation process using a guess function as shown in (S1-1) of FIG. 8 and obtains a guess value: 10. Since the estimated value: 10 is an error, the transmitting apparatus 101 sets 3 to 10+1 to 10+255 excluding the incorrect estimated value: 10 from the set of candidate values, as shown in (S1-2) of FIG. It divides and each divided subset is assigned to the correctness information “1” to “3”. Here, 10+255 exceeds 255, which is the maximum value of the set of candidate values, but in this case, when the number 10 that has been exceeded is counted from 0, which is the minimum value of the set of candidate values, it becomes 9.

従って、1回目の推測において、正誤情報の「1」は、10+1〜10+85に正解があることを示し、正誤情報の「2」は、10+86〜10+170に正解があることを示し、正誤情報の「3」は、10+171〜10+255に正解があることを示す。ここで、10+171〜10+255の実際の候補値の集合は、181〜255、0〜9となる。 Therefore, in the first guess, “1” of the correctness information indicates that there is a correct answer in 10+1 to 10+85, “2” of the correctness information indicates that there is a correct answer in 10+86 to 10+170, and the correctness information “ “3” indicates that there is a correct answer at 10+171 to 10+255. Here, the set of actual candidate values of 10+171 to 10+255 is 181 to 255 and 0 to 9.

そして、送信装置101は、図8の(S1−2)で示すように、正誤情報の「1」の候補値の集合内に正解があることを特定し、図8の(S1−3)で示すように、正誤情報として「1」を受信装置102に送信する。 Then, as illustrated in (S1-2) of FIG. 8, the transmission device 101 identifies that there is a correct answer in the set of candidate values of “1” of the correctness information, and in (S1-3) of FIG. As shown, “1” is transmitted to the receiving apparatus 102 as correctness information.

一方、受信装置102は、図8の(D1)で示すように、推測関数によるデータ生成処理を実行し、推測値:10を得る。そして、受信装置102は、送信装置101から正誤情報として「1」を受け取り、推測値:10が誤りであると判断する。さらに、受信装置102は、正誤情報の「1」〜「3」に割り当てられた候補値の集合を、送信装置101と同様に判定し、正解が10+1〜10+85という候補値の集合内にあると判断する。 On the other hand, the receiving device 102 executes the data generation process by the estimation function to obtain the estimated value: 10 as shown in (D1) of FIG. Then, the receiving device 102 receives “1” as correctness information from the transmitting device 101, and determines that the estimated value: 10 is an error. Furthermore, the receiving device 102 determines the set of candidate values assigned to “1” to “3” of the correctness information in the same manner as the transmitting device 101, and determines that the correct answer is within the set of candidate values of 10+1 to 10+85. to decide.

そして、送信装置101と受信装置102とは、推測値:10が誤りであったため、候補リストkouhoから、推測値:10を正解候補から除外する。さらに、正誤情報の「2」、「3」に割り当てられた部分集合にも正解がないことが特定できるため、送信装置101と受信装置102とは、正誤情報の「2」、「3」に割り当てられた10+86〜10+170、181〜255、0〜9を正解候補から除外する。 Then, the transmitting device 101 and the receiving device 102 exclude the estimated value :10 from the correct answer candidates from the candidate list kouho because the estimated value :10 is incorrect. Furthermore, since it can be specified that the subsets assigned to the correctness information “2” and “3” also do not have correct answers, the transmitting device 101 and the receiving device 102 are set to correctness information “2” and “3”. The assigned 10+86 to 10+170, 181 to 255, and 0 to 9 are excluded from the correct answer candidates.

2回目の推測として、送信装置101は、図8の(S2−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:38を得る。推測値:38は誤りであるため、送信装置101は、候補値の集合10+1〜10+85のうち、誤りである推測値:38を除いた38+1〜38+84を3分割し、分割したそれぞれの部分集合を正誤情報の「1」〜「3」に割り当てる。ここで、38+84は、候補値の集合の最大値10+85=95を超えるが、この場合、超えた分の数38+84−95=27を、候補値の集合の最小値11から数えると、37となる。従って、2回目の推測において、正誤情報の「1」は、38+1〜38+28に正解があることを示し、正誤情報の「2」は、38+29〜38+56に正解があることを示し、正誤情報の「3」は、38+57〜38+84に正解があることを示す。ここで、38+57〜38+84の実際の候補値の集合は、95、11〜37となる。 As the second estimation, the transmission device 101 executes the data generation process by the estimation function as shown in (S2-1) of FIG. 8 and obtains the estimated value: 38. Since the estimated value: 38 is an error, the transmitting apparatus 101 divides 38+1 to 38+84 excluding the estimated value: 38, which is an error, into the candidate value sets 10+1 to 10+85, and divides each divided subset. It is assigned to the correctness information “1” to “3”. Here, 38+84 exceeds the maximum value 10+85=95 of the set of candidate values, but in this case, when the number 38+84-95=27 of the exceeded values is counted from the minimum value 11 of the set of candidate values, it becomes 37. .. Therefore, in the second guess, “1” of the correctness information indicates that there is a correct answer in 38+1 to 38+28, “2” of the correctness information indicates that there is a correct answer in 38+29 to 38+56, and the correctness information “ "3" indicates that there is a correct answer at 38+57 to 38+84. Here, the set of actual candidate values of 38+57 to 38+84 is 95,11 to 37.

そして、送信装置101は、図8の(S2−2)で示すように、正誤情報の「3」の候補値の集合内に正解があることを特定し、図8の(S2−3)で示すように、正誤情報として「3」を受信装置102に送信する。 Then, as illustrated in (S2-2) of FIG. 8, the transmission device 101 identifies that there is a correct answer in the set of candidate values of “3” of the correctness information, and in (S2-3) of FIG. As shown, “3” is transmitted to the receiving apparatus 102 as correctness information.

一方、受信装置102は、図8の(D2)で示すように、推測関数によるデータ生成処理を実行し、推測値:38を得る。そして、受信装置102は、送信装置101から正誤情報として「3」を受け取り、推測値:10が誤りであると判断する。さらに、受信装置102は、正誤情報の「1」〜「3」に割り当てられた候補値の集合を、送信装置101と同様に判定し、正解が95、11〜37という候補値の集合内にあると判断する。 On the other hand, the receiving apparatus 102 executes the data generation process by the estimation function as shown in (D2) of FIG. 8 and obtains the estimated value: 38. Then, the receiving apparatus 102 receives “3” as correctness information from the transmitting apparatus 101, and determines that the estimated value: 10 is incorrect. Further, the receiving device 102 determines the set of candidate values assigned to the correctness information “1” to “3” in the same manner as the transmitting device 101, and the correct answer is within the set of candidate values 95, 11 to 37. Judge that there is.

そして、送信装置101と受信装置102とは、推測値:38が誤りであったため、候補リストkouhoから、推測値:38を正解候補から除外する。さらに、正誤情報の「1」、「2」に割り当てられた候補値の集合内にも正解がないことが特定できるため、送信装置101と受信装置102とは、正誤情報の「1」、「2」に割り当てられた38+1〜38+28、38+29〜38+56を正解候補から除外する。 Then, since the estimated value: 38 is incorrect in the transmitting device 101 and the receiving device 102, the estimated value: 38 is excluded from the correct answer candidates from the candidate list kouho. Furthermore, since it is possible to specify that there is no correct answer in the set of candidate values assigned to the correctness information “1” and “2”, the transmitting apparatus 101 and the receiving apparatus 102 have the correctness information “1” and “1”. 38+1 to 38+28 and 38+29 to 38+56 assigned to "2" are excluded from correct answer candidates.

以下、3回目の推測も2回目の推測と同様に、送信装置101は、図8の(S3−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:13を得る。推測値:13は誤りであるため、送信装置101は、候補値の集合95、11〜37のうち、誤りである推測値:13を除いた13+1〜13+27を3分割し、分割したそれぞれの部分集合を正誤情報の「1」〜「3」に割り当てる。ここで、13+27=40となり、正解がある95、11〜37の範囲の外であり、具体的には37から3超えている。従って、37から3つ分次の値は、37の次の95、95の次の11、11の次の12となり、12となる。従って、3回目の推測において、正誤情報の「1」は、13+1〜13+9に正解があることを示し、正誤情報の「2」は、13+10〜13+18に正解があることを示し、正誤情報の「3」は、13+19〜13+27に正解があることを示す。ここで、13+19〜13+27の実際の候補値の集合は、32〜37、95、11、12となる。 Similarly to the second guess, the transmitter 101 performs the data generation process by the guess function as shown in (S3-1) of FIG. 8 to obtain the guess value: 13 in the third guess. Since the estimated value: 13 is an error, the transmitting device 101 divides the 13+1 to 13+27 excluding the estimated value: 13 that is an error into three sets of candidate values into three parts, and divides each part. The set is assigned to the correctness information “1” to “3”. Here, 13+27=40, which is outside the range of 95, 11 to 37 where there is a correct answer, and more specifically, 37 to 3 is exceeded. Therefore, the next three values from 37 are 95 next to 37, 11 next to 95, 12 next to 11 and 12 next. Therefore, in the third guess, “1” of the correctness information indicates that there is a correct answer in 13+1 to 13+9, “2” of the correctness information indicates that there is a correct answer in 13+10 to 13+18, and “of the correctness information”. “3” indicates that there is a correct answer in 13+19 to 13+27. Here, the set of actual candidate values of 13+19 to 13+27 is 32 to 37, 95, 11, and 12.

そして、送信装置101は、図8の(S3−2)で示すように、正誤情報の「3」の候補値の集合内に正解があることを特定し、図8の(S3−3)で示すように、正誤情報として「3」を受信装置102に送信する。 Then, as illustrated in (S3-2) of FIG. 8, the transmission apparatus 101 identifies that there is a correct answer in the set of candidate values of “3” of the correctness information, and in (S3-3) of FIG. As shown, “3” is transmitted to the receiving apparatus 102 as correctness information.

一方、受信装置102は、図8の(D3)で示すように、推測関数によるデータ生成処理を実行し、推測値:13を得る。そして、受信装置102は、送信装置101から正誤情報として「3」を受け取り、推測値:13が誤りであると判断する。さらに、受信装置102は、正誤情報の「1」〜「3」に割り当てられた候補値の集合を、送信装置101と同様に判定し、正解が32〜37、95、11、12という候補値の集合内にあると判断する。 On the other hand, the receiving device 102 executes the data generation process by the estimation function to obtain the estimated value: 13 as shown in (D3) of FIG. Then, the receiving apparatus 102 receives “3” as correctness information from the transmitting apparatus 101, and determines that the estimated value: 13 is incorrect. Further, the receiving device 102 determines a set of candidate values assigned to “1” to “3” of the correctness information in the same manner as the transmitting device 101, and the correct values are 32 to 37, 95, 11, and 12 candidate values. It is determined to be in the set.

図9は、実施例2における元データ生成例を示す説明図(その2)である。図9では、図8で示した3回目の推測を終えた後の状態である。3回目の推測によって、送信装置101と受信装置102とは、推測値:13が誤りであったため、候補リストkouhoから、推測値:13を正解候補から除外する。さらに、正誤情報の「1」、「2」に割り当てられた候補値の集合にも正解がないことが特定できるため、送信装置101と受信装置102とは、正誤情報の「1」、「2」に割り当てられた13+1〜13+9、13+10〜13+18を正解候補から除外する。 FIG. 9 is an explanatory diagram (part 2) of an example of generating original data according to the second embodiment. FIG. 9 shows a state after the third guess shown in FIG. 8 is completed. As a result of the third guess, the sender device 101 and the receiver device 102 exclude the guess value: 13 from the correct answer candidates from the candidate list kouho because the guess value: 13 is incorrect. Furthermore, since it is possible to specify that there is no correct answer in the set of candidate values assigned to the correctness information “1” and “2”, the transmitting apparatus 101 and the receiving apparatus 102 have the correctness information “1” and “2”. 13+1 to 13+9, 13+10 to 13+18 assigned to “” are excluded from the correct answer candidates.

4回目の推測として、送信装置101は、図9の(S4−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:33を得る。推測値:33は誤りであるため、送信装置101は、候補値の集合32〜37、95、11、12のうち、誤りである推測値:33を除いた33+1〜33+8を3分割し、分割したそれぞれの部分集合を正誤情報の「1」〜「3」に割り当てる。ここで、33+8=41となり、正解がある32〜37、95、11、12という候補値の集合の外であり、具体的には37から4超えている。従って、37から4つ分次の値は、37の次の95、95の次の11、11の次の12、12の次の32となり、32となる。従って、4回目の推測において、正誤情報の「1」は、33+1〜33+3に正解があることを示し、正誤情報の「2」は、33+4〜33+6に正解があることを示し、正誤情報の「3」は、33+7〜33+8に正解があることを示す。ここで、33+4〜33+6の実際の候補値の集合は、37、95、11となり、33+7〜33+8の実際の候補値の集合は、12、32となる。 As the fourth guess, the transmitter 101 executes the data generation process by the guess function as shown in (S4-1) of FIG. 9, and obtains a guess value: 33. Since the estimated value: 33 is an error, the transmission device 101 divides 33+1 to 33+8 from the set of candidate values 32 to 37, 95, 11 and 12 excluding the estimated value that is an error into 33 and divides it into three parts. The respective subsets are assigned to the correctness information “1” to “3”. Here, 33+8=41, which is outside the set of candidate values 32 to 37, 95, 11, and 12 that have correct answers, and more specifically, 37 to 4 or more. Therefore, the next four values from 37 are the next 95 of 37, the next 11 of 95, the next 12 of 11 and the next 32 of 12, and 32. Therefore, in the fourth guess, “1” of the correctness information indicates that 33+1 to 33+3 have the correct answer, “2” of the correctness information indicates that the correct answer exists at 33+4 to 33+6, and the correctness information “ “3” indicates that there is a correct answer in 33+7 to 33+8. Here, the set of actual candidate values of 33+4 to 33+6 is 37, 95, 11 and the set of actual candidate values of 33+7 to 33+8 is 12, 32.

そして、送信装置101は、図8の(S4−2)で示すように、正誤情報の「1」の候補値の集合内に正解があることを特定し、図8の(S4−3)で示すように、正誤情報として「1」を受信装置102に送信する。 Then, as illustrated in (S4-2) of FIG. 8, the transmission apparatus 101 identifies that there is a correct answer in the set of candidate values of “1” of the correctness information, and in (S4-3) of FIG. As shown, “1” is transmitted to the receiving apparatus 102 as correctness information.

一方、受信装置102は、図8の(D4)で示すように、推測関数によるデータ生成処理を実行し、推測値:33を得る。そして、受信装置102は、送信装置101から正誤情報として「1」を受け取り、推測値:33が誤りであると判断する。さらに、受信装置102は、正誤情報の「1」〜「3」に割り当てられた候補値の集合を、送信装置101と同様に判定し、正解が33+1〜33+3という候補値の集合内にあると判断する。 On the other hand, the receiving device 102 executes the data generation process by the estimation function to obtain the estimated value: 33, as shown in (D4) of FIG. Then, the receiving apparatus 102 receives “1” as correctness information from the transmitting apparatus 101, and determines that the estimated value: 33 is incorrect. Further, the receiving device 102 determines the set of candidate values assigned to the correctness information “1” to “3” in the same manner as the transmitting device 101, and determines that the correct answer is within the set of candidate values 33+1 to 33+3. to decide.

そして、送信装置101と受信装置102とは、推測値:33が誤りであったため、候補リストkouhoから、推測値:33を正解候補から除外する。さらに、正誤情報の「2」、「3」に割り当てられた候補値の集合にも正解がないことが特定できるため、送信装置101と受信装置102とは、正誤情報の「2」、「3」に割り当てられた37、95、11、12、32を正解候補から除外する。 Then, since the estimated value: 33 is incorrect in the transmitting device 101 and the receiving device 102, the estimated value: 33 is excluded from the correct answer candidates from the candidate list kouho. Further, since it is possible to specify that there is no correct answer in the set of candidate values assigned to the correctness information “2” and “3”, the transmitting apparatus 101 and the receiving apparatus 102 have the correctness information “2” and “3”. 37, 95, 11, 12, 32 assigned to “” are excluded from correct answer candidates.

5回目の推測として、送信装置101は、図9の(S5−1)で示すように、推測関数によるデータ生成処理を実行し、推測値:35を得る。推測値:35は誤りであるため、送信装置101は、候補値の集合33+1〜33+3のうち、誤りである推測値:35を除いた35+1〜35+2を3分割しようとする。しかしながら、35+1〜35+2は、2つの値しかないため、送信装置101は、35+1を正誤情報の「1」に割り当て、35+2を正誤情報の「2」に割り当てる。ここで、35+2は、正解がある33+1〜33+3の範囲の外であり、具体的には36から1超えている。従って、36から1つ分次の値は、37の次の34となる。 As the fifth estimation, the transmission device 101 executes the data generation process by the estimation function as shown in (S5-1) of FIG. 9 and obtains the estimated value: 35. Since the estimated value: 35 is an error, the transmitting apparatus 101 tries to divide 35+1 to 35+2 from the set of candidate values 33+1 to 33+3 into 35+1 to 35+2 excluding the estimated value: 35 that is an error. However, since 35+1 to 35+2 have only two values, the transmission apparatus 101 allocates 35+1 to the correctness information “1” and 35+2 to the correctness information “2”. Here, 35+2 is out of the range of 33+1 to 33+3 in which there is a correct answer, and more specifically, 36 to 1 is exceeded. Therefore, the next value from 36 is 34, which is next to 37.

そして、送信装置101は、図9の(S5−2)で示すように、正誤情報の「1」の候補値の集合に正解があることを特定し、図9の(S5−3)で示すように、正誤情報として「1」を受信装置102に送信する。 Then, as shown in (S5-2) of FIG. 9, the transmission device 101 identifies that there is a correct answer in the set of candidate values of “1” of the correctness information, and indicates in (S5-3) of FIG. As described above, “1” is transmitted to the receiving apparatus 102 as correctness information.

一方、受信装置102は、図9の(D5)で示すように、推測関数によるデータ生成処理を実行し、推測値:35を得る。そして、受信装置102は、送信装置101から正誤情報として「1」を受け取り、推測値:35が誤りであると判断する。さらに、受信装置102は、正誤情報の「1」〜「3」に割り当てられた候補値の集合を、送信装置101と同様に判定し、正解が36であると判断する。これにより、受信装置102は、元データが値:36であることを特定することができる。 On the other hand, as shown in (D5) of FIG. 9, the receiving device 102 executes the data generation process by the estimation function and obtains the estimated value: 35. Then, the receiving device 102 receives “1” as correctness information from the transmitting device 101, and determines that the estimated value: 35 is an error. Further, the receiving device 102 determines the set of candidate values assigned to the correctness information “1” to “3” in the same manner as the transmitting device 101, and determines that the correct answer is 36. Thereby, the receiving apparatus 102 can specify that the original data is the value: 36.

次に、本実施の形態で用いる情報の一例について、送信装置101が記憶する情報を図10で示し、受信装置102が記憶する情報を図11で示す。 Next, regarding an example of the information used in this embodiment, the information stored in the transmitting apparatus 101 is shown in FIG. 10, and the information stored in the receiving apparatus 102 is shown in FIG.

図10は、送信装置101が記憶する情報の一例を示す説明図である。ディスク204には、過去のダンプファイルデータ1001と、送信データ1002とを保持する。過去のダンプファイルデータ1001の記憶内容の一例は、図12で示す。また、送信データ1002の記憶内容の一例は、図13で示す。 FIG. 10 is an explanatory diagram showing an example of information stored in the transmission device 101. The disk 204 holds past dump file data 1001 and transmission data 1002. An example of the storage contents of the past dump file data 1001 is shown in FIG. 13 shows an example of the stored contents of the transmission data 1002.

また、送信装置101は、メモリ202内に、次に示す11個のデータを保持するデータを保持するための領域を確保する。また、送信装置101は、メモリ202内に、ループカウンタi、j、mと、汎用一時変数k、c、pとを保持するための領域を確保する。 In addition, the transmission device 101 reserves an area for holding the following 11 pieces of data in the memory 202. Further, the transmission device 101 reserves an area in the memory 202 for holding the loop counters i, j, m and the general-purpose temporary variables k, c, p.

保持するデータの1番目は、対象データのサイズdatasizeである。保持するデータの2番目は、コンピュータ名computernameである。保持するデータの3番目は、ダンプ出力日時dumpdateである。図10では、対象データのサイズdatasize、コンピュータ名computername、ダンプ出力日時dumpdateの具体的な記憶内容の一例を示す。 The first data held is the size datasize of the target data. The second piece of data held is the computer name computername. The third data held is the dump output date/time dumpdate. FIG. 10 shows an example of specific storage contents of the size datasize of the target data, the computer name computername, and the dump output date and time dumpdate.

保持するデータの4番目は、受信装置102で生成させる対象となる対象データsourceである。対象データsourceの記憶内容の一例は、図15で示す。保持するデータの5番目は、結果インデックス変換情報kekka2valueである。結果インデックス変換情報kekka2valueの記憶内容の一例は、図16で示す。 The fourth piece of data to be held is target data source to be generated by the receiving apparatus 102. An example of the stored contents of the target data source is shown in FIG. The fifth piece of data held is the result index conversion information kekka2value. FIG. 16 shows an example of the stored contents of the result index conversion information kekka2value.

保持するデータの6番目は、候補リストkouhoである。候補リストkouhoの記憶内容の一例は、図17で示す。保持するデータの7番目は、推測結果suisokuである。推測結果suisokuの記憶内容の一例は、図18で示す。保持するデータの8番目は、正誤情報kekkaである。正誤情報kekkaの記憶内容の一例は、図19で示す。保持するデータの9番目は、過去データ抽出サンプルsampleである。過去データ抽出サンプルsampleの記憶内容の一例は、図20で示す。 The sixth of the data held is the candidate list kouho. An example of the stored contents of the candidate list kouho is shown in FIG. The seventh piece of data to be held is the estimation result suisoku. FIG. 18 shows an example of the stored contents of the estimation result suisoku. The eighth piece of data to be held is the correct/wrong information kekka. An example of the stored contents of the correctness information kekka is shown in FIG. The ninth data to be held is a past data extraction sample sample. An example of the stored contents of the past data extraction sample sample is shown in FIG.

保持するデータの10番目は、開始インデックス情報value2startindexである。開始インデックス情報value2startindexの記憶内容の一例は、図21で示す。保持するデータの11番目は、終了インデックス情報value2endindexである。終了インデックス情報value2endindexの記憶内容の一例は、図22で示す。 The 10th piece of data to be held is start index information value2startindex. An example of the stored contents of the start index information value2startindex is shown in FIG. The eleventh piece of data held is the end index information value2endindex. An example of the storage contents of the end index information value2endindex is shown in FIG.

図11は、受信装置102が記憶する情報の一例を示す説明図である。ディスク254には、過去のダンプファイルデータ1001と、受信データ1101とを保持する。また、送信データ1002の記憶内容の一例は、図14で示す。 FIG. 11 is an explanatory diagram showing an example of information stored in the receiving device 102. The disk 254 holds past dump file data 1001 and received data 1101. 14 shows an example of the stored contents of the transmission data 1002.

また、受信装置102は、メモリ252内に、10個のデータを保持するデータを保持するための領域を確保する。ここで、10個のデータは、送信装置101のメモリ202内に保持した11個のデータのうち、対象データsource以外のデータであるため、説明を省略する。また、受信装置102は、メモリ252内に、ループカウンタi、j、mと、汎用一時変数k、c、pとを保持するための領域を確保する。 In addition, the receiving device 102 reserves an area for holding data that holds 10 pieces of data in the memory 252. Here, since the 10 pieces of data are data other than the target data source among the 11 pieces of data held in the memory 202 of the transmission apparatus 101, description thereof will be omitted. Further, the receiving apparatus 102 reserves an area in the memory 252 for holding the loop counters i, j, m and the general-purpose temporary variables k, c, p.

図10、図11で示した情報の一例について、図12〜図22を用いて説明する。ここで、図12〜図22で示した情報は、実施例2の場合の情報である。また、以下の説明において、「データに付与した符号名[x]」という記載を行う場合があるが、これは、そのデータが配列変数であり、配列変数のx番目のデータを示す。また、「データに付与した符号名[x][y]」という記載を行う場合があるが、これは、そのデータが2次元の配列変数であり、2次元配列変数のx行目のy番目のデータを示す。 An example of the information shown in FIGS. 10 and 11 will be described with reference to FIGS. Here, the information shown in FIGS. 12 to 22 is information in the case of the second embodiment. Further, in the following description, there is a case where a description is given as “code name [x] given to data”, but this indicates that the data is an array variable and the xth data of the array variable. In addition, there is a case where a description is given as “code name [x][y] assigned to data”, but this means that the data is a two-dimensional array variable and the y-th line of the x-th row of the two-dimensional array variable. Shows the data of.

図12は、過去のダンプファイルデータ1001の記憶内容の一例を示す説明図である。図12に示す過去のダンプファイルデータ1001は、レコード1201−0〜3を有する。図12に示す過去のダンプファイルデータ1001の値は、一例であって、他の値となることもある。 FIG. 12 is an explanatory diagram showing an example of the stored contents of the past dump file data 1001. The past dump file data 1001 shown in FIG. 12 has records 1201-0 to 1203. The value of the past dump file data 1001 shown in FIG. 12 is an example, and may be another value.

過去のダンプファイルデータ1001は、コンピュータ名と、採取日時と、ダンプファイルデータというフィールドを含む。コンピュータ名フィールドには、ダンプファイルを有していたコンピュータ名が格納される。採取日時フィールドには、ダンプファイルを採取した日時を示す文字列が格納される。ダンプファイルデータフィールドには、nバイトのダンプデータがバイトごとに格納される。 The past dump file data 1001 includes fields of computer name, collection date and time, and dump file data. The computer name field stores the computer name that had the dump file. A character string indicating the date and time when the dump file was collected is stored in the collection date and time field. In the dump file data field, n bytes of dump data are stored for each byte.

図13は、送信データ1002の記憶内容の一例を示す説明図である。図13に示す送信データ1002は、レコード1301−0を有する。送信データ1002は、元データとなるnバイトのデータをバイトごとに記憶する。図13に示す送信データ1002の値は、一例であって、他の値となってもよい。 FIG. 13 is an explanatory diagram showing an example of stored contents of the transmission data 1002. The transmission data 1002 shown in FIG. 13 has a record 1301-0. The transmission data 1002 stores n bytes of data which is original data, byte by byte. The value of the transmission data 1002 shown in FIG. 13 is an example, and may be another value.

図14は、受信データ1101の記憶内容の一例を示す説明図である。図14に示す受信データ1101は、レコード1401−0を有する。受信データ1101は、推測により生成したnバイトのデータをバイトごとに記憶する。図14に示す受信データ1101の値は、一例である。 FIG. 14 is an explanatory diagram showing an example of stored contents of the received data 1101. The reception data 1101 shown in FIG. 14 has a record 1401-0. The reception data 1101 stores n bytes of data generated by estimation for each byte. The value of the reception data 1101 shown in FIG. 14 is an example.

図15は、対象データsourceの記憶内容の一例を示す説明図である。図15に示す対象データsourceは、レコード1501−0を有する。対象データsourceは、ディスク204内に保持されている送信データ1002から読み出して、メモリ202に保持したデータである。従って、対象データsourceの値は、送信データ1002の値と同一の値を有する。 FIG. 15 is an explanatory diagram showing an example of the stored contents of the target data source. The target data source shown in FIG. 15 has a record 1501-0. The target data source is data read from the transmission data 1002 held in the disk 204 and held in the memory 202. Therefore, the value of the target data source has the same value as the value of the transmission data 1002.

図16は、結果インデックス変換情報kekka2valueの記憶内容の一例を示す説明図である。図16に示す結果インデックス変換情報kekka2valueは、レコード1601−0〜5を有する。結果インデックス変換情報kekka2valueは、実施例2が採用される際には、図16で示す固定の値となる。 FIG. 16 is an explanatory diagram showing an example of the stored contents of the result index conversion information kekka2value. The result index conversion information kekka2value shown in FIG. 16 has records 1601-0 to 5160. The result index conversion information kekka2value has a fixed value shown in FIG. 16 when the second embodiment is adopted.

結果インデックス変換情報kekka2valueの各レコードは、各回数の推測で用いる。例えば、レコード1601−0は、1回目の推測で用いるレコードである。そして、kekka2value[0][1]〜kekka2value[0][86]が、図8の1回目の推測で示した、候補値の集合を3分割したうちの正誤情報の「1」に割り当てた部分集合に一致する。同様に、kekka2value[0][87]〜kekka2value[0][170]が、図8の1回目の推測で示した、候補値の集合を3分割したうちの正誤情報の「2」に割り当てた集合に一致する。このように、kekka2value[x][y]の値は、x+1番目の推測で用いられる値であって、推測関数によるデータ生成処理により得られた値+yの値が、正誤情報の「0」〜[3]のいずれであるかを示す。 Each record of the result index conversion information kekka2value is used to estimate each number of times. For example, the record 1601-0 is a record used in the first guess. Then, the portion where kekkka2value[0][1] to kekka2value[0][86] is assigned to “1” of the correctness information among the three divided values of the set of candidate values shown in the first guess in FIG. Match the set. Similarly, kekka2value[0][87] to kekka2value[0][170] assigned to the correctness information “2” of the three sets of candidate value sets shown in the first guess in FIG. Match the set. As described above, the value of kekka2value[x][y] is a value used in the (x+1)th guess, and the value +y obtained by the data generation process using the guess function is “0” to the correctness information. It shows which is [3].

図17は、候補リストkouhoの記憶内容の一例を示す説明図である。図17に示す候補リストkouhoは、レコード1701−0を有する。図17に示す候補リストkouhoの値は、一例である。 FIG. 17 is an explanatory diagram showing an example of the stored contents of the candidate list kouho. The candidate list kouho shown in FIG. 17 has a record 1701-0. The value of the candidate list kouho shown in FIG. 17 is an example.

図17に候補リストkouhoは、5回目の推測を終えた状態を示す。そして、kouho[x]の値yは、y番目の推測によって推測値:xが正解候補から除外されたことを示す。ただし、yが現在の推測回数より1大きい場合、推測値:xは、正解候補として残っている状態である。kouho[x]の値を、「候補除外推測回数」と呼称する。例えば、図17の状態では、推測回数が5回であるとし、kouho[0]、[254]、[255]、すなわち値:0、254、255は、1回目の推測によって正解候補から除外したことを示す。同様に、図17の状態では、値:1〜10は、2回目の推測によって正解候補から除外したことを示す。従って、図17に示す候補リストkouhoは、5回目の推測を終えて、候補除外推測回数が現在の推測回数である5より1大きい6となったkouho[14]、すなわち値:14が正解であることを示す。また、kouho[x]=6となるxは、ただ1つとなる。 FIG. 17 shows a state in which the candidate list kouho has finished the fifth guess. Then, the value y of kouho[x] indicates that the estimated value: x is excluded from the correct answer candidates by the y-th estimation. However, when y is larger than the current number of guesses by 1, the guess value: x is a state that remains as a correct answer candidate. The value of kouho[x] is referred to as the “candidate exclusion presumption frequency”. For example, in the state of FIG. 17, it is assumed that the number of guesses is 5, and kouho[0], [254], [255], that is, the values: 0, 254, 255 are excluded from correct answer candidates by the first guess. Indicates that. Similarly, in the state of FIG. 17, the values of 1 to 10 indicate that they are excluded from the correct answer candidates by the second guess. Therefore, in the candidate list kouho shown in FIG. 17, after the fifth guess, the candidate exclusion guess count is kouho[14], which is 1 larger than the current guess count of 5, that is, the value: 14 is the correct answer. Indicates that there is. Further, there is only one x for which kouho[x]=6.

図18は、推測結果suisokuの記憶内容の一例を示す説明図である。図18に示す推測結果suisokuは、レコード1801−0〜5を有する。図18に示す推測結果suisokuの値は、一例である。ここで、レコード1801−5を有するのは、受信装置102だけであり、送信装置101はレコード1801−5を有さない。 FIG. 18 is an explanatory diagram showing an example of stored contents of the estimation result suisoku. The estimation result suisoku shown in FIG. 18 has records 1801-0 to 180-1. The value of the estimation result suisoku shown in FIG. 18 is an example. Here, only the receiving apparatus 102 has the record 1801-5, and the transmitting apparatus 101 does not have the record 1801-5.

推測結果suisokuの各レコードは、0バイト目からn−1バイト目までのnバイトに対する各回数の推測結果が格納される。例えば、レコード1801−0は、1回目の推測結果が格納される。従って、レコード1801−5が、正解となる値が格納される。 Each record of the estimation result suisoku stores the estimation result of each count for the n bytes from the 0th byte to the (n-1)th byte. For example, the record 1801-0 stores the first estimation result. Therefore, the record 1801-5 stores the value that is the correct answer.

図19は、正誤情報kekkaの記憶内容の一例を示す説明図である。図19に示す正誤情報kekkaは、レコード1901−0〜4を有する。図19に示す正誤情報kekkaは、一例である。 FIG. 19 is an explanatory diagram showing an example of the stored contents of the correctness information kekka. The correct/wrong information kekka shown in FIG. 19 has records 1901-0 to 190-1-4. The correctness information kekka shown in FIG. 19 is an example.

正誤情報kekkaの各レコードは、0バイト目からn−1バイト目までのnバイトに対する各回数の推測に対する正誤情報が格納される。例えば、レコード1901−0は、1回目の推測に対する正誤情報が格納される。 Each record of the correct/wrong information kekka stores the correct/wrong information with respect to the estimation of the number of times for the nth byte from the 0th byte to the (n-1)th byte. For example, the record 1901-0 stores correctness information for the first guess.

図20は、過去データ抽出サンプルsampleの記憶内容の一例を示す説明図である。図20に示す過去データ抽出サンプルsampleは、レコード2001−0〜4を有する。図20に示す過去データ抽出サンプルsampleの値は、一例である。 FIG. 20 is an explanatory diagram showing an example of the stored contents of the past data extraction sample sample. The past data extraction sample sample shown in FIG. 20 has records 2001-0 to 2001-4. The value of the past data extraction sample sample shown in FIG. 20 is an example.

過去データ抽出サンプルsampleは、推測関数によるデータ生成処理で用いられるデータである。送信装置101と受信装置102とは、過去データ抽出サンプルsampleが有するレコード分の過去のメモリダンプファイルを、サンプルデータとして採用する。従って、図20の例では、過去データ抽出サンプルsampleは、過去5回分のメモリダンプファイルを有する。 The past data extraction sample sample is data used in the data generation process by the inference function. The transmission device 101 and the reception device 102 employ the past memory dump files of the records included in the past data extraction sample sample as sample data. Therefore, in the example of FIG. 20, the past data extraction sample sample has the memory dump files of the past five times.

図21は、開始インデックス情報value2startindexの記憶内容の一例を示す説明図である。図21に示す開始インデックス情報value2startindexは、レコード2101−0〜5を有する。開始インデックス情報value2startindexの値は、実施例2が採用される際には、図16で示す固定の値となる。 FIG. 21 is an explanatory diagram showing an example of the stored contents of the start index information value2startindex. The start index information value2startindex shown in FIG. 21 has records 2101-0 to 5101. The value of the start index information value2startindex is a fixed value shown in FIG. 16 when the second embodiment is adopted.

開始インデックス情報value2startindexの各レコードは、各回数の推測における正誤情報「0」〜「3」のそれぞれに割り当てる候補値の集合の先頭の値を求めるために用いる値を示す。x+1回目の推測の正誤情報の「y」に割り当てられる候補値の集合の先頭の値は、x回目の推測により正解があると特定された候補値の集合のうち、推測関数によるデータ生成処理により得る値から数えて、value2startindex[x][y]番目にある値となる。 Each record of the start index information value2startindex indicates a value used for obtaining the leading value of the set of candidate values to be assigned to each of the correctness information “0” to “3” in the estimation of each number of times. The leading value of the set of candidate values assigned to “y” of the correctness information of the (x+1)th guess is determined by the data generation process using the guess function among the set of candidate values that are identified as having the correct answer by the (x)th guess. Counting from the obtained values, the value is the value2startindex[x][y]th value.

図22は、終了インデックス情報value2endindexの記憶内容の一例を示す説明図である。図22に示す終了インデックス情報value2endindexは、レコード2201−0〜5を有する。終了インデックス情報value2endindexの値は、実施例2が採用される際には、図16で示す固定の値となる。 FIG. 22 is an explanatory diagram showing an example of the stored contents of the end index information value2endindex. The end index information value2endindex shown in FIG. 22 has records 2201-0 to 220-5. The value of the end index information value2endindex is a fixed value shown in FIG. 16 when the second embodiment is adopted.

終了インデックス情報value2endindexの各レコードは、各回数の推測における正誤情報「0」〜「3」のそれぞれに割り当てる候補値の集合の末尾の値を求めるために用いる値を示す。x+1回目の推測の正誤情報の「y」に割り当てられる候補値の集合の末尾の値は、x回目の推測により正解があると特定された候補値の集合のうち、推測関数によるデータ生成処理により得る値から数えて、value2endindex[x][y]番目にある値となる。 Each record of the end index information value2endindex indicates a value used for obtaining the end value of the set of candidate values assigned to each of the correct/incorrect information “0” to “3” in the estimation of each number of times. The value at the end of the set of candidate values assigned to “y” of the correctness information of the (x+1)th guess is determined by the data generation process using the guess function from the set of candidate values identified as having a correct answer by the (x)th guess. The value is the value2endendx[x][y]th value counted from the obtained value.

次に、送信装置101と受信装置102とが実行する元データ生成処理について、図23〜図30、図32〜図37を用いて説明する。元データ生成処理は、図23で示す同期式で行うこともできるし、図25で示す非同期式で行うこともできる。また、図23〜図30、図32〜図37の各ステップの処理は、表示の都合上、具体的なプログラムコードで記載することがある。 Next, the original data generation process executed by the transmission device 101 and the reception device 102 will be described with reference to FIGS. 23 to 30 and 32 to 37. The original data generation process can be performed by the synchronous method shown in FIG. 23 or by the asynchronous method shown in FIG. Further, the processing of each step in FIGS. 23 to 30 and 32 to 37 may be described by a specific program code for convenience of display.

図23は、同期式における元データ生成処理手順の一例を示すフローチャートである。同期式における元データ生成処理では、送信装置101と受信装置102とが同期して元データ生成処理を行う。同期をとる方法は、例えば、送信装置101と受信装置102とは、タイマーにより同時に起動する方法がある。または、送信装置101の操作者と、受信装置102の操作者とが電話等で連絡を取り、同時に処理を開始するようにして同期をとってもよい。また、送信装置101と受信装置102とが何らかデータの送受信を行う際には、図24で示すデータ送受信処理に従って、データを送受信する。 FIG. 23 is a flowchart showing an example of the original data generation processing procedure in the synchronous method. In the synchronous original data generation process, the transmission device 101 and the reception device 102 perform the original data generation process in synchronization. As a method for achieving synchronization, for example, there is a method in which the transmission device 101 and the reception device 102 are activated simultaneously by a timer. Alternatively, the operator of the transmitting device 101 and the operator of the receiving device 102 may contact each other by telephone or the like and start the processing at the same time so as to synchronize. Further, when the transmitting device 101 and the receiving device 102 perform some kind of data transmission/reception, the data is transmitted/received according to the data transmission/reception processing shown in FIG.

送信装置101は、対象データ読込み処理を実行する(ステップS2301)。対象データ読込み処理は、図26で示す。次に、送信装置101は、データ特性抽出処理を実行する(ステップS2302)。データ特性抽出処理は、図27で示す。そして、送信装置101は、データ特性送信処理を実行し(ステップS2303)、データ特性を受信装置102に送信する。データ特性を受信した受信装置102は、データ特性受信処理を実行する(ステップS2351)。データ特性送信処理とデータ特性受信処理とは、図28で示す。 The transmitting apparatus 101 executes a target data reading process (step S2301). The target data reading process is shown in FIG. Next, the transmission device 101 executes a data characteristic extraction process (step S2302). The data characteristic extraction processing is shown in FIG. Then, the transmitting device 101 executes a data characteristic transmission process (step S2303) and transmits the data characteristic to the receiving device 102. The receiving apparatus 102 that has received the data characteristic executes a data characteristic receiving process (step S2351). The data characteristic transmission process and the data characteristic reception process are shown in FIG.

ステップS2303の処理終了後、送信装置101は、実施例2では推測を多くとも5回行うため、ループカウンタiに0を代入する(ステップS2304)。次に、送信装置101は、推測関数によるデータ生成処理を実行する(ステップS2305)。推測関数によるデータ生成処理は、図29で示す。そして、送信装置101は、正誤判定処理を実行する(ステップS2306)。正誤判定処理は、図33で示す。次に、送信装置101は、正誤結果送信処理を実行し(ステップS2307)、正誤結果を受信装置102に送信する。正誤結果送信処理は、図34で示す。 After the processing of step S2303 ends, the transmitting apparatus 101 substitutes 0 into the loop counter i because the estimation is performed at most 5 times in the second embodiment (step S2304). Next, the transmission device 101 executes a data generation process using an estimation function (step S2305). The data generation process by the estimation function is shown in FIG. Then, the transmission device 101 executes the correctness determination process (step S2306). The correctness determination process is shown in FIG. Next, the transmitting apparatus 101 executes correctness/incorrectness result transmission processing (step S2307) and transmits the correctness/incorrectness result to the receiving apparatus 102. The correctness result transmission process is shown in FIG. 34.

一方、受信装置102は、ステップS2351の終了後、実施例2では推測を多くとも5回行うため、ループカウンタiに0を代入する(ステップS2352)。次に、受信装置102は、推測関数によるデータ生成処理を実行する(ステップS2353)。そして、受信装置102は、送信装置101から正誤結果を受け付けて、正誤結果受信処理を実行する(ステップS2354)。正誤結果受信処理は、図35で示す。 On the other hand, the receiving apparatus 102 substitutes 0 into the loop counter i (step S2352) since the estimation is performed at most 5 times in the second embodiment after the end of step S2351. Next, the receiving apparatus 102 executes a data generation process using an estimation function (step S2353). Then, the receiving apparatus 102 receives the correct/incorrect result from the transmitting apparatus 101 and executes the correct/incorrect result receiving process (step S2354). The correct/incorrect result reception process is shown in FIG.

ステップS2307の処理終了後、送信装置101は、ループカウンタiに1加算し(ステップS2308)、繰り返し判定として、ループカウンタiが5未満か否かを判断する(ステップS2309)。ループカウンタiが5未満である場合(ステップS2309:True)、送信装置101は、ステップS2305の処理に移行する。一方、ループカウンタiが5以上である場合(ステップS2309:False)、送信装置101は、送信元におけるデータ蓄積処理を実行する(ステップS2310)。送信元におけるデータ蓄積処理は、図37で示す。ステップS2310の処理終了後、送信装置101は、同期式における元データ生成処理を終了する。 After the processing of step S2307 ends, the transmitting apparatus 101 increments the loop counter i by 1 (step S2308), and determines whether or not the loop counter i is less than 5 (step S2309) as a repetition determination. When the loop counter i is less than 5 (step S2309: True), the transmitting apparatus 101 moves to the process of step S2305. On the other hand, when the loop counter i is 5 or more (step S2309: False), the transmission apparatus 101 executes the data storage process at the transmission source (step S2310). The data storage process at the transmission source is shown in FIG. After the processing of step S2310 ends, the transmission apparatus 101 ends the original data generation processing in the synchronous system.

一方、受信装置102は、ステップS2354の処理終了後、ループカウンタiに1加算し(ステップS2355)、繰り返し判定として、ループカウンタiが5未満か否かを判断する(ステップS2356)。ループカウンタiが5未満である場合(ステップS2356:True)、受信装置102は、ステップS2353の処理に移行する。一方、ループカウンタiが5以上である場合(ステップS2356:False)、受信装置102は、生成データ保存処理を実行する(ステップS2357)。次に、受信装置102は、受信先におけるデータ蓄積処理を実行する(ステップS2358)。受信先におけるデータ蓄積処理は、送信元におけるデータ蓄積処理とほぼ同様の処理であるため、図示を省略する。送信元におけるデータ蓄積処理に対する受信先におけるデータ蓄積処理の差異の説明については、図37の説明と併せて行う。 On the other hand, after the processing of step S2354 is completed, the receiving apparatus 102 increments the loop counter i by 1 (step S2355), and determines whether or not the loop counter i is less than 5 (step S2356) as a repeat determination. When the loop counter i is less than 5 (step S2356: True), the reception apparatus 102 moves to the process of step S2353. On the other hand, when the loop counter i is 5 or more (step S2356: False), the receiving apparatus 102 executes the generated data saving process (step S2357). Next, the receiving apparatus 102 executes data storage processing at the receiving destination (step S2358). The data storage processing at the receiving destination is almost the same as the data storage processing at the transmission source, and therefore the illustration thereof is omitted. The difference between the data storage processing at the transmission source and the data storage processing at the reception destination will be described together with the description of FIG. 37.

ステップS2358の処理終了後、受信装置102は、同期式における元データ生成処理を終了する。 After the processing of step S2358 ends, the reception apparatus 102 ends the original data generation processing in the synchronous system.

図24は、データ送受信処理手順の一例を示すフローチャートである。送信装置101は、接続依頼を受信装置102に送信する(ステップS2401)。接続依頼を送信した後、送信装置101は、送信した接続依頼の応答を待ち受ける。 FIG. 24 is a flowchart showing an example of a data transmission/reception processing procedure. The transmitter 101 transmits a connection request to the receiver 102 (step S2401). After transmitting the connection request, the transmission device 101 waits for a response to the transmitted connection request.

一方、受信装置102は、接続待ちを開始し(ステップS2451)、接続依頼があったか否かを判断する(ステップS2452)。一方、接続依頼がない場合(ステップS2452:接続無し)、受信装置102は、ステップS2451の処理に移行する。接続依頼があった場合(ステップS2452:接続有り)、受信装置102は、接続を受付け(ステップS2453)、接続依頼の応答を送信装置101に送信し、接続を確立する(ステップS2454)。 On the other hand, the receiving apparatus 102 starts waiting for connection (step S2451) and determines whether or not there is a connection request (step S2452). On the other hand, when there is no connection request (step S2452: no connection), the receiving apparatus 102 moves to the process of step S2451. When there is a connection request (step S2452: connection present), the reception device 102 accepts the connection (step S2453), transmits a response to the connection request to the transmission device 101, and establishes the connection (step S2454).

送信装置101は、接続依頼の応答があったか否かを判断する(ステップS2402)。接続依頼の応答がない場合(ステップS2402:応答無し)、送信装置101は、ステップS2401の処理に移行する。接続依頼の応答があった場合(ステップS2402:応答有り)、送信装置101は、接続を確立する(ステップS2403)。そして、送信装置101は、データを受信装置102に送信する(ステップS2404)。データを送信後、送信装置101は、データ送受信処理を終了する。 The transmitter 101 determines whether or not there is a response to the connection request (step S2402). When there is no response to the connection request (step S2402: no response), the transmitting apparatus 101 moves to the process of step S2401. When there is a response to the connection request (step S2402: response is received), the transmission device 101 establishes a connection (step S2403). Then, the transmission device 101 transmits the data to the reception device 102 (step S2404). After transmitting the data, the transmission device 101 ends the data transmission/reception process.

一方、ステップS2454の処理終了後、受信装置102は、送信装置101からデータを受信する(ステップS2455)。データを受信後、受信装置102は、データ送受信処理を終了する。 On the other hand, after the processing of step S2454 ends, the receiving apparatus 102 receives data from the transmitting apparatus 101 (step S2455). After receiving the data, the receiving apparatus 102 ends the data transmission/reception process.

図25は、非同期式における元データ生成処理手順の一例を示すフローチャートである。同期式における元データ生成処理では、送信装置101と受信装置102とが同期せずに元データ生成処理を行う。従って、受信装置102は、送信装置101の処理が終了してから元データ生成処理を行う。 FIG. 25 is a flowchart showing an example of an original data generation processing procedure in the asynchronous method. In the synchronous original data generation process, the transmission device 101 and the reception device 102 perform the original data generation process without synchronization. Therefore, the receiving device 102 performs the original data generation process after the process of the transmitting device 101 is completed.

送信装置101は、対象データ読込み処理を実行する(ステップS2501)。次に、送信装置101は、データ特性抽出処理を実行する(ステップS2502)。そして、送信装置101は、データ特性ファイル出力処理を実行する(ステップS2503)。データ特性ファイル出力処理は、データ特性送信処理とほぼ同様の処理であるため、図示を省略する。データ特性送信処理に対するデータ特性ファイル出力処理の差異の説明については、図28で説明する。 The transmission device 101 executes a target data reading process (step S2501). Next, the transmission apparatus 101 executes a data characteristic extraction process (step S2502). Then, the transmission device 101 executes a data characteristic file output process (step S2503). The data characteristic file output process is almost the same as the data characteristic transmission process, and therefore the illustration thereof is omitted. The difference between the data characteristic file output processing and the data characteristic transmission processing will be described with reference to FIG.

ステップS2503の処理終了後、送信装置101は、ループカウンタiに0を代入する(ステップS2504)。次に、送信装置101は、推測関数によるデータ生成処理を実行する(ステップS2505)。そして、送信装置101は、正誤判定処理を実行する(ステップS2506)。次に、送信装置101は、正誤結果ファイル出力処理を実行する(ステップS2507)。正誤結果ファイル出力処理は、正誤結果送信処理とほぼ同様の処理であるため、図示を省略する。正誤結果送信処理に対する正誤結果ファイル出力処理の差異の説明については、図34の説明と併せて行う。 After the processing of step S2503 is completed, the transmission apparatus 101 substitutes 0 into the loop counter i (step S2504). Next, the transmission device 101 executes a data generation process using an estimation function (step S2505). Then, the transmission device 101 executes the correctness determination process (step S2506). Next, the transmission device 101 executes a correctness/error result file output process (step S2507). Since the correctness/error result file output process is almost the same as the correctness/error result transmission process, the illustration thereof is omitted. The difference between the correct/wrong result transmission process and the correct/wrong result file output process will be described together with the description of FIG. 34.

そして、送信装置101は、ループカウンタiに1加算し(ステップS2508)、繰り返し判定として、ループカウンタiが5未満か否かを判断する(ステップS2509)。ループカウンタiが5未満である場合(ステップS2509:True)、送信装置101は、ステップS2505の処理に移行する。一方、ループカウンタiが5以上である場合(ステップS2509:False)、送信装置101は、送信元におけるデータ蓄積処理を実行する(ステップS2510)。そして、送信装置101は、ステップS2503、S2507の各処理で出力したデータファイルを受信装置102に送信する(ステップS2511)。ステップS2511の処理終了後、送信装置101は、非同期式における元データ生成処理を終了する。 Then, the transmitting apparatus 101 increments the loop counter i by 1 (step S2508), and determines whether or not the loop counter i is less than 5 (step S2509) as a repeat determination. When the loop counter i is less than 5 (step S2509: True), the transmitting apparatus 101 moves to the process of step S2505. On the other hand, when the loop counter i is 5 or more (step S2509: False), the transmission apparatus 101 executes the data storage process at the transmission source (step S2510). Then, the transmitting device 101 transmits the data file output in each process of steps S2503 and S2507 to the receiving device 102 (step S2511). After the processing of step S2511, the transmission apparatus 101 ends the asynchronous original data generation processing.

ここで、データファイルの送信について、送信装置101と受信装置102とは、電子メールや、FTP(File Transfer Protocol)によるファイル転送を利用してもよい。また、データファイルは、一般的な圧縮アルゴリズムによって圧縮されたデータでもよい。 Here, for transmission of the data file, the transmission device 101 and the reception device 102 may use e-mail or file transfer by FTP (File Transfer Protocol). Further, the data file may be data compressed by a general compression algorithm.

一方、受信装置102は、送信装置101からデータファイルを受信する(ステップS2551)。次に、受信装置102は、データ特性読込み処理を実行する(ステップS2552)。データ特性読込み処理は、データ特性受信処理とほぼ同様の処理であるため、図示を省略する。データ特性受信処理に対するデータ特性読込み処理の差異の説明については、図28の説明と併せて行う。 On the other hand, the receiving apparatus 102 receives the data file from the transmitting apparatus 101 (step S2551). Next, the receiving apparatus 102 executes a data characteristic reading process (step S2552). Since the data characteristic reading process is almost the same as the data characteristic receiving process, the illustration thereof is omitted. The difference between the data characteristic receiving process and the data characteristic reading process will be described together with the description of FIG. 28.

そして、受信装置102は、ステップS2351の終了後、ループカウンタiに0を代入する(ステップS2553)。次に、受信装置102は、推測関数によるデータ生成処理を実行する(ステップS2554)。そして、受信装置102は、正誤結果読込み処理を実行する(ステップS2555)。正誤結果読込み処理は、正誤結果受信処理とほぼ同様の処理であるため、図示を省略する。正誤結果受信処理に対する正誤結果読込み処理の差異の説明については、図35の説明と併せて行う。 After the end of step S2351, the receiving apparatus 102 substitutes 0 into the loop counter i (step S2553). Next, the receiving apparatus 102 executes a data generation process using an estimation function (step S2554). Then, the receiving apparatus 102 executes the correctness/wrong result reading process (step S2555). The correctness/wrong result reading process is almost the same as the correctness/wrong result receiving process, and therefore the illustration is omitted. The difference between the correct/wrong result receiving process and the correct/wrong result reading process will be described together with the description of FIG. 35.

次に、受信装置102は、ループカウンタiに1加算し(ステップS2556)、繰り返し判定として、ループカウンタiが5未満か否かを判断する(ステップS2557)。ループカウンタiが5未満である場合(ステップS2557:True)、受信装置102は、ステップS2554の処理に移行する。一方、ループカウンタiが5以上である場合(ステップS2557:False)、受信装置102は、生成データ保存処理を実行する(ステップS2558)。次に、受信装置102は、受信先におけるデータ蓄積処理を実行する(ステップS2559)。ステップS2559の処理終了後、受信装置102は、非同期式における元データ生成処理を終了する。 Next, the receiving apparatus 102 increments the loop counter i by 1 (step S2556), and determines whether or not the loop counter i is less than 5 (step S2557) as the repetition determination. When the loop counter i is less than 5 (step S2557: True), the reception apparatus 102 moves to the processing of step S2554. On the other hand, when the loop counter i is 5 or more (step S2557: False), the receiving apparatus 102 executes the generated data saving process (step S2558). Next, the receiving apparatus 102 executes data storage processing at the receiving destination (step S2559). After the processing of step S2559 ends, the reception apparatus 102 ends the asynchronous original data generation processing.

図26は、対象データ読込み処理手順の一例を示すフローチャートである。送信装置101は、ディスク204に保存されている送信データ1002をメモリ202内の配列変数sourceに読込む(ステップS2601)。次に、送信装置101は、読込んだ送信データ1002のサイズnを、変数datasizeに代入する(ステップS2602)。ステップS2602の処理終了後、送信装置101は、対象データ読込み処理を終了する。 FIG. 26 is a flowchart showing an example of a target data reading processing procedure. The transmission device 101 reads the transmission data 1002 stored in the disk 204 into the array variable source in the memory 202 (step S2601). Next, the transmission device 101 substitutes the size n of the read transmission data 1002 into the variable datasize (step S2602). After the processing of step S2602 ends, the transmission apparatus 101 ends the target data reading processing.

図27は、データ特性抽出処理手順の一例を示すフローチャートである。送信装置101は、配列変数sourceから、コンピュータ名とダンプ出力日時とを抽出する(ステップS2701)。 FIG. 27 is a flowchart showing an example of the data characteristic extraction processing procedure. The transmitter 101 extracts the computer name and the dump output date and time from the array variable source (step S2701).

次に、送信装置101は、抽出したコンピュータ名とダンプ出力日時とを、変数computername、dumpdateにそれぞれ代入する(ステップS2702)。ステップS2702の処理について、図27では、データ特性がコンピュータ名とダンプ出力日時としているが、これに限らない。また、データ特性を配列変数から抽出することについても、これに限らない。例えば、送信装置101は、配列変数source以外のデータからデータ特性を抽出してもよいし、送信装置101の操作者によって入力されたデータをデータ特性として設定してもよい。ステップS2702の処理終了後、送信装置101は、データ特性抽出処理を終了する。 Next, the transmission device 101 substitutes the extracted computer name and dump output date and time into the variables computername and dumpdate (step S2702). Regarding the processing of step S2702, in FIG. 27, the data characteristics are the computer name and the dump output date, but the data characteristics are not limited to this. Further, the extraction of the data characteristic from the array variable is not limited to this. For example, the transmission device 101 may extract the data characteristic from data other than the array variable source, or may set the data input by the operator of the transmission device 101 as the data characteristic. After the processing of step S2702 ends, the transmission apparatus 101 ends the data characteristic extraction processing.

図28は、データ特性送信処理手順とデータ特性受信処理手順との一例を示すフローチャートである。データ特性送信処理として、送信装置101は、変数datasizeの値と、変数computernameの値と、変数dumpdateの値とを受信装置102に送信する(ステップS2801)。ステップS2801の処理終了後、送信装置101は、データ特性送信処理を終了する。また、データ特性ファイル出力処理では、送信装置101は、変数datasizeの値と、変数computernameの値と、変数dumpdateの値とをデータファイルに出力する。 FIG. 28 is a flowchart showing an example of a data characteristic transmission processing procedure and a data characteristic reception processing procedure. As the data characteristic transmission process, the transmission device 101 transmits the value of the variable datasize, the value of the variable computername, and the value of the variable dumpdate to the reception device 102 (step S2801). After the processing of step S2801, the transmission apparatus 101 ends the data characteristic transmission processing. Further, in the data characteristic file output processing, the transmission device 101 outputs the value of the variable datasize, the value of the variable computername, and the value of the variable dumpdate to the data file.

一方、データ特性受信処理として、受信装置102は、受信した値を変数datasizeと、変数computername、dumpdateにそれぞれ代入する(ステップS2851)。ステップS2851の処理終了後、受信装置102は、データ特性受信処理を終了する。また、データ特性読込み処理では、受信装置102は、データファイルに記載された値を変数datasizeと、変数computername、dumpdateにそれぞれ代入する。 On the other hand, as the data characteristic reception processing, the reception device 102 substitutes the received values into the variable datasize and the variables computername and dumpdate (step S2851). After the processing of step S2851 ends, the reception apparatus 102 ends the data characteristic reception processing. Further, in the data characteristic reading process, the receiving device 102 substitutes the values described in the data file into the variables datasize and the variables computername and dumpdate, respectively.

図29は、推測関数によるデータ生成処理手順の一例を示すフローチャートである。推測関数によるデータ生成処理は、送信装置101と受信装置102とが行う処理である。図29では、送信装置101が推測関数によるデータ生成処理を実行する例を用いて説明を行う。 FIG. 29 is a flowchart showing an example of the data generation processing procedure by the estimation function. The data generation process using the estimation function is a process performed by the transmission device 101 and the reception device 102. In FIG. 29, a description will be given using an example in which the transmission device 101 executes the data generation process by the estimation function.

送信装置101は、変数datasize分繰り返すため、ループカウンタjに0を代入する(ステップS2901)。次に、現在が1回目の推測か否かを判断する(ステップS2902)。1回目の推測か否かについては、具体的なプログラムコードで記載すると、「if i=0」の処理結果で判断することができる。 The transmission apparatus 101 substitutes 0 for the loop counter j because it repeats for the variable datasize (step S2901). Next, it is determined whether or not the present is the first guess (step S2902). Whether or not it is the first guess can be determined by the processing result of “if i=0” if written in a specific program code.

現在が1回目の推測である場合(ステップS2902:True)、送信装置101は、候補リストkouhoの全てに1を代入する(ステップS2903)。ステップS2903の処理は、具体的なプログラムコードで記載すると、「kouho[0]:=1,…,kouho[255]:=1」となる。ステップS2903の時点では、まだ推測が1度も行われていない。従って、kouho[0]〜[255]の値、すなわち、候補除外推測回数を1に設定することにより、値:0〜255の全てが正解候補として設定された状態となる。 When the present is the first guess (step S2902: True), the transmitting apparatus 101 substitutes 1 into all of the candidate list kouho (step S2903). When the process of step S2903 is described by a specific program code, “kouho[0]:=1,..., Kouho[255]:=1” is obtained. As of step S2903, the guess has not been made yet. Therefore, by setting the values of kouho[0] to [255], that is, the number of candidate exclusion estimations to 1, all values of 0 to 255 are set as correct answer candidates.

一方、現在が1回目の推測でない、すなわち2回目以上の推測である場合(ステップS2902:False)、送信装置101は、前回の推測が正解だったか否かを判断する(ステップS2904)。前回の推測が正解だったか否かについては、具体的なプログラムコードで記載すると、「if kekka[i−1][j]=0」の処理結果で判断することができる。 On the other hand, if the present is not the first guess, that is, the second or more guesses (step S2902: False), the transmitting apparatus 101 determines whether the previous guess was the correct answer (step S2904). Whether or not the previous guess was correct can be described by a specific program code, and can be determined by the processing result of “if kekka [i−1][j]=0”.

前回の推測が正解だった場合(ステップS2904:True)、送信装置101は、前回の推測を、今回の推測結果に代入する(ステップS2905)。ステップS2905の処理は、具体的なプログラムコードで記載すると、「suisoku[i][j]:=suisoku[i−1][j]」となる。 If the previous guess was correct (step S2904: True), the transmitting apparatus 101 substitutes the previous guess into the current guess result (step S2905). If the process of step S2905 is described by a specific program code, “suisoku[i][j]:=suisoku[i−1][j]” is obtained.

一方、前回の推測が誤りだった場合(ステップS2904:False)、送信装置101は、候補リスト作成処理を実行する(ステップS2906)。候補リスト作成処理は、図30で説明する。ステップS2903、S2906の処理終了後、送信装置101は、データ推測処理を実行する(ステップS2907)。データ推測処理は、図32で示す。ステップS2905、S2907の処理終了後、送信装置101は、ループカウンタjに1加算し(ステップS2908)、ループカウンタjが変数datasize未満か否かを判断する(ステップS2909)。ループカウンタjが変数datasize未満である場合(ステップS2909:True)、送信装置101は、ステップS2902の処理に移行する。一方、ループカウンタjが変数datasize以上である場合(ステップS2909:False)、送信装置101は、推測関数によるデータ生成処理を終了する。 On the other hand, if the previous estimation was incorrect (step S2904: False), the transmitting apparatus 101 executes the candidate list creation process (step S2906). The candidate list creation process will be described with reference to FIG. After the processes of steps S2903 and S2906 are completed, the transmission apparatus 101 executes the data estimation process (step S2907). The data estimation process is shown in FIG. After the processes of steps S2905 and S2907 are completed, the transmission apparatus 101 increments the loop counter j by 1 (step S2908), and determines whether the loop counter j is less than the variable datasize (step S2909). When the loop counter j is less than the variable datasize (step S2909: True), the transmitting apparatus 101 moves to the process of step S2902. On the other hand, when the loop counter j is greater than or equal to the variable datasize (step S2909: False), the transmission apparatus 101 ends the data generation process by the estimation function.

図30は、候補リスト作成処理手順の一例を示すフローチャートである。候補リスト作成処理は、送信装置101と受信装置102とが行う処理である。図30では、送信装置101が候補リスト作成処理を実行する例を用いて説明を行う。 FIG. 30 is a flowchart showing an example of a candidate list creation processing procedure. The candidate list creation process is a process performed by the transmission device 101 and the reception device 102. In FIG. 30, description will be given using an example in which the transmission device 101 executes the candidate list creation processing.

送信装置101は、候補リストkouhoの全てに1を代入する(ステップS3001)。ステップS3001の処理は、具体的なプログラムコードで記載すると、「kouho[0]:=1,…,kouho[255]:=1」となる。次に、送信装置101は、i+1回繰り返すため、ループカウンタmに0を代入する(ステップS3002)。 The transmission apparatus 101 substitutes 1 into all of the candidate list kouho (step S3001). When the process of step S3001 is described by a concrete program code, it becomes “khouho[0]:=1,..., Kouho[255]:=1”. Next, since the transmitting apparatus 101 repeats i+1 times, 0 is assigned to the loop counter m (step S3002).

そして、送信装置101は、変数kにm+1回目の推測結果の値を代入し、また、カウンタ変数cに0を代入する(ステップS3003)。ステップS3003の処理は、具体的なプログラムコードで記載すると、「k := suisoku[m][j]、 c := 0」となる。このように、m+1回目の推測結果は、suisoku[m]、言い換えれば、レコード1801−mに格納されている。 Then, the transmission device 101 substitutes the value of the m+1-th estimation result for the variable k and 0 for the counter variable c (step S3003). The process of step S3003 is “k := suisoku[m][j], c :=0” when written in a specific program code. As described above, the m+1-th estimation result is stored in suisoku[m], in other words, the record 1801-m.

次に、送信装置101は、候補リストkouhoのkの値、すなわち候補除外推測回数がm+1ならば、カウント変数cに1加算する(ステップS3004)。ステップS3004の処理は、具体的なプログラムコードで記載すると、「if (kouho[k]=m+1) then c:= c+1」となる。 Next, the transmission device 101 adds 1 to the count variable c if the value of k in the candidate list kouho, that is, the number of candidate exclusion estimations is m+1 (step S3004). The process of step S3004 is “if (kouho[k]=m+1) then c:=c+1” when written in a specific program code.

そして、送信装置101は、変数kに1加算し、加算した結果kが256以上になった場合、kに0を代入する(ステップS3005)。ステップS3005の処理は、具体的なプログラムコードで記載すると、「k:= k+1、 if (k>=256) then k:= 0」となる。 Then, the transmission device 101 adds 1 to the variable k, and when the addition result k becomes 256 or more, substitutes 0 into k (step S3005). The process of step S3005 is “k:=k+1, if (k>=256) then k:=0” when written in a specific program code.

次に、送信装置101は、カウンタ変数cが、推測関数によるデータ生成処理により得られた値からm+1回目の推測結果で正解が含まれる候補値の集合の先頭の値までの数より小さいか否かを判断する(ステップS3006)。ここで、推測関数によるデータ生成処理により得られた値からm+1回目の推測結果で正解が含まれる候補値の集合の先頭の値までの数は、value2startindex[m]で得ることができる。さらに、m+1回目の推測結果は、kekka[m][j]で得ることができる。従って、カウンタ変数cが前述した数より小さいかは、具体的なプログラムコードで記載すると、「if c < value2startindex[m][kekka[m][j]]」の処理結果で判断することができる。ステップS3006の処理において処理結果が真となる場合(ステップS3006:True)、送信装置101は、ステップS3004の処理に移行する。 Next, the transmission device 101 determines whether the counter variable c is smaller than the number from the value obtained by the data generation process by the estimation function to the leading value of the set of candidate values including the correct answer in the (m+1)th estimation result. It is determined whether or not (step S3006). Here, the number from the value obtained by the data generation processing by the guess function to the head value of the set of candidate values including the correct answer in the m+1-th guess result can be obtained by value2startindex[m]. Furthermore, the m+1-th estimation result can be obtained by kekka[m][j]. Therefore, whether or not the counter variable c is smaller than the above-described number can be determined by the processing result of “if c <value2startindex[m][kekka[m][j]]” if written in a specific program code. .. When the processing result is true in the process of step S3006 (step S3006: True), the transmitting apparatus 101 moves to the process of step S3004.

ステップS3006の処理において処理結果が偽となる場合(ステップS3006:False)、送信装置101は、候補リストkouhoのkの値、すなわち候補除外推測回数がm+1ならば、候補リストkouhoのkの値に1加算し、さらに、カウント変数cに1加算する(ステップS3007)。ステップS3007の処理は、具体的なプログラムコードで記載すると、「if (kouho[k]=m+1) then { kouho[k]:= kouho[k] +1; c:= c+1 }」となる。 When the processing result is false in the process of step S3006 (step S3006: False), the transmitting apparatus 101 sets the value of k of the candidate list kouho, that is, the value of k of the candidate list kouho if the number of candidate exclusion estimations is m+1. 1 is added, and 1 is further added to the count variable c (step S3007). If the process of step S3007 is described by a specific program code, it becomes “if (kouho[k]=m+1) then {{kouhou[k]:=kouhou[k]+1; c:=c+1}”.

次に、送信装置101は、変数kに1加算し、加算した結果kが256以上になった場合、kに0を代入する(ステップS3008)。ステップS3008の処理は、具体的なプログラムコードで記載すると、「k:= k+1、if (k>=256) then k:= 0」となる。 Next, the transmission apparatus 101 adds 1 to the variable k, and when the addition result k becomes 256 or more, substitutes 0 into k (step S3008). The process of step S3008 is “k:=k+1, if (k>=256) then k:=0” when written in a specific program code.

そして、送信装置101は、カウンタ変数cが、推測関数によるデータ生成処理により得られた値からm+1回目の推測結果で正解が含まれる候補値の集合の末尾の値までの数より小さいか否かを判断する(ステップS3009)。ここで、推測関数によるデータ生成処理により得られた値からm+1回目の推測結果で正解が含まれる候補値の集合の末尾の値までの数は、value2endindex[m]で得ることができる。従って、カウンタ変数cが前述した数より小さいかは、具体的なプログラムコードで記載すると、「if c < value2endindex[m][kekka[m][j]]」の処理結果で判断することができる。ステップS3006の処理において処理結果が真となる場合(ステップS3009:True)、送信装置101は、ステップS3007の処理に移行する。 Then, the transmission device 101 determines whether or not the counter variable c is smaller than the number from the value obtained by the data generation process by the estimation function to the end value of the set of candidate values including the correct answer in the (m+1)th estimation result. Is determined (step S3009). Here, the number from the value obtained by the data generation process using the guess function to the end value of the set of candidate values that includes the correct answer in the m+1st guess result can be obtained by value2endindex[m]. Therefore, whether or not the counter variable c is smaller than the above-mentioned number can be determined by the processing result of “if c <value2endindex[m][kekka[m][j]]” if written in a concrete program code. .. When the processing result is true in the process of step S3006 (step S3009: True), the transmitting apparatus 101 moves to the process of step S3007.

ステップS3009の処理において処理結果が偽となる場合(ステップS3009:False)、送信装置101は、ループカウンタmに1を加算する(ステップS3010)。そして、送信装置101は、mがiより小さいか否かを判断する(ステップS3011)。mがiより小さい場合(ステップS3011:True)、送信装置101は、ステップS3003の処理に移行する。一方、mがi以上である場合(ステップS3011:False)、送信装置101は、候補リスト作成処理を終了する。次に、候補リスト作成処理中における候補リストkouhoの記憶内容の変化の一例を、図31を用いて説明する。 When the processing result is false in the process of step S3009 (step S3009: False), the transmission apparatus 101 adds 1 to the loop counter m (step S3010). Then, the transmission device 101 determines whether m is smaller than i (step S3011). When m is smaller than i (step S3011: True), the transmitting apparatus 101 moves to the process of step S3003. On the other hand, when m is equal to or greater than i (step S3011: False), the transmission apparatus 101 ends the candidate list creation process. Next, an example of changes in the stored contents of the candidate list kouho during the candidate list creation process will be described with reference to FIG.

図31は、候補リストkouhoの記憶内容の変化の一例を示す説明図である。図31では、i=4とする。また、図31で示す例は、図8、図9で示した例と同一である。従って、1回目の推測、言い換えれば、m=0の際には、suisoku[m][j]=10、kekka[m][j]=1とする。この場合、suisoku[m][j]+value2startindex[m][kekka[m][j]]は、推測値:11となる。また、suisoku[m][j]+value2endindex[m][kekka[m][j]]は、推測値:95となる。 FIG. 31 is an explanatory diagram showing an example of changes in the storage contents of the candidate list kouho. In FIG. 31, i=4. The example shown in FIG. 31 is the same as the example shown in FIGS. 8 and 9. Therefore, in the first guess, in other words, when m=0, suisoku[m][j]=10 and kekka[m][j]=1. In this case, suisoku[m][j]+value2startindex[m][kekka[m][j]] is an estimated value: 11. Also, suisoku[m][j]+value2endindex[m][kekka[m][j]] is an estimated value: 95.

また、候補リストkouhoの候補除外推測回数が2とならなかった箇所、すなわち、1のままの箇所が、図8、図9での1回目の推測で説明した、1回目の推測によって正解候補から除外した値となる。図31の最も上部に示した候補リストkouhoでは、1回目の推測によって正解候補から除外した値を、墨塗りで示す。 In addition, a portion where the number of candidate exclusion estimations in the candidate list kouho does not reach 2, that is, a portion where it is 1 remains as a correct answer candidate by the first estimation described in the first estimation in FIGS. 8 and 9. The value is excluded. In the candidate list kouho shown at the top of FIG. 31, the values excluded from the correct answer candidates by the first guess are shown in red.

同様に、2回目の推測、言い換えれば、m=1の際には、suisoku[m][j]=38、kekka[m][j]=3とする。この場合、suisoku[m][j]+value2startindex[m][kekka[m][j]]は、値:95となる。また、suisoku[m][j]+value2endindex[m][kekka[m][j]]は、値:37となる。 Similarly, in the second estimation, in other words, when m=1, suisoku[m][j]=38 and kekka[m][j]=3. In this case, suisoku[m][j]+value2startindex[m][kekka[m][j]] has a value of 95. The value of suisoku[m][j]+value2endindex[m][kekka[m][j]] is 37.

また、候補リストkouhoの候補除外推測回数が3とならなかった箇所、すなわち、1または2の箇所が、図8、図9での2回目の推測で説明した正解候補から除外した値となる。図31の上から2番目に示した候補リストkouhoでは、2回目の推測によって正解候補から除外した値を、墨塗りで示す。 Further, a portion where the number of estimations of candidate exclusion in the candidate list kouho does not reach 3, that is, a portion of 1 or 2 becomes a value excluded from the correct answer candidates explained in the second estimation in FIGS. 8 and 9. In the candidate list kouho shown second from the top in FIG. 31, the values excluded from the correct answer candidates by the second guess are shown in red.

同様に、3回目の推測、言い換えれば、m=2の際には、suisoku[m][j]=13、kekka[m][j]=3とする。この場合、suisoku[m][j]+value2startindex[m][kekka[m][j]]は、値:32となる。また、suisoku[m][j]+value2endindex[m][kekka[m][j]]は、値:12となる。 Similarly, in the case of the third guess, in other words, when m=2, suisoku[m][j]=13 and kekka[m][j]=3. In this case, suisoku[m][j]+value2startindex[m][kekka[m][j]] has a value of 32. The value of suisoku[m][j]+value2endindex[m][kekka[m][j]] is 12

また、候補リストkouhoの候補除外推測回数が4とならなかった箇所、すなわち、1〜3のいずれかの箇所が、図8、図9での3回目の推測で説明した正解候補から除外した値となる。図31の上から3番目に示した候補リストkouhoでは、3回目の推測によって正解候補から除外した値を、墨塗りで示す。 In addition, a part where the number of candidate exclusion estimations in the candidate list kouho does not reach 4, that is, any one of 1 to 3 is a value excluded from the correct answer candidates explained in the third guess in FIGS. 8 and 9. Becomes In the candidate list kouho shown third from the top in FIG. 31, the values excluded from the correct answer candidates by the third guess are shown in red.

同様に、4回目の推測、言い換えれば、m=3の際には、suisoku[m][j]=33、kekka[m][j]=1とする。この場合、suisoku[m][j]+value2startindex[m][kekka[m][j]]は、値:34となる。また、suisoku[m][j]+value2endindex[m][kekka[m][j]]は、値:36となる。 Similarly, in the fourth guess, in other words, when m=3, suisoku[m][j]=33 and kekka[m][j]=1. In this case, suisoku[m][j]+value2startindex[m][kekka[m][j]] has a value of 34. The value of suisoku[m][j]+value2endindex[m][kekka[m][j]] is 36.

また、候補リストkouhoの候補除外推測回数が5とならなかった箇所、すなわち、1〜4のいずれかの箇所が、図8、図9での4回目の推測で説明した正解候補から除外した値となる。図31の一番下に示した候補リストkouhoでは、4回目の推測によって正解候補から除外した値を、墨塗りで示す。 In addition, a part of the candidate list kouho where the number of candidate exclusion estimations does not reach 5, that is, any one of 1 to 4 is a value excluded from the correct candidate explained in the fourth guess in FIGS. 8 and 9. Becomes In the candidate list kouho shown at the bottom of FIG. 31, the values excluded from the correct answer candidates by the fourth guess are shown in red.

図32は、データ推測処理手順の一例を示すフローチャートである。図32で示すデータ推測処理は、バイト単位に前回の値、前々回の値、…を推測結果として出力する。そして、データ推測処理は、送信装置101と受信装置102とが行う処理である。図32では、送信装置101が、データ推測処理を実行する例を用いて説明する。 FIG. 32 is a flowchart showing an example of the data estimation processing procedure. The data estimation process shown in FIG. 32 outputs the previous value, the value of the previous two times,... As the estimation result in byte units. Then, the data estimation process is a process performed by the transmission device 101 and the reception device 102. In FIG. 32, an example in which the transmission device 101 executes the data estimation process will be described.

送信装置101は、過去のダンプファイルデータ1001から、コンピュータ名がcomputernameと一致する、採取日時の新しい方から5回分のデータを抽出し、過去データ抽出サンプルsampleに代入する(ステップS3201)。また、過去データがない場合、送信装置101は、過去データ抽出サンプルsampleを0埋めする。 The transmission apparatus 101 extracts data from the past dump file data 1001 for five times from the newest collection date and time when the computer name matches computername and substitutes it into the past data extraction sample sample (step S3201). If there is no past data, the transmitting apparatus 101 fills the past data extraction sample sample with zero.

次に、多くとも5回繰り返すため、送信装置101は、ループカウンタmに0を代入する(ステップS3202)。そして、送信装置101は、sample[m][j]の値をkに代入する(ステップS3203)。そして、送信装置101は、候補リストkouhoのkが正解候補として残っているか否かを判断する(ステップS3204)。候補リストkouhoのkが正解候補に残っているかは、図17で説明したように、候補リストkouhoのkの候補除外推測回数が、現在の推測回数より1大きければよい。そして、現在の推測回数は、iで示される。従って、候補リストkouhoのkが正解候補として残っているかは、具体的なプログラムコードで記載すると、「if kouho[k] = i+1」の処理結果で判断することができる。 Next, since it repeats at most 5 times, the transmitting apparatus 101 substitutes 0 into the loop counter m (step S3202). Then, the transmission apparatus 101 substitutes the value of sample[m][j] into k (step S3203). Then, the transmission apparatus 101 determines whether or not k in the candidate list kouho remains as a correct answer candidate (step S3204). Whether or not k in the candidate list kouho remains as a correct answer candidate may be determined by the number of candidate exclusion estimations of k in the candidate list kouho being one larger than the current estimation number, as described with reference to FIG. The current estimated number of times is indicated by i. Therefore, whether or not k in the candidate list kouho remains as a correct answer candidate can be determined by the processing result of “if kouho[k]=i+1” when written in a specific program code.

kが正解候補として残っている場合(ステップS3204:True)、送信装置101は、kの値を推測結果として代入する(ステップS3205)。ステップS3205の処理は、具体的なプログラムコードで記載すると、「suisoku[i][j]:= k」となる。ステップS3205の処理終了後、送信装置101は、データ推測処理を終了する。 When k remains as a correct answer candidate (step S3204: True), the transmitting apparatus 101 substitutes the value of k as the estimation result (step S3205). The process of step S3205 is “suisoku[i][j]:=k” when written in a specific program code. After the processing of step S3205 ends, the transmission apparatus 101 ends the data estimation processing.

一方、kが正解候補として残っていない場合(ステップS3204:False)、送信装置101は、変数mに1加算する(ステップS3206)。次に、送信装置101は、mが5未満か否かを判断する(ステップS3207)。mが5未満である場合(ステップS3207:True)、送信装置101は、ステップS3203の処理に移行する。一方、mが5以上である場合(ステップS3207:False)、送信装置101は、候補リストkouhoの各値の中で候補除外推測回数がi+1となる最小の値を、推測結果に代入する(ステップS3208)。ステップS3208の処理終了後、送信装置101は、データ推測処理を終了する。 On the other hand, when k does not remain as a correct answer candidate (step S3204: False), the transmission apparatus 101 adds 1 to the variable m (step S3206). Next, the transmission apparatus 101 determines whether m is less than 5 (step S3207). When m is less than 5 (step S3207: True), the transmission apparatus 101 moves to the process of step S3203. On the other hand, when m is 5 or more (step S3207: False), the transmission apparatus 101 substitutes the minimum value of the candidate exclusion guess count i+1 among the values of the candidate list kouho into the guess result (step S3207). S3208). After the processing of step S3208 ends, the transmission apparatus 101 ends the data estimation processing.

また、データ推測処理は、図32で示す処理に限られない。例えば、送信装置101や受信装置102は、バイト単位に過去データの出現回数の多い値を、推測結果として出力してもよい。また、送信装置101や受信装置102は、データ特性に応じて、データ推測方法を切り替えてもよい。 The data estimation process is not limited to the process shown in FIG. 32. For example, the transmission device 101 and the reception device 102 may output, as the estimation result, a value having a large number of occurrences of past data in byte units. Further, the transmission device 101 and the reception device 102 may switch the data estimation method according to the data characteristics.

図33は、正誤判定処理手順の一例を示すフローチャートである。正誤判定処理は、送信装置101が実行する処理である。送信装置101は、datasize回繰り返すため、ループカウンタjに0を代入する(ステップS3301)。次に、送信装置101は、推測結果が正しいかを判断する(ステップS3302)。ここで、推測結果が正しいかは、具体的なプログラムコードで記載すると、「if source[j] = suisoku[i][j]」の処理結果で判断することができる。 FIG. 33 is a flowchart showing an example of the correctness determination processing procedure. The correctness determination process is a process executed by the transmission device 101. Since the transmission apparatus 101 repeats datasize times, 0 is assigned to the loop counter j (step S3301). Next, the transmission device 101 determines whether the estimation result is correct (step S3302). Here, whether or not the estimation result is correct can be determined by the processing result of “if source[j]=suisoku[i][j]” if written in a specific program code.

推測結果が誤りである場合(ステップS3302:False)、正誤情報の「1」〜「3」のそれぞれに割り当てられた候補値の集合のうちのどれに正解が含まれるかを判断するため、送信装置101は、現在が1回目の推測か否かを判断する(ステップS3303)。現在が1回目の推測か否かについては、具体的なプログラムコードで記述すると、「if i = 0」の処理結果で判断することができる。 If the estimation result is incorrect (step S3302: False), the transmission is performed to determine which of the set of candidate values assigned to each of the correctness information “1” to “3” contains the correct answer. The device 101 determines whether the present is the first guess (step S3303). Whether or not the present time is the first guess can be judged from the processing result of “if i =0” if described in a concrete program code.

現在が1回目の推測である場合(ステップS3303:True)、送信装置101は、候補リストkouhoの全てに1を代入する(ステップS3304)。ステップS3304の処理は、具体的なプログラムコードで記載すると、「kouho[0]:=1,…,kouho[255]:=1」となる。一方、1回目の推測でない場合(ステップS3303:False)、送信装置101は、候補リスト作成処理を実行する(ステップS3305)。 When the present is the first guess (step S3303: True), the transmission apparatus 101 substitutes 1 into all of the candidate list kouho (step S3304). The process of step S3304 is “kouho[0]:=1,..., Kouho[255]:=1” when written in a specific program code. On the other hand, if it is not the first guess (step S3303: False), the transmitting apparatus 101 executes a candidate list creation process (step S3305).

ステップS3304、またはS3305の処理終了後、対象データの値から推測結果までを繰り返すため、送信装置101は、変数kに対象データの値を代入し、また、カウンタ変数cに0を代入する(ステップS3306)。ステップS3306の処理は、具体的なプログラムコードで記載すると、「k:= source[j]、c:= 0」となる。 After the processing of step S3304 or S3305 is completed, since the value of the target data and the estimation result are repeated, the transmitting apparatus 101 substitutes the value of the target data for the variable k and 0 for the counter variable c (step S3306). The process of step S3306 is “k:=source[j], c:=0” when written in a specific program code.

次に、送信装置101は、候補リストkouhoのkの候補除外推測回数がi+1ならば、カウント変数cに1加算する(ステップS3307)。ステップS3307の処理は、具体的なプログラムコードで記載すると、「if (kouho[k] = i+1) then c:= c+1」となる。 Next, the transmission apparatus 101 adds 1 to the count variable c if the candidate exclusion estimation count of k of the candidate list kouho is i+1 (step S3307). The process of step S3307 is “if (kouho[k]=i+1) then c:=c+1” when written in a specific program code.

そして、送信装置101は、変数kに1加算し、加算した結果kが256以上になった場合、kに0を代入する(ステップS3308)。ステップS3308の処理は、具体的なプログラムコードで記載すると、「k:= k+1、 if (k>=256) then k:= 0」となる。 Then, the transmission apparatus 101 adds 1 to the variable k, and when the addition result k is 256 or more, substitutes 0 into k (step S3308). The process of step S3308 is “k:=k+1, if (k>=256) then k:=0” when written in a specific program code.

次に、送信装置101は、変数kが推測結果に到達したか否かを判断する(ステップS3309)。変数kが推測結果に到達したか否かについては、具体的なプログラムコードで記載すると、「if k = suisoku[i][j]」の処理結果で判断することができる。変数kが推測結果に到達していない場合(ステップS3309:False)、送信装置101は、ステップS3307の処理に移行する。 Next, the transmission apparatus 101 determines whether the variable k has reached the estimation result (step S3309). Whether or not the variable k has reached the estimation result can be determined by the processing result of “if k =suisoku[i][j]” if written in a specific program code. When the variable k has not reached the estimation result (step S3309: False), the transmission apparatus 101 moves to the processing of step S3307.

一方、変数kが推測結果に到達した場合(ステップS3309:True)、送信装置101は、カウント変数cの値を結果インデックス変換情報kekka2valueのi+1番目の推測で用いるレコードにより変換した値を、正誤情報kekkaに代入する(ステップS3310)。ステップS3310の処理は、具体的なプログラムコードで記載すると、「kekka[i][j]:= kekka2value[i][c]」となる。 On the other hand, when the variable k reaches the estimation result (step S3309: True), the transmission device 101 converts the value of the count variable c by the record used in the i+1-th estimation of the result index conversion information kekka2value into the correctness information Substitute for kekka (step S3310). The process of step S3310 is “kekka[i][j]:=kekka2value[i][c]” when written in a specific program code.

推測結果が正しい場合(ステップS3302:True)、送信装置101は、正解を意味する「0」を正誤情報kekkaに代入する(ステップS3311)。 When the estimation result is correct (step S3302: True), the transmission apparatus 101 substitutes “0”, which means a correct answer, into the correctness information kekka (step S3311).

ステップS3310、またはS3311の処理終了後、送信装置101は、ループカウンタjに1を加算する(ステップS3312)。そして、送信装置101は、jが変数datasizeより小さいか否かを判断する(ステップS3313)。jが変数datasizeより小さい場合(ステップS3313:True)、送信装置101は、ステップS3302の処理に移行する。一方、jが変数datasize以上である場合(ステップS3313:False)、送信装置101は、正誤判定処理を終了する。 After the processing of step S3310 or S3311, the transmitting apparatus 101 increments the loop counter j by 1 (step S3312). Then, the transmission apparatus 101 determines whether j is smaller than the variable datasize (step S3313). When j is smaller than the variable datasize (step S3313: True), the transmission apparatus 101 moves to the processing of step S3302. On the other hand, when j is greater than or equal to the variable datasize (step S3313: False), the transmission apparatus 101 ends the correctness determination process.

図34は、正誤結果送信処理手順の一例を示すフローチャートである。正誤結果送信処理は、送信装置101が実行する処理である。送信装置101は、datasize回繰り返すため、変数jに0を代入し、また、変数pとカウンタ変数cに、0を代入する(ステップS3401)。 FIG. 34 is a flowchart showing an example of the procedure of the correct/wrong result transmission process. The correct/incorrect result transmission process is a process executed by the transmission device 101. Since the transmitter 101 repeats datasize times, it substitutes 0 for the variable j, and also substitutes 0 for the variable p and the counter variable c (step S3401).

次に、送信装置101は、現在が1回目の推測か否かを判断する(ステップS3402)。1回目の推測か否かについては、具体的なプログラムコードで記載すると、「if i=0」の処理結果で判断することができる。 Next, the transmission apparatus 101 determines whether or not the present is the first guess (step S3402). Whether or not it is the first guess can be determined by the processing result of “if i=0” if written in a specific program code.

現在が1回目の推測でない場合(ステップS3402:False)、送信装置101は、前回の推測が正解だったか否かを判断する(ステップS3403)。前回の推測が正解だったか否かについては、具体的なプログラムコードで記載すると、「if kekka[i−1][j] = 0」の処理結果で判断することができる。 If the present is not the first guess (step S3402: False), the transmitting apparatus 101 determines whether the previous guess was correct (step S3403). Whether or not the previous guess was the correct answer can be determined from the processing result of “if kekka [i−1][j]=0” by describing it in a specific program code.

前回の推測が正解でない場合(ステップS3403:False)、または、現在が1回目の推測である場合(ステップS3402:True)、送信装置101は、変数pを2ビット分左シフトした値と、今回の推測結果を、変数pに代入し、カウンタ変数cに1加算する(ステップS3404)。ステップS3404の処理は、具体的なプログラムコードで記載すると、「p:= p*4 + kekka[i][j]、 c:= c+1」となる。 If the previous guess is not the correct answer (step S3403: False), or if the present is the first guess (step S3402: True), the transmitting device 101 shifts the variable p by 2 bits to the left, and this time. The estimation result of is substituted into the variable p and 1 is added to the counter variable c (step S3404). The process of step S3404 is “p:=p*4+kekka[i][j], c:=c+1” when written in a specific program code.

そして、送信装置101は、4回分の正誤情報を変数pに代入したか否かを判断する(ステップS3405)。4回分の正誤情報を変数pに代入したか否かについては、具体的なプログラムコードで記載すると、「if c=4」の処理結果で判断することができる。4回分の正誤情報を変数pに代入した場合(ステップS3405:True)、送信装置101は、変数pの値を受信装置102に送信する(ステップS3406)。そして、受信装置102は、変数pとカウンタ変数cに0を代入する(ステップS3407)。 Then, the transmission apparatus 101 determines whether or not the correctness information for four times has been substituted into the variable p (step S3405). Whether or not the correct/incorrect information for four times has been substituted into the variable p can be determined from the processing result of “if c=4” if written in a specific program code. When the correctness information for four times is substituted into the variable p (step S3405: True), the transmission device 101 transmits the value of the variable p to the reception device 102 (step S3406). Then, the receiving apparatus 102 substitutes 0 for the variable p and the counter variable c (step S3407).

ステップS3407の処理終了後、または、前回の推測が正解だった場合(ステップS3403:True)、4回分の正誤情報を変数pに代入していない場合(ステップS3405:False)、送信装置101は、jに1加算する(ステップS3408)。そして、送信装置101は、jが変数datasize未満か否かを判断する(ステップS3409)。jが変数datasize未満である場合(ステップS3409:True)、送信装置101は、ステップS3402の処理に移行する。一方、jが変数datasize以上である場合(ステップS3409:False)、送信装置101は、正誤結果送信処理を終了する。 After the processing of step S3407 is completed, or when the previous guess is correct (step S3403: True), if correctness information for four times is not substituted for the variable p (step S3405: False), the transmission device 101 One is added to j (step S3408). Then, the transmission apparatus 101 determines whether j is less than the variable datasize (step S3409). When j is less than the variable datasize (step S3409: True), the transmission apparatus 101 moves to the process of step S3402. On the other hand, when j is equal to or larger than the variable datasize (step S3409: False), the transmission apparatus 101 ends the correct/incorrect result transmission process.

ここで、ステップS3409:Falseとなった場合に、カウンタ変数cが0でない場合、未送信の正誤情報があることになるため、送信装置101は、変数pの値に、4^(4−c)を乗じた値を、受信装置102に送信する。 Here, in the case of Step S3409: False, if the counter variable c is not 0, it means that there is untransmitted correct/wrong information. Therefore, the transmitting apparatus 101 sets the value of the variable p to 4^(4-c). ) Is transmitted to the receiving apparatus 102.

また、正誤結果送信処理に対する正誤結果ファイル出力処理の差異は、送信装置101が、ステップS3406の処理において、変数pの値をファイルに書き込むことである。 Further, the difference between the correct/wrong result transmission process and the correct/wrong result file output process is that the transmission device 101 writes the value of the variable p in the file in the process of step S3406.

図35は、正誤結果受信処理手順の一例を示すフローチャートである。正誤結果受信処理は、受信装置102が実行する処理である。受信装置102は、datasize回繰り返すため、変数jに0を代入し、また、カウンタ変数cに、0を代入する(ステップS3501)。 FIG. 35 is a flowchart showing an example of the procedure of the correct/wrong result reception process. The correct/wrong result receiving process is a process executed by the receiving apparatus 102. Since the receiving apparatus 102 repeats datasize times, it substitutes 0 into the variable j and 0 into the counter variable c (step S3501).

次に、受信装置102は、送信装置101から受信した値を変数pに代入する(ステップS3502)。そして、受信装置102は、現在が1回目の推測か否かを判断する(ステップS3503)。1回目の推測か否かについては、具体的なプログラムコードで記載すると、「if i=0」の処理結果で判断することができる。 Next, the receiving apparatus 102 substitutes the value received from the transmitting apparatus 101 for the variable p (step S3502). Then, the receiving apparatus 102 determines whether or not the present is the first guess (step S3503). Whether or not it is the first guess can be determined by the processing result of “if i=0” if written in a specific program code.

現在が1回目の推測でない場合(ステップS3503:False)、受信装置102は、前回の推測が正解だったか否かを判断する(ステップS3504)。前回の推測が正解だったか否かについては、具体的なプログラムコードで記載すると、「if kekka[i−1][j] = 0」の処理結果で判断することができる。 If the present is not the first guess (step S3503: False), the receiving apparatus 102 determines whether the previous guess was correct (step S3504). Whether or not the previous guess was the correct answer can be determined from the processing result of “if kekka [i−1][j]=0” by describing it in a specific program code.

前回の推測が正解である場合(ステップS3504:True)、受信装置102は、kekka[i][j]に0を代入し(ステップS3505)、jに1加算する(ステップS3506)。 If the previous guess is correct (step S3504: True), the receiving apparatus 102 substitutes 0 for kekka[i][j] (step S3505) and adds 1 to j (step S3506).

一方、現在が1回目の推測である場合(ステップS3503:True)、または、前回の推測が正解でない場合(ステップS3504:False)、受信装置102は、変数pの値から1回分の正誤情報を抽出する(ステップS3507)。ステップS3507の処理は、具体的なプログラムコードで記載すると、「kekka[i][j]:= { p ÷ 4^(3−c) } mod 4」となる。そして、受信装置102は、ループカウンタjとカウンタ変数cとに1加算する(ステップS3508)。 On the other hand, when the present is the first guess (step S3503: True) or when the previous guess is not the correct answer (step S3504: False), the receiving apparatus 102 obtains one correctness information from the value of the variable p. It is extracted (step S3507). The process of step S3507 is “kekka[i][j]:={p÷4^(3-c)} mod 4” when written in a specific program code. Then, the receiving apparatus 102 adds 1 to the loop counter j and the counter variable c (step S3508).

ステップS3506、またはステップS3508の処理終了後、受信装置102は、ループカウンタjが変数datasize未満か否かを判断する(ステップS3509)。ループカウンタjが変数datasize未満である場合(ステップS3509:True)、受信装置102は、4回分の正誤情報を処理したか否かを判断する(ステップS3510)。4回分の正誤情報を処理したか否かについては、具体的なプログラムコードで記載すると、「if c = 4」の処理結果で判断することができる。 After the processing of step S3506 or step S3508 ends, the receiving apparatus 102 determines whether the loop counter j is less than the variable datasize (step S3509). When the loop counter j is less than the variable datasize (step S3509: True), the receiving apparatus 102 determines whether or not the correct/incorrect information for four times has been processed (step S3510). Whether or not the correct/incorrect information for four times has been processed can be determined from the processing result of “if c = 4” by describing in a specific program code.

4回分の正誤情報を処理していない場合(ステップS3510:False)、受信装置102は、ステップS3503の処理に移行する。一方、4回分の正誤情報を処理した場合(ステップS3510:True)、受信装置102は、カウンタ変数cに0を代入し(ステップS3511)、ステップS3502の処理に移行する。一方、ループカウンタjが変数datasize以上である場合(ステップS3509:False)、受信装置102は、正誤結果受信処理を終了する。 If the correctness information for four times has not been processed (step S3510: False), the reception apparatus 102 moves to the processing of step S3503. On the other hand, when the correctness information for four times has been processed (step S3510: True), the receiving apparatus 102 substitutes 0 for the counter variable c (step S3511), and proceeds to the processing of step S3502. On the other hand, when the loop counter j is equal to or larger than the variable datasize (step S3509: False), the reception apparatus 102 ends the correct/incorrect result reception process.

また、正誤結果受信処理に対する正誤結果読込み処理の差異は、ステップS3502において、受信装置102は、ファイルに出力された値を、変数pに代入することである。 The difference between the correct/wrong result receiving process and the correct/wrong result reading process is that the receiving apparatus 102 substitutes the value output to the file for the variable p in step S3502.

図36は、生成データ保存処理手順の一例を示すフローチャートである。生成データ保存処理は、受信装置102が実行する処理である。受信装置102は、datasize回繰り返すため、ループカウンタjに0を代入する(ステップS3601)。次に、受信装置102は、5回目の推測が正解だったか否かを判断する(ステップS3602)。5回目の推測が正解だったか否かについては、具体的なプログラムコードで記載すると、「if kekka[4][j]=0」の処理結果で判断することができる。 FIG. 36 is a flowchart showing an example of the generated data storage processing procedure. The generated data storage process is a process executed by the reception device 102. Since the receiving apparatus 102 repeats datasize times, 0 is assigned to the loop counter j (step S3601). Next, the receiving apparatus 102 determines whether or not the fifth guess was correct (step S3602). Whether or not the fifth guess was the correct answer can be determined from the processing result of “if kekka [4][j]=0” by describing it in a specific program code.

前回の推測が正解だった場合(ステップS3602:True)、受信装置102は、5回目の推測を、推測結果として代入する(ステップS3603)。本実施の形態では、suisoku[5]を推測結果として利用する。従って、ステップS3603の処理は、具体的なプログラムコードで記載すると、「suisoku[5][j]:= suisoku[4][j]」となる。 If the previous guess was the correct answer (step S3602: True), the receiving apparatus 102 substitutes the fifth guess as the guess result (step S3603). In the present embodiment, suisoku[5] is used as the estimation result. Therefore, the process of step S3603 is “suisoku[5][j]:=suisoku[4][j]” when written in a specific program code.

一方、前回の推測が誤りだった場合(ステップS3602:False)、受信装置102は、候補リスト作成処理を実行する(ステップS3604)。次に、受信装置102は、候補リストkouhoのうち、候補除外推測回数が6となる値を推測結果に代入する(ステップS3605)。 On the other hand, if the previous estimation was incorrect (step S3602: False), the receiving apparatus 102 executes a candidate list creation process (step S3604). Next, the receiving apparatus 102 substitutes a value having a candidate exclusion estimation count of 6 in the estimation result in the candidate list kouho (step S3605).

ステップS3603、またはS3605の処理終了後、受信装置102は、ループカウンタjに1加算する(ステップS3606)。そして、受信装置102は、ループカウンタjが変数datasize未満か否かを判断する(ステップS3607)。ループカウンタjが変数datasize未満である場合(ステップS3607:True)、受信装置102は、ステップS3602の処理に移行する。 After the processing of step S3603 or S3605 ends, the receiving apparatus 102 increments the loop counter j by 1 (step S3606). Then, the receiving apparatus 102 determines whether the loop counter j is less than the variable datasize (step S3607). When the loop counter j is less than the variable datasize (step S3607: True), the reception apparatus 102 moves to the processing of step S3602.

一方、ループカウンタjが変数datasize以上である場合(ステップS3607:False)、受信装置102は、6回目の推測結果suisoku[5]をファイルに保存する(ステップS3608)。ステップS3608の処理終了後、受信装置102は、生成データ保存処理を終了する。 On the other hand, when the loop counter j is equal to or larger than the variable datasize (step S3607: False), the reception apparatus 102 stores the sixth estimation result suisoku[5] in a file (step S3608). After the processing of step S3608 ends, the reception apparatus 102 ends the generated data storage processing.

図37は、送信元におけるデータ蓄積処理手順の一例を示すフローチャートである。送信元におけるデータ蓄積処理は、送信装置101が実行する処理である。送信装置101は、ディスク204の過去のダンプファイルデータ1001に行を挿入する(ステップS3701)。次に、送信装置101は、追加した行に、変数computername、dumpdate、sourceを記録する(ステップS3702)。ステップS3702の処理終了後、送信装置101は、送信元におけるデータ蓄積処理を終了する。 FIG. 37 is a flowchart showing an example of a data storage processing procedure at the transmission source. The data storage process at the transmission source is a process executed by the transmission device 101. The transmitting apparatus 101 inserts a line into the past dump file data 1001 on the disk 204 (step S3701). Next, the transmission device 101 records the variables computername, dumpdate, and source in the added line (step S3702). After the processing of step S3702 ends, the transmission apparatus 101 ends the data storage processing at the transmission source.

また、送信元におけるデータ蓄積処理に対する受信先におけるデータ蓄積処理の差異は、ステップS3701、S3702の実行主体が受信装置102になることと、ステップS3702のsourceがsuisoku[5]になることである。 Further, the difference between the data storage processing at the transmission source and the data storage processing at the reception destination is that the execution apparatus of steps S3701 and S3702 is the receiving device 102, and the source of step S3702 is suisoku[5].

以上説明したように、受信装置102は、元データを持つ送信装置101と共通の所定のルールから同一の推測値を生成し、送信装置101から受信した推測値の正誤情報から元データを推測することを繰り返して元データを生成する。このように、送信装置101が元データを送信せずに、受信装置102は、元データを生成するため、元データの漏洩を抑制することができる。 As described above, the receiving apparatus 102 generates the same estimated value from a predetermined rule common to the transmitting apparatus 101 having the original data, and estimates the original data from the correctness information of the estimated value received from the transmitting apparatus 101. This is repeated to generate the original data. In this way, since the transmitting device 101 does not transmit the original data and the receiving device 102 generates the original data, leakage of the original data can be suppressed.

また、受信装置102は、実施例1で示したように、正誤情報として正解を示す「0」、または誤りを示す「1」を取り得る1ビットの情報を受信し、元データと同一のデータを生成してもよい。これにより、受信装置102は、通信傍受等による元データの漏洩を抑制しつつ、実施例2に比べて簡便な処理で、元データと同一のデータを生成することができる。 Also, as described in the first embodiment, the receiving apparatus 102 receives 1-bit information that can take “0” indicating a correct answer or “1” indicating an error as correctness information, and the same data as the original data is received. May be generated. As a result, the receiving apparatus 102 can generate the same data as the original data with a simpler process than that of the second embodiment while suppressing leakage of the original data due to communication interception and the like.

また、受信装置102は、正誤情報として正解を示す第1の識別情報、または正解が候補値の集合を、推測値を基準として複数の部分に分割した部分集合を示す識別情報を受信し、元データと同一のデータを生成してもよい。これにより、受信装置102は、通信傍受等による元データの漏洩を抑制しつつ、実施例1に比べて推測回数を少なくすることができる。 Further, the receiving device 102 receives the first identification information indicating a correct answer as the correctness information or the identification information indicating a subset obtained by dividing the set of the correct values of the candidate values into a plurality of parts based on the estimated value, and The same data as the data may be generated. As a result, the receiving apparatus 102 can reduce the number of times of estimation as compared with the first embodiment, while suppressing leakage of the original data due to communication interception and the like.

受信装置102は、実施例2で示したように、正誤情報として正解を示す「0」、または正解がそれぞれの候補値の集合内にあることを示す「1」〜「3」を取り得る2ビットの情報を受信し、元データと同一のデータを生成してもよい。これにより、受信装置102は、正誤情報のデータ量を抑えて、通信傍受等による元データの漏洩を抑制しつつ、実施例1に比べて推測回数を少なくすることができる。具体的には、実施例1では、最多で255回の推測を行う可能性があるが、実施例2では多くても5回の推測で元データと同一のデータを生成することができる。 As described in the second embodiment, the receiving apparatus 102 can take “0” indicating the correct answer as the correctness information or “1” to “3” indicating that the correct answer is in the set of each candidate value 2 Bit information may be received and the same data as the original data may be generated. As a result, the receiving apparatus 102 can reduce the number of guesses as compared with the first embodiment while suppressing the data amount of the correct/wrong information and suppressing the leakage of the original data due to the interception of communication. Specifically, in the first embodiment, it is possible to make a maximum of 255 estimations, but in the second embodiment, the same data as the original data can be generated by a maximum of 5 estimations.

また、送信装置101と受信装置102とは、過去のダンプデータに基づく値が候補値の集合に含まれる場合、その値を推測値としてもよい。これにより、ダンプデータが似たような値を取るのであれば、受信装置102は、推測結果を正解にし易くすることができる。そして、推測結果が正解になれば、以降の推測を行わなくてよいため、受信装置102は、実施例1、2のどちらにおいても、元データと同一のデータを生成することにかかる負荷を抑えることができる。 Further, when the values based on the past dump data are included in the set of candidate values, the transmitting device 101 and the receiving device 102 may use the values as the estimated values. Thereby, if the dump data has similar values, the receiving apparatus 102 can easily make the estimation result correct. If the estimation result is correct, the subsequent estimation does not have to be performed, and thus the receiving device 102 suppresses the load of generating the same data as the original data in both the first and second embodiments. be able to.

また、送信装置101と受信装置102は、候補リストkouhoが示す候補値の集合の初期状態を、元データが示す値が取り得る値の集合としてもよい。これにより、送信装置101と受信装置102とは、どのような元データに対しても対応することができる。また、元データのデータフォーマットが予め判明しており、データフォーマットによってあるバイトに設定される値がある程度限定されるとする。この場合、送信装置101と受信装置102とは、候補リストkouhoが示す候補値の集合の初期状態を、その限定される値の集合としてもよい。これにより、送信装置101と受信装置102は、推測する回数をより少なくすることができる。 Further, the transmitting device 101 and the receiving device 102 may set the initial state of the set of candidate values indicated by the candidate list kouho as a set of values that can be taken by the values indicated by the original data. As a result, the transmission device 101 and the reception device 102 can handle any original data. Further, it is assumed that the data format of the original data is known in advance and the value set in a certain byte is limited to some extent depending on the data format. In this case, the transmitting device 101 and the receiving device 102 may use the initial state of the set of candidate values indicated by the candidate list kouho as the limited set of values. As a result, the transmitting device 101 and the receiving device 102 can reduce the number of times of estimation.

なお、本実施の形態で説明したデータ生成方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本データ生成プログラムは、ハードディスク、フレキシブルディスク、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本データ生成プログラムは、インターネット等のネットワークを介して配布してもよい。 The data generation method described in the present embodiment can be realized by executing a prepared program on a computer such as a personal computer or a workstation. This data generation program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM (Compact Disc-Read Only Memory), a DVD (Digital Versatile Disk), and can be read from the recording medium by the computer. Executed by The data generation program may be distributed via a network such as the Internet.

上述した実施の形態に関し、さらに以下の付記を開示する。 The following supplementary notes will be disclosed regarding the above-described embodiment.

(付記1)元データを有する送信装置と、前記送信装置と接続する受信装置とを有するデータ生成システムのデータ生成方法であって、
前記送信装置が、
前記元データが示す値となり得る送信元の候補値の集合を参照して前記送信元の候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて、第1の値を生成し、
生成した前記第1の値と前記元データが示す値との差分の大きさを示す差分情報を生成して、生成した前記差分情報を前記受信装置に送信し、
前記第1の値と、生成した前記差分情報とに基づいて、前記送信元の候補値の集合を更新し、
前記送信元の候補値の集合に含まれる候補値が1つに特定可能となるまで前記送信する処理を繰り返す、
処理を実行し、
前記受信装置が、
前記差分情報を、前記送信装置から受信し、
受信先の候補値の集合を参照して、前記所定のルールに基づいて、第1の値を生成し、
生成した当該第1の値と、受信した前記差分情報とに基づいて、前記受信先の候補値の集合を更新し、
前記受信先の候補値の集合に含まれる候補値が1つに特定可能となるまで前記受信先の候補値の集合を更新する処理を繰り返し、前記受信先の候補値の集合に含まれる候補値によって示されるデータを生成する、
処理を実行することを特徴とするデータ生成方法。
(Supplementary Note 1) A data generating method of a data generating system having a transmitting device having original data and a receiving device connected to the transmitting device,
The transmitter is
Generate a first value based on a predetermined rule that refers to a set of transmission source candidate values that can be values indicated by the original data and generates any value included in the transmission source candidate value set Then
Generating difference information indicating the magnitude of the difference between the generated first value and the value indicated by the original data, and transmitting the generated difference information to the receiving device,
Updating the set of candidate values of the transmission source based on the first value and the generated difference information,
The process of transmitting is repeated until one candidate value included in the set of candidate values of the transmission source can be specified,
Perform processing,
The receiving device,
Receiving the difference information from the transmitting device,
Generate a first value based on the predetermined rule with reference to a set of candidate values of the receiver,
Updating the set of candidate values of the receiving destination based on the generated first value and the received difference information,
The process of updating the set of candidate values of the receiving destination is repeated until one candidate value included in the set of candidate values of the receiving destination can be specified, and the candidate value included in the set of candidate value of the receiving destination is repeated. Generate the data indicated by,
A data generation method characterized by executing processing.

(付記2)前記差分情報は、
前記所定のルールに基づいて生成された値と前記元データが示す値との差分がないことを示す第1の識別情報、または、前記生成された値と前記元データが示す値との差分があることを示す第2の識別情報であって、
前記受信装置が、
前記差分情報が前記第1の識別情報である場合、当該第1の値によって示されるデータを生成し、
前記差分情報が前記第2の識別情報である場合、当該第1の値が前記受信先の候補値の集合に含まれないように前記受信先の候補値の集合を更新する、
ことを特徴とする付記1に記載のデータ生成方法。
(Supplementary Note 2) The difference information is
The first identification information indicating that there is no difference between the value generated based on the predetermined rule and the value indicated by the original data, or the difference between the generated value and the value indicated by the original data is Second identification information indicating that there is
The receiving device,
When the difference information is the first identification information, the data indicated by the first value is generated,
If the difference information is the second identification information, the set of candidate values for the recipient is updated such that the first value is not included in the set of candidate values for the recipient.
The data generation method according to appendix 1, characterized in that.

(付記3)前記差分情報は、
前記所定のルールに基づいて生成された値と前記元データが示す値との差分がないことを示す第1の識別情報、または、前記送信元の候補値の集合を前記生成された値を基準として複数の部分に分割した複数の部分集合のうちの前記元データが示す値が含まれる部分集合を示す識別情報であって、
前記受信装置が、
前記差分情報が前記第1の識別情報である場合、当該第1の値によって示されるデータを生成し、
前記差分情報が前記複数の部分集合のいずれかの部分集合を示す識別情報である場合、前記受信先の候補値の集合を当該第1の値を基準として複数の部分に分割した複数の部分集合のうちの前記いずれかの部分集合に対応する部分集合を、前記受信先の候補値の集合として更新する、
ことを特徴とする付記1に記載のデータ生成方法。
(Supplementary Note 3) The difference information is
First identification information indicating that there is no difference between a value generated based on the predetermined rule and a value indicated by the original data, or a set of candidate values of the transmission source is used as a reference for the generated value. As identification information indicating a subset including a value represented by the original data among a plurality of subsets divided into a plurality of parts,
The receiving device,
When the difference information is the first identification information, the data indicated by the first value is generated,
When the difference information is identification information indicating any subset of the plurality of subsets, a plurality of subsets obtained by dividing the set of candidate values of the receiving destination into a plurality of portions based on the first value. Updating a subset corresponding to any one of the subsets as a set of candidate values of the recipient,
The data generation method according to appendix 1, characterized in that.

(付記4)前記差分情報は、
前記第1の識別情報と、前記生成された値を基準として前記送信元の候補値の集合を均等に3分割した複数の部分集合の各部分集合を示す各識別情報とをそれぞれ識別可能な2ビットの情報であることを特徴とする付記3に記載のデータ生成方法。
(Supplementary note 4) The difference information is
It is possible to identify the first identification information and the identification information indicating each subset of a plurality of subsets obtained by equally dividing the set of candidate values of the transmission source into three based on the generated value. 4. The data generation method according to appendix 3, which is bit information.

(付記5)前記元データは、前記送信装置のメモリをダンプしたダンプデータであって、
前記受信装置が、前記元データより過去に採取された過去のダンプデータを記憶し、
前記所定のルールは、
前記過去のダンプデータに基づく値が前記送信元または前記受信先の候補値の集合に含まれる場合、当該値を第1の値として出力し、
前記過去のダンプデータに基づく値が前記送信元または前記受信先の候補値の集合に含まれない場合、前記送信元または前記受信先の候補値の集合に含まれるいずれかの値を第1の値として出力する、
ことを特徴とする付記1〜4のいずれか一つに記載のデータ生成方法。
(Supplementary Note 5) The original data is dump data obtained by dumping the memory of the transmission device,
The receiving device stores past dump data collected in the past from the original data,
The predetermined rule is
When the value based on the past dump data is included in the set of candidate values of the transmission source or the reception destination, the value is output as the first value,
When a value based on the past dump data is not included in the set of candidate values of the transmission source or the reception destination, a value included in the set of candidate values of the transmission source or the reception destination is set to the first value. Output as a value,
The data generation method according to any one of appendices 1 to 4.

(付記6)前記送信元の候補値の集合および前記受信先の候補値の集合の初期状態は、前記元データが示す値が取り得る値の集合であることを特徴とする付記1〜5のいずれか一つに記載のデータ生成方法。 (Supplementary Note 6) The initial state of the set of candidate values of the transmission source and the set of candidate values of the reception destination is a set of possible values of the values indicated by the original data. The data generation method described in any one.

(付記7)元データを有する送信装置と、前記送信装置と接続する受信装置とを有するデータ生成システムであって、
前記送信装置は、
前記元データが示す値となり得る送信元の候補値の集合を参照して前記送信元の候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて、第1の値を生成し、
生成した前記第1の値と前記元データが示す値との差分の大きさを示す差分情報を生成して、生成した前記差分情報を前記受信装置に送信し、
前記第1の値と、生成した前記差分情報とに基づいて、前記送信元の候補値の集合を更新し、
前記送信元の候補値の集合に含まれる候補値が1つに特定可能となるまで前記送信する処理を繰り返し、
前記受信装置は、
前記差分情報を、前記送信装置から受信し、
受信先の候補値の集合を参照して、前記所定のルールに基づいて、第1の値を生成し、
生成した当該第1の値と、受信した前記差分情報とに基づいて、前記受信先の候補値の集合を更新し、
前記受信先の候補値の集合に含まれる候補値が1つに特定可能となるまで前記受信先の候補値の集合を更新する処理を繰り返し、前記受信先の候補値の集合に含まれる候補値によって示されるデータを生成する、
処理を実行することを特徴とするデータ生成システム。
(Supplementary Note 7) A data generation system comprising: a transmitter having original data; and a receiver connected to the transmitter,
The transmitter is
Generate a first value based on a predetermined rule that refers to a set of transmission source candidate values that can be values indicated by the original data and generates any value included in the transmission source candidate value set Then
Generating difference information indicating the magnitude of the difference between the generated first value and the value indicated by the original data, and transmitting the generated difference information to the receiving device,
Updating the set of candidate values of the transmission source based on the first value and the generated difference information,
The process of transmitting is repeated until one candidate value included in the set of candidate values of the transmission source can be specified,
The receiving device,
Receiving the difference information from the transmitting device,
Generate a first value based on the predetermined rule with reference to a set of candidate values of the receiver,
Updating the set of candidate values of the receiving destination based on the generated first value and the received difference information,
The process of updating the set of candidate values of the receiving destination is repeated until one candidate value included in the set of candidate values of the receiving destination can be specified, and the candidate value included in the set of candidate value of the receiving destination is repeated. Generate the data indicated by,
A data generation system characterized by executing processing.

(付記8)コンピュータに、
元データが示す値となり得る候補値の集合を参照して前記候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて生成された第1の値と前記元データが示す値との差分の大きさを示す差分情報を、前記元データを有する送信元から受信し、
前記候補値の集合を参照して、前記所定のルールに基づいて、第1の値を生成し、
生成した前記第1の値と、受信した前記差分情報とに基づいて、前記候補値の集合を更新し、
前記候補値の集合に含まれる候補値が1つに特定可能となるまで前記候補値の集合を更新する処理を繰り返し、前記候補値の集合に含まれる候補値によって示されるデータを生成する、
処理を実行させることを特徴とするデータ生成プログラム。
(Appendix 8)
A value indicated by the original data and a first value generated based on a predetermined rule for generating any value included in the set of candidate values with reference to a set of candidate values that can be values indicated by the original data The difference information indicating the magnitude of the difference with is received from the transmission source having the original data,
Generating a first value based on the predetermined rule with reference to the set of candidate values;
Updating the set of candidate values based on the generated first value and the received difference information,
Repeating the process of updating the set of candidate values until one candidate value included in the set of candidate values can be specified, and generating data indicated by the candidate value included in the set of candidate values.
A data generation program characterized by executing processing.

100 データ生成システム
101 送信装置
102 受信装置
111〜113 正誤情報
300、400 制御部
301、402 推測値生成部
302 正誤情報生成部
303 送信部
304、403 更新部
401 受信部
404 元データ生成部
100 data generation system 101 transmission device 102 reception device 111-113 correctness information 300, 400 control unit 301, 402 estimated value generation unit 302 correctness information generation unit 303 transmission unit 304, 403 update unit 401 reception unit 404 original data generation unit

Claims (7)

元データを有する送信装置と、前記送信装置と接続する受信装置とを有するデータ生成システムのデータ生成方法であって、
前記送信装置が、
前記元データが示す値となり得る送信元の候補値の集合を参照して前記送信元の候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて、第1の値を生成し、
生成した前記第1の値と前記元データが示す値との差分の大きさを示す差分情報を生成して、生成した前記差分情報を前記受信装置に送信し、
前記第1の値と、生成した前記差分情報とに基づいて、前記送信元の候補値の集合を更新し、
前記送信元の候補値の集合に含まれる候補値が1つに特定可能となるまで前記送信する処理を繰り返す、
処理を実行し、
前記受信装置が、
前記差分情報を、前記送信装置から受信し、
受信先の候補値の集合を参照して、前記所定のルールに基づいて、第1の値を生成し、
生成した当該第1の値と、受信した前記差分情報とに基づいて、前記受信先の候補値の集合を更新し、
前記受信先の候補値の集合に含まれる候補値が1つに特定可能となるまで前記受信先の候補値の集合を更新する処理を繰り返し、前記受信先の候補値の集合に含まれる候補値によって示されるデータを生成する、
処理を実行することを特徴とするデータ生成方法。
A data generation method of a data generation system, comprising: a transmitter having original data; and a receiver connected to the transmitter,
The transmitter is
Generate a first value based on a predetermined rule that refers to a set of transmission source candidate values that can be values indicated by the original data and generates any value included in the transmission source candidate value set Then
Generating difference information indicating the magnitude of the difference between the generated first value and the value indicated by the original data, and transmitting the generated difference information to the receiving device,
Updating the set of candidate values of the transmission source based on the first value and the generated difference information,
The process of transmitting is repeated until one candidate value included in the set of candidate values of the transmission source can be specified,
Perform processing,
The receiving device,
Receiving the difference information from the transmitting device,
Generate a first value based on the predetermined rule with reference to a set of candidate values of the receiver,
Updating the set of candidate values of the receiving destination based on the generated first value and the received difference information,
The process of updating the set of candidate values of the receiving destination is repeated until one candidate value included in the set of candidate values of the receiving destination can be specified, and the candidate value included in the set of candidate value of the receiving destination is repeated. Generate the data indicated by,
A data generation method characterized by executing processing.
前記差分情報は、
前記所定のルールに基づいて生成された値と前記元データが示す値との差分がないことを示す第1の識別情報、または、前記生成された値と前記元データが示す値との差分があることを示す第2の識別情報であって、
前記受信装置が、
前記差分情報が前記第1の識別情報である場合、当該第1の値によって示されるデータを生成し、
前記差分情報が前記第2の識別情報である場合、当該第1の値が前記受信先の候補値の集合に含まれないように前記受信先の候補値の集合を更新する、
ことを特徴とする請求項1に記載のデータ生成方法。
The difference information is
The first identification information indicating that there is no difference between the value generated based on the predetermined rule and the value indicated by the original data, or the difference between the generated value and the value indicated by the original data is Second identification information indicating that there is
The receiving device,
When the difference information is the first identification information, the data indicated by the first value is generated,
If the difference information is the second identification information, the set of candidate values for the recipient is updated such that the first value is not included in the set of candidate values for the recipient.
The data generation method according to claim 1, wherein:
前記差分情報は、
前記所定のルールに基づいて生成された値と前記元データが示す値との差分がないことを示す第1の識別情報、または、前記送信元の候補値の集合を前記生成された値を基準として複数の部分に分割した複数の部分集合のうちの前記元データが示す値が含まれる部分集合を示す識別情報であって、
前記受信装置が、
前記差分情報が前記第1の識別情報である場合、当該第1の値によって示されるデータを生成し、
前記差分情報が前記複数の部分集合のいずれかの部分集合を示す識別情報である場合、前記受信先の候補値の集合を当該第1の値を基準として複数の部分に分割した複数の部分集合のうちの前記いずれかの部分集合に対応する部分集合を、前記受信先の候補値の集合として更新する、
ことを特徴とする請求項1に記載のデータ生成方法。
The difference information is
First identification information indicating that there is no difference between a value generated based on the predetermined rule and a value indicated by the original data, or a set of candidate values of the transmission source is used as a reference for the generated value. As identification information indicating a subset including a value represented by the original data among a plurality of subsets divided into a plurality of parts,
The receiving device,
When the difference information is the first identification information, the data indicated by the first value is generated,
When the difference information is identification information indicating any subset of the plurality of subsets, a plurality of subsets obtained by dividing the set of candidate values of the receiving destination into a plurality of portions based on the first value. Updating a subset corresponding to any one of the subsets as a set of candidate values of the recipient,
The data generation method according to claim 1, wherein:
前記差分情報は、
前記第1の識別情報と、前記生成された値を基準として前記送信元の候補値の集合を均等に3分割した複数の部分集合の各部分集合を示す各識別情報とをそれぞれ識別可能な2ビットの情報であることを特徴とする請求項3に記載のデータ生成方法。
The difference information is
It is possible to identify the first identification information and the identification information indicating each subset of a plurality of subsets obtained by equally dividing the set of candidate values of the transmission source into three based on the generated value. The data generating method according to claim 3, wherein the data generating method is bit information.
前記元データは、前記送信装置のメモリをダンプしたダンプデータであって、
前記受信装置が、前記元データより過去に採取された過去のダンプデータを記憶し、
前記所定のルールは、
前記過去のダンプデータに基づく値が前記送信元または前記受信先の候補値の集合に含まれる場合、当該値を第1の値として出力し、
前記過去のダンプデータに基づく値が前記送信元または前記受信先の候補値の集合に含まれない場合、前記送信元または前記受信先の候補値の集合に含まれるいずれかの値を第1の値として出力する、
ことを特徴とする請求項1〜4のいずれか一つに記載のデータ生成方法。
The original data is dump data obtained by dumping the memory of the transmission device,
The receiving device stores past dump data collected in the past from the original data,
The predetermined rule is
When the value based on the past dump data is included in the set of candidate values of the transmission source or the reception destination, the value is output as the first value,
When a value based on the past dump data is not included in the set of candidate values of the transmission source or the reception destination, a value included in the set of candidate values of the transmission source or the reception destination is set to the first value. Output as a value,
The data generation method according to any one of claims 1 to 4, characterized in that.
元データを有する送信装置と、前記送信装置と接続する受信装置とを有するデータ生成システムであって、
前記送信装置は、
前記元データが示す値となり得る送信元の候補値の集合を参照して前記送信元の候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて、第1の値を生成し、
生成した前記第1の値と前記元データが示す値との差分の大きさを示す差分情報を生成して、生成した前記差分情報を前記受信装置に送信し、
前記第1の値と、生成した前記差分情報とに基づいて、前記送信元の候補値の集合を更新し、
前記送信元の候補値の集合に含まれる候補値が1つに特定可能となるまで前記送信する処理を繰り返し、
前記受信装置は、
前記差分情報を、前記送信装置から受信し、
受信先の候補値の集合を参照して、前記所定のルールに基づいて、第1の値を生成し、
生成した当該第1の値と、受信した前記差分情報とに基づいて、前記受信先の候補値の集合を更新し、
前記受信先の候補値の集合に含まれる候補値が1つに特定可能となるまで前記受信先の候補値の集合を更新する処理を繰り返し、前記受信先の候補値の集合に含まれる候補値によって示されるデータを生成する、
処理を実行することを特徴とするデータ生成システム。
A data generation system having a transmitting device having original data and a receiving device connected to the transmitting device,
The transmitter is
Generate a first value based on a predetermined rule that refers to a set of transmission source candidate values that can be values indicated by the original data and generates any value included in the transmission source candidate value set Then
Generating difference information indicating the magnitude of the difference between the generated first value and the value indicated by the original data, and transmitting the generated difference information to the receiving device,
Updating the set of candidate values of the transmission source based on the first value and the generated difference information,
The process of transmitting is repeated until one candidate value included in the set of candidate values of the transmission source can be specified,
The receiving device,
Receiving the difference information from the transmitting device,
Generate a first value based on the predetermined rule with reference to a set of candidate values of the receiver,
Updating the set of candidate values of the receiving destination based on the generated first value and the received difference information,
The process of updating the set of candidate values of the receiving destination is repeated until one candidate value included in the set of candidate values of the receiving destination can be specified, and the candidate value included in the set of candidate value of the receiving destination is repeated. Generate the data indicated by,
A data generation system characterized by executing processing.
コンピュータに、
元データが示す値となり得る候補値の集合を参照して前記候補値の集合に含まれるいずれかの値を生成する所定のルールに基づいて生成された第1の値と前記元データが示す値との差分の大きさを示す差分情報を、前記元データを有する送信元から受信し、
前記候補値の集合を参照して、前記所定のルールに基づいて、第1の値を生成し、
生成した前記第1の値と、受信した前記差分情報とに基づいて、前記候補値の集合を更新し、
前記候補値の集合に含まれる候補値が1つに特定可能となるまで前記候補値の集合を更新する処理を繰り返し、前記候補値の集合に含まれる候補値によって示されるデータを生成する、
処理を実行させることを特徴とするデータ生成プログラム。
On the computer,
A value indicated by the original data and a first value generated based on a predetermined rule for generating any value included in the set of candidate values with reference to a set of candidate values that can be values indicated by the original data The difference information indicating the magnitude of the difference with is received from the transmission source having the original data,
Generating a first value based on the predetermined rule with reference to the set of candidate values;
Updating the set of candidate values based on the generated first value and the received difference information,
Repeating the process of updating the set of candidate values until one candidate value included in the set of candidate values can be specified, and generating data indicated by the candidate value included in the set of candidate values.
A data generation program characterized by executing processing.
JP2016204731A 2016-10-18 2016-10-18 Data generation method, data generation system, and data generation program Active JP6729283B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016204731A JP6729283B2 (en) 2016-10-18 2016-10-18 Data generation method, data generation system, and data generation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016204731A JP6729283B2 (en) 2016-10-18 2016-10-18 Data generation method, data generation system, and data generation program

Publications (2)

Publication Number Publication Date
JP2018066827A JP2018066827A (en) 2018-04-26
JP6729283B2 true JP6729283B2 (en) 2020-07-22

Family

ID=62087003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016204731A Active JP6729283B2 (en) 2016-10-18 2016-10-18 Data generation method, data generation system, and data generation program

Country Status (1)

Country Link
JP (1) JP6729283B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1117673A (en) * 1997-06-25 1999-01-22 Canon Inc Common key encryption communication method and communication network thereof
JP2003186749A (en) * 2001-12-19 2003-07-04 Fujitsu Ltd Computer, memory dump method and memory dump program
JP5208717B2 (en) * 2008-12-24 2013-06-12 中国電力株式会社 Integer encryption and decryption methods

Also Published As

Publication number Publication date
JP2018066827A (en) 2018-04-26

Similar Documents

Publication Publication Date Title
CN113591119B (en) Method and system for data privacy protection and secure sharing of cross-domain identification resolution nodes
CN116547941B (en) Secure re-encryption of homomorphically encrypted data
CN116015983B (en) Network security vulnerability analysis method and system based on digital twin
CN111782620B (en) A credit link automatic tracking platform and method
CN111711611B (en) Data processing method, device, medium, equipment and application based on block chain
US20170134156A1 (en) Homomorphic Encryption with Optimized Parameter Selection
CN110309587B (en) Decision model construction method, decision method and decision model
CN112804348B (en) Method for judging repeatability of reported data of edge computing node by cloud monitoring center
CN113032357A (en) File storage method and device and server
CN113111951B (en) Data processing method and device
CN108881454B (en) File transmission method, mobile terminal and storage medium
TW201610747A (en) System and method for dynamic data storage
CN114840861A (en) Data processing method, device, equipment and storage medium
CN114401132A (en) Data encryption method, device, device and storage medium
JP2021077307A (en) Test data creation system and test data creation method
US20140365786A1 (en) Communication device, communication method, computer program product, and communication system
Chiadighikaobi et al. A scoping study on lightweight cryptography reviews in IoT
JP6729283B2 (en) Data generation method, data generation system, and data generation program
CN102546185A (en) Data encrypting method and encrypted data transmitting device
CN120597779A (en) A digital twin modeling system and method for oil reservoirs based on trusted computing
CN117938492B (en) Mixed block hash encryption method, device, equipment and medium
CN113556333A (en) Computer network data secure transmission method and device
US9485363B1 (en) Testing computerized analysis of communication data
Skračić et al. A Big Data solution for troubleshooting mobile network performance problems
Sabonchi et al. Ensuring Information Security in Smart Door Lock Systems Using the Cuckoo Search Algorithm.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200518

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200602

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200615

R150 Certificate of patent or registration of utility model

Ref document number: 6729283

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250