<用語の説明>
(i)PC/AT互換機
PC/AT互換機とは、IBM社が1984年に発売したパソコン「PC/AT」と互換性のあるパソコンの総称である。パソコン規格の業界標準として広く普及しており、Macintoshなど少数の例外を除いて、現在のパソコンのほとんどはPC/AT互換機である。世界中の様々なメーカーがこの規格に合わせたパーツを製造しているため、対応している製品が多く、価格が安いのが特徴である。CPUにIntel社のx86互換マイクロプロセッサを搭載するため、Intelベースのシステムと呼ばれることもある。OSにはMicrosoft社のMS−DOSかWindows(R)シリーズを用いることが圧倒的に多いが、BeOSやLinux、FreeBSDなど他のOSを動作させることもできる。
(ii)Macintosh
Macintoshとは、Apple社が1984年から販売しているパソコンのシリーズ名である。文字入力でコンピュータを操作するMS−DOSなどのOSが主流だった時代に、グラフィック表示とマウスによる操作を標準機能として搭載したOSを備え、大きな反響を呼んだ。グラフィック機能を活用したアプリケーションソフトが多く開発され、パソコン全体のシェア争いでWindows(R)シリーズに敗れた現在でも、DTPなど一部の分野では未だに根強い人気がある。初期のモデルはMotorola社の68000系のマイクロプロセッサを搭載していたが、現在ではIBM社、Motorola社、Apple社の共同開発によるPowerPCが搭載され、これらはPower Macintoshと呼ばれる。近年では、CPUにIntel社のx86互換マイクロプロセッサを搭載するため、Intelベースのシステムも登場している。
(iii)USBメモリ
USBメモリとは、USBポートを用いてデータを転送する、補助記憶装置の一種である。一般的にデータの記録にはフラッシュメモリが使われている。記憶容量は16MBから最大容量の64GB(2007年2月現在)クラスまでさまざまだが、フラッシュメモリの大容量化に伴い、年々大容量化する傾向にある。なお、数は多くないが、1インチのHDDを使用した製品もあり、フラッシュメモリを使用した製品と同じように使えることから、これらも「USBメモリ」や「ポケットバイト」と呼ばれることがある。
USB規格には、USB Mass Storage Class(USBマス・ストレージクラス)という、補助記憶装置を接続するための仕様があり、このクラスに対応した機器及びOSであれば、ドライバをインストールする必要が無く、標準機能のみでUSBコネクタに接続した機器を記憶装置として認識することができる。この仕組みを用いたのが、USBメモリである。
上記の仕組みが実装されたOSはWindows(R)ではWindows(R) Me、Windows(R) XPであり、Windows(R) 2000でもサービスパックで対応し、インストール台数ベースでは対応したOSが多くなった。また、Linuxの最近の版でも対応し、USBメモリをブロックデバイスとして用いる事が出来る。さらに、簡便に使えることや、USB 2.0環境の普及、近年のフラッシュメモリの大容量化も伴い、フレキシブルディスクに替わる補助記憶装置として広く普及することとなった。
更に、Windows(R) VistaではReadyBoostという新機能を搭載し、USB2.0対応の高速USBメモリなどを用いてその記憶領域をキャッシュメモリとして使用することが可能。USBブートに対応した商品では、OSやアプリケーション、個人情報・環境・データを記憶しておくことで、自分のパソコン利用環境を持ち歩くことも出来る。出先の任意のUSBブート可能なパソコンにUSBメモリを挿して起動すれば、そのパソコンのハードディスクに影響を与えることなく、自分の利用環境を立ち上げて作業が出来る。
(iv)ActiveX(R)
ActiveX(R)とは、Microsoft(R)社が開発したインターネット関連技術群の総称でああり、特定の技術や製品を指す名称ではない。ActiveX(R)はマイクロソフト社のWebブラウザのInternet Explorer(R)と、WebサーバのInternet Information Server(R)で利用可能な各種の技術で構成される。
ActiveXのWebブラウザ側の技術としては、OLEをインターネット対応に拡張したソフトウェアの部品化技術であるActiveX(R)コントロールをはじめ、ExcelやWordなど、同社のOfficeアプリケーションソフトで作成された文書をインターネット通じて送受信し、Webブラウザに埋め込んで表示するActiveX(R)ドキュメント、VBScriptやJava(R)Scriptなどのスクリプト言語を使ってWebページに動きを与えるActiveX(R)スクリプトなどの技術がある。
ActiveX(R)のWebサーバ側の技術としては、VBScriptやJava(R)Scriptなどのスクリプト言語をサーバ上で実行して、処理結果だけをブラウザに送信するActive Server Pagesや、Webサーバから他のアプリケーションソフトを呼び出して処理を行なうInternet Server APIなどの技術がある。
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
<実施形態1>
図1は、実施形態1に係る暗号化メール送受信システムの全体構成の概要を示した機能ブロック図である。まずは、以下、この暗号化メール送受信システム1000の構成の概要について説明する。
この暗号化メール送受信システム1000は、一般的なWindows(R) OSを搭載したPC/AT互換機や、MAC OSを搭載したMacintoshなどからなる複数の送受信端末100a、100bを備えている。これらの送受信端末100a、100bには、液晶ディスプレイなどのモニタ600a、600b、キーボードおよびマウスのような入力装置700a、700b、レーザプリンタのようなプリンタ800a、800bが接続されている。
また、この暗号化メール送受信システム1000は、上記の複数の送受信端末100a、100bに装着可能な、USBメモリをはじめとする外部デバイス200a、200bを備える。これらの外部デバイス200a、200bには、後述するように、秘密ID(不図示)と、暗号鍵・復号鍵(不図示)とが格納されている。また、これらの外部デバイス200a、200bには、さらに自動起動プログラム(不図示)も格納されている。
そして、この自動起動プログラムは、詳しくは後述するが、これらの外部デバイス200a、200bが上記の送受信端末100a、100bに装着されると、それらの送受信端末100a、100bに格納されている自動起動実行部(Windows(R) 95以降のWindows(R)に含まれているCD−ROMドライブに挿入したメディアを自動判別して適切なプログラムを実行するという自動再生の機能)によって、自動的に起動されるように構成されている。
さらに、この暗号化メール送受信システム1000は、上記の複数の送受信端末100a、100bに直接接続する回線500a、500bにくわえて、インターネットなどのネットワーク400を介して間接的に接続する回線500cを備える。
そして、この暗号化メール送受信システム1000は、上記の回線500cに接続されたユーザデータベースサーバ端末300を備える。このユーザデータベースサーバ端末300には、液晶ディスプレイなどのモニタ600c、キーボードおよびマウスのような入力装置700c、レーザプリンタのようなプリンタ800cが接続されている。
また、このユーザデータベースサーバ端末300には、上記の複数の送受信端末100a、100bの間で電子メールの送受信を仲介する機能を特定の登録ユーザに提供するための電子メール仲介プログラム(不図示)が搭載されている。そして、このユーザデータベースサーバ端末300には、各ユーザに対応付けられている外部デバイス200a、200bに固有の秘密IDと、その秘密IDに対応する秘密パスワードとを含むユーザデータベース(不図示)が格納されている。
そして、上記の送受信端末100a、100b、外部デバイス200a、200bまたはユーザデータベースサーバ端末300のいずれかには、暗号化・復号化プログラム(不図示)が搭載されている。
以下、この暗号化メール送受信システム1000の動作の概要について説明する。
この暗号化メール送受信システム1000では、詳しくは後述するが、特定の登録ユーザが、自己に個別に配布された外部デバイス200a、200bを、送受信端末100a、100bに装着させると、それらの送受信端末100a、100bに格納されている自動起動実行部によって、外部デバイス200a、200bに格納されている自動起動プログラムを自動的に実行する。
そして、この自動起動プログラムは、詳しくは後述するが、外部デバイス200a、200bの装着されている送受信端末100a、100bのユーザに対して、モニタ600a、600bに表示される入力画面(不図示)などを介して秘密パスワードを要求する。これに対して、特定の登録ユーザは、詳しくは後述するが、モニタ600a、600bに表示された入力画面を見ながら、入力装置700a、700bなどを介して自己の記憶する秘密パスワードを送受信端末100a、100bに入力することになる。
なお、この自動起動プログラムは、詳しくは後述するが、上記のように秘密パスワードを要求することにくわえて、さらに、暗号化・復号化プログラムを送受信端末100a、100bにおいて稼働させ、ユーザデータベースサーバ端末300にアクセスするといった別の作業も行う。
次いで、上記のようにして自動起動プログラムによってアクセスされたユーザデータベースサーバ端末300には、上記の電子メール仲介プログラムが常時稼働しており、上記アクセスを受けてユーザデータベースを参照する。
続いて、この電子メール仲介プログラムは、詳しくは後述するが、外部デバイス200a、200bから取得される秘密IDと、ユーザデータベースから取得される秘密IDと、を照合することによって、特定の登録ユーザに個別に配布された外部デバイス200a、200bを認証する。さらに、この電子メール仲介プログラムは、詳しくは後述するが、特定の登録ユーザから取得される秘密パスワードと、ユーザデータベースから取得される秘密パスワードと、を照合することによって、特定の登録ユーザ自身を認証する。
そして、この電子メール仲介プログラムは、詳しくは後述するが、認証された特定の登録ユーザに対して、認証された外部デバイス200a、200bが装着された送受信端末100a、100bを介して、所定の電子メールサービスの提供を行う。
また、その際、特定の登録ユーザが電子メール仲介プログラムによって電子メールを送受信する際には、詳しくは後述するが、上記のようにして自動起動プログラムによって稼働された暗号化・復号化プログラムが、電子メール仲介プログラムと協働して、所定の電子メールサービスの提供を行う。
具体的には、暗号化・復号化プログラムは、詳しくは後述するが、電子メール仲介プログラムと協働して、電子メールの平文または添付ファイルを、外部デバイス200a、200bから取得した暗号鍵・復号鍵を用いて、特殊な疑似乱数発生アルゴリズムなどの所定のアルゴリズムに基づいて自動的に暗号化・復号化する。なお、この特殊な疑似乱数発生アルゴリズムについても、詳しくは後述する。
以下、この暗号化メール送受信システム1000の作用効果の概要について説明する。
この暗号化メール送受信システム1000では、上述のように、電子メール仲介プログラムは、ユーザデータベースを参照して、外部デバイス200a、200bから取得される秘密IDと、ユーザデータベースから取得される秘密IDと、を照合する。さらに、電子メール仲介プログラムは、特定の登録ユーザから取得される秘密パスワードと、ユーザデータベースから取得される秘密パスワードと、を照合する。電子メール仲介プログラムは、これらの照会によって、特定の登録ユーザおよび外部デバイスを認証し、認証された特定の登録ユーザユーザに対して、認証された外部デバイス200a、200bが装着された送受信端末100a、100bを介して、電子メールサービスを提供する。
そのため、この暗号化メール送受信システム1000によれば、特定の登録ユーザの記憶する秘密パスワードおよび特定の登録ユーザに個別に配布された外部デバイス200a、200bによって、その特定の登録ユーザに権限が付与されていることを2重に認証することができ、高度なセキュリティを保持することができる。また、この暗号化メール送受信システム1000によれば、外部デバイス200a、200bに格納された秘密IDは特定の登録ユーザにより記憶されていないため、特定の登録ユーザの犯す人為的ミスにより秘密IDが外部流出する危険性を抑制することができる。
また、この暗号化メール送受信システム1000によれば、外部デバイス200a、200bには、外部デバイス200a、200bが送受信端末100a、100bに装着されると、送受信端末100a、100bに格納されている自動起動実行部によって、自動的に起動されるように構成されている、自動起動プログラムが格納されている。そして、この自動起動プログラムは、外部デバイス200a、200bの装着されている送受信端末100a、100bのユーザに対して、秘密パスワードを要求し、さらに、暗号化・復号化プログラムを送受信端末100a、100bにおいて稼働させ、さらに、ユーザデータベースサーバ端末300にアクセスするように構成されている。
そのため、この暗号化メール送受信システム1000によれば、特定の登録ユーザは外部デバイス200a、200bを送受新端末100a、100bに装着し、自動起動プログラムによって要求される秘密パスワードを入力するという簡便な手続により、権限を有することを認証され、高度なセキュリティが保持された暗号化メール送受信システム1000を利用することができる。
そして、この暗号化メール送受信システム1000によれば、暗号化・復号化プログラムは、電子メールを送受信する際には、電子メール仲介プログラムと協働して、電子メールの平文または添付ファイルを、暗号鍵・復号鍵を用いて所定のアルゴリズムに基づいて自動的に暗号化・復号化するように構成されている。
そのため、この暗号化メール送受信システム1000によれば、特定の登録ユーザは電子メールを送受信する操作を行うだけで、暗号化・復号化プログラムが電子メール仲介プログラムと協働して、自動的に電子メールの平文または添付ファイルを暗号化・復号化するため、特定の登録ユーザは簡便な操作により高度なセキュリティが保持された暗号化メール送受信システム1000を利用することができる。また、この暗号化メール送受信システム1000によれば、外部デバイス200a、200bに格納された暗号鍵・復号鍵は特定の登録ユーザにより記憶されていないため、特定の登録ユーザの犯す人為的ミスにより暗号鍵・復号鍵が外部流出する危険性を抑制することができる。
以下、実施形態1に係る暗号化メール送受信システムに用いられる各構成要素の内部構成について詳細に説明する。図2は、実施形態1に用いられる外部デバイスの詳細な内部構成を示した機能ブロック図である。
この外部デバイス200は、上記の送受信端末100のUSBポートに装着可能なUSBメモリである。したがって、この外部デバイス200は、上記の送受信端末100のUSBポートとの間で各種情報を入出力するためのI/Oインターフェースである入出力部202を備えている。
また、この外部デバイス200は、外部デバイス200全体の動作を制御するための制御部204を備えている。そして、この制御部204には、送受信端末100からの機器の種類の問い合わせ信号に対し、CD−ROM、DVD、HD−DVD、BLUE−RAYなどの所定のメディアを読み取るドライブ機器である旨の信号を返信するとともに、送受信端末100から繰り返される外部デバイス200の種類の問い合わせ信号に対し、少なくとも一度はメディアが無い旨の信号を返信し、その後、メディアがある旨の信号を返信するための問合回答部206および認識制御部208が含まれている。
さらに、この外部デバイス200は、この外部デバイス全体を制御する各種システムを記憶するためのシステム記憶部210を備える。このシステム記憶部210には、送受信端末100に格納されている自動起動実行部(不図示)によって、自動的に起動されるように構成されている、自動起動プログラム213が格納されている。また、このシステム記憶部210には、送受信端末100に格納されている自動起動実行部が、自動起動プログラムを自動的に起動する際に従うべき自動起動スクリプト212も格納されている。
くわえて、この外部デバイス200は、暗号化・復号化プログラム(不図示)にのみ読み取りが許可されている暗号記憶部214を備える。この暗号記憶部214には、暗号化・復号化プログラムが、電子メールの平文または添付ファイルを、所定のアルゴリズムに基づいて自動的に暗号化・復号化する際に用いる暗号・復号鍵216が格納されている。
なお、このデバイス200を個別に割り当てられた特定の登録ユーザには、この暗号・復号鍵は通知されていないため、特定の登録ユーザは、この暗号・復号鍵を記憶していない。そのため、特定の登録ユーザの人為的ミスによりこの暗号・復号鍵が外部流出する危険性を抑制できる。また、このデバイス200では、暗号化・復号化プログラムによってしか、暗号記憶部214の中身を読み取ることはできないので、仮にこの外部デバイス200が盗まれた場合にも、盗み出した者は、この暗号記憶部214に格納された暗号・復号鍵216を知ることはできない。
ところで、OSによっては(例えばマイクロソフト(R)社のウインドウズ(R)シリーズ)、所定の種類のデバイス(例えばCD−ROM)にメディアが挿入されたことを契機として、そのメディア上の所定のスクリプトファイル(例えば「Autorun.inf」)に基づいて、そのスクリプトファイルに記載されている動作(例えば「open=Program.exe」)を実行する。送受信端末100は、そのようなOSを備えるコンピュータであるものとする。
また、USB規格では、送受信端末100は、USBポートに装着されたかもしれない外部デバイス200に対し、機器の種類の問い合わせ信号を繰り返し周期的にUSB回線上に流しており、新たにUSBポートに装着された外部デバイス200は、この問い合わせ信号に対して自らが該当する機器の種類を回答することにより、送受信端末100に自らの接続を認識させる。したがって、送受信端末100では、所定の種類の外部デバイス200が接続されると、その外部デバイス200のメディアに記述されている自動起動プログラム212を、スクリプト実行部としての機能を有する自動起動実行部(不図示)が自動起動スクリプト212に基づいて実行するのである。
そこで、外部デバイス200の認識制御部208は、USBポートに接続された際に、送受信端末100からの外部デバイス200の種類の問い合わせ信号に対し、CD−ROMドライブである旨の信号を、問い合わせ回答部206を介して返信する。また、システム記憶部210には、自動起動スクリプト212に基づいて送受信端末100の自動起動実行部によって起動される自動起動プログラム213を格納しておく。
すなわち、USBメモリである外部デバイス200は、本来はスクリプト実行の対象とはならない種類のデバイスであるが、送受信端末100からの問い合わせに対し、認識制御部208が問合回答部206を介してCD-ROMドライブなどのスクリプト実行の対象機器である旨の信号を擬似的に返信する。
このため、装着検出用の常駐プログラムを送受信端末側にあらかじめインストールしておかなくても、外部デバイス200装着時に、自動起動スクリプト212に記述された自動起動プログラム213実行などの所望の処理が自動実行される。これにより、外部デバイス200の専用ソフトウェアなどを手動でインストールするまでもなく、外部デバイス200を送受信端末100に装着するだけで、自動起動プログラム213が自動起動することになる。また、ユーザが管理者権限を持たないためソフトウェアをインストールできない送受信端末100上でも、外部デバイス100からの所望の自動起動プログラム213の自動起動が容易に実現される。
また、上記のようなOSには、Windows(R)シリーズのように、USBポートに装着されたCD−ROMドライブなどの外部デバイス200へのメディアの装着を繰り返し外部デバイス200に問い合わせて回答させ、ある時点で存在しなかったものが、その後、存在する状態に変化すると、メディアが外部デバイス200に挿入されたと認識するものもある。
そして、上述したように、USBポートに装着された外部デバイス200がスクリプト実行の対象である所定の機器(例えばCD−ROM)であると回答させた場合には、実際の外部デバイス200はUSBメモリであるためメディア(例えばCD−ROM)の挿入は行われないが、メディアの有無の問い合わせに対しては、認識制御部208が問合回答部206を介して、メディアを挿入した場合と同じパターンの信号を擬似的に返信することで、メディア挿入がスクリプト実行の条件となっている場合にも、自動起動スクリプト212に記述された自動起動プログラム213の自動起動が円滑確実に実行される。
すなわち、認識制御部208は、問合回答部206を介して、送受信端末100からUSBポート経由で繰り返されるメディアの有無の問い合わせ信号に対し、少なくとも一度はメディアが無い旨の信号を返信し、その後、例えば2度目の問い合わせに対しては、メディアがある旨の信号を返信する。
すると、送受信端末100上のOSは、メディアが挿入されたと認識し、送受信端末100の自動起動実行部が、その機器に記憶された自動起動スクリプト212に記述された動作を実行する。ここでスクリプト実行の対象となる「所定の種類」の機器は、仮にCD−ROMとするが、対象を他の機器の種類に変更したり拡大したりすることも自由である。また、送受信端末100の自動起動実行部は、例えば拡張子「.exe」等の実行ファイルを実行する手段であり、自動実行スクリプト212に実行ファイルのディレクトリ、名称、パラメータ等が記述されていれば、それに従ってその実行ファイルを実行するものである。
なお、本実施形態では、自動起動スクリプト212中に自動起動プログラム213の実行を指定しておく。なお、自動起動プログラム213のアプリケーション起動機能によって、さらにメーラー等のアプリケーションなど、他のプログラムを派生的に呼び出すことも当然可能である。
図3は、実施形態1に用いられる送受信端末の詳細な内部構成を示した機能ブロック図である。この送受信端末100は、USBポートなどに接続する外部デバイス200との間でデータの入出力を行う入出力部102を備える。この入出力部102は、外部デバイス200だけでなく、液晶ディスプレイなどのモニタ600、キーボードおよびマウスなどの入力装置700、レーザプリンタまたはインクジェットプリンタなどのプリンタ800との間でもデータの入出力を行う。
また、この送受信端末100は、インターネットなどの外部のネットワーク400と回線500を介して接続するためのネットワークアクセス部120を備える。さらに、この送受信端末100は、ネットワークアクセス部120を介して外部から導入したActive X(R)またはJava(R)などの技術を利用したASPサービスの一部または全部を構成するプログラム(例えばActiveX(R)コントロール、ActiveX(R)ドキュメントまたはActiveX(R)スクリプト)を一時的に記憶しておくためのASPプログラム一時記憶部118を備える。
また、この送受信端末100は、送受信端末100全体の動作を制御する制御部104を備える。さらに、この送受信端末100は、モニタ600またはプリンタ800などに表示・出力させるための画像データを生成する画像データ生成部108を備える。
そして、この送受信端末100は、USBポートに装着されたかもしれない外部デバイス200に対し、機器の種類の問い合わせ信号を繰り返し周期的にUSB回線上に流し外部デバイス問合部122を備える。また、この送受信端末100は、上記の機器の種類の問い合わせ信号に対する外部デバイス200からの返信を受信して、外部デバイス200の機器の種類を判定し、その機器の種類に応じた動作をさらに外部デバイス問合部122に行わせるように制御するための外部デバイス認識制御部106を備える。
すなわち、この外部デバイス認識制御部106は、本来はUSBメモリである外部デバイス200からCD−ROMである旨を偽装した返信を受け取ると、外部デバイス200の機器の種類がCD−ROMであると認識し、外部デバイス問合部122をさらに制御して、USBポートに装着された外部デバイス200に対して、さらにメディアの有無の問い合わせ信号を発信させる。
そして、この外部デバイス認識制御部106は、本来はUSBメモリであるためCD−ROMなどのメディアが挿入されていない外部デバイス200から、最初はCD−ROMが挿入されておらず、その後CD−ROMが挿入された旨を偽装した返信を受け取ると、外部デバイス200にCD−ROMが挿入されたと認識し、後述するシステム記憶部110に格納されている自動起動実行部112にその旨を伝える。
上述のように、この送受信端末100には、この送受新端末100の基本的な動作を制御するためのOS(不図示)をはじめとする各種システムが格納されているシステム記憶部110を備える。そして、このシステム記憶部110には、CD−ROMドライブなどに挿入されたCD−ROMなどのメディアに格納されている自動起動スクリプトの記述内容に基づいて、自動起動プログラムを起動させるための自動起動実行部112が格納されている。この自動起動実行部112のような機能は、最近のウインドウズ(R)OSをはじめとする各種の一般的なOSに標準的に搭載されている。
また、この送受信端末100には、ウインドウズ(R)OSなどの基幹システムを格納するシステム記憶部110にくわえて、さらにウインドウズ(R)OSなどの基幹システム上で動作するアプリケーションソフトウェアを格納するアプリケーション記憶部114が設けられている。
そして、このアプリケーション記憶部114には、Outlook Express(R)のような一般メーラー131およびInternet Explorer(R)のようなWEBブラウザ133が格納されている。また、このアプリケーション記憶部114には、あまり一般的なアプリケーションソフトウェアではないが、ユーザデータベース端末(不図示)の電子メール仲介プログラム(不図示)と協働して動作する暗号化・復号化プログラム116も格納している。
上記の自動起動実行部112は、外部デバイス認識制御部106から、USBポートに接続された外部デバイス200がCD−ROMドライブであり、その外部デバイス200には、最初はCD−ROMが挿入されていなかったが、その後CD−ROMが挿入された旨の偽の情報を受け取ると、外部デバイス200のシステム記憶部210に格納されている自動起動スクリプト212を起動させる。このとき、外部デバイス200の認識制御部208は、自動起動実行部112に対してシステム記憶部210がCD−ROM領域である旨の偽装を行うため、自動起動実行部112はCD−ROMのルートディレクトリに格納されているように偽装された「Autorun.inf」というファイル名の自動起動スクリプト212を実行することになる。
その後、この自動起動実行部112は、読み込んだ自動起動スクリプト212の記述に基づいて、外部デバイス200のシステム記憶部210に格納されている(同様に外部デバイス200の認識制御部208によってCD−ROMのルートディレクトリに格納されているように偽装された)「Program.exe」というファイル名の自動起動プログラム213を起動する。
この自動起動プログラム213は、自動起動スクリプト212の記述に基づいて自動起動実行部112によって起動されると、外部デバイス200の装着されている送受信端末100の画像データ生成部108を制御して、秘密パスワードの問い合わせをするための画像データを生成させる。さらに、この自動起動プログラム213は、その画像データ入出力部102を介してモニタ600に送り、モニタ600を介して秘密パスワードの問い合わせをするための画像を表示することによって、外部デバイス200の装着されている送受信端末100のユーザに対して、秘密パスワードを要求する。
また、この自動起動プログラム213は、外部デバイス200の装着されている送受信端末100のアプリケーション記憶部114に格納されている暗号化・復号化プログラム116を送受信端末100において稼働させる。さらに、この自動起動プログラム213は、外部デバイス200の装着されている送受信端末100が外部のネットワーク400を介して説即しているユーザデータベースサーバ端末300にもアクセスする。
図4は、実施形態1に用いられるユーザデータベースサーバ端末の詳細な内部構成を示した機能ブロック図である。このユーザデータベースサーバ端末300は、インターネットなどの外部のネットワーク400と回線500を介して接続するためのネットワークアクセス部302を備える。
さらに、この送受信端末100は、ネットワークアクセス部120を介して外部に提供するActive X(R)またはJava(R)などの技術を利用したASPサービスのサーバ側でのサーバ側の技術であるASPプラットフォームプログラム324(例えばActive Server PagesまたはInternet Server API)を格納しておくためのASPプラットフォーム記憶部322を備える。
また、このユーザデータベースサーバ端末300は、液晶ディスプレイなどのモニタ600、キーボードおよびマウスなどの入力装置700、レーザプリンタまたはインクジェットプリンタなどのプリンタ800との間でデータの入出力を行う入出力部304を備える。
さらに、このユーザデータベースサーバ端末300は、送受信端末100全体の動作を制御する制御部306を備える。さらに、このユーザデータベースサーバ端末300は、モニタ600またはプリンタ800などに表示・出力させるための画像データを生成する画像データ生成部308を備える。
また、このユーザデータベースサーバ端末300は、各ユーザに対応付けられている外部デバイス200に固有の秘密IDと、その秘密IDに対応する秘密パスワードとを含むユーザデータベース320を格納するデータベース記憶部318を備える。
さらに、このユーザデータベースサーバ端末300は、回線500を介して外部のネットワーク400に接続され、電子メールの送受信を仲介する機能を特定の登録ユーザに提供するための電子メール仲介プログラム316を格納するメールシステム記憶部314を備える。
また、このユーザデータベースサーバ端末300は、秘密ID・秘密パスワードを照合する機能を有するID・パスワード照合部310を備える。さらに、このユーザデータベースサーバ端末300は、上記のようなID・パスワード照合部310による秘密ID・秘密パスワードの照合結果を基にして、ユーザおよび外部デバイス200を認証するユーザ・外部デバイス認証部312を備える。
このユーザデータベースサーバ端末300は、上述のように、ユーザが外部デバイス200を送受信端末100のUSBポートに装着した後の一連の流れによって、外部デバイス200に格納されている自動起動プログラム213によって、送受信端末100およびネットワーク400などを介してアクセスされることになる。すると、そのアクセスをネットワークアクセス部302を介して受け取った制御部306は、メールシステム記憶部314に格納されており常時稼働している電子メール仲介プログラム316にその旨を伝える。
その後、電子メール仲介プログラム316は、ID・パスワード照合部310を制御して、データベース記憶部318に格納されているユーザデータベース320を参照し、外部デバイス200からネットワーク400などを介して取得される秘密IDと、ユーザデータベース320から取得される秘密IDと、を照合する。さらに、電子メール仲介プログラム316は、ID・パスワード照合部310を制御して、データベース記憶部318に格納されているユーザデータベース320を参照し、ユーザからネットワーク400などを介して取得される秘密パスワードと、ユーザデータベース320から取得される秘密パスワードと、を照合する。
続いて、電子メール仲介プログラム316は、ユーザ・外部デバイス認証部312を制御して、上記のようなID・パスワード照合部310による秘密ID・秘密パスワードの照合結果に基づいて、ユーザおよび外部デバイス200を認証する。そして、電子メール仲介プログラム316は、認証されたユーザに対して、認証された外部デバイス200が装着された送受信端末100を介して、電子メール仲介サービスを提供する。
このとき、認証された外部デバイス200が装着された送受信端末100のアプリケーション記憶部114に格納されている暗号化・復号化プログラム116は、ユーザが上記の電子メール仲介プログラム316によって電子メールを送受信する際には、電子メール仲介プログラム316と協働して、電子メールの平文または添付ファイルを、外部デバイス200の暗号記憶部214から読み取った暗号鍵・復号鍵216を用いて所定のアルゴリズムに基づいて自動的に暗号化・復号化する動作を行う。
以下、実施形態1の暗号化メール送受信システム1000の暗号化・復号化プログラム116の動作原理について説明する。図5は、実施形態1におけるユーザデータベースの構成および暗号化・復号化の機能を説明するための概念図である。このユーザデータベース320は、いわゆるテーブル型のデータベースとしての構造を有する。なお、図5(a)では、説明の都合上、ユーザデータベース320が単一のテーブルからなるように簡略化して表示しているが、実際には複数の関連づけられたテーブルからなるリレーショナル型のデータベースであってもよい。
このユーザデータベース320は、シリアルNo、ユーザ名、秘密ID、秘密パスワードの項目からなる複数の列を有している。また、このユーザデータベース320は、それぞれのユーザに対応した行を有しており、それらの行に含まれる複数のセルには、そのユーザに関する上記のシリアルNo、ユーザ名、秘密ID、秘密パスワードの項目についての内容が記録されている。すなわち、このユーザデータベース320は、各ユーザに対応付けられている外部デバイス200に固有の秘密IDと、その秘密IDに対応する秘密パスワードとを含むデータベースであると言える。
また、図5(b)に示すように、この暗号化メール送受信システム1000では、暗号化・復号化の方式として、共通鍵暗号方式を用いている。そのため、送受信端末100aおよび送受信端末100bにそれぞれ搭載されている暗号化・復号化プログラム116は、いずれも同じ共通鍵暗号方式のアルゴリズムに基づいて動作することになる。そして、外部デバイス200aおよび外部デバイス200bには、いわゆる共通秘密鍵である暗号鍵・復号鍵216がそれぞれ格納されている。
そして、送信者が送受信端末100aを操作して電子メールを送信する場合には、送受信端末100aに搭載されている暗号化・復号化プログラム116が、外部デバイス200aに格納されている共通秘密鍵を用いて、所定の共通鍵暗号方式のアルゴリズムで電子メールの平文または添付ファイルを暗号化する。
一方、受信者が送受信端末100bを操作して電子メールを受信する場合には、送受信端末100bに搭載されている暗号化・復号化プログラム116が、外部デバイス200bに格納されている共通秘密鍵を用いて、所定の共通鍵暗号方式のアルゴリズムで暗号化された電子メールの平文または添付ファイルを復号化する。
図6は、実施形態1で用いられる共通鍵暗号方式のアルゴリズムの一種である内部同期式ストリーム暗号方式について説明するための概念図である。ここで、ストリーム暗号方式とは、共通鍵方式の一種である。すなわち、図6(a)に示すように、共通鍵暗号方式の一種であるストリーム暗号方式では、暗号化および復号化に同じ鍵を用いる。さらに、ストリーム暗号方式では、平文に直接乱数をXORする。このとき、鍵系列として用いられる乱数列の品質が暗号の強度を保つ上で非常に重要な役割を果たす。
現在、一般的に用いられている暗号化・復号化のアルゴリズムでは、DES、3DES、AESといったブロック暗号方式が主流であり、平文を一定のブロック長毎に区切り、共通鍵を用いて暗号化・復号化を行っている。しかし、これらのブロック暗号方式では、高速処理が困難であるため、近年では高速処理を実現できるストリーム暗号方式を用いる必要性が高まっている。
そこで、この暗号化メール送受信システム1000の暗号化・復号化プログラム116では、図6(b)に示すように、非線形コンバイナ型乱数生成方式を採用した疑似乱数発生器によって、外部デバイス200に格納されている共通秘密鍵から、疑似乱数からなる鍵系列を生成している。この非線形コンバイナ型乱数生成方式によって生成される疑似乱数は、暗号用乱数として必要な要件を十分に満たすように設計されており、本発明者の実施した安全性テストでも非常に優れ得た結果を実現している。すなわち、本発明者は、この非線形コンバイナ型乱数生成方式によって生成される疑似乱数は、長周期性、0,1バランス、無相関性、非線形性などの暗号用乱数に必要な安全性の条件を確保している。
なお、非線形コンバイナ型乱数生成方式を実現するための基本構成部品としては、LFSR(linear feedback shift register)および非線形コンバイナ(nonlinear combiner)が知られている。この非線形コンバイナ型乱数生成方式では、これらの基本構成部品を組み合わせて、この暗号化メール送受信システム1000のセキュリティに対して想定される攻撃を排除できるように設計されており、高速な処理スピードおよび高度なセキュリティ強度を両立することに成功している。
すなわち、この暗号化メール送受信システム1000の暗号化・復号化プログラム116は、内部同期式ストリーム暗号方式のアルゴリズムに基づいており、外部デバイス200に格納されている共通秘密鍵から疑似乱数を発生させ、その疑似乱数を用いて電子メールの平文または添付ファイルを暗号化・復号化するように構成されているため、高速な処理スピードおよび高度なセキュリティ強度を両立することができる。
以下、実施形態1におけるモニタの画面表示について説明する。まず、ユーザが送信者側である場合のモニタの画面表示について説明する。図7は、実施形態1におけるモニタの画面表示を説明するための概念図である。この暗号化メール送受信システム1000では、図7(a)に示すように、ユーザが送受信端末100に外部デバイス200を装着すると、送受信端末100の自動起動実行部112によって、外部デバイス200に格納された自動起動プログラム213が起動され、図7(b)に示すように、送受信端末100に接続されたモニタ600の画面上に、ユーザの記憶している秘密パスワードを入力する要求が表示される。
そして、モニタ600の画面を見たユーザが、キーボードおよびマウスからなる入力装置700を用いて、送受信端末100に秘密パスワードを入力し、マウスを用いて画面上の認証ボタンをクリックすると、自動起動プログラム213がユーザデータベースサーバ端末300にアクセスする。
すると、ユーザデータベースサーバ端末300で常時稼働している電子メール仲介プログラム316が、ID・パスワード照合部310およびユーザ・外部デバイス認証部312を用いて、ユーザデータベース320を参照して、外部デバイス200から取得される秘密IDと、ユーザデータベース320から取得される秘密IDと、を照合し、さらに、ユーザから取得される秘密パスワードと、ユーザデータベース320から取得される秘密パスワードと、を照合することにより、ユーザおよび外部デバイス200を認証する。
その後、電子メール仲介プログラム316は、図7(c)に示すように、認証されたユーザに対して、認証された外部デバイス200が装着された送受信端末100を介して、電子メールサービスを提供する。具体的には、電子メール仲介プログラム316は、ASPプラットフォームプログラム324によって提供されるASPサービスの機能を活用して、送受信端末100に接続されたモニタ600の画面上に、独自のASPメーラーのユーザインターフェースを表示させることになる。
図8は、実施形態1におけるモニタの画面表示を説明するための概念図である。上述のように、独自のASPメーラーのユーザインターフェースを見たユーザが、独自のASPメーラーを用いて新規に電子メールを作成し、添付ファイルを添付し、送信先を指定して電子メールを送信すると、図8(d)に示すように、モニタ600の画面上には「送信中」の表示が現れる。
このとき、暗号化・復号化プログラム116は、電子メール仲介プログラム316と協働して、電子メールの平文または添付ファイルを、外部デバイス200から取得した暗号鍵・復号鍵216を用いて所定のアルゴリズムに基づいて自動的に暗号化することになる。そのため、電子メールの平文または添付ファイルの暗号化を行っていることをユーザに通知するために、モニタ600の画面上には「メールand添付ファイルを暗号化しています・・・」の表示が現れる。
そして、ユーザが誤って外部デバイス200を送受信端末100から外してしまうと、暗号鍵・復号鍵216を取得できなくなり、電子メールの平文または添付ファイルの暗号化ができなくなってしまうため、ユーザが誤って外部デバイス200を送受信端末100から外してしまわないように注意を喚起するべく、モニタ600の画面上には「外部デバイスを抜かないでください!!」の表示が現れる。
上述のように、電子メールの平文または添付ファイルの暗号化が完了し、暗号化された電子メールの送信が完了すると、図8(e)に示すように、「無事送信できました」の表示が現れる。そして、ユーザが外部デバイス200を送受信端末100から外しても大丈夫であることを通知するために、「外部デバイスを抜いても大丈夫です・・・」の表示が現れる。
次いで、ユーザが受信者側である場合のモニタの画面表示について説明する。なお、ユーザが外部デバイス200を送受信端末100に装着してから、送受信端末100に接続されたモニタ600の画面上に、独自のASPメーラーのユーザインターフェースが表示されるまでの一連の流れは、ユーザが送信者側である場合と同様であるので、説明を繰り返さない。
図9は、実施形態1におけるモニタの画面表示を説明するための概念図である。上述のように、独自のASPメーラーのユーザインターフェースを見たユーザが、独自のASPメーラーを用いて電子メールを受信すると、図9(f)に示すように、モニタ600の画面上には「受信中」の表示が現れる。
このとき、暗号化・復号化プログラム116は、電子メール仲介プログラム316と協働して、電子メールの平文または添付ファイルを、外部デバイス200から取得した暗号鍵・復号鍵216を用いて所定のアルゴリズムに基づいて自動的に復号化することになる。そのため、電子メールの平文または添付ファイルの復号化を行っていることをユーザに通知するために、モニタ600の画面上には「メールand添付ファイルを復号化しています・・・」の表示が現れる。
そして、ユーザが誤って外部デバイス200を送受信端末100から外してしまうと、暗号鍵・復号鍵216を取得できなくなり、電子メールの平文または添付ファイルの復号化ができなくなってしまうため、ユーザが誤って外部デバイス200を送受信端末100から外してしまわないように注意を喚起するべく、モニタ600の画面上には「外部デバイスを抜かないでください!!」の表示が現れる。
上述のように、電子メールの平文または添付ファイルの受信が完了し、暗号化された電子メールの復号化が完了すると、図9(g)に示すように、「無事受信できました」の表示が現れる。そして、ユーザが外部デバイス200を送受信端末100から外しても大丈夫であることを通知するために、「外部デバイスを抜いても大丈夫です・・・」の表示が現れる。
以下、実施形態1に係る暗号化メール送受信システム1000の動作の一連の流れについて、再度まとめなおして説明する。図10は、実施形態1に係る暗号化メール送受信システムの動作の概要を示したフローチャートである。
まず、送信側のユーザが自己に個別に配布された外部デバイス200を送受信端末100に装着すると、送受信端末100の外部デバイス問合部122が定期的に外部デバイス200の装着を問い合わせる(S202)。この問い合わせに対して、実際にはUSBメモリである外部デバイス200の認識制御部208が問合回答部206を介して自動起動の対象デバイス(CD−ROMドライブ)である旨を偽装して回答する(S102)。この回答を受け取った送受信端末100の外部デバイス認識制御部106は、外部デバイス200が自動起動の対象デバイス(CD−ROMドライブ)であることを確認する(S204)。
なお、送受信端末100の外部デバイス認識制御部106は、さらに外部デバイス200(CD−ROMドライブ)に挿入されているメディア(CD−ROM)の有無を、外部デバイス問合部122に問い合わせさせてもよい。この場合、この問い合わせに対して、実際にはUSBメモリであるためにメディア(CD−ROM)が挿入されていない外部デバイス200の認識制御部208が、問合回答部206を介して、最初はメディア(CD−ROM)が挿入されていなかったが、その後メディア(CD−ROM)が挿入された旨を偽装して回答する。この回答を受け取った送受信端末100の外部デバイス認識制御部106は、外部デバイス200(CD−ROMドライブ)にメディア(CD−ROM)が挿入されたことを確認する。
いずれにしても、上記のような回答を受け取った送受信端末100の外部デバイス認識制御部106は、自動起動実行部112に外部デバイス200のシステム記憶部のルートディレクトリ(CD−ROMドライブのルートディレクトリ)に格納されている自動起動スクリプト212(Autorun.inf)を実行する(S206)。
その外部デバイス200の自動起動スクリプト212には、自動起動プログラム213を送受信端末100に読み込ませ、実行させるための一連の命令が記述されている(S106)ため、送受信端末100の自動起動実行部112は、この自動起動スクリプト212の記述に従って、外部デバイス200から自動起動プログラム213を読み込んで開始することになる(S208)。
この自動起動プログラム213は、送受信端末100での動作を開始すると、外部デバイス200から秘密ID220を読み込む(S210)。そして、この自動起動プログラム213は、ユーザに対して送受信端末100に接続するモニタ600を介して秘密パスワードを問い合わせる(S212)。その後、ユーザがモニタ600の表示に対して、入力装置700を用いて送受信端末100に秘密パスワードを入力すると、送受信端末100で稼働している自動起動プログラム213は、ユーザから入力された秘密パスワードを取得する(S214)。
続いて、送受信端末100で稼働している自動起動プログラム213は、ネットワーク400などを介してユーザデータベースサーバ端末300にアクセスして、上述のようにして取得した秘密ID・秘密パスワードをユーザデータベースサーバ端末300に送信する(S216)。
送受信端末100で稼働している自動起動プログラム213によってアクセスされたユーザデータベースサーバ端末300では、常時稼働している電子メール仲介プログラム316が、ユーザデータベース320を参照し、ID・パスワード照合部310を用いて、外部デバイス200から取得される秘密IDと、ユーザデータベース320から取得される秘密IDと、を照合し、さらに、ユーザから取得される秘密パスワードと、ユーザデータベース320から取得される秘密パスワードと、を照合する(S316)。
そして、ユーザデータベースサーバ端末300で常時稼働している電子メール仲介プログラム316は、さらにユーザ・外部デバイス認証部312を用いて、上述の照合の結果をID・パスワード照合部310から受取り、秘密IDおよび秘密パスワードの照合結果が一致しているか否かを判定する(S318)。
電子メール仲介プログラム316は、判定の結果として秘密IDおよび秘密パスワードがともに一致していれば、ユーザ・外部デバイス認証部312を用いて、ユーザおよび外部デバイス200を認証する。そして、電子メール仲介プログラム316は、認証されたユーザに対して、認証された外部デバイス200が装着された送受信端末100を介して、ユーザデータベースサーバ端末300へのアクセスを許可する(S320)。
一方、電子メール仲介プログラム316は、判定の結果として秘密IDおよび秘密パスワードがともに一致していなければ、ユーザ・外部デバイス認証部312を用いて、ユーザおよび外部デバイス200を認証することはない。そして、電子メール仲介プログラム316は、認証されなかったユーザに対して、認証されなかった外部デバイス200が装着された送受信端末100に接続されたモニタ600を介して、秘密パスワードが間違っている旨をモニタ600上の画面表示によってユーザに回答する(S218)。そして、再度、ユーザに対して送受信端末100に接続するモニタ600を介して秘密パスワードを問い合わせる(S212)。
再び、ユーザが認証された場合に話を戻すと、電子メール仲介プログラム316は、ASPプラットフォームプログラム324を用いて、ASPメーラーのような形態でASP機能による電子メール仲介サービスを、認証された外部デバイス200が装着された送受信端末100に対して提供する(S322)。
その結果、認証された外部デバイス200が装着された送受信端末100では、ASPプラットフォームプログラム324およびそのプラットフォーム上で動作する電子メール仲介プログラム316の一部または全部を、一時的にASPプログラム一時記憶部118に読み込んで、送受信端末100に接続するモニタ600の画面上において、電子メール仲介プログラム316のユーザインターフェースを、認証されたユーザに表示する(S222)。
その後、電子メール仲介プログラム316は、認証されたユーザから送受信端末100に接続する入力手段700を介して送受信の指示が入力されたか否かを判定する(S224)。そして、電子メール仲介プログラム316は、その判定の結果、送受信の指示を受けた場合には、あらかじめ自動起動プログラム213によって送受信端末100上で起動されている暗号化・復号化プログラム116との協働を開始する(S226)。
一方、電子メール仲介プログラム316は、その判定の結果、送受信の指示を受けなかった場合には、暗号化・復号化プログラム116との協働を開始することはない。そして、電子メール仲介プログラム316は、送受信端末100に接続するモニタ600の画面上において、電子メール仲介プログラム316のユーザインターフェースを表示し続けるとともに、認証されたユーザから送受信端末100に接続する入力手段700を介して送受信の指示が入力されるのを待ち受ける(S222)。
再び、送受信の指示が入力された場合に話を戻すと、電子メール仲介プログラム316は、外部デバイス200から暗号化・復号化を行うために必要な暗号鍵・復号鍵216を送受信端末100に読み込む(S228)。そして、電子メール仲介プログラム316は、認証されたユーザから入力された送受信の指示が、送信または受信のいずれの指示であるかを判定する(S230)。
電子メール仲介プログラム316は、その判定の結果が送信の指示であった場合には、暗号化・復号化プログラム116と協働して、外部デバイス200から読み込んだ暗号鍵・復号鍵から、所定のアルゴリズムに基づいて自動的に疑似乱数からなる鍵系列を生成する(S232)。そして、電子メール仲介プログラム316は、暗号化・復号化プログラム116と協働して、その鍵系列を用いて、所定のアルゴリズムに基づいて自動的に電子メールの平文または添付ファイルを内部同期型ストリーム暗号方式によって暗号化する(S234)。その後、電子メール仲介プログラム316は、ユーザデータベースサーバ端末300に対して、暗号化された電子メールを送信する(S236)。
一方、電子メール仲介プログラム316は、その判定の結果が受信の指示であった場合には、ユーザデータベースサーバ端末300から、暗号化された電子メールを受信する(S238)。そして、電子メール仲介プログラム316は、暗号化・復号化プログラム116と協働して、外部デバイス200から読み込んだ暗号鍵・復号鍵から、所定のアルゴリズムに基づいて自動的に疑似乱数からなる鍵系列を生成する(S240)。その後、電子メール仲介プログラム316は、その鍵系列を用いて、所定のアルゴリズムに基づいて自動的に暗号化された電子メールの平文または添付ファイルを内部同期型ストリーム暗号方式によって復号化する(S242)。
以下、実施形態1の暗号化メール送受信システムの作用効果について説明する。
実施形態1の暗号化メール送受信システム1000は、特定の登録ユーザの記憶する秘密パスワードおよび特定の登録ユーザに個別に配布された外部デバイス200a、200bによって、その特定の登録ユーザに権限が付与されていることを2重に認証することができ、高度なセキュリティを保持することができる。また、この暗号化メール送受信システム1000によれば、外部デバイス200a、200bに格納された秘密IDは特定の登録ユーザにより記憶されていないため、特定の登録ユーザの犯す人為的ミスにより秘密IDが外部流出する危険性を抑制することができる。
また、この暗号化メール送受信システム1000では、特定の登録ユーザは外部デバイス200a、200bを送受新端末100a、100bに装着し、自動起動プログラムによって要求される秘密パスワードを入力するという簡便な手続により、権限を有することを認証され、高度なセキュリティを保持することができる。
そして、この暗号化メール送受信システム1000では、特定の登録ユーザは電子メールを送受信する操作を行うだけで、暗号化・復号化プログラムが電子メール仲介プログラムと協働して、自動的に電子メールの平文または添付ファイルを暗号化・復号化するため、特定の登録ユーザは簡便な操作により高度なセキュリティが保持された暗号化メール送受信システム1000を利用することができる。また、この暗号化メール送受信システム1000によれば、外部デバイス200a、200bに格納された暗号鍵・復号鍵は特定の登録ユーザにより記憶されていないため、特定の登録ユーザの犯す人為的ミスにより暗号鍵・復号鍵が外部流出する危険性を抑制することができる。
<実施形態2>
実施形態2に係る暗号化メール送受信システムは、基本的には実施形態1に係る暗号化メール送受信システムと同様の構成等を有するが、医療機関向けオンライン診療報酬請求用の暗号化メール送受信システムとして活用するために、一部改変が加えられている点で実施形態1に係る暗号化メール送受信システムとは異なる。以下、実施形態2に係る暗号化メール送受信システムについて説明するが、実施形態1と同様の構成等については、説明を繰り返さない。
図13は、実施形態2に係る医療機関向けオンライン診療報酬請求用の暗号化メール送受信システムを活用したビジネスモデルの概要を示した概念図である。ここで、医療機関が発行する診療報酬請求書は、別名レセプトとも言われるが、レセプト電算処理システムの開発が官民を挙げて進められている。このレセプト電算処理システムについては、平成13年12月に策定された「保険医療分野の情報化にむけてのグランドデザイン」を踏まえて、厚生労働省及び審査支払機関が一体となって、その普及促進に努めている。
このレセプト電算処理システムは、事務処理の効率化を図ることを目的とするものであり、医療機関においては、請求事務に関わるレセプトの大量印刷が不要となるなど大きな効果がある。さらに、請求事務が軽減されるといった人事管理面の改善効果も期待できるため、導入されれば多大な経済効果および医療費抑制効果が見込まれる。
しかし、このレセプト電算処理システムを構築するにあたっては、レセプト請求用書類の電子化(ファイル化)自体は既に実現しているが、その電子データが暗号化されていないケースも多く、仮に暗号化されていても暗号化の強度の面で不十分であった。この点、レセプト請求用書類には、多くの患者の個人情報が含まれていることから、プライバシー保護の観点からさらなる改善の余地があった。また、レセプト請求用書類は、医療機関の収益に直結する存在であり、健康保険組合または国家財政などの歳出にも直結する存在であるため、請求漏れが発生すると医療機関の経営危機に発展するおそれがあり、不正請求が発生すると国家財政の危機に発展するおそれがあるため、さらなるセキュリティの向上が求められている。
そして、図13に示すように、このレセプト電算処理システムを構築するにあたっては、数少ない支払い審査機関に対して数多くの診療所・病院などをオンラインで接続する必要があり、これらの間を直接専用線で接続することは経済的・技術的な面から現実的ではない。そのため、実際にレセプト電算処理システムを構築するにあたっては、数少ない支払い審査機関および多くの診療所・病院の間に中継センターを設けて、この中継センターを介してレセプト電子データを送受信することが現実的である。
この場合、支払審査機関および中継センターの間の回線は、それぞれの数が少ないため、専用線またはVPNなどの高度なセキュリティを有する比較的高価な回線で接続することも経済的・技術的観点から可能である。しかし、個別の医療機関および中継センターの間は、専用線またはVPNなどで接続して高セキュリティ化するには、設置コストおよび運用コストが嵩みすぎるため、経済的・技術的観点から困難である。
よって、個別の医療機関および中継センターの間は、インターネットなどの既存の回線をそのまま活用することによって、設置コストおよび運用コストを抑制することが求められるが、その場合のセキュリティを如何にして高度なものとして維持するかが大きな課題となっている。
実施形態2に係るオンライン診療報酬請求用の暗号化メール送受信システムは、上記のような個別の医療機関および中継センターの間におけるセキュリティの脆弱性を改善し、レセプト電算処理システムを構築するための暗号化メール送受信システムとして、実施形態1に係る暗号化メール送受信システムをカスタマイズすることによって、本発明者が開発したものである。
実施形態2に係るオンライン診療報酬請求用の暗号化メール送受信システムの全体構成は、図1に示した実施形態1に係る暗号化メール送受信システムの全体構成と同様であるため、説明を省略する。以下、いきなりではあるが、実施形態2に係るオンライン診療報酬請求用の暗号化メール送受信システムに用いられる各構成要素の内部構成について詳細に説明する。
図14は、実施形態2に用いられる外部デバイスの詳細な内部構成を示した機能ブロック図である。この外部デバイス200の構成は、基本的には、図2で示した外部デバイス200の構成と同様であるが、システム記憶部210に専用アドインプログラム215および暗号化・復号化プログラム116が格納されており、さらに暗号記憶部214に格納されているのが、いわゆる秘密共通鍵からなる暗号鍵・復号鍵ではなく、いわゆる秘密復号鍵217である点でも異なっている。
図15は、実施形態2に用いられる送受信端末の詳細な内部構成を示した機能ブロック図である。この送受信端末100の構成は、基本的には、図3で示した送受信端末100の構成と同様であるが、アプリケーション記憶部114にレセプト作成プログラム135および電子カルテ137が格納されており、さらに暗号化・復号化プログラムが格納されていない点でも異なっている。
図16は、実施形態2に用いられるユーザデータベースサーバ端末の詳細な内部構成を示した機能ブロック図である。このユーザデータベースサーバ端末300の構成は、基本的には、図4で示したユーザデータベースサーバ端末300の構成と同様であるが、暗号化・復号化プログラム315を格納する暗号システム記憶部313を備える点で異なっている。
図17は、実施形態2におけるユーザデータベースの構成および暗号化・復号化の機能を説明するための概念図である。このユーザデータベース320の構成は、図17(a)で示すように、基本的には、図5で示したユーザデータベースサーバ端末320の構成と同様であるが、公開暗号鍵の項目を有する列が追加されている点で異なっている。また、実施形態2における暗号化・復号化の機能は、図17(b)に示すように、秘密共通鍵方式ではなく、公開暗号鍵方式を用いている点で実施形態1とは異なっている。
ここで、図17(b)に示すように、この暗号化メール送受信システム1000においては、暗号化電子メールの平文または添付ファイルを復号するための復号鍵は、外部デバイス200に固有の秘密復号鍵217である。そして、図17(a)に示すように、ユーザデータベースサーバ端末300に格納されているユーザデータベース320は、各ユーザに対応付けられており、各秘密復号鍵217に一対一で対応する公開暗号鍵をさらに含んでいる。
そして、ユーザデータベースサーバ端末300に格納されているASPサービス型の暗号化・復号化プログラム315は、公開鍵暗号方式のアルゴリズムに基づいており、電子メールを送信する際には、電子メールの送付先の各ユーザに対応付けられている公開暗号鍵をユーザデータベース320から取得し、その公開暗号鍵を用いて電子メールの平文および添付ファイルを暗号化する機能をASPサービスとして提供する。さらに、この暗号化・復号化プログラム315は、電子メールを受信する際には、外部デバイス200から秘密復号鍵217を取得し、その秘密復号鍵217を用いて電子メールの平文および添付ファイルを復号化する機能をASPサービスとして提供する。
ここで、公開鍵暗号(Public key cryptosystem)とは、暗号化と復号に別個の鍵(手順)を使い、暗号化の為の鍵を公開できるようにした暗号方式である。一般的に、暗号は通信の秘匿性を高めるための手段だが、それに必須の鍵もまた情報なので、鍵自体を受け渡す過程で盗聴されてしまうリスクがあり、秘匿性を高める障害となっていた。この問題に対して、暗号化鍵の配送問題を解決したのが公開鍵暗号である。
1970年代までは、暗号と言えば共通鍵暗号であった。これは、暗号化と復号に同じ鍵を使うものである。普通にイメージすれば、暗号化する方法を知っているなら逆手順で復号できそうなものである。共通鍵暗号の場合はまさにそうであって、傍受者に暗号化手順を知られれば即、暗号通信の安全性が損なわれてしまうという欠点があった。
つまり、共通鍵暗号には、鍵の配送に以下の問題があった。まず、受信者は、あらかじめ送信者に対して密かに共通鍵Cを渡しておく。次いで、送信者はCを使ってメッセージを暗号化してから受信者に向かって送信する。そして、受信者は、Cを使って暗号文を復号し、メッセージを読む。この場合、傍受者が、暗号文を傍受したとする。もし、受信者が送信者にCを手渡すときの通信をも傍受していれば、傍受者はCを使って暗号文を復号し、メッセージを盗み見ることができる。
これに対して公開鍵暗号は、暗号化の手順が分かってもそこから復号の手順を割り出すことは難しいという不思議な暗号である。そのため、鍵の配送(暗号化鍵をどのようにして送信者に手渡すか)が容易になる。
つまり、まず、通信を受ける者(受信者)は自分の公開鍵(暗号化鍵)Pを全世界に公開する。次いで、受信者に対して暗号通信をしたい者(送信者)は、公開鍵Pを使ってメッセージを暗号化してから送信する。一方、受信者は、公開鍵Pと対になる秘密鍵(復号のための鍵)Sを密かに持っている。このSを使って受信内容を復号し、送信者からのメッセージを読む。この場合、暗号通信を不正に傍受しようとする者(傍受者)が、送信者が送信した暗号化された文を傍受したとする。傍受者は、公開鍵Pは知っているが、秘密鍵Sは受信者だけが知っている情報であるので分からない。PからSを割り出すことは極めて難しい。そのため、暗号文を復号することはできない。
すなわち、この実施形態2の暗号化メール送受信システム1000では、開業医をはじめとするユーザは、支払審査機関などから個別に配布された外部デバイス200を送受信端末100に装着し、秘密パスワードを入力するだけの簡便な手続によって、秘密共通鍵方式を採用していた実施形態1の暗号化メール送受信システム1000よりも、高度なセキュリティを有する公開暗号鍵方式を採用した暗号化メール送受信システム1000を利用することができる。
また、この暗号化メール送受信システム1000では、外部デバイス200は、自動起動プログラム213によって起動され、送受信端末100にあらかじめ格納されているマイクロソフト(R)社のOutlook Express(R)などの一般メーラー114に組み込まれることによって、そのメーラーを電子メール仲介プログラム316に電子メールを受け渡すための専用メーラーに変換する、専用アドインプログラム215を格納している。
そのため、開業医をはじめとするユーザは、支払審査機関などから個別に配布された外部デバイス200を送受信端末100に装着し、秘密パスワードを入力するだけの簡便な手続によって、Outlook Express(R)などの普段から使い慣れた一般メーラー114のユーザインターフェースを通じて、電子メール仲介プログラム316のASPサービスを享受することが可能となる。
さらに、この暗号化メール送受信システム1000では、暗号化・復号化プログラム315は、ユーザデータベースサーバ端末300に搭載されており、外部デバイス200の自動起動プログラム213によって、送受信端末100のASPプログラム一時記憶部118に一時的に読み込まれる。
そのため、開業医をはじめとするユーザは、自己の所有するPC端末をはじめとする送受信端末100にあらかじめ暗号化・復号化プログラムをインストールしておく必要はなく、支払審査機関などから個別に配布された外部デバイス200を送受信端末100に装着し、秘密パスワードを入力するだけの簡便な手続によって、電子メール仲介プログラム316および暗号化・復号化プログラム315の協働によって実現するASPサービスを享受することが可能となる。
図18は、実施形態2におけるモニタの画面表示を説明するための概念図である。実施形態2においても、基本的には実施形態1と同様の画面表示が用いられるため、説明の簡便のために、ユーザが送信者側である場合のモニタの画面表示についてのみ説明する。
実施形態2の暗号化メール送受信システム1000でも、開業医をはじめとするユーザが、自己の所有するPC端末をはじめとする送受信端末100に、支払審査機関などから個別に配布された外部デバイス200を装着すると、送受信端末100の自動起動実行部112によって、外部デバイス200に格納された自動起動プログラム213が起動され送受信端末100に接続されたモニタ600の画面上に、ユーザの記憶している秘密パスワードを入力する要求が表示される。
そして、モニタ600の画面を見たユーザが、キーボードおよびマウスからなる入力装置700を用いて、送受信端末100に秘密パスワードを入力し、マウスを用いて画面上の認証ボタンをクリックすると、自動起動プログラム213がユーザデータベースサーバ端末300にアクセスする。
すると、ユーザデータベースサーバ端末300で常時稼働している電子メール仲介プログラム316が、ID・パスワード照合部310およびユーザ・外部デバイス認証部312を用いて、ユーザデータベース320を参照して、外部デバイス200から取得される秘密IDと、ユーザデータベース320から取得される秘密IDと、を照合し、さらに、ユーザから取得される秘密パスワードと、ユーザデータベース320から取得される秘密パスワードと、を照合することにより、ユーザおよび外部デバイス200を認証する。
その後、電子メール仲介プログラム316は、認証されたユーザに対して、認証された外部デバイス200が装着された送受信端末100を介して、電子メールサービスを提供する。具体的には、電子メール仲介プログラム316は、Outlook Express(R)などの普段から使い慣れた一般メーラー114に外部デバイス200の専用アドインプログラムを組み込んでなる専用メーラーを作成する。そして、電子メール仲介プログラム316は、図18(a)に示すように、専用メーラーの送信ボタンおよび送信先などのユーザによるレセプト送信に必要な項目を、さらに送受信端末100の電子カルテ137に連動したレセプト作成プログラム135のユーザインターフェースの下部などにリンクして表示させる。
そして、開業医またはその開業医の雇用する事務担当者などのユーザが、一ヶ月の診療を終えた月末に当月のレセプトを作成し、そのレセプトに対応する支払審査機関あてにレセプトを送信する指示を入力すると、電子メール仲介プログラム316および暗号化・復号化プログラム315は、図18(b)に示すように、ASPプラットフォームプログラム324によって提供されるASPサービスの機能を活用して、電子メールに添付されたレセプトファイルを協働して暗号化して、支払審査機関に送信する。
そのため、開業医をはじめとするユーザは、自己の所有するPC端末をはじめとする送受信端末100にあらかじめ暗号化・復号化プログラムをインストールしておく必要はなく、支払審査機関などから個別に配布された外部デバイス200を送受信端末100に装着し、秘密パスワードを入力するだけの簡便な手続によって、日本医師会などが配布している普段から使い慣れたレセプト作成プログラム135のユーザインターフェースを通じて、簡便な操作によって、電子メール仲介プログラム316および暗号化・復号化プログラム315の協働によって実現する、高度なセキュリティに守られた暗号化メール送受信システム1000を利用することが可能となる。
すなわち、この暗号化メール送受信システム1000は、セキュアで、かつ人為的ミスを排除する、自動暗号化メール配信システムを目的として開発されたものである。この暗号化メール送受信システム1000は、実施形態1に係る暗号化メールシステム1000と同様の構成であるため、送受信時に添付ファイルの自動暗号化および復号化する機能を有する専用メールソフトをユーザに提供する。
なお、この暗号化メール送受信システム1000は、IT関連技術に疎い高齢の開業医の使い勝手をよくするために、実施形態1では盛り込まれていない独自の機能である、自動到達確認システムを装備してもよく、添付したファイルの復号化を管理するインフラシステムも装備してもよい。また、この暗号化メール送受信システム1000は、インターネット上の専門サイトにおいて配信ルール・指定送付先等の各種情報を提供してもよい。
また、この暗号化メール送受信システム1000は、開業医の診療所だけでなく、比較的経済的に余裕のある中小規模の病院にも対応するために、図13の医療機関および中継センターの間におけるインターネット回線の部分を必要に応じてVPN化することも可能なシステムとなっている。さらに、この暗号化メール送受信システム1000は、在宅診療制度の導入に伴って往診中の開業医が診療所の外部からもアクセス可能なように、WEBメールでの実現も可能なシステムとなっている。
この暗号化メール送受信システム1000において、WEBメールでの実現も可能とするには、電子メール仲介プログラム316は、WEBメールプログラムとしてのユーザインターフェースを有しており、外部デバイス200は、自動起動プログラム213によって起動され、送受信端末100にあらかじめ格納されているWEBブラウザ133に指示することによって、WEBメールプログラムのホームページにアクセスする、自動アクセススクリプトを格納している構成が推奨される。
この暗号化メール送受信システム1000をWEBメールで実現した場合の特徴としては、さらに以下のような点がある。すなわち、この暗号化メール送受信システム1000には、ファイル添付時に自動暗号化する機能を有するASPプログラムと協働し得るメール配信機能が、いわばWEBメールに専用アドインを組み込んだ専用メーラーに備わっているような使い勝手を実現できる。
また、この暗号化メール送受信システム1000では、暗号化・復号化プログラム315は、ASP機能を有する形態で中継センターに設けられたユーザデータベースサーバ端末300に内蔵される為、個別PCである送受信端末100へのインストールは必要ない。そして、この暗号化メール送受信システム1000では、送信者側・受信者側が、指定する外部デバイス200(USBメモリなど)をクライアントPCである送受信端末100に装着した場合のみ、暗号化・復号化することが出来る仕組みを持つことで、個人認証を行うことが可能である。
そして、上記のような機能を実現するための暗号化メール送受信システム1000の各コンポーネントについての想定導入先としては、電子レセプト・システム(への組み込み)を組み込んだPC端末や、その他、支払審査機関の組織におけるサーバやPC端末全般などが想定される。
一方、従来公知のオンラインレセプト請求システムでは、ファイルを暗号化する仕組みとメールに添付する仕組みが、連動していない為、暗号化しないで添付して送る可能性が高く、送信者と受信者の双方が、予め共通する認証鍵を持っていなければ成らないと言う面でさらなる改善の余地があった。
これに対して、この暗号化メール送受信システム1000を利用したオンラインレセプト請求システムでは、ファイル添付するときに自動的に暗号化するため、暗号しないでメールを送付する危険性が無い。また、この暗号化メール送受信システム1000は、送信側のIDと受信側のIDを管理するインフラシステムを持つため、送信者から添付ファイルであるレセプトデータの復号化を許可する受信者を指定する仕組みを持つ。すなわち、復号化管理システムとしての管理機能も有するユーザデータベースサーバ端末300は、事前に登録されたClient端末のID番号を総合的に管理し、事前に登録されたClient端末は、自ら有する物理ID(秘密ID)とパスワードとの照合により同システムにログインすることを許可され、送信者側端末が、指定する受信者側端末に復号化の許可を与える仕組みを持つ。さらに、この暗号化メール送受信システム1000は、レセプトデータの到達確認を実現するシステムを有することが好ましい。
<実施形態3>
実施形態3に係る暗号化メール送受信システムは、基本的には実施形態1に係る暗号化メール送受信システムと同様の構成等を有するが、一部改変が加えられている点で実施形態1に係る暗号化メール送受信システムとは異なる。以下、実施形態3に係る暗号化メール送受信システムについて説明するが、実施形態1と同様の構成等については、説明を繰り返さない。
図19は、実施形態3に係る暗号化メール送受信システムの全体構成の概要を示した機能ブロック図である。実施形態3に係る暗号化メール送受信システム1000の全体構成は、図1に示した実施形態1に係る暗号化メール送受信システム1000の全体構成と同様であるが、メーラー専用サーバ端末900および暗号化・復号化専用サーバ端末910を備える点で異なっている。
なお、メーラー専用サーバ端末900には、液晶ディスプレイなどのモニタ600d、キーボードまたはマウスなどの入力装置700d、レーザプリンタなどの800dなどが接続されており、さらに回線500dを介してインターネットなどの外部のネットワーク400に接続している。一方、暗号化・復号化専用サーバ端末910にも、液晶ディスプレイなどのモニタ600e、キーボードまたはマウスなどの入力装置700e、レーザプリンタなどの800eなどが接続されており、さらに回線500eを介してインターネットなどの外部のネットワーク400に接続している。
この暗号化メール送受信システム1000は、回線500dを介してネットワーク400に接続され、電子メール仲介プログラム316に電子メールを受け渡すための専用メーラーを格納している、メーラー専用サーバ端末900をさらに備えている。そして、送受信端末100a、100bの自動起動実行部112は、メーラー専用サーバ端末900にアクセスして、専用メーラーを送受信端末100a、100bに一時的に読み込んで稼働させるように構成されている。
そのため、この暗号化メール送受信システム1000では、ユーザは、個別に配布された外部デバイス200を送受信端末100に装着し、秘密パスワードを入力するだけの簡便な手続によって、この暗号化メール送受信システム1000に特化した専用メーラーの使い勝手のよいユーザインターフェースを通じて、電子メール仲介プログラム316によるASPサービスを享受できる。
また、この暗号化メール送受信システム1000は、回線500dを介してネットワーク400に接続されている暗号化・復号化専用サーバ端末910をさらに備えている。そして、この暗号化・復号化専用サーバ端末910に搭載されている暗号化・復号化プログラムは、外部デバイス200の自動起動プログラム213によって送受信端末100に一時的に読み込まれる。
そのため、この暗号化メール送受信システム1000では、ユーザは、送受信端末100にあらかじめ暗号化・復号化プログラムをインストールしておく必要はなく、個別に配布された外部デバイス200を送受信端末100に装着し、秘密パスワードを入力するだけの簡便な手続によって、電子メール仲介プログラム316および暗号化・復号化プログラムの協働によってASPサービスとして実現するこの暗号化メール送受信システム1000を利用できる。
<実施形態4>
実施形態4に係る暗号化メール送受信システムは、基本的には実施形態1に係る暗号化メール送受信システムと同様の構成等を有するが、一部改変が加えられている点で実施形態1に係る暗号化メール送受信システムとは異なる。以下、実施形態4に係る暗号化メール送受信システムについて説明するが、実施形態1と同様の構成等については、説明を繰り返さない。
実施形態4に係るオンライン診療報酬請求用の暗号化メール送受信システムの全体構成は、図1に示した実施形態1に係る暗号化メール送受信システムの全体構成と同様であるため、説明を省略する。以下、いきなりではあるが、実施形態4に係るオンライン診療報酬請求用の暗号化メール送受信システムに用いられる外部デバイスの内部構成について詳細に説明する。
図20は、実施形態4に用いられる外部デバイスの詳細な内部構成を示した機能ブロック図である。この外部デバイス200の構成は、基本的には、図2で示した外部デバイス200の構成と同様であるが、システム記憶部210に専用メーラー219が格納されて点で異なっている。さらに、この外部デバイス200の構成は、暗号記憶部214に格納されているのが、いわゆる秘密共通鍵からなる暗号鍵・復号鍵ではなく、いわゆる秘密復号鍵217である点でも異なっているが、この点の説明は既に実施形態2で行ったので繰り返さない。
この暗号化メール送受信システム1000では、外部デバイス200は、自動起動プログラム213によって起動され、ユーザデータベースサーバ300の電子メール仲介プログラム316に電子メールを受け渡すための専用メーラー219を格納している。
そのため、この暗号化メール送受信システム1000では、ユーザは、個別に配布された外部デバイス200を送受信端末100に装着し、秘密パスワードを入力するだけの簡便な手続によって、この暗号化メール送受信システム1000に特化した専用メーラー219の使い勝手のよいユーザインターフェースを通じて、電子メール仲介プログラム316によるASPサービスを享受できる。
以上、図面を参照して本発明の実施形態について述べたが、上記の実施形態はあくまで例示であり、種々の変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
例えば、上記の実施形態1では、ユーザデータベースサーバ300に、電子メール仲介プログラム316が搭載されているが、特にこのような構成に限定する趣旨ではない。すなわち、上記の実施形態1の変形例として、電子メール仲介プログラム316を搭載するための専用のサーバを別途設ける構成としても、実施形態1の場合と同様の動作を行うことが可能であるため、同様の作用効果が得られる。