JP5397062B2 - Tally file generation program and method, and data restoration program and method - Google Patents

Tally file generation program and method, and data restoration program and method Download PDF

Info

Publication number
JP5397062B2
JP5397062B2 JP2009170299A JP2009170299A JP5397062B2 JP 5397062 B2 JP5397062 B2 JP 5397062B2 JP 2009170299 A JP2009170299 A JP 2009170299A JP 2009170299 A JP2009170299 A JP 2009170299A JP 5397062 B2 JP5397062 B2 JP 5397062B2
Authority
JP
Japan
Prior art keywords
tally
file
segments
storage device
tally file
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.)
Expired - Fee Related
Application number
JP2009170299A
Other languages
Japanese (ja)
Other versions
JP2011028314A (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 JP2009170299A priority Critical patent/JP5397062B2/en
Publication of JP2011028314A publication Critical patent/JP2011028314A/en
Application granted granted Critical
Publication of JP5397062B2 publication Critical patent/JP5397062B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本技術は、データのセキュリティ保持技術の分野に関する。   The present technology relates to the field of data security maintenance technology.

近年、例えばノート型PC(Personal Computer)やUSB(Universal Serial Bus)メモリなどの盗難・紛失による情報漏洩が問題となっている。   In recent years, information leakage due to theft or loss of, for example, a notebook PC (Personal Computer) or a USB (Universal Serial Bus) memory has been a problem.

このような情報漏洩を防止するための技術として例えば電子割符が存在している。従来の電子割符では、例えばランダム値などの冗長データを用いてユーザデータを暗号化し、暗号化したユーザデータを複数の割符ファイルに分割し、分散して保存する。これにより、ノート型PCやUSBメモリなどが盗難にあったり、紛失したりした場合であっても、一部の割符ファイルだけではユーザデータを復元することはできないため、情報漏洩を防ぐことができる。   For example, electronic tally exists as a technique for preventing such information leakage. In the conventional electronic tally, for example, user data is encrypted using redundant data such as a random value, and the encrypted user data is divided into a plurality of tally files and stored in a distributed manner. As a result, even if a notebook PC or USB memory is stolen or lost, user data cannot be restored with only some tally files, so information leakage can be prevented. .

特開2002−135247号公報JP 2002-135247 A 特開2007−299088号公報JP 2007-299088

しかしながら、上で述べたような方式では、ユーザデータを復元する際、暗号化に用いた冗長データが必要になるため、複数の割符ファイルの他に、冗長データもノート型PCやUSBメモリなどに保存して持ち運ばなければならない。そのため、情報漏洩の防止のために必要となるデータ全体のデータ量が増えてしまうという問題がある。例えばユーザデータと同サイズの冗長データによって暗号化を行う場合には、ユーザデータと同サイズの冗長データを保存しておく必要があり、全体のデータ量が2倍になってしまう。   However, in the method described above, when restoring user data, redundant data used for encryption is required. Therefore, in addition to a plurality of tally files, redundant data is also stored in a notebook PC or USB memory. Must be stored and carried. For this reason, there is a problem that the data amount of the entire data necessary for preventing information leakage increases. For example, when encryption is performed using redundant data having the same size as the user data, it is necessary to store redundant data having the same size as the user data, and the entire data amount is doubled.

従って、本技術の目的は、全体のデータ量を抑えつつ、ユーザデータの情報漏洩を防止するための技術を提供することである。   Therefore, an object of the present technology is to provide a technology for preventing information leakage of user data while suppressing the entire data amount.

第1の態様に係る割符ファイル生成方法は、処理対象ファイルをn個のセグメントに分割する分割ステップと、全てのセグメントによる排他的論理和を計算することにより第1の記憶装置に格納するための第1の割符ファイルを生成する第1割符ファイル生成ステップと、n個のセグメントから任意のn−1個のセグメントを選ぶことにより構成されるn通りの組み合わせのうち、n−1通りの組み合わせの各々について、当該組み合わせに含まれるn−1個のセグメントによる排他的論理和を計算することにより第2の記憶装置に格納するための第2の割符ファイルを生成する第2割符ファイル生成ステップとを含む。   A tally file generation method according to a first aspect includes a division step for dividing a file to be processed into n segments, and an exclusive OR operation for all the segments to calculate and store the file in the first storage device. A first tally file generation step for generating a first tally file and n-1 combinations among n combinations configured by selecting an arbitrary n-1 segments from n segments. A second tally file generation step for generating a second tally file for storage in the second storage device by calculating an exclusive OR of n−1 segments included in the combination for each Including.

第2の態様に係るデータ復元方法は、処理対象ファイルを分割することにより得られるn個のセグメントによる排他的論理和を含む第1の割符ファイルを格納している第1の記憶装置から第1の割符ファイルを取得する第1取得ステップと、n個のセグメントから任意のn−1個のセグメントを選ぶことにより構成されるn通りの組み合わせのうちのn−1通りの組み合わせ毎に当該組み合わせに含まれるn−1個のセグメントによる排他的論理和を含む第2の割符ファイルを格納している第2の記憶装置からn−1個の第2の割符ファイルを取得する第2取得ステップと、n−1個の第2の割符ファイルによる排他的論理和を計算することにより、新たな第2の割符ファイルを生成するステップと、第1の割符ファイルと第2の割符ファイルの各々との排他的論理和を計算することにより、n個のセグメントを復元するステップとを含む。   The data restoration method according to the second aspect is the first from the first storage device storing the first tally file including the exclusive OR of n segments obtained by dividing the file to be processed. A first acquisition step of acquiring a tally file of n, and n-1 combinations out of n combinations configured by selecting an arbitrary n-1 segments from n segments. A second acquisition step of acquiring n-1 second tally files from a second storage device storing a second tally file including an exclusive OR with n-1 segments included; a step of generating a new second tally file by calculating an exclusive OR of n-1 second tally files; a first tally file and a second tally file; By calculating the exclusive OR of the respective, and a step of restoring the n segments.

全体のデータ量を抑えつつ、ユーザデータの情報漏洩を防止することができる。   Information leakage of user data can be prevented while suppressing the entire data amount.

図1は、本技術の第1の実施の形態に係るシステム構成図である。FIG. 1 is a system configuration diagram according to the first embodiment of the present technology. 図2は、第1の実施の形態におけるユーザ端末の機能ブロック図である。FIG. 2 is a functional block diagram of the user terminal according to the first embodiment. 図3は、割符ファイルを生成する処理の処理フロー(第1の部分)を示す図である。FIG. 3 is a diagram showing a processing flow (first portion) of processing for generating a tally file. 図4は、処理対象ファイル選択画面の画面例を示す図である。FIG. 4 is a diagram illustrating a screen example of the processing target file selection screen. 図5は、処理対象ファイルを3個のセグメントに分割する場合の例を示す図である。FIG. 5 is a diagram illustrating an example of dividing a processing target file into three segments. 図6は、セグメントに擬似ビット列を付加した場合の例を示す図である。FIG. 6 is a diagram illustrating an example in which a pseudo bit string is added to a segment. 図7は、付加ビット特定データの一例を示す図である。FIG. 7 is a diagram illustrating an example of additional bit specifying data. 図8は、割符ファイルを生成する処理の処理フロー(第2の部分)を示す図である。FIG. 8 is a diagram showing a processing flow (second part) of processing for generating a tally file. 図9は、3個のセグメントから割符ファイルPを生成する処理を説明するための図である。FIG. 9 is a diagram for explaining processing for generating a tally file P from three segments. 図10は、排他的論理輪の演算例を示す図である。FIG. 10 is a diagram illustrating a calculation example of an exclusive logical ring. 図11(a)及び(b)は、2個のセグメントから割符ファイルUを生成する処理を説明するための図である。FIGS. 11A and 11B are diagrams for explaining processing for generating a tally file U from two segments. 図12は、割符ファイルを生成する処理の処理フロー(第3の部分)を示す図である。FIG. 12 is a diagram illustrating a processing flow (third portion) of processing for generating a tally file. 図13は、ユーザに割符ファイルの格納先を知らせる画面の画面例を示す図である。FIG. 13 is a diagram showing an example of a screen for informing the user of the storage location of the tally file. 図14は、格納先選択画面の画面例を示す図である。FIG. 14 is a diagram illustrating a screen example of a storage destination selection screen. 図15は、ユーザデータを復元する処理の処理フロー(第1の部分)を示す図である。FIG. 15 is a diagram illustrating a processing flow (first portion) of processing for restoring user data. 図16は、格納フォルダ選択画面の画面例を示す図である。FIG. 16 is a diagram illustrating a screen example of a storage folder selection screen. 図17は、2個の割符ファイルUから新たな割符ファイルUを生成する処理を説明するための図である。FIG. 17 is a diagram for explaining processing for generating a new tally file U from two tally files U. 図18(a)乃至(c)は、セグメントを復元する処理を説明するための図である。FIGS. 18A to 18C are diagrams for explaining a process of restoring a segment. 図19は、ユーザデータを復元する処理の処理フロー(第2の部分)を示す図である。FIG. 19 is a diagram illustrating a processing flow (second part) of processing for restoring user data. 図20は、ユーザデータを客先に持ち運ぶ場面の一例を示す図である。FIG. 20 is a diagram illustrating an example of a scene in which user data is carried to a customer. 図21は、第2の実施の形態の概要を説明するための図である。FIG. 21 is a diagram for explaining the outline of the second embodiment. 図22は、第2の実施の形態における処理の処理フローを示す図である。FIG. 22 is a diagram illustrating a processing flow of processing according to the second embodiment. 図23は、第1の態様に係る割符ファイル生成方法の処理フローを示す図である。FIG. 23 is a diagram illustrating a processing flow of the tally file generation method according to the first aspect. 図24は、第2の態様に係るデータ復元方法の処理フローを示す図である。FIG. 24 is a diagram illustrating a processing flow of the data restoration method according to the second aspect. 図25は、コンピュータの機能ブロック図である。FIG. 25 is a functional block diagram of a computer.

[実施の形態1]
本技術の第1の実施の形態に係るシステム構成図を図1に示す。第1の実施の形態では、ユーザデータから割符ファイルを生成する際又はユーザデータを復元する際には、図1に示すように、ノート型PCであるユーザ端末1に、USBメモリである外部記憶装置3が取り付けられているものとする。なお、図1では、USBメモリを外部記憶装置3とする例を示しているが、取り外しが可能な記憶装置であれば、USBメモリ以外の記憶装置を採用することも可能である。
[Embodiment 1]
FIG. 1 shows a system configuration diagram according to the first embodiment of the present technology. In the first embodiment, when generating a tally file from user data or restoring user data, as shown in FIG. 1, the user terminal 1 that is a notebook PC is connected to an external storage that is a USB memory. It is assumed that the device 3 is attached. Although FIG. 1 shows an example in which the USB memory is the external storage device 3, a storage device other than the USB memory may be employed as long as it is a removable storage device.

図2に、図1に示したユーザ端末1の機能ブロック図を示す。ユーザ端末1は、入力部101と、表示部103と、ユーザデータ格納部105と、処理対象ファイル取得部107と、割符ファイル生成部109と、ワークメモリ111と、格納先決定部113と、記憶部115と、割符ファイル取得部117と、復元処理部119とを有する。   FIG. 2 shows a functional block diagram of the user terminal 1 shown in FIG. The user terminal 1 includes an input unit 101, a display unit 103, a user data storage unit 105, a processing target file acquisition unit 107, a tally file generation unit 109, a work memory 111, a storage destination determination unit 113, a storage Unit 115, tally file acquisition unit 117, and restoration processing unit 119.

なお、入力部101は、ユーザからの割符指示又は復元指示を受け付け、割符指示を処理対象ファイル取得部107に出力したり、復元指示を割符ファイル取得部117に出力したり、各種選択画面を表示するよう表示部103に指示したりする。処理対象ファイル取得部107は、入力部101から割符指示を受け取ると、ユーザデータを格納しているユーザデータ格納部105から、割符指示で指定されたユーザデータ(以下、処理対象ファイルとも呼ぶ)を取得し、割符ファイル生成部109に出力する。割符ファイル生成部109は、処理対象ファイル取得部107から処理対象ファイルを受け取ると、割符ファイルを生成するための処理を実施し、生成した割符ファイルを格納先決定部113に出力する。また、割符ファイル生成部109は、生成した割符ファイルの格納先を選択するための選択画面を表示するよう表示部103に指示する。なお、割符ファイル生成部109は、処理途中のデータをワークメモリ111に格納したり、ワークメモリ111からデータを読み出したりする。格納先決定部113は、割符ファイル生成部109から割符ファイルを受け取ると、取り付けられている外部記憶装置3を自動認識し、外部記憶装置3及び記憶部115の各々に分散して割符ファイルを格納する。   The input unit 101 receives a tally instruction or restoration instruction from the user, and outputs a tally instruction to the processing target file acquisition unit 107, outputs a restoration instruction to the tally file acquisition unit 117, and displays various selection screens. The display unit 103 is instructed to do so. When receiving the tally instruction from the input unit 101, the processing target file acquisition unit 107 receives the user data (hereinafter also referred to as a processing target file) specified by the tally instruction from the user data storage unit 105 storing the user data. Acquire and output to the tally file generator 109. When receiving the processing target file from the processing target file acquisition unit 107, the tally file generation unit 109 performs processing for generating the tally file and outputs the generated tally file to the storage destination determination unit 113. Further, the tally file generation unit 109 instructs the display unit 103 to display a selection screen for selecting a storage destination of the generated tally file. The tally file generation unit 109 stores data being processed in the work memory 111 and reads data from the work memory 111. When the storage destination determination unit 113 receives the tally file from the tally file generation unit 109, the storage destination determination unit 113 automatically recognizes the attached external storage device 3 and stores the tally file in each of the external storage device 3 and the storage unit 115. To do.

また、割符ファイル取得部117は、入力部101から復元指示を受け取ると、取り付けられている外部記憶装置3を自動認識し、外部記憶装置3及び記憶部115の各々から割符ファイルを取得し、復元処理部119に出力する。復元処理部119は、割符ファイル取得部117から割符ファイルを受け取ると、処理対象ファイルを復元するための処理を実施し、処理結果を表示するよう表示部103に指示する。なお、復元処理部119は、処理途中のデータをワークメモリ111に格納したり、ワークメモリ111からデータを読み出したりする。   Further, when receiving the restoration instruction from the input unit 101, the tally file acquisition unit 117 automatically recognizes the attached external storage device 3, acquires the tally file from each of the external storage device 3 and the storage unit 115, and restores it. The data is output to the processing unit 119. When the restoration processing unit 119 receives the tally file from the tally file acquisition unit 117, the restoration processing unit 119 performs processing for restoring the processing target file and instructs the display unit 103 to display the processing result. The restoration processing unit 119 stores data being processed in the work memory 111 and reads data from the work memory 111.

次に、図3乃至図12を用いて、処理対象ファイルから割符ファイルを生成する処理について説明する。例えば入力部101が、ユーザから割符処理開始指示を受け付けると、表示部103に処理対象ファイル選択画面を表示させる。表示部103は、入力部101からの指示に応じて、図4に示すような処理対象ファイル選択画面を表示装置等に表示する。図4の例では、処理対象ファイル選択画面には、「処理対象ファイルを選んで下さい。」という表示がなされており、処理対象ファイルのフォルダ(ディレクトリ)及びファイル名を入力する入力欄401と、ユーザデータ格納部105内のユーザデータ(ファイル)を参照するための参照ボタン402と、OKボタン403とが設けられている。例えば、参照ボタン402をクリックすると、ファイルを選択するための画面(図示せず)が新たに表示され、ユーザは、当該画面において、処理対象ファイルを選択する。なお、フォルダ及びファイル名を入力欄401に直接入力するような場合もある。また、入力欄401を複数設けるなどして、複数の処理対象ファイルが指定される場合もある。そして、ユーザは、処理対象ファイルを指定し、OKボタン403をクリックする。   Next, processing for generating a tally file from a processing target file will be described with reference to FIGS. For example, when the input unit 101 receives a tally processing start instruction from the user, the processing unit file selection screen is displayed on the display unit 103. In response to an instruction from the input unit 101, the display unit 103 displays a processing target file selection screen as shown in FIG. In the example of FIG. 4, the processing target file selection screen displays “Please select a processing target file.” An input field 401 for inputting a folder (directory) and a file name of the processing target file, A reference button 402 for referring to user data (file) in the user data storage unit 105 and an OK button 403 are provided. For example, when the reference button 402 is clicked, a screen for selecting a file (not shown) is newly displayed, and the user selects a processing target file on the screen. In some cases, a folder and a file name are directly input in the input field 401. In addition, a plurality of processing target files may be designated by providing a plurality of input fields 401 or the like. Then, the user designates a processing target file and clicks an OK button 403.

そして、入力部101は、ユーザから処理対象ファイルの指定入力を受け付け(図3:ステップS1)、処理対象ファイル指定データ(例えばフォルダ及びファイル名)を処理対象ファイル取得部107に出力する。そして、処理対象ファイル取得部107は、入力部101から処理対象ファイル指定データを受け取ると、ユーザデータ格納部105から、指定された処理対象ファイルを取得し(ステップS3)、割符ファイル生成部109に出力する。なお、処理対象ファイルが複数指定された場合には、全ての処理対象ファイルを取得し、割符ファイル生成部109に出力する。   Then, the input unit 101 receives an input for specifying a processing target file from the user (FIG. 3: step S1), and outputs processing target file specifying data (for example, a folder and a file name) to the processing target file acquisition unit 107. When the processing target file acquisition unit 107 receives the processing target file designation data from the input unit 101, the processing target file acquisition unit 107 acquires the specified processing target file from the user data storage unit 105 (step S3), and sends it to the tally file generation unit 109. Output. When a plurality of processing target files are designated, all the processing target files are acquired and output to the tally file generation unit 109.

そして、割符ファイル生成部109は、処理対象ファイル取得部107から処理対象ファイルを受け取ると、一旦ワークメモリ111に格納する。そして、処理対象ファイルが複数存在するか判断する(ステップS5)。処理対象ファイルが複数存在する場合(ステップS5:Yesルート)、割符ファイル生成部109は、複数の処理対象ファイルを連結することにより1つの処理対象ファイルを生成し、ワークメモリ111に格納する(ステップS7)。なお、複数ファイルを連結する処理自体は従来と変わらないため、詳細な説明は省略する。その後、ステップS9の処理に移行する。   When the tally file generation unit 109 receives the processing target file from the processing target file acquisition unit 107, the tally file generation unit 109 temporarily stores the processing target file in the work memory 111. Then, it is determined whether there are a plurality of files to be processed (step S5). When there are a plurality of processing target files (step S5: Yes route), the tally file generation unit 109 generates a single processing target file by concatenating the plurality of processing target files and stores it in the work memory 111 (step S1). S7). In addition, since the process itself which connects several files is not different from the past, detailed description is abbreviate | omitted. Thereafter, the process proceeds to step S9.

