(57)【要約】【課題】  個人情報や電子カルテなどを管理する医療システムにおいて、クライアント、サーバ間のデータの傍受、クライアント、サーバへの不正侵入やデータの抜き取りを効果的に防ぐ。【解決手段】  クライアント、サーバ構成でデータを管理する医療システムにおいて、トランスポート層に位置するプロトコルを暗号化して通信を行うとともに、暗号化されたままで記憶させて管理し、個人情報やカルテなどの情報を暗号化された情報として管理し、通信上はもちろんコンピュータ上から個人情報などを抜き取られることや、不正使用を防止したシステムを実現する。【選択図】      図７
2006121440.tif 000002
【特許請求の範囲】
【請求項１】
クライアントコンピュータとサーバコンピュータとの間で、個人情報を含む医療データの通信を行って、医療データの管理を行う医療システムにおいて、
前記クライアントコンピュータと前記サーバコンピュータとのそれぞれで、トランスポート層に位置するプロトコルを暗号化して通信を行うために、
通信路の両端で対応する暗号化及び復号化ロジックを取り決める取決め手段と、
送受信する情報単位としてのパケットのうち、少なくとも前記プロトコルのペイロードを前記取決め手段により取り決めた暗号化ロジックに従って暗号化して送信するプロトコル暗号化手段と、
受信した前記暗号化されたプロトコルのペイロードを前記取決め手段により取り決めた復号化ロジックに従って復号化するプロトコル復号化手段とを備え、
前記トランスポート層のプロトコルを用いて前記暗号化及び復号化ロジックに基づいた通信を行うとともに、前記クライアントコンピュータは、前記トランスポート層で暗号化された個人情報を含む医療データを暗号化されたままで保存し、その保存された医療データを相手のサーバコンピュータに送信することを特徴とする医療システム。
【請求項２】
クライアントコンピュータとサーバコンピュータとの間で、個人情報を含む医療データの通信を行って、医療データの管理を行う医療システムにおいて、
前記クライアントコンピュータと前記サーバコンピュータとのそれぞれで、トランスポート層に位置するプロトコルを暗号化して通信を行うために、
通信路の両端で対応する暗号化及び復号化ロジックを取り決める取決め手段と、
送受信する情報単位としてのパケットのうち、少なくとも前記プロトコルのペイロードを前記取決め手段により取り決めた暗号化ロジックに従って暗号化して送信するプロトコル暗号化手段と、
受信した前記暗号化されたプロトコルのペイロードを前記取決め手段により取り決めた復号化ロジックに従って復号化するプロトコル復号化手段とを備え、
前記トランスポート層のプロトコルを用いて前記暗号化及び復号化ロジックに基づいた通信を行うとともに、前記サーバコンピュータは、受信した暗号化された個人情報を含む医療データを暗号化されたままで保存し、保存された医療データが必要な際に、前記トランスポート層のプロトコルを用いて復号化して取り出すことを特徴とする医療システム。
【請求項３】
前記トランスポート層に位置するプロトコルはＴＣＰ又はＵＤＰであり、該ＴＣＰ又はＵＤＰに暗号化及び復号化のための処理を施すことを特徴とする請求項１又は請求項２に記載の医療システム。
【請求項４】
前記プロトコル復号化手段は、当該コンピュータが正しく認証処理された場合にだけ、保存された医療データの復号化を行うことを特徴とする請求項１又は請求項２に記載の医療システム。
【請求項５】
クライアントコンピュータとサーバコンピュータとの間で、個人情報を含む医療データの通信を行って、医療データの管理を行う医療データ管理方法において、
前記クライアントコンピュータと前記サーバコンピュータとのそれぞれで、トランスポート層に位置するプロトコルを暗号化して通信を行うために、
通信路の両端で対応する暗号化及び復号化ロジックを事前にもしくは動的に取り決める取り決めステップと、
送受信する情報単位となるパケットのうち、少なくともＴＣＰ又はＵＤＰのペイロードに該当するプロトコルを前記取決めステップにより取り決めた暗号化ロジックに従って暗号化して送信するプロトコル暗号化ステップと、
受信した暗号化されたプロトコルを前記取決めステップにより取り決めた復号化ロジックに従って復号化するプロトコル復号化ステップとを具備し、
前記トランスポート層のプロトコルを用いて前記暗号化及び復号化ロジックに基づいた通信を行うとともに、前記クライアントコンピュータは、前記トランスポート層で暗号化された個人情報を含む医療データを暗号化されたままで保存し、その保存された医療データを相手のサーバコンピュータに送信することを特徴とする医療データ管理方法。
【請求項６】
クライアントコンピュータとサーバコンピュータとの間で、個人情報を含む医療データの通信を行って、医療データの管理を行う医療データ管理方法において、
前記クライアントコンピュータと前記サーバコンピュータとのそれぞれで、トランスポート層に位置するプロトコルを暗号化して通信を行うために、
通信路の両端で対応する暗号化及び復号化ロジックを事前にもしくは動的に取り決める取り決めステップと、
送受信する情報単位となるパケットのうち、少なくともＴＣＰ又はＵＤＰのペイロードに該当するプロトコルを前記取決めステップにより取り決めた暗号化ロジックに従って暗号化して送信するプロトコル暗号化ステップと、
受信した暗号化されたプロトコルを前記取決めステップにより取り決めた復号化ロジックに従って復号化するプロトコル復号化ステップとを具備し、
前記トランスポート層のプロトコルを用いて前記暗号化及び復号化ロジックに基づいた通信を行うとともに、前記サーバコンピュータは、受信した暗号化された個人情報を含む医療データを暗号化されたままで保存し、保存された医療データが必要な際に、前記トランスポート層のプロトコルを用いて復号化して取り出すことを特徴とする医療データ管理方法。
【請求項７】
前記プロトコル復号化ステップは、当該コンピュータが正しく認証処理された場合にだけ、保存された医療データの復号化を行うことを特徴とする請求項５又は請求項６に記載の医療データ管理方法。
【請求項８】
クライアントコンピュータとサーバコンピュータとの間で、個人情報を含む医療データの通信を行って、医療データの管理を実現させる医療データ管理用通信プログラムにおいて、
前記クライアントコンピュータと前記サーバコンピュータとのそれぞれで、トランスポート層に位置するプロトコルを暗号化して通信を行うために、
通信路の両端で対応する暗号化及び復号化ロジックを事前にもしくは動的に取り決める機能と、
送受信する情報単位となるパケットのうち、少なくともＴＣＰ又はＵＤＰのペイロードに該当するプロトコルを前記取決めにより取り決めた暗号化ロジックに従って暗号化して送信するプロトコル暗号化機能と、
受信した暗号化されたプロトコルを前記取決めにより取り決めた復号化ロジックに従って復号化するプロトコル復号化機能とを具備し、
前記トランスポート層のプロトコルを用いて前記暗号化及び復号化ロジックに基づいた通信を行うとともに、前記クライアントコンピュータは、前記トランスポート層で暗号化された個人情報を含む医療データを暗号化されたままで保存し、その保存された医療データを相手のサーバコンピュータに送信する機能を備えることを特徴とする医療データ管理用通信プログラム。
【請求項９】
クライアントコンピュータとサーバコンピュータとの間で、個人情報を含む医療データの通信を行って、医療データの管理を実現させる医療データ管理用通信プログラムにおいて、
前記クライアントコンピュータと前記サーバコンピュータとのそれぞれで、トランスポート層に位置するプロトコルを暗号化して通信を行うために、
通信路の両端で対応する暗号化及び復号化ロジックを事前にもしくは動的に取り決める機能と、
送受信する情報単位となるパケットのうち、少なくともＴＣＰ又はＵＤＰのペイロードに該当するプロトコルを前記取決めにより取り決めた暗号化ロジックに従って暗号化して送信するプロトコル暗号化機能と、
受信した暗号化されたプロトコルを前記取決めステップにより取り決めた復号化ロジックに従って復号化するプロトコル復号化機能とを具備し、
前記トランスポート層のプロトコルを用いて前記暗号化及び復号化ロジックに基づいた通信を行うとともに、前記サーバコンピュータは、受信した暗号化された個人情報を含む医療データを暗号化されたままで保存し、保存された医療データが必要な際に、前記トランスポート層のプロトコルを用いて復号化して取り出す機能を備えたことを特徴とする医療データ管理用通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、医療システム、医療データ管理方法、及びそれを実現するための医療データ管理用通信プログラムに関する。
【背景技術】
【０００２】
近年、インターネットを含むネットワークを利用した医療システムの構築は、急速に普及拡大している。一方、普及拡大に伴って、ハッカー(hacker)やクラッカー（Cracker）が医療システム用のコンピュータシステムや医療機関インフラストラクチャ用コンピュータシステムやその端末機器、及び、ＲＦタグ、ＩＣカード、バイオメトリックスなどの認証機器に侵入して、ソフトウエアやデータを盗み見たり、改竄や破壊を行ったりする。また、内部犯行によるデータをコピーして持ち出し、転売してしまう、または、恐喝する行為が、社会問題も大きくなっている。
【０００３】
具体的な不正妨害のケースとしては、まず第1に、中心的なシステムが使えなくなるように、ネットワークから大量のメッセージを送りつけコンピュータシステムの運用を妨害するシステム妨害がある。この妨害によってホストが過負荷になるとシステムダウンに陥ってしまうことも起こりうる。
【０００４】
また、ホストのパスワードを入手し、医療システムデータを含む機密情報を盗んだり、情報の改竄や破壊を行ったりする「不正アクセスとなりすまし」の不正妨害がある。
また、サイト若しくはサーバの運営元で、意図的に個人情報を盗むといった行為や、社内に潜むスパイなどによるサイバーテロ（Cyber terrorism）といった危機も全くないとはいえない状況である。
【０００５】
このため、従来のＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）を利用したインターネット上での通信において、データの「漏洩」「改竄」等を防ぐ機能として、ＩＰｓｅｃ（アイピーセック：Security Architecture for Internet Protocol）やＳＳＬ（Secure Socket Layer）といわれる暗号化通信が利用されている。但し、ＩＰｓｅｃは、ＳＳＬと違い、非常に多くの設定が必要となり、高度なスキルを要求されるため、誰でも使用できるわけでない。また、ネットワーク環境での制限が多く、どこからでも使用できるということはない。また、ＳＳＬは、米ネットスケープ社（現在ＡＯＬに吸収合併）の開発したセキュリティ機能付ＨＴＴＰプロトコルであり、これを利用することによりクライアントとサーバがネットワーク上でお互いを認証できるようになり、クレジットカード情報などの機密性の高い情報を暗号化してやり取りすることが可能となる。これにより、データの盗聴、再送攻撃（ネットワーク上に流れたデータを盗聴して何度も繰り返して送ってくる攻撃）、なりすまし（本人の振りをして通信する）、データの改竄などを防止することができる。
【０００６】
図９は、従来のＳＳＬを用いた暗号化通信を行う場合のプロトコルスタックの例を示している。図９に示すように、ＯＳＩ参照モデルは、最下層（第１層）が物理層、第２層がデータリンク層、第３層がネットワーク層、第４層がトランスポート層、第５層がセッション層、第６層がプレゼンテーション層、最上層（第７層）がアプリケーション層になっている。図９では、第６層と第７層は省略してある。このＯＳＩ参照モデルにおける７階層は、通信機能を７段階に分けたものであり、その階層毎に標準的な機能モジュールを定めている。プロトコルスタックとは、ネットワークの各階層における機能を実現するためのプロトコルを選び、階層状に積み上げたソフトウエア群である。
【０００７】
まず、ＯＳＩ参照モデルについて概略を説明すると、第１層の物理層は、信号線の物理的な電気特性や符号の変調方法などを規定した層である。ただ、この層だけが単独で定義・実装されることは少なく、通常は、第２層のデータリンク層と共に、たとえばイーサネットの規格、などとして定義される。
【０００８】
第２層のデータリンク層は、データのパケット化や物理的なノードアドレス、パケットの送受信方法などを規定する層である。この層は、物理的な通信媒体を通して、２つのノード間でパケットをやり取りするためのプロトコルを規定するものであり、各ノードに対して、何らかのアドレスを付け、そのアドレスに基づいてパケットの送信先を特定し、パケットを通信媒体上に送信する。通信媒体としては、銅配線や無線、光ファイバなど、多様なものがある。また、接続形態（トポロジー）も、１対１の対向接続だけでなく、バス型やスター型、リング型など多くの種類がある。通信媒体上に送信されたパケットは、受信側ノードに到着した時点でそのノードに取り込まれ、さらに上位のプロトコル層へと渡される。
【０００９】
物理層とデータリンク層に渡って配置されるＮＩＣ(Network Interface Card)ドライバは、パソコンやプリンタなどを構内ネットワーク（ＬＡＮ）につなぐための拡張ボードである。単にネットワークカードという場合はイーサネットにつなぐ場合が多い。このＮＩＣドライバにより、データを送信したいノード（機器）がケーブルの空き状況を監視して、ケーブルが空くと送信を開始するようにしている。このとき、もし複数のノードが同時に送信を開始するとケーブル内でデータが衝突して破壊されるので、両者は送信を中止し、ランダムな時間を待って送信を再開するのである。これによって一本のケーブルを複数のノードが共有して互いに通信することができる。
【００１０】
第３層のネットワーク層は、任意の２つのノード間での通信方法を規定する層である。ＴＣＰ／ＩＰでいえばＩＰ層に相当する。データリンク層では、同一ネットワーク媒体上のノード間での通信を行うことができるが、その機能を使って、ネットワーク上に存在する任意の２つのノード間で、ルーティング（routing）を行いながら通信するのがこのネットワーク層の役目である。ここで、ルーティングとはＴＣＰ／ＩＰネットワークにおいて目的のホストまでパケットを送信するときに、最適な経路を選択して送信することをいう。例えば、イーサネットでは、同一セグメント上のノード同士でしかお互いに通信できないが、ネットワーク層では、２つのイーサネットセグメント間でパケットをルーティングすることによって通信を行う。また、電話回線を通じてコンピュータをネットワーク（イーサネット）に接続するダイヤルアップＰＰＰ（Point to Point Protocol）回線へのルーティング、また、光ファイバを使った専用線へのルーティングなど、物理的なネットワーク媒体によらずにパケットをルーティングすることができる。この目的のため、通常は、物理媒体に依存しないアドレス（ＴＣＰ／ＩＰならば、ＩＰアドレス）を各ノードに割り当て、これに基づいてルーティングを行っている。
【００１１】
第４層のトランスポート層は、各ノード上で実行されている２つのプロセス間で、エラーのない、仮想的な通信路を実現するためのプロトコル層である。ＴＣＰ／ＩＰでいえばＴＣＰ層に相当する。ネットワーク層では、２つのノード間での通信を行う機能を提供しているが、これを使って、２つのプロセス（アプリケーション）間で、エラーのない、仮想的な通信路を提供するのがこの層の役目である。すなわち、ネットワーク層ではデータを送ることはできるが、そのデータが確実に相手に届くという保証はない。また、送信した順に正しくデータが届くという保証もない。そこで、アプリケーションにとって使いやすくするために、エラーのない通信路を提供するのがこの層である。必要ならばデータの再送・回復処理などを行う。この第４層のトランスポート層に暗号化処理を施した例は、今まで存在していない。
【００１２】
第５層のセッション層は、セッション（通信の開始から終了まで）の手順を規定する層であり、アプリケーション間でコネクションを開設して通信ができる状態にする層である。この層に配置されるソケット（socket）は、コンピュータが持つネットワーク内の住所に当たるＩＰアドレスと、ＩＰアドレスのサブアドレスであるポート番号を組み合わせたネットワークアドレスを意味している。コンピュータ同士を接続する場合は、必ずソケット（ＩＰアドレスとポート番号の組）を指定して行う。図９に示すように、従来の代表的な暗号化通信技術であるＳＳＬは、このセッション層で暗号化通信を実現している。
【００１３】
図９では、第６層と第７層については省略してあるが、簡単に説明すると、第６層のプレゼンテーション層は、セッション（通信の開始から終了まで）でやり取りするデータの表現方法や符号化、暗号化などを規定する層である。ＴＣＰ／ＩＰプロトコルでは、この層に相当する部分はなく、通常はアプリケーション自身でストリームデータの処理をハンドリングしている。
【００１４】
第７層のアプリケーション層は、アプリケーション間でのデータのやり取りを規定するための層であり、ＴＣＰ／ＩＰプロトコルではこの層に相当する部分はない。例えば、電子メールのフォーマットや、文書の内部構造など、アプリケーション間で相互にデータをやり取りする場合に必要な、共通のデータ構造などを規定する層である。
【００１５】
図９は、暗号化処理プロトコルとしてＳＳＬを具備した標準プロトコルの例である。
従来の代表的な暗号化通信技術の中で、ＳＳＬでは、互いの認証レベルではＲＳＡ（Rivest Shamir Adleman：公開鍵暗号方式を開発者3人の頭文字）公開鍵暗号技術を用いたデジタル証明書が用いられ、データの暗号化ではＤＥＳなどの共通鍵暗号技術が用いられている。このＳＳＬは第5層のセッション層にあるため、特定のアプリケーションに依存することになる。
【００１６】
ＳＳＬは、第５層のセッション層における暗号化技術であり、現在インターネットで広く使われているＷＷＷ（World Wide Web）などのデータを暗号化して、プライバシーに係る情報や企業秘密情報などを安全に送受信するためのものである。但し、ハッカーやクラッカーといわれるネットワークの不正侵入者によるＴＣＰ／ＩＰへのさまざまな攻撃、いわゆるＤｏＳ攻撃（Denial of Service：サービスを停止させる攻撃）に対しては、ＳＳＬは無力である。ＴＣＰ／ＩＰプロトコルスタックへのＤｏＳ攻撃、例えば、ＴＣＰ切断攻撃が行われると、ＴＣＰセッションが切れてしまいＳＳＬのサービスは停止してしまうのである。ＳＳＬは、ＴＣＰ／ＩＰ（第４層、第３層）より上の層（第５層）に実装されている暗号化プロトコルであるため、ＴＣＰ／ＩＰへのＤｏＳ攻撃を防ぐことができない。
また、ＳＳＬは、ＴＣＰの特定のポートしかサポートしていないため、ＴＣＰ全てのポートを暗号通信することができない。ＳＳＬは、ソース単位（ＵＲＬ単位、フォルダー単位）で制御することになる。
【００１７】
さらに、ＳＳＬはアプリケーションに対する互換性を持たない点において問題がある。アプリケーションは、インターネット通信を行う際にソケット（第５層）をプログラムインターフェースとして使用する。このため、アプリケーションがＳＳＬ（第５層）を使用する場合には、このソケットインターフェースをＳＳＬインターフェースに変更しなければならない。従って、ＳＳＬにアプリケーションの互換性はない。
【００１８】
ＳＳＬは、通信上は、暗号化してセキュリティを確保しているが、一旦ホストコンピュータに受信されると復号化してしまうため、ホストコンピュータ内でのセキュリティを確保することがでない。
【００１９】
図１０は、従来のＳＳＬを用いた通信システムによる医療システム構成図である。この例では、医療システムサーバとしてのコンピュータ装置８０と、医療システムクライアントとしてのコンピュータ装置９０とで構成してあり、インターネットなどの通信手段を介して、サーバ側コンピュータ装置８０と、クライアント側コンピュータ装置９０との間で双方向に通信ができる状態に接続されている。通信路としては、有線，無線のいずれでもよく、インターネットなどを経由しない専用回線で接続される場合もある。サーバ側コンピュータ装置８０は、例えば、医療用カルテのデータなどの各種医療データを管理する地域ごとの医療センタや大病院などに設置される。クライアント側コンピュータ装置９０は、例えば病院内などに設置されて、医者、看護士、検査技師などが操作する。
【００２０】
クライアント側コンピュータ装置９０には、通信を暗号化及び復号化するＳＳＬの機能を実現する暗号化部９１と、医療システムプログラムを実行するアプリケーション実行部９２と、医療システムプログラムの操作，個人情報を含む医療データの入力などを行うキー入力部９４と、医療データなどを表示する表示部９３とで構成される。図示はしないが、データを記憶するメモリなども備える。
【００２１】
サーバ側コンピュータ装置８０には、通信を暗号化及び復号化するＳＳＬの機能を実現する暗号化部８５と、医療システムプログラムを実行するアプリケーション実行部８３と、医療データを格納する磁気メモリ８４と、医療データなどを表示する表示部８１と、プリンタ８２とで構成される。サーバ側がキー入力部を備えてもよい。
【００２２】
この図１０に示した構成では、サーバ側コンピュータ装置８０側の暗号化部８５と、クライアント側コンピュータ装置９０の暗号化部９１とのは、暗号化されたデータが転送される。従って、サーバとクライアントとの間を接続した通信路の途中でデータが不正に読み取られても、個人情報などの医療データが暗号化されているので、不正使用を防止できる。このＳＳＬの機能を利用した場合、クライアント側のアプリケーション実行部９２では、暗号化されていないデータである平文（clear text）として扱われる。同様に、サーバ側のアプリケーション実行部８３でも、暗号化されていないデータである平文として扱われ、メモリ８４に医療データを記憶させる際にも、平文で記憶されるのが一般的である。
【００２３】
図１１及び図１２は、従来のＳＳＬを用いた通信システムによる医療データの流れを示すフローチャートである。図１１、図１２の左側はサーバでの処理を示し、図１１、図１２の右側はクライアントでの処理を示す。ここでは、サーバには各患者の個人情報や病歴などが記載されたカルテのデータが電子化されて蓄積され、図１１では、クライアント側のコンピュータ装置を検査技師が操作するものとし、図１２では、クライアント側のコンピュータ装置を医師又は看護士が操作するものとする。図１３は、そのＳＳＬを用いた通信システムによる実際のデータの流れを示した図であり、データ１０１〜１３１は、それぞれの状態で送られるデータを示している。
【００２４】
以下、図１１〜図１３に従って処理例を説明すると、まずサーバでは、認証のための処理が開始されて（ステップＳ１１）、認証が完了すると認証局より認証情報（サーバ証明書）を取得する（ステップＳ１２、データ１０１）。その後、サーバとクライアントとの間で通信が開始されると（ステップＳ１３、Ｓ３１）、クライアントではサーバから認証情報が取得される（ステップＳ３２、データ１０２）。ここで、取得された認証情報に基づいて正しい相手であるか否か判断され（ステップＳ３３）、正しい相手でない場合には通信処理が終了する（ステップＳ３４）。
【００２５】
正しい相手であると認識できた場合には、クライアントで検査を行う患者についての個人情報を入力し（ステップＳ３５、データ１０３）、その個人についての病歴などが記載されたカルテの問い合わせ処理を行う送信データを作成する（ステップＳ３６、データ１０４）。その作成された問い合わせ情報を、ＳＳＬで暗号化してサーバに送信する（ステップＳ３７、データ１０５）。
【００２６】
サーバでは、暗号化されたデータ１０５を受信すると復号化し（ステップＳ１４）、復号化された平文の個人情報１０６を得（ステップＳ１５）、その個人情報に基づいて、記憶された該当する患者のカルテのデータ１０７，１０８を取り出し（ステップＳ１６）、暗号化部にデータ１０９を送ってＳＳＬで暗号化する（ステップＳ１７）。暗号化されたカルテのデータ１１０は、クライアントに送る（ステップＳ１８）。
【００２７】
クライアントでは、暗号化されたカルテのデータ１１０を受信すると、復号化したカルテのデータ１１１とし、そのカルテのデータに基づいて、医療システムプログラムが検査指示表示データ１１２を作成して、そのデータに基づいた表示を行い、検査技師に確認させる（ステップＳ３９）。その確認した指示に基づいて検査を実行した後（ステップＳ４０）、検査技師が検査データ１１３を入力すると（ステップＳ４１）、医療システムプログラムがカルテに検査データを書き込ませるデータ処理を行い（ステップＳ４２）、検査データが含まれたカルテデータ１１４が得られる。このカルテデータ１１４は、ＳＳＬで暗号化されたデータ１１５となり、サーバに送信させて（ステップＳ４３、データ１１５）、クライアントでの処理を終了する（ステップＳ４４）。
【００２８】
サーバに送信されたデータ１１５は平文に復号化され（ステップＳ１９）、その復号化されたデータ１１６を医療システムプログラムに送って検査データを取り込ませ（ステップＳ２０）、医療システムプログラムの制御で保存用のデータ１１７，１１８としてメモリに記憶させ（ステップＳ２１）、サーバとしての処理を終了する（ステップＳ２２）。このとき記憶されたデータは、暗号化されていない平文のデータである。
【００２９】
次に、図１２に示した医師又は看護士がカルテを取り出す際の処理について説明すると、まずサーバでは、認証のための処理が開始されて（ステップＳ５１）、認証が完了すると認証局より認証情報（サーバ証明書）を取得する（ステップＳ５２、）。但し、ここではデータ１０１として既に取得した認証情報を使用する。そして、サーバとクライアントとの間で通信が開始されると（ステップＳ５３、Ｓ７１）、クライアントではサーバから認証情報が取得される（ステップＳ７２、データ１１９）。ここで、取得された認証情報に基づいて正しい相手であるか否か判断され（ステップＳ７３）、正しい相手でない場合には通信処理が終了する（ステップＳ７４）。
【００３０】
正しい相手であると認識できた場合には、クライアントで患者についての個人情報を入力し（ステップＳ７５）、その個人のカルテの問い合わせ処理を行う送信データを作成する（ステップＳ７６）。その作成された問い合わせ情報を、ＳＳＬで暗号化してサーバに送信する（ステップＳ７７）。なお、図１３では、カルテの問い合わせ処理のデータの流れについては省略してある。
【００３１】
サーバでは、暗号化されたカルテの問い合わせデータを受信すると復号化し（ステップＳ５４）、復号化された平文の個人情報を得（ステップＳ５５）、その個人情報に基づいて、記憶された該当する患者のカルテのデータ１２０，１２１を取り出し（ステップＳ５６）、暗号化部にデータ１２２を送ってＳＳＬで暗号化する（ステップＳ５７）。暗号化されたカルテのデータ１２３は、クライアントに送る（ステップＳ５８）。
【００３２】
クライアントでは、暗号化されたカルテのデータ１２３を受信すると、復号化したカルテのデータ１２４とし（ステップＳ７８）、そのカルテのデータに基づいて、医療システムプログラムがカルテ表示データ１２５を作成して、そのデータに基づいた表示を行い、医師又は看護士に確認させる（ステップＳ７９）。その後、医師が患者の診察などを行い（ステップＳ８０）、医師又は看護士が診察結果などを入力すると（ステップＳ８１）、医療システムプログラムがカルテに入力データ１２６を書き込ませるデータ処理を行い（ステップＳ８２）、入力データが含まれたカルテデータ１２７が得られる。このカルテデータ１２６は、ＳＳＬで暗号化されたデータ１２８となり、サーバに送信させて（ステップＳ８３）、クライアントでの処理を終了する（ステップＳ８４）。
【００３３】
サーバに送信されたデータ１２８は平文に復号化され（ステップＳ５９）、その復号化されたデータ１２９を医療システムプログラムに送ってカルテを取り込ませ（ステップＳ６０）、医療システムプログラムの制御で保存用のデータ１３０，１３１としてメモリに記憶させ（ステップ６１）、サーバとしての処理を終了する（ステップＳ６２）。このとき記憶されるデータは、暗号化されていない平文のデータである。
【００３４】
特許文献１には、ＳＳＬを暗号化処理で使用してデータ通信を行うことについての開示がある。
【特許文献１】特開２００４−４８４５８号公報
【発明の開示】
【発明が解決しようとする課題】
【００３５】
ところが、ＳＳＬを使用した従来の医療データの伝送処理では、確かにサーバとクライアントとの間での伝送路上ではデータは暗号化されているので、伝送途中でのデータの安全は確保されるが、クライアント内やサーバ内に保存された個人情報については、暗号化されていないので、その保存された個人情報やカルテが不正に抜き取られるようなことがあると、個人情報や病歴などが流出してしまう問題がある。従来の医療用システムに適用されている暗号化処理では、このような不正には対処できなかった。
【００３６】
即ち、例えば図１３に示すように、クライアントでは、入力されたデータがメモリに格納されて、暗号化部に送られるまでは、全て平文であり、サーバでも、受信したデータを復号化した後は、全て平文で処理される。従って、例えばクライアントで、検査データと共に抜き取られた個人情報で、個人の病状を第三者が、知ることが可能になる。また、入力された個人情報は、ＳＳＬで暗号するまで平文としてクライアントに存在するため、プログラム改竄などの手口でデータを抜き取られる可能性を否定することも出来ない。
【００３７】
さらにサーバでは、復号化された後は、平文の個人情報として医療プログラムに取り込まれ、記憶（記録）される。このようにサーバに蓄積されたデータは、データごと抜き取られることがあると、大量の個人情報や病歴が流出することになり、しばしば社会的問題となっている。このようにクライアント側、サーバ側のいたるところに個人情報が平文で存在し、抜き取られ、改竄される危険性があり問題となっている。
【００３８】
本発明の目的は、上述のような問題に鑑みてなされたものであり、医療情報の管理を電子的に行う際に、クライアント、サーバ間のデータの傍受、クライアント、サーバへの不正侵入を防ぎ、更には、クライアント、サーバ上でのデータの抜き取りを防ぐようにすることを目的とする。
【課題を解決するための手段】
【００３９】
本発明は、クライアントコンピュータとサーバコンピュータとの間で、個人情報を含む医療データの通信を行って、医療データの管理を実行する場合において、クライアントコンピュータとサーバコンピュータとのそれぞれで、トランスポート層に位置するプロトコルを暗号化して通信を行うために、通信路の両端で対応する暗号化及び復号化ロジックを事前にもしくは動的に取り決め、送受信する情報単位としてのパケットのうち、少なくともプロトコルのペイロードを取り決めた暗号化ロジックに従って暗号化して送信するプロトコル暗号化を行うとともに、受信した暗号化されたプロトコルを取決めにより取り決めた復号化ロジックに従って復号化するプロトコル復号化を行うようにして、トランスポート層のプロトコルを用いて暗号化及び復号化ロジックに基づいた通信を行う処理を適用する。
【００４０】
このような処理を適用した上で、クライアントコンピュータでは、トランスポート層で暗号化された個人情報を含む医療データを暗号化されたままで保存し、その保存された医療データをサーバコンピュータに送信する。
【００４１】
また、サーバコンピュータでは、受信した暗号化された個人情報を含む医療データを暗号化されたままで保存し、医療データが必要な際に、トランスポート層のプロトコルを用いて復号化して取り出すようにした。
【発明の効果】
【００４２】
本発明によると、医療データの管理を行う際に、クライアント側、サーバ側のいずれでも平文の個人情報などの医療データがなくなり、個人情報や病歴などのデータが盗難、改竄される危険性を効果的に低減させることができる。
【００４３】
即ち、クライアント側で個人情報を含む医療データが暗号化された状態で保存され、クライアント内に保存された個人情報などが盗難、改竄される危険性がなくなる。また、サーバ側でも個人情報を含む医療データが暗号化された状態で保存され、クライアント内に保存された個人情報などが盗難、改竄される危険性がなくなる。
【発明を実施するための最良の形態】
【００４４】
以下、本発明の一実施の形態を、図１〜図８を参照して説明する。本実施の形態においては、医療データ管理用のサーバコンピュータを、管理センタ、大病院などに設置し、そのサーバに、医師、看護士、検査技師などが操作するクライアントコンピュータから、インターネット或いは専用回線を介してアクセスして、電子カルテのデータのやり取りが出来るようにしたものである。
【００４５】
図１は、本例のシステム構成図である。この例では、サーバとしてのコンピュータ装置１０と、クライアントとしてのコンピュータ装置２０とで構成してあり、本出願人が先に提案したＴＣＰ２（商標登録出願中）と称される、トランスポート層に位置するプロトコルを暗号化して通信を行う処理を適用したものである。以下の説明では、本例での暗号化をＴＣＰ２と称する場合もある。ＴＣＰ２による暗号化処理の詳細については後述する。
【００４６】
まず図１を参照して、本例のサーバコンピュータ装置１０とクライアントコンピュータ装置２０の構成について説明すると、サーバ側コンピュータ装置１０には、データをトランスポート層で暗号化し復号化するＴＣＰ２の機能を実現する暗号化部１５と、医療システム用プログラムを実行するアプリケーション実行部１３と、カルテや個人情報などの各種データを格納する磁気メモリ１４と、各種状態などを表示する表示部１１と、プリンタ１２とで構成される。ここでは、トランスポート層よりも下の層の通信処理についても、暗号化部１５で行うものとする。サーバ側がキー入力部を備えてもよい。磁気メモリ１４についても、その他の記憶（記録）手段でデータを格納する構成としてもよい。磁気メモリ１４などの記憶手段に記憶されるデータとしては、ＴＣＰ２の機能を実現する暗号化部１５で暗号化されたデータを、ＴＣＰ２機能で暗号化されたままで記憶させることも可能な構成としてある。例えば、患者を特定するための個人情報や、カルテのデータについては、ＴＣＰ２の機能で暗号化させて記憶させるようにしてある。暗号化されたままのデータを記憶させた場合には、例えばその記憶データは暗号化部１５が管理する。
【００４７】
そして、クライアント側コンピュータ装置２０には、データをトランスポート層で暗号化し復号化するＴＣＰ２の機能を実現する暗号化部２１と、医療システム用プログラムを実行するアプリケーション実行部２２と、患者情報やカルテなどを表示する表示部２３と、個人情報や検査データなどの入力などを行うキー入力部２４と、個人情報などを記憶する磁気メモリ２５とで構成される。ここでは、トランスポート層よりも下の層の通信処理についても、暗号化部２１で行うものとする。このメモリに記憶されるデータとしては、本例の場合、ＴＣＰ２の機能を実現する暗号化部２１で暗号化されたデータを、暗号化されたままで記憶させることも可能な構成としてある。例えば、患者を特定するための個人情報については、ＴＣＰ２の機能で暗号化させて記憶させるようにしてある。暗号化されたままのデータを記憶させた場合には、例えばその記憶データは暗号化部２１が管理する。
【００４８】
なお、ここでサーバ側コンピュータ装置１０及びクライアント側コンピュータ装置２０として示した構成は、本例での医療システムで必要な機能から見た構成であり、実際には汎用のパーソナルコンピュータ装置やサーバ用のコンピュータ装置などを使用して、それらのコンピュータ装置が備える演算処理手段や記憶手段を利用して、暗号化部，アプリケーション実行部，メモリなどが構成される。但し、汎用のコンピュータ装置を利用するのではなく、本例の医療システムに特化した専用のデータ処理装置として構成してもよい。
【００４９】
また、サーバ側コンピュータ装置１０とクライアント側コンピュータ装置２０とで、ＴＣＰ２の暗号化処理を行って通信を行う場合には、図１に示すように、予めネットワーク上に用意されたＴＣＰ２インストールサーバ３０を利用して、ＴＣＰ２の暗号化処理に必要なデータをインストールしておく必要がある。そのインストール処理の詳細についても後述する。
【００５０】
次に、各コンピュータ装置１０，２０での暗号化部１５，１２で行われるＴＣＰ２の暗号化処理について説明する。図２は、本実施の形態に用いられるプロトコルスタックを示すものである。
【００５１】
本例で用いられるプロトコルスタックは、図２に示すように、ＯＳＩ７階層の物理層（第１層）とデータリンク層（第２層）に相当する階層に、ＮＩＣ(Network Interface Card)のドライバ１が配列される。このドライバ１は、既に述べたように、コンピュータなどのハードウエアをネットワークに接続するためのインターフェースカードのドライバであり、その内容はデータ送受信制御ソフトウエアである。例えばEthernet（商標）に接続するためのLANボードまたはLANカードがこれに相当するものである。
【００５２】
第３層のネットワーク層には、ＩＰ２が存在している。このＩＰ２の上層のトランスポート層（第４層）には、ＴＣＰエミュレータ３が配置されている。ＴＣＰエミュレータ３は、暗号化通信を行うプロトコルである「ＴＣＰｓｅｃ」３ｂと、通常の通信プロトコルである「ＴＣＰ」３ａを用途に応じて切り替えて使う働きをする。
【００５３】
本例の処理で最も特徴とするべき点は、このトランスポート層（第４層）に、ＴＣＰｓｅｃ３ｂの暗号化通信プロトコルを搭載したＴＣＰ２を用いた医療データの伝送を行うことである。
【００５４】
このトランスポート層（第４層）の上層のセッション層（第５層）には、ＴＣＰ及びＵＤＰ等のプロトコルとデータのやりとりを行うソケット（socket）インターフェース４が設けられている。このソケットの意味は、既に述べたようにコンピュータが持つネットワーク内の住所に当たるＩＰアドレスと、ＩＰアドレスのサブアドレスであるポート番号を組み合わせたネットワークアドレスを意味しており、実際には、一連のヘッダの追加ないし削除をまとめて行う、単一のソフトウエアプログラムモジュール（実行プログラム等）あるいは単一のハードウエアモジュール（電子回路、電子部品等）からなっている。
【００５５】
このソケットインターフェース４は、さらに上位のアプリケーションからの統一的なアクセス方式を提供するものであり、引数の種類や型など従来と同様のインターフェースを保つようにしている。
【００５６】
ＴＣＰエミュレータ３は、トランスポート層において、データの漏洩・改竄の防止の機能、すなわち暗号化、完全性認証及び相手認証等の機能を持つＴＣＰｓｅｃ３ｂと、このような暗号化、完全性認証、及び相手認証等の機能を持たない通常のプロトコルＴＣＰ３ａのいずれかにパケットを振り分ける働きをもっている。また、ＴＣＰエミュレータ３は上位層であるソケットとのインターフェースの役割も果たしている。なお、ＴＣＰ２の基本的な暗号化処理については、本出願人による特願２００３−２９０８２２号に詳細が記載されている。
【００５７】
次に、本実施の形態によるシステム構成で、クライアントとサーバとの間で医療用データのやり取りを行う際の処理例を、図３〜図５のフローチャート及び図６〜図８のデータ伝送例の図を参照して説明する。なお、以下の説明では、２０１以降の符号を付したデータなどが、図６〜図８のデータ伝送例に示した状態に対応する。
【００５８】
まず、本実施の形態の医療システムによるデータ伝送を開始するまでの準備の過程を、図３のフローチャート及び図６のデータ伝送例を参照して説明する。図３の左側はサーバでの処理を示し、図３の右側はクライアントでの処理を示す。
【００５９】
サーバでは、準備処理が開始されると（ステップＳ１０１）、図６に示すように、サーバからＴＣＰ２インストールサーバ３０に対して登録要求２０１，２０２を行い、ＴＣＰ２インストールサーバ３０から、ＴＣＰ２の暗号化処理に必要なインストールデータ２０３を取得して、インストールする（ステップＳ１０２）。このとき、サーバのハード情報、管理者の個人情報、ネットワークの情報、アプリケーションの情報の認証２０７を行い、暗号化部１５（図１）内部に暗号化したデータ２０８として保存し（ステップＳ１０３）、サーバの認証処理を終了する（ステップＳ１０４）。サーバ１０の暗号化部１５は、この情報を認証情報として使用し、ＴＣＰ２が有効とするコンピュータであるか、有効とするネットワーク環境であるか、有効とする人物がコンピュータを操作しているか、有効としているアプリケーションプログラムかを判断することが出来る。
【００６０】
またクライアントでは、準備処理が開始されると（ステップＳ１０５）、図６に示すように、クライアントからＴＣＰ２インストールサーバ３０に対して登録要求２０４，２０５を行い、ＴＣＰ２インストールサーバ３０から、ＴＣＰ２の暗号化処理に必要なインストールデータ２０６を取得して、インストールする（ステップＳ１０６）。このとき、クライアントのハード情報、管理者の個人情報、ネットワークの情報の認証２０９を行い、暗号化部２１（図１）内部に暗号化したデータ２１０として保存し（ステップＳ１０７）、クライアントの認証処理を終了する（ステップＳ１０８）。クライアント２０の暗号化部２１は、この情報を認証情報として使用し、ＴＣＰ２が有効とするコンピュータであるか、有効とするネットワーク環境であるか、有効とする人物がコンピュータを操作しているか、有効としているアプリケーションプログラムかを判断することが出来る。
【００６１】
次に、本例の医療システムで、検査データのやり取りを行った場合の処理を、図４のフローチャート及び図７のデータ伝送例を参照して説明する。図４の左側はサーバでの処理を示し、図４の右側はクライアントでの処理を示す。
【００６２】
サーバでは、開始処理として（ステップＳ１１１）、ログイン操作があり（ステップＳ１１２）、そのログインされた入力データ２１１から、ＴＣＰ２の暗号化部１５で正しいユーザであるか否か判断され（ステップＳ１１３）、正しいユーザでない場合には、処理を終了する（ステップＳ１１４）。正しいユーザであれば、ＴＣＰ２の暗号化部１５を起動し、サーバの通信機能を有効にする（ステップＳ１１５）。
【００６３】
クライアントでも、開始処理として（ステップＳ１３１）、ログイン操作があり（ステップＳ１３２）、そのログインされた入力データ２１２から、ＴＣＰ２の暗号化部２１で正しい利用者（ここでは例えば検査技師）であるか否か判断され（ステップＳ１３３）、正しいユーザでない場合には、処理を終了する（ステップＳ１３４）。正しいユーザであれば、ＴＣＰ２の暗号化部２１を起動し、クライアントの通信機能を有効にする（ステップＳ１３５）。
【００６４】
この状態で、クライアント内では、患者を特定する個人情報を取得する。ここでは、暗号化されて記憶されている個人データ２１３を、医療プログラムが暗号化されたままで読み出したデータ２１４とし（ステップＳ１３６）、その暗号化された個人情報２１５をサーバに送信する（ステップＳ１３７）。
【００６５】
サーバでは、個人情報２１５を受信すると、暗号化されたままのデータ２１６として医療システムプログラムに送り（ステップＳ１１６）、ＴＣＰ２の暗号化部１５に個人情報２１７の復号化を依頼する（ステップＳ１１７）。ここで、暗号化部１５では、正しく認証されて起動しているプログラムからの復号化の依頼であるか否か判断する（ステップＳ１１８）。正しくない場合には、復号化をしないで終了する（ステップＳ１１９）。
【００６６】
正しく認証されていることを確認すると、受信した個人情報を平文のデータ２１８に復号化し、医療システムプログラムに送る（ステップＳ１２０）。医療システムプログラムが平文の個人情報２１８を取得すると、医療システムプログラムがその個人情報で指定された個人について記憶されたカルテのデータ２１９を、メモリから読み出し、ファイルシステムを介してデータ２２０をプログラムに送る（ステップＳ１２１）。このとき、カルテのデータ２１９は暗号化されて記憶され、暗号化されたままで読み出される。
【００６７】
そして、その暗号化されたカルテのデータ２２０、２２１、２２２を、送信要求があったクライアントに送る（ステップＳ１２２）。クライアントでは、その送信されたカルテのデータ２２３を受信すると（ステップＳ１３８）、プログラムでは、暗号化されたままＴＣＰ２の暗号化部２１に送り、カルテのデータ２２４の復号化を依頼する（ステップＳ１３９）。ここで、暗号化部２１では、正しく認証されて起動しているプログラムからの復号化の依頼であるか否か判断する（ステップＳ１４０）。正しくない場合には、復号化をしないで終了する（ステップＳ１４１）。
【００６８】
正しく認証されていることを確認すると、受信したカルテのデータを平文のデータ２２５に復号化し、医療システムプログラムに送る（ステップＳ１４２）。医療システムプログラムが平文のカルテのデータを取得すると、医療システムプログラムがそのデータ中の検査指示を表示させるデータ２２６を作成して、表示部２３に表示させる（ステップＳ１４３）。
【００６９】
その指示に基づいた検査が行われると（ステップＳ１４４）、検査技師は検査データ２２７を入力し（ステップＳ１４５）、医療システムプログラムが検査データをカルテに加える。そのカルテのデータ２２８をＴＣＰ２の暗号化部２１に送り、カルテのデータ２２８を暗号化したデータ２２９としてサーバに送信し（ステップＳ１４６）、クライアントでの処理を終了する（ステップＳ１４７）。
【００７０】
サーバでカルテのデータ２２９を受信すると（ステップＳ１４８）、暗号化されたままのデータ２３０，２３１，２３２としてメモリまで送って記憶させ（ステップＳ１４９）、診察用のデータとしておく。
【００７１】
次に、診察が行われる際の処理を、図５のフローチャート及び図８のデータ伝送例を参照して説明する。図４の左側はサーバでの処理を示し、図４の右側はクライアントでの処理を示す。
【００７２】
サーバでは、開始処理として（ステップＳ１５１）、ログイン操作があり（ステップＳ１５２）、そのログインされた入力データ２４１から、ＴＣＰ２の暗号化部１５で正しいユーザであるか否か判断され（ステップＳ１５３）、正しいユーザでない場合には、処理を終了する（ステップＳ１５４）。正しいユーザであれば、ＴＣＰ２の暗号化部１５を起動し、サーバの通信機能を有効にする（ステップＳ１５５）。
【００７３】
クライアントでも、開始処理として（ステップＳ１７１）、ログイン操作があり（ステップＳ１７２）、そのログインされた入力データ２４２から、ＴＣＰ２の暗号化部２１で正しい利用者（ここでは例えば医師又は看護士）であるか否か判断され（ステップＳ１７３）、正しいユーザでない場合には、処理を終了する（ステップＳ１７４）。正しいユーザであれば、ＴＣＰ２の暗号化部２１を起動し、クライアントの通信機能を有効にする（ステップＳ１７５）。
【００７４】
この状態で、クライアント内では、患者を特定する個人情報を取得する。ここでは、暗号化されて記憶されている個人データ２４３を、医療プログラムが暗号化されたままで読み出したデータ２４４とし（ステップＳ１７６）、その暗号化された個人情報２４５をサーバに送信する（ステップＳ１７７）。
【００７５】
サーバでは、個人情報２４５を受信すると、暗号化されたままのデータ２４６として医療システムプログラムに送り（ステップＳ１５６）、ＴＣＰ２の暗号化部１５に個人情報２４７の復号化を依頼する（ステップＳ１５７）。ここで、暗号化部１５では、正しく認証されて起動しているプログラムからの復号化の依頼であるか否か判断する（ステップＳ１５８）。正しくない場合には、復号化をしないで終了する（ステップＳ１５９）。
【００７６】
正しく認証されていることを確認すると、受信した個人情報を平文のデータ２４８に復号化し、医療システムプログラムに送る（ステップＳ１６０）。医療システムプログラムが平文の個人情報２４８を取得すると、医療システムプログラムがその個人情報で指定された個人について記憶されたカルテのデータ２４９を、メモリから読み出し、ファイルシステムを介してデータ２５０をプログラムに送る（ステップＳ１６１）。このとき、カルテのデータ２４９は暗号化されて記憶され、暗号化されたままで読み出される。
【００７７】
そして、その暗号化されたカルテのデータ２５０、２５１、２５２を、送信要求があったクライアントに送る（ステップＳ１６２）。クライアントでは、その送信されたカルテのデータ２５３を受信すると（ステップＳ１７８）、プログラムでは、暗号化されたままＴＣＰ２の暗号化部２１に送り、カルテのデータ２５４の復号化を依頼する（ステップＳ１７９）。ここで、暗号化部２１では、正しく認証されて起動しているプログラムからの復号化の依頼であるか否か判断する（ステップＳ１８０）。正しくない場合には、復号化をしないで終了する（ステップＳ１８１）。
【００７８】
正しく認証されていることを確認すると、受信したカルテのデータを平文のデータ２５５に復号化し、医療システムプログラムに送る（ステップＳ１８２）。医療システムプログラムが平文のカルテのデータを取得すると、医療システムプログラムがそのカルテを表示させるデータ２５６を作成して、表示部２３に表示させる（ステップＳ１８３）。
【００７９】
その表示されたカルテに基づいた診察が行われると（ステップＳ１８４）、医師又は看護士は診察した結果のデータ２５７を入力し（ステップＳ１８５）、医療システムプログラムが新たな入力データをカルテに加える。そのカルテのデータ２５８をＴＣＰ２の暗号化部２１に送り、カルテのデータ２５８を暗号化したデータ２５９としてサーバに送信し（ステップＳ１８６）、クライアントでの処理を終了する（ステップＳ１８７）。
【００８０】
サーバでカルテのデータ２５９を受信すると（ステップＳ１６３）、暗号化されたままのデータ２６０，２６１，２６２としてメモリまで送って記憶させ（ステップＳ１６４）、該当する患者のカルテデータを記憶させ、終了する（ステップＳ１６５）。
【００８１】
このようにして処理されることで、個人情報やカルテのデータのやり取りを行う際には、クライアント側とサーバ側のいずれでも個人情報やカルテなどのデータが平文の状態で蓄積されることがなく、極めて安全性の高いシステムが構築される。次に示す表１：「ＳＳＬとＴＣＰ２のリスク比較」は、従来例として示したＳＳＬを使用したシステム（図９〜図１３の例）と、本実施の形態によるＴＣＰ２を使用した医療システムとを、個人情報のリスクについて比較した表である。
【００８２】
【表１】
2006121440.tif 000003
【００８３】
以下に表１について説明する。
「（１）ＴＣＰプロトコルスタックへのＤｏＳ攻撃」の比較では、ＳＳＬは、ＴＣＰプロトコルスタックの上位に位置しているため、ＴＣＰへのＤｏＳ攻撃に対して無力である。これに対して、ＴＣＰ２は、ＴＣＰプロトコルで鍵を必要とするため、鍵を持っていないパケットを排除することが出来る。従って、ＤｏＳ攻撃を排除することが出来る。
「（２）クライアントの画面から個人情報をのぞき見る」の比較では、ＳＳＬを使用したシステムでは、表示している個人情報を覗き見たり、発生する電磁波を傍受することが出来る。これに対して、ＴＣＰ２を使用した商取引システムの場合、個人情報を入力する必要が無く、表示することが無いため、覗き見たり、発生する電磁波を傍受することが出来ない。
「（３）クライアントの商取引プログラムから個人情報を抜き取る」の比較では、入力した画面からＳＳＬで暗号化するまでの間が平文であるためプログラムを改竄されたり、トロイの木馬プログラムが起動していると、個人情報を抜き取ることが出来る。これに対して、ＴＣＰ２から個人情報を取り出す際に、プログラムが改竄されていないかチェックすることが出来、更には、取り出した個人情報が暗号化されているため、個人情報を抜き取ることが出来ないばかりか、その個人情報が暗号化されているため、データを抜き取ることが出来ない。
「（４）通信上での傍受」の比較では、ＳＳＬは、暗号化しているため傍受することが出来ない。ＴＣＰ２も暗号化しているため傍受することが出来ない。
「（５）サーバの商取引プログラムからから個人情報を抜き取る」の比較では、ＳＳＬで受信した後の個人情報が平文になるためプログラムを改竄されたり、トロイの木馬プログラムが起動していると、データを抜き取ることが出来る。これに対して、ＴＣＰ２は、クライアントから送られてきた個人情報をＴＣＰ２で受信した後、その個人情報を復号化しないため、データを抜き取ることが出来ない。また、ＴＣＰ２が、プログラムの改竄をチェックすることが出来、個人情報を抜き取ることが出来ない。
「（６）サーバの磁気保存媒体から個人情報を抜き取る」の比較では、ＳＳＬで受信した後の個人情報が平文になる。従って磁気媒体への記録も、平文であるため抜き取ることが出来る。これに対して、ＴＣＰ２は、暗号文で保存しているため個人情報を抜き取ることが出来ない。
【００８４】
このように本実施の形態によると、従来システムのクライアント側、サーバ側のいたるところにあった平文の個人情報がなくなり、個人情報やカルテのデータが盗難、改竄される危険性がなくなり、医療情報の管理の安全性が確保される。
【００８５】
なお、本発明は、以上説明した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、さらに多くの実施形態を含むものであることは言うまでもない。また、上述した実施の形態では、サーバやクライアントを構成するコンピュータ装置に、医療システム用のプログラムが実装された状態として説明したが、上述した実施の形態で説明した処理を行う医療システム用のプログラムを用意して、各種コンピュータ装置にそのプログラムをインストールして、同様の機能を実現するようにしてもよい。この場合、医療システム用のプログラムは、各種ディスクやメモリなどの媒体でユーザに配布したり、或いはインターネットなどで伝送して配付するようにしてもよい。
【図面の簡単な説明】
【００８６】
【図１】本発明の一実施の形態による医療システムのシステム構成図である。
【図２】本発明の一実施の形態による医療システムに用いられるプロトコルスタックの例を示す説明図である。
【図３】本発明の一実施の形態による医療システムで通信を開始するまでの準備の過程を示す処理フローチャート図である。
【図４】本発明の一実施の形態による医療システムで検査データを扱った場合の処理例のフローチャートである。
【図５】本発明の一実施の形態による医療システムで医師又は看護士が扱った場合の処理例のフローチャートである。
【図６】本発明の一実施の形態による準備の過程を示す説明図である。
【図７】本発明の一実施の形態による医療システムで検査データを扱った場合のデータの流れを示す説明図である。
【図８】本発明の一実施の形態による医療システムで医師又は看護士が扱った場合のデータの流れを示す説明図である。
【図９】従来のＳＳＬを用いた標準的な通信のプロトコルスタックを示す説明図である。
【図１０】従来のＳＳＬを用いた医療システムのシステム構成図である。
【図１１】従来のＳＳＬを用いた医療システムによる処理例のフローチャートである。
【図１２】従来のＳＳＬを用いた医療システムによる処理例のフローチャートである。
【図１３】従来のＳＳＬを用いた医療システムによるデータの流れを示す説明図である。
【符号の説明】
【００８７】
１…ＮＩＣドライバ、２…ＩＰ、３…ＴＣＰエミュレータ、３ａ…ＴＣＰ、３ｂ…ＴＣＰｓｅｃ、４…ソケット、１０…サーバコンピュータ装置、１１…表示部、１２…プリンタ、１３…アプリケーション実行部、１４…磁気メモリ、１５…暗号化部（ＴＣＰ２暗号化処理）、２０…クライアントコンピュータ装置、２１…暗号化部（ＴＣＰ２暗号化処理）、２２…アプリケーション実行部、２３…表示部、２４…キー入力部、２５…磁気メモリ、３０…ＴＣＰ２インストールサーバ、８０…サーバコンピュータ装置、８１…表示部、８２…プリンタ、８３…アプリケーション実行部、８４…磁気メモリ、８５…暗号化部（ＳＳＬ暗号化処理）、９０…クライアントコンピュータ装置、９１…暗号化部（ＳＳＬ暗号化処理）、９２…アプリケーション実行部、９３…表示部、９４…キー入力部
【図１】
2006121440.tif 000004
【図２】
2006121440.tif 000005
【図３】
2006121440.tif 000006
【図４】
2006121440.tif 000007
【図５】
2006121440.tif 000008
【図６】
2006121440.tif 000009
【図７】
2006121440.tif 000010
【図８】
2006121440.tif 000011
【図９】
2006121440.tif 000012
【図１０】
2006121440.tif 000013
【図１１】
2006121440.tif 000014
【図１２】
2006121440.tif 000015
【図１３】
2006121440.tif 000016