JP4488647B2 - Communications system - Google Patents

Communications system Download PDF

Info

Publication number
JP4488647B2
JP4488647B2 JP2001131057A JP2001131057A JP4488647B2 JP 4488647 B2 JP4488647 B2 JP 4488647B2 JP 2001131057 A JP2001131057 A JP 2001131057A JP 2001131057 A JP2001131057 A JP 2001131057A JP 4488647 B2 JP4488647 B2 JP 4488647B2
Authority
JP
Japan
Prior art keywords
file
data
unit
encryption
dummy
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 - Lifetime
Application number
JP2001131057A
Other languages
Japanese (ja)
Other versions
JP2002330122A (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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co 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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2001131057A priority Critical patent/JP4488647B2/en
Publication of JP2002330122A publication Critical patent/JP2002330122A/en
Application granted granted Critical
Publication of JP4488647B2 publication Critical patent/JP4488647B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、よりセキュリティの高い通信システムに関する。
【0002】
【従来の技術】
情報処理技術や通信技術の進展により、通信網を介した情報の伝送が容易かつ効率的に行えるようになっており、これに伴って、そのような通信網を介して伝送される情報の量も飛躍的に増大している。
通信網としては種々の形態のものがあるが、たとえば、複数のコンピュータシステム、ネットワークが世界的規模で接続されたインターネットは、その規模、通信コストの面から着目されており、広く利用されている。
ところで、このような通信網を介しては、個人や企業間において種々の機密性を有するデータの通信も行われている。
そのようなデータ通信における機密性の必要なデータを伝送する一般的な方法として、機密データを暗号化して伝送する方法が行なわれている。その際、暗号化を行うのに暗号鍵を使用するが、データを暗号化し伝送する者は、暗号鍵を喪失したり、第三者に知れ渡る事が無いように、安全に保持、管理する必要がある。
そのような管理方法としては、暗号鍵および復号鍵を、いわゆるICカードに記憶させて安全に保持、管理し、暗号送信側および復号受信側にICカードを1枚ずつ分配し、ICカードを用いて機密データを暗号化し伝送させる方法が知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、暗号鍵と復号鍵とが記録されたICカードを暗号送信側および復号受信側それぞれ1枚ずつ持つ方法では、このICカードを使用する者が、1人で暗号化または復号化を行う際に、機密データの改ざん、覗き見、漏洩等のICカードの不正使用を行なうことが可能である。このため、ICカードを1枚ずつ使用する方法では、第三者のチェック機能がない、セキュリティが低い等の問題があり改善の要望がある。
【0004】
したがって本発明の目的は、よりセキュリティの高い通信システムを提供することにある。
【0005】
【課題を解決するための手段】
前記課題を解決するために、本発明に係る通信システムは、暗号化装置と復号化装置と、を有し、前記暗号化装置の側に設けられた第1の情報記憶装置には、暗号鍵に関わるデータを複数に分割した規定のバイト長の乱数で求められたバイナリデータのテーブルからなる部分暗号鍵データ、及び、暗号化対象のデータを複数のファイル番号により区分される複数の分割ファイルに分割する際において、上記ファイル番号及びそのファイル番号における分割ファイルのデータ量を示す分割パターンと、その分割パターンのバリエーションを示す分割パターン番号とからなる分割パターンテーブルの一部を示す複数の部分分割パターンテーブルが記憶され、前記復号化装置の側に設けられた第2の情報記憶装置には、復号鍵に関わるデータを複数に分割した部分復号鍵データ、及び、前記部分分割パターンテーブルと同じ内容であって前記複数の分割ファイルを結合するためのパターンの一部を示す複数の部分結合パターンテーブルが記憶されている通信システムであって、前記暗号化装置は、前記第1の情報記憶装置から、前記規定のバイト長数以内の乱数を基にしたオフセット値で前記テーブルのバイナリデータ中より選択して読み取った複数の所定のバイト長の前記部分暗号鍵データを統合し、前記統合した部分暗号鍵データに基づいて暗号鍵を生成する暗号鍵生成手段と、前記暗号化対象のデータとは無関係のダミーファイルを前記暗号化対象のデータに付加するダミーファイル付加手段と、前記第1の情報記憶装置から読み取った複数の前記部分分割パターンテーブルを結合して分割パターンテーブルを生成し、生成された乱数を前記分割パターン番号としたものに対応する前記分割パターンテーブルの分割パターンに基づき、前記暗号化対象のデータを複数の分割ファイルに分割するデータ分割手段と、前記生成された暗号鍵に基づいて、前記複数の分割ファイルを暗号化するとともに、前記ダミーファイルのハッシュ値を利用した前記ダミーファイルとは別のコントロールファイル前記ダミーファイルを特定するために生成する暗号化手段と、前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを送信する送信手段と、を有し、前記復号化装置は、前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを受信する受信手段と、前記第2の情報記憶装置から読み取った複数の前記部分復号鍵データを統合し、前記統合した部分復号鍵データに基づいて復号鍵を生成する復号鍵生成手段と、受信されたコントロールファイルに基づいて、前記ダミーファイル、及び、暗号化された前記複数の分割ファイルの中から前記ダミーファイルを特定して除去して、暗号化された前記複数の分割ファイルを出力するダミーファイル除去手段と、前記生成された復号鍵に基づいて、上記出力され暗号化された前記複数の分割ファイルを復号化する復号化手段と、前記第2の情報記憶装置から読み取った複数の前記部分結合パターンテーブルを結合して、前記分割パターンテーブルと同じ内容の結合パターンテーブルを生成し、前記結合パターンテーブルに基づいて前記複数の分割ファイルを結合することにより元の上記暗号化対象のデータに復元するデータ統合手段と、を有する。
【0006】
また、本発明に係わる通信方法は、暗号化装置と復号化装置とを有する通信システムにおいて、暗号化ステップと復号化ステップとを有する通信方法であって、前記暗号化装置の側に設けられた第1の情報記憶装置には、暗号鍵に関わるデータを複数に分割した規定のバイト長の乱数で求められたバイナリデータのテーブルからなる部分暗号鍵データ、及び、暗号化対象のデータを複数のファイル番号により区分される複数の分割ファイルに分割する際において、上記ファイル番号及びそのファイル番号における分割ファイルのデータ量を示す分割パターンと、その分割パターンのバリエーションを示す分割パターン番号とからなる分割パターンテーブルの一部を示す複数の部分分割パターンテーブルが記憶され、前記復号化装置の側に設けられた第2の情報記憶装置には、復号鍵に関わるデータを複数に分割した部分復号鍵データ、及び、前記部分分割パターンテーブルと同じ内容であって前記複数の分割ファイルを結合するためのパターンの一部を示す複数の部分結合パターンテーブルが記憶されており、前記暗号化ステップは、前記第1の情報記憶装置から、前記規定のバイト長数以内の乱数を基にしたオフセット値で前記テーブルのバイナリデータ中より選択して読み取った複数の所定のバイト長の前記部分暗号鍵データを統合し、前記統合した部分暗号鍵データに基づいて暗号鍵を生成する暗号鍵生成工程と、前記暗号化対象のデータとは無関係のダミーファイルを前記暗号化対象のデータに付加するダミーファイル付加工程と、前記第1の情報記憶装置から読み取った複数の前記部分分割パターンテーブルを結合して分割パターンテーブルを生成し、生成された乱数を前記分割パターン番号としたものに対応する前記分割パターンテーブルの分割パターンに基づき、前記暗号化対象のデータを複数の分割ファイルに分割するデータ分割工程と、前記生成された暗号鍵に基づいて、前記複数の分割ファイルを暗号化するとともに、前記ダミーファイルのハッシュ値を利用した前記ダミーファイルとは別のコントロールファイル前記ダミーファイルを特定するために生成する暗号化工程と、前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを送信する送信工程と、を有し、前記復号化ステップは、前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを受信する受信工程と、前記第2の情報記憶装置から読み取った複数の前記部分復号鍵データを統合し、前記統合した部分復号鍵データに基づいて復号鍵を生成する復号鍵生成工程と、受信されたコントロールファイルに基づいて、前記ダミーファイル、及び、暗号化された前記複数の分割ファイルの中から前記ダミーファイルを特定して除去して、暗号化された前記複数の分割ファイルを出力するダミーファイル除去工程と、前記生成された復号鍵に基づいて、上記出力され暗号化された前記複数の分割ファイルを復号化する復号化工程と、前記第2の情報記憶装置から読み取った複数の前記部分結合パターンテーブルを結合して、前記分割パターンテーブルと同じ内容の結合パターンテーブルを生成し、前記結合パターンテーブルに基づいて前記複数の分割ファイルを結合することにより元の上記暗号化対象のデータに復元するデータ統合工程と、を有する。
【0007】
【発明の実施の形態】
本発明の実施の形態について図1〜図33を参照して説明する。
本発明の実施の形態として、所望の複数のデータファイルを、任意の伝送路を介して一括的に伝送する送信装置および受信装置を有する通信システムを例示する。
図1は、本発明の実施の形態の通信システム1の全体構成を示すブロック図である。
通信システム1は、送信装置10と受信装置30とが伝送路20を介して接続された構成である。
ICカード40−1およびICカード40−2は、送信装置10に装荷される。
また、ICカード40−3は、受信装置30に装荷される。
本発明の実施の形態は、データを送信する送信側に管理者および使用者(システムのオペレータ、作業者)の2人と、受信側に管理者を想定し、それぞれ送信側使用者ICカード40−1、送信側管理者ICカード40−2、受信側管理者ICカード40−3を持つ。
【0008】
図2は、本発明の実施の形態の通信システム1の構成を詳しく示すブロック図である。
まず、通信システム1の各部の概略動作について説明する。
送信装置10は、送信対象の所望のデータファイルに対して、後述する種々の処理を施して所定の形式に変換し、伝送路20に送信する。
送信装置10は、送信側使用者ICカード40−1および送信側管理者ICカード40−2を装荷している。
送信装置10に装荷された2つのICカード40−1およびICカード40−2は、送信装置10が送信対象の所望のデータファイルを所定の変換を施し伝送路20に送信する際に必要な種々のデータが分割して記憶されている。
【0009】
まず、ICカード40−1およびICカード40−2に記憶されているデータについて説明する。
図3は、ICカード40−1に記憶さているデータを示すブロック図である。ICカード40−1は、図3に示すように、設定ファイル41−1、部分分割パターンテーブル42−1、暗号鍵テーブル43−1を有する。
送信側使用者ICカード40−1の記憶されているデータ要素の説明をする。
設定ファイル41−1は、ユーザパスワード、カードフォルダID(IDentity code)、カードフォルダの氏名、使用者フラグ、管理者フラグ、ワークグループID、カードフォルダRSA(Rivest,Shamir,Adleman暗号)秘密鍵、カードフォルダRSA公開鍵、管理者ID、管理者の氏名、受信側のID、受信側の氏名および受信側のRSA公開鍵を有する。
【0010】
ユーザパスワードは、ICカード40−1を所持する者の本人確認のためのパスワードである。
カードフォルダIDは、ICカード40−1を所持する者のID番号である。
カードフォルダの氏名は、ICカード40−1を所持する者の氏名である。
使用者フラグは、使用者用ICカードの場合には1であり、それ以外の場合は0である。
管理者フラグは、管理者用ICカードの場合には1であり、それ以外の場合は0である。
ワークグループIDは、使用者および管理者が属するワークグループのID番号である。
カードフォルダRSA秘密鍵は、ICカード40−1所持者のRSA秘密鍵である。
カードフォルダRSA公開鍵は、ICカード40−1所持者のRSA公開鍵である。
管理者IDは、送信側の管理者のID番号である。
管理者の氏名は、送信側の管理者の氏名である。
受信側のIDは、受信側の管理者のID番号である。
受信側の氏名は、受信側の管理者の氏名である。
受信側のRSA公開鍵は、受信側の管理者のRSA公開鍵である。
【0011】
図4は、分割パターンテーブルの一例を示した図である。
部分分割パターンテーブル42−1は、図4に示したように、送信対象のデータファイルを分割する際に用いる分割パターンテーブルの一部である。後述するデータ分割部13では、部分分割パターンテーブル42−1と部分分割パターンテーブル42−2を結合し、分割パターンテーブルを作成し、分割パターンテーブルを参照しながら、データファイルを分割する。
具体的には、分割パターンテーブルは、図4に示すように、分割パターン番号とそれに対応する分割パターンを16個縦に並べたテーブルである。部分分割パターンテーブル42−1は、分割パターンテーブルの1〜4列目までのテーブルである。また、部分分割パターンテーブル42−2は、分割パターンテーブルの5〜8列目までのテーブルである。図4のパターン1の1B−F1は、1バイトのデータをファイル1に格納する事を意味する。
【0012】
暗号鍵テーブル43−1は、暗号化部17が使用する暗号鍵を生成する際に、暗号鍵テーブル43−2と共に参照されるテーブルである。具体的には、暗号鍵テーブルは、乱数で求められた256バイト長のバイナリデータである。
設定ファイル41−1は、使用者/管理者送受信側特定部12および電子署名部14に参照され、部分分割パターンテーブル42−1は、データ分割部13に参照され、また、暗号鍵テーブル43−1は、暗号化部17に参照される。
【0013】
また、送信側管理者ICカード40−2に記憶されているデータ要素は、送信側使用者ICカード40−1に記憶されているデータ要素とほぼ同様であり、設定ファイル41−2、部分分割パターンテーブル42−2、暗号鍵テーブル43−2を有する。
【0014】
次に、図1の通信システム1の送信装置10の各要素について説明する。
送信装置10は、ICカード読取部11、使用者/管理者送受信側特定部12、データ分割部13、電子署名部14、ダミーファイル付加部15、ダミーデータ付加部16、暗号化部17および送信部18を有する。
【0015】
図5は、ICカード読取部11が、ICカード40−1およびICカード40−2に記憶されている送信側使用者ID、送信側管理者IDおよび受信者側管理者IDを読み取った図である。
ICカード読取部11は、ICカード40−1およびICカード40−2に記憶されているデータを読み取り後述する処理を行い、読み取ったデータを所定の構成要素へ出力する。
このICカード読取部11の処理の具体例のフローチャートを図6に示す。
【0016】
ICカード読取部11は、図6に示すように、送信側使用者および送信側管理者に対してパスワードの要求をする(S1101)。
ICカード読取部11は、送信側使用者ICカード40−1および送信側管理者ICカード40−2のそれぞれに記憶されている設定ファイル41−1および設定ファイル41−2の中のユーザパスワードを読み出し、入力されたパスワードと読み取ったユーザパスワードの照合を行う(S1102)。パスワードの入力が違った場合は、処理を終了する(S1103)。
【0017】
ステップS1103において、送信側使用者および送信側管理者のパスワードの照合がとれた場合には、ICカード読取部11は、送信側使用者ICカード40−1および送信側管理者ICカード40−2に記憶されている設定ファイル41−1および設定ファイル41−2の中のカードフォルダID、カードフォルダ氏名、管理者フラグ、使用者フラグ、ワークグループIDおよび管理者のIDを読みだし、使用者/管理者送受信側特定部12に出力する(S1104)。
ICカード読取部11は、後述する使用者/管理者送受信側特定部12により、送信側使用者および送信側管理者が特定されない場合は、処理を終了する(S1105、S1103)。
【0018】
ステップS1105において、送信側使用者および送信側管理者が特定された場合には、先の2つの送信側使用者ICカード40−1および送信側管理者ICカード40−2から、記憶されている設定ファイル41−1および設定ファイル41−2を読み取り、電子署名部14へ出力し、部分分割パターンテーブル42−1および部分分割パターンテーブル42−2を読み取り、データ分割部13へ出力し、暗号鍵テーブル43−1および暗号鍵テーブル43−2を読み取り、暗号化部17へ出力する(S1106)。
【0019】
使用者/管理者送受信側特定部12は、先にICカード読取部11によって読み取られた、送信側使用者ID、使用者フラグ、送信側管理者ID、管理者フラグ、およびワークグループIDに基づいて、使用者/管理者送受信側を特定する。これは、使用者、管理者、ワークグループおよび使用者と管理者の関係が適正かどうかを調べるためである。
【0020】
使用者/管理者送受信側特定部12の処理の具体例のフローチャートを図7に示す。
使用者/管理者送受信側特定部12は、図7に示すように、ICカード読取部11から送信側使用者ID、使用者フラグ、送信側管理者ID、管理者フラグ、およびワークグループIDのデータを受ける(S1201)。
【0021】
使用者/管理者送受信側特定部12は、送信側使用者設定ファイル41−1の使用者フラグが1であることをチェックする(S1202)。使用者フラグが1以外の場合には、設定ファイルのデータが適切でないため、処理を中止する(S1203)。
ステップS1202において使用者フラグが1の場合には、送信側管理者設定ファイル41−2の管理者フラグが1であることをチェックする(S1204)。管理者フラグが1以外の場合には、設定ファイルのデータが適切でないため、処理を中止する(S1203)。
【0022】
ステップS1204において管理者フラグが1の場合には、送信側使用者設定ファイル41−1のワークグループIDと送信側管理者設定ファイル41−2のワークグループIDが同じであるかどうかをチェックする(S1205)。ワークグループIDが異なる場合には、設定ファイルのデータが適切でないため、処理を中止する(S1203)。
【0023】
ステップS1205において、ワークグループIDが同じ場合には、使用者/管理者送受信側特定部12は、送信側使用者設定ファイル41−1の管理者のIDと、送信側管理者設定ファイル41−2のカードフォルダIDが同じであるかどうかをチェックする(S1206)。異なる場合は、使用者と管理者の上下関係が適切でないため、処理を中止する(S1203)。
ステップS1206において、使用者と管理者の上下関係が適切な場合には、送信側使用者および送信側管理者が特定できたものとして、この結果をICカード読取部11へ出力する(S1207)。
【0024】
データ分割部13は、入力された送信対象の複数のデータファイルを結合し、1つの結合ファイルを生成する結合処理と、結合した1つの結合ファイルを7つの一時分割ファイルに分割する分割処理の2つの処理を行なう。
図8は、データ分割部13における結合処理の具体例のフローチャートを示した図である。
データ分割部13は、図8に示すように、送信対象のデータファイルの数、各送信対象のデータファイルのサイズおよび送信対象のデータファイルを結合し、結合ファイルを生成する(S1301)。
結合ファイルサイズが512×7=3584バイトより大きい場合には、データ分割部13は、結合ファイルサイズが480バイトの倍数になるようにパディングを行う(S1302,S1303)。
ステップS1302において、結合ファイルサイズが3584バイト以下であった場合は、3584バイトになるようにパディングを行う(S1304)。
前記処理により、データ分割部13は、送信対象の複数のデータファイルを結合し、1つの結合ファイルを生成する(S1305)。
データ分割部13は、生成された結合ファイルのハッシュ値を計算し、計算されたハッシュ値を電子署名部14へ出力する(S1306)。
【0025】
データ分割部13が、先の結合処理で結合された1つの結合ファイルを分割し、一時分割ファイルの作成を行う分割処理について説明する。
データ分割部13は、図8に示すように、ICカード読取部11により読みだされたICカード40−1およびICカード40−2に記憶されている部分分割パターンテーブル42−1および部分分割パターンテーブル42−2を結合し、分割パターンテーブルを生成する(S1307)。
データ分割部13は、1〜16までの乱数を生成し、生成した値を分割パターン番号とする。生成した分割パターンテーブルを参照し、先に生成した分割パターン番号に対応する分割パターンを決定する(S1308)。
先に結合された結合ファイルを、順次16バイトごとに、決定された分割パターンに従って、7つの一時分割ファイルに分割する(S1309)。
データ分割部13は、生成した7つの一時分割ファイルをダミーデータ付加部16へ出力する。(S1310)
【0026】
図9は、電子署名の構造を示した図である。
図9に示すように、電子署名は、ハッシュ値格納部、鍵格納部および署名経路格納部を有する。
電子署名部14は、ICカード読取部11によって読み取られた送信側使用者ICカード40−1および送信側管理者ICカード40−2の設定ファイル41−1および設定ファイル41−2の中の送信側管理者RSA秘密鍵、送信側使用者RSA秘密鍵および受信側管理者のRSA公開鍵を用いて、図9に示すように、電子署名を作成し、作成した電子署名をダミーファイル付加部15へ出力する。
【0027】
図10は、電子署名部14の処理の具体例のフローチャートを示した図である。
電子署名部14の処理は、図10に示すように、ハッシュ値格納部へのデータ格納(S1410)、鍵格納部へのデータ格納(S1420)、署名経路格納部へのデータ格納(S1430)、電子署名生成(S1440)および出力(S1450)に分けられる。
【0028】
図11は、電子署名部14のハッシュ値格納部へのデータ格納(S1410)のフローチャートを示した図である。
電子署名部14は、図11のように、送信側使用者のRSA秘密鍵を用いて、結合ファイルのハッシュ値をRSA暗号処理する(S1411)。受信側管理者のRSA公開鍵を用いて、先のRSA暗号処理されたハッシュ値をさらにRSA暗号処理し(S1412)、ハッシュ値格納部に記録する(S1413)。
【0029】
図12は、電子署名部14の鍵格納部へのデータ格納のフローチャートを示した図である。鍵格納部は、後述する暗号化部17により作成された初期暗号鍵番号をRSA暗号化処理されたものを記録している。
電子署名部14は、図12に示すように、受信側管理者のRSA公開鍵を用いて、後述する暗号化部17により作成された初期暗号鍵番号をRSA暗号処理を行う(S1421)。さらに、電子署名部14は、先のRSA暗号化処理された初期暗号鍵番号を、送信側管理者のRSA秘密鍵を用いて、RSA暗号処理し(S1422)、鍵格納部に記録する(S1423)。
【0030】
図13は、電子署名部14の署名経路格納部へのデータ格納(S1430)のフローチャートを示した図である。署名経路格納部は、各者のIDをDES暗号化処理したものから成り立っている。
電子署名部14は、図13に示すように、送信側使用者のIDと氏名、送信側管理者のIDと氏名および受信側管理者のIDと氏名を結合する(S1431)。
ハッシュ値格納部の3,6,9,12バイト目のデータを読み取り、鍵格納部の2,4,6,8バイト目のデータを読み取り、それぞれのデータを交互に連結し、DES暗号化処理で使用する初期値を生成する(S1432)。
次に、電子署名部14は、ハッシュ値格納部の2,5,8,11バイト目のデータを読み取り、鍵格納部の1,3,5,7バイト目のデータを読み取り、それぞれのデータを交互に連結し、DES暗号化処理で使用するDES暗号鍵を生成する(S1433)。
電子署名部14は、先に結合したデータ列を、先に生成した初期値およびDES暗号鍵を用いてDES暗号化処理し(S1434)、署名経路格納部に記録する(S1435)。
【0031】
電子署名部14は、図10に示したように、生成したハッシュ値格納部、鍵格納部および署名経路格納部を結合し、電子署名を生成し(S1440)、生成した電子署名をダミーファイル付加部15へ出力する(S1450)。
【0032】
ダミーファイル付加部15は、一時ダミーファイルを生成し、生成した一時ダミーファイルをダミーデータ付加部16へ出力する。
図14は、送信するファイルにダミーファイルを付加した図である。
ダミーファイルは、分割ファイルとは無関係なファイルであり、図14に示すように元のファイルの特定を困難にするために生成される。
【0033】
図15は、ダミーファイル付加部15の処理の具体例のフローチャートを示した図である。
一時ダミーファイルは、署名、データ分割部13により生成された分割パターン番号および暗号化部17により生成されたDES暗号化処理の初期値を有する。
ダミーファイル付加部15は、図15に示すように、電子署名部14により生成された電子署名の全体を6ブロックで分割し、第1ブロック、第3ブロック、および第5ブロックの、計3ブロックを抽出し署名を生成する(S1501)。
ダミーファイル付加部15は、データ分割部13により生成された分割パターン番号、暗号化部17により生成されたDES暗号化処理の初期値およびステップS1501で生成された署名を結合し(S1503)、一時ダミーファイルを生成する(S1504)。生成された一時ダミーファイルをダミーデータ付加部16へ出力する(S1504)。
【0034】
ダミーデータ付加部16は、先にデータ分割部13により生成されたすべてもしくは幾つかの一時分割ファイル、およびダミーファイル付加部15により生成された一時ダミーファイルに、適度な量のダミーデータを付加し、生成したパディングされた一時分割ファイルおよびパディングされた一時ダミーファイルを暗号化部17へ出力する。
【0035】
ここで適度な量とは、暗号化部17による暗号化処理を行なう際に、暗号化処理されるファイルのサイズが8バイトの倍数になるような量である。これは、後の暗号化部17が、8バイトブロック暗号アルゴリズムのCBC(CipherBlock Chaining;暗号ブロック連鎖)モードを利用するために、暗号化するファイルサイズを1ブロック8バイトの倍数にする必要があるからである。
【0036】
図16は、ダミーデータ付加部16が、ファイルに対してダミーデータを付加することを示した図である。
図17は、ダミーデータ付加部16の処理の具体例のフローチャートを示した図である。
ダミーデータ付加部16には、図17に示すように、一時分割ファイルまたは一時ダミーファイルが入力される(S1601)。
ダミーデータ付加部16は、一時分割ファイルに対して(S1602)、一時分割ファイルのファイルサイズが8バイトの倍数−1の場合は、0x80を付加する(S1603,S1604)。
ステップS1603において、一時分割ファイルのファイルサイズが8バイトの倍数−X(ここでX=2〜8)の場合は、0x80で始まりその後X−1バイト分0x00が続くようにパディングを行う(S1605)。上記のダミーデータ付加処理を行ないパディングされた一時分割ファイルを生成し(S1606)、生成したパディングされた一時分割ファイルを暗号化部17へ出力する(S1607)。
【0037】
ステップS1602において、ダミーデータ付加部16は、先にダミーファイル付加部15により生成された一時ダミーファイルに対しては、7つのパディングされた一時分割ファイルうち1番小さいファイルサイズと同じファイルサイズになるように、ダミーデータを付加する(S1608)。付加するダミーデータの値は、0x00〜0xffまでの乱数で行う。上記のパディングされた一時ダミーファイルを生成し(S1609)、暗号化部17へ出力する(S1607)。
【0038】
図18は、暗号化部17が、複数のファイルを暗号化することを示した図である。
暗号化部17は、先のICカード読取部11によって読み取られた暗号鍵テーブル43−1および暗号鍵テーブル43−2を用いてDES暗号鍵を生成し、そのDES暗号鍵を用いて、ダミーデータ付加部16より生成されたパディングされた7つの一時分割ファイルを図18に示すようにDES暗号化処理し、7つの分割ファイルを送信部18へ出力する。
【0039】
また、暗号化部17は、先のダミーデータ付加部16により付加されたファイルサイズが8バイトの倍数にパディングされた一時ダミーファイルをDES暗号化し、ダミーファイルを生成し、生成したダミーファイルを送信部18へ出力する。
【0040】
また、暗号化部17は、先に生成した署名およびダミーファイル名のハッシュ値を結合し、コントロールファイルを生成し、生成したコントロールファイルを送信部18へ送信する。
【0041】
図19は、暗号化部17のコントロールファイルを作成する処理の具体例のフローチャートを示した図である。
コントロールファイルに書き込む内容は、署名およびダミーファイル名のハッシュ値である。
暗号化部17は、図19に示すように、電子署名部14により生成された電子署名の全体を6ブロックで分割し、第2ブロック、第4ブロック、および第6ブロックの、計3ブロックを抽出し、署名とする(S1701)。一時ダミーファイルに書き込んだ部分については、コントロールファイルに書き込まない。
暗号化部17は、ダミーファイル名のハッシュ値を求める(S1702)。この値は、受信装置30がダミーファイルを特定する際に参照される。
暗号化部17は、生成した署名およびダミーファイルのハッシュ値を結合し、コントロールファイルを生成し(S1703)、送信部18へ出力する(S1704)。
【0042】
図20は、暗号化部17のパディングされた7つの一時分割ファイルに対して暗号化する処理の具体例のフローチャートを示した図である。
暗号化部17は、図20に示すように、0〜255の乱数を8回求め、初期値を生成する(S1711)。また、初期値は、ダミーファイル付加部15へ出力される(S1712)。DES暗号鍵は、初期暗号鍵番号から生成する。初期暗号鍵番号は、0〜255の乱数を求め、初期暗号鍵番号とする(S1713)。また、初期暗号鍵番号は、電子署名部14へ出力される(S1714)。
【0043】
次に、DES暗号鍵は、初期暗号鍵番号からDES暗号鍵を求める。
暗号化部17は、初期暗号鍵番号に対して6回ビットシフトを行ない、6つの暗号鍵番号を求める(S1715)。前記の処理まで求められた7つの暗号鍵番号各々をオフセット値として、送信側使用者ICカード40−1の暗号鍵テーブル43−1より4バイト読み込む。また、同じオフセット値で送信側管理者ICカード40−2の暗号鍵テーブル43−2より、4バイト読み込む(S1716)。それぞれの4バイトを結合し、DES暗号鍵とする(S1717)。
ただし、暗号鍵番号が252より大きく、4バイト読み込むことが出来ない場合は、足りない分を暗号鍵テーブル43−1および暗号鍵テーブル43−2の先頭より読み込む。
暗号化部17は、生成された初期値と7つのDES暗号鍵を用いて、CBCモードで、パディングされた7つの一時分割ファイルをDES暗号化処理し、7つの分割ファイルを生成し(S1718)、生成した7つの分割ファイルを送信部18へ出力する(S1719)。
【0044】
暗号化部17は、ダミーデータ付加部16により生成されたパディングされた一時ダミーファイルをDES暗号化処理し、ダミーファイルを生成し、生成したダミーファイルを送信部18へ出力する。
図21は、暗号化部17のパディングされた一時ダミーファイルに対して暗号化する処理の具体例のフローチャートを示した図である。
暗号化部17は、図21に示すように、生成したコントロールファイルのハッシュ値20バイトを求める(S1721)。求めたハッシュ値20バイトの5〜12バイト目の値を初期値8バイト、求めたハッシュ値20バイトの13〜20バイト目の値をDES暗号鍵8バイトとする(S1722)。生成した初期値8バイトとDES暗号鍵8バイトを用いて、CBCモードでパディングされた一時ダミーファイルをDES暗号化処理してダミーファイルを生成し(S1723)、生成したダミーファイルを送信部18へ出力する(S1724)。
また、ダミーファイル名は、7つの分割ファイルの名前と似たようなファイル名が付けられている。
【0045】
送信部18は、暗号化部17により生成された7つの分割ファイル、1つのダミーファイルおよびコントロールファイルを、伝送路20を介して、受信装置30へ送信する。
【0046】
このような構成の送信装置10により、所望の送信対象のデータファイルが伝送路20に送信される。
この時の、送信装置10の動作についてまとめて説明する。
図22は、送信装置の処理の流れを示した図である。
まず、送信対象の複数のデータファイルを送信装置10に入力する。
送信側使用者は、送信側使用者ICカード40−1を送信装置10へ装荷し、送信側管理者は、送信側管理者ICカード40−2を送信装置10へ装荷し、ICカード読取部11は、ICカード40−1およびICカード40−2の持ち主の認証を行ない正しく認証された場合は、使用者/管理者送受信側特定部12は、送信側使用者および送信側管理者の関係をチェックする。適正な関係の場合は、ICカード読取部11は、2つのICカード40−1およびICカード40−2から設定ファイル41−1および設定ファイル41−2、部分分割パターンテーブル42−1および部分分割パターンテーブル42−2、暗号鍵テーブル43−1および暗号鍵テーブル43−2を読みだし、それぞれを、電子署名部14、データ分割部13、暗号化部17へ出力する。
【0047】
入力された送信対象の複数のデータファイルは、データ分割部13により1つの結合ファイルになり、データ分割部13により7つの一時分割ファイルに分割され、ダミーデータ付加部16によりダミーデータが付加され、暗号化部17により暗号化され7つの分割ファイルになる。分割の際、2つのICカード40−1およびICカード40−1に記憶されている2つの部分分割テーブル42−1および部分分割テーブル42−2を参照して分割する。暗号化の際、2つのICカード40−1およびICカード40−2に記憶されている2つの暗号鍵テーブルおよび43−1暗号鍵テーブル43−2を参照する。また、結合ファイルのハッシュ値と、初期暗号鍵番号と、送信側使用者、送信側管理者および受信側管理者のIDと氏名は、電子署名部35により処理されて、署名になり、ダミーファイル付加部15により、一時ダミーファイルに分割パターン番号、DES暗号化処理の初期値および先の署名の半分の情報を書き込まれる。一時ダミーファイルは、ダミーデータ付加部16によりダミーデータを付加され暗号化部17により暗号化されダミーファイルになる。残りの署名の半分の情報およびダミーファイル名のハッシュ値は、暗号化部17により生成されるコントロールファイルに書き込まれる。生成された8つのファイル、すなわち、7つの分割ファイルおよび1つのダミーファイルと、コントロールファイルは、送信部18により伝送路20へ送信される。
【0048】
伝送路20は、任意の伝送路である。本実施の形態においては、送信装置10および受信装置30を含む種々の装置、コンピュータ、ネットワークが世界的規模で接続されたインターネットであるとする。
【0049】
次に、通信システム1の受信装置30について説明する。
受信装置30は、送信装置10から伝送路20を介して送られてきた所定の形式に変換されたデータファイルを受信し、後述する種々の処理を施して元のデータファイルに復号する。
受信装置30は、前述したように送信装置10において送信された8つのファイル、すなわち、7つの分割ファイルおよび1つのダミーファイルと、コントロールファイルを受信し、元のデータファイルを復元して出力する。
したがって、受信装置30は、前述した送信装置10の各構成部に対応した構成を有する。
受信装置30は、受信側管理者ICカード40−3を装荷している。
受信装置30に装荷されたICカード40−3は、受信装置30が受信した所定の形式に変換されたデータファイルを、後述する種々の処理を施して元のデータファイルに復号する際に必要な種々のデータが分割して記憶されている。
【0050】
まず、ICカード40−3の構成について説明する。
ICカード40−3は、設定ファイル41−3、部分結合パターンテーブル42−3、部分結合パターンテーブル42−4、復号鍵テーブル43−3および復号鍵テーブル43−4を有する。
【0051】
ICカード40−3の各構成要素の内容は、ICカード40−1およびICカード40−2の内容を合わせたものとほぼ同じ内容である。
ただし、設定ファイル41−3は、ユーザパスワード、カードフォルダID、カードフォルダの氏名、カードフォルダRSA秘密鍵、カードフォルダRSA公開鍵、送信側使用者および送信側管理者のID、氏名およびRSA公開鍵を有する。
【0052】
部分結合パターンテーブル42−3は、7つの分割されたファイルを結合する処理を行なう際に用いられる結合パターンテーブルの一部である。具体的には、部分結合パターンテーブル42−3と部分分割パターンテーブル42−1は、同じ内容のテーブルであり、部分結合パターンテーブル42−4は、部分分割パターンテーブル42−2と同じ内容のテーブルである。
【0053】
また、復号鍵テーブル43−3は、暗号鍵テーブル43−1と同じ内容のテーブルであり、また復号鍵テーブル43−4は、暗号鍵テーブル43−2と同じ内容のテーブルである。
【0054】
次に、図1の通信システム1の受信装置30の各要素について説明する。
受信装置30は、受信部31、ICカード読取部32、使用者/管理者送受信側特定部33、ダミーファイル除去部34、電子署名部35、復号化部36、ダミーデータ除去部37およびデータ統合部38を有する。
【0055】
受信部31は、送信装置10から伝送路20を介して伝送された8つのファイル、すなわち、7つの分割ファイルおよび1つのダミーファイルと、コントールファイルを受信する。
受信部31は、8つのファイルおよびコントロールファイルをダミーファイル除去部34へ出力する。
【0056】
ICカード読取部32は、送信装置10のICカード読取部11と同様な働きをする。ICカード40−3の読み取り時間を計測し、所定の時間以内の場合は、ICカード40−3の持ち主に対してパスワードの入力を求め、持ち主の照合を行なう。適正に照合が行なわれた時は、設定ファイル41−3の中のカードフォルダIDおよびカードフォルダ氏名を読みだし、使用者/管理者送受信側特定部33へ出力する。
【0057】
ICカード読取部32は、使用者/管理者送受信側特定部33により、受信側管理者が特定された場合には、設定ファイル41−3を読み取り、電子署名部35へ出力する。また、部分結合パターンテーブル42−3および部分結合パターンテーブル42−4を読み取り、データ統合部38へ出力する。また、復号鍵テーブル43−3および復号鍵テーブル43−4を読み取り、復号化部36へ出力する。
【0058】
使用者/管理者送受信側特定部33は、送信装置10の使用者/管理者送受信側特定部12とほぼ同じ働きをする。
使用者/管理者送受信側特定部33は、先にICカード読取部32によって読み取られた、受信側管理者IDに基づいて、受信側の管理者の特定を行なう。その結果をICカード読取部32へ出力する。
使用者/管理者送受信側特定部33は、後述する電子署名部35から抽出された各者のIDから、送受信側の使用者および管理者の特定を行なう。その結果を電子署名部35へ出力する。
【0059】
図23は、使用者/管理者送受信側特定部33の送受信側の使用者および管理者の特定を行なう処理の具体例のフローチャートを示した図である。
使用者/管理者送受信側特定部33は、図23に示したように、電子署名部35およびICカード読取部32から入力された(S3301)署名経路格納部の復号化処理で得られた送信側管理者IDと、受信側管理者ICカード40−3に記憶されている送信側管理者IDと一致するかチェックする(S3302)。署名経路格納部の受信側管理者IDと、ICカード40−3の受信側管理者IDと一致するかチェックする(S3303)。署名経路格納部の送信側使用者IDと、ICカード40−3の送信側使用者IDと一致するかチェックする(S3304)。
以上のチェックで送受信側の使用者および管理者が特定されない場合は、処理を中止する(S3305)。送受信側の使用者および管理者が特定された場合は、この結果を電子署名部35へ出力する(S3306)。
【0060】
ダミーファイル除去部34は、受信部31により受信されたコントロールファイルを解析し、受信された8つのファイルの中からダミーファイルを特定する。
特定したダミーファイルは、復号化部36へ出力される。
図24は、ダミーファイル除去部34のダミーファイルの特定を行なう処理の具体例のフローチャートを示した図である。
ダミーファイル除去部34は、図24に示したように、受信部31により受信された8つのファイル名のハッシュ値を計算し(S3401)、コントロールファイルより読み取ったハッシュ値と同じ値をもつファイルを検索する(S3402)。検索した結果、同じ値のファイルをダミーファイルとする(S3403,S3404)。同じ値が無い場合は、ダミーファイルを特定することが出来ないものとして処理を終了する(S3405)。
ダミーファイル除去部34は、特定した1つのダミーファイルを復号化部36へ出力し、残りの7つの分割ファイルを復号化部34へ出力する(S3406)。
【0061】
復号化部36は、ダミーファイルに対して復号化する処理と、分割ファイルに対して復号化する処理の2つの処理を行なう。ここでは、ダミーファイルを復号化する処理について説明する。分割ファイルを復号化する処理については後述する。
【0062】
復号化部36は、ダミーファイル除去部34により特定されたダミーファイルを復号化処理し、パディングされた一時ダミーファイルを生成し、生成されたパディングされた一時ダミーファイルをダミーファイル除去部34へ出力する。
図25は、復号化部36の処理の具体例のフローチャートを示した図である。
復号化部36は、図25に示すように、コントロールファイルのハッシュ値を求める(S3601)。求めたハッシュ値の5〜12バイト目の値を初期値8バイト、求めたハッシュ値の13〜20バイト目の値をDES復号鍵8Byteとする(S3602)。生成した初期値8バイトとDES復号鍵8バイトを用いて、CBCモードで受信したダミーファイルをDES復号化処理し、パディングされた一時ダミーファイルを生成し(S3603)、生成したパディングされたダミーファイルをダミーデータ除去部37へ出力する(S3604)。
【0063】
ダミーファイル除去部34は、暗号化された元のデータファイルに関係ないダミーファイルを除去する。
また、ダミーファイル除去部34は、復号化部36により復号化されたパディングされた一時ダミーファイルから、分割パターン番号を抽出し、データ統合部38へ出力する。
また、ダミーファイル除去部34は、復号化部36により復号化されたパディングされた一時ダミーファイルから、DES暗号化処理の初期値を抽出し復号化部36へ出力する。
さらにまた、ダミーファイル除去部34は、復号化部36により復号化された一時ダミーファイルとコントロールファイルの内容を結合して電子署名を生成し、電子署名部35へ出力する。
【0064】
図26は、ダミーファイル除去部34の電子署名を生成する処理の具体例のフローチャートを示した図である。
ダミーファイル除去部34は、図26に示すように、一時ダミーファイルから読みだした署名データを3つのブロックに分け(S3411)、次にコントロールファイルから読みだした署名データを3つのブロックに分け(S3412)、それぞれを交互に並べて結合し、電子署名を生成する(S3413)。ここで生成された電子署名は、ハッシュ値格納部、鍵格納部、署名経路格納部で構成されている。
ダミーファイル除去部34は、生成した電子署名を電子署名部35へ出力する(S3404)。
【0065】
電子署名部35は、ダミーデータ除去部37により出力された電子署名に対して後述する処理を行ない、結合ファイルのハッシュ値、初期暗号鍵、署名経路を抽出する。また、抽出した結合ファイルのハッシュ値をデータ統合部38へ出力し、また、抽出した初期暗号鍵を復号化部36へ出力し、また、抽出した署名経路を使用者/管理者送受信側特定部33へ出力する。
【0066】
電子署名部35は、ハッシュ値格納部および鍵格納部から、DES復号鍵および初期値を求めDES復号処理し署名経路格納部を復号化処理する。
図27は、電子署名部35の電子署名を復号化する処理の具体例のフローチャートを示した図である。
電子署名部35は、図27に示すように、ハッシュ値格納部より、3,6,9,12バイト目のデータを読み取り、鍵格納部の2,4,6,8バイト目のデータを読み取り、それぞれのデータを交互に連結し、DES復号化処理で使用する初期値を生成する(S3501)。
次に、ハッシュ値格納部より、2,5,8,11バイト目のデータを読み取り、鍵格納部の1,3,5,7バイト目のデータを読み取り、それぞれのデータを交互に連結し、DES復号化処理で使用するDES復号鍵を生成する(S3502)。
そして、電子署名部35は、生成した初期値およびDES復号鍵を用いて、署名経路格納部をDES復号化処理し、送信側使用者のIDと氏名、送信側管理者のIDと氏名および受信側管理者のIDと氏名を得る(S3503)。得られた署名経路は、使用者/管理者送受信側特定部33へ出力される(S3504)。電子署名部35は、使用者/管理者送受信側特定部33により、各者の特定が出来なかった場合は処理を終了する(S3505,S3506)。各者の特定が正しく行なわれた場合は、以下の初期暗号鍵番号を復号する処理を行なう(S3507)。
【0067】
図28は、電子署名部35の鍵格納部に記録されている初期暗号鍵番号を復号化する処理のフローチャートを示した図である。
電子署名部35は、図28に示すように、復号化された署名経路格納部から得られた送信側管理者IDに基づき、受信側管理者ICカード40−3に記憶されている送信側管理者のRSA公開鍵を用いて、鍵格納部を復号化する(S3511)。
署名経路格納部から得られた受信使用者IDに基づいて、受信側管理者ICカード40−3に記憶されている受信側管理者のRSA秘密鍵を用いてRSA復号化処理を行い、初期暗号鍵番号を得る(S3512)。
電子署名部35は、取り出した初期暗号鍵番号を復号化部36へ出力する(S3513)。
【0068】
次にハッシュ値格納部に記憶されている結合ファイルのハッシュ値の復号化を行う。
ハッシュ値格納部は、2重に暗号化された結合ファイルのハッシュ値が記憶されている。
図29は、電子署名部35の鍵格納部に記録されている結合ファイルのハッシュ値の復号化をする処理のフローチャートを示した図である。
電子署名部35は、図29に示すように、受信側管理者ICカード40−3に記憶されている受信側管理者のRSA秘密鍵を用いて、ハッシュ値格納部に記憶されている結合ファイルのハッシュ値を復号化する(S3521)。
受信側管理者ICカード40−3に記憶されている送信側使用者のRSA公開鍵でRSA復号を行い、結合ファイルのハッシュ値を得る(S3522)。
電子署名部35は、得られた結合ファイルのハッシュ値をデータ統合部38へ出力する(S3523)。
【0069】
復号化部36は、前述したダミーファイルに対して復号化する処理と、分割ファイルに対して復号化する処理の2つの処理を行なう。ここでは、分割ファイルに対して復号化する処理について説明する。
復号化部36は、受信された7つの分割ファイルを、復号鍵と初期値を用いて復号化処理し、パディングされた7つの一時分割ファイルを生成し、生成した一時分割ファイルをダミーデータ除去部37へ出力する。
【0070】
図30は、復号化部36が、一時分割ファイルを復号化する処理の具体例のフローチャートを示した図である。
まず、復号化部36は、図30に示すように、ダミーファイル除去部34により抽出された初期値を、復号化に用いる初期値とする(S3611)。復号鍵は、電子署名部35により生成された初期暗号鍵番号から求める。
復号鍵を求める手順を説明する。
まず、初期暗号鍵番号を初期復号鍵番号とする(S3612)。初期復号鍵番号に対して6回ビットシフトを行ない、6つの復号鍵番号を求める(S3613)。前記の計7つの復号鍵番号に対して次の操作を行う。
前記処理までに求められた7つの復号鍵番号各々をオフセット値として、受信側管理者ICカード40−3の復号鍵テーブル43−3より4バイト読み込む。また、同じオフセット値で、受信側管理者ICカード40−3の復号鍵テーブル43−4より4バイト読み込む(S3614)。それぞれの4バイトを結合し、DES復号鍵とする(S3615)。
ただし、復号鍵番号が、252より大きく、4バイト読み込むことが出来ない場合は、足りない分を復号鍵テーブル40−3および復号鍵テーブル40−4の先頭より読み込む。
【0071】
復号化部36は、次に、受信した7つの分割ファイルを復号化し、7つのパディングされた一時分割ファイルを作成する処理をする。
復号化部36は、先に求められた7つのDES復号化鍵と初期値を用いてCBCモードで、7つの分割ファイルをDES復号化する処理を行ない、パディングされた7つの一時分割ファイルを生成する(S3616)。
復号化部36は、生成したパディングされた7つの一時分割ファイルをダミーデータ除去部37へ出力する(S3617)。
【0072】
ダミーデータ除去部37は、復号化部36により生成されたパディングされた7つの一時分割ファイルに対し、ダミーデータ除去処理を行ない、一時分割ファイルを生成する。生成した一時分割ファイルは、データ統合部38へ出力される。
図31は、ダミーデータ除去部37が、ダミーデータを除去する処理の具体例のフローチャートを示した図である。
ダミーデータ除去部37は、図31に示すように、パディングされた一時分割ファイルのファイルサイズを取得し、パディングされた一時分割ファイルからデータを読み込み、ファイルサイズ−8バイトまで一時分割ファイルに書き出す(S3701)。ファイルの最後の8バイトを書き出す際には、ファイルの最後の8バイトの後ろから1バイト毎に読み込み、0x00、・・・、0x00、0x80となる所まで探し出す(S3702)。ダミーデータ除去部37は、探し出したポイントの前までを一時分割ファイルに書き出し、一時分割ファイルを生成する(S3703)。
ダミーデータ除去部37は、生成した7つの一時分割ファイルをデータ統合部38へ出力する(S3704)。
【0073】
データ統合部38は、ダミーデータ除去部37により生成された7つの一時分割ファイルを、結合パターンに基づいて統合し、1つの結合ファイルを生成する結合処理と、生成した1つの結合ファイルを分割し、元の複数のデータファイルへ復元する分割処理の2つの処理を行なう。
【0074】
図32は、データ統合部38が、7つの一時分割ファイルを結合する処理の具体例のフローチャートを示した図である。
データ統合部38は、図32に示すように、ICカード読取部32によりICカード40−3に記憶されている部分結合パターンテーブル42−3および部分結合パターンテーブル42−4を結合し、結合パターンテーブルを生成する(S3801)。生成された結合パターンテーブルの内容は、前述の分割パターンテーブルの内容と同じものである。
【0075】
データ統合部38は、ダミーファイル除去部34によりパディングされた一時ダミーファイルから抽出された分割パターン番号を、結合パターン番号とする(S3802)。そして、生成した結合パターンテーブルを参照し、先の結合パターン番号に対応する結合パターンを決定し(S3803)、7つの一時分割ファイルを、決定された結合パターンに従って結合し、1つの結合ファイルを生成する(S3804)。
以上により、7つの一時分割ファイルは、結合処理され、1つの結合ファイルが生成される。
【0076】
データ統合部38は、先の結合処理により生成された結合ファイルより、ハッシュ値を求める(S3805)。求められたハッシュ値と、ダミーデータ除去部37により抽出されたハッシュ値をマッチングする(S3806)。もし、ハッシュ値が一致しない場合は、適正な結合処理が行なわれなかった可能性があるため、生成したファイルを削除し、処理を終了する(S3807)。
ステップS3806において、ハッシュ値が一致する場合は、データ統合部38は、結合ファイルの先頭に書き込まれている元のファイル数、元のファイル名および元のファイルサイズに基づいて、結合ファイルを分割し、元の複数のデータファイルに復元する分割処理を行う(S3808)。データ統合部38は、復元された元の複数のデータファイルを出力する(S3809)。
【0077】
以上により、受信装置30は、受信した7つの分割ファイルと1つのダミーファイルおよびコントロールファイルから、元の複数のデータファイルを復元し出力する。
【0078】
この時の、受信装置30の動作についてまとめて説明する。
図33は受信装置のデータの流れを示した図である。
受信側管理者は、受信側管理者ICカード40−3を受信装置30へ装荷し、ICカード読取部32は、ICカード40−3の持ち主の認証を行ない正しく認証された場合は、使用者/管理者送受信側特定部33は、カードフォルダIDおよび氏名に基づいて、受信側管理者のIDおよび氏名を特定する。特定が行なわれた場合には、ICカード読取部32は、2つのICカード40−3およびICカード40−4から設定ファイル41−3および設定ファイル41−4、部分分割パターンテーブル42−3および部分分割パターンテーブル42−4、暗号鍵テーブル43−3および暗号鍵テーブル43−4を読みだし、それぞれを、電子署名部35、データ統合部38、復号化部36へ出力する。
伝送路20を介して伝送された8つのファイル、すなわち、7つの分割ファイルおよび1つのダミーファイルと、コントロールファイルは、受信装置30の受信部31で受信され、ダミーファイルは、ダミーファイル除去部34によりコントロールファイルを用いて特定され、復号化部36により復号化処理が行なわれパディングされた一時ダミーファイルになる。パディングされた一時ダミーファイルおよびコントロールファイルからは、ダミーファイル除去部34により署名、分割パターン番号および暗号化処理の初期値が抽出される。抽出された署名からは、電子署名部35により署名経路、初期暗号鍵暗号および結合ファイルのハッシュ値が抽出される。署名経路からは、使用者/管理者送受信側特定部33により送信側使用者、送信側管理者および受信側管理者が特定される。
【0079】
7つの分割ファイルは、復号化部36により、先に抽出された初期値および初期暗号鍵番号から変換して求められた復号鍵により復号化する処理が行なわれ、7つのパディングされた一時分割ファイルになり、ダミーデータ除去部37によりダミーデータを除去する処理が行なわれ、7つの一時分割ファイルになり、データ統合部38により、1つの結合ファイルになる。生成された結合ファイルのハッシュ値と抽出されたハッシュ値と比較し同じ値の場合には、データ統合部38により結合ファイルは、分割され、元の複数のデータファイルに復元され、受信装置30より出力される。
【0080】
通信システム1の全体の動作についてまとめて説明する。
送信対象の複数のデータファイルは、送信装置10により、2つのICカード40−1およびICカード40−2に記憶されている暗号鍵テーブルおよび分割パターンテーブルに基づいて所定の変換が行なわれ、8つのファイルおよびコントロールファイルになり伝送路20を介して受信装置30に伝送され、伝送された8つのファイルおよびコントロールファイルは、受信装置30により、ICカード40−3に記憶されている復号鍵テーブルおよび統合パターンテーブルに基づいて所定の変換が行なわれ、元の複数のデータファイルに復元され出力される。
【0081】
このように、本実施の形態の通信システム1においては、送信装置10は、送信対象のデータファイルに対して、暗号化する処理を行なう際に2つのICカードに記憶されている暗号鍵を生成する暗号鍵テーブルおよび分割化する処理を行なう際に2つのICカードに記憶されている分割パターンテーブルを用いている。
【0082】
このため、送信側では、2つのICカードがなければ、送信対象のデータファイルを送信装置50により暗号化処理および分割化処理する事ができない。これにより、送信対象のデータファイルを送信する場合には、関連した2つのICカードが必要となり、また、送信対象のデータファイルに対して分割する処理、ダミーファイルを付加する処理、ダミーデータを付加する処理および暗号化する処理をすることにより高いセキュリティ性を有する。
また、関連した2つのICカードを持つ2人が必要となることで、ICカードの悪用、乱用、機密データの改ざん、覗き見、漏洩等を防ぐ解決方法の1つとなっている。
【0083】
なお、本発明は前述した実施の形態に限られるものではなく、任意好適な種々の改変が可能である。
たとえば、本実施の形態では、送信側に2つのICカード、受信側に1つのICカードを用いる通信システムであったが、送信側に1つのICカード、受信側に2つのICカードを用いる通信システムであってもよい。
【0084】
また、前述した実施の形態では、ICカードを用いて行なったが、この形態でなくてもよい。たとえば、磁気カードを用いてもよい。磁気カードは、一般的に普及しているので、既に使用している装置でこのシステムを構築できる。
【0085】
また、前述した実施の形態では、ICカードに、分割した暗号鍵および暗号鍵テーブルを記憶した形態であったが、この限りではなく、暗号化方式および復号化方式を記憶してもよい。暗号化処理および復号化処理に関する任意のデータであってもよい。
【0086】
また、前述した実施の形態では、図4に示した内容の分割パターンテーブルを用いたが、分割パターンテーブルの内容はこの限りではない。
【0087】
また、前述した実施の形態では、分割パターンテーブルを2つに分けた形態であったが、分割パターンテーブルの分け方はこの限りではない。たとえば、任意に複数に分割し順に振り分けてもよい。
【0088】
また、前述した実施の形態では、ICカードに、分割した分割パターンテーブルを記憶した形態であったが、この形態でなくてもよい。たとえば、分割方法を記憶していてもよい。
【0089】
また、前述した実施の形態では、ファイルを7つに分割する処理を行なったが、7つに分割する処理に限らない。たとえば、任意の複数ファイルに分割してもよい。
【0090】
また、前述した実施の形態では、結合ファイルを所定のバイトごとに順次振り分けて分割する処理を行なったが、分割する方法は前述した実施の形態のでなくてもよい。たとえば、ランダムに分割してもよいし、分割しなくてもよい。
【0091】
また、前述した実施の形態では、送信対象のデータファイルに対して秘密鍵暗号方式で暗号化処理を行なったが、暗号化する方法は秘密鍵暗号方式でなくてもよい。たとえば、公開鍵暗号方式でもよい。
【0092】
また、前述した実施の形態では、送信対象のデータファイルに対してDES暗号化処理を行なったが、暗号化する方法はDES方式でなくてもよい。たとえば、DES方式に限らない。たとえば、より暗号強度の高いトリプルDES、128ビットまたは64ビットの鍵を用いるFEAL(fast encipherment algorithm)、差分解読法および線形解読法に対して十分な安全性のあるMISTY、RSA暗号、離散対数問題の困難性を利用した楕円曲線暗号、楕円ElGamal暗号、楕円RAS暗号、確率暗号、Goldwasser−Micali暗号、高次剰余暗号、OAEP暗号、Merkle−Hellman暗号、McEliece暗号、PGP暗号、GPG暗号等でもよい。
【0093】
また、前述した実施の形態では、送信対象のデータファイルに対して暗号化処理を行なったが、ブロック暗号方式に限らない。たとえば、ストリーム暗号方式でもよい。
【0094】
また、前述した実施の形態では、ICカードを送信装置および受信装置に接続しておこなったが、この形態に限らない。たとえば、ネットワークを介して離れていてもよい。接触型ICカード、非接触型ICカードでもよい。
【0095】
また、前述した実施の形態では、認証は、パスワードを用いて行なったが、この形態に限らない。たとえば、指紋、声紋、顔型などの本人の生体的特徴を認証手段としてもよい。また、ある情報がある性質を持っているという1ビットの情報をそれ以外の余分な情報を一切もらさずに対話的に証明するゼロ知識対話証明を用いて行なってもよい。
【0096】
また、前述した実施の形態では、電子署名を用いて行なったが、この形態に限らない。たとえば、電子署名はなくてもよい。また、電子署名は、他の電子署名の方式、たとえば、ESIGN署名、Elgamal署名、DSA署名等を用いてもよい。
【0097】
また、前述した実施の形態では、ICカードを用いて行なったが、ICカードの内容は、この形態に限らない。たとえば、ICカードの内容は、他の情報でもよい。
【0098】
また、前述した実施の形態では、送信装置の処理の順番は、ICカード読取処理、使用者/管理者送受信側特定処理、データ結合処理、データ分割処理、ダミーファイル付加処理、ダミーデータ付加処理、暗号化処理および送信処理の順番で行なったが、この順番でなくてもよい。
【0099】
また、前述した実施の形態では、受信装置の処理の順番は、受信処理、ICカード読取処理、使用者/管理者送受信側特定処理、ダミーファイル除去処理、電子署名処理、復号化処理、ダミーデータ除去処理、データ統合処理およびデータ分割処理の順番で行なったが、この順番でなくてもよい。
【0100】
また、前述した実施の形態では、ダミーデータおよびダミーファイルを付加および除去したが、ダミーファイルおよびダミーデータの付加の方法は、この形態に限らない。意味のあるダミーデータでもよいし、ランダムなダミーデータでもよいし、意味のあるダミーファイルでもよいし、全くランダムなダミーファイルでもよい。
【0101】
また、前述した実施の形態では、ダミーデータおよびダミーファイルを付加および除去したが、この形態に限らない。ダミーデータおよびダミーファイルは、付加しなくてもよい。
【0102】
【発明の効果】
このように、本発明によれば、よりセキュリティの高い通信システムを提供することができる。
【図面の簡単な説明】
【図1】図1は、本発明の実施の形態の通信システムの全体構成を示すブロック図である。
【図2】図2は、本発明の実施の形態の通信システムの構成を示すブロック図である。
【図3】図3は、図2に示した通信システムの送信側使用者ICカードに記憶されているデータを示すブロック図である。
【図4】図4は、図3に示したICカードの中の分割パターンテーブルを示した図である。
【図5】図5は、図2に示した通信システムのICカードから記憶されている送受信側の使用者および管理者のIDおよび氏名を読み取ったことを示す図である。
【図6】図6は、図2に示した通信システムのICカード読取部の処理のフローチャートである。
【図7】図7は、図2に示した通信システムの使用者/管理者送受信側特定部の処理の具体例のフローチャートである。
【図8】図8は、図2に示した通信システムのデータ分割部における処理の具体例のフローチャートである。
【図9】図9は、図2に示した通信システムの送信装置の電子署名部により生成される署名を示した図である。
【図10】図10は、図2に示した通信システムの電子署名部の処理の具体例のフローチャートである。
【図11】図11は、図2に示した通信システムの電子署名部のハッシュ値格納部へのデータ格納のフローチャートである。
【図12】図12は、図2に示した通信システムの電子署名部の鍵格納部へのデータ格納のフローチャートである。
【図13】図13は、図2に示した通信システムの電子署名部の署名経路格納部へのデータ格納のフローチャートである。
【図14】図14は、図2に示した通信システムの送信装置のダミーファイル付加部によりダミーファイルを付加することを示した図である。
【図15】図15は、図2に示した通信システムのダミーファイル付加部の処理の具体例のフローチャートである。
【図16】図16は、図2に示した通信システムの送信装置のダミーデータ付加部によりファイルに対してダミーデータを付加することを示した図である。
【図17】図17は、図2に示した通信システムのダミーデータ付加部の処理の具体例のフローチャートである。
【図18】図18は、図2に示した通信システムの送信装置の暗号化部により複数のファイルに対し暗号化することを示した図である。
【図19】図19は、図2に示した通信システムの暗号化部のコントロールファイルを作成する処理の具体例のフローチャートである。
【図20】図20は、図2に示した通信システムの暗号化部の一時分割ファイルに対して暗号化する処理の具体例のフローチャートである。
【図21】図21は、図2に示した通信システムの暗号化部の一時ダミーファイルに対して暗号化する処理の具体例のフローチャートである。
【図22】図22は、図2に示した通信システムの送信装置のデータの処理の流れについて説明する図である。
【図23】図23は、図2に示した通信システムの使用者/管理者送受信側特定部の送受信側の使用者および管理者の特定を行なう処理の具体例のフローチャートである。
【図24】図24は、図2に示した通信システムのダミーファイル除去部のダミーファイルを特定する処理の具体例のフローチャートである。
【図25】図25は、図2に示した通信システムの復号化部の処理の具体例のフローチャートである。
【図26】図26は、図2に示した通信システムのダミーファイル除去部の電子署名を生成する処理の具体例のフローチャートである。
【図27】図27は、図2に示した通信システムの電子署名部の電子署名を復号化する処理の具体例のフローチャートを示した図である。
【図28】図28は、図2に示した通信システムの電子署名部の鍵格納部に記録されている初期暗号鍵番号を復号化する処理のフローチャートである。
【図29】図29は、図2に示した通信システムの電子署名部のハッシュ値格納部に記録されている結合ファイルのハッシュ値の復号化をする処理のフローチャートである。
【図30】図30は、図2に示した通信システムの復号化部が分割ファイルを復号化する処理の具体例のフローチャートである。
【図31】図31は、図2に示した通信システムのダミーデータ除去部がダミーデータを除去する処理の具体例のフローチャートである。
【図32】図32は、図2に示した通信システムのデータ統合部が7つの一時分割ファイルを結合する処理の具体例のフローチャートである。
【図33】図33は、図2に示した通信システムの受信装置のデータの処理の流れについて説明する図である。
【符号の説明】
1…通信システム
10…送信装置
11…ICカード読取部、 12…使用者/管理者送受信側特定部
13…データ分割部、 14…電子署名部
15…ダミーファイル付加部、 16…ダミーデータ付加部
17…暗号化部、 18…送信部
20…伝送路
30…受信装置
31…受信部、 32…ICカード読取部
33…使用者/管理者送受信側特定部、34…ダミーファイル除去部
35…データ統合部、 36…復号化部
37…ダミーデータ除去部、 38…データ統合部
40−1…送信側使用者ICカード、40−2…送信側管理者ICカード
40−3…受信側管理者ICカード
41−1…送信側使用者設定ファイル
41−2…送信側管理者設定ファイル
41−3…受信側管理者設定ファイル
42−1…送信側使用者部分分割パターンテーブル
42−2…送信側管理者部分分割パターンテーブル
42−3…受信側管理者部分結合パターンテーブル
42−4…受信側管理者部分結合パターンテーブル
43−1…送信側使用者暗号鍵テーブル
43−2…送信側管理者暗号鍵テーブル
43−3…受信側管理者復号鍵テーブル
43−4…受信側管理者復号鍵テーブル
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a communication system with higher security.
[0002]
[Prior art]
Advances in information processing technology and communication technology have made it possible to easily and efficiently transmit information over communication networks, and as a result, the amount of information transmitted over such communication networks Has also increased dramatically.
There are various types of communication networks. For example, the Internet in which a plurality of computer systems and networks are connected on a global scale is attracting attention in terms of scale and communication costs, and is widely used. .
By the way, communication of various confidential data is performed between individuals and companies through such a communication network.
As a general method for transmitting data that requires confidentiality in such data communication, a method of transmitting confidential data after encryption is performed. At that time, the encryption key is used for encryption, but the person who encrypts and transmits the data needs to keep and manage it securely so that the encryption key is not lost or disclosed to a third party. There is.
As such a management method, an encryption key and a decryption key are stored in a so-called IC card, securely held and managed, and each IC card is distributed to the encryption transmission side and the decryption reception side, and the IC card is used. A method of encrypting and transmitting confidential data is known.
[0003]
[Problems to be solved by the invention]
However, in the method of having one IC card in which the encryption key and the decryption key are recorded on each of the encryption transmission side and the decryption reception side, a person who uses this IC card performs encryption or decryption by one person. In addition, it is possible to illegally use the IC card such as falsification, peeping, and leakage of confidential data. For this reason, the method of using IC cards one by one has problems such as lack of a third party checking function and low security, and there is a demand for improvement.
[0004]
Accordingly, an object of the present invention is to provide a communication system with higher security.
[0005]
[Means for Solving the Problems]
In order to solve the above problems, a communication system according to the present invention includes an encryption device and a decryption device, and an encryption key is included in the first information storage device provided on the encryption device side. Data related to Multiple Divided Consists of a binary data table obtained with a random number of specified bytes When dividing the partial encryption key data and the data to be encrypted into a plurality of divided files divided by a plurality of file numbers, a division pattern indicating the file number and the data amount of the divided file at the file number; A part of a division pattern table including division pattern numbers indicating variations of the division pattern is shown. plural A partial division pattern table is stored, and the second information storage device provided on the side of the decryption device stores data related to the decryption key. Multiple Partial divided decryption key data and the same content as the partial divided pattern table, showing a part of the pattern for combining the divided files plural A communication system in which a partial combination pattern table is stored, wherein the encryption device is connected to the first information storage device. , Select from the binary data in the table with an offset value based on a random number within the specified number of bytes Read multiple Of a given byte length The encryption key generating means for integrating the partial encryption key data and generating an encryption key based on the integrated partial encryption key data, and a dummy file unrelated to the encryption target data as the encryption target data Corresponding to a dummy file adding means to be added and a plurality of the partial division pattern tables read from the first information storage device are combined to generate a division pattern table, and the generated random number is used as the division pattern number And a data dividing means for dividing the data to be encrypted into a plurality of divided files based on the division pattern of the division pattern table, and encrypting the plurality of divided files based on the generated encryption key. , Using the hash value of the dummy file Different from the dummy file Control file so An encryption unit for generating the dummy file; and a transmission unit for transmitting the dummy file, the plurality of encrypted divided files, and the control file. , Integrating the dummy file, the plurality of encrypted divided files, and the receiving means for receiving the control file, and the plurality of partial decryption key data read from the second information storage device, Decryption key generation means for generating a decryption key based on the partial decryption key data, and the dummy file and the dummy file among the plurality of encrypted divided files based on the received control file. Dummy file removal means for identifying and removing and outputting the plurality of encrypted divided files; Based on the decrypted key, the decryption means for decrypting the plurality of divided files output and encrypted is combined with the plurality of partial combination pattern tables read from the second information storage device. A data integration unit that generates a combined pattern table having the same content as the divided pattern table, and restores the original data to be encrypted by combining the plurality of divided files based on the combined pattern table; Have.
[0006]
The communication method according to the present invention is a communication method having an encryption step and a decryption step in a communication system having an encryption device and a decryption device, and is provided on the encryption device side. The first information storage device stores data related to the encryption key. Multiple Divided Consists of a binary data table obtained with a random number of specified bytes When dividing the partial encryption key data and the data to be encrypted into a plurality of divided files divided by a plurality of file numbers, a division pattern indicating the file number and the data amount of the divided file at the file number; A part of a division pattern table including division pattern numbers indicating variations of the division pattern is shown. plural A partial division pattern table is stored, and the second information storage device provided on the side of the decryption device stores data related to the decryption key. Multiple Partial divided decryption key data and the same content as the partial divided pattern table, showing a part of the pattern for combining the divided files plural A partial combination pattern table is stored, and the encryption step is performed from the first information storage device. , Select from the binary data in the table with an offset value based on a random number within the specified number of bytes Read multiple Of a given byte length The encryption key generation step of integrating the partial encryption key data and generating an encryption key based on the integrated partial encryption key data, and a dummy file unrelated to the encryption target data as the encryption target data Corresponding to the dummy file adding step to be added and a plurality of the partial division pattern tables read from the first information storage device are combined to generate a division pattern table, and the generated random number is used as the division pattern number A data dividing step of dividing the data to be encrypted into a plurality of divided files based on the division pattern of the division pattern table, and encrypting the plurality of divided files based on the generated encryption key , Using the hash value of the dummy file Different from the dummy file Control file so An encryption step for generating the dummy file, and a transmission step for transmitting the dummy file, the plurality of encrypted divided files, and the control file, and the decryption step includes: , Integrating the dummy file, the plurality of encrypted divided files, and the control file, and a plurality of the partial decryption key data read from the second information storage device, A decryption key generating step for generating a decryption key based on the partial decryption key data, and the dummy file and the dummy file among the plurality of encrypted divided files based on the received control file. A dummy file removal step of outputting the plurality of divided files that have been identified and removed and encrypted; Based on the generated decryption key, the decryption step of decrypting the plurality of divided files output and encrypted is combined with the plurality of partial combination pattern tables read from the second information storage device. A data integration step of generating a combined pattern table having the same contents as the divided pattern table and restoring the original data to be encrypted by combining the plurality of divided files based on the combined pattern table; Have
[0007]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described with reference to FIGS.
As an embodiment of the present invention, a communication system having a transmission device and a reception device that collectively transmit a plurality of desired data files via an arbitrary transmission path will be exemplified.
FIG. 1 is a block diagram showing an overall configuration of a communication system 1 according to an embodiment of the present invention.
The communication system 1 has a configuration in which a transmission device 10 and a reception device 30 are connected via a transmission line 20.
The IC card 40-1 and the IC card 40-2 are loaded into the transmission device 10.
Further, the IC card 40-3 is loaded on the receiving device 30.
In the embodiment of the present invention, it is assumed that two persons, an administrator and a user (system operator and operator) are on the transmitting side for transmitting data, and an administrator is on the receiving side, and the transmitting side user IC card 40 is used. -1, a transmission-side administrator IC card 40-2 and a reception-side administrator IC card 40-3.
[0008]
FIG. 2 is a block diagram showing in detail the configuration of the communication system 1 according to the embodiment of the present invention.
First, the schematic operation of each part of the communication system 1 will be described.
The transmission device 10 performs various processes described later on a desired data file to be transmitted, converts the data into a predetermined format, and transmits the data file to the transmission path 20.
The transmission device 10 is loaded with a transmission side user IC card 40-1 and a transmission side administrator IC card 40-2.
The two IC cards 40-1 and IC card 40-2 loaded in the transmission device 10 are various necessary when the transmission device 10 performs a predetermined conversion on a desired data file to be transmitted and transmits it to the transmission line 20. Are stored separately.
[0009]
First, data stored in the IC card 40-1 and the IC card 40-2 will be described.
FIG. 3 is a block diagram showing data stored in the IC card 40-1. As shown in FIG. 3, the IC card 40-1 includes a setting file 41-1, a partial division pattern table 42-1, and an encryption key table 43-1.
Data elements stored in the transmission-side user IC card 40-1 will be described.
The setting file 41-1 includes a user password, a card folder ID (IDentity code), a card folder name, a user flag, an administrator flag, a work group ID, a card folder RSA (Rivest, Shamir, Adleman encryption) private key, card Folder RSA public key, administrator ID, administrator name, receiving side ID, receiving side name, and receiving side RSA public key.
[0010]
The user password is a password for identifying the person who owns the IC card 40-1.
The card folder ID is the ID number of the person who owns the IC card 40-1.
The name of the card folder is the name of the person who owns the IC card 40-1.
The user flag is 1 in the case of a user IC card, and 0 in other cases.
The administrator flag is 1 in the case of an administrator IC card, and 0 in other cases.
The work group ID is an ID number of a work group to which a user and an administrator belong.
The card folder RSA private key is an RSA private key of the holder of the IC card 40-1.
The card folder RSA public key is the RSA public key of the holder of the IC card 40-1.
The manager ID is the ID number of the manager on the transmission side.
The name of the administrator is the name of the administrator on the transmission side.
The ID on the receiving side is the ID number of the administrator on the receiving side.
The name on the receiving side is the name of the administrator on the receiving side.
The RSA public key on the receiving side is the RSA public key of the administrator on the receiving side.
[0011]
FIG. 4 is a diagram showing an example of the division pattern table.
As shown in FIG. 4, the partial division pattern table 42-1 is a part of the division pattern table used when dividing the data file to be transmitted. The data division unit 13 described later combines the partial division pattern table 42-1 and the partial division pattern table 42-2 to create a division pattern table, and divides the data file while referring to the division pattern table.
Specifically, as shown in FIG. 4, the division pattern table is a table in which division pattern numbers and 16 division patterns corresponding to the division pattern numbers are arranged vertically. The partial division pattern table 42-1 is a table up to the first to fourth columns of the division pattern table. The partial division pattern table 42-2 is a table up to the fifth to eighth columns of the division pattern table. 1B-F1 of pattern 1 in FIG. 4 means that 1-byte data is stored in the file 1.
[0012]
The encryption key table 43-1 is a table that is referred to together with the encryption key table 43-2 when generating the encryption key used by the encryption unit 17. Specifically, the encryption key table is 256-byte binary data obtained by random numbers.
The setting file 41-1 is referred to by the user / administrator transmission / reception side specifying unit 12 and the electronic signature unit 14, the partial division pattern table 42-1 is referred to by the data division unit 13, and the encryption key table 43- 1 is referred to by the encryption unit 17.
[0013]
The data elements stored in the transmission-side administrator IC card 40-2 are almost the same as the data elements stored in the transmission-side user IC card 40-1, and the setting file 41-2, partial division It has a pattern table 42-2 and an encryption key table 43-2.
[0014]
Next, each element of the transmission device 10 of the communication system 1 in FIG. 1 will be described.
The transmitting apparatus 10 includes an IC card reading unit 11, a user / administrator transmission / reception side specifying unit 12, a data dividing unit 13, an electronic signature unit 14, a dummy file adding unit 15, a dummy data adding unit 16, an encryption unit 17, and a transmission. Part 18.
[0015]
FIG. 5 is a diagram in which the IC card reading unit 11 reads the transmission side user ID, the transmission side administrator ID, and the reception side administrator ID stored in the IC card 40-1 and the IC card 40-2. is there.
The IC card reading unit 11 reads the data stored in the IC card 40-1 and the IC card 40-2, performs processing described later, and outputs the read data to a predetermined component.
A flowchart of a specific example of processing of the IC card reader 11 is shown in FIG.
[0016]
As shown in FIG. 6, the IC card reading unit 11 requests a password from the transmission side user and the transmission side administrator (S1101).
The IC card reading unit 11 uses the user password in the setting file 41-1 and the setting file 41-2 stored in each of the transmission-side user IC card 40-1 and the transmission-side administrator IC card 40-2. The read and input password is compared with the read user password (S1102). If the password input is different, the process ends (S1103).
[0017]
In step S1103, when the passwords of the transmission side user and the transmission side administrator are verified, the IC card reading unit 11 transmits the transmission side user IC card 40-1 and the transmission side administrator IC card 40-2. Read out the card folder ID, card folder name, administrator flag, user flag, work group ID and administrator ID in the setting file 41-1 and setting file 41-2 stored in the The data is output to the administrator transmission / reception side identification unit 12 (S1104).
The IC card reading unit 11 ends the processing when the user / administrator transmission / reception side specifying unit 12 described later does not specify the transmission side user and the transmission side administrator (S1105, S1103).
[0018]
In step S1105, when the transmission side user and the transmission side administrator are specified, they are stored from the previous two transmission side user IC cards 40-1 and transmission side administrator IC card 40-2. The setting file 41-1 and the setting file 41-2 are read and output to the electronic signature unit 14, the partial division pattern table 42-1 and the partial division pattern table 42-2 are read and output to the data division unit 13, and the encryption key The table 43-1 and the encryption key table 43-2 are read and output to the encryption unit 17 (S1106).
[0019]
The user / administrator transmission / reception side specifying unit 12 is based on the transmission side user ID, the user flag, the transmission side administrator ID, the administrator flag, and the work group ID previously read by the IC card reading unit 11. The user / administrator transmission / reception side is specified. This is for checking whether the user, the administrator, the work group, and the relationship between the user and the administrator are appropriate.
[0020]
FIG. 7 shows a flowchart of a specific example of processing of the user / administrator transmission / reception side identification unit 12.
As shown in FIG. 7, the user / administrator transmission / reception side specifying unit 12 receives the transmission-side user ID, user flag, transmission-side administrator ID, administrator flag, and work group ID from the IC card reading unit 11. Data is received (S1201).
[0021]
The user / administrator transmission / reception side specifying unit 12 checks that the user flag of the transmission side user setting file 41-1 is 1 (S1202). If the user flag is other than 1, since the setting file data is not appropriate, the processing is stopped (S1203).
If the user flag is 1 in step S1202, it is checked that the administrator flag in the transmission-side administrator setting file 41-2 is 1 (S1204). If the administrator flag is other than 1, the setting file data is not appropriate, and the process is stopped (S1203).
[0022]
If the administrator flag is 1 in step S1204, it is checked whether the work group ID of the transmission side user setting file 41-1 is the same as the work group ID of the transmission side administrator setting file 41-2 ( S1205). If the work group IDs are different, the setting file data is not appropriate and the processing is stopped (S1203).
[0023]
If the work group IDs are the same in step S1205, the user / administrator transmission / reception side specifying unit 12 determines the ID of the administrator of the transmission side user setting file 41-1 and the transmission side administrator setting file 41-2. It is checked whether or not the card folder IDs are the same (S1206). If they are different, the process is stopped because the vertical relationship between the user and the administrator is not appropriate (S1203).
In step S1206, when the vertical relationship between the user and the administrator is appropriate, it is assumed that the transmission side user and the transmission side administrator have been identified, and this result is output to the IC card reading unit 11 (S1207).
[0024]
The data dividing unit 13 combines a plurality of input data files to be transmitted to generate one combined file, and a dividing process that divides one combined file into seven temporary divided files. One process is performed.
FIG. 8 is a flowchart illustrating a specific example of the combining process in the data dividing unit 13.
As shown in FIG. 8, the data dividing unit 13 combines the number of transmission target data files, the size of each transmission target data file, and the transmission target data file to generate a combined file (S1301).
If the combined file size is larger than 512 × 7 = 3584 bytes, the data dividing unit 13 performs padding so that the combined file size is a multiple of 480 bytes (S1302, S1303).
In step S1302, if the combined file size is 3584 bytes or less, padding is performed so as to be 3584 bytes (S1304).
Through the above processing, the data dividing unit 13 combines a plurality of data files to be transmitted to generate one combined file (S1305).
The data dividing unit 13 calculates a hash value of the generated combined file, and outputs the calculated hash value to the electronic signature unit 14 (S1306).
[0025]
A description will be given of a dividing process in which the data dividing unit 13 divides one combined file combined in the previous combining process and creates a temporary divided file.
As shown in FIG. 8, the data dividing unit 13 includes a partial division pattern table 42-1 and a partial division pattern stored in the IC card 40-1 and the IC card 40-2 read by the IC card reading unit 11. The tables 42-2 are combined to generate a division pattern table (S1307).
The data dividing unit 13 generates random numbers 1 to 16, and uses the generated value as a division pattern number. With reference to the generated divided pattern table, a divided pattern corresponding to the previously generated divided pattern number is determined (S1308).
The combined file combined first is sequentially divided into seven temporary divided files according to the determined division pattern every 16 bytes (S1309).
The data dividing unit 13 outputs the generated seven temporary divided files to the dummy data adding unit 16. (S1310)
[0026]
FIG. 9 is a diagram showing the structure of an electronic signature.
As shown in FIG. 9, the electronic signature has a hash value storage unit, a key storage unit, and a signature path storage unit.
The electronic signature unit 14 transmits the setting file 41-1 and the setting file 41-2 of the transmission-side user IC card 40-1 and the transmission-side administrator IC card 40-2 read by the IC card reading unit 11. Using the side administrator RSA private key, the transmission side user RSA private key, and the reception side administrator's RSA public key, as shown in FIG. Output to.
[0027]
FIG. 10 is a diagram showing a flowchart of a specific example of processing of the electronic signature unit 14.
As shown in FIG. 10, the processing of the electronic signature unit 14 includes data storage in the hash value storage unit (S1410), data storage in the key storage unit (S1420), data storage in the signature path storage unit (S1430), It is divided into electronic signature generation (S1440) and output (S1450).
[0028]
FIG. 11 is a flowchart of data storage (S1410) in the hash value storage unit of the electronic signature unit 14.
As shown in FIG. 11, the electronic signature unit 14 performs RSA encryption processing on the hash value of the combined file using the RSA private key of the transmission side user (S1411). Using the RSA public key of the receiving administrator, the hash value subjected to the previous RSA encryption processing is further subjected to RSA encryption processing (S1412) and recorded in the hash value storage unit (S1413).
[0029]
FIG. 12 is a diagram illustrating a flowchart of data storage in the key storage unit of the electronic signature unit 14. The key storage unit records the initial encryption key number created by the encryption unit 17 described later and subjected to RSA encryption processing.
As shown in FIG. 12, the electronic signature unit 14 performs an RSA encryption process on the initial encryption key number created by the encryption unit 17 (to be described later) using the RSA public key of the receiving administrator (S1421). Further, the electronic signature unit 14 performs RSA encryption processing on the initial encryption key number subjected to the previous RSA encryption processing using the RSA private key of the transmission side administrator (S1422), and records it in the key storage unit (S1423). ).
[0030]
FIG. 13 is a flowchart of data storage (S1430) in the signature path storage unit of the electronic signature unit 14. The signature path storage unit is formed by performing DES encryption processing on each person's ID.
As shown in FIG. 13, the electronic signature unit 14 combines the ID and name of the transmission side user, the ID and name of the transmission side administrator, and the ID and name of the reception side administrator (S1431).
DES encryption processing is performed by reading the third, sixth, ninth and twelfth byte data of the hash value storage unit, reading the second, fourth, sixth and eighth byte data of the key storage unit, and alternately connecting the respective data. The initial value used in the above is generated (S1432).
Next, the electronic signature unit 14 reads the data of the second, fifth, eighth, and eleventh bytes of the hash value storage unit, reads the data of the first, third, fifth, and seventh bytes of the key storage unit, and stores each data. The DES encryption key used in the DES encryption process is generated by alternately connecting them (S1433).
The electronic signature unit 14 performs DES encryption processing on the previously combined data string using the previously generated initial value and DES encryption key (S1434), and records it in the signature path storage unit (S1435).
[0031]
As shown in FIG. 10, the electronic signature unit 14 combines the generated hash value storage unit, key storage unit, and signature path storage unit to generate an electronic signature (S1440), and adds the generated electronic signature to a dummy file. The data is output to the unit 15 (S1450).
[0032]
The dummy file adding unit 15 generates a temporary dummy file and outputs the generated temporary dummy file to the dummy data adding unit 16.
FIG. 14 is a diagram in which a dummy file is added to a file to be transmitted.
The dummy file is a file unrelated to the divided file, and is generated to make it difficult to specify the original file as shown in FIG.
[0033]
FIG. 15 is a diagram illustrating a flowchart of a specific example of the process of the dummy file adding unit 15.
The temporary dummy file has a signature, a division pattern number generated by the data division unit 13, and an initial value of the DES encryption process generated by the encryption unit 17.
As shown in FIG. 15, the dummy file adding unit 15 divides the entire electronic signature generated by the electronic signature unit 14 into 6 blocks, and a total of 3 blocks including a first block, a third block, and a fifth block. Is extracted to generate a signature (S1501).
The dummy file adding unit 15 combines the division pattern number generated by the data dividing unit 13, the initial value of the DES encryption process generated by the encryption unit 17, and the signature generated in step S1501 (S1503). A dummy file is generated (S1504). The generated temporary dummy file is output to the dummy data adding unit 16 (S1504).
[0034]
The dummy data adding unit 16 adds an appropriate amount of dummy data to all or some of the temporary divided files previously generated by the data dividing unit 13 and the temporary dummy file generated by the dummy file adding unit 15. The generated padded temporary divided file and padded temporary dummy file are output to the encryption unit 17.
[0035]
Here, the appropriate amount is an amount such that the size of the file to be encrypted is a multiple of 8 bytes when the encryption processing by the encryption unit 17 is performed. This is because the subsequent encryption unit 17 uses the CBC (CipherBlock Chaining) mode of the 8-byte block encryption algorithm, so that the file size to be encrypted needs to be a multiple of 8 bytes per block. Because.
[0036]
FIG. 16 is a diagram showing that the dummy data adding unit 16 adds dummy data to a file.
FIG. 17 is a diagram illustrating a flowchart of a specific example of the process of the dummy data adding unit 16.
As shown in FIG. 17, the temporary data file or temporary dummy file is input to the dummy data adding unit 16 (S1601).
The dummy data adding unit 16 adds 0x80 to the temporary divided file (S1602) when the file size of the temporary divided file is a multiple of 8 bytes −1 (S1603, S1604).
In step S1603, if the file size of the temporary divided file is a multiple of 8 bytes-X (where X = 2 to 8), padding is performed so that it starts with 0x80 and then continues for 0x00 for X-1 bytes (S1605). . The dummy data addition process is performed to generate a padded temporary divided file (S1606), and the generated padded temporary divided file is output to the encryption unit 17 (S1607).
[0037]
In step S1602, the dummy data adding unit 16 has the same file size as that of the smallest one of the seven padded temporary divided files for the temporary dummy file previously generated by the dummy file adding unit 15. In this manner, dummy data is added (S1608). The value of dummy data to be added is a random number from 0x00 to 0xff. The padded temporary dummy file is generated (S1609) and output to the encryption unit 17 (S1607).
[0038]
FIG. 18 is a diagram showing that the encryption unit 17 encrypts a plurality of files.
The encryption unit 17 generates a DES encryption key using the encryption key table 43-1 and the encryption key table 43-2 read by the previous IC card reading unit 11, and uses the DES encryption key to generate dummy data. The seven padded temporary divided files generated by the adding unit 16 are subjected to DES encryption processing as shown in FIG. 18, and the seven divided files are output to the transmitting unit 18.
[0039]
Also, the encryption unit 17 DES encrypts the temporary dummy file with the file size added by the dummy data adding unit 16 padded to a multiple of 8 bytes, generates a dummy file, and transmits the generated dummy file. To the unit 18.
[0040]
Further, the encryption unit 17 combines the signature and the hash value of the dummy file name generated previously, generates a control file, and transmits the generated control file to the transmission unit 18.
[0041]
FIG. 19 is a diagram showing a flowchart of a specific example of the process of creating the control file of the encryption unit 17.
The contents written to the control file are a signature and a hash value of the dummy file name.
As shown in FIG. 19, the encryption unit 17 divides the entire electronic signature generated by the electronic signature unit 14 into 6 blocks, and adds a total of 3 blocks: a second block, a fourth block, and a sixth block. Extracted and used as a signature (S1701). The part written to the temporary dummy file is not written to the control file.
The encryption unit 17 obtains a hash value of the dummy file name (S1702). This value is referred to when the receiving device 30 specifies a dummy file.
The encryption unit 17 combines the generated signature and the hash value of the dummy file, generates a control file (S1703), and outputs the control file to the transmission unit 18 (S1704).
[0042]
FIG. 20 is a diagram illustrating a flowchart of a specific example of the process of encrypting the seven temporary divided files padded by the encryption unit 17.
As shown in FIG. 20, the encryption unit 17 obtains a random number from 0 to 255 eight times, and generates an initial value (S1711). The initial value is output to the dummy file adding unit 15 (S1712). The DES encryption key is generated from the initial encryption key number. As the initial encryption key number, a random number from 0 to 255 is obtained and used as the initial encryption key number (S1713). The initial encryption key number is output to the electronic signature unit 14 (S1714).
[0043]
Next, as the DES encryption key, the DES encryption key is obtained from the initial encryption key number.
The encryption unit 17 performs six bit shifts on the initial encryption key number to obtain six encryption key numbers (S1715). Four bytes are read from the encryption key table 43-1 of the transmission-side user IC card 40-1 as the offset values for each of the seven encryption key numbers obtained up to the above processing. Further, 4 bytes are read from the encryption key table 43-2 of the transmission side administrator IC card 40-2 with the same offset value (S1716). The 4 bytes are combined to form a DES encryption key (S1717).
However, if the encryption key number is larger than 252 and 4 bytes cannot be read, the missing part is read from the heads of the encryption key table 43-1 and the encryption key table 43-2.
Using the generated initial value and the seven DES encryption keys, the encryption unit 17 performs DES encryption processing on the seven padded temporary divided files in the CBC mode, and generates seven divided files (S1718). The generated seven divided files are output to the transmission unit 18 (S1719).
[0044]
The encryption unit 17 performs DES encryption processing on the padded temporary dummy file generated by the dummy data adding unit 16, generates a dummy file, and outputs the generated dummy file to the transmission unit 18.
FIG. 21 is a flowchart illustrating a specific example of the process of encrypting the padded temporary dummy file of the encryption unit 17.
As shown in FIG. 21, the encryption unit 17 obtains a hash value of 20 bytes for the generated control file (S1721). The 5th to 12th bytes of the obtained hash value 20 bytes are set to an initial value of 8 bytes, and the 13th to 20th bytes of the obtained hash value of 20 bytes are set to 8 bytes of a DES encryption key (S1722). Using the generated initial value 8 bytes and DES encryption key 8 bytes, the temporary dummy file padded in the CBC mode is DES encrypted to generate a dummy file (S 1723), and the generated dummy file is transmitted to the transmission unit 18. It outputs (S1724).
The dummy file names are given file names similar to the names of the seven divided files.
[0045]
The transmission unit 18 transmits the seven divided files, the one dummy file, and the control file generated by the encryption unit 17 to the reception device 30 via the transmission path 20.
[0046]
The transmission device 10 having such a configuration transmits a desired data file to be transmitted to the transmission path 20.
The operation of the transmission apparatus 10 at this time will be described together.
FIG. 22 is a diagram illustrating a processing flow of the transmission apparatus.
First, a plurality of data files to be transmitted are input to the transmission device 10.
The transmission-side user loads the transmission-side user IC card 40-1 to the transmission device 10, and the transmission-side administrator loads the transmission-side administrator IC card 40-2 to the transmission device 10, and the IC card reading unit 11, when the owners of the IC card 40-1 and the IC card 40-2 are authenticated and correctly authenticated, the user / administrator transmission / reception side specifying unit 12 determines the relationship between the transmission side user and the transmission side administrator. Check. In the case of an appropriate relationship, the IC card reading unit 11 receives the setting file 41-1 and the setting file 41-2, the partial division pattern table 42-1 and the partial division from the two IC cards 40-1 and 40-2. The pattern table 42-2, the encryption key table 43-1 and the encryption key table 43-2 are read and output to the electronic signature unit 14, the data division unit 13, and the encryption unit 17, respectively.
[0047]
The input data files to be transmitted are combined into one combined file by the data dividing unit 13, divided into seven temporary divided files by the data dividing unit 13, and dummy data is added by the dummy data adding unit 16. It is encrypted by the encryption unit 17 and becomes seven divided files. In the division, the two IC cards 40-1 and the two partial division tables 42-1 and 42-2 stored in the IC card 40-1 are referred to and divided. At the time of encryption, the two encryption key tables and the 43-1 encryption key table 43-2 stored in the two IC cards 40-1 and 40-2 are referred to. Further, the hash value of the combined file, the initial encryption key number, the ID and name of the transmission side user, the transmission side administrator, and the reception side administrator are processed by the electronic signature unit 35 to become a signature, which is a dummy file. The adding unit 15 writes the division pattern number, the initial value of the DES encryption process, and half the information of the previous signature in the temporary dummy file. The temporary dummy file is added with dummy data by the dummy data adding unit 16 and encrypted by the encryption unit 17 to become a dummy file. The remaining half of the signature information and the hash value of the dummy file name are written in the control file generated by the encryption unit 17. The generated eight files, that is, seven divided files, one dummy file, and a control file are transmitted to the transmission path 20 by the transmission unit 18.
[0048]
The transmission line 20 is an arbitrary transmission line. In the present embodiment, it is assumed that the Internet includes various devices, computers, and networks including the transmitting device 10 and the receiving device 30 connected on a global scale.
[0049]
Next, the receiving device 30 of the communication system 1 will be described.
The receiving device 30 receives the data file converted from the transmitting device 10 through the transmission path 20 and converted into a predetermined format, and performs various processes described later to decode the original data file.
As described above, the receiving device 30 receives the eight files transmitted by the transmitting device 10, that is, seven divided files, one dummy file, and the control file, and restores and outputs the original data file.
Therefore, the receiving device 30 has a configuration corresponding to each component of the transmitting device 10 described above.
The receiving device 30 is loaded with the receiving side administrator IC card 40-3.
The IC card 40-3 loaded in the receiving device 30 is necessary for decrypting the data file converted into the predetermined format received by the receiving device 30 into the original data file by performing various processes described later. Various data are divided and stored.
[0050]
First, the configuration of the IC card 40-3 will be described.
The IC card 40-3 includes a setting file 41-3, a partial combination pattern table 42-3, a partial combination pattern table 42-4, a decryption key table 43-3, and a decryption key table 43-4.
[0051]
The content of each component of the IC card 40-3 is almost the same as the content of the IC card 40-1 and the IC card 40-2.
However, the setting file 41-3 includes a user password, a card folder ID, a card folder name, a card folder RSA private key, a card folder RSA public key, a sender user and sender administrator ID, name, and RSA public key. Have
[0052]
The partial combination pattern table 42-3 is a part of a combination pattern table used when processing for combining seven divided files. Specifically, the partial combination pattern table 42-3 and the partial division pattern table 42-1 are tables having the same contents, and the partial combination pattern table 42-4 is a table having the same contents as the partial division pattern table 42-2. It is.
[0053]
The decryption key table 43-3 is a table having the same contents as the encryption key table 43-1, and the decryption key table 43-4 is a table having the same contents as the encryption key table 43-2.
[0054]
Next, each element of the receiving device 30 of the communication system 1 in FIG. 1 will be described.
The receiving device 30 includes a receiving unit 31, an IC card reading unit 32, a user / administrator transmission / reception side specifying unit 33, a dummy file removing unit 34, an electronic signature unit 35, a decrypting unit 36, a dummy data removing unit 37, and data integration. Part 38.
[0055]
The receiving unit 31 receives eight files transmitted from the transmission device 10 via the transmission path 20, that is, seven divided files, one dummy file, and a control file.
The reception unit 31 outputs the eight files and the control file to the dummy file removal unit 34.
[0056]
The IC card reading unit 32 functions in the same manner as the IC card reading unit 11 of the transmission device 10. The reading time of the IC card 40-3 is measured, and if it is within the predetermined time, the owner of the IC card 40-3 is requested to input a password, and the owner is verified. When the collation is properly performed, the card folder ID and the card folder name in the setting file 41-3 are read and output to the user / administrator transmission / reception side specifying unit 33.
[0057]
The IC card reading unit 32 reads the setting file 41-3 and outputs it to the electronic signature unit 35 when the receiving side administrator is specified by the user / manager transmitting / receiving side specifying unit 33. Further, the partial combination pattern table 42-3 and the partial combination pattern table 42-4 are read and output to the data integration unit 38. Also, the decryption key table 43-3 and the decryption key table 43-4 are read and output to the decryption unit 36.
[0058]
The user / administrator transmission / reception side identification unit 33 performs substantially the same function as the user / manager transmission / reception side identification unit 12 of the transmission device 10.
The user / administrator transmission / reception side specifying unit 33 specifies the receiving side administrator based on the receiving side administrator ID read by the IC card reading unit 32 previously. The result is output to the IC card reading unit 32.
The user / administrator transmission / reception side specifying unit 33 specifies the user and administrator on the transmission / reception side from the ID of each person extracted from the electronic signature unit 35 described later. The result is output to the electronic signature unit 35.
[0059]
FIG. 23 is a diagram showing a flowchart of a specific example of the process of identifying the user and manager on the transmission / reception side of the user / manager transmission / reception side identification unit 33.
As shown in FIG. 23, the user / administrator transmission / reception side specifying unit 33 receives the transmission obtained by the decryption processing of the signature path storage unit (S3301) input from the electronic signature unit 35 and the IC card reading unit 32. It is checked whether the side administrator ID matches the transmission side administrator ID stored in the reception side administrator IC card 40-3 (S3302). It is checked whether or not the reception side administrator ID of the signature path storage unit matches the reception side administrator ID of the IC card 40-3 (S3303). It is checked whether the transmission side user ID of the signature path storage unit matches the transmission side user ID of the IC card 40-3 (S3304).
If the user and administrator on the transmission / reception side are not identified by the above checks, the processing is stopped (S3305). When the user and administrator on the transmission / reception side are specified, this result is output to the electronic signature unit 35 (S3306).
[0060]
The dummy file removal unit 34 analyzes the control file received by the reception unit 31 and identifies a dummy file from the eight received files.
The identified dummy file is output to the decryption unit 36.
FIG. 24 is a diagram showing a flowchart of a specific example of processing for specifying a dummy file by the dummy file removal unit 34.
As shown in FIG. 24, the dummy file removal unit 34 calculates hash values of the eight file names received by the reception unit 31 (S3401), and selects a file having the same value as the hash value read from the control file. Search is performed (S3402). As a result of the search, a file having the same value is set as a dummy file (S3403, S3404). If there is no same value, it is determined that the dummy file cannot be specified, and the process ends (S3405).
The dummy file removal unit 34 outputs the specified one dummy file to the decryption unit 36, and outputs the remaining seven divided files to the decryption unit 34 (S3406).
[0061]
The decoding unit 36 performs two processes: a process for decoding a dummy file and a process for decoding a divided file. Here, a process for decoding a dummy file will be described. Processing for decrypting the divided file will be described later.
[0062]
The decryption unit 36 decrypts the dummy file specified by the dummy file removal unit 34, generates a padded temporary dummy file, and outputs the generated padded temporary dummy file to the dummy file removal unit 34. To do.
FIG. 25 is a diagram illustrating a flowchart of a specific example of the processing of the decoding unit 36.
As shown in FIG. 25, the decryption unit 36 obtains a hash value of the control file (S3601). The value of the 5th to 12th bytes of the obtained hash value is the initial value of 8 bytes, and the value of the 13th to 20th bytes of the obtained hash value is the DES decryption key 8 bytes (S3602). Using the generated initial value of 8 bytes and DES decryption key of 8 bytes, the dummy file received in the CBC mode is subjected to DES decryption processing to generate a padded temporary dummy file (S3603), and the generated padded dummy file Is output to the dummy data removing unit 37 (S3604).
[0063]
The dummy file removal unit 34 removes dummy files that are not related to the encrypted original data file.
Further, the dummy file removal unit 34 extracts the division pattern number from the padded temporary dummy file decrypted by the decryption unit 36 and outputs it to the data integration unit 38.
Further, the dummy file removal unit 34 extracts the initial value of the DES encryption process from the padded temporary dummy file decrypted by the decryption unit 36 and outputs the initial value to the decryption unit 36.
Furthermore, the dummy file removal unit 34 generates a digital signature by combining the contents of the temporary dummy file and the control file decrypted by the decryption unit 36 and outputs the digital signature to the digital signature unit 35.
[0064]
FIG. 26 is a diagram illustrating a flowchart of a specific example of the process of generating an electronic signature by the dummy file removal unit 34.
As shown in FIG. 26, the dummy file removal unit 34 divides the signature data read from the temporary dummy file into three blocks (S3411), and then divides the signature data read from the control file into three blocks ( In step S3412), they are alternately arranged and combined to generate an electronic signature (S3413). The electronic signature generated here includes a hash value storage unit, a key storage unit, and a signature path storage unit.
The dummy file removal unit 34 outputs the generated electronic signature to the electronic signature unit 35 (S3404).
[0065]
The electronic signature unit 35 performs processing described later on the electronic signature output from the dummy data removal unit 37, and extracts the hash value, the initial encryption key, and the signature path of the combined file. In addition, the hash value of the extracted combined file is output to the data integration unit 38, the extracted initial encryption key is output to the decryption unit 36, and the extracted signature path is set to the user / administrator transmission / reception side specifying unit. To 33.
[0066]
The electronic signature unit 35 obtains a DES decryption key and an initial value from the hash value storage unit and the key storage unit, performs DES decryption processing, and decrypts the signature path storage unit.
FIG. 27 is a diagram illustrating a flowchart of a specific example of the process of decrypting the electronic signature of the electronic signature unit 35.
As shown in FIG. 27, the electronic signature unit 35 reads the third, sixth, ninth and twelfth byte data from the hash value storage unit, and reads the second, fourth, sixth and eighth byte data of the key storage unit. The respective data are alternately connected to generate an initial value used in the DES decoding process (S3501).
Next, the second, fifth, eighth, and eleventh bytes of data are read from the hash value storage unit, the first, third, fifth, and seventh byte data of the key storage unit are read, and the respective data are alternately connected. A DES decryption key used in the DES decryption process is generated (S3502).
Then, the electronic signature unit 35 performs DES decryption processing on the signature path storage unit using the generated initial value and the DES decryption key, and transmits the transmission side user ID and name, the transmission side administrator ID and name, and reception. The ID and name of the side manager are obtained (S3503). The obtained signature path is output to the user / administrator transmission / reception side specifying unit 33 (S3504). If the user / administrator transmission / reception side identification unit 33 cannot identify each person, the electronic signature unit 35 ends the processing (S3505, S3506). If each person is correctly identified, the following initial encryption key number is decrypted (S3507).
[0067]
FIG. 28 is a flowchart of processing for decrypting the initial encryption key number recorded in the key storage unit of the electronic signature unit 35.
As shown in FIG. 28, the electronic signature unit 35, based on the transmission side administrator ID obtained from the decrypted signature path storage unit, transmits the transmission side management stored in the reception side administrator IC card 40-3. The key storage unit is decrypted using the public RSA public key (S3511).
Based on the reception user ID obtained from the signature path storage unit, the RSA private key stored in the reception side administrator IC card 40-3 is used to perform the RSA decryption process, and the initial encryption A key number is obtained (S3512).
The electronic signature unit 35 outputs the extracted initial encryption key number to the decryption unit 36 (S3513).
[0068]
Next, the hash value of the combined file stored in the hash value storage unit is decrypted.
The hash value storage unit stores the hash value of the double-encrypted combined file.
FIG. 29 is a flowchart of a process for decrypting the hash value of the combined file recorded in the key storage unit of the electronic signature unit 35.
As shown in FIG. 29, the electronic signature unit 35 uses the reception side administrator's RSA private key stored in the reception side administrator IC card 40-3 to store the combined file stored in the hash value storage unit. The hash value is decrypted (S3521).
RSA decryption is performed with the RSA public key of the transmission side user stored in the reception side administrator IC card 40-3, and a hash value of the combined file is obtained (S3522).
The electronic signature unit 35 outputs the obtained hash value of the combined file to the data integration unit 38 (S3523).
[0069]
The decrypting unit 36 performs two processes: a process for decrypting the above-described dummy file and a process for decrypting the divided file. Here, a process for decrypting a divided file will be described.
The decryption unit 36 decrypts the received seven divided files using the decryption key and the initial value, generates seven padded temporary divided files, and generates the generated temporary divided files as dummy data removal units. Output to 37.
[0070]
FIG. 30 is a diagram illustrating a flowchart of a specific example of processing in which the decryption unit 36 decrypts the temporary divided file.
First, as shown in FIG. 30, the decryption unit 36 sets the initial value extracted by the dummy file removal unit 34 as an initial value used for decryption (S3611). The decryption key is obtained from the initial encryption key number generated by the electronic signature unit 35.
A procedure for obtaining the decryption key will be described.
First, the initial encryption key number is set as the initial decryption key number (S3612). The initial decryption key number is bit-shifted six times to obtain six decryption key numbers (S3613). The following operations are performed on the above-described seven decryption key numbers.
Four bytes are read from the decryption key table 43-3 of the receiving-side administrator IC card 40-3 as offset values for each of the seven decryption key numbers obtained up to the above processing. Further, 4 bytes are read from the decryption key table 43-4 of the reception side administrator IC card 40-3 with the same offset value (S3614). The 4 bytes are combined to form a DES decryption key (S3615).
However, if the decryption key number is larger than 252 and 4 bytes cannot be read, the missing part is read from the beginning of the decryption key table 40-3 and the decryption key table 40-4.
[0071]
Next, the decryption unit 36 decrypts the received seven divided files and creates seven padded temporary divided files.
The decryption unit 36 performs the process of DES decrypting the seven divided files in the CBC mode using the seven DES decryption keys and the initial values obtained previously, and generates seven padded temporary divided files. (S3616).
The decryption unit 36 outputs the generated seven padded temporary divided files to the dummy data removal unit 37 (S3617).
[0072]
The dummy data removal unit 37 performs dummy data removal processing on the seven padded temporary divided files generated by the decoding unit 36 to generate a temporary divided file. The generated temporary division file is output to the data integration unit 38.
FIG. 31 is a diagram showing a flowchart of a specific example of a process in which the dummy data removing unit 37 removes dummy data.
As shown in FIG. 31, the dummy data removing unit 37 acquires the file size of the padded temporary divided file, reads data from the padded temporary divided file, and writes the data to the temporary divided file up to a file size of −8 bytes ( S3701). When the last 8 bytes of the file are written, the last 8 bytes of the file are read one byte at a time, and search is performed until 0x00,..., 0x00, 0x80 are obtained (S3702). The dummy data removal unit 37 writes out the portion up to the point before the found point in the temporary division file, and generates a temporary division file (S3703).
The dummy data removal unit 37 outputs the generated seven temporary division files to the data integration unit 38 (S3704).
[0073]
The data integration unit 38 integrates the seven temporary division files generated by the dummy data removal unit 37 based on the combination pattern, generates a single combination file, and divides the generated single combination file. Then, two processes of the division process for restoring to the original plurality of data files are performed.
[0074]
FIG. 32 is a flowchart illustrating a specific example of processing in which the data integration unit 38 combines the seven temporary division files.
As shown in FIG. 32, the data integration unit 38 combines the partial combination pattern table 42-3 and the partial combination pattern table 42-4 stored in the IC card 40-3 by the IC card reading unit 32, and combines the combined patterns. A table is generated (S3801). The contents of the generated combined pattern table are the same as the contents of the aforementioned divided pattern table.
[0075]
The data integration unit 38 sets the division pattern number extracted from the temporary dummy file padded by the dummy file removal unit 34 as a combined pattern number (S3802). Then, referring to the generated connection pattern table, the connection pattern corresponding to the previous connection pattern number is determined (S3803), and the seven temporary division files are combined according to the determined connection pattern to generate one connection file. (S3804).
As described above, the seven temporarily divided files are combined and one combined file is generated.
[0076]
The data integration unit 38 obtains a hash value from the combined file generated by the previous combining process (S3805). The obtained hash value is matched with the hash value extracted by the dummy data removing unit 37 (S3806). If the hash values do not match, there is a possibility that proper combination processing has not been performed, so the generated file is deleted and the processing is terminated (S3807).
In step S3806, if the hash values match, the data integration unit 38 divides the combined file based on the number of original files written at the beginning of the combined file, the original file name, and the original file size. Then, a division process for restoring the original plurality of data files is performed (S3808). The data integration unit 38 outputs the restored plurality of original data files (S3809).
[0077]
As described above, the receiving device 30 restores and outputs a plurality of original data files from the received seven divided files, one dummy file, and the control file.
[0078]
The operation of the receiving device 30 at this time will be described together.
FIG. 33 shows the data flow of the receiving apparatus.
The receiving-side administrator loads the receiving-side administrator IC card 40-3 onto the receiving device 30, and the IC card reading unit 32 authenticates the owner of the IC card 40-3 and authenticates the user. The manager transmission / reception side identification unit 33 identifies the ID and name of the reception side manager based on the card folder ID and name. When the identification is performed, the IC card reader 32 reads the setting file 41-3 and the setting file 41-4 from the two IC cards 40-3 and the IC card 40-4, the partial division pattern table 42-3 and The partial division pattern table 42-4, the encryption key table 43-3, and the encryption key table 43-4 are read and output to the electronic signature unit 35, the data integration unit 38, and the decryption unit 36, respectively.
Eight files transmitted through the transmission path 20, that is, seven divided files, one dummy file, and a control file are received by the receiving unit 31 of the receiving device 30, and the dummy file is a dummy file removing unit 34. Thus, the temporary dummy file is specified by using the control file, is decrypted by the decryption unit 36, and is padded. From the padded temporary dummy file and control file, the dummy file removal unit 34 extracts the signature, the division pattern number, and the initial value of the encryption process. From the extracted signature, the electronic signature unit 35 extracts the signature path, the initial encryption key encryption, and the hash value of the combined file. From the signature path, the user / manager transmission / reception side identification unit 33 identifies the transmission side user, the transmission side administrator, and the reception side administrator.
[0079]
The seven split files are decrypted by the decryption unit 36 using the decryption key obtained by converting from the initial value and the initial encryption key number extracted earlier, and the seven padded temporary split files are obtained. Thus, the dummy data removing unit 37 performs processing for removing dummy data, resulting in seven temporarily divided files, and the data integrating unit 38 forms one combined file. When the hash value of the generated combined file is the same as the extracted hash value, the combined file is divided by the data integration unit 38 and restored to the original plurality of data files. Is output.
[0080]
The overall operation of the communication system 1 will be described together.
A plurality of data files to be transmitted are subjected to predetermined conversion by the transmission apparatus 10 based on the encryption key table and the division pattern table stored in the two IC cards 40-1 and 40-2. The eight files and the control file that are transferred to the receiving device 30 through the transmission path 20 as a single file and a control file are sent to the decryption key table stored in the IC card 40-3 by the receiving device 30. Predetermined conversion is performed based on the integrated pattern table, and the original data files are restored and output.
[0081]
As described above, in the communication system 1 according to the present embodiment, the transmission device 10 generates the encryption key stored in the two IC cards when performing the process of encrypting the data file to be transmitted. The encryption key table to be used and the division pattern table stored in the two IC cards when performing the division processing are used.
[0082]
For this reason, if there are no two IC cards on the transmission side, the data file to be transmitted cannot be encrypted or divided by the transmission device 50. As a result, when transmitting a data file to be transmitted, two related IC cards are required. In addition, processing for dividing the data file to be transmitted, processing for adding a dummy file, and adding dummy data High security is achieved by performing the process to encrypt and the process to encrypt.
In addition, the need for two people with two related IC cards is one of the solutions for preventing misuse, abuse, tampering with confidential data, peeping, leakage, etc.
[0083]
It should be noted that the present invention is not limited to the above-described embodiment, and various suitable modifications can be made.
For example, in the present embodiment, the communication system uses two IC cards on the transmission side and one IC card on the reception side. However, the communication uses one IC card on the transmission side and two IC cards on the reception side. It may be a system.
[0084]
In the embodiment described above, the IC card is used. However, this embodiment is not necessary. For example, a magnetic card may be used. Since magnetic cards are generally popular, this system can be constructed with devices already in use.
[0085]
In the above-described embodiment, the divided encryption key and encryption key table are stored in the IC card. However, the present invention is not limited to this, and the encryption method and the decryption method may be stored. It may be arbitrary data related to the encryption process and the decryption process.
[0086]
In the above-described embodiment, the division pattern table having the contents shown in FIG. 4 is used. However, the contents of the division pattern table are not limited to this.
[0087]
In the embodiment described above, the division pattern table is divided into two. However, the division pattern table is not limited to this. For example, it may be arbitrarily divided into a plurality of parts and sorted in order.
[0088]
In the above-described embodiment, the divided pattern table is stored in the IC card. However, this is not necessary. For example, the division method may be stored.
[0089]
In the above-described embodiment, the process of dividing the file into seven is performed. However, the process is not limited to the process of dividing the file into seven. For example, it may be divided into a plurality of arbitrary files.
[0090]
In the above-described embodiment, the process of sequentially dividing and dividing the combined file for each predetermined byte is performed. However, the dividing method may not be the embodiment described above. For example, it may be divided randomly or may not be divided.
[0091]
In the above-described embodiment, the data file to be transmitted is encrypted by the secret key encryption method. However, the encryption method may not be the secret key encryption method. For example, a public key cryptosystem may be used.
[0092]
In the above-described embodiment, the DES encryption process is performed on the transmission target data file. However, the encryption method may not be the DES method. For example, it is not limited to the DES method. For example, triple DES with higher cipher strength, FEAL (fast encryption algorithm) using 128-bit or 64-bit key, MISTY, RSA cryptography, discrete logarithm problem, which is sufficiently secure against differential cryptanalysis and linear cryptanalysis Elliptic curve cryptography, elliptic ElGamal cryptography, elliptic RAS cryptography, probability cryptography, Goldwasser-Micali cryptography, higher-order remainder cryptography, OAEP cryptography, Merkle-Hellman cryptography, McEliece cryptography, PGP cryptography, GPG cryptography, etc. .
[0093]
In the above-described embodiment, the encryption process is performed on the data file to be transmitted. However, the present invention is not limited to the block encryption method. For example, a stream encryption method may be used.
[0094]
In the above-described embodiment, the IC card is connected to the transmission device and the reception device, but this is not a limitation. For example, they may be separated via a network. A contact type IC card or a non-contact type IC card may be used.
[0095]
In the above-described embodiment, authentication is performed using a password, but the present invention is not limited to this. For example, the biometric features of the person such as a fingerprint, a voiceprint, and a face shape may be used as the authentication means. Further, zero-knowledge dialogue proof that interactively proves 1-bit information that certain information has a certain property without receiving any other extra information may be used.
[0096]
In the embodiment described above, the electronic signature is used. However, the present invention is not limited to this. For example, there is no need for an electronic signature. The electronic signature may use another electronic signature method, for example, an ESIGN signature, an Elgamal signature, a DSA signature, or the like.
[0097]
In the embodiment described above, the IC card is used. However, the contents of the IC card are not limited to this form. For example, the contents of the IC card may be other information.
[0098]
Further, in the above-described embodiment, the processing order of the transmitting device is as follows: IC card reading processing, user / administrator transmission / reception side identification processing, data combination processing, data division processing, dummy file addition processing, dummy data addition processing, Although the encryption process and the transmission process are performed in this order, the order may not be the same.
[0099]
In the above-described embodiment, the processing order of the receiving device is as follows: reception processing, IC card reading processing, user / administrator transmission / reception side identification processing, dummy file removal processing, digital signature processing, decryption processing, dummy data Although the removal process, the data integration process, and the data division process are performed in this order, the order may not be used.
[0100]
In the above-described embodiment, the dummy data and the dummy file are added and removed. However, the method for adding the dummy file and the dummy data is not limited to this mode. It may be meaningful dummy data, random dummy data, a meaningful dummy file, or a completely random dummy file.
[0101]
In the above-described embodiment, dummy data and dummy files are added and removed. However, the present invention is not limited to this. The dummy data and the dummy file need not be added.
[0102]
【The invention's effect】
Thus, according to the present invention, a communication system with higher security can be provided.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an overall configuration of a communication system according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of a communication system according to an embodiment of the present invention.
FIG. 3 is a block diagram showing data stored in a transmission-side user IC card of the communication system shown in FIG. 2;
FIG. 4 is a diagram showing a division pattern table in the IC card shown in FIG. 3;
FIG. 5 is a diagram showing that the IDs and names of users and managers on the transmission / reception side stored from the IC card of the communication system shown in FIG. 2 are read.
6 is a flowchart of processing of an IC card reader of the communication system shown in FIG.
7 is a flowchart of a specific example of processing of a user / administrator transmission / reception side specifying unit of the communication system shown in FIG. 2;
FIG. 8 is a flowchart of a specific example of processing in a data division unit of the communication system shown in FIG. 2;
FIG. 9 is a diagram showing a signature generated by an electronic signature unit of the transmission device of the communication system shown in FIG. 2;
FIG. 10 is a flowchart of a specific example of processing of the electronic signature unit of the communication system shown in FIG.
11 is a flowchart of data storage in a hash value storage unit of an electronic signature unit of the communication system shown in FIG.
12 is a flowchart of data storage in a key storage unit of an electronic signature unit of the communication system shown in FIG.
13 is a flowchart of data storage in the signature path storage unit of the electronic signature unit of the communication system shown in FIG.
14 is a diagram showing that a dummy file is added by a dummy file adding unit of the transmission apparatus of the communication system shown in FIG. 2;
FIG. 15 is a flowchart of a specific example of processing of a dummy file addition unit of the communication system shown in FIG. 2;
16 is a diagram showing that dummy data is added to a file by a dummy data adding unit of the transmission device of the communication system shown in FIG. 2;
FIG. 17 is a flowchart of a specific example of processing of the dummy data adding unit of the communication system shown in FIG. 2;
18 is a diagram showing that a plurality of files are encrypted by the encryption unit of the transmission apparatus of the communication system shown in FIG. 2. FIG.
FIG. 19 is a flowchart of a specific example of a process for creating a control file of the encryption unit of the communication system shown in FIG. 2;
20 is a flowchart of a specific example of a process for encrypting a temporarily divided file of an encryption unit of the communication system illustrated in FIG. 2;
FIG. 21 is a flowchart of a specific example of a process for encrypting a temporary dummy file of the encryption unit of the communication system shown in FIG. 2;
FIG. 22 is a diagram for explaining the data processing flow of the transmission apparatus of the communication system shown in FIG. 2;
FIG. 23 is a flowchart of a specific example of processing for specifying a user and an administrator on the transmission / reception side of the user / manager transmission / reception side specifying unit of the communication system shown in FIG. 2;
24 is a flowchart of a specific example of a process for specifying a dummy file in the dummy file removal unit of the communication system shown in FIG. 2;
FIG. 25 is a flowchart of a specific example of processing of a decoding unit of the communication system shown in FIG.
FIG. 26 is a flowchart of a specific example of processing for generating an electronic signature of the dummy file removal unit of the communication system shown in FIG.
27 is a diagram showing a flowchart of a specific example of processing for decrypting the electronic signature of the electronic signature unit of the communication system shown in FIG. 2. FIG.
28 is a flowchart of processing for decrypting an initial encryption key number recorded in a key storage unit of an electronic signature unit of the communication system shown in FIG. 2;
FIG. 29 is a flowchart of processing for decrypting the hash value of the combined file recorded in the hash value storage unit of the digital signature unit of the communication system shown in FIG. 2;
FIG. 30 is a flowchart of a specific example of processing in which the decoding unit of the communication system illustrated in FIG. 2 decodes the divided file.
FIG. 31 is a flowchart of a specific example of a process in which the dummy data removing unit of the communication system shown in FIG. 2 removes dummy data.
32 is a flowchart of a specific example of processing in which the data integration unit of the communication system illustrated in FIG. 2 combines seven temporarily divided files.
33 is a diagram for explaining the data processing flow of the receiving device of the communication system shown in FIG. 2;
[Explanation of symbols]
1. Communication system
10: Transmitter
11: IC card reader 12: User / administrator transmission / reception side identification unit
13: Data division unit, 14 ... Electronic signature unit
15 ... Dummy file addition unit, 16 ... Dummy data addition unit
17: Encryption unit, 18 ... Transmission unit
20 ... transmission path
30 ... Receiver
31 ... Receiving unit, 32 ... IC card reading unit
33: User / administrator transmission / reception side identification unit 34: Dummy file removal unit
35 ... Data integration unit, 36 ... Decoding unit
37 ... Dummy data removal unit, 38 ... Data integration unit
40-1 ... transmission side user IC card, 40-2 ... transmission side administrator IC card
40-3. Receiving side administrator IC card
41-1 ... Sender user setting file
41-2 ... Sending side administrator setting file
41-3. Receiving side administrator setting file
42-1 ... Transmission side user partial division pattern table
42-2 ... Sending side administrator partial division pattern table
42-3... Reception side administrator partial combination pattern table
42-4... Reception side administrator partial combination pattern table
43-1 ... Sending side user encryption key table
43-2 ... Sending side administrator encryption key table
43-3 ... Receiver administrator decryption key table
43-4. Receiving-side administrator decryption key table