一方、処理対象ファイルが1つの場合(ステップS5:Noルート)、ステップS7をスキップし、ステップS9の処理に移行する。   On the other hand, when there is one processing target file (step S5: No route), step S7 is skipped, and the process proceeds to step S9.

そして、割符ファイル生成部109は、ワークメモリ111に格納された処理対象ファイルをn個(nは3以上の奇数)のセグメントに分割し、ワークメモリ111に格納する(ステップS9)。図5に、処理対象ファイルを3個のセグメント(セグメントa、b及びc)に分割する場合の例を示す。   Then, the tally file generating unit 109 divides the processing target file stored in the work memory 111 into n segments (n is an odd number of 3 or more) and stores the segmented file in the work memory 111 (step S9). FIG. 5 shows an example in which the processing target file is divided into three segments (segments a, b, and c).

そして、割符ファイル生成部109は、ワークメモリ111に格納されたセグメントのサイズが異なっているか判断する(ステップS11)。ワークメモリ111に格納されたセグメントのうち1つでもサイズの異なるセグメントがある場合には(ステップS11:Yesルート)、割符ファイル生成部109は、ワークメモリ111に格納されたセグメントのサイズの中から最大サイズを特定する(ステップS13)。そして、割符ファイル生成部109は、サイズが最大サイズより小さい各セグメントについて、当該セグメントのサイズが最大サイズと等しくなるよう当該セグメントに任意のビット列(擬似ビット列とも呼ぶ)を付加し、付加ビット特定データを生成する(ステップS15)。例えば図6に、擬似ビット列が付加されたセグメントの一例を示す。図6の例では、セグメントcのサイズが、セグメントa及びbと異なっており、セグメントcのサイズがセグメントa及びbのサイズと等しくなるようセグメントcに擬似ビット列(図6の網掛け部分)が付加されている。   Then, the tally file generation unit 109 determines whether the sizes of the segments stored in the work memory 111 are different (Step S11). When there is a segment having a different size from among the segments stored in the work memory 111 (step S11: Yes route), the tally file generation unit 109 selects the segment size stored in the work memory 111 from the segment sizes. The maximum size is specified (step S13). Then, the tally file generation unit 109 adds an arbitrary bit string (also referred to as a pseudo bit string) to each segment having a size smaller than the maximum size so that the size of the segment becomes equal to the maximum size, and additional bit specifying data Is generated (step S15). For example, FIG. 6 shows an example of a segment to which a pseudo bit string is added. In the example of FIG. 6, the size of the segment c is different from that of the segments a and b, and the pseudo bit string (the shaded portion in FIG. 6) is included in the segment c so that the size of the segment c is equal to the size of the segments a and b. It has been added.

また、図7に付加ビット特定データの一例を示す。図7の例では、付加ビット特定データには、セグメント名と、そのセグメントにおける擬似ビット列の開始位置とが含まれる。なお、詳細は後で説明するが、付加ビット特定データは、処理対象ファイルを復元する際に、セグメントから擬似ビット列を除去するために用いられる。   FIG. 7 shows an example of additional bit specifying data. In the example of FIG. 7, the additional bit specifying data includes a segment name and the start position of the pseudo bit string in the segment. Although the details will be described later, the additional bit specifying data is used to remove the pseudo bit string from the segment when the processing target file is restored.

そして、ステップS15の処理の後、端子Aを介してステップS17(図8)の処理に移行する。   And after the process of step S15, it transfers to the process of step S17 (FIG. 8) via the terminal A. FIG.

一方、ワークメモリ111に格納されたセグメントのサイズが全て同じ場合(ステップS11:Noルート)、ステップS13及びステップS15をスキップし、端子Aを介してステップS17(図8)の処理に移行する。   On the other hand, when all the sizes of the segments stored in the work memory 111 are the same (step S11: No route), step S13 and step S15 are skipped, and the process proceeds to step S17 (FIG. 8) via the terminal A.

図8の説明に移行して、端子Aの後、割符ファイル生成部109は、ワークメモリ111に格納されている全てのセグメントによる排他的論理和(EOR:Exclusive OR。XORとも呼ぶ。)を計算することにより割符ファイルPを生成し、一旦ワークメモリ111に格納する(図8:ステップS17)。例えば3個のセグメントに分割されていた場合(n=3の場合)には、図9に示すように、セグメントa、b及びcによる排他的論理和を計算し、割符ファイルP(=a^b^c)を生成する。なお、「^」は、排他的論理和の演算子を表す(以下同じ)。   Moving to the description of FIG. 8, after the terminal A, the tally file generation unit 109 calculates exclusive OR (EOR: Exclusive OR, also referred to as XOR) by all the segments stored in the work memory 111. As a result, the tally file P is generated and temporarily stored in the work memory 111 (FIG. 8: Step S17). For example, when it is divided into three segments (in the case of n = 3), as shown in FIG. 9, the exclusive OR of the segments a, b and c is calculated, and the tally file P (= a ^ b ^ c) is generated. “^” Represents an exclusive OR operator (the same applies hereinafter).

