(57)【要約】【課題】本発明は、内外ネットワークを遮断でき、ネットワークセキュリティを自由かつ容易に設定できるゲートウエイ装置およびゲートウエイシステムを提供する。【解決手段】ゲートウエイ装置１は内部側コンピュータ２と、外部側コンピュータ３と、これらの間にあってデータの受け渡しを行う共有メモリ４とを備える。内部側コンピュータ２は内部側コンピュータ２によって共有メモリ４に書き込まれた送信用のデータを暗号化する暗号化部５と、外部側コンピュータ３によって受信されて共有メモリ４に書き込まれたデータを復号化する復号化部６とを有する。共有メモリ４が内外ネットワーク９１，９０を遮断し、共有メモリ４に書き込まれるデータを操作することにより、ネットワークセキュリティを確保できる。【選択図】図２
2018116123.tif 000002
【特許請求の範囲】
【請求項１】
外部ネットワークに対してデータを送受信する外部側コンピュータと、
内部ネットワークに対してデータを送受信する内部側コンピュータと、
前記内部側コンピュータと前記外部側コンピュータとの間にあってデータの受け渡しを行う共有メモリと、を備え、
前記内部側コンピュータは、データを所定の条件に沿って前記共有メモリ上で暗号化する暗号化部と、暗号化されたデータを所定の条件に沿って復号化する復号化部と、を有していることを特徴とするゲートウエイ装置。
【請求項２】
前記暗号化部は、前記内部側コンピュータにより前記共有メモリに書き込まれたデータを並べ替えて暗号化し、
前記復号化部は、前記外部ネットワークを介して受信され、前記外部側コンピュータにより前記共有メモリに書き込まれたデータを並べ替えて復号化する、請求項１に記載のゲートウエイ装置。
【請求項３】
前記内部側コンピュータは、前記暗号化部がデータを並べ替える暗号化アルゴリズムを複数記憶しており、前記暗号化部が前記複数の暗号化アルゴリズムのいずれに基づいて暗号化するかについての情報を送信用のデータに付け加える、請求項１または請求項２に記載のゲートウエイ装置。
【請求項４】
請求項１記載のゲートウエイ装置の複数個が１つの外部ネットワークに接続され、
前記ゲートウエイ装置の各々は、異なる内部ネットワークに接続されている、ゲートウエイシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲートウエイ装置およびゲートウエイシステムに関する。
【背景技術】
【０００２】
従来、互いに異なるネットワークに接続された２台のコンピュータ間を共有メモリで接続することにより、ネットワーク間を遮断し、通したくないパケットデータを遮断するための装置が知られている（例えば、特許文献１参照）。
【０００３】
また、内部セキュリティ部と外部セキュリティ部とを共有メモリによって接続し、共有メモリによって仮想エアギャップを構成するシステムにより、コンピュータとインターネットのセキュリティを確保する技術が知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５４５７９１６号
【特許文献２】米国特許第８９８４２７５号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した特許文献１や特許文献２に示されるような装置やシステムにおいては、ネットワーク層を分離できるものの、通信データの保護のための暗号化については、なお改善の余地がある。すなわち、市販のセキュリティソフトを用いる場合、悪意を持った攻撃側との攻防のために、常にアップデートが必要である。また、ネットワークにおけるデータの保護を考慮した送受信プログラムの作成は、ＴＣＰ／ＩＰなどのネットワークライブラリを駆使したソフトウェアの作成が必要であり、当業者以外の者にとってハードルが高い作業である。
【０００６】
本発明は、上記課題を解消するものであって、共有メモリ上でのデータ操作を可能とし、ネットワークセキュリティを自由に作成できるゲートウエイ装置およびゲートウエイシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を達成するために、本発明のゲートウエイ装置は、外部ネットワークに対してデータを送受信する外部側コンピュータと、内部ネットワークに対してデータを送受信する内部側コンピュータと、内部側コンピュータと外部側コンピュータとの間にあってデータの受け渡しを行う共有メモリと、を備え、内部側コンピュータは、データを所定の条件に沿って共有メモリ上で暗号化する暗号化部と、暗号化されたデータを所定の条件に沿って復号化する復号化部と、を有していることを特徴とする。
【０００８】
このゲートウエイ装置において、暗号化部は、内部側コンピュータにより共有メモリに書き込まれたデータを並べ替えて暗号化し、復号化部は、外部ネットワークを介して受信され、外部側コンピュータにより共有メモリに書き込まれたデータを並べ替えて復号化してもよい。
【０００９】
このゲートウエイ装置において、内部側コンピュータは、暗号化部がデータを並べ替える暗号化アルゴリズムを複数記憶しており、暗号化部が複数の暗号化アルゴリズムのいずれに基づいて暗号化するかについての情報を送信用のデータに付け加えてもよい。
【００１０】
本発明のゲートウエイシステムは、上記ゲートウエイ装置の複数個が１つの外部ネットワークに接続され、ゲートウエイ装置の各々は、異なる内部ネットワークに接続されていることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、共有メモリを介在してデータの受け渡しを行うに、共有メモリに書き込むデータを操作して暗号化するので、ネットワークセキュリティを独自かつ容易に設定できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態に係るゲートウエイ装置を外部ネットワークによって接続したシステム図。
【図２】同ゲートウエイ装置のブロック構成図。
【図３】同ゲートウエイ装置の機能を示すブロック構成図。
【図４】同ゲートウエイ装置によるデータの送受信を説明する模式図。
【図５】同ゲートウエイ装置によるデータの送信処理のフローチャート。
【図６】同ゲートウエイ装置によるデータの受信処理のフローチャート。
【図７】他の実施形態に係るゲートウエイ装置の機能を示すブロック構成図。
【発明を実施するための形態】
【００１３】
以下、本発明の一実施形態に係るゲートウエイ装置について図１乃至図６を参照して説明する。図１に示すように、ゲートウエイ装置１は、少なくとも２つが互いに外部ネットワーク９０によって接続されて通信ネットワークシステムであるゲートウエイシステム１０を構成する。ゲートウエイ装置１の各々は、内部ネットワーク９１（ネットワークＡ系列），９２（ネットワークＢ系列）間のデータ通信に供される。３個以上のゲートウエイ装置１が１つの外部ネットワーク９０に接続されてもよく、各ゲートウエイ装置１は、それぞれ異なる内部ネットワーク９１，９２，・・に接続される。これら全体によりゲートウエイシステム１０が構成される。
【００１４】
内部ネットワーク９１，９２は、例えばセキュリティが要求されるイントラネットであり、外部ネットワーク９０は、例えば公衆に属するインターネットである。一の内部ネットワーク９１と、他の内部ネットワーク９２とは、互いに直接通信をすることができない個別のネットワークである。各ゲートウエイ装置１は、内部側コンピュータ２と、外部側コンピュータ３と、内部側コンピュータ２と外部側コンピュータ３との間にあってデータの受け渡しを行う共有メモリ４とを備えている。内部側コンピュータ２と外部側コンピュータ３は、それぞれ個別のＣＰＵ（Central Processing Unit）を有して構成されている。ＣＰＵは、コンピュータにおける制御、演算、情報転送を司る。
【００１５】
一方の内部ネットワーク９１とこれに接続されたゲートウエイ装置１の内部側コンピュータ２は、固有の通信空間である内部側領域ＩＡを構成する。他方の内部ネットワーク９２とこれに接続された他方のゲートウエイ装置１の内部側コンピュータ２も、同様に内部側領域ＩＢを構成する。これらの内部側領域ＩＡ，ＩＢは、互いに別個の通信空間を構成する。２つの外部側コンピュータ３および外部ネットワーク９０は、固有の通信空間である外部側領域ＥＸを構成する。
【００１６】
内部側領域ＩＡと外部側領域ＥＸとの間、および内部側領域ＩＢと外部側領域ＥＸとの間は、それぞれ、例えばＴＣＰ／ＩＰにおけるネットワーク層が遮断されており、データ通信はネットワーク層によらずに共有メモリ４を介して行われる。つまり、内部ネットワーク９１，９２間のデータ通信は、２つの共有メモリ４と外部側領域ＥＸとを介して行われる。
【００１７】
図２を参照して、ゲートウエイ装置１の詳細を説明する。内部側コンピュータ２は、内部ネットワーク９１に対してデータを送受信し、外部側コンピュータ３は、外部ネットワーク９０に対してデータを送受信する。共有メモリ４は、例えばデュアルポートＲＡＭを用いて構成される。
【００１８】
内部側コンピュータ２は、共有メモリ４を介して外部側コンピュータ３に渡す送信用のデータを共有メモリ４に書き込む書込部２１と、その送信用のデータを暗号化する暗号化部５と、共有メモリ４を介して外部側コンピュータ３から受け取った受信データを復号化する復号化部６とを有する。暗号化部５は、書込部２１によって共有メモリ４に書き込まれた送信用のデータを読み込み、その読み込んだデータを並べ替えて共有メモリ４に書き込むことにより暗号化する。復号化部６は、外部側コンピュータ３によって受信されて共有メモリ４に書き込まれたデータを共有メモリ４から読み込み、そのデータを並べ替えて復号化する。内部側コンピュータ２は、暗号化部５が参照する暗号化アルゴリズムと復号化部６が参照する復号化アルゴリズムとが記憶されたメモリ７を有している。
【００１９】
書込部２１、暗号化部５、および復号化部６の各部は、内部側コンピュータ２のＣＰＵが所定のプログラム（ソフトウエア）に基づく処理を実行することにより達成される。プログラムは、例えば各部に対応するサブルーチンの形で、内部側コンピュータ２が備える所定のメモリに記憶されている。
【００２０】
外部側コンピュータ３は、外部ネットワーク９０から受信したデータを共有メモリ４に書き込む書込部３１と、共有メモリ４から送信用のデータを読み込み、そのデータを外部ネットワーク９０に渡す読込部３２とを有している。書込部３１および読込部３２の各部は、外部側コンピュータ３のＣＰＵが所定のプログラム（ソフトウエア）に基づく処理を実行することにより達成される。プログラムは、例えば各部に対応するサブルーチンの形で、外部側コンピュータ３が備える所定のメモリに記憶されている。
【００２１】
図３を参照してゲートウエイ装置１の機能を説明する。内部側コンピュータ２はＣＰＵ２ａとネットワーク接続部ＬＡＮ１を有し、外部側コンピュータ３はＣＰＵ３ａとネットワーク接続部ＬＡＮ２を有する。ゲートウエイ装置１は、図中で実線矢印が示すように、内部側コンピュータ２のＣＰＵ２ａから外部側コンピュータ３のＣＰＵ３ａへはアクセスが可能であるが、破線矢印で示す逆方向についてはアクセスが制限されている。
【００２２】
次に、図４を参照して、一の内部ネットワーク９１から、他の内部ネットワーク９２に向けて、データを暗号化して送信するデータの送受信について説明する。
【００２３】
（送信側の処理）
まず、送信側のゲートウエイ装置１の内部側コンピュータ２のＣＰＵが、内部ネットワーク９１から送信用の元データＤ、例えば［１２３４５６７８９０］を受け取り、その元データＤを共有メモリ４に書き込む。
【００２４】
次に、ＣＰＵは共有メモリ４に書き込まれた送信用のデータを読み込み、メモリ７に保存された暗号化アルゴリズムを参照して、データを並べ替える暗号化を行い、暗号データＥ、例えば、逆順に入れ替えたデータ［０９８７６５４３２１］を生成する。生成された暗号データＥは、共有メモリ４に書き込まれ、暗号化が完了する。
【００２５】
暗号化が完了した時点で、共有メモリ４内の送信用のデータは、内部側コンピュータ２によって、送信可能状態すなわち外部側コンピュータ３による読み込み可能状態とされる。外部側コンピュータ３は、共有メモリ４が読み込み可能状態であることを確認した後、共有メモリ４から暗号データＥを読み込んで、そのまま送信データＦ、［０９８７６５４３２１］として、外部ネットワーク９０に送信する。
【００２６】
（受信側の処理）
データを受信する内部ネットワーク９２側のゲートウエイ装置１は、その外部側コンピュータ３が、送信データＦを受信データＧとして受信し、そのまま共有メモリ４に書き込む。書き込まれたデータは、暗号化されたデータＨ、［０９８７６５４３２１］である。
【００２７】
共有メモリ４への書き込みが終了すると、外部側コンピュータ３によって、内部側コンピュータ２による読み込み可能状態とされる。すると、内部側コンピュータ２は、共有メモリ４から暗号データＨ、［０９８７６５４３２１］を読み込み、暗号データＨをもとの順番に並べ替える復号化の処理を行い、復号データＪ、［１２３４５６７８９０］とする。復号化の処理に際し、メモリ７に保存された復号化アルゴリズムが参照される。復号データＪは、内部ネットワーク９２に送信される。
【００２８】
次に、図５のフローチャートを参照して、外部への送信処理を説明する。送信側の内部側コンピュータ２は、内部ネットワーク９１から送信用のデータを受信し（Ｓ１１）、書き込み用のメモリを共有メモリ４に確保し（Ｓ１２）、さらに、データの送信先を設定する（Ｓ１３）。続いて、内部側コンピュータ２は、データを共有メモリ４に書き込み（Ｓ１４）、共有メモリ４内のデータを並べ替えて暗号化する（Ｓ１５）。
【００２９】
続いて、送信側の外部側コンピュータ３は、暗号化が完了した時点で、共有メモリ４から送信先を示すデータと暗号化されたデータとを読み込み（Ｓ１６）、データを外部ネットワーク９０に送信する（Ｓ１７）。
【００３０】
次に、図６のフローチャートを参照して、受信処理を説明する。受信側の外部側コンピュータ３は、外部ネットワーク９０から送信されてきたデータを受信し（Ｓ２１）、データを共有メモリ４に書き込む（Ｓ２２）。
【００３１】
続いて、受信側の内部側コンピュータ２が、共有メモリ４からデータを読み込み（Ｓ２３）、データを並べ替えて復号化し（Ｓ２４）、データを内部ネットワーク９２に送信する（Ｓ２５）。
【００３２】
（暗号化と復号化のアルゴリズムについて）
内部側コンピュータ２は、暗号化部５（図２）がデータを並べ替える暗号化アルゴリズムを、メモリ７に複数記憶することができる。暗号化部５は、例えば、ユーザの指示に従って、または、所定の手順に従って、複数の暗号化アルゴリズムのいずれかに基づいて暗号化することができる。
【００３３】
受信側の内部側コンピュータ２は、データを送信する側のゲートウエイ装置１が有する暗号化アルゴリズムをメモリ７に複数記憶している。受信側の内部側コンピュータ２は、どの暗号化アルゴリズムを用いて復号化すべきか不明となる場合がある。そこで、送信側の内部側コンピュータ２は、暗号化部５が複数の暗号化アルゴリズムのいずれに基づいて暗号化したかについて、または、いずれに基づいて復号化すればよいかについての情報を送信用のデータに付加する。
【００３４】
なお、暗号化アルゴリズムと復号化アルゴリズムとは、通常、同じものとすることができ、この場合、例えば、復号化部６は暗号化のときの並べ替えの手順を逆にたどることにより、復号化を実行できる。
【００３５】
暗号化アルゴリズムは、共有メモリ４に書き込まれた送信用のデータを並べ替える処理手順のアルゴリズムに、データの変換、追加、入れ替え等のデータ処理手順のアルゴリズムを加えたものとすることができる。例えば、同じデータを重複させるような変換、所定のデータを挿入する追加、文字データを所定の変換表に基づいて他の文字データに変える入れ替え、など任意の暗号化手順を加えることができる。
【００３６】
本実施形態のゲートウエイ装置１によれば、共有メモリ４に書き込まれたデータの並べ替えによってデータを暗号化するので、ユーザがデータの暗号化を独自に容易に設定できる。すなわち、共有メモリ上のデータ処理によって、外部ネットワーク９０上に送り出すデータのセキュリティ（保護手段）が自由に作成できる。また、送信側と受信側の双方でデータの並べ替え(暗号化)のアルゴリズムを認識することにより、相手先によってセキュリティを変更することができる。例えば、一の相手先とは逆順にデータを並べ替える、他の相手先とは日付時間をデータ中の任意位置に追加する等の処理を行って並べ替える。
【００３７】
複数のゲートウエイ装置１によって形成したデータ通信のネットワークシステムにおける、２つの共有メモリ４の間に外部ネットワーク９０を挟む構造は、仮想プライベートネットワーク（ＶＰＮ）と見做すことができる。すなわち、ゲートウエイ装置１によれば、ＶＰＮを簡易に形成することができ、外部ネットワーク９０を意識することなく、共有メモリ４への読み書きをすることによりセキュリティを確保して、異なる内部ネットワーク間でデータの送受信を行うことができる。
【００３８】
ゲートウエイ装置１は、共有メモリ４によって、ＴＣＰ／ＩＰにおけるネットワーク層を分離しているため、ネットワークセキュリティに強い構成となっている。内部側コンピュータ２は、内部ネットワークと共有メモリ４との間に位置しているため、内部側コンピュータ２にフィルタリング機能を持たせることにより、ゲートウエイ装置１は、必要データだけの通過、不要データの破棄などのデータ処理を行うことができる。
【００３９】
例えば、外部ネットワーク９０からのデータであって、所定の復号化アルゴリズムによって所定の判断基準（情報セキュリティポリシー）に沿った復号化ができないデータは、上述のフィルタリング機能により、悪意のデータと判断して破棄することができる。また、外部側に向いた場所、すなわち外部側コンピュータ３が悪意を持ったハッキングや乗っ取りにあったとしても、共有メモリ４によって内部側コンピュータ２が隔離されているので、内部側コンピュータ２と内部側ネットワークへの影響を防止することができる。
【００４０】
ゲートウエイ装置１は、共有メモリ４を用いてデータを暗号化し送受信する構成としており、この構成にはＴＣＰ／ＩＰなどのライブラリを駆使したソフトウェアの作成が不要であり、暗号化部５や復号化部６を構成するソフトウェアを容易に作成し実装できる。また、ある２つのゲートウエイ装置１間と他の２つのゲートウエイ装置１間とで異なる暗号化アルゴリズムを適用することが容易であり、これにより、お互いの間だけが理解できるデータ暗号化によるデータ通信を容易に実現できる。暗号化アルゴリズムは、ゲートウエイ装置１間で設定することに限られず、内部ネットワーク内の個々の送信元と、他の内部ネットワーク内の個々の送信先との間で個別に設定してもよい。
【００４１】
図７は、他の実施形態に係るゲートウエイ装置の機能を示す。このゲートウエイ装置１は、内部側コンピュータ２および外部側コンピュータ３に共用の単一のＣＰＵ８を用いている。ＣＰＵ８は、共有メモリ４を介して接続された、内部側コンピュータ２のＣＰＵコア１（２ａ）と、外部側コンピュータ３のＣＰＵコア２（３ａ）と、を有している。この実施形態によれば、ゲートウエイ装置１は、内部側コンピュータ２と外部側コンピュータ３がそれぞれ個別にパッケージングされたＣＰＵを有していなくても構わない。また、ＣＰＵ８は、２つのＣＰＵコアに限られず、３つ以上のＣＰＵコアを有するマルチコアＣＰＵであってもよい。
【００４２】
次に、図１、図２を再び参照して、ゲートウエイ装置１およびゲートウエイシステム１０の変形例を説明する。外部側コンピュータ３の読込部３２は、データ読み込みの際に、共有メモリ４に参照用に設定された参照領域のデータを読み込み、その参照領域のデータを参照して共有メモリ４上の送信用のデータ（送信データ）を読み込む構成とされていてもよい。
【００４３】
共有メモリ４に設定された参照領域には、読込部３２が読み込むべき送信データが書き込まれた共有メモリ４上の所定のデータ単位毎の、アドレスと、読み込みの順番と、を規定するデータが記録されている。参照領域のデータは、内部側コンピュータ２から書き換えることができるが、外部側コンピュータ３からは書き換えることはできず、外部側コンピュータ３は読み込みと参照のみ可能である。
【００４４】
ゲートウエイ装置１の送受信の動作を、一方の内部ネットワーク９１から他方の内部ネットワーク９２へデータを送信する動作について説明する。送信側の内部ネットワーク９１側において、内部側コンピュータ２の書込部２１は、送信データを共有メモリ４に書き込む。
【００４５】
暗号化部５は、例えば、送信データが共有メモリ４に書き込まれた順番とは異なる順番で読込部３２によって読み込まれるように、メモリ７に保存された暗号化アルゴリズムを参照して、参照領域のデータを並べ替える。この並べ替えという書き換えにより、読込部３２が読み込む順番が変更され、送信データが暗号化される。暗号化の処理は、参照領域のデータを並べ替える処理に限られず、ダミーのデータを送信データに挿入するためにダミーのデータのアドレスを参照領域のデータに追加する処理や、これらの処理を組み合わせた処理としてもよい。
【００４６】
外部側コンピュータ３の読込部３２は、参照領域のデータが読み込み可能となった後、参照領域のデータを読み込み、そのデータに基づいて、共有メモリ４から送信データを読み込む。読み込まれたデータは、順次外部ネットワーク９０に送信される。なお、暗号化部５は、参照領域のデータが読み込み可能か否かの情報を、例えば、共有メモリ４に書き込んで、読込部３２に伝える。
【００４７】
受信側の内部ネットワーク９２側において、外部側コンピュータ３の書込部３１は、外部ネットワーク９０からの受信データを共有メモリ４に書き込む。復号化部６は、共有メモリ４から受信データを読み込み、メモリ７に保存された復号化アルゴリズムを参照して、受信データを復号化し、内部ネットワーク９２に送信する。
【００４８】
この変形例による暗号化部５は、共有メモリ４のメモリアドレスの配列を、所定のアルゴリズムに従って、任意のメモリアドレスの配列に書き換える。内部側コンピュータ２は、共有メモリ４からデータを読み出す順番を、参照領域のデータを用いて、外部側コンピュータ３に伝える。外部側コンピュータ３の読込部３２は、伝えられた順番に従って、共有メモリ４から送信データを読み込む。外部側コンピュータ３の読込部３２が読み込んだデータは、内部側コンピュータ２が共有メモリ４に書き込んだときの書込順とは異なる順番で読み込まれたデータとなる。
【００４９】
この場合、外部側コンピュータ３の読込部３２は、共有メモリ４の並びの変更について何ら認識することがない。すなわち、外部側コンピュータ３は、暗号化された状態のデータを内部側コンピュータ２から受け取ってそのまま外部ネットワーク９０に送信する。ここで、共有メモリ４を構成する各メモリとその上のデータとを抽象的に相対的なものと見ており、メモリに対するデータの並び替えを、共有メモリ４の並びの変更と表現している。暗号化は、参照領域のデータを用いて行う共有メモリ４のメモリアドレスの配列の書き換え処理（メモリ処理）と、共有メモリ４上のデータを読み込み並べ替え書き込む処理とを組み合わせた複合処理によって行うこともできる。
【００５０】
共有メモリ４の並びを変更するメモリ処理による暗号化は、送信用のデータが共有メモリ４に書き込まれた後に行うこと限られず、書き込まれる前に行うこともできる。暗号化部５は、送信用のデータが共有メモリ４に書き込まれ、かつ、暗号化が完了した時点で、参照領域のデータが読み込み可能である旨の情報を、読込部３２に伝える。暗号化部５による暗号化の処理の概念には、このような書込前のメモリ処理または書込後のメモリ処理による処理が含まれる。
【００５１】
次に、さらに他の変形例を説明する。図３において、内部側コンピュータ２のＣＰＵ２ａから外部側コンピュータ３のＣＰＵ３ａへはアクセスが可能であり逆方向についてはアクセスが制限されている旨説明したが、ゲートウエイ装置１はこの構成に限定されない。例えば、ゲートウエイ装置１は、内部側コンピュータ２と外部側コンピュータ３との間の一方から他方へ及び他方から一方への両方向またはいずれか片側方向についてのアクセス機能を、禁止または段階的に制限するアクセス制御スイッチを備えるようにしてもよい。
【００５２】
アクセス制御スイッチにより、例えば、外部ネットワーク９０を経由せずに内部ネットワーク９１，９２間を接続する場合などのように、ゲートウエイ装置１を使用する目的、状況、環境などに応じて、ゲートウエイ装置１の機能を適切に切り替えることができる。また、アクセス制御スイッチにより、内部側コンピュータ２と外部側コンピュータ３の役割を互いに切り替えるようにすることができる。この場合、内部側コンピュータ２に外部ネットワーク９０を接続し、外部側コンピュータ３に内部ネットワーク９１を接続して、ゲートウエイ装置１を用いることができる。ゲートウエイ装置１の暗号化部５、復号化部６、書込部２１、書込部３１、および読込部３２などの各々は、ＣＰＵがプログラム（ソフトウエア）に基づく処理を実行することにより達成されるので、各部の構成の組み替えが容易に行える。また、ゲートウエイ装置１は、内部側コンピュータ２と外部側コンピュータ３とを、互いに同等のハードウエア構成とすることができる。この場合、いずれのＣＰＵを内部側コンピュータ２とし、外部側コンピュータ３とするかを、アクセス制御スイッチによって選択して設定することができる。
【００５３】
上述の各実施形態、変形例において、データを共有メモリ４上で暗号化する処理には、共有メモリ４上のデータを実際に並べ替える処理が含まれる。また、書き込みの順番とは異なる順番で読込部３２によって読み込まれる処理が含まれる。この処理は、共有メモリ４上の送信用のデータを実際には並べ替えることなく、受け取ったデータが、結果として元のデータから並べ替えられたものとなる処理であり、実質的に共有メモリ４内のメモリの並びを変える処理である。暗号化処理は、データまたはメモリの並びに秘匿性を持たせればよいのであって、上述した各種のものを互いに組み合わせても、また、ダミーのデータを含める処理を組み合わせてもよい。
【００５４】
なお、本発明は、上記構成に限られることなく種々の変形が可能である。例えば、本発明は、上記の各実施形態や変形例を組み合わせたものとすることができる。また、暗号化部５が行う送信データの暗号化は、共有メモリ上のデータを並べ替えるデータ処理や、データ変換、追加、その他のデータ処理に限られず、実質的に共有メモリ４内のメモリの並びを変えることによって行うことができる。暗号化部５は、送信用のデータを所定の条件に沿って共有メモリ４上で暗号化するものであればよい。
【符号の説明】
【００５５】
１    ゲートウエイ装置
１０    ゲートウエイシステム
２    内部側コンピュータ
２１    書込部
３    外部側コンピュータ
３１    書込部
３２    読込部
４    共有メモリ
５    暗号化部
６    復号化部
８    ＣＰＵ
９０    外部ネットワーク
９１，９２    内部ネットワーク
【図１】
2018116123.tif 000003
【図２】
2018116123.tif 000004
【図３】
2018116123.tif 000005
【図４】
2018116123.tif 000006
【図５】
2018116123.tif 000007
【図６】
2018116123.tif 000008
【図７】
2018116123.tif 000009