Claims (2)

暗号化装置と復号化装置と、
を有し、
前記暗号化装置の側に設けられた第1の情報記憶装置には、暗号鍵に関わるデータを複数に分割した規定のバイト長の乱数で求められたバイナリデータのテーブルからなる部分暗号鍵データ、及び、暗号化対象のデータを複数のファイル番号により区分される複数の分割ファイルに分割する際において、上記ファイル番号及びそのファイル番号における分割ファイルのデータ量を示す分割パターンと、その分割パターンのバリエーションを示す分割パターン番号とからなる分割パターンテーブルの一部を示す複数の部分分割パターンテーブルが記憶され、
前記復号化装置の側に設けられた第2の情報記憶装置には、復号鍵に関わるデータを複数に分割した部分復号鍵データ、及び、前記部分分割パターンテーブルと同じ内容であって前記複数の分割ファイルを結合するためのパターンの一部を示す複数の部分結合パターンテーブルが記憶されている
通信システムであって、
前記暗号化装置は、
前記第1の情報記憶装置から、前記規定のバイト長数以内の乱数を基にしたオフセット値で前記テーブルのバイナリデータ中より選択して読み取った複数の所定のバイト長の前記部分暗号鍵データを統合し、前記統合した部分暗号鍵データに基づいて暗号鍵を生成する暗号鍵生成手段と、
前記暗号化対象のデータとは無関係のダミーファイルを前記暗号化対象のデータに付加するダミーファイル付加手段と、
前記第1の情報記憶装置から読み取った複数の前記部分分割パターンテーブルを結合して分割パターンテーブルを生成し、生成された乱数を前記分割パターン番号としたものに対応する前記分割パターンテーブルの分割パターンに基づき、前記暗号化対象のデータを複数の分割ファイルに分割するデータ分割手段と、
前記生成された暗号鍵に基づいて、前記複数の分割ファイルを暗号化するとともに、前記ダミーファイルのハッシュ値を利用した前記ダミーファイルとは別のコントロールファイル前記ダミーファイルを特定するために生成する暗号化手段と、
前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを送信する送信手段と、
を有し、
前記復号化装置は、
前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを受信する受信手段と、
前記第2の情報記憶装置から読み取った複数の前記部分復号鍵データを統合し、前記統合した部分復号鍵データに基づいて復号鍵を生成する復号鍵生成手段と、
受信されたコントロールファイルに基づいて、前記ダミーファイル、及び、暗号化された前記複数の分割ファイルの中から前記ダミーファイルを特定して除去して、暗号化された前記複数の分割ファイルを出力するダミーファイル除去手段と、
前記生成された復号鍵に基づいて、上記出力され暗号化された前記複数の分割ファイルを復号化する復号化手段と、
前記第2の情報記憶装置から読み取った複数の前記部分結合パターンテーブルを結合して、前記分割パターンテーブルと同じ内容の結合パターンテーブルを生成し、前記結合パターンテーブルに基づいて前記複数の分割ファイルを結合することにより元の上記暗号化対象のデータに復元するデータ統合手段と、
を有する
通信システム。
An encryption device and a decryption device;
Have
In the first information storage device provided on the side of the encryption device, partial encryption key data comprising a table of binary data obtained by random numbers of a prescribed byte length obtained by dividing data related to an encryption key into a plurality of pieces, When dividing the data to be encrypted into a plurality of divided files divided by a plurality of file numbers, a division pattern indicating the file number and the data amount of the divided file at the file number, and variations of the division pattern A plurality of partial division pattern tables indicating a part of the division pattern table consisting of division pattern numbers indicating
The second information storage device provided on the decryption device side includes partial decryption key data obtained by dividing data related to a decryption key into a plurality of pieces, and the same content as the partial division pattern table, and the plurality of pieces A communication system in which a plurality of partial combination pattern tables showing a part of patterns for combining divided files are stored,
The encryption device is:
The partial encryption key data of a plurality of predetermined byte lengths selected and read from the binary data of the table with an offset value based on a random number within the prescribed number of byte lengths from the first information storage device. An encryption key generating means for integrating and generating an encryption key based on the integrated partial encryption key data;
Dummy file adding means for adding a dummy file unrelated to the data to be encrypted to the data to be encrypted;
A plurality of partial division pattern tables read from the first information storage device are combined to generate a division pattern table, and a division pattern of the division pattern table corresponding to the generated random number as the division pattern number Data dividing means for dividing the data to be encrypted into a plurality of divided files,
Based on the encryption key the generated, with encrypting the plurality of divided files, generated to identify the dummy file with a different control file and the dummy file using the hash value of the dummy file Encryption means;
Transmitting means for transmitting the dummy file, the plurality of encrypted divided files, and the control file;
Have
The decoding device
Receiving means for receiving the dummy file, the plurality of encrypted divided files, and the control file;
Decryption key generating means for integrating a plurality of the partial decryption key data read from the second information storage device and generating a decryption key based on the integrated partial decryption key data;
Based on the received control file, the dummy file is identified and removed from the plurality of encrypted divided files, and the plurality of encrypted divided files are output. Dummy file removal means,
Decryption means for decrypting the plurality of divided encrypted output files based on the generated decryption key;
The plurality of partial combination pattern tables read from the second information storage device are combined to generate a combined pattern table having the same contents as the divided pattern table, and the plurality of divided files are generated based on the combined pattern table. A data integration means for restoring the original data to be encrypted by combining the data;
A communication system.
暗号化装置と復号化装置とを有する通信システムにおいて、暗号化ステップと復号化ステップとを有する通信方法であって、
前記暗号化装置の側に設けられた第1の情報記憶装置には、暗号鍵に関わるデータを複数に分割した規定のバイト長の乱数で求められたバイナリデータのテーブルからなる部分暗号鍵データ、及び、暗号化対象のデータを複数のファイル番号により区分される複数の分割ファイルに分割する際において、上記ファイル番号及びそのファイル番号における分割ファイルのデータ量を示す分割パターンと、その分割パターンのバリエーションを示す分割パターン番号とからなる分割パターンテーブルの一部を示す複数の部分分割パターンテーブルが記憶され、
前記復号化装置の側に設けられた第2の情報記憶装置には、復号鍵に関わるデータを複数に分割した部分復号鍵データ、及び、前記部分分割パターンテーブルと同じ内容であって前記複数の分割ファイルを結合するためのパターンの一部を示す複数の部分結合パターンテーブルが記憶されており、
前記暗号化ステップは、
前記第1の情報記憶装置から、前記規定のバイト長数以内の乱数を基にしたオフセット値で前記テーブルのバイナリデータ中より選択して読み取った複数の所定のバイト長の前記部分暗号鍵データを統合し、前記統合した部分暗号鍵データに基づいて暗号鍵を生成する暗号鍵生成工程と、
前記暗号化対象のデータとは無関係のダミーファイルを前記暗号化対象のデータに付加するダミーファイル付加工程と、
前記第1の情報記憶装置から読み取った複数の前記部分分割パターンテーブルを結合して分割パターンテーブルを生成し、生成された乱数を前記分割パターン番号としたものに対応する前記分割パターンテーブルの分割パターンに基づき、前記暗号化対象のデータを複数の分割ファイルに分割するデータ分割工程と、
前記生成された暗号鍵に基づいて、前記複数の分割ファイルを暗号化するとともに、前記ダミーファイルのハッシュ値を利用した前記ダミーファイルとは別のコントロールファイル前記ダミーファイルを特定するために生成する暗号化工程と、
前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを送信する送信工程と、
を有し、
前記復号化ステップは、
前記ダミーファイル、暗号化された前記複数の分割ファイル、及び、前記コントロールファイルを受信する受信工程と、
前記第2の情報記憶装置から読み取った複数の前記部分復号鍵データを統合し、前記統合した部分復号鍵データに基づいて復号鍵を生成する復号鍵生成工程と、
受信されたコントロールファイルに基づいて、前記ダミーファイル、及び、暗号化された前記複数の分割ファイルの中から前記ダミーファイルを特定して除去して、暗号化された前記複数の分割ファイルを出力するダミーファイル除去工程と、
前記生成された復号鍵に基づいて、上記出力され暗号化された前記複数の分割ファイルを復号化する復号化工程と、
前記第2の情報記憶装置から読み取った複数の前記部分結合パターンテーブルを結合して、前記分割パターンテーブルと同じ内容の結合パターンテーブルを生成し、前記結合パターンテーブルに基づいて前記複数の分割ファイルを結合することにより元の上記暗号化対象のデータに復元するデータ統合工程と、
を有する
通信方法。
In a communication system having an encryption device and a decryption device, a communication method having an encryption step and a decryption step,
In the first information storage device provided on the side of the encryption device, partial encryption key data comprising a table of binary data obtained by random numbers of a prescribed byte length obtained by dividing data related to an encryption key into a plurality of pieces, When dividing the data to be encrypted into a plurality of divided files divided by a plurality of file numbers, a division pattern indicating the file number and the data amount of the divided file at the file number, and variations of the division pattern A plurality of partial division pattern tables indicating a part of the division pattern table consisting of division pattern numbers indicating
The second information storage device provided on the decryption device side includes partial decryption key data obtained by dividing data related to a decryption key into a plurality of pieces, and the same content as the partial division pattern table, and the plurality of pieces A plurality of partial combination pattern tables indicating a part of patterns for combining divided files are stored,
The encryption step includes
The partial encryption key data of a plurality of predetermined byte lengths selected and read from the binary data of the table with an offset value based on a random number within the prescribed number of byte lengths from the first information storage device. An encryption key generation step of integrating and generating an encryption key based on the integrated partial encryption key data;
A dummy file adding step of adding a dummy file unrelated to the data to be encrypted to the data to be encrypted;
A plurality of partial division pattern tables read from the first information storage device are combined to generate a division pattern table, and a division pattern of the division pattern table corresponding to the generated random number as the division pattern number A data dividing step of dividing the data to be encrypted into a plurality of divided files;
Based on the encryption key the generated, with encrypting the plurality of divided files, generated to identify the dummy file with a different control file and the dummy file using the hash value of the dummy file Encryption process;
A transmission step of transmitting the dummy file, the plurality of encrypted divided files, and the control file;
Have
The decoding step includes
Receiving the dummy file, the plurality of encrypted divided files, and the control file;
Integrating a plurality of the partial decryption key data read from the second information storage device, and generating a decryption key based on the integrated partial decryption key data;
Based on the received control file, the dummy file is identified and removed from the plurality of encrypted divided files, and the plurality of encrypted divided files are output. Dummy file removal process,
Based on the generated decryption key, a decryption step of decrypting the plurality of output and encrypted divided files;
The plurality of partial combination pattern tables read from the second information storage device are combined to generate a combined pattern table having the same contents as the divided pattern table, and the plurality of divided files are generated based on the combined pattern table. A data integration step of restoring the original data to be encrypted by combining the data,
A communication method.
JP2001131057A 2001-04-27 2001-04-27 Communications system Expired - Lifetime JP4488647B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001131057A JP4488647B2 (en) 2001-04-27 2001-04-27 Communications system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001131057A JP4488647B2 (en) 2001-04-27 2001-04-27 Communications system