図10に排他的論理和の演算例を示しておく。図10は、レジスタGR(General Register)0に記憶されたビット列「1111 1111 1010 1010」とレジスタGR1に記憶されたビット列「1010 1010 0000 0000」とによる排他的論理和の演算結果「0101 0101 1010 1010」をレジスタGR0に設定する場合の例を示している。なお、例えば3つのビット列について排他的論理和を計算するには、まず2つのビット列について演算を行い、その演算結果ともう1つのビット列とを用いて演算を行う。   FIG. 10 shows an example of the operation of exclusive OR. FIG. 10 shows an exclusive OR operation result “0101 0101 1010 1010” based on the bit string “1111 1111 1010 1010” stored in the register GR (General Register) 0 and the bit string “1010 1010 0000 0000” stored in the register GR1. "Is set in the register GR0. For example, in order to calculate an exclusive OR for three bit strings, first, an operation is performed on two bit strings, and an operation is performed using the result of the calculation and another bit string.

そして、割符ファイル生成部109は、カウンタiを1に設定する(ステップS19)。そして、割符ファイル生成部109は、ワークメモリ111に格納されているn個のセグメントのうちi番目のセグメントを除く(n−1)個のセグメントによる排他的論理和を計算することにより割符ファイルUを生成し、一旦ワークメモリ111に格納する(ステップS21)。例えばステップS9(図3)において3個のセグメントに分割されていた場合(n=3の場合)、i=1の時に、本ステップの処理を実施すると、図11(a)に示すような割符ファイルUが生成される。具体的には、1番目のセグメント(すなわち、セグメントa)を除く2個のセグメント(すなわち、セグメントb及びc)による排他的論理和を計算することにより、割符ファイルU(=b^c)が生成される。 Then, the tally file generation unit 109 sets the counter i to 1 (step S19). Then, the tally file generation unit 109 calculates the exclusive OR of (n−1) segments excluding the i-th segment among the n segments stored in the work memory 111, thereby calculating the tally file U. i is generated and temporarily stored in the work memory 111 (step S21). For example, if the segment is divided into three segments (in the case of n = 3) in step S9 (FIG. 3), when the processing of this step is performed when i = 1, the tally as shown in FIG. file U 1 is generated. Specifically, the tally file U 1 (= b ^ c) is calculated by calculating the exclusive OR of the two segments (ie, segments b and c) excluding the first segment (ie, segment a). Is generated.

そして、割符ファイル生成部109は、カウンタiがn−1より小さいか判断する(ステップS23)。カウンタiがn−1より小さい場合(ステップS23:Yesルート)、割符ファイル生成部109は、カウンタiを1インクリメントする(ステップS25)。そして、ステップS21の処理に戻り、上で説明した処理を繰り返す。例えばステップS9(図3)において3個のセグメントに分割されていた場合(n=3の場合)、i=2の時に、ステップS21の処理を実施すると、図11(b)に示すような割符ファイルUが生成される。具体的には、2番目のセグメント(すなわち、セグメントb)を除く2個のセグメント(すなわち、セグメントa及びc)による排他的論理和を計算することにより、割符ファイルUが生成される。 Then, the tally file generation unit 109 determines whether the counter i is smaller than n−1 (step S23). When the counter i is smaller than n−1 (step S23: Yes route), the tally file generating unit 109 increments the counter i by 1 (step S25). And it returns to the process of step S21 and repeats the process demonstrated above. For example, if the segment is divided into three segments in the step S9 (FIG. 3) (when n = 3) and the process of the step S21 is performed when i = 2, the tally as shown in FIG. file U 2 is generated. Specifically, the second segment (i.e., segment b) 2 segments excluding (i.e., segments a and c) by calculating the exclusive OR by the tally file U 2 are generated.

一方、カウンタiがn−1以上であると判断された場合(ステップS23:Noルート)、端子Bを介してステップS27(図12)の処理に移行する。なお、図8の処理フローでは、ステップS21の処理がn−1回繰り返されるため、n−1個の割符ファイルUが生成されることになる。すなわち、n個のセグメントから任意のn−1個のセグメントを選ぶ組み合わせはn通りであるが、ここでは、n−1通りの組み合わせについて割符ファイルUを生成する。なお、n個のセグメントを復元する際には、n個の割符ファイルUが必要となるが、後で説明るように割符ファイルU〜割符ファイルUn−1があれば、割符ファイルUを生成することができるため、ここでは割符ファイルUについて生成しない。 On the other hand, when it is determined that the counter i is n−1 or more (step S23: No route), the process proceeds to the process of step S27 (FIG. 12) via the terminal B. In the process flow of FIG. 8, since the process of step S21 is repeated n−1 times, n−1 tally files U i are generated. That is, there are n combinations for selecting an arbitrary n-1 segments from the n segments. Here, a tally file U is generated for n-1 combinations. Incidentally, when restoring the n segments is, n pieces of tally file U but is required, if any tally file U 1 ~ tally file U n-1 to so that describes later, tally file U Since n can be generated, the tally file U n is not generated here.

図12の説明に移行して、端子Bの後、割符ファイル生成部109は、生成した割符ファイルPとn−1個の割符ファイルUとをワークメモリ111から取り出し、格納先決定部113に出力する。なお、ワークメモリ111に付加ビット特定データが格納されている場合には、付加ビット特定データも出力する。 Shifting to the description of FIG. 12, after the terminal B, the tally file generation unit 109 extracts the generated tally file P and n−1 tally files U i from the work memory 111, and stores them in the storage destination determination unit 113. Output. When additional bit specifying data is stored in the work memory 111, additional bit specifying data is also output.

そして、格納先決定部113は、割符ファイル生成部109から割符ファイルPとn−1個の割符ファイルUとを受け取る。そして、格納先決定部113は、ハードウェアの自動認識を行い、外部記憶装置3を検出する(ステップS27)。なお、外部記憶装置3が取り付けられた際に自動認識を行う場合もあり、外部記憶装置3を検出済みであれば、本ステップをスキップする。 Then, the storage destination determination unit 113 receives the tally file P and the (n−1) tally files U i from the tally file generation unit 109. Then, the storage destination determination unit 113 performs automatic hardware recognition and detects the external storage device 3 (step S27). Note that automatic recognition may be performed when the external storage device 3 is attached. If the external storage device 3 has been detected, this step is skipped.

そして、格納先決定部113は、割符ファイル生成部109から受け取った割符ファイルPを外部記憶装置3に格納する(ステップS29)。また、格納先決定部113は、割符ファイル生成部109から受け取ったn−1個の割符ファイルUを記憶部115に格納する(ステップS31)。なお、割符ファイルPを記憶部115に格納し、n−1個の割符ファイルUを外部記憶装置3に格納するようにしても特に問題は生じない。但し、一般的にはユーザ端末1の内部記憶装置である記憶部115より外部記憶装置3の方が記憶容量が少ないので、n−1個の割符ファイルUより割符ファイルPを外部記憶装置3に格納した方が好ましい。 Then, the storage destination determination unit 113 stores the tally file P received from the tally file generation unit 109 in the external storage device 3 (step S29). Further, the storage destination determination unit 113 stores the (n−1) tally files U i received from the tally file generation unit 109 in the storage unit 115 (step S31). Even if the tally file P is stored in the storage unit 115 and the n-1 tally files U i are stored in the external storage device 3, no particular problem occurs. However, since the external storage device 3 generally has a smaller storage capacity than the storage unit 115 which is an internal storage device of the user terminal 1, the tally file P is stored in the external storage device 3 than the n-1 tally files U i. It is preferable to store it in.

そして、格納先決定部113は、割符ファイル生成部109から付加ビット特定データを受け取ったか判断する(ステップS33)。付加ビット特定データを受け取った場合(ステップS33:Yesルート)、格納先決定部113は、付加ビット特定データを外部記憶装置3又は記憶部115に格納する(ステップS35)。その後、処理を終了する。   Then, the storage destination determining unit 113 determines whether additional bit specifying data has been received from the tally file generating unit 109 (step S33). When the additional bit specifying data is received (step S33: Yes route), the storage destination determining unit 113 stores the additional bit specifying data in the external storage device 3 or the storage unit 115 (step S35). Thereafter, the process ends.

一方、付加ビット特定データを受け取っていなければ(ステップS33:Noルート)、ステップS35をスキップし、処理を終了する。   On the other hand, if additional bit specifying data has not been received (step S33: No route), step S35 is skipped and the process is terminated.

以上のような処理を実施することにより、個々のデータだけではユーザデータを復元できないような割符ファイルPとn−1個の割符ファイルUとを生成することができる。なお、本実施の形態では、1個の割符ファイルPとn−1個の割符ファイルUとの計n個の割符ファイルが生成されることになるが、個々の割符ファイルは1セグメントと同じサイズ(すなわち、ユーザデータの1/nのサイズ)である。擬似ビット列を付加した場合には、多少データ量が増えることとなるが微量であるため、全体のデータ量は元のユーザデータとほとんど変わらない。従って、全体のデータ量を抑えつつ、ユーザデータの情報漏洩を防止できるようになる。 By performing the processing as described above, it is possible to generate a tally file P and n-1 tally files U i in which user data cannot be restored only by individual data. In this embodiment, a total of n tally files of one tally file P and n−1 tally files U i are generated. Each tally file is the same as one segment. Size (ie, 1 / n size of user data). When a pseudo bit string is added, the amount of data increases somewhat, but the amount of data is very small, so the total amount of data is almost the same as the original user data. Therefore, information leakage of user data can be prevented while suppressing the entire data amount.

なお、上では、外部記憶装置3及び記憶部115の各々に割符ファイルを自動的に格納するようになっていたが、割符ファイルをユーザが手動で格納するような構成を採用することも可能である。この場合、ステップS29及びステップS31の代わりに、図13のような、ユーザに格納先を知らせるような画面を表示するようにすればよい。図13の例では、「ファイルPをXXXに格納して下さい。」、「ファイルUをYYYに格納して下さい。」、・・・という表示がなされている。なお、ファイル操作を行う別画面を起動するためのボタンを設けるようにしてもよい。 In the above description, the tally file is automatically stored in each of the external storage device 3 and the storage unit 115. However, it is also possible to adopt a configuration in which the tally file is manually stored by the user. is there. In this case, instead of step S29 and step S31, a screen for notifying the user of the storage location as shown in FIG. 13 may be displayed. In the example of FIG. 13, “Store file P in XXX.”, “Store file U 1 in YYY.”, And so on are displayed. A button for starting another screen for performing file operations may be provided.

また、例えば図14に示すような格納先選択画面を表示させ、ユーザに指定させるようにしてもよい。図14の例では、格納先選択画面には、「割符ファイルの格納先を選んで下さい。」という表示がなされており、割符ファイルPの格納先の入力欄1401及び参照ボタン1402と、割符ファイルUの格納先の入力欄1403及び参照ボタン1404と、・・・と、OKボタン1405とが設けられている。この場合、格納先決定部113は、ステップS29及びステップS31において、ユーザの指定に従って割符ファイルP及び割符ファイルUを格納するようにすればよい。 Further, for example, a storage location selection screen as shown in FIG. 14 may be displayed and designated by the user. In the example of FIG. 14, the storage location selection screen displays “Please select a storage location for the tally file.” The storage location input field 1401 and the reference button 1402 for the tally file P, and the tally file an input column 1403 and the reference button 1404 of the storage destination of U 1, and ..., and the OK button 1405 is provided. In this case, the storage destination determination unit 113 may store the tally file P and the tally file U i according to the user's specification in step S29 and step S31.

