以下、本発明を実施するための形態について説明する。
まず、本実施形態に係る情報管理システムの構成について図面を参照しつつ説明する。
情報管理システム1は、図1に示すように、端末装置10と、サーバ装置20と、記憶装置30と、を備え、これらは、インターネットなどのネットワークNを介して相互に通信可能に接続されている。
図2は、端末装置の構成例を示すブロック図である。
端末装置10は、例えば顧客の個人情報を取り扱う企業内に設置され、汎用のパーソナルコンピュータ、タブレットコンピュータ、又はスマートフォン等から構成されている。端末装置10は、図2に示すように、操作部11と、記憶部(ストレージ)12と、通信部13と、表示部14と、制御部(プロセッサ)15と、を備え、これらはバスを介して相互に通信可能に接続されている。
操作部11は、例えばキーボード及びマウス、若しくはタッチパネル等から構成されている。操作者は、操作部11でログインID(Identifier)及びパスワード等を入力するとともに、サーバ装置20へのログインを指示する。
操作者は、操作部11で顧客の個人情報を入力し、入力した個人情報の登録を指示する。この個人情報には、顧客の氏名、住所、電話番号、ファクシミリ番号、及び電子メールアドレス等の複数の項目が含まれている。
操作者は、操作部11で顧客の個人情報に含まれる複数の項目のうち、いずれかの項目を入力し、入力した項目を含む個人情報の検索を指示する。そして、操作者は、操作部11でサーバ装置20からのログアウトを指示する。
記憶部12は、例えばハードディスクドライブ又はフラッシュメモリ等から構成され、JIS規格文字コード表のように標準規格とされている規格文字コード表を記憶する。
ここで、規格文字コードは、コンピュータ上で文字を利用するために各文字に割り当てられるバイト表現である。そして、JIS規格文字コードは、2バイト系文字コードであって、俗に「全角文字」と呼ばれることもあり、英文字や、数字、漢字、ひらがな、カタカナなどの各文字に“00000”〜“65535”(10進数)の数字が割り当てられている。なお、本願における「文字」には、英文字や、数字、漢字、ひらがな、カタカナ、記号などあらゆる文字が含まれている。
なお、規格文字コード表は、アスキー(ASCII: American Standard Code for Information Interchange)コード表であってもよい。アスキーコードは、1バイト系文字コードであって、俗に「半角文字」と呼ばれることもあり、英文字や数字などの各文字に“000”〜“127”(10進数)の数字が割り当てられている。
また、記憶部12は、規格文字コードに対応する文字を表示するための規格フォントを記憶する。
通信部13は、例えばNIC(Network Interface Card)等から構成され、操作部11で入力されたログインID及びパスワードをネットワークNを介してサーバ装置20に送信する。また、通信部13は、サーバ装置20からネットワークNを介して送信される変換フォントを受信する。
通信部13は、操作部11で入力された顧客の個人情報を示す文字列に対応する規格文字コード列をネットワークNを介してサーバ装置20に送信する。また、通信部13は、顧客の個人情報の登録が完了した旨の通知を、サーバ装置20からネットワークNを介して受信する。
通信部13は、操作部11で入力された項目を示す文字列に対応する規格文字コード列をネットワークNを介してサーバ装置20に送信する。また、通信部13は、記憶装置30からネットワークNを介して送信される個人情報を示す文字列に対応する変換文字コード列を受信する。
表示部14は、例えば汎用の液晶表示装置等から構成され、顧客の個人情報の登録が完了した旨を表示する。また、表示部14は、通信部13で受信した変換文字コード列から特定される文字列を表示する。
制御部15は、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)、及びRAM(Random Access Memory)等から構成され、CPUがRAMをワークメモリとして用い、ROMに記憶されているプログラムを適宜実行することにより、端末装置10の各種動作を制御する。
制御部15は、操作者によって操作部11でサーバ装置20へのログインが指示されたことに応答して、操作部11で入力されたログインID及びパスワードを通信部13からネットワークNを介してサーバ装置20に送信することにより、サーバ装置20にログインする。制御部15は、サーバ装置20に送信したログインID及びパスワードに対応する変換フォントを、サーバ装置20からネットワークNを介して通信部13で受信してRAM等に設定する。
制御部15は、ログイン中に操作者によって操作部11で顧客の個人情報の登録が指示されたことに応答して、操作部11で入力された顧客の個人情報を示す文字列に対応する規格文字コード列を通信部13からネットワークNを介してサーバ装置20に送信することにより、顧客の個人情報の登録をサーバ装置20に要求する。
制御部15は、サーバ装置20からネットワークNを介して送信される顧客の個人情報の登録が完了した旨の通知を通信部13で受信したことに応答して、その旨を表示部14に表示する。
制御部15は、操作者によって操作部11で入力された項目を含む顧客の個人情報の検索が指示されたことに応答して、操作部11で入力された個人情報の項目を示す文字列に対応する規格文字コード列を、通信部13からネットワークNを介してサーバ装置20に送信することにより、操作部11で入力された項目を含む顧客の個人情報の検索を記憶装置20に要求する。
制御部15は、操作部11で入力された項目を含む顧客の個人情報を示す文字列に対応する変換文字コード列を、記憶装置30からネットワークNを介して通信部13で受信したことに応答して、サーバ装置20にログインしているか否かを判別する。
制御部15は、サーバ装置20にログインしていると判別した場合、RAM等に設定されている変換フォントを用いて、通信部13で受信した変換文字コード列を構成する各変換文字コードに対応する文字を表示部14に表示する。これにより、表示部14には、個人情報を示す文字列が表示される。
制御部15は、サーバ装置20にログインしていないと判別した場合、記憶部12に記憶されている規定フォントを用いて、通信部13で受信した変換文字コード列を構成する各変換文字コードに対応する文字を表示部14に表示する。これにより、表示部14には、文字化けした文字列が表示される。
制御部15は、操作者によって操作部11でサーバ装置20からのログアウトが指示されたことに応答して、サーバ装置20からログアウトするとともに、RAM等に設定されている変換フォントを消去する。
図3は、サーバ装置の構成例を示すブロック図である。
サーバ装置20は、例えば汎用のサーバコンピュータ等から構成され、図3に示すように、通信部21と、記憶部(ストレージ)22と、制御部(プロセッサ)23と、を備え、これらはバスを介して相互に通信可能に接続されている。
通信部21は、例えばNIC等から構成され、端末装置10からネットワークNを介して送信されるログインID及びパスワードを受信する。また、通信部21は、変換フォントをネットワークNを介して端末装置10に送信する。
通信部21は、端末装置10からネットワークNを介して送信される顧客の個人情報を示す文字列に対応する規格文字コード列を受信する。また、通信部21は、顧客の個人情報を示す文字列に対応する変換文字コード列をネットワークNを介して記憶装置30に送信する。
通信部21は、顧客の個人情報の登録が完了した旨の通知を、記憶装置30からネットワークNを介して受信する。また、通信部21は、顧客の個人情報の登録が完了した旨の通知をネットワークNを介して端末装置10に送信する。
通信部21は、端末装置10からネットワークNを介して送信される個人情報の項目を示す文字列に対応する規格文字コード列を受信する。また、通信部21は、個人情報の項目を示す文字列に対応する変換文字コード列をネットワークNを介して記憶装置30に送信する。
記憶部22は、例えばハードディスクドライブ等から構成され、変換DB(Database)220を記憶している。
図4は、変換DBの構成例を示す図である。
変換DB220は、図4に示すように、ログインIDと、パスワードと、変換テーブル221と、変換フォントと、を対応付けて登録している。
図5は、変換テーブルの構成例を示す図である。
変換テーブル221は、図5に示すように、各文字に規格文字コードと変換文字コードとを対応付けて登録している。変換文字コードは、PCT/JP2014/52463のの明細書、特許請求の範囲、及び図面に開示されているように、規格文字コード表と暗号鍵とを使用して、生成される。なお、本明細書中にPCT/JP2014/52463の明細書、特許請求の範囲、及び図面全体を参考として取り込むものとする。
具体的には、規格文字コード表の各文字に割り当てられている規格文字コードに所定の暗号化処理を施すことにより、各文字に対応する暗号文字列が生成される。本実施形態では、各文字に割り当てられている規格文字コードを、例えば端末装置10毎又は端末装置10が設置されている企業毎に割り当てられた暗号鍵を使用してラインダール(Rijndael)暗号化方式で暗号化することにより、各文字に対応する暗号文字列が生成される。
なお、暗号化方式は、ラインダール暗号化方式に限定されるものではなく、他の暗号化方式であってもよい。例えば楕円曲線暗号(ECC: Elliptic Curve Cryptography)や、RSA(Rivest-Shamir-Adleman)暗号、エルガマル暗号などの非対称暗号(公開鍵暗号)は、本発明に好適に適用可能である。また、AES(Advanced Encryption Standard)暗号やDES(Data Encryption Standard)暗号なども本発明に適用可能である。あるいは、規格文字コードを暗号化以外の手法、所定のアルゴリズムに従って変換してもよい。さらに、端末装置10毎又は端末装置10が設置されている企業毎に適用する暗号化方式を異ならせてもよい。
一例として、図6に示すように、規格文字コード“00000”を、暗号鍵“R28djaowis912jaas0slwodkqod3m010”を使用して、ラインダール暗号化方式で暗号化し、暗号文字列“ans9ewjdses3aexa”が生成される。また、規格文字コード“00001”から暗号文字列“cmrfxqxqpasdkfq3rx”が、規格文字コード“00002”から暗号文字列“mxjqwjfxaajrfcjwwrex”が、…規格文字コード“65535”から暗号文字列“eiu37sgcvjw4y8”がそれぞれ生成される。
次に、生成された暗号文字列をアルファベット順に並び替えることにより、暗号文字列に対応する各文字が並び替えられる。図6に示す例では、規格文字コード“00000”から生成された暗号文字列“ans9ewjdses3aexa”、規格文字コード“00001”から生成された暗号文字列“cmrfxqxqpasdkfq3rx”、規格文字コード“65535”から生成された暗号文字列“eiu37sgcvjw4y8”、及び規格文字コード“00002”から生成された暗号文字列“mxjqwjfxaajrfcjwwrex”の順で並び替えられる。なお、暗号文字列の順番は、任意に変更可能であり、予め定められたものであってもよいし、例えば所定のアルゴリズムに従って暗号鍵を使用して生成されるようにしてもよい。
暗号文字列のアルファベット順に従って並べ替えられた各文字に、“00000”〜“65535”(10進数)の数字を順番に割り当て直して、これを変換文字コードとする。そして、各文字に規格文字コードと変換文字コードとを対応付けて登録することにより、変換テーブル221が生成される。
変換フォントは、変換文字コードに対応する文字を表示するためのものである。
図3に示す制御部23は、例えばCPU、ROM、及びRAM等から構成され、CPUがRAMをワークメモリとして用い、ROMに記憶されているプログラムを適宜実行することにより、サーバ装置20の各種動作を制御する。
制御部23は、通信部21で受信したログインID及びパスワードが変更DB220に登録されているか否かを判別する。制御部23は、登録されていると判別した場合、端末装置10のログインを認証する。そして、制御部23は、変更DB220にログインID及びパスワードに対応付けられて登録されている変換フォントを通信部21からネットワークNを介して端末装置10に送信する。
制御部23は、端末装置10がログイン中に顧客の個人情報の登録を要求したことに応答して、通信部21で受信した顧客の個人情報を示す文字列に対応する規格文字コード列を構成する各規格文字コードに対応する変換文字コードを、それぞれ変換テーブル221から特定し、顧客の個人情報を示す文字列に対応する変換文字コード列を生成する。そして、制御部23は、生成した顧客の個人情報を示す文字列に対応する変換文字コード列をネットワークNを介して記憶装置30に送信する。
制御部23は、顧客の個人情報の登録が完了した旨の通知を記憶装置30からネットワークNを介して受信したことに応答して、その旨の通知をネットワークNを介して端末装置10に送信する。
制御部23は、端末装置10が顧客の個人情報の検索を要求したことに応答して、通信部21で受信した個人情報の項目を示す文字列に対応する規格文字コード列を構成する各規格文字コードに対応する変換文字コードを、それぞれ変換テーブル221から特定し、個人情報の項目を示す文字列に対応する変換文字コード列を生成する。そして、制御部23は、生成した個人情報の項目を示す文字列に対応する変換文字コード列を通信部21からネットワークNを介して記憶装置30に送信する。
図7は、記憶装置の構成例を示すブロック図である。
記憶装置30は、例えば汎用のサーバコンピュータ等から構成され、図7に示すように、通信部31と、記憶部(ストレージ)32と、制御部(プロセッサ)33と、を備え、これらはバスを介して相互に通信可能に接続されている。
通信部31は、例えばNIC等から構成され、サーバ装置20からネットワークNを介して送信される顧客の個人情報を示す文字列に対応する変換文字コード列を受信する。また、通信部31は、顧客の個人情報の登録が完了した旨の通知をネットワークNを介してサーバ装置20に送信する。
通信部31は、サーバ装置20からネットワークNを介して送信される個人情報の項目を示す文字列に対応する変換文字コード列を受信する。また、通信部31は、顧客の個人情報を示す文字列に対応する変換文字コード列をネットワークNを介して端末装置10に送信する。
記憶部32は、例えばハードディスクドライブ等から構成され、個人情報DB320を記憶している。個人情報DB320は、顧客の個人情報を示す文字列に対応する変換文字コード列をそのまま登録している。
制御部33は、例えばCPU、ROM、及びRAM等から構成され、CPUがRAMをワークメモリとして用い、ROMに記憶されているプログラムを適宜実行することにより、記憶装置30の各種動作を制御する。
制御部33は、サーバ装置20からネットワークNを介して送信される顧客の個人情報を示す文字列に対応する変換文字コード列を通信部31で受信したことに応答して、受信した顧客の個人情報を示す文字列に対応する変換文字コード列をそのまま個人情報DB320に登録する。
制御部33は、サーバ装置20からネットワークNを介して送信される個人情報の項目を示す文字列に対応する変換文字コード列を通信部31で受信したことに応答して、受信した個人情報の項目を示す文字列に対応する変換文字コード列を、個人情報DB320から検索する。続いて、制御部33は、検索した変換文字コード列を含む顧客の個人情報を示す文字列に対応する変換文字コード列を、個人情報DB320から読み出す。そして、制御部33は、読み出した顧客の個人情報を示す文字列に対応する変換文字コード列を、通信部31からネットワークNを介して端末装置10に送信する。
次に、上記構成を備える情報管理システム1による動作について図面を参照して説明する。
端末装置10の制御部15は、操作者によって操作部11でサーバ装置20へのログインが指示されたことに応答して、操作部11で入力されたログインID及びパスワードを通信部13からネットワークNを介してサーバ装置20に送信する。
サーバ装置20の制御部23は、端末装置10からネットワークNを介して送信されるログインID及びパスワードを通信部21で受信する。
次に、制御部23は、通信部21で受信したログインID及びパスワードが変更DB220に登録されているか否かを判別する。
制御部23は、登録されていると判別した場合、端末装置10のログインを認証する。
そして、制御部23は、変更DB220にログインID及びパスワードに対応付けられて登録されている変換フォントを通信部21からネットワークNを介して端末装置10に送信する。
端末装置10の制御部15は、サーバ装置20からネットワークNを介して送信される変換文字コード表を通信部13で受信してRAM等に設定する。
そして、ログイン中に、操作者によって操作部11で顧客の個人情報が入力され、顧客の個人情報の登録が指示されたことに応答して、情報管理システム1は、個人情報登録処理を開始する。
図8〜図10は、個人情報登録処理の一例を示すフローチャートである。
個人情報登録処理では、図8に示すように、まず、端末装置10の制御部15が、操作部11で入力された顧客の個人情報を示す文字列に対応する規格文字コード列を通信部13からネットワークNを介してサーバ装置20に送信する(ステップS101)。
サーバ装置20の制御部23は、端末装置10からネットワークNを介して送信される顧客の個人情報を示す文字列に対応する規格文字コード列を通信部21で受信する(ステップS102)。
次に、制御部23は、通信部21で受信した顧客の個人情報を示す文字列に対応する規格文字コード列を構成する各規格文字コードに対応する変換文字コードを、それぞれ変換テーブル221から特定し、顧客の個人情報を示す文字列に対応する変換文字コード列を生成する(ステップS103)。
そして、制御部23は、ステップS103で生成した顧客の個人情報を示す文字列に対応する変換文字コード列をネットワークNを介して記憶装置30に送信する(ステップS104)。
記憶装置30の制御部33は、図9に示すように、サーバ装置20からネットワークNを介して送信される顧客の個人情報を示す文字列に対応する変換文字コード列を通信部31で受信する(ステップS105)。
次に、制御部33は、通信部31で受信した顧客の個人情報を示す文字列に対応する変換文字コード列をそのまま個人情報DB320に登録する(ステップS106)。
そして、制御部33は、顧客の個人情報の登録が完了した旨の通知を通信部31からネットワークNを介して送信する(ステップS107)。
サーバ装置20の制御部23は、記憶装置30からネットワークNを介して送信される顧客の個人情報の登録が完了した旨の通知を通信部21で受信する(ステップS108)。そして、制御部23は、図10に示すように、顧客の個人情報の登録が完了した旨の通知を通信部21からネットワークNを介して送信する(ステップS109)。
端末装置10の制御部15は、サーバ装置20からネットワークNを介して送信される顧客の個人情報の登録が完了した旨の通知を通信部21で受信する(ステップS110)。
そして、制御部15は、顧客の個人情報の登録が完了した旨を表示部14に表示して(ステップS111)、個人情報登録処理を終了する。
また、端末装置10の制御部15は、操作者によって操作部11で顧客の個人情報に含まれる複数の項目のうち、いずれかの項目が入力され、入力された項目を含む顧客の個人情報の検索が指示されたことに応答して、個人情報表示処理を開始する。
図11〜図13は、個人情報表示処理の一例を示すフローチャートである。
個人情報表示処理では、図11に示すように、端末装置10の制御部15が、操作部11で入力された個人情報の項目を示す文字列に対応する規格文字コード列を、通信部13からネットワークNを介してサーバ装置20に送信する(ステップS201)。
サーバ装置20の制御部23は、端末装置10からネットワークNを介して送信される個人情報の項目を示す文字列に対応する規格文字コード列を受信する(ステップS202)。
次に、制御部23は、通信部21で受信した個人情報の項目を示す文字列に対応する規格文字コード列を構成する各規格文字コードに対応する変換文字コードを、それぞれ変換テーブル221から特定し、個人情報の項目を示す文字列に対応する変換文字コード列を生成する(ステップS203)。
そして、制御部23は、ステップS203で生成した個人情報の項目を示す文字列に対応する変換文字コード列を通信部21からネットワークNを介して記憶装置30に送信する(ステップS204)。
記憶装置30の制御部33は、図12に示すように、サーバ装置20からネットワークNを介して送信される個人情報の項目を示す文字列に対応する変換文字コード列を通信部31で受信する(ステップS205)。
次に、制御部33は、通信部31で受信した個人情報の項目を示す文字列に対応する変換文字コード列を、個人情報DB320から検索する(ステップS206)。
続いて、制御部33は、ステップS206で検索した変換文字コード列を含む顧客の個人情報を示す文字列に対応する変換文字コード列を、個人情報DB320から読み出す(ステップS207)。
そして、制御部33は、ステップS207で読み出した顧客の個人情報を示す文字列に対応する変換文字コード列を、通信部31からネットワークNを介して端末装置10に送信する(ステップS208)。
端末装置10の制御部15は、図13に示すように、記憶装置30からネットワークNを介して送信される顧客の個人情報を示す文字列に対応する変換文字コード列を通信部13で受信する(ステップS209)。
次に、制御部15は、サーバ装置20にログインしているか否かを判別する(ステップS210)。
制御部15は、サーバ装置20にログインしていると判別した場合(ステップS210;Yes)、RAM等に設定されている変換フォントを用いて、通信部13で受信した変換文字コード列を構成する各変換文字コードに対応する文字を表示部14に表示して(ステップS211)、個人情報表示処理を終了する。これにより、表示部14には、個人情報を示す文字列が表示される。
制御部15は、サーバ装置20にログインしていないと判別した場合(ステップS210;No)、記憶部12に記憶されている規定フォントを用いて、通信部13で受信した変換文字コード列を構成する各変換文字コードに対応する文字を表示部14に表示して(ステップS212)、個人情報表示処理を終了する。これにより、表示部14には、文字化けした文字列が表示される。
以上説明したように、本実施形態における情報管理システム1において、サーバ装置20は、規定文字コードと、規定文字コードとは種類が異なる変換文字コードと、を対応付けて記憶する記憶部(ストレージ)22と、制御部(プロセッサ)23と、を備える。また、サーバ装置20は、記憶装置30に記憶されている顧客の個人情報を示す文字列に対応する変換文字コード列をネットワークNを介して受信する端末装置10にネットワークNを介して接続されている。
制御部23は、顧客の個人情報に含まれる項目を示す文字列に対応する規定文字コード列を端末装置10から受信したことに応答して、規定文字コード列に含まれる規定文字コードをそれぞれ対応する変換文字コードに変換することにより、個人情報の項目を示す文字列に対応する変換文字コード列を生成する。そして、制御部23は、変換文字コード列に対応する個人情報の項目を示す文字列を含む、顧客の個人情報を示す文字列に対応する変換文字コード列の端末装置10への送信を記憶装置30に指示する。
このように、端末装置10が送信する規定文字コード列ではなく、規定文字コードとは種類が異なる変換文字コードを含む変換文字コード列が記憶装置30に記憶されているため、情報管理システム1は、顧客の個人情報を安全に管理することができる。また、情報管理システム1は、端末装置10から受信した規定文字コード列を変換文字コード列に変換して記憶装置30に送信することで、顧客の個人情報を示す文字列に対応する変換文字コード列を端末装置10に送信することができる。
また、制御部23は、所定の条件を満たす、即ちサーバ装置20にログインしている端末装置10に、変換文字コードに対応する文字を表示するための変換フォントをネットワークNを介して送信する。端末装置10は、サーバ装置20にログインしている場合、サーバ装置20から送信される変換フォントを用いて、顧客の個人情報を示す文字列を表示する。一方、端末装置10は、サーバ装置20にログインしていない場合、顧客の個人情報を示す文字列とは異なる文字化けした文字列を表示する。
このように、端末装置10は、変換フォントを用いて、変換文字コード列に対応する文字列を表示するのみで、変換文字コード列を規定文字コード列にデコードするものではない。このため、顧客の個人情報を示す文字列に対応する変換文字コード列を、変換フォントを有していない他の環境に移した場合、顧客の個人情報を示す文字列とは異なる文字化けした文字列が表示される。また、顧客の個人情報を示す文字列に対応する変換文字コード列の印刷など表示以外の出力をした場合、顧客の個人情報を示す文字列とは異なる文字化けした文字列が出力される。このように、変換フォントを有する端末装置10による表示でのみ、顧客の個人情報を可読状態にすることができるため、情報管理システム1は、顧客の個人情報をより安全に管理することができる。また、情報管理システム1は、変換文字コード列を規定文字コード列にデコードするものではないため、端末装置10の負荷を低減させることができる。
また、記憶部22は、端末装置10のログインを認証するためのログインID及びパスワードと、変換テーブル221と、変換フォントと、を対応付けて登録する変換DB220を記憶している。そして、変換テーブルは、各文字に規格文字コードと変換文字コードとを対応付けて登録している。すなわち、記憶部22は、端末装置10と、変換文字コードと、変換フォントと、を対応付けて登録している。また、制御部23は、規格文字コードを、規格文字コードを含む規格文字コード列を送信した端末装置10に対応する変換文字コードに変換する。さらに、制御部23は、ログインしている端末装置10に、端末装置10に対応する変換フォントを送信する。
このように、サーバ装置20は、端末装置10毎に、すなわちログイン可能な操作者の権限毎に、規格文字コードを、異なる変換文字コードに変換する。また、サーバ装置20は、ログインしている端末装置10に、この端末装置10が送信した規格文字コードが変換された変換文字コードに対応する変換フォントを送信することができる。これにより、情報管理システム1は、顧客の個人情報をより安全に管理することができる。
また、端末装置10は、所定の条件を満たさなくなった場合、すなわちサーバ装置20からログアウトした場合、サーバ装置20から送信された変換フォントを破棄する。
これにより、端末装置10は、サーバ装置20から送信された顧客の個人情報を示す文字列に対応する変換文字コード列を保存したとしても、ログイン中でなければ可読状態にすることができない。このため、情報管理システム1は、顧客の個人情報をより安全に管理することができる。
また、制御部23は、顧客の個人情報を示す文字列に対応する規格文字コード列に含まれる規格文字コードをそれぞれ対応する変換文字コードに変換することにより、顧客の個人情報を示す文字列に対応する変換文字コード列を生成する。そして、制御部23は、顧客の個人情報を示す文字列の記憶装置30への記憶を記憶装置30に指示する。
このように、サーバ装置20は、顧客の個人情報を示す文字列に対応する規定文字コード列を変換文字コード列に変換した状態で記憶装置30に記憶させる。このため、情報管理システム1は、顧客の個人情報をより安全に管理することができる。
また、変換文字コードは、各文字に対応する規格文字コードをそれぞれ暗号化して暗号文字列を生成し、暗号文字列を所定の順序で並び替え、並び替えた暗号文字列に対応する各文字に数値を順番に割り当てていくことにより生成される。
このように、変換文字コードは、解読困難な方法で規格文字コードを並び替えて生成される。このため、情報管理システム1は、顧客の個人情報をより安全に管理することができる。
なお、端末装置10、すなわちログイン可能な操作者の権限のそれぞれに対応する変換文字コードは、ログイン可能な操作者の権限毎に、暗号鍵、暗号化方式、暗号文字列の並び替え方法の少なくとも一つを異ならせて生成されるものであってもよい。
なお、本発明は、上記実施形態に限定されず、種々の変形、応用が可能である。以下、本発明に適用可能な上記実施形態の変形態様について、説明する。
上記実施形態において、変換テーブル221及び変換フォントが予め生成されているものとして説明した。しかしながら、本発明はこれに限定されるものではなく、変換テーブル221及び変換フォントは、端末装置10から規格文字コード列を受信する毎に生成されるものであってもよい。
この場合、記憶部22は、記憶部12と同様に、規格文字コード表を記憶している。また、変換DB220は、ログインIDと、パスワードと、暗号鍵と、を対応付けて登録している。
制御部23は、端末装置10からネットワークNを介して送信される規格文字コード列を通信部21を受信したことに応答して、規格文字コード表の各文字に割り当てられている規格文字コードを、変換DB220に記憶されている暗号鍵を使用して、例えばラインダール暗号化方式で暗号化することにより、各文字に対応する暗号文字列を生成する。
次に、制御部23は、生成した暗号文字列をアルファベット順に並び替えることにより、暗号文字列に対応する各文字を並び替える。続いて、制御部23は、暗号文字列のアルファベット順に従って並べ替えられた各文字に、“00000”〜“65535”(10進数)の数字を順番に割り当て直して、これを変換文字コードとする。そして、制御部23は、各文字に規格文字コードと変換文字コードとを対応付けて登録することにより、変換テーブル221を生成してもよい。
また、変換フォントも、端末装置10から規格文字コード列を受信する毎に変換テーブル221から生成されるものであってもよい。
このように、端末装置10から規格文字コード列を受信する毎に変換テーブル221及び変換フォントを生成することで、第三者は、暗号鍵が判ったとしても、変換文字コードの生成の方法が判らなければ、顧客の個人情報を示す文字列に対応する変換文字コード列を解読することができない。これにより、情報管理システム1は、顧客の個人情報をより安全に管理することができる。
上記実施形態において、変換文字コードは、各文字に対応する規格文字コードをそれぞれ暗号化して暗号文字列を生成し、暗号文字列を所定の順序で並び替え、並び替えた暗号文字列に対応する各文字に数値を順番に割り当てていくことにより生成されるものとして説明した。しかしながら、本発明はこれに限定されるものではなく、さらに、変換文字コードに対応する文字のうち、例えば、数字「0」〜「9」を全て同一の記号等にしてもよい。このようにすれば、変換文字コードに対応する文字の推測がより一層困難になるため、情報管理システム1は、顧客の個人情報をより安全に管理することができる。
上記実施形態では、サーバ装置20と記憶装置30とはネットワークNを介して接続される別の装置として説明したが、本発明はこれに限定されるものではなく、一体の装置として構成されるものであってもよい。
また、情報管理システム1により安全に管理される情報は、顧客の個人情報に限定されるものではなく、任意であり、いかなる情報であってもよい。
上記実施形態において、制御部15,23,及び33のCPUが実行するプログラムは、予めROM等に記憶されていた。しかしながら、本発明は、これに限定されず、上述の処理を実行させるためのプログラムを、既存の汎用のコンピュータ、タブレットコンピュータ、スマートフォン、及びサーバコンピュータ等に適用することで、上記実施形態に係る端末装置10、サーバ装置20、及び記憶装置30として機能させてもよい。
このようなプログラムの提供方法は任意であり、例えばコンピュータが読取可能な記録媒体(フレキシブルディスク、CD(Compact Disc)−ROM、DVD(Digital Versatile Disc)−ROM等)に格納して配布してもよいし、インターネット等のネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより提供してもよい。
また、上記の処理をOS(Operating System)とアプリケーションプログラムとの分担、又はOSとアプリケーションプログラムとの協働によって実行する場合には、アプリケーションプログラムのみを記録媒体やストレージに格納してもよい。また、搬送波にプログラムを重畳し、ネットワークを介して配信することも可能である。例えば、ネットワーク上の掲示板(BBS:Bulletin Board System)に上記プログラムを掲示し、ネットワークを介してプログラムを配信してもよい。そして、このプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、上記の処理を実行できるように構成してもよい。
なお、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本発明の一実施例を説明するためのものであり、本発明の範囲を限定するものではない。