大阪大学医学部附属病院医療情報部(MIS@hp-info.med.osaka-u.ac.jp)
平成10年5月
センシブル・ヒューマン・データベースを世界各国の研究者に対しオープンにし、データの収集及び利用を効率化するためには、現状では省際ネットを含むインターネットの環境を利用することが最も現実的な方法と考えられる。しかし、データベースが直接インターネットに接続された場合、研究とは無関係な悪意を持つ者によって、貴重なデータが盗まれ、書き換えられる等の危険に曝されることになる。一方、センシブル・ヒューマン・データベースに対しアクセス権を持つユーザであっても、データベースの構造、およびStructured Query Language (SQL) 等のデータベース操作言語に関する知識なくしては、目的とするデータをデータベースから抽出することは容易ではない。このため、わかりやすいユーザインターフェースを備えたクライアントシステムが必須となる。同時に、実運用に際しては、高度なセキュリティシステムを備えつつも、そのための煩雑な手続きを隠蔽し、ユーザの操作性を犠牲にしないシステムも必要とされよう。そこで、本研究では、データベースのセキュリティーを保護し、第三者によるデータの盗難、書き換えを防止する一方で、アクセス権を持つユーザに対しては、簡単な操作で、データベースが利用できるための方式を研究調査する。
従来より、データベースを利用者に公開するためのシステムとしては、クライアント/サーバーシステムが頻繁に利用されてきた。その中でも、近年、特に機能的に優れ、高い有用性をもつとして注目されているのが3層クライアント/サーバーシステムである。このシステムの利点は、主に次に示す3点に集約される。
本研究においては、(1)大量のセンシブル・ヒューマン・データのやり取りに耐えうる十分な応答速度が必要とされる点、(2)ユーザの多様な検索要求に対応するために、自由度の高い開発環境が求められる点、および(3)データのセキュリティを守る必要がある点、がそれぞれ3層クライアント/サーバーシステムの利点に合致する。そこで、3層クライアント/サーバーシステムの考え方を採用し、上記目的を達成するためのシステムの構築を行う。
各層でのハードウェア構成を図1に示し、以下に説明を加える。
各層におけるソフトウェアは、一部に既存のものを取り入れながら、Java言語をベースに新規開発する。Java言語は、元々マルチプラットフォームでのソフトウェア開発を目的とする言語であったが、近年は、自由度の高さおよび安全性の点で、ミドルウェアの開発言語としての有用性が認められつつある。したがって、本研究の開発言語としてJavaを採用することは合目的的である。さらに、マルチプラットフォームでのシステム構成が可能となることから、より幅広いユーザ環境に対応することができる。各層におけるソフトウェア構成を図2に示す。
本システムが総合的に機能するかを確認し、(1)応答速度と、同時アクセスクライアント数ならびに検索データ量の相関、(2)システム完成時点で知られる、主たる不正攻撃に対するシステムの堅牢性、および(3)クライアントソフトウェアの易操作性に関する実験研究を行う。この過程の中で、何らかの問題点が明らかになった場合は、必要な改良を加える。
現時点において、本システムは実用上十分なセキュリティレベルを実現していると考えられる。しかしながら、セキュリティの根幹をなすユーザ認証・暗号化の仕組みは、OSI参照モデルにおける最上位層(アプリケーション層)で実装されているため、オーバーヘッドを生じ、ある程度の速度低下はやむを得ないのが現状である。この問題を解消すると考えられているのが、次世代インターネット・プロトコル、Internet Protocol version 6(IPv6)である。IPv6では、ユーザ認証・暗号化をパケットレベルで行うため、ハードウェア上でこの処理を実行することが可能となるため、従来の仕組みが大幅に簡略化されると考えられる。よって、IPv6が実用段階に入ると、現行のシステムは置換されていくことになろう。この認識に基づき、本システムの中で一部、IPv6を利用した実験を行い、これの実用システムへの応用の可能性について検討を加えることとする。
IPv6の実験に必要なシステム構成を図3に示し、以下に説明を加える。
IPv6対応システム構築の後、上記実証実験と同等の実験を行い、現行セキュリティシステムとの比較検討を行う。