次に、図15乃至図19を用いて、ユーザデータを復元する処理について説明する。例えば入力部101が、ユーザから復元処理開始指示を受け付けると、又は外部記憶装置3が取り付けられたことを検出すると、表示部103に格納フォルダ選択画面を表示させる。表示部103は、入力部101からの指示に応じて、図16に示すような画面を表示装置等に表示する。図16の例では、格納フォルダ選択画面には、「割符ファイルが格納されているフォルダを選んで下さい。」という表示がなされており、フォルダ1の入力欄1601及び参照ボタン1602と、フォルダ2の入力欄1603及び参照ボタン1604と、・・・と、OKボタン1605とが設けられている。例えば、参照ボタン1602及び1604をクリックすると、フォルダを選択するための画面(図示せず)が新たに表示され、ユーザは、当該画面において、割符ファイルP及び割符ファイルUが格納されているフォルダを選択する。なお、ここでは、割符ファイルPの格納先として外部記憶装置3内のフォルダが選択され、割符ファイルUの格納先として記憶部115内のフォルダが選択されたものとする。そして、ユーザは、割符ファイルが格納されているフォルダを指定し、OKボタン1605をクリックする。 Next, processing for restoring user data will be described with reference to FIGS. 15 to 19. For example, when the input unit 101 receives a restoration processing start instruction from the user or detects that the external storage device 3 is attached, the storage unit selection screen is displayed on the display unit 103. In response to an instruction from the input unit 101, the display unit 103 displays a screen as illustrated in FIG. In the example of FIG. 16, the storage folder selection screen displays “Please select the folder where the tally file is stored.” The folder 1 input field 1601 and the reference button 1602, and the folder 2 An input field 1603 and a reference button 1604,..., And an OK button 1605 are provided. For example, when the reference buttons 1602 and 1604 are clicked, a screen (not shown) for selecting a folder is newly displayed, and the user can select a folder in which the tally file P and the tally file U i are stored. Select. Here, it is assumed that the folder in the external storage device 3 is selected as the storage destination of the tally file P, and the folder in the storage unit 115 is selected as the storage destination of the tally file U i . Then, the user specifies a folder in which the tally file is stored and clicks an OK button 1605.

そして、入力部101は、ユーザから割符ファイルが格納されているフォルダの指定入力を受け付け(図15:ステップS41)、フォルダ指定データを割符ファイル取得部117に出力する。そして、割符ファイル取得部117は、入力部101からフォルダ指定データを受け取ると、指定されたフォルダ(例えば、外部記憶装置3内のフォルダ)から割符ファイルPを取得し(ステップS43)、復元処理部119に出力する。また、割符ファイル取得部117は、指定されたフォルダ(例えば、記憶部115内のフォルダ)からn−1個の割符ファイルUを取得し(ステップS45)、復元処理部119に出力する。 Then, the input unit 101 receives a designation input of a folder storing the tally file from the user (FIG. 15: step S41), and outputs the folder designation data to the tally file acquisition unit 117. When the tally file acquisition unit 117 receives the folder designation data from the input unit 101, the tally file acquisition unit 117 acquires the tally file P from the designated folder (for example, the folder in the external storage device 3) (step S43), and the restoration processing unit It outputs to 119. Also, the tally file acquisition unit 117 acquires n−1 tally files U i from a designated folder (for example, a folder in the storage unit 115) (step S45), and outputs the acquired tally file to the restoration processing unit 119.

そして、復元処理部119は、割符ファイル取得部117から割符ファイルPとn−1個の割符ファイルUとを受け取ると、一旦ワークメモリ111に格納する。そして、復元処理部119は、n−1個の割符ファイルUから新たな割符ファイルUを生成し、ワークメモリ111に格納する(ステップS47)。具体的には、割符ファイルUから割符ファイルUn−1までのn−1個の割符ファイルUによる排他的論理和を計算することにより、割符ファイルUを生成する。この処理については、図17を用いて説明する。 When the restoration processing unit 119 receives the tally file P and the (n−1) tally files U i from the tally file acquisition unit 117, the restoration processing unit 119 temporarily stores them in the work memory 111. Then, the restoration processing unit 119 generates a new tally file U n from the n−1 tally files U i and stores it in the work memory 111 (step S47). Specifically, by calculating the exclusive OR by the tally file U i n-1 pieces of from the tally file U 1 to tally file U n-1, to produce a tally file U n. This process will be described with reference to FIG.

図17は、n=3の場合において、割符ファイルU(=b^c)と割符ファイルU(=a^c)から割符ファイルUを生成する例を示している。図17において、割符ファイルUと割符ファイルUによる排他的論理和は、U^U=(b^c)^(a^c)=a^b^c^cとなる。ここで、「c^c」は、同一セグメント同士の排他的論理和であり、演算結果が0(すなわち、全てのビットが0)になるので、a^b^c^c=a^b=Uとなる。すなわち、割符ファイルUと割符ファイルUによる排他的論理和を計算することにより、割符ファイルUが生成される。このように、n−1個の割符ファイル (iは1〜n−1)から割符ファイルUを生成することができるので、上で説明した図8の処理フローでは、割符ファイルUを生成しておかなくても問題はない。 FIG. 17 shows an example in which the tally file U 3 is generated from the tally file U 1 (= b ^ c) and the tally file U 2 (= a ^ c) when n = 3. In FIG. 17, the exclusive OR of the tally file U 1 and the tally file U 2 is U 1 ^ U 2 = (b ^ c) ^ (a ^ c) = a ^ b ^ c ^ c. Here, “c ^ c” is an exclusive OR of the same segments, and the operation result is 0 (that is, all bits are 0), so a ^ b ^ c ^ c = a ^ b = the U 3. That is, the tally file U 3 is generated by calculating the exclusive OR of the tally file U 1 and the tally file U 2 . Thus, since the n-1 tally file U i (i is 1 to n-1) can generate a tally file U n from the processing flow of FIG. 8 described above, the tally file U n There is no problem even if it is not generated.

そして、復元処理部119は、カウンタiを1に設定する(ステップS49)。そして、復元処理部119は、ワークメモリ111に格納された割符ファイルP及びUを用いてi番目のセグメントを復元し、ワークメモリ111に格納する(ステップS51)。具体的には、割符ファイルPと割符ファイルUによる排他的論理和を計算することにより、i番目のセグメントを復元する。この処理については、図18(a)を用いて説明する。 Then, the restoration processing unit 119 sets the counter i to 1 (step S49). Then, the restoration processing unit 119 restores the i-th segment using the tally file P and U i stored in the work memory 111, and stores them in the work memory 111 (step S51). Specifically, the i-th segment is restored by calculating the exclusive OR of the tally file P and the tally file U i . This process will be described with reference to FIG.

図18(a)は、割符ファイルPと割符ファイルUからセグメントaを復元する例を示している。図18(a)において、割符ファイルPと割符ファイルUによる排他的論理和は、P^U=(a^b^c)^(b^c)=a^b^b^c^cとなる。ここで、「b^b」、「c^c」は、同一セグメント同士の排他的論理和であり、演算結果が0(すなわち、全てのビットが0)になるので、a^b^b^c^c=aとなる。すなわち、割符ファイルPと割符ファイルUによる排他的論理和を計算することにより、セグメントaが復元される。 FIG. 18 (a) shows an example of restoring a segment a from the tally file P and the tally file U 1. In FIG. 18A, the exclusive OR between the tally file P and the tally file U 1 is P ^ U 1 = (a ^ b ^ c) ^ (b ^ c) = a ^ b ^ b ^ c ^ c. It becomes. Here, “b ^ b” and “c ^ c” are exclusive ORs of the same segments, and the operation result is 0 (that is, all bits are 0). c ^ c = a. That is, by calculating the exclusive OR by the tally file P and the tally file U 1, segments a is restored.

そして、復元処理部119は、カウンタiがnより小さいか判断する(ステップS53)。カウンタiがnより小さい場合(ステップS53:Yesルート)、復元処理部119は、カウンタiを1インクリメントする(ステップS55)。そして、ステップS51の処理に戻り、上で説明した処理を繰り返す。   Then, the restoration processing unit 119 determines whether the counter i is smaller than n (step S53). When the counter i is smaller than n (step S53: Yes route), the restoration processing unit 119 increments the counter i by 1 (step S55). And it returns to the process of step S51 and repeats the process demonstrated above.

例えばカウンタi=2の時に、ステップS51の処理を実施すると、図18(b)に示すように、割符ファイルPと割符ファイルUからセグメントbを復元する。図18(b)において、割符ファイルPと割符ファイルUによる排他的論理和は、P^U=(a^b^c)^(a^c)=a^a^b^c^cとなる。ここで、「a^a」、「c^c」は、同一セグメント同士の排他的論理和であり、演算結果が0(すなわち、全てのビットが0)になるので、a^a^b^c^c=bとなる。すなわち、割符ファイルPと割符ファイルUによる排他的論理和を計算することにより、セグメントbが復元される。 For example, when the counter i = 2, when carrying out the process of step S51, as shown in FIG. 18 (b), to restore the segment b from the tally file P and the tally file U 2. In FIG. 18B, the exclusive OR between the tally file P and the tally file U 2 is P ^ U 2 = (a ^ b ^ c) ^ (a ^ c) = a ^ a ^ b ^ c ^ c. It becomes. Here, “a ^ a” and “c ^ c” are exclusive ORs of the same segments, and the calculation result is 0 (that is, all bits are 0). c ^ c = b. That is, by calculating the exclusive OR by the tally file P and the tally file U 2, segment b is restored.

また、例えばカウンタi=3の時に、ステップS51の処理を実施すると、図18(c)に示すように、割符ファイルPと割符ファイルUからセグメントcを復元する。図18(c)において、割符ファイルPと割符ファイルUによる排他的論理和は、P^U=(a^b^c)^(a^b)=a^a^b^b^cとなる。ここで、「a^a」、「b^b」は、同一セグメント同士の排他的論理和であり、演算結果が0(すなわち、全てのビットが0)になるので、a^a^b^b^c=cとなる。すなわち、割符ファイルPと割符ファイルUによる排他的論理和を計算することにより、セグメントcが復元される。 Further, for example, when the counter i = 3, when performing the processing of step S51, as shown in FIG. 18 (c), to restore the segment c from the tally file P and tally file U 3. In FIG. 18C, the exclusive OR between the tally file P and the tally file U 3 is P ^ U 3 = (a ^ b ^ c) ^ (a ^ b) = a ^ a ^ b ^ b ^ c It becomes. Here, “a ^ a” and “b ^ b” are exclusive ORs of the same segments, and the operation result is 0 (that is, all bits are 0). b ^ c = c. That is, by calculating the exclusive OR by the tally file P and tally file U 3, segment c is restored.

一方、カウンタiがn以上であると判断された場合(ステップS53:Noルート)、端子Cを介してステップS57(図19)の処理に移行する。なお、図15の処理フローでは、ステップS51の処理がn回繰り返されるため、n個のセグメントが復元されることになる。   On the other hand, when it is determined that the counter i is greater than or equal to n (step S53: No route), the process proceeds to the process of step S57 (FIG. 19) via the terminal C. In the process flow of FIG. 15, since the process of step S51 is repeated n times, n segments are restored.

図19の説明に移行して、端子Cの後、復元処理部119は、付加ビット特定データが外部記憶装置3又は記憶部115に格納されているか確認するよう割符ファイル取得部117に指示する。そして、割符ファイル取得部117は、付加ビット特定データが外部記憶装置3又は記憶部115に格納されているか判断する(図19:ステップS57)。例えば、割符ファイルP又は割符ファイルUが格納されていたフォルダ内に付加ビット特定データが格納されているか判断する。付加ビット特定データが外部記憶装置3又は記憶部115に格納されている場合(ステップS57:Yesルート)、割符ファイル取得部117は、外部記憶装置3又は記憶部115から付加ビット特定データを取得し、復元処理部119に出力する(ステップS59)。 19, after the terminal C, the restoration processing unit 119 instructs the tally file acquisition unit 117 to check whether the additional bit specifying data is stored in the external storage device 3 or the storage unit 115. Then, the tally file acquisition unit 117 determines whether the additional bit specifying data is stored in the external storage device 3 or the storage unit 115 (FIG. 19: Step S57). For example, it is determined whether additional bit specifying data is stored in the folder in which the tally file P or the tally file U i is stored. When the additional bit specifying data is stored in the external storage device 3 or the storage unit 115 (step S57: Yes route), the tally file acquisition unit 117 acquires the additional bit specifying data from the external storage device 3 or the storage unit 115. The data is output to the restoration processing unit 119 (step S59).

そして、復元処理部119は、割符ファイル取得部117から付加ビット特定データを受け取ると、付加ビット特定データにより特定される各セグメントについて、付加ビット特定データにより特定される擬似ビット列を除去する(ステップS61)。   Then, when receiving the additional bit specifying data from the tally file acquisition unit 117, the restoration processing unit 119 removes the pseudo bit string specified by the additional bit specifying data for each segment specified by the additional bit specifying data (step S61). ).