Publications (2)

Publication Number Publication Date
JP2002330122A JP2002330122A (en) 2002-11-15
JP4488647B2 true JP4488647B2 (en) 2010-06-23

Family

ID=18979310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001131057A Expired - Lifetime JP4488647B2 (en) 2001-04-27 2001-04-27 Communications system

Country Status (1)

Country Link
JP (1) JP4488647B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006003711A1 (en) * 2004-07-05 2006-01-12 Hitachi Ulsi Systems Co.,Ltd. Prepaid card, settlement system thereof, and electronic key
JP4305481B2 (en) 2006-08-29 2009-07-29 ブラザー工業株式会社 Communication system, management device and information processing device
JP4479703B2 (en) 2006-08-29 2010-06-09 ブラザー工業株式会社 Communication system and management device
JP6285536B2 (en) * 2013-04-18 2018-02-28 リソフトデブ,インコーポレイテッド System and method for encrypting data

Also Published As

Publication number Publication date
JP2002330122A (en) 2002-11-15

Similar Documents

Publication Publication Date Title
EP3289723B1 (en) Encryption system, encryption key wallet and method
US8892881B2 (en) Split key secure access system
EP1255372B1 (en) Method and system for data integrity protection
AU2008327506B2 (en) Method and system for encryption of data
US8995653B2 (en) Generating a secret key from an asymmetric private key
US20090046859A1 (en) Methods for the generation of identical symmetrical cryptographic keys
CN105871549B (en) A kind of digital signal encryption processing method
CN1778065B (en) Security method and apparatus using biometric data
US6640303B1 (en) System and method for encryption using transparent keys
JP4261724B2 (en) Signature data generation apparatus and image verification apparatus
KR20140087036A (en) dynamic encryption method
JP4729806B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, AND COMMUNICATION SYSTEM
JP4488647B2 (en) Communications system
CN105959106B (en) A kind of low-complexity digital encryption method
CN107682156A (en) A kind of encryption communication method and device based on SM9 algorithms
JP4736232B2 (en) Transmitting apparatus, receiving apparatus, and communication system
JP4684463B2 (en) Transmitting apparatus, receiving apparatus, and communication system
KR102038217B1 (en) Information security system through encrypting and decrypting personal data and contents in smart device based on Lightweight Encryption Algorithm, method thereof and computer recordable medium storing program to perform the method
JP2001142396A (en) Ciphering device, its method, ciphering/deciphering device, its method and communication system
JP4802388B2 (en) ENCRYPTION DEVICE, DECRYPTION DEVICE, AND COMMUNICATION SYSTEM
Erondu et al. An encryption and decryption model for data security using vigenere with advanced encryption standard
WO2002089397A1 (en) Data transmission method
JP4774626B2 (en) Data transmitting apparatus, data receiving apparatus and communication system
KR20020025343A (en) Apparatus and Method for encryption and decryption of file using base key and one-time key
Oberoi et al. A Survey on Cryptography, Encryption and Compression Techniques.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080327

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090608

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100330

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130409

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140409

Year of fee payment: 4