一方、付加ビット特定データが外部記憶装置3及び記憶部115のいずれにも格納されていなければ(ステップS57:Noルート)、割符ファイル取得部117は、確認結果(付加ビット特定データなし)を復元処理部119に通知する。そして、ステップS59及びステップS61をスキップし、ステップS63の処理に移行する。   On the other hand, if the additional bit specifying data is not stored in either the external storage device 3 or the storage unit 115 (step S57: No route), the tally file acquisition unit 117 restores the confirmation result (no additional bit specifying data). The processing unit 119 is notified. And step S59 and step S61 are skipped and it transfers to the process of step S63.

そして、復元処理部119は、ワークメモリ111に格納されているn個のセグメントを連結することにより、処理対象ファイルを復元する(ステップS63)。そして、復元処理部119は、復元した処理対象ファイルが、複数の処理対象ファイルを包含しているか判断する(ステップS65)。すなわち、複数の処理対象ファイルを連結することにより生成された処理対象ファイルであるか判断する。復元した処理対象ファイルが、複数の処理対象ファイルを包含している場合(ステップS65:Yesルート)、復元処理部119は、復元した処理対象ファイルを個々の処理対象ファイルに分割する(ステップS67)。なお、連結したファイルを元に戻す処理自体は従来と変わらないため、詳細な説明は省略する。その後、処理を終了する。   Then, the restoration processing unit 119 restores the processing target file by concatenating n segments stored in the work memory 111 (step S63). Then, the restoration processing unit 119 determines whether the restored processing target file includes a plurality of processing target files (step S65). That is, it is determined whether the processing target file is generated by concatenating a plurality of processing target files. When the restored processing target file includes a plurality of processing target files (step S65: Yes route), the restoration processing unit 119 divides the restored processing target file into individual processing target files (step S67). . In addition, since the process itself for returning the linked file itself is not different from the conventional one, the detailed description is omitted. Thereafter, the process ends.

一方、復元した処理対象ファイルが、複数の処理対象ファイルを包含していなければ(ステップS65:Noルート)、ステップS67をスキップし、処理を終了する。   On the other hand, if the restored processing target file does not include a plurality of processing target files (step S65: No route), step S67 is skipped, and the processing ends.

以上のような処理を実施することにより、割符ファイルPとn−1個の割符ファイルUとからn個のセグメントを復元することができ、さらにn個のセグメントから処理対象ファイルを復元することができる。 By performing the processing as described above, it is possible to restore n segments from the tally file P and the (n−1) tally files U i, and further restore the processing target file from the n segments. Can do.

例えば、ユーザが、あるファイル(ユーザデータ)を客先に持ち運ぶ場面の一例を図20に示す。まず、持ち運びたいユーザデータから割符ファイルP並びに割符ファイルU及びUを生成し、割符ファイルPをUSBメモリに格納し、割符ファイルU及びUをノート型PCの内部記憶装置に格納する。そして、ノート型PCからUSBメモリを取り外し、ユーザは、それぞれを客先へ持ち運ぶ。 For example, FIG. 20 shows an example of a scene in which a user carries a certain file (user data) to a customer. First, a tally file P and tally files U 1 and U 2 are generated from user data to be carried, the tally file P is stored in a USB memory, and the tally files U 1 and U 2 are stored in an internal storage device of a notebook PC. . Then, the USB memory is removed from the notebook PC, and the user carries each to the customer.

ここで、もし、客先への移動中に、USBメモリが盗難にあったり、紛失したりした場合であっても、割符ファイルPだけではユーザデータを復元できない。同様に、ノート型PCが盗難にあったり、紛失したりした場合も、割符ファイルU及びUだけではユーザデータを復元できない。 Here, even if the USB memory is stolen or lost while moving to the customer, the user data cannot be restored only by the tally file P. Similarly, even if the notebook PC is stolen or lost, the user data cannot be restored only with the tally files U 1 and U 2 .

一方で、ノート型PC及びUSBメモリを紛失等することなく、客先に到着した場合には、割符ファイルP並びに割符ファイルU及びUが揃うので、上で説明したような処理を実施することにより、ユーザデータを復元することができる。なお、持ち運ぶデータの量は、基本的にはユーザデータのデータ量とほとんど変わらないので、全体のデータ量を増やすことなく、ユーザデータの情報漏洩を防止することができる。 On the other hand, when arriving at the customer without losing the notebook PC and the USB memory, the tally file P and the tally files U 1 and U 2 are prepared, so the processing as described above is performed. Thus, the user data can be restored. Since the amount of data to be carried is basically almost the same as the amount of user data, it is possible to prevent information leakage of user data without increasing the total amount of data.

[実施の形態2]
次に、図21及び図22を用いて、第2の実施の形態について説明する。上で説明した第1の実施の形態では、割符ファイルPを外部記憶装置3に格納するようになっていたが、第2の実施の形態では、割符ファイルPを、ネットワークを介して接続されるサーバに送信(アップロード)する。
[Embodiment 2]
Next, a second embodiment will be described with reference to FIGS. In the first embodiment described above, the tally file P is stored in the external storage device 3, but in the second embodiment, the tally file P is connected via a network. Send (upload) to the server.

なお、本実施の形態の概要を図21を用いて説明する。なお、図21では、ユーザ端末1とサーバ5とが、例えばインターネットであるネットワーク7を介して接続されているものとする。まず、ユーザ端末1が、ファイル(ユーザデータ)から割符ファイルP及び割符ファイルUを生成する(図21:ステップ(1))。割符ファイルP及び割符ファイルUを生成する処理自体は、第1の実施の形態と同じである。そして、生成した割符ファイルPを、ユーザ端末1からサーバ5へアップロードする(ステップ(2))。なお、割符ファイルUについては、ユーザ端末1の記憶部115に格納しておく。 The outline of the present embodiment will be described with reference to FIG. In FIG. 21, it is assumed that the user terminal 1 and the server 5 are connected via a network 7 which is the Internet, for example. First, the user terminal 1 generates a tally file P and a tally file U i from a file (user data) (FIG. 21: step (1)). The processing itself for generating the tally file P and the tally file U i is the same as that in the first embodiment. Then, the generated tally file P is uploaded from the user terminal 1 to the server 5 (step (2)). The tally file U i is stored in the storage unit 115 of the user terminal 1.

その後、ユーザは、ユーザ端末1を持って客先に移動する(ステップ(3))。なお、ステップ(3)は、ユーザの動作であるため、図21では、点線の矢印で示している。   Thereafter, the user moves to the customer with the user terminal 1 (step (3)). Since step (3) is a user operation, it is indicated by a dotted arrow in FIG.

そして、ユーザは客先へ到着すると、ユーザ端末1を操作してネットワーク7に接続させる。そして、ユーザ端末1は、サーバ5から割符ファイルPを取得(ダウンロード)する(ステップ(4))。そして、ユーザ端末1は、ダウンロードした割符ファイルPと、記憶部115に格納されている割符ファイルUとを用いてユーザデータを復元する(ステップ(5))。 Then, when the user arrives at the customer, the user terminal 1 is operated to connect to the network 7. Then, the user terminal 1 acquires (downloads) the tally file P from the server 5 (step (4)). Then, the user terminal 1 restores user data by using the downloaded tally file P and the tally file U i stored in the storage unit 115 (step (5)).

例えば、割符ファイルPをアップロード又はダウンロードの際に盗聴されたとしても、割符ファイルPだけではユーザデータを復元できない。また、ノート型PCが盗難にあったり、紛失したりした場合も、割符ファイルUだけではユーザデータを復元できない。すなわち、外部記憶装置3を持ち合わせていなくても、ユーザデータの情報漏洩を防止できるようになる。 For example, even if the tally file P is eavesdropped at the time of uploading or downloading, the user data cannot be restored only by the tally file P. Further, even if the notebook PC is stolen or lost, the user data cannot be restored only by the tally file U i . That is, it is possible to prevent information leakage of user data without having the external storage device 3.

なお、本実施の形態に係るユーザ端末1の構成は、外部記憶装置3を除けば図2に示した機能ブロック図と同じである。また、ユーザ端末1の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、割符ファイルを生成する際、図12の処理の代わりに図22に示すような処理を実施する。以下、図22の処理を説明する。   The configuration of the user terminal 1 according to the present embodiment is the same as the functional block diagram shown in FIG. 2 except for the external storage device 3. The processing of the user terminal 1 is basically the same as the processing described in the first embodiment, but when generating a tally file, the processing shown in FIG. 22 is used instead of the processing of FIG. Perform the process. Hereinafter, the process of FIG. 22 will be described.

なお、図22は、端子Bを介して図8から移行してきた後の処理フローを示す。端子Bまでの処理は、第1の実施の形態と変わらないため、詳細な説明は省略する。端子Bを介して図22に移行してきた場合、割符ファイル生成部109は、生成した割符ファイルPとn−1個の割符ファイルUとをワークメモリ111から取り出し、格納先決定部113に出力する。なお、ワークメモリ111に付加ビット特定データが格納されている場合には、付加ビット特定データも出力する。 FIG. 22 shows a processing flow after transitioning from FIG. Since the processing up to the terminal B is the same as that in the first embodiment, detailed description thereof is omitted. When the process proceeds to FIG. 22 via the terminal B, the tally file generation unit 109 extracts the generated tally file P and n−1 tally files U i from the work memory 111 and outputs them to the storage destination determination unit 113. To do. When additional bit specifying data is stored in the work memory 111, additional bit specifying data is also output.

そして、格納先決定部113は、割符ファイル生成部109から割符ファイルPとn−1個の割符ファイルUとを受け取る。そして、格納先決定部113は、割符ファイル生成部109から受け取った割符ファイルPをサーバ5に送信する(図22:ステップS71)。また、格納先決定部113は、割符ファイル生成部109から受け取ったn−1個の割符ファイルUを記憶部115に格納する(ステップS73)。なお、割符ファイルPを記憶部115に格納し、n−1個の割符ファイルUをサーバ5に送信するようにしても特に問題は生じない。但し、n−1個の割符ファイルUより割符ファイルPをサーバ5に送信した方が通信負荷(通信量)を抑えることができる。 Then, the storage destination determination unit 113 receives the tally file P and the (n−1) tally files U i from the tally file generation unit 109. Then, the storage location determination unit 113 transmits the tally file P received from the tally file generation unit 109 to the server 5 (FIG. 22: step S71). In addition, the storage destination determination unit 113 stores the n−1 tally files U i received from the tally file generation unit 109 in the storage unit 115 (step S73). Note that there is no particular problem even if the tally file P is stored in the storage unit 115 and n−1 tally files U i are transmitted to the server 5. However, the communication load (communication amount) can be reduced by transmitting the tally file P to the server 5 from the n-1 tally files U i .

そして、格納先決定部113は、割符ファイル生成部109から付加ビット特定データを受け取ったか判断する(ステップS75)。付加ビット特定データを受け取った場合(ステップS75:Yesルート)、格納先決定部113は、付加ビット特定データを記憶部115に格納する(ステップS77)。なお、付加ビット特定データをサーバ5に送信するようにしてもよい。その後、処理を終了する。   Then, the storage destination determining unit 113 determines whether additional bit specifying data has been received from the tally file generating unit 109 (step S75). When the additional bit specifying data is received (step S75: Yes route), the storage destination determining unit 113 stores the additional bit specifying data in the storage unit 115 (step S77). The additional bit specifying data may be transmitted to the server 5. Thereafter, the process ends.

一方、付加ビット特定データを受け取っていなければ(ステップS75:Noルート)、ステップS77をスキップし、処理を終了する。   On the other hand, if additional bit specifying data has not been received (step S75: No route), step S77 is skipped and the process is terminated.

また、ユーザデータを復元する際の処理は、ステップS43(図15)において、割符ファイルPをサーバ5から取得(ダウンロード)する以外は、第1の実施の形態と同じである。   The processing for restoring user data is the same as that in the first embodiment except that the tally file P is acquired (downloaded) from the server 5 in step S43 (FIG. 15).

以上のような処理を実施することにより、外部記憶装置3を持ち合わせていなくても、ユーザデータの情報漏洩を防止できるようになる。   By performing the processing as described above, it is possible to prevent information leakage of user data even if the external storage device 3 is not present.

以上本技術の一実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明したユーザ端末1の機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。また、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしてもよい。   Although one embodiment of the present technology has been described above, the present technology is not limited to this. For example, the functional block diagram of the user terminal 1 described above does not necessarily correspond to an actual program module configuration. Also in the processing flow, if the processing result does not change, the processing order can be changed. Further, it may be executed in parallel.

また、図7に示した付加ビット特定データは一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、上で述べた画面例は一例であって、同様の内容を表示する他の画面構成を採用することも可能である。   Further, the additional bit specifying data shown in FIG. 7 is an example, and the configuration as described above is not necessarily required. Furthermore, the screen examples described above are merely examples, and other screen configurations that display similar contents can be employed.

また、上では、ユーザデータを3個のセグメントに分割した場合を例に実施の形態を説明したが、分割数nは3に限定されない。nが5以上の奇数の場合も、上で述べたような処理を実施すればよい。   In the above description, the embodiment has been described by way of example in which user data is divided into three segments. However, the division number n is not limited to three. Even when n is an odd number of 5 or more, the processing as described above may be performed.

なお、上で述べたユーザ端末1は、コンピュータ装置であって、図25に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウェアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。   The user terminal 1 described above is a computer device, and as shown in FIG. 25, a memory 2501, a CPU 2503, a hard disk drive (HDD) 2505, a display control unit 2507 connected to the display device 2509, and a removable device. A drive device 2513 for the disk 2511, an input device 2515, and a communication control unit 2517 for connecting to a network are connected by a bus 2519. An operating system (OS) and an application program for executing the processing in this embodiment are stored in the HDD 2505, and are read from the HDD 2505 to the memory 2501 when executed by the CPU 2503. If necessary, the CPU 2503 controls the display control unit 2507, the communication control unit 2517, and the drive device 2513 to perform necessary operations. Further, data in the middle of processing is stored in the memory 2501 and stored in the HDD 2505 if necessary. In an embodiment of the present technology, an application program for performing the above-described processing is stored in a computer-readable removable disk 2511 and distributed, and installed from the drive device 2513 to the HDD 2505. In some cases, the HDD 2505 may be installed via a network such as the Internet and the communication control unit 2517. Such a computer apparatus realizes various functions as described above by organically cooperating hardware such as the CPU 2503 and the memory 2501 described above with the OS and necessary application programs.

以上本実施の形態をまとめると以下のようになる。   The present embodiment can be summarized as follows.

第1の態様に係る割符ファイル生成方法は、処理対象ファイルをn個のセグメントに分割する分割ステップ(図23のS101に相当)と、全てのセグメントによる排他的論理和を計算することにより第1の記憶装置に格納するための第1の割符ファイルを生成する第1割符ファイル生成ステップ(図23のS103に相当)と、n個のセグメントから任意のn−1個のセグメントを選ぶことにより構成されるn通りの組み合わせのうち、n−1通りの組み合わせの各々について、当該組み合わせに含まれるn−1個のセグメントによる排他的論理和を計算することにより第2の記憶装置に格納するための第2の割符ファイルを生成する第2割符ファイル生成ステップ(図23のS105に相当)とを含む。   The tally file generation method according to the first aspect includes a dividing step (corresponding to S101 in FIG. 23) for dividing the processing target file into n segments, and calculating the exclusive OR of all the segments. A first tally file generation step (corresponding to S103 in FIG. 23) for generating a first tally file for storage in the storage device, and selecting any n-1 segments from the n segments For storing each of n-1 combinations among the n combinations to be stored in the second storage device by calculating an exclusive OR of n-1 segments included in the combination. A second tally file generation step (corresponding to S105 in FIG. 23) for generating a second tally file.

このようにすれば、個々の割符ファイルだけでは処理対象ファイル(ユーザデータ)を復元できないような第1の割符ファイル及び第2の割符ファイルを生成することができる。なお、1個の第1の割符ファイルとn−1個の第2の割符ファイルとの計n個の割符ファイルが生成されるが、個々の割符ファイルのサイズは、1セグメントと同じサイズであるため、全体のデータ量は、処理対象ファイル(n個のセグメント)と同じである。すなわち、全体のデータ量を抑えつつ、処理対象ファイルの情報漏洩を防止できる。   In this way, it is possible to generate the first tally file and the second tally file in which the processing target file (user data) cannot be restored only by the individual tally file. Note that a total of n tally files, one first tally file and n-1 second tally files, are generated, but the size of each tally file is the same size as one segment. Therefore, the total data amount is the same as the processing target file (n segments). That is, information leakage of the processing target file can be prevented while suppressing the entire data amount.

また、第1の態様において、上で述べた第1割符ファイル生成ステップの前に、各セグメントのサイズが異なる場合、セグメントのサイズのうち最大サイズを特定し、最大サイズより小さいセグメントの各々について、当該セグメントのサイズが最大サイズと等しくなるよう当該セグメントに任意のビット列を付加するステップと、任意のビット列が付加されたセグメントと当該セグメントにおける任意のビット列の位置とを特定するための付加ビット特定データを第1の記憶装置又は第2の記憶装置に格納するステップとをさらに含むようにしてもよい。このようにすれば、処理対象ファイルを同一サイズのセグメントに分割できなかった場合にも対処できる。   Further, in the first aspect, when the size of each segment is different before the first tally file generation step described above, the maximum size among the segment sizes is specified, and for each of the segments smaller than the maximum size, Additional bit specifying data for adding an arbitrary bit string to the segment so that the size of the segment is equal to the maximum size, and a segment to which the arbitrary bit string is added and the position of the arbitrary bit string in the segment May be stored in the first storage device or the second storage device. In this way, it is possible to cope with the case where the processing target file cannot be divided into segments of the same size.

さらに、第1の態様において、上で述べた分割ステップの前に、処理対象ファイルが複数存在する場合、複数の処理対象ファイルを連結することにより1の処理対象ファイルを生成するステップをさらに含むようにしてもよい。このようにすれば、処理対象ファイルが複数存在する場合にも対処できる。   Furthermore, in the first aspect, when there are a plurality of processing target files before the dividing step described above, a step of generating one processing target file by concatenating the plurality of processing target files is further included. Also good. In this way, it is possible to cope with a case where a plurality of files to be processed exist.

また、第1の態様において、上で述べた第1の記憶装置が、取り外し可能な外部記憶装置であり、上で述べた第2の記憶装置が、コンピュータの内部記憶装置である場合もある。そして、コンピュータに取り付けられた外部記憶装置を自動認識して、第1の割符ファイルを外部記憶装置に格納するステップと、第2の割符ファイルを内部記憶装置に格納するステップとをさらに含むようにしてもよい。例えば外部記憶装置の方が記憶容量が少ない場合、n−1個の第2の割符ファイルを格納するより、1個の第1の割符ファイルを外部記憶装置に格納するようにした方が効率的である。   In the first aspect, the first storage device described above may be a removable external storage device, and the second storage device described above may be an internal storage device of a computer. The method further includes a step of automatically recognizing an external storage device attached to the computer and storing the first tally file in the external storage device and a step of storing the second tally file in the internal storage device. Good. For example, when the external storage device has a smaller storage capacity, it is more efficient to store one first tally file in the external storage device than to store n-1 second tally files. It is.

さらに、第1の態様において、上で述べた第1の記憶装置が、コンピュータとネットワークを介して接続されるサーバで管理される記憶装置であり、上で述べた第2の記憶装置が、コンピュータの内部記憶装置である場合もある。そして、第1の割符ファイルをサーバに送信するステップと、第2の割符ファイルを内部記憶装置に格納するステップとをさらに含むようにしてもよい。このようにすれば、外部記憶装置を持ち合わせていない場合にも対処できる。なお、n−1個の第2の割符ファイルをサーバに送信するより、1個の第1の割符ファイルをサーバに送信した方が通信負荷を抑えられる。   Furthermore, in the first aspect, the first storage device described above is a storage device managed by a server connected to the computer via a network, and the second storage device described above is a computer. May be an internal storage device. Then, the method may further include a step of transmitting the first tally file to the server and a step of storing the second tally file in the internal storage device. In this way, it is possible to cope with a case where no external storage device is provided. Note that the transmission load can be reduced by transmitting one first tally file to the server rather than transmitting n-1 second tally files to the server.

第2の態様に係るデータ復元方法は、処理対象ファイルを分割することにより得られるn個のセグメントによる排他的論理和を含む第1の割符ファイルを格納している第1の記憶装置から第1の割符ファイルを取得する第1取得ステップ(図24のS111に相当)と、n個のセグメントから任意のn−1個のセグメントを選ぶことにより構成されるn通りの組み合わせのうちのn−1通りの組み合わせ毎に当該組み合わせに含まれるn−1個のセグメントによる排他的論理和を含む第2の割符ファイルを格納している第2の記憶装置からn−1個の第2の割符ファイルを取得する第2取得ステップ(図24のS113に相当)と、n−1個の第2の割符ファイルによる排他的論理和を計算することにより、新たな第2の割符ファイルを生成するステップ(図24のS115に相当)と、第1の割符ファイルと第2の割符ファイルの各々との排他的論理和を計算することにより、n個のセグメントを復元するステップ(図24のS117に相当)とを含む。   The data restoration method according to the second aspect is the first from the first storage device storing the first tally file including the exclusive OR of n segments obtained by dividing the file to be processed. The first acquisition step (corresponding to S111 in FIG. 24) for acquiring the tally file and n−1 of n combinations configured by selecting any n−1 segments from the n segments N-1 second tally files from a second storage device storing a second tally file including an exclusive OR of n-1 segments included in the combination for each combination. A new second tally file is generated by calculating the exclusive OR of the second obtaining step (corresponding to S113 in FIG. 24) and n-1 second tally files. Step (corresponding to S115 in FIG. 24) and the step of restoring n segments by calculating the exclusive OR of each of the first tally file and the second tally file (S117 in FIG. 24). Equivalent).

このようにすれば、第1の割符ファイルと第2の割符ファイルとを用いて、n個のセグメントを復元することができ、さらにn個のセグメントから処理対象ファイルを復元することができるようになる。   In this way, n segments can be restored using the first tally file and the second tally file, and the processing target file can be restored from the n segments. Become.

また、第2の態様において、任意のビット列が付加されているセグメントと当該セグメントにおける任意のビット列の位置とを特定するための付加ビット特定データが第1の記憶装置又は第2の記憶装置に格納されている場合、第1の記憶装置又は第2の記憶装置から付加ビット特定データを取得するステップと、付加ビット特定データにより特定され且つ任意のビット列が付加されている各セグメントについて、当該セグメントから付加ビット特定データにより特定される任意のビット列を除去するステップとをさらに含むようにしてもよい。このようにすれば、任意のビット列が付加されているセグメントから当該任意のビット列を除去することができるので、セグメントを正しく復元できる。   In the second mode, additional bit specifying data for specifying a segment to which an arbitrary bit string is added and the position of the arbitrary bit string in the segment is stored in the first storage device or the second storage device. The additional bit specifying data from the first storage device or the second storage device, and for each segment specified by the additional bit specifying data and to which an arbitrary bit string is added, from the segment And a step of removing an arbitrary bit string specified by the additional bit specifying data. In this way, since the arbitrary bit string can be removed from the segment to which the arbitrary bit string is added, the segment can be correctly restored.

さらに、第2の態様において、復元されたn個のセグメントを連結することにより処理対象ファイルを復元するステップをさらに含むようにしてもよい。   Furthermore, in the second aspect, a step of restoring the processing target file by concatenating the restored n segments may be further included.

また、第2の態様において、上で述べた第1の記憶装置が、取り外し可能な外部記憶装置であり、上で述べた第2の記憶装置が、コンピュータの内部記憶装置である場合もある。そして、上で述べた第1取得ステップが、コンピュータに取り付けられた外部記憶装置を自動認識して、当該外部記憶装置から第1の割符ファイルを取得するステップを含むようにしてもよい。   In the second aspect, the first storage device described above may be a removable external storage device, and the second storage device described above may be an internal storage device of a computer. The first acquisition step described above may include a step of automatically recognizing an external storage device attached to the computer and acquiring a first tally file from the external storage device.

さらに、第2の態様において、上で述べた第1の記憶装置が、コンピュータとネットワークを介して接続されるサーバで管理される記憶装置であり、上で述べた第2の記憶装置が、コンピュータの内部記憶装置である場合もある。上で述べた第1取得ステップが、サーバから第1の割符ファイルを取得するステップを含むようにしてもよい。   Further, in the second aspect, the first storage device described above is a storage device managed by a server connected to the computer via a network, and the second storage device described above is a computer. May be an internal storage device. The first acquisition step described above may include a step of acquiring the first tally file from the server.

また、第1又は第2の態様において、nが3以上の奇数である場合もある。   In the first or second aspect, n may be an odd number of 3 or more.

なお、上記処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。なお、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。   A program for causing a computer to execute the above processing can be created, and the program is stored in a storage medium or storage device such as a flexible disk, a CD-ROM, a magneto-optical disk, a semiconductor memory, or a hard disk. . The intermediate processing result is temporarily stored in a storage device such as a main memory.

以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。   The following supplementary notes are further disclosed with respect to the embodiments including the above examples.

(付記1)
処理対象ファイルをn個のセグメントに分割する分割ステップと、
全ての前記セグメントによる排他的論理和を計算することにより第1の記憶装置に格納するための第1の割符ファイルを生成する第1割符ファイル生成ステップと、
n個の前記セグメントから任意のn−1個の前記セグメントを選ぶことにより構成されるn通りの組み合わせのうち、n−1通りの前記組み合わせの各々について、当該組み合わせに含まれるn−1個の前記セグメントによる排他的論理和を計算することにより第2の記憶装置に格納するための第2の割符ファイルを生成する第2割符ファイル生成ステップと、
をコンピュータに実行させるための割符ファイル生成プログラム。
(Appendix 1)
A division step of dividing the file to be processed into n segments;
A first tally file generating step for generating a first tally file for storing in the first storage device by calculating an exclusive OR of all the segments;
Of the n combinations configured by selecting any n-1 segments from the n segments, n-1 combinations included in the combination are included in each of the n-1 combinations. A second tally file generating step for generating a second tally file for storing in a second storage device by calculating an exclusive OR of the segments;
A tally file generation program for making a computer execute.

(付記2)
前記第1割符ファイル生成ステップの前に、各前記セグメントのサイズが異なる場合、前記セグメントのサイズのうち最大サイズを特定し、前記最大サイズより小さい前記セグメントの各々について、当該セグメントのサイズが前記最大サイズと等しくなるよう当該セグメントに任意のビット列を付加するステップと、
前記任意のビット列が付加された前記セグメントと当該セグメントにおける前記任意のビット列の位置とを特定するための付加ビット特定データを前記第1の記憶装置又は前記第2の記憶装置に格納するステップと、
をさらにコンピュータに実行させるための付記1記載の割符ファイル生成プログラム。
(Appendix 2)
If the size of each segment is different before the first tally file generation step, the maximum size among the segment sizes is specified, and for each of the segments smaller than the maximum size, the size of the segment is the maximum size. Adding an arbitrary bit string to the segment to be equal in size;
Storing additional bit specifying data for specifying the segment to which the arbitrary bit string is added and the position of the arbitrary bit string in the segment in the first storage device or the second storage device;
The tally file generation program according to appendix 1, for causing a computer to execute the above.

(付記3)
前記分割ステップの前に、前記処理対象ファイルが複数存在する場合、複数の前記処理対象ファイルを連結することにより1の処理対象ファイルを生成するステップ
をさらにコンピュータに実行させるための付記1又は2載の割符ファイル生成プログラム。
(Appendix 3)
Supplementary note 1 or 2 for causing a computer to further execute a step of generating one processing target file by concatenating a plurality of processing target files when there are a plurality of processing target files before the dividing step. Tally file generation program.

(付記4)
前記第1の記憶装置が、取り外し可能な外部記憶装置であり、
前記第2の記憶装置が、前記コンピュータの内部記憶装置であり、
前記コンピュータに取り付けられた前記外部記憶装置を自動認識して、前記第1の割符ファイルを前記外部記憶装置に格納するステップと、
前記第2の割符ファイルを前記内部記憶装置に格納するステップと、
をさらにコンピュータに実行させるための付記1乃至3のいずれか1つ記載の割符ファイル生成プログラム。
(Appendix 4)
The first storage device is a removable external storage device;
The second storage device is an internal storage device of the computer;
Automatically recognizing the external storage device attached to the computer and storing the first tally file in the external storage device;
Storing the second tally file in the internal storage device;
The tally file generation program according to any one of supplementary notes 1 to 3, further causing the computer to execute the above.

(付記5)
前記第1の記憶装置が、前記コンピュータとネットワークを介して接続されるサーバで管理される記憶装置であり、
前記第2の記憶装置が、前記コンピュータの内部記憶装置であり、
前記第1の割符ファイルを前記サーバに送信するステップと、
前記第2の割符ファイルを前記内部記憶装置に格納するステップと、
をさらにコンピュータに実行させるための付記1乃至3のいずれか1つ記載の割符ファイル生成プログラム。
(Appendix 5)
The first storage device is a storage device managed by a server connected to the computer via a network;
The second storage device is an internal storage device of the computer;
Sending the first tally file to the server;
Storing the second tally file in the internal storage device;
The tally file generation program according to any one of supplementary notes 1 to 3, further causing the computer to execute the above.

(付記6)
nは3以上の奇数であることを特徴とする付記1乃至5のいずれか1つ記載の割符ファイル生成プログラム。
(Appendix 6)
6. The tally file generation program according to any one of appendices 1 to 5, wherein n is an odd number of 3 or more.

(付記7)
処理対象ファイルを分割することにより得られるn個のセグメントによる排他的論理和を含む第1の割符ファイルを格納している第1の記憶装置から前記第1の割符ファイルを取得する第1取得ステップと、
n個の前記セグメントから任意のn−1個の前記セグメントを選ぶことにより構成されるn通りの組み合わせのうちのn−1通りの組み合わせ毎に当該組み合わせに含まれるn−1個の前記セグメントによる排他的論理和を含む第2の割符ファイルを格納している第2の記憶装置からn−1個の前記第2の割符ファイルを取得する第2取得ステップと、
n−1個の前記第2の割符ファイルによる排他的論理和を計算することにより、新たな第2の割符ファイルを生成するステップと、
前記第1の割符ファイルと前記第2の割符ファイルの各々との排他的論理和を計算することにより、n個の前記セグメントを復元するステップと、
をコンピュータに実行させるためのデータ復元プログラム。
(Appendix 7)
A first acquisition step of acquiring the first tally file from a first storage device storing a first tally file including an exclusive OR of n segments obtained by dividing the file to be processed; When,
According to n-1 segments included in the combination for every n-1 combinations out of n combinations configured by selecting an arbitrary n-1 segments from the n segments. A second acquisition step of acquiring n-1 second tally files from a second storage device storing a second tally file including an exclusive OR;
generating a new second tally file by calculating an exclusive OR with n-1 said second tally files;
Restoring n segments by calculating an exclusive OR of each of the first tally file and the second tally file;
Data restoration program to make computer execute.

(付記8)
任意のビット列が付加されている前記セグメントと当該セグメントにおける前記任意のビット列の位置とを特定するための付加ビット特定データが前記第1の記憶装置又は前記第2の記憶装置に格納されている場合、前記第1の記憶装置又は前記第2の記憶装置から前記付加ビット特定データを取得するステップと、
前記付加ビット特定データにより特定され且つ前記任意のビット列が付加されている各前記セグメントについて、当該セグメントから前記付加ビット特定データにより特定される前記任意のビット列を除去するステップと、
をさらにコンピュータに実行させるための付記7記載のデータ復元プログラム。
(Appendix 8)
When additional bit specifying data for specifying the segment to which an arbitrary bit string is added and the position of the arbitrary bit string in the segment are stored in the first storage device or the second storage device Obtaining the additional bit specifying data from the first storage device or the second storage device;
Removing the arbitrary bit string specified by the additional bit specifying data from the segment for each of the segments specified by the additional bit specifying data and to which the arbitrary bit string is added;
The data restoration program according to appendix 7, for causing the computer to further execute.

(付記9)
復元されたn個の前記セグメントを連結することにより前記処理対象ファイルを復元するステップ
をさらにコンピュータに実行させるための付記7又は8記載のデータ復元プログラム。
(Appendix 9)
The data restoration program according to appendix 7 or 8, further causing the computer to execute the step of restoring the file to be processed by concatenating the restored n segments.

(付記10)
前記第1の記憶装置が、取り外し可能な外部記憶装置であり、
前記第2の記憶装置が、前記コンピュータの内部記憶装置であり、
前記第1取得ステップが、
前記コンピュータに取り付けられた前記外部記憶装置を自動認識して、当該外部記憶装置から前記第1の割符ファイルを取得するステップ
を含む付記7乃至9のいずれか1つ記載のデータ復元プログラム。
(Appendix 10)
The first storage device is a removable external storage device;
The second storage device is an internal storage device of the computer;
The first acquisition step includes:
The data restoration program according to any one of appendices 7 to 9, including a step of automatically recognizing the external storage device attached to the computer and acquiring the first tally file from the external storage device.

(付記11)
前記第1の記憶装置が、前記コンピュータとネットワークを介して接続されるサーバで管理される記憶装置であり、
前記第2の記憶装置が、前記コンピュータの内部記憶装置であり、
前記第1取得ステップが、
前記サーバから前記第1の割符ファイルを取得するステップ
を含む付記7乃至9記載のデータ復元プログラム。
(Appendix 11)
The first storage device is a storage device managed by a server connected to the computer via a network;
The second storage device is an internal storage device of the computer;
The first acquisition step includes:
The data restoration program according to any one of appendices 7 to 9, including the step of obtaining the first tally file from the server.

(付記12)
nは3以上の奇数であることを特徴とする付記7乃至11のいずれか1つ記載のデータ復元プログラム。
(Appendix 12)
12. The data restoration program according to any one of appendices 7 to 11, wherein n is an odd number of 3 or more.

(付記13)
処理対象ファイルをn個のセグメントに分割する分割ステップと、
全ての前記セグメントによる排他的論理和を計算することにより第1の記憶装置に格納するための第1の割符ファイルを生成する第1割符ファイル生成ステップと、
n個の前記セグメントから任意のn−1個の前記セグメントを選ぶことにより構成されるn通りの組み合わせのうち、n−1通りの前記組み合わせの各々について、当該組み合わせに含まれるn−1個の前記セグメントによる排他的論理和を計算することにより第2の記憶装置に格納するための第2の割符ファイルを生成する第2割符ファイル生成ステップと、
を含み、コンピュータにより実行される割符ファイル生成方法。
(Appendix 13)
A division step of dividing the file to be processed into n segments;
A first tally file generating step for generating a first tally file for storing in the first storage device by calculating an exclusive OR of all the segments;
Of the n combinations configured by selecting any n-1 segments from the n segments, n-1 combinations included in the combination are included in each of the n-1 combinations. A second tally file generating step for generating a second tally file for storing in a second storage device by calculating an exclusive OR of the segments;
A tally file generation method executed by a computer.

(付記14)
処理対象ファイルを分割することにより得られるn個のセグメントによる排他的論理和を含む第1の割符ファイルを格納している第1の記憶装置から前記第1の割符ファイルを取得する第1取得ステップと、
n個の前記セグメントから任意のn−1個の前記セグメントを選ぶことにより構成されるn通りの組み合わせのうちのn−1通りの組み合わせ毎に当該組み合わせに含まれるn−1個の前記セグメントによる排他的論理和を含む第2の割符ファイルを格納している第2の記憶装置からn−1個の前記第2の割符ファイルを取得する第2取得ステップと、
n−1個の前記第2の割符ファイルによる排他的論理和を計算することにより、新たな第2の割符ファイルを生成するステップと、
前記第1の割符ファイルと前記第2の割符ファイルの各々との排他的論理和を計算することにより、n個の前記セグメントを復元するステップと、
を含み、コンピュータにより実行されるデータ復元方法。
(Appendix 14)
A first acquisition step of acquiring the first tally file from a first storage device storing a first tally file including an exclusive OR of n segments obtained by dividing the file to be processed; When,
According to n-1 segments included in the combination for every n-1 combinations out of n combinations configured by selecting an arbitrary n-1 segments from the n segments. A second acquisition step of acquiring n-1 second tally files from a second storage device storing a second tally file including an exclusive OR;
generating a new second tally file by calculating an exclusive OR with n-1 said second tally files;
Restoring n segments by calculating an exclusive OR of each of the first tally file and the second tally file;
A data restoration method executed by a computer.

1 ユーザ端末 3 外部記憶装置
5 サーバ 7 ネットワーク
101 入力部 103 表示部
105 ユーザデータ格納部 107 処理対象ファイル取得部
109 割符ファイル生成部 111 ワークメモリ
113 格納先決定部 115 記憶部
117 割符ファイル取得部 119 復元処理部
DESCRIPTION OF SYMBOLS 1 User terminal 3 External storage device 5 Server 7 Network 101 Input part 103 Display part 105 User data storage part 107 Processing object file acquisition part 109 Tally file generation part 111 Work memory 113 Storage destination determination part 115 Storage part 117 Tally file acquisition part 119 Restoration processing unit

Claims (6)

処理対象ファイルをn(nは3以上の奇数)個のセグメントに分割する分割ステップと、
全ての前記セグメントによる排他的論理和を計算することにより第1の記憶装置に格納するための第1の割符ファイルを生成する第1割符ファイル生成ステップと、
n個の前記セグメントのうちi(iは自然数)番目のセグメントを除くn−1個のセグメントによる排他的論理和を計算する処理を、1≦i≦n−1を満たすiの各々について実行することにより第2の記憶装置に格納するための第2の割符ファイルを生成する第2割符ファイル生成ステップと、
をコンピュータに実行させるための割符ファイル生成プログラム。
A division step of dividing the file to be processed into n segments (n is an odd number of 3 or more) ;
A first tally file generating step for generating a first tally file for storing in the first storage device by calculating an exclusive OR of all the segments;
A process of calculating an exclusive OR of n-1 segments excluding the i-th segment (i is a natural number) among the n segments is executed for each of i satisfying 1 ≦ i ≦ n−1. A second tally file generating step for generating a second tally file for storing in the second storage device,
A tally file generation program for making a computer execute.
前記第1割符ファイル生成ステップの前に、各前記セグメントのサイズが異なる場合、前記セグメントのサイズのうち最大サイズを特定し、前記最大サイズより小さい前記セグメントの各々について、当該セグメントのサイズが前記最大サイズと等しくなるよう当該セグメントに任意のビット列を付加するステップと、
前記任意のビット列が付加された前記セグメントと当該セグメントにおける前記任意のビット列の位置とを特定するための付加ビット特定データを前記第1の記憶装置又は前記第2の記憶装置に格納するステップと、
をさらにコンピュータに実行させるための請求項1記載の割符ファイル生成プログラム。
If the size of each segment is different before the first tally file generation step, the maximum size among the segment sizes is specified, and for each of the segments smaller than the maximum size, the size of the segment is the maximum size. Adding an arbitrary bit string to the segment to be equal in size;
Storing additional bit specifying data for specifying the segment to which the arbitrary bit string is added and the position of the arbitrary bit string in the segment in the first storage device or the second storage device;
The tally file generation program according to claim 1, further causing a computer to execute.
処理対象ファイルを分割することにより得られるn(nは3以上の奇数)個のセグメントによる排他的論理和を含む第1の割符ファイルを格納している第1の記憶装置から前記第1の割符ファイルを取得する第1取得ステップと、
n個の前記セグメントのうちi(iは自然数)番目のセグメントを除くn−1個のセグメントによる排他的論理和を計算する処理を、1≦i≦n−1を満たすiの各々について実行することによって生成される第2の割符ファイルを格納している第2の記憶装置から、n−1個の前記第2の割符ファイルを取得する第2取得ステップと、
n−1個の前記第2の割符ファイルによる排他的論理和を計算することにより、新たな第2の割符ファイルを生成するステップと、
前記第1の割符ファイルと前記第2の割符ファイルの各々との排他的論理和を計算することにより、n個の前記セグメントを復元するステップと、
をコンピュータに実行させるためのデータ復元プログラム。
The first tally from the first storage device storing the first tally file including the exclusive OR of n (n is an odd number of 3 or more) segments obtained by dividing the file to be processed A first acquisition step of acquiring a file;
A process of calculating an exclusive OR of n-1 segments excluding the i-th segment (i is a natural number) among the n segments is executed for each of i satisfying 1 ≦ i ≦ n−1. A second acquisition step of acquiring n-1 second tally files from a second storage device storing second tally files generated by
generating a new second tally file by calculating an exclusive OR with n-1 said second tally files;
Restoring n segments by calculating an exclusive OR of each of the first tally file and the second tally file;
Data restoration program to make computer execute.
任意のビット列が付加されている前記セグメントと当該セグメントにおける前記任意のビット列の位置とを特定するための付加ビット特定データが前記第1の記憶装置又は前記第2の記憶装置に格納されている場合、前記第1の記憶装置又は前記第2の記憶装置から前記付加ビット特定データを取得するステップと、
前記付加ビット特定データにより特定され且つ前記任意のビット列が付加されている各前記セグメントについて、当該セグメントから前記付加ビット特定データにより特定される前記任意のビット列を除去するステップと、
をさらにコンピュータに実行させるための請求項記載のデータ復元プログラム。
When additional bit specifying data for specifying the segment to which an arbitrary bit string is added and the position of the arbitrary bit string in the segment are stored in the first storage device or the second storage device Obtaining the additional bit specifying data from the first storage device or the second storage device;
Removing the arbitrary bit string specified by the additional bit specifying data from the segment for each of the segments specified by the additional bit specifying data and to which the arbitrary bit string is added;
The data restoration program according to claim 3 , further causing a computer to execute.
処理対象ファイルをn(nは3以上の奇数)個のセグメントに分割する分割ステップと、
全ての前記セグメントによる排他的論理和を計算することにより第1の記憶装置に格納するための第1の割符ファイルを生成する第1割符ファイル生成ステップと、
n個の前記セグメントのうちi(iは自然数)番目のセグメントを除くn−1個のセグメントによる排他的論理和を計算する処理を、1≦i≦n−1を満たすiの各々について実行することにより第2の記憶装置に格納するための第2の割符ファイルを生成する第2割符ファイル生成ステップと、
を含み、コンピュータにより実行される割符ファイル生成方法。
A division step of dividing the file to be processed into n segments (n is an odd number of 3 or more) ;
A first tally file generating step for generating a first tally file for storing in the first storage device by calculating an exclusive OR of all the segments;
A process of calculating an exclusive OR of n-1 segments excluding the i-th segment (i is a natural number) among the n segments is executed for each of i satisfying 1 ≦ i ≦ n−1. A second tally file generating step for generating a second tally file for storing in the second storage device,
A tally file generation method executed by a computer.
処理対象ファイルを分割することにより得られるn(nは3以上の奇数)個のセグメントによる排他的論理和を含む第1の割符ファイルを格納している第1の記憶装置から前記第1の割符ファイルを取得する第1取得ステップと、
n個の前記セグメントのうちi(iは自然数)番目のセグメントを除くn−1個のセグメントによる排他的論理和を計算する処理を、1≦i≦n−1を満たすiの各々について実行することによって生成される第2の割符ファイルを格納している第2の記憶装置から、n−1個の前記第2の割符ファイルを取得する第2取得ステップと、
n−1個の前記第2の割符ファイルによる排他的論理和を計算することにより、新たな第2の割符ファイルを生成するステップと、
前記第1の割符ファイルと前記第2の割符ファイルの各々との排他的論理和を計算することにより、n個の前記セグメントを復元するステップと、
を含み、コンピュータにより実行されるデータ復元方法。
The first tally from the first storage device storing the first tally file including the exclusive OR of n (n is an odd number of 3 or more) segments obtained by dividing the file to be processed A first acquisition step of acquiring a file;
A process of calculating an exclusive OR of n-1 segments excluding the i-th segment (i is a natural number) among the n segments is executed for each of i satisfying 1 ≦ i ≦ n−1. A second acquisition step of acquiring n-1 second tally files from a second storage device storing second tally files generated by
generating a new second tally file by calculating an exclusive OR with n-1 said second tally files;
Restoring n segments by calculating an exclusive OR of each of the first tally file and the second tally file;
A data restoration method executed by a computer.
JP2009170299A 2009-07-21 2009-07-21 Tally file generation program and method, and data restoration program and method Expired - Fee Related JP5397062B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009170299A JP5397062B2 (en) 2009-07-21 2009-07-21 Tally file generation program and method, and data restoration program and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009170299A JP5397062B2 (en) 2009-07-21 2009-07-21 Tally file generation program and method, and data restoration program and method

Publications (2)

Publication Number Publication Date
JP2011028314A JP2011028314A (en) 2011-02-10
JP5397062B2 true JP5397062B2 (en) 2014-01-22

Family

ID=43637029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009170299A Expired - Fee Related JP5397062B2 (en) 2009-07-21 2009-07-21 Tally file generation program and method, and data restoration program and method

Country Status (1)

Country Link
JP (1) JP5397062B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015001637A1 (en) * 2013-07-03 2015-01-08 A・Tコミュニケーションズ株式会社 Authentication server, authentication system, authentication method, and program
JP6059748B2 (en) * 2015-02-20 2017-01-11 西日本電信電話株式会社 Authentication linkage system and authentication method
JP6363780B1 (en) * 2017-10-30 2018-07-25 ネクスト・イット株式会社 System for executing tally processing of data file as it is in USB memory, USB memory, and method for providing USB memory to customer
JP2021026049A (en) * 2019-07-31 2021-02-22 株式会社リコー Receiving device, information processing system, and receiving method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4552044B2 (en) * 2003-08-22 2010-09-29 独立行政法人情報通信研究機構 Encrypted data creation device and method, and program thereof
JP4336859B2 (en) * 2004-06-15 2009-09-30 日本電気株式会社 Redundant drive group and writing method and data restoring method using the same
JP2007087062A (en) * 2005-09-21 2007-04-05 Canon Inc Array type storage device

Also Published As

Publication number Publication date
JP2011028314A (en) 2011-02-10

Similar Documents

Publication Publication Date Title
JP2022059027A (en) Encryption method in terminal device and terminal
US9800412B2 (en) System and method for securing sensitive data
CA2856882C (en) System for transferring states between electronic devices
TWI507891B (en) Electronic device, cloud storage system for managing cloud storage spaces, method and computer program product thereof
JP4945715B2 (en) Data backup device, data backup method and program thereof
JP5397062B2 (en) Tally file generation program and method, and data restoration program and method
JP2008187608A (en) Data transmission system
CN112948340A (en) Data synchronization method and device, electronic equipment and readable storage medium
US8892897B2 (en) Method for generating and detecting auditable passwords
US10203986B2 (en) Distributed storage data repair air via partial data rebuild within an execution path
CN107943501A (en) Embedded device upgrade method, device, computer equipment and storage medium
CN109284272A (en) A kind of dispositions method of distributed file system, device and equipment
CN109359471A (en) Encryption method, device, system, equipment and medium based on user identity
JP2017207860A (en) Virtual currency management method and virtual currency management program
CN110730167B (en) Data sending method, data query method, device, electronic equipment and system
JP2006311383A (en) Data managing method, data management system and data managing device
CN103401931A (en) Method and system for downloading file
JP4818279B2 (en) Program processing apparatus, program processing method, and program
CA2298995C (en) Apparatus and method for generating expression data for finite field operation
JP2010256978A (en) Configuration data verification device and verification method, and program
CN107707482A (en) A kind of data smoothing method and apparatus
JP4853026B2 (en) Information processing apparatus and program
CN111130788B (en) Data processing method and system, data reading method and iSCSI server
JP2016071725A (en) Workflow control program, workflow control method and information processing unit
CN105303321A (en) Archive management method and apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130813

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130902

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: 20130924

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131007

R150 Certificate of patent or registration of utility model

Ref document number: 5397062

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees