(57)【要約】【課題】インターネットバンキングにより振込処理を要求する際に、振込先が不正に書き換えられてしまうことを有効に防止する。【解決手段】サーバ装置１０１は、利用者が同じクライアント装置１０４と携帯電話１０８を対応付けて登録しており、クライアント装置１０４から振込処理の要求があった場合に、当該クライアント装置１０４と対応付けられている携帯電話１０８に暗号化鍵を送信し、携帯電話１０８は利用者から振込先口座番号を入力し、サーバ装置１０１から受信した暗号化鍵を用いて口座番号を暗号化し、暗号化後の口座番号をクライアント装置１０４を経由してサーバ装置１０１に送信し、サーバ装置１０１では復号処理により口座番号を取得し、取得した口座番号から口座名を抽出し、抽出した口座名をクライアント装置１０４に提示して、利用者が振込実行を要求した場合に、振込処理を行う。【選択図】図１
2010165329.tif 000002
【特許請求の範囲】
【請求項１】
振込処理を行うサーバ装置と、ネットワークを介してサーバ装置に接続されている１つ以上の第１の端末装置と、ネットワークを介してサーバ装置に接続されている１つ以上の第２の端末装置とを有する通信システムであって、
第１の端末装置は、
サーバ装置に対して、振込処理を要求する振込処理要求を送信し、
サーバ装置は、
対になる第１の端末装置と第２の端末装置とを対応付けて登録しており、
振込処理要求を受信した場合に、振込処理要求の送信元の第１の端末装置に対応付けて登録している第２の端末装置を特定するとともに、特定した第２の端末装置との間で秘密に共有する秘密情報を、特定した第２の端末装置に対して送信し、
第２の端末装置は、
サーバ装置から秘密情報を受信した場合に、対になる第１の端末装置がサーバ装置に要求している振込処理での振込先口座を特定する振込先口座情報を、受信した秘密情報を用いて秘匿化し、秘匿化後の振込先口座情報を送信し、
サーバ装置は、
秘匿化後の振込先口座情報を受信した場合に、前記第２の端末装置に送信した秘密情報を用いて秘匿化後の振込先口座情報から振込先口座情報を抽出し、抽出した振込先口座情報に基づいて振込処理を行うことを特徴とする通信システム。
【請求項２】
サーバ装置は、
秘密情報を用いて秘匿化後の振込先口座情報から振込先口座情報を抽出し、抽出した振込先口座情報に基づいて、振込先口座が示される口座確認情報を生成し、生成した口座確認情報を、振込処理要求の送信元の第１の端末装置に対して送信し、当該第１の端末装置から振込処理実行指示を受信した後に、振込処理を行い、
第１の端末装置は、
出力装置に接続されており、
サーバ装置から口座確認情報を受信した場合に、受信した口座確認情報に示される振込先口座を出力装置に出力して、第１の端末装置の利用者に振込先口座を確認させるとともに、利用者の指示に従って、振込処理の実行を指示する振込処理実行指示をサーバ装置に送信することを特徴とする請求項１に記載の通信システム。
【請求項３】
サーバ装置は、
抽出した振込先口座情報に基づいて、振込先口座の口座名が示される口座確認情報を生成し、生成した口座確認情報を、振込処理要求の送信元の第１の端末装置に対して送信し、
第１の端末装置は、
サーバ装置から口座確認情報を受信した場合に、受信した口座確認情報に示される振込先口座の口座名を出力装置に出力して、第１の端末装置の利用者に振込先口座を確認させることを特徴とする請求項２に記載の通信システム。
【請求項４】
第１の端末装置は、
第１の端末装置の利用者からの入力に基づいて、振込処理要求を送信し、
サーバ装置は、
利用者が共通している第１の端末装置と第２の端末装置とを対応付けて登録しており、
第２の端末装置は、
サーバ装置から秘密情報を受信した場合に、第１の端末装置の利用者から振込先口座情報を入力し、入力した振込先口座情報を、受信した秘密情報を用いて秘匿化することを特徴とする請求項１〜３のいずれかに記載の通信システム。
【請求項５】
サーバ装置は、
秘密情報として暗号化鍵を第２の端末装置に対して送信し、
第２の端末装置は、
サーバ装置から秘密情報として暗号化鍵を受信した場合に、振込先口座情報を、受信した暗号化鍵を用いて暗号化し、暗号化後の振込先口座情報を送信し、
サーバ装置は、
暗号化後の振込先口座情報を受信した場合に、前記第２の端末装置に送信した暗号化鍵を用いて暗号化後の振込先口座情報を復号して振込先口座情報を抽出することを特徴とする請求項１〜４のいずれかに記載の通信システム。
【請求項６】
サーバ装置は、
秘密情報として、振込先口座情報の値の変換を行うための変換テーブルを第２の端末装置に対して送信し、
第２の端末装置は、
サーバ装置から秘密情報として変換テーブルを受信した場合に、振込先口座情報を、受信した変換テーブルを用いて変換し、変換化後の振込先口座情報を送信し、
サーバ装置は、
変換後の振込先口座情報を受信した場合に、前記第２の端末装置に送信した変換テーブルを用いて変換後の振込先口座情報の逆変換を行って振込先口座情報を抽出することを特徴とする請求項１〜４のいずれかに記載の通信システム。
【請求項７】
第１の端末装置は、
前記出力装置として画像表示装置に接続されており、
サーバ装置から口座確認情報を受信した場合に、受信した口座確認情報に示される振込口座を文字として前記画像表示装置に表示させることを特徴とする請求項２に記載の通信システム。
【請求項８】
第１の端末装置は、
振込口座を文字として前記画像表示装置にテロップ表示させ、テロップ表示が終了した後にのみ利用者からの指示を受け付けることを特徴とする請求項７に記載の通信システム。
【請求項９】
第１の端末装置は、
前記出力装置として音源再生装置に接続されており、
サーバ装置から口座確認情報を受信した場合に、受信した口座確認情報に示される振込口座を音声として前記音源再生装置に出力させることを特徴とする請求項２に記載の通信システム。
【請求項１０】
第１の端末装置は、
前記音源再生装置による音声出力が終了した後にのみ利用者からの指示を受け付けることを特徴とする請求項９に記載の通信システム。
【請求項１１】
サーバ装置は、
秘密情報を用いて秘匿化後の振込先口座情報から振込先口座情報を抽出し、抽出した振込先口座情報に基づいて、振込先口座が示される口座確認情報を生成し、生成した口座確認情報を、振込処理要求の送信元の第１の端末装置に対して送信し、当該第１の端末装置から口座確認情報に対する応答として振込処理確認応答を受信した後に、確認番号を生成して第２の端末装置に送信し、第２の端末装置から確認番号を受信した際に第２の端末装置に送信した確認番号と第２の端末装置から受信した確認番号が一致することを確認した後に、振込処理を行い、
第２の端末装置は、
サーバ装置から確認番号を受信した場合に、利用者からの入力に基づいて、サーバ装置に対して確認番号を送信することを特徴とする請求項１に記載の通信システム。
【請求項１２】
ネットワークを介して、１つ以上の第１の端末装置と、１つ以上の第２の端末装置とに接続されているサーバ装置であって、
対になる第１の端末装置と第２の端末装置とを対応付けて登録している端末装置登録部と、
第１の端末装置から送信された、振込処理を要求する振込処理要求を受信する振込処理要求受信部と、
前記端末装置登録部の登録内容に基づき、振込処理要求の送信元である要求元第１の端末装置に対応付けて登録している第２の端末装置を対応第２の端末装置として特定するとともに、特定した対応第２の端末装置との間で秘密に共有する秘密情報を取得する秘密情報取得部と、
前記秘密情報を、前記対応第２の端末装置に送信する秘密情報送信部と、
前記対応第２の端末装置が秘密情報を用いて秘匿化した、前記要求元第１の端末装置が要求している振込処理での振込先口座を特定する振込先口座情報を受信する秘匿化振込先口座情報受信部と、
前記秘密情報を用いて、秘匿化後の振込先口座情報から振込先口座情報を抽出する情報抽出部と、
前記情報抽出部により抽出された振込先口座情報に基づいて振込処理を行う振込処理部とを有することを特徴とするサーバ装置。
【請求項１３】
前記サーバ装置は、更に、
前記情報抽出部により抽出された振込先口座情報に基づいて、振込先口座が示される口座確認情報を生成する口座確認情報生成部と、
前記口座確認情報を前記要求元第１の端末装置に送信し、前記要求元第１の端末装置の利用者に振込先口座を確認させる口座確認情報送信部とを有することを特徴とする請求項１２に記載のサーバ装置。
【請求項１４】
前記サーバ装置は、更に、
前記口座確認情報に対する応答として前記要求元第１の端末装置から送信された、振込処理の実行を指示する振込処理実行指示を受信する振込処理実行指示受信部を有し、
前記振込処理部は、
前記振込処理実行指示受信部により振込処理実行指示が受信された後に、振込処理を行うことを特徴とする請求項１３に記載のサーバ装置。
【請求項１５】
前記秘密情報取得部は、
秘密情報として暗号化鍵を取得し、
前記秘密情報送信部は、
前記暗号化鍵を前記対応第２の端末装置に送信し、
前記秘匿化振込先口座情報受信部は、
前記対応第２の端末装置が暗号化鍵を用いて暗号化した振込先口座情報を受信し、
前記情報抽出部は、
前記暗号化鍵を用いて、暗号化後の振込先口座情報を復号して振込先口座情報を抽出することを特徴とする請求項１２〜１４のいずれかに記載のサーバ装置。
【請求項１６】
前記秘密情報取得部は、
秘密情報として、振込先口座情報の値の変換を行うための変換テーブルを取得し、
前記秘密情報送信部は、
前記変換テーブルを前記対応第２の端末装置に送信し、
前記秘匿化振込先口座情報受信部は、
前記対応第２の端末装置が前記変換テーブルを用いて変換した振込先口座情報を受信し、
前記情報抽出部は、
前記変換テーブルを用いて、変換後の振込先口座情報の逆変換を行って振込先口座情報を抽出することを特徴とする請求項１２〜１４のいずれかに記載のサーバ装置。
【請求項１７】
前記サーバ装置は、更に、
前記口座確認情報に対する応答として前記要求元第１の端末装置から送信された、振込処理の確認を通知する振込処理確認通知を受信する振込処理確認通知受信部と、
振込処理確認通知に対して確認番号を生成する確認番号生成部と、
前記確認番号生成部により生成された確認番号を前記対応第２の端末装置に送信する振込確認番号通知送信部と、
前記対応第２の端末装置から確認番号の通知を受信する振込確認通知受信部を有し、
前記振込処理部は、
前記振込確認通知受信部により確認番号が受信された際に、前記振込確認番号通知送信部から前記対応第２の端末装置に送信された確認番号と前記振込確認通知受信部により受信された確認番号が一致することを確認した後に、振込処理を行うことを特徴とする請求項１３に記載のサーバ装置。
【請求項１８】
前記秘匿化振込先口座情報受信部は、
近距離通信により前記対応第２の端末装置から前記要求元第１の端末装置に送信された秘匿後の振込先口座情報を前記要求元第１の端末装置から受信することを特徴とする請求項１２〜１７のいずれかに記載のサーバ装置。
【請求項１９】
ネットワークを介して、振込処理を行うサーバ装置に接続され、前記サーバ装置に振込処理を要求するクライアント装置と対応付けられる通信装置であって、
前記クライアント装置からの振込処理要求に応答して前記サーバ装置から送信された、前記サーバ装置との間で秘密に共有する秘密情報を受信する秘密情報受信部と、
前記クライアント装置が前記サーバ装置に要求している振込処理での振込先口座を特定する振込先口座情報を入力する振込先口座情報入力部と、
前記振込先口座情報を、前記サーバ装置から受信した秘密情報を用いて秘匿化する秘匿化処理部と、
秘匿化後の振込先口座情報を送信する秘匿化振込先口座情報送信部とを有することを特徴とする通信装置。
【請求項２０】
前記秘密情報受信部は、
前記秘密情報として暗号化鍵を前記サーバ装置から受信し、
前記秘匿化処理部は、
前記振込先口座情報を、前記サーバ装置から受信した暗号化鍵を用いて暗号化し、
前記秘匿化振込先口座情報送信部は、
暗号化後の振込先口座情報を送信することを特徴とする請求項１９に記載の通信装置。
【請求項２１】
前記秘密情報受信部は、
前記秘密情報として、振込先口座情報の値の変換を行うための変換テーブルを前記サーバ装置から受信し、
前記秘匿化処理部は、
前記振込先口座情報を、前記サーバ装置から受信した変換テーブルを用いて変換し、
前記秘匿化振込先口座情報送信部は、
変換化後の振込先口座情報を送信することを特徴とする請求項１９に記載の通信装置。
【請求項２２】
前記秘匿化振込先口座情報送信部は、
近距離通信により秘匿化後の振込先口座情報を前記クライアント装置に送信することを特徴とする請求項１９〜２１のいずれかに記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットバンキングに代表される、通信ネットワークを介してサーバ装置に口座振込処理を要求することができる通信システムに関する。
【背景技術】
【０００２】
インターネットバンキングにおける口座振込の際に、サーバ装置に口座振込処理を要求する端末装置上に潜入している不正なソフトウェアにより振込要求の振込先を利用者が意図しない振込先に不正に書き換えられ、不正な振込先への振込処理が実行されるという被害が発生している。
このような犯罪の被害を防ぐために取引の認証を行うシステムが必要とされている。
【０００３】
従来の取引認証システムは、キーパッド及び表示用ディスプレイを備えたＩＣカードリーダにＩＣカードを装てんして端末装置に接続し、端末装置に入力された振込処理の情報をＩＣカードリーダに送りディスプレイに表示し、利用者が振込情報の内容が一致していることを確認した後にＩＣカードリーダにＩＣカードを使って振込処理の情報に署名を付け、振込み要求を署名とともにサーバ装置に送付し、サーバ装置で署名を検証することにより振込処理の依頼が正規の利用者が意図するものであることを判別している（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許公開公報ＵＳ２００３／０１７７３５３  Ａ１  第１頁、第１図
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の取引認証システムは、端末装置で入力した振込金額や振込先口座番号をそのままＩＣカードリーダのディスプレイ表示をして確認を求めるが、表示内容が入力したものと同じであり、表示文字数が限られたＩＣカードリーダの狭いディスプレイに表示するため、番号が違っても実行してしまうミスを引き起こす恐れがある。
また、ＩＣカードとキーパッドや表示装置を備えたＩＣカードリーダの専用機器を必要とする、という課題がある。
【０００６】
この発明は、上記のような課題を鑑みたものであり、振込先の不正な書き換えに対抗できるシステムを実現することを目的の一つとする。
また、取引認証を行う際に利用者がミスを起こさないシステムを実現することを目的の一つとする。
また、一般的な装置を使って安価にシステムを実現することも目的の一つとする。
【課題を解決するための手段】
【０００７】
本発明に係る通信システムは、
振込処理を行うサーバ装置と、ネットワークを介してサーバ装置に接続されている１つ以上の第１の端末装置と、ネットワークを介してサーバ装置に接続されている１つ以上の第２の端末装置とを有する通信システムであって、
第１の端末装置は、
サーバ装置に対して、振込処理を要求する振込処理要求を送信し、
サーバ装置は、
対になる第１の端末装置と第２の端末装置とを対応付けて登録しており、
振込処理要求を受信した場合に、振込処理要求の送信元の第１の端末装置に対応付けて登録している第２の端末装置を特定するとともに、特定した第２の端末装置との間で秘密に共有する秘密情報を、特定した第２の端末装置に対して送信し、
第２の端末装置は、
サーバ装置から秘密情報を受信した場合に、対になる第１の端末装置がサーバ装置に要求している振込処理での振込先口座を特定する振込先口座情報を、受信した秘密情報を用いて秘匿化し、秘匿化後の振込先口座情報を送信し、
サーバ装置は、
秘匿化後の振込先口座情報を受信した場合に、前記第２の端末装置に送信した秘密情報を用いて秘匿化後の振込先口座情報から振込先口座情報を抽出し、抽出した振込先口座情報に基づいて振込処理を行うことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、サーバ装置において第１の端末装置と第２の端末装置とを対応付けて登録し、サーバ装置は、振込処理を要求する第１の端末装置ではなく、第１の端末装置と対応付けられている第２の端末装置に秘密情報を送信し、第２の端末装置が秘密情報を用いて秘匿化した秘匿化後の振込先情報を送信するため、第１の端末装置に振込先を不正に書き換えようとするソフトウェアが存在していても、当該ソフトウェアは秘密情報を得ることができないので、目的とする振込先に書き換えることはできず、不正な振込先の書き換えを回避することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係る取引認証システムの構成例を示す図。
【図２】実施の形態１に係るサーバ装置の構成例を示す図。
【図３】実施の形態１に係る携帯電話の構成例を示す図。
【図４】実施の形態１に係る口座情報の例を示す図。
【図５】実施の形態１に係る利用者情報の例を示す図。
【図６】実施の形態１に係る取引管理テーブルの例を示す図。
【図７】実施の形態１に係る携帯電話、クライアント装置、サーバ装置間のデータフローを示す図。
【図８】実施の形態１に係るサーバ装置の動作例を示すフローチャート図。
【図９】実施の形態１に係るサーバ装置の動作例を示すフローチャート図。
【図１０】実施の形態１に係るサーバ装置の動作例を示すフローチャート図。
【図１１】実施の形態１に係るサーバ装置の動作例を示すフローチャート図。
【図１２】実施の形態１に係るサーバ装置の動作例を示すフローチャート図。
【図１３】実施の形態２に係る取引認証システムの構成例を示す図。
【図１４】実施の形態２に係るサーバ装置の構成例を示す図。
【図１５】実施の形態２に係る携帯電話の構成例を示す図。
【図１６】実施の形態２に係る取引管理テーブルの例を示す図。
【図１７】実施の形態２に係る携帯電話、クライアント装置、サーバ装置間のデータフローを示す図。
【図１８】実施の形態２に係るサーバ装置の動作例を示すフローチャート図。
【図１９】実施の形態２に係るサーバ装置の動作例を示すフローチャート図。
【図２０】実施の形態２に係るサーバ装置の動作例を示すフローチャート図。
【図２１】実施の形態２に係るサーバ装置の動作例を示すフローチャート図。
【図２２】実施の形態２に係るサーバ装置の動作例を示すフローチャート図。
【図２３】実施の形態２に係る携帯電話の動作例を示すフローチャート図。
【図２４】実施の形態２に係るサーバ装置の動作例を示すフローチャート図。
【図２５】実施の形態２に係る変換処理及び逆変換処理の例を示す図。
【図２６】実施の形態１に係るテロップ表示を行う確認画面の例を示す図。
【図２７】実施の形態３に係る取引認証システムの構成例を示す図。
【図２８】実施の形態３に係るサーバ装置の構成例を示す図。
【図２９】実施の形態３に係る携帯電話の構成例を示す図。
【図３０】実施の形態３に係る取引管理テーブルの例を示す図。
【図３１】実施の形態３に係る携帯電話、クライアント装置、サーバ装置間のデータフローを示す図。
【図３２】実施の形態３に係るサーバ装置の動作例を示すフローチャート図。
【図３３】実施の形態３に係るサーバ装置の動作例を示すフローチャート図。
【図３４】実施の形態３に係るサーバ装置の動作例を示すフローチャート図。
【図３５】実施の形態３に係るサーバ装置の動作例を示すフローチャート図。
【図３６】実施の形態３に係るサーバ装置の動作例を示すフローチャート図。
【図３７】実施の形態４に係る取引認証システムの構成例を示す図。
【図３８】実施の形態４に係るサーバ装置の構成例を示す図。
【図３９】実施の形態４に係る携帯電話の構成例を示す図。
【図４０】実施の形態４に係る取引管理テーブルの例を示す図。
【図４１】実施の形態４に係る携帯電話、クライアント装置、サーバ装置間のデータフローを示す図。
【図４２】実施の形態４に係るサーバ装置の動作例を示すフローチャート図。
【図４３】実施の形態４に係るサーバ装置の動作例を示すフローチャート図。
【図４４】実施の形態４に係るサーバ装置の動作例を示すフローチャート図。
【図４５】実施の形態４に係るサーバ装置の動作例を示すフローチャート図。
【図４６】実施の形態４に係るサーバ装置の動作例を示すフローチャート図。
【図４７】実施の形態４に係るサーバ装置の動作例を示すフローチャート図。
【発明を実施するための形態】
【００１０】
実施の形態１．
図１は、本実施の形態に係る取引認証システム（通信システム）の一構成例を示す図である。
【００１１】
図１において、サーバ装置１０１は、計算機であり、インターネット１０２と携帯電話網１０３に接続される。
サーバ装置１０１は、振込処理を行う。
【００１２】
クライアント装置１０４は、計算機であり、インターネット１０２に接続される。
クライアント装置１０４には、ディスプレイ装置１０５（出力装置）とキーボード１０６が接続され、赤外線通信ポート１０７を備える。
クライアント装置１０４は、サーバ装置１０１に対して振込処理を要求する。
クライアント装置１０４は、第１の端末装置の例である。
【００１３】
携帯電話１０８は、無線通信により携帯電話網１０３に接続される。
携帯電話１０８は、ディスプレイ１０９と、入力装置１１０と、赤外線通信ポート１１１を備える。
携帯電話１０８は、第２の端末装置及び通信装置の例である。
【００１４】
ここで、本実施の形態に係る取引認証システムの動作の概要を説明し、その後、サーバ装置１０１、携帯電話１０８の内部構成例を説明する。
【００１５】
サーバ装置１０１は、対になるクライアント装置１０４と携帯電話１０８とを対応付けて登録している。ここでは、クライアント装置１０４と携帯電話１０８とが同じ利用者により利用されているとする。
そして、クライアント装置１０４が、インターネット１０２を通じて、サーバ装置１０１に対して、振込処理を要求する振込処理要求を送信し、振込処理要求を受信したサーバ装置１０１は、振込処理要求の送信元のクライアント装置１０４に対応付けて登録している携帯電話１０８を特定するとともに、特定した携帯電話１０８との間で秘密に共有する秘密情報（例えば、暗号化鍵）を、特定した携帯電話１０８に対して送信する。
携帯電話１０８は、携帯電話網１０３から、サーバ装置１０１からの秘密情報を受信した場合に、対になるクライアント装置１０４がサーバ装置１０１に要求している振込処理での振込先口座を特定する振込先口座情報（振込先の口座番号等）を、受信した秘密情報を用いて秘匿化し、秘匿化後の振込先口座情報を赤外線通信によりクライアント装置１０４に送信する。
クライアント装置１０４は、赤外線通信により携帯電話１０８から送信された秘匿化後の振込先口座情報をインターネット１０２からサーバ装置１０１に送信する。
サーバ装置１０１は、秘匿化後の振込先口座情報を受信した場合に、携帯電話１０８に送信した秘密情報を用いて秘匿化後の振込先口座情報から振込先口座情報を抽出し、抽出した振込先口座情報に基づいて振込処理を行う。
【００１６】
図２は、サーバ装置１０１の内部構成例を示す図である。
【００１７】
図２において、サーバ装置１０１は、ＣＰＵ（中央演算処理装置）２０１、メモリ装置２０２、ディスク装置２０３、通信インタフェース２０４を備えている。
サーバ装置１０１は、ソフトウェアのモジュールとして、ログイン／ログアウト処理部２０５、暗号化鍵管理部２０６、取引認証部２０７、振込処理部２０８、送受信処理部２１２をディスク装置２０３上に記憶しており、これらのモジュールをディスク装置２０３からメモリ装置２０２上へロードし、ＣＰＵ２０１により実行する。
図２では、ログイン／ログアウト処理部２０５、暗号化鍵管理部２０６、取引認証部２０７、振込処理部２０８、送受信処理部２１２がメモリ装置２０２にロードされた状態を示している。
また、ディスク装置２０３上には、口座データベース２０９と、利用者データベース２１０を格納する。
また、データ通信を行うために、通信インタフェース２０４が接続される。
通信インタフェース２０４は、インターネット１０２と携帯電話網１０３に接続される。
メモリ装置２０２上には、実行途中の取引を管理するための取引管理テーブル２１１を記憶する。
【００１８】
ログイン／ログアウト処理部２０５は、クライアント装置１０４のサーバ装置１０１へのログイン処理、ログアウト処理を管理する。
【００１９】
暗号化鍵管理部２０６は、携帯電話１０８と秘密に共有する暗号化鍵を生成する。
暗号化鍵管理部２０６は、秘密情報取得部の例である。
【００２０】
取引認証部２０７は、携帯電話１０８に送信された暗号化鍵を用いて、暗号化されている振込先口座情報を復号して、振込先の口座番号を取得する。
また、取引認証部２０７は、振込先の口座が示される口座確認情報を生成する。口座確認情報は振込先口座が正しいかどうかをクライアント装置１０４の利用者に確認するための情報である。
取引認証部２０７は、情報抽出部及び口座確認情報生成部の例である。
【００２１】
振込処理部２０８は、クライアント装置１０４から振込処理実行指示があった場合に、振込処理を行う。
【００２２】
送受信処理部２１２は、通信インタフェース２０４を用いて、クライアント装置１０４及び携帯電話１０８との通信処理を行う。
より具体的には、送受信処理部２１２は、クライアント装置１０４から振込処理要求の受信、携帯電話１０８への暗号鍵（秘密情報）の送信、クライアント装置１０４からの暗号化された振込先口座情報の受信、クライアント装置１０４への口座確認情報の送信、クライアント装置１０４からの振込処理実行指示の受信を行う。
送受信処理部２１２は、振込処理要求受信部、秘密情報送信部、秘匿化振込先口座情報受信部、口座確認情報送信部、振込処理実行指示受信部の例である。
【００２３】
また、図４は、口座データベース２０９に記憶される口座情報４０１の例を示す図である。
口座情報４０１では、口座番号、利用者番号、口座名、残高金額が管理されている。
【００２４】
図５は、利用者データベース２１０に記憶される利用者情報５０１の例を示す図である。
利用者情報５０１では、利用者番号、パスワード、氏名、携帯電話番号、携帯メールアドレスが管理されている。
利用者番号及びパスワードは、クライアント装置１０４がサーバ装置１０１にログインする際の認証に用いられ、利用者番号及びパスワードは、氏名の欄に記載されている利用者が利用するクライアント装置１０４の識別情報として機能する。
また、携帯メールアドレスは、氏名の欄に記載されている利用者が利用する携帯電話のメールアドレスであり、氏名の欄に記載されている利用者の携帯電話の識別情報として機能する。
このように、利用者情報５０１は、同じ利用者が利用するクライアント装置１０４と携帯電話１０８とを対応付けて登録する情報である。
利用者情報５０１を記憶しているディスク装置２０３は、端末装置登録部の例である。
【００２５】
図６は、実効途中の取引を管理するためにサーバ装置１０１のメモリ装置２０２上に生成される、取引管理テーブル２１１の例を示す図である。
取引管理テーブル２１１では、セッションＩＤ（ＳＩＤ）、利用者番号、振込元口座番号、振込金額、暗号化鍵、振込先口座番号が管理される。
【００２６】
図３は、携帯電話１０８の内部構成例を示す図である。
【００２７】
図３において、携帯電話１０８は、ＣＰＵ３０１、メモリ装置３０２、フラッシュメモリ３０３、通信インタフェース３０４、赤外線通信ポート１１１、ディスプレイ１０９、入力装置１１０を備える。
携帯電話１０８は、ソフトウェアのモジュールとして、暗号化部３０５、乱数生成部３０６、送受信処理部３０７、入力処理部３０８をフラッシュメモリ３０３上に記憶しており、これらモジュールをメモリ装置３０２上へロードし、ＣＰＵ３０１により実行する。
【００２８】
送受信処理部３０７は、通信インタフェース３０４を用いて、サーバ装置１０１との通信処理を行う。
より具体的には、クライアント装置１０４からの振込処理要求に応答してサーバ装置１０１から送信された、サーバ装置１０１との間で秘密に共有する暗号化鍵（秘密情報）を受信する。
また、送受信処理部３０７は、暗号化鍵を用いて秘匿化（暗号化）された後の振込先口座情報を赤外線通信ポート１１１を介してクライアント装置１０４に送信する。
また、後述するように、携帯電話１０８は、秘匿化（暗号化）された後の振込先口座情報を赤外線通信によりクライアント装置１０４に送信する代わりに、秘匿化後の振込先口座情報を携帯電話網１０３を介して直接サーバ装置１０１に送信することもできるが、送受信処理部３０７は、このような場合に、通信インタフェース３０４を介して、秘匿化後の振込先口座情報をサーバ装置１０１に送信する。
送受信処理部３０７は、秘密情報受信部及び秘匿化振込先口座情報送信部の例である。
【００２９】
入力処理部３０８は、振込処理での振込先口座を特定する振込先口座情報を利用者から入力装置１１０を通じて入力する。つまり、利用者がクライアント装置１０４からサーバ装置１０１に要求している振込処理での振込先口座を特定する振込先口座情報を入力する。
入力処理部３０８は、振込先口座情報入力部の例である。
【００３０】
暗号化部３０５は、入力処理部３０８により入力された振込先口座情報を、送受信処理部３０７がサーバ装置１０１から受信した暗号化鍵（秘密情報）を用いて暗号化（秘匿化）する。
暗号化部３０５は、秘匿化処理部の例である。
【００３１】
乱数生成部３０６は、暗号化部３０５が暗号化を行うにあたり、暗号化のイニシャルベクタ（ＩＶ）となる乱数を生成する。
乱数生成部３０６も、秘匿化処理部の例となる。
【００３２】
次に動作について説明する。
図７は、利用者が振込を行う際のデータの流れを示した図である。
【００３３】
まず、利用者は振込に先立ち、クライアント装置１０４を使ってシステムへのログインを行うと、クライアント装置１０４からサーバ装置１０１に対して利用者番号とパスワードを含むログイン要求が送信される（Ｓ１０１）。
サーバ装置１０１では、ログイン要求を受信すると、ログイン／ログアウト処理部２０５によりログイン処理を実行する。
ログインに成功した場合には、サーバ装置１０１からクライアント装置１０４に対してセッションＩＤ（ＳＩＤ）を含むログイン応答が送信される（Ｓ１０２）。
【００３４】
次に、利用者が振込要求を行うと、クライアント装置１０４からサーバ装置１０１にＳＩＤと振込元口座番号と振込金額を含む振込処理要求が送信される（Ｓ１０３）。
サーバ装置１０１では、振込処理要求を受信すると、暗号化鍵管理部２０６で暗号化鍵を生成して、ログイン時に通知された利用者番号を元に利用者データベース２１０に記憶される利用者情報５０１より得られる携帯メールアドレスに対して送受信処理部２１２が暗号化鍵を送信する（Ｓ１０４）。
携帯電話１０８では、送受信処理部３０７が暗号化鍵を受信し、入力処理部３０８が利用者から振込先口座の情報（振込先の口座番号）を入力するとともに、乱数生成部３０６が乱数を生成して暗号化のイニシャルベクタ（ＩＶ）とし、暗号化部３０５が、入力処理部３０８が入力した振込先の口座番号をサーバ装置１０１から受信した暗号化鍵を使って暗号化し、暗号化鍵を消去した後に、送受信処理部３０７が、赤外線通信ポート１１１を介して暗号化口座番号とＩＶを、クライアント装置１０４へ送信する（Ｓ１０５）。
【００３５】
クライアント装置１０４では、赤外線通信ポート１０７で暗号化口座番号とＩＶを受信すると、ＳＩＤと暗号化口座番号とＩＶを含む振込実行をサーバ装置１０１へ送信する（Ｓ１０６）。
サーバ装置１０１では、クライアント装置１０４から振込実行を受信すると、取引認証部２０７で暗号化鍵と受信したＩＶとを使って暗号化口座番号を復号し、得られた口座番号を元に口座データベース２０９に記憶される口座情報４０１より口座名を引き当て、得られた口座名とＳ１０３で指定された金額とを含む振込確認要求をクライアント装置１０４へ送信する（Ｓ１０７）。
【００３６】
クライアント装置１０４では、受信した振込確認要求に含まれる口座名と金額をディスプレイ装置１０５に表示し、利用者からの振込の実行／中止を受け付けて、ＳＩＤと実行／中止を含む振込確認応答をサーバ装置１０１へ送信する（Ｓ１０８）。
サーバ装置１０１では、振込確認応答を受信すると、振込処理部２０８がその通知内容に従って振込を実行するか、または、振込を中止する。
この後、利用者がクライアント装置１０４を使ってシステムからのログアウトを行うと、クライアント装置１０４からサーバ装置１０１に対してＳＩＤを含むログアウト要求が送信される（Ｓ１０９）。
サーバ装置１０１では、ログアウト要求を受信すると、ログイン／ログアウト処理部２０５によりログアウト処理を実行する。
【００３７】
図８は、サーバ装置１０１がログイン要求を受信した際にログイン／ログアウト処理部２０５で実行されるログイン処理を示すフローチャートである。
【００３８】
まず、クライアント装置１０４から利用者番号を含むログイン要求を受信すると、ログイン／ログアウト処理部２０５は、利用者番号が利用者情報５０１に含まれているか、さらにパスワードが一致するかをチェックして、認証の成否を判定する（Ｓ２０１）。
認証が失敗の場合（Ｓ２０１でＮＯ）には、処理を終了する。
認証が成功の場合（Ｓ２０１でＹＥＳ）には、ログイン／ログアウト処理部２０５は、取引管理テーブル２１１で使用されていないＳＩＤを当該クライアント装置１０４に割り当てる（Ｓ２０２）。
次に、ログイン／ログアウト処理部２０５は、取引管理テーブル２１１に、割り当てたＳＩＤと利用者番号とをあわせて登録し（Ｓ２０３）、クライアント装置１０４へＳＩＤを含むログイン応答を送信し（Ｓ２０４）、ログイン処理を終了する。
【００３９】
図９は、サーバ装置１０１がログアウト要求を受信した際にログイン／ログアウト処理部２０５で実行されるログアウト処理を示すフローチャートである。
【００４０】
まず、クライアント装置１０４からＳＩＤを含むログアウト要求を受信すると、ログイン／ログアウト処理部２０５は、ＳＩＤが取引管理テーブル２１１に登録されているかをチェックする（Ｓ３０１）。
ＳＩＤが取引管理テーブル２１１に登録されていない場合（Ｓ３０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル２１１に登録されている場合（Ｓ３０１でＹＥＳ）には、ログイン／ログアウト処理部２０５は、取引管理テーブル２１１から該当するＳＩＤの登録を削除し（Ｓ３０２）、処理を終了する。
【００４１】
図１０は、サーバ装置１０１が振込処理要求を受信した際に暗号化鍵管理部２０６で実行される暗号化鍵生成処理を示すフローチャートである。
【００４２】
まず、クライアント装置１０４から振込処理要求を受信すると、暗号化鍵管理部２０６は、ＳＩＤが取引管理テーブル２１１に登録されているかをチェックする（Ｓ４０１）。
ＳＩＤが取引管理テーブル２１１に登録されていない場合（Ｓ４０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル２１１に登録されている場合（Ｓ４０１でＹＥＳ）には、暗号化鍵管理部２０６は、口座データベース２０９上の口座情報４０１から振込元口座番号で指定された口座の残高を引き当て、振込金額が残高を上回っていないかをチェックし（Ｓ４０２）、残高が不足している場合（Ｓ４０２でＮＯ）には、処理を終了する。
振込金額以上の残高がある場合（Ｓ４０２でＹＥＳ）には、暗号化鍵管理部２０６は、暗号化鍵として乱数を生成し（Ｓ４０３）、取引管理テーブル２１１に振込元口座番号と振込金額と暗号化鍵を登録し（Ｓ４０４）、取引管理テーブル２１１に登録されている利用者番号を元に、利用者データベース２１０上の利用者情報５０１から利用者の携帯メールアドレスを引き当て、このアドレスをあて先として携帯電話１０８に対して暗号化鍵を送信し（Ｓ４０５）、処理を終了する。
【００４３】
図１１は、サーバ装置１０１が振込実行を受信した際に取引認証部２０７で実行される取引認証処理を示すフローチャートである。
【００４４】
まず、クライアント装置１０４から取引実行を受信すると、取引認証部２０７は、ＳＩＤが取引管理テーブル２１１に登録されているかをチェックする（Ｓ５０１）。
ＳＩＤが取引管理テーブル２１１に登録されていない場合（Ｓ５０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル２１１に登録されている場合（Ｓ５０１でＹＥＳ）には、取引認証部２０７は、取引管理テーブル２１１から得られる暗号化鍵と受信したＩＶとを使って暗号化口座番号を復号し（Ｓ５０２）、得られた口座番号を元に口座データベース２０９上の口座情報４０１から口座名を引き当て（Ｓ５０３）、ＳＩＤと口座名と取引管理テーブル２１１から得られる振込金額とを含む振込確認要求をクライアント装置１０４へ送信し（Ｓ５０４）、処理を終了する。
【００４５】
図１２は、サーバ装置１０１が振込確認応答を受信した際に振込処理部２０８で実行される振込実行／中止処理を示すフローチャートである。
【００４６】
まず、クライアント装置１０４から振込確認応答を受信すると、振込処理部２０８は、ＳＩＤが取引管理テーブル２１１に登録されているかをチェックする（Ｓ６０１）。
ＳＩＤが取引管理テーブル２１１に登録されていない場合（Ｓ６０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル２１１に登録されている場合（Ｓ６０１でＹＥＳ）には、振込処理部２０８は、振込確認応答が実行を含むかを判定する（Ｓ６０２）。
振込確認応答が実行を含む場合（Ｓ６０２でＹＥＳ）には、振込処理部２０８は、取引管理テーブル２１１に登録されている振込元口座番号と振込金額と振込先口座番号に従い、口座データベース２０９上の口座情報４０１について、振込元口座番号の口座の残高を振込金額だけ減算し、振込先口座番号の口座の残高を振込金額だけ加算して振込を実行し（Ｓ６０３）、取引管理テーブル２１１の振込元口座番号、振込金額、暗号化鍵、振込口座番号の各値をクリアし（Ｓ６０４）、処理を終了する。
Ｓ６０２で、振込確認応答が実行ではなく中止を含む場合には、振込処理部２０８は、取引管理テーブル２１１の振込元口座番号、振込金額、暗号化鍵、振込口座番号の各値をクリアし（Ｓ６０４）、処理を終了する。
【００４７】
図２６は、クライアント装置１０４が口座名と金額とを含む振込確認要求を受信した際にディスプレイ装置１０５に表示する確認画面の例である。
振込の情報を表示する確認画面９０１の中には、振込先を大きな文字フォントを使ってテロップ表示する口座情報表示領域９０２があり、確認ボタン９０３、中止ボタン９０４がある。
確認ボタン９０３と中止ボタン９０４は、口座情報表示領域９０２に振込先の口座情報がテロップで全て表示されるまでは、押下できない状態で表示され（図２６（ａ））、口座情報表示領域９０２に振込先の口座情報が全て表示された後に初めて押下できる状態で表示される（図２６（ｂ））。
【００４８】
以上のように、振込先口座番号は、携帯電話１０８に入力されたものを暗号化してクライアント装置１０４を介してサーバ装置１０１に通知するようにしているので、例えクライアント装置１０４上に振込先を不正に書き換えようとするソフトウェアが存在していても、不正な振込を実行しようとしている振込先を暗号化した値がわからないため、振込先を目的とする口座に書き換えることはできない。
つまり、クライアント装置１０４に存在している不正なソフトウェアは、暗号化鍵を得ることができないので、サーバ装置において復号処理を行った際に目的の振込先口座番号が抽出されるように書き換えることができない。また、不正なソフトウェアがなんらかの書き換えを行っても、通常は、サーバ装置での復号処理において有意な口座番号が得られないので、サーバ装置において以降の処理が中止され、振込処理が行われない。
また、サーバ装置は、復号処理の結果得られた口座番号を用いてクライアント装置に対して振込確認を行う。このため、不正なソフトウェアが口座番号を書き換えた場合に、サーバ装置において復号処理を行って有意な口座番号が得られたとしても、クライアント装置への振込確認において利用者が意図している振込先とは異なる口座が提示されることになるので、この段階で、利用者は振込を中止することができ、意図していない振込先への振込がなされることを防止することができる。
【００４９】
また、利用者にとっては振込の確認を行う際に、入力したものが振込先の口座番号であるの対して、確認するものは、この入力した口座番号ではなく、口座番号に対応する口座名であるため、利用者の操作ミスを防ぐことができる。
さらに、この振込の確認は、表示領域の大きさが制限される携帯電話１０８のディスプレイ１０９ではなく、表示領域の大きさが携帯電話１０８のディスプレイ１０９に比べて大きいクライアント装置１０４のディスプレイ装置１０５を使って利用者に表示されるため、可視性に優れており、利用者の操作ミスを防ぐことができる。
また、利用者への口座名を大きな文字フォントを使ったテロップ表示にし、全てを表示して初めて確認を入力できるようにすることで、利用者の確認誤りを防ぐことができる。
また、利用者にとっては、パソコンと携帯電話の一般に普及している装置だけを使っており、専用の装置を導入しなくても不正なソフトウェアによる被害を安価に防ぐことができる。
【００５０】
なお、上記の説明ではクライアント装置１０４と携帯電話１０８との通信に赤外線通信を用いたが、赤外線通信に代えて他の通信、例えばＢｌｕｅｔｏｏｔｈ（登録商標）や無線ＬＡＮなどの無線通信、ＵＳＢケーブルやシリアルケーブルを用いた有線通信を使っても同様の効果が得られる。
【００５１】
また、上記の説明では、携帯電話１０８から暗号化口座番号とＩＶとをクライアント装置１０４を介してサーバ装置１０１に送信したが、携帯電話１０８からサーバ装置１０１へ直接送信するようにしても同様の効果が得られる。
【００５２】
また、上記の説明では、口座を特定するものとして口座番号のみを用いたが、支店番号や銀行番号がある場合には、これらと口座番号を合わせたものを上記説明における口座番号とすることもでき、この場合にも同様の効果が得られる。
【００５３】
さらに、上記の説明では、振込先口座番号の通知を振込実行時に行っているが、振込先口座番号を予め通知して登録し、振込実行時には登録済みの口座番号から振込先口座番号を選択するようにしても良い。
【００５４】
以上、本実施の形態では、ネットワークにより接続されたサーバ装置と第１の端末装置と、さらにサーバ装置とネットワークで接続される第２の端末装置からなる取引認証システムであって、
サーバ装置は、
第１の端末装置および第２の端末装置とのデータ通信を行う通信部と、
利用者の口座の口座番号、口座名、残高を管理する口座管理部と、
利用者の氏名、パスワード、第２の端末のアドレスを管理する利用者管理部と、
口座間での振込を実行する振込処理部と、
暗号化鍵を生成して記憶する暗号化鍵管理部と、
暗号化口座番号から口座番号を復号し、口座管理部から得られる口座番号に対応した口座名を提供する取引認証部を備え、
第１の端末装置は、
サーバ装置とのデータ通信を行う通信部と、
利用者からの振込要求を受け付ける入力部と、
振込の情報を表示する表示部を備え、
第２の端末装置は、
サーバ装置とのデータ通信を行う通信部と、
口座番号の入力を受け付ける入力部と、
暗号化鍵をサーバ装置から取得して保持し、口座番号の暗号化を行う暗号化部を備え、
第２の端末装置で暗号化した振込先口座番号から振込先を復号して得られる口座番号に対応した口座名を利用者に提示して振込実行の確認を求め、利用者の実行確認を受けた後に振込処理を実行する取引認証システムを説明した。
【００５５】
また、本実施の形態では、第２の端末装置は、乱数を生成する乱数生成部を備え、口座番号の暗号化の際に乱数を生成し、この乱数を使って口座番号の暗号化を行う取引認証システムを説明した。
【００５６】
また、本実施の形態では、第２の端末装置と第１の端末装置とはお互いに通信する近距離通信部をそれぞれ備え、近距離通信を使って第２の端末装置から第１の端末装置へ暗号化口座番号を送信する取引認証システムを説明した。
【００５７】
また、本実施の形態では、
ネットワークにより第１の端末装置と第２の端末装置とに接続されたサーバ装置であって、
第１の端末装置および第２の端末装置とのデータ通信を行う通信部と、
利用者の口座の口座番号、口座名、残高を管理する口座管理部と、
利用者の氏名、パスワード、第２の端末のアドレスを管理する利用者管理部と、
口座間での振込を実行する振込処理部と、
暗号化鍵を生成して記憶する暗号化鍵管理部と、
暗号化口座番号から口座番号を復号し、口座管理部から得られる口座番号に対応した口座名を提供する取引認証部を備え、
第２の端末装置で暗号化した振込先口座番号から振込先を復号して得られる口座番号に対応した口座名を第１の端末装置に提示して振込実行の確認を求め、第１の端末装置からの実行確認を受けた後に振込処理を実行するサーバ装置を説明した。
【００５８】
また、本実施の形態では、
ネットワークにより接続されたサーバ装置と第１の端末装置とに接続された第２の端末装置で、
サーバ装置とのデータ通信を行う通信部と、
口座番号の入力を受け付ける入力部と、
暗号化鍵をサーバ装置から取得して保持し、口座番号の暗号化を行う暗号化部を備え、
入力部から入力される口座番号をサーバ装置から取得した暗号化鍵で暗号化する第２の端末装置を説明した。
【００５９】
また、本実施の形態では、第２の端末装置は、乱数を生成する乱数生成部を備え、口座番号の暗号化の際に乱数を生成し、この乱数を使って口座番号の暗号化を行うことを説明した。
【００６０】
また、本実施の形態では、第２の端末装置は、第１の端末装置と通信する近距離通信部を備え、近距離通信を使って第１の端末装置へ暗号化口座番号を送信することを説明した。
【００６１】
実施の形態２．
実施の形態１では、秘密情報として、暗号化鍵を用いて口座番号の暗号化を行うことで不正な振込を防止するものであるが、本実施の形態では、秘密情報として、暗号化鍵に代えて口座番号を別の番号に変換するための変換テーブルを用いて不正な振込を防止する。
【００６２】
図１３は、本実施の形態に係る取引認証システムの一構成例を示す図である。
図１３において、サーバ装置６０１は、計算機であり、インターネット６０２と携帯電話網６０３に接続される。
クライアント装置６０４は、計算機であり、インターネット６０２に接続される。
クライアント装置６０４には、ディスプレイ装置６０５とキーボード６０６が接続され、赤外線通信ポート６０７を備える。
携帯電話６０８は、無線通信により携帯電話網６０３に接続される。携帯電話６０８は、ディスプレイ６０９と、入力装置６１０と、赤外線通信ポート６１１を備える。
【００６３】
本実施の形態においても、クライアント装置６０４は第１の端末装置の例であり、携帯電話６０８は第２の端末装置及び通信装置の例である。また、ディスプレイ装置６０５は、出力装置の例である。
【００６４】
図１４は、サーバ装置６０１の内部構成例を示す図である。
【００６５】
図１４において、サーバ装置６０１は、図１に示したサーバ装置１０１と同様に、ＣＰＵ（中央演算処理装置）７０１、メモリ装置７０２、ディスク装置７０３、通信インタフェース７０４を備えている。
サーバ装置６０１は、ソフトウェアのモジュールとして、ログイン／ログアウト処理部７０５、変換テーブル管理部７０６、取引認証部７０７、振込処理部７０８、送受信処理部７１２をディスク装置７０３上に記憶しており、これらのモジュールをディスク装置７０３からメモリ装置７０２上へロードし、ＣＰＵ７０１により実行する。
図２では、ログイン／ログアウト処理部７０５、変換テーブル管理部７０６、取引認証部７０７、振込処理部７０８、送受信処理部７１２がメモリ装置７０２にロードされた状態を示している。
また、ディスク装置７０３上には、口座データベース７０９と、利用者データベース７１０を格納する。
また、データ通信を行うために、通信インタフェース７０４が接続される。
通信インタフェース７０４は、インターネット６０２と携帯電話網６０３に接続される。
メモリ装置７０２上には、実行途中の取引を管理するための取引管理テーブル７１１を記憶する。
【００６６】
図１４において、ログイン／ログアウト処理部７０５はログイン／ログアウト処理部２０５と同等の処理を行い、取引認証部７０７は取引認証部２０７と同等の処理を行う。
また、同様に、振込処理部７０８は振込処理部２０８と同等の処理を行い、送受信処理部７１２は送受信処理部２１２と同等の処理を行う。
取引管理テーブル７１１では、図１６に示すように、図６の暗号化鍵の代わりに変換テーブルが管理される。図１６において、変換テーブル以外の要素は、図６に示したものとと同様である。
また、口座データベース７０９は口座データベース２０９と同等の情報を管理し、図４に例示した通りである。
また、利用者データベース７１０は利用者データベース２１０と同等の情報を管理し、図５に例示した通りである。
また、変換テーブル管理部７０６は、実施の形態１の暗号化鍵管理部２０６に対応し、暗号化鍵の代わりに、振込先口座情報の値の変換を行うための変換テーブルを生成する。
【００６７】
本実施の形態において、変換テーブル管理部７０６は秘密情報取得部の例である。
取引認証部７０７は、情報抽出部及び口座確認情報生成部の例である。
、送受信処理部７１２は、振込処理要求受信部、秘密情報送信部、秘匿化振込先口座情報受信部、口座確認情報送信部、振込処理実行指示受信部の例である。
また、ディスク装置７０３は、端末装置登録部の例である。
【００６８】
図１５は、携帯電話６０８の内部構成例を示す図である。
図１５において、携帯電話６０８は、ＣＰＵ８０１、メモリ装置８０２、フラッシュメモリ８０３、通信インタフェース８０４、赤外線通信ポート６１１、ディスプレイ６０９、入力装置６１０を備える。
携帯電話６０８は、ソフトウェアのモジュールとして、変換部８０５、送受信処理部８０６、入力処理部８０７をフラッシュメモリ８０３上に記憶しており、これらモジュールをメモリ装置８０２上へロードし、ＣＰＵ８０１により実行する。
【００６９】
図１５において、送受信処理部８０６は送受信処理部３０７と同様の処理を行い、入力処理部８０７は入力処理部３０８と同等の処理を行う。
変換部８０５は、入力処理部８０７により入力された振込先口座情報を、送受信処理部８０６がサーバ装置６０１から受信した変換テーブル（秘密情報）を用いて変換（秘匿化）する。
【００７０】
本実施の形態において、変換部８０５は秘匿化処理部の例である。
送受信処理部８０６は秘密情報受信部及び秘匿化振込先口座情報送信部の例である。
入力処理部８０７は振込先口座情報入力部の例である。
【００７１】
次に、動作について説明する。
図１７は、利用者が振込を行う際のデータの流れを示した図である。
【００７２】
まず、利用者は振込に先立ち、クライアント装置６０４を使ってシステムへのログインを行うと、クライアント装置６０４からサーバ装置６０１に対して利用者番号とパスワードを含むログイン要求が送信される（Ｓ７０１）。
サーバ装置６０１では、ログイン要求を受信すると、ログイン／ログアウト処理部７０５によりログイン処理を実行する。
ログインに成功した場合には、サーバ装置６０１からクライアント装置６０４に対してセッションＩＤ（ＳＩＤ）を含むログイン応答が送信される（Ｓ７０２）。
【００７３】
次に、利用者が振込要求を行うと、クライアント装置６０４からサーバ装置６０１にＳＩＤと振込元口座番号と振込金額を含む振込処理要求が送信される（Ｓ７０３）。
サーバ装置６０１では、振込処理要求を受信すると、変換テーブル管理部７０６で変換テーブルを生成して、ログイン時に通知された利用者番号を元に利用者データベース２１０に記憶される利用者情報５０１より得られる携帯メールアドレスに対して変換テーブルを送信する（Ｓ７０４）。
携帯電話６０８では、送受信処理部８０６が変換テーブルを受信し、入力処理部８０７が利用者から振込先口座の情報（振込先の口座番号）を入力するとともに、変換部８０５が、入力処理部８０７が入力した振込先の口座番号をサーバ装置６０１から受信した変換テーブルを使って変換し、変換テーブルを消去した後に、送受信処理部８０６が、赤外線通信ポート６１１を介して変換後の口座番号を、クライアント装置６０４へ送信する（Ｓ７０５）。
【００７４】
クライアント装置６０４では、赤外線通信ポート６０７で変換後の口座番号を受信すると、ＳＩＤと変換後の口座番号を含む振込実行をサーバ装置６０１へ送信する（Ｓ７０６）。
サーバ装置６０１では、クライアント装置６０４から振込実行を受信すると、取引認証部７０７で変換テーブルを使って変換後の口座番号を逆変換し、得られた口座番号を元に口座データベース７０９に記憶される口座情報４０１より口座名を引き当て、得られた口座名とＳ７０３で指定された金額とを含む振込確認要求をクライアント装置６０４へ送信する（Ｓ７０７）。
【００７５】
クライアント装置６０４では、受信した振込確認要求に含まれる口座名と金額をディスプレイ装置６０５に表示し、利用者からの振込の実行／中止を受け付けて、ＳＩＤと実行／中止を含む振込確認応答をサーバ装置６０１へ送信する（Ｓ７０８）。
サーバ装置６０１では、振込確認応答を受信すると、振込処理部７０８がその通知内容に従って振込を実行するか、または、振込を中止する。
この後、利用者がクライアント装置６０４を使ってシステムからのログアウトを行うと、クライアント装置６０４からサーバ装置６０１に対してＳＩＤを含むログアウト要求が送信される（Ｓ７０９）。
サーバ装置６０１では、ログアウト要求を受信すると、ログイン／ログアウト処理部７０５によりログアウト処理を実行する。
【００７６】
図１８は、サーバ装置６０１がログイン要求を受信した際にログイン／ログアウト処理部７０５で実行されるログイン処理を示すフローチャートである。
【００７７】
まず、クライアント装置６０４から利用者番号を含むログイン要求を受信すると、ログイン／ログアウト処理部７０５は、利用者番号が利用者情報５０１に含まれているか、さらにパスワードが一致するかをチェックして、認証の成否を判定する（Ｓ８０１）。
認証が失敗の場合（Ｓ８０１でＮＯ）には、処理を終了する。
認証が成功の場合（Ｓ８０１でＹＥＳ）には、ログイン／ログアウト処理部７０５は、取引管理テーブル７１１で使用されていないＳＩＤを割り当てる（Ｓ８０２）。
次に、取引管理テーブル７１１に割り当てたＳＩＤと利用者番号とをあわせて登録し（Ｓ８０３）、クライアント装置６０４へＳＩＤを含むログイン応答を送信し（Ｓ８０４）、ログイン処理を終了する。
【００７８】
図１９は、サーバ装置６０１がログアウト要求を受信した際にログイン／ログアウト処理部７０５で実行されるログアウト処理を示すフローチャートである。
【００７９】
まず、クライアント装置６０４からＳＩＤを含むログアウト要求を受信すると、ログイン／ログアウト処理部７０５は、ＳＩＤが取引管理テーブル７１１に登録されているかをチェックする（Ｓ９０１）。
ＳＩＤが取引管理テーブル７１１に登録されていない場合（Ｓ９０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル７１１に登録されている場合（Ｓ９０１でＹＥＳ）には、取引管理テーブル７１１から該当するＳＩＤの登録を削除し（Ｓ９０２）、処理を終了する。
【００８０】
図２０は、サーバ装置６０１が振込処理要求を受信した際に変換テーブル管理部７０６で実行される変換テーブル生成処理を示すフローチャートである。
【００８１】
まず、クライアント装置６０４から振込処理要求を受信すると、変換テーブル管理部７０６は、ＳＩＤが取引管理テーブル７１１に登録されているかをチェックする（Ｓ１００１）。
ＳＩＤが取引管理テーブル７１１に登録されていない場合（Ｓ１００１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル７１１に登録されている場合（Ｓ１００１でＹＥＳ）には、変換テーブル管理部７０６は、口座データベース７０９上の口座情報４０１から振込元口座番号で指定された口座の残高を引き当て、振込金額が残高を上回っていないかをチェックし（Ｓ１００２）、残高が不足している場合（Ｓ１００２でＮＯ）には、処理を終了する。
振込金額以上の残高がある場合（Ｓ１００２でＹＥＳ）には、変換テーブルとして各桁の数字に重複のない１０桁の乱数を生成し（Ｓ１００３）、取引管理テーブル７１１に振込元口座番号と振込金額と変換テーブルを登録し（Ｓ１００４）、取引管理テーブル７１１に登録されている利用者番号を元に、利用者データベース７１０上の利用者情報５０１から利用者の携帯メールアドレスを引き当て、このアドレスをあて先として携帯電話６０８に対して変換テーブルを送信し（Ｓ１００５）、処理を終了する。
【００８２】
図２１は、サーバ装置６０１が振込実行を受信した際に取引認証部７０７で実行される取引認証処理を示すフローチャートである。
【００８３】
まず、クライアント装置６０４から取引実行を受信すると、取引認証部７０７は、ＳＩＤが取引管理テーブル７１１に登録されているかをチェックする（Ｓ１１０１）。
ＳＩＤが取引管理テーブル７１１に登録されていない場合（Ｓ１１０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル７１１に登録されている場合（Ｓ１１０１でＹＥＳ）には、取引認証部７０７は、取引管理テーブル７１１から得られる変換テーブルを使って変換後の口座番号を逆変換し（Ｓ１１０２）、得られた口座番号を元に口座データベース７０９上の口座情報４０１から口座名を引き当て（Ｓ１１０３）、ＳＩＤと口座名と取引管理テーブル７１１から得られる振込金額とを含む振込確認要求をクライアント装置６０４へ送信し（Ｓ１１０４）、処理を終了する。
【００８４】
図２２は、サーバ装置６０１が振込確認応答を受信した際に振込処理部７０８で実行される振込実行／中止処理を示すフローチャートである。
【００８５】
まず、クライアント装置６０４から振込確認応答を受信すると、ＳＩＤが取引管理テーブル７１１に登録されているかをチェックする（Ｓ１２０１）。
ＳＩＤが取引管理テーブル７１１に登録されていない場合（Ｓ１２０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル７１１に登録されている場合（Ｓ１２０１でＹＥＳ）には、振込処理部７０８は、振込確認応答が実行を含むかを判定する（Ｓ１２０２）。
振込確認応答が実行を含む場合（Ｓ１２０２でＹＥＳ）には、振込処理部７０８は、取引管理テーブル７１１に登録されている振込元口座番号と振込金額と振込先口座番号に従い、口座データベース７０９上の口座情報４０１について、振込元口座番号の口座の残高を振込金額だけ減算し、振込先口座番号の口座の残高を振込金額だけ加算して振込を実行し（Ｓ１２０３）、取引管理テーブル７１１の振込元口座番号、振込金額、変換テーブル、振込口座番号の各値をクリアし（Ｓ１２０４）、処理を終了する。
Ｓ１２０２で、振込確認応答が実行はでなく中止を含む場合には、取引管理テーブル２１１の振込元口座番号、振込金額、変換テーブル、振込口座番号の各値をクリアし（Ｓ１２０４）、処理を終了する。
【００８６】
図２３は、携帯電話６０８がサーバ装置６０１から変換テーブルを受信した際に、変換部８０５で実行される変換処理を示すフローチャートである。
【００８７】
まず、変換部８０５は、変数ｉを０に初期化し、受信した変換テーブルを変数ｔにセットする（Ｓ１３０１）。
次に、変換部８０５は、変数ｔを１０で割った余りを配列Ｔの要素Ｔ［ｉ］にセットし、変数ｔを１０で割った商に更新し、変数ｉを１加算する（Ｓ１３０２）。
ここで、変数ｉが１０より小さいかをチェックし（Ｓ１３０３）、小さい場合にはＳ１３０２からの処理を繰り返す。
変数ｉが１０以上の場合には、変数Ｎに利用者が入力装置６１０から入力した振込先口座番号をセットし、変数ｋを１に、変数Ｒを０にそれぞれ初期化する（Ｓ１３０４）。
また、変換部８０５は、変数Ｎを１０のｋ乗で割った余りを配列Ｔの添え字として得られる値に変数Ｒを１０倍した値を加えたもので変数Ｒを更新し、変数ｋを１加算する（Ｓ１３０５）。
ここで、変換部８０５は、変数ｋが口座番号の桁数以下かをチェックし（Ｓ１３０６）、変数ｋが口座番号の桁数以下の場合にはＳ１３０５からの処理を繰り返す。
変数ｋが口座番号の桁数より大きい場合には、変換後の口座番号としてＲを返し（Ｓ１３０７）、変換処理を終了する。
【００８８】
図２５（ａ）は、変換部８０５による変換処理の例を示している。
変換テーブルがｔ＝２１３８９４５０７６である場合に、図２３のＳ１３０１〜Ｓ１３０３の処理を行うことにより、図２５（ａ）に示すＴ［ｉ］の値が得られる。
そして、振込先口座番号がＮ＝９８５７６０１である場合に、Ｓ１３０４〜Ｓ１３０６の処理を行うことにより変更後の振込先口座番号Ｒ＝７６８３９１２が得られる。
つまり、ｋ＝０のときは、Ｎ％１０１＝１であり、Ｔ［１］＝７となる。
また、ｋ＝１のときは、Ｎ％１０２＝０であり、Ｔ［０］＝６となる。
また、ｋ＝２のときは、Ｎ％１０３＝６であり、Ｔ［６］＝８となる。
また、ｋ＝３のときは、Ｎ％１０４＝７であり、Ｔ［７］＝３となる。
また、ｋ＝４のときは、Ｎ％１０５＝５であり、Ｔ［５］＝９となる。
また、ｋ＝５のときは、Ｎ％１０６＝８であり、Ｔ［８］＝１となる。
また、ｋ＝６のときは、Ｎ％１０７＝９であり、Ｔ［９］＝２となる。
【００８９】
図２４は、Ｓ１１０２において変換テーブルを使って変換後の口座番号の逆変換を行う処理のフローチャートである。
【００９０】
まず、取引認証部７０７は、変数ｉを０に初期化し、変換テーブルを変数ｔにセットする（Ｓ１４０１）。
次に、取引認証部７０７は、変数ｔを１０で割った余りを配列Ｔの要素Ｔ［ｉ］にセットし、変数ｔを１０で割った商に更新し、変数ｉを１加算する（Ｓ１４０２）。
ここで、変数ｉが１０より小さいかをチェックし（Ｓ１４０３）、小さい場合にはＳ１４０２からの処理を繰り返す。
変数ｉが１０以上の場合には、取引認証部７０７は、変数Ｒに変換後の口座番号をセットし、変数ｋとＮをそれぞれ０に初期化する（Ｓ１４０４）。
また、取引認証部７０７は、変数Ｒを１０のｋ乗で割った商をさらに１０で割った余りを変数ｒにセットし、変数ｋを１加算し、変数ｍを０に初期化する（Ｓ１４０５）。
ここで、変数ｒが配列Ｔの要素Ｔ［ｍ］と等しいかをチェックし（Ｓ１４０６）、等しくない場合には変数ｍを１加算し（Ｓ１４０７）、Ｓ１４０６からの処理を繰り返す。
一方、変数ｒが配列Ｔの要素Ｔ［ｍ］と等しい場合には、取引認証部７０７は、変数Ｎを１０倍してｍを加算した値で変数Ｎを更新し（Ｓ１４０８）、変数ｋが口座番号の桁数より小さいかをチェックし（Ｓ１４０９）、小さい場合にはＳ１４０５からの処理を繰り返す。
変数ｋが口座番号の桁数以上の場合には、取引認証部７０７は、逆変換した口座番号としてＮを返し（Ｓ１４１０）、逆変換処理を終了する。
【００９１】
図２５（ｂ）は、取引認証部７０７による逆変換処理の例を示している。
図２４のＳ１４０１〜Ｓ１４０３の処理を行うことにより、図２５（ｂ）に示すＴ［ｉ］の値が得られる。
そして、変更後の振込先口座番号がＲ＝７６８３９１２である場合に、Ｓ１４０４〜Ｓ１４０９の処理を行うことにより振込先口座番号がＮ＝９８５７６０１が得られる。
つまり、ｋ＝０のときは、ｒ＝（Ｒ％１００）％１０＝２であり、ｒ＝２はＴ［９］に一致し、９を得る。
また、ｋ＝１のときは、ｒ＝（Ｒ％１０１）％１０＝１であり、ｒ＝１はＴ［８］に一致し、８を得る。
また、ｋ＝２のときは、ｒ＝（Ｒ％１０２）％１０＝９であり、ｒ＝９はＴ［５］に一致し、５を得る。
また、ｋ＝３のときは、ｒ＝（Ｒ％１０３）％１０＝３であり、ｒ＝３はＴ［７］に一致し、７を得る。
また、ｋ＝４のときは、ｒ＝（Ｒ％１０４）％１０＝８であり、ｒ＝８はＴ［６］に一致し、６を得る。
また、ｋ＝５のときは、ｒ＝（Ｒ％１０５）％１０＝６であり、ｒ＝６はＴ［０］に一致し、０を得る。
また、ｋ＝６のときは、ｒ＝（Ｒ％１０６）％１０＝７であり、ｒ＝７はＴ［１］に一致し、１を得る。
【００９２】
以上のように、振込先口座番号は、携帯電話６０８に入力されたものを変換テーブルを元に変換してクライアント装置６０４を介してサーバ装置１０１に通知するようにしているので、例えクライアント装置６０４上に振込先を不正に書き換えようとするソフトウェアが存在していても、不正な振込を実行しようとしている振込先を変換した値がわからないため、振込先を目的とする口座に書き換えることはできない。
つまり、クライアント装置１０４に存在している不正なソフトウェアは、変換テーブルを得ることができないので、サーバ装置において逆変換処理を行った際に目的の振込先口座番号が抽出されるように書き換えることができない。また、不正なソフトウェアがなんらかの書き換えを行っても、通常は、サーバ装置での逆変換処理において有意な口座番号が得られないので、サーバ装置において以降の処理が中止され、振込処理が行われない。
また、サーバ装置は、逆変換処理の結果得られた口座番号を用いてクライアント装置に対して振込確認を行う。このため、不正なソフトウェアが口座番号を書き換えた場合に、サーバ装置において逆変換処理を行って有意な口座番号が得られたとしても、クライアント装置への振込確認において利用者が意図している振込先とは異なる口座が提示されることになるので、この段階で、利用者は振込を中止することができ、意図していない振込先への振込がなされることを防止することができる。
【００９３】
また、利用者にとっては振込の確認を行う際に、入力したものが振込先の口座番号であるの対して、確認するものは、この入力した口座番号ではなく、口座番号に対応する口座名であるため、利用者の操作ミスを防ぐことができる。
さらに、この振込の確認は、表示領域の大きさが制限される携帯電話６０８のディスプレイ６０９ではなく、表示領域の大きさが携帯電話６０８のディスプレイ６０９に比べて大きいクライアント装置６０４のディスプレイ装置６０５を使って利用者に表示されるため、可視性に優れており、利用者の操作ミスを防ぐことができる。
また、利用者にとっては、パソコンと携帯電話の一般に普及している装置だけを使っており、専用の装置を導入しなくても不正なソフトウェアによる被害を安価に防ぐことができる。さらに、本実施の形態においては、携帯電話６０８は、口座番号の変換を行うだけであり、暗号化ができない機種や暗号化に時間がかかる機種であっても利用することができる。
【００９４】
なお、上記の説明ではクライアント装置６０４と携帯電話６０８との通信に赤外線通信を用いたが、赤外線通信に代えて他の通信、例えばＢｌｕｅｔｏｏｔｈ（登録商標）や無線ＬＡＮなどの無線通信、ＵＳＢケーブルやシリアルケーブルを用いた有線通信を使っても同様の効果が得られる。
【００９５】
また、変換後の口座番号を携帯電話６０８のディスプレイ６０９に表示したものを、クライアント装置６０４のキーボード６０６から入力しても同様の効果が得られる。
【００９６】
また、上記の説明では、携帯電話６０８から変換後の口座番号をクライアント装置６０４を介してサーバ装置６０１に送信したが、携帯電話６０８からサーバ装置６０１へ直接送信するようにしても同様の効果が得られる。
【００９７】
また、上記の説明では、口座を特定するものとして口座番号のみを用いたが、支店番号や銀行番号がある場合には、これらと口座番号を合わせたものを上記説明における口座番号とすることもでき、この場合にも同様の効果が得られる。
【００９８】
また、上記の説明では、振込先口座番号の通知を振込実行時に行っているが、振込先口座番号を予め通知して登録し、振込実行時には登録済みの口座番号から振込先口座番号を選択するようにしても良い。
【００９９】
以上、本実施の形態では、
ネットワークにより接続されたサーバ装置と第１の端末装置と、さらにサーバ装置とネットワークで接続される第２の端末装置からなる取引認証システムであって、
サーバ装置は、
第１の端末装置および第２の端末装置とのデータ通信を行う通信部と、
利用者の口座の口座番号、口座名、残高を管理する口座管理部と、
利用者の氏名、パスワード、第２の端末のアドレスを管理する利用者管理部と、
口座間での振込を実行する振込処理部と、
変換テーブルを生成して記憶する変換テーブル管理部と、
変換後の口座番号から口座番号を逆変換し、口座管理部から得られる口座番号に対応した口座名を提供する取引認証部を備え、
第１の端末装置は、
サーバ装置とのデータ通信を行う通信部と、
利用者からの振込要求を受け付ける入力部と、
振込の情報を表示する表示部を備え、
第２の端末装置は、
サーバ装置とのデータ通信を行う通信部と、
口座番号の入力を受け付ける入力部と、
口座番号変換テーブルをサーバ装置から取得して保持し、口座番号の変換を行う暗号化部と、
変換後の口座番号を表示する表示部を備え、
第２の端末装置で変換した変換後の振込先口座番号から逆変換して得られる口座番号に対応した口座名を利用者に提示して振込実行の確認を求め、利用者の実行確認を受けた後に振込処理を実行する取引認証システムを説明した。
【０１００】
また、本実施の形態では、第２の端末装置と第１の端末装置とはお互いに通信する近距離通信部をそれぞれ備え、近距離通信を使って第２の端末装置から第１の端末装置へ変換後の口座番号を送信する取引認証システムを説明した。
【０１０１】
また、本実施の形態では、
ネットワークにより第１の端末装置と第２の端末装置とに接続されたサーバ装置であって、
第１の端末装置および第２の端末装置とのデータ通信を行う通信部と、
利用者の口座の口座番号、口座名、残高を管理する口座管理部と、
利用者の氏名、パスワード、第２の端末のアドレスを管理する利用者管理部と、
口座間での振込を実行する振込処理部と、
第２の端末テーブルを生成して記憶する変換テーブル管理部と、
変換後の口座番号から口座番号を逆変換し、口座管理部から得られる口座番号に対応した口座名を提供する取引認証部を備え、
第２の端末装置で変換した変換後の振込先口座番号から逆変換して得られる口座番号に対応する口座名を第１の端末装置に送信して振込実行の確認を求め、第１の端末装置からの実行確認を受けた後に振込処理を実行するサーバ装置を説明した。
【０１０２】
また、本実施の形態では、
ネットワークにより接続されたサーバ装置と第１の端末装置とに接続された第２の端末装置で、
サーバ装置とのデータ通信を行う通信部と、
口座番号の入力を受け付ける入力部と、
口座番号変換テーブルをサーバ装置から取得して保持し、口座番号の変換を行う変換部と、
変換後の口座番号を表示する表示部を備え、
入力部から入力される口座番号をサーバ装置から取得した変換テーブルで変換する第２の端末装置を説明した。
【０１０３】
また、本実施の形態では、第２の端末装置は、第１の端末装置と通信する近距離通信部を備え、近距離通信を使って第１の端末装置へ暗号化口座番号を送信することを説明した。
【０１０４】
実施の形態３．
実施の形態１および２では、振込口座名を出力する出力装置としてクライアント端末のディスプレイ装置を使ったものであるが、本実施の形態では、振込先口座名を出力する出力装置としてクライアント端末のディスプレイ装置だけでなく音源再生装置を用いる。
図２７は、本実施の形態に係る取引認証システム（通信システム）の一構成例を示す図である。
【０１０５】
図２７において、サーバ装置１００１は、計算機であり、インターネット１００２と携帯電話網１００３に接続される。
サーバ装置１００１は、振込処理を行う。
【０１０６】
クライアント装置１００４は、計算機であり、インターネット１００２に接続される。
クライアント装置１００４には、ディスプレイ装置１００５（出力装置）とキーボード１００６が接続され、赤外線通信ポート１００７と、音源再生装置１００８（出力装置）を備える。
クライアント装置１００４は、サーバ装置１００１に対して振込処理を要求する。
クライアント装置１００４は、第１の端末装置の例である。
【０１０７】
携帯電話１００９は、無線通信により携帯電話網１００３に接続される。
携帯電話１００９は、ディスプレイ１０１０と、入力装置１０１１と、赤外線通信ポート１０１２を備える。
携帯電話１００９は、第２の端末装置及び通信装置の例である。
【０１０８】
ここで、本実施の形態に係る取引認証システムの動作の概要を説明し、その後、サーバ装置１００１、携帯電話１００９の内部構成例を説明する。
【０１０９】
サーバ装置１００１は、対になるクライアント装置１００４と携帯電話１００９とを対応付けて登録している。ここでは、クライアント装置１００４と携帯電話１００９とが同じ利用者により利用されているとする。
そして、クライアント装置１００４が、インターネット１００２を通じて、サーバ装置１００１に対して、振込処理を要求する振込処理要求を送信し、振込処理要求を受信したサーバ装置１００１は、振込処理要求の送信元のクライアント装置１００４に対応付けて登録している携帯電話１００９を特定するとともに、特定した携帯電話１００９との間で秘密に共有する秘密情報（例えば、暗号化鍵）を、特定した携帯電話１００９に対して送信する。
携帯電話１００９は、携帯電話網１００３から、サーバ装置１００１からの秘密情報を受信した場合に、対になるクライアント装置１００４がサーバ装置１００１に要求している振込処理での振込先口座を特定する振込先口座情報（振込先の口座番号等）を、受信した秘密情報を用いて秘匿化し、秘匿化後の振込先口座情報を赤外線通信によりクライアント装置１００４に送信する。
クライアント装置１００４は、赤外線通信により携帯電話１００９から送信された秘匿化後の振込先口座情報をインターネット１００２からサーバ装置１００１に送信する。
サーバ装置１００１は、秘匿化後の振込先口座情報を受信した場合に、携帯電話１００９に送信した秘密情報を用いて秘匿化後の振込先口座情報から振込先口座情報を抽出し、抽出した振込先口座情報に基づいて振込処理を行う。
【０１１０】
図２８は、サーバ装置１００１の内部構成例を示す図である。
【０１１１】
図２８において、サーバ装置１００１は、ＣＰＵ（中央演算処理装置）１１０１、メモリ装置１１０２、ディスク装置１１０３、通信インタフェース１１０４を備えている。
サーバ装置１００１は、ソフトウェアのモジュールとして、ログイン／ログアウト処理部１１０５、暗号化鍵管理部１１０６、取引認証部１１０７、振込処理部１１０８、送受信処理部１１１２、音声ファイル生成部１１１３をディスク装置１１０３上に記憶しており、これらのモジュールをディスク装置１１０３からメモリ装置１１０２上へロードし、ＣＰＵ１１０１により実行する。
図２８では、ログイン／ログアウト処理部１１０５、暗号化鍵管理部１１０６、取引認証部１１０７、振込処理部１１０８、送受信処理部１１１２、音声ファイル生成部１１１３がメモリ装置１１０２にロードされた状態を示している。
また、ディスク装置１１０３上には、口座データベース１１０９と、利用者データベース１１１０を格納する。
また、データ通信を行うために、通信インタフェース１１０４が接続される。
通信インタフェース１１０４は、インターネット１００２と携帯電話網１００３に接続される。
メモリ装置１１０２上には、実行途中の取引を管理するための取引管理テーブル１１１１を記憶する。
【０１１２】
図２８において、ログイン／ログアウト処理部１１０５はログイン／ログアウト処理部２０５と同等の処理を行い、取引認証部１１０７は取引認証部２０７と同等の処理を行う。
また、同様に、振込処理部１１０８は振込処理部２０８と同等の処理を行い、送受信処理部１１１２は送受信処理部２１２と同等の処理を行う。
取引管理テーブル１１１１では、図３０に示すように、図６の取引管理テーブル２１１にＩＶを登録するカラムを追加したもので、図３０において、ＩＶ以外の要素は、図６に示したものとと同様である。
また、口座データベース１１０９は口座データベース２０９と同等の情報を管理し、図４に例示した通りである。
また、利用者データベース１１１０は利用者データベース２１０と同等の情報を管理し、図５に例示した通りである。
また、音声ファイル生成部１１１３は、音源再生装置１００８で再生可能な形式で口座名を読み上げる音声ファイルを生成するソフトウェアのモジュールである。
【０１１３】
本実施の形態において、暗号化鍵管理部１１０６は秘密情報取得部の例である。
取引認証部１１０７は、情報抽出部及び口座確認情報生成部の例である。
送受信処理部１１１２は、振込処理要求受信部、秘密情報送信部、秘匿化振込先口座情報受信部、口座確認情報送信部、振込処理実行指示受信部の例である。
また、ディスク装置１１０３は、端末装置登録部の例である。
【０１１４】
図２９は、携帯電話１００９の内部構成例を示す図である。
図２９において、携帯電話１００９は、ＣＰＵ１２０１、メモリ装置１２０２、フラッシュメモリ１２０３、通信インタフェース１２０４、赤外線通信ポート１０１２、ディスプレイ１０１０、入力装置１０１１を備える。
携帯電話１００９は、ソフトウェアのモジュールとして、暗号化部１２０５、送受信処理部１２０６、入力処理部１２０７をフラッシュメモリ１２０３上に記憶しており、これらモジュールをメモリ装置１２０２上へロードし、ＣＰＵ１２０１により実行する。
【０１１５】
図２９において、暗号化部１２０５は暗号化部３０５と同様の処理を行い、送受信処理部１２０６は送受信処理部３０７と同様の処理を行い、入力処理部１２０７は入力処理部３０８と同等の処理を行う。
【０１１６】
本実施の形態において、暗号化部１２０５は秘匿化処理部の例である。
送受信処理部１２０６は秘密情報受信部及び秘匿化振込先口座情報送信部の例である。
入力処理部１２０７は振込先口座情報入力部の例である。
【０１１７】
次に動作について説明する。
図３１は、利用者が振込を行う際のデータの流れを示した図である。
【０１１８】
まず、利用者は振込に先立ち、クライアント装置１００４を使ってシステムへのログインを行うと、クライアント装置１００４からサーバ装置１００１に対して利用者番号とパスワードを含むログイン要求が送信される（Ｓ１５０１）。
サーバ装置１００１では、ログイン要求を受信すると、ログイン／ログアウト処理部１１０５によりログイン処理を実行する。
ログインに成功した場合には、サーバ装置１１０１からクライアント装置１１０４に対してセッションＩＤ（ＳＩＤ）を含むログイン応答が送信される（Ｓ１５０２）。
【０１１９】
次に、利用者が振込要求を行うと、クライアント装置１００４からサーバ装置１００１にＳＩＤと振込元口座番号と振込金額を含む振込処理要求が送信される（Ｓ１５０３）。
サーバ装置１００１では、振込処理要求を受信すると、暗号化鍵管理部１１０６で暗号化鍵と暗号化のイニシャルベクタ（ＩＶ）を生成して、ログイン時に通知された利用者番号を元に利用者データベース１１１０に記憶される利用者情報５０１より得られる携帯メールアドレスに対して送受信処理部１１１２が暗号化鍵とＳＩＤとＩＶを送信する（Ｓ１５０４）。
携帯電話１００９では、送受信処理部１２０６が暗号化鍵とＳＩＤとＩＶを受信し、入力処理部１２０７が利用者から振込先口座の情報（振込先の口座番号）を入力すると、暗号化部１２０５が、入力処理部１２０７が入力した振込先の口座番号をサーバ装置１００１から受信した暗号化鍵とＩＶとを使って暗号化し、暗号化鍵とＩＶを消去した後に、送受信処理部１２０６が、赤外線通信ポート１０１２を介して暗号化口座番号を、クライアント装置１００４へ送信する（Ｓ１５０５）。
【０１２０】
クライアント装置１００４では、赤外線通信ポート１００７で暗号化口座番号を受信すると、ＳＩＤと暗号化口座番号を含む振込実行をサーバ装置１００１へ送信する（Ｓ１５０６）。
サーバ装置１００１では、クライアント装置１００４から振込実行を受信すると、取引認証部１１０７で暗号化鍵とＩＶとを使って暗号化口座番号を復号し、得られた口座番号を元に口座データベース１１０９に記憶される口座情報４０１より口座名を引き当て、得られた口座名に対してこれを読み上げた口座名音声ファイルを音声ファイル生成部１１１３で生成し、口座名と口座名音声ファイルとＳ１５０３で指定された金額とを含む振込確認要求をクライアント装置１００４へ送信する（Ｓ１５０７）。
【０１２１】
クライアント装置１００４では、受信した振込確認要求に含まれる口座名と金額をディスプレイ装置１００５に表示するとともに口座名音声ファイルを音声再生装置１００８で再生し、利用者からの振込の実行／中止を受け付けて、ＳＩＤと実行／中止を含む振込確認応答をサーバ装置１００１へ送信する（Ｓ１５０８）。
サーバ装置１００１では、振込確認応答を受信すると、振込処理部１１０８がその通知内容に従って振込を実行するか、または、振込を中止する。
この後、利用者がクライアント装置１００４を使ってシステムからのログアウトを行うと、クライアント装置１００４からサーバ装置１００１に対してＳＩＤを含むログアウト要求が送信される（Ｓ１５０９）。
サーバ装置１００１では、ログアウト要求を受信すると、ログイン／ログアウト処理部１１０５によりログアウト処理を実行する。
【０１２２】
図３２は、サーバ装置１００１がログイン要求を受信した際にログイン／ログアウト処理部１１０５で実行されるログイン処理を示すフローチャートである。
【０１２３】
まず、クライアント装置１００４から利用者番号を含むログイン要求を受信すると、ログイン／ログアウト処理部１１０５は、利用者番号が利用者情報５０１に含まれているか、さらにパスワードが一致するかをチェックして、認証の成否を判定する（Ｓ１６０１）。
認証が失敗の場合（Ｓ１６０１でＮＯ）には、処理を終了する。
認証が成功の場合（Ｓ１６０１でＹＥＳ）には、ログイン／ログアウト処理部１１０５は、取引管理テーブル１１１１で使用されていないＳＩＤを当該クライアント装置１００４に割り当てる（Ｓ１６０２）。
次に、ログイン／ログアウト処理部１１０５は、取引管理テーブル１１１１に、割り当てたＳＩＤと利用者番号とをあわせて登録し（Ｓ１６０３）、クライアント装置１００４へＳＩＤを含むログイン応答を送信し（Ｓ１６０４）、ログイン処理を終了する。
【０１２４】
図３３は、サーバ装置１００１がログアウト要求を受信した際にログイン／ログアウト処理部１１０５で実行されるログアウト処理を示すフローチャートである。
【０１２５】
まず、クライアント装置１００４からＳＩＤを含むログアウト要求を受信すると、ログイン／ログアウト処理部１１０５は、ＳＩＤが取引管理テーブル１１１１に登録されているかをチェックする（Ｓ１７０１）。
ＳＩＤが取引管理テーブル１１１１に登録されていない場合（Ｓ１７０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１１１１に登録されている場合（Ｓ１７０１でＹＥＳ）には、ログイン／ログアウト処理部１１０５は、取引管理テーブル１１１１から該当するＳＩＤの登録を削除し（Ｓ１７０２）、処理を終了する。
【０１２６】
図３４は、サーバ装置１００１が振込処理要求を受信した際に暗号化鍵管理部１１０６で実行される暗号化鍵生成処理を示すフローチャートである。
【０１２７】
まず、クライアント装置１００４から振込処理要求を受信すると、暗号化鍵管理部１１０６は、ＳＩＤが取引管理テーブル１１１１に登録されているかをチェックする（Ｓ１８０１）。
ＳＩＤが取引管理テーブル１１１１に登録されていない場合（Ｓ１８０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１１１１に登録されている場合（Ｓ１８０１でＹＥＳ）には、暗号化鍵管理部１１０６は、口座データベース１１０９上の口座情報４０１から振込元口座番号で指定された口座の残高を引き当て、振込金額が残高を上回っていないかをチェックし（Ｓ１８０２）、残高が不足している場合（Ｓ１８０２でＮＯ）には、処理を終了する。
振込金額以上の残高がある場合（Ｓ１８０２でＹＥＳ）には、暗号化鍵管理部１１０６は、暗号化鍵として乱数を生成し（Ｓ１８０３）、ＩＶとして乱数を生成し（Ｓ１８０４）、取引管理テーブル１１１１に振込元口座番号と振込金額と暗号化鍵とＩＶを登録し（Ｓ１８０５）、取引管理テーブル１１１１に登録されている利用者番号を元に、利用者データベース１１１０上の利用者情報５０１から利用者の携帯メールアドレスを引き当て、このアドレスをあて先として携帯電話１００９に対して暗号化鍵とＩＶとＳＩＤを送信し（Ｓ１８０６）、処理を終了する。
【０１２８】
図３５は、サーバ装置１００１が振込実行を受信した際に取引認証部１１０７で実行される取引認証処理を示すフローチャートである。
【０１２９】
まず、クライアント装置１００４から取引実行を受信すると、取引認証部１１０７は、ＳＩＤが取引管理テーブル１１１１に登録されているかをチェックする（Ｓ１９０１）。
ＳＩＤが取引管理テーブル１１１１に登録されていない場合（Ｓ１９０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１１１１に登録されている場合（Ｓ１９０１でＹＥＳ）には、取引認証部１１０７は、取引管理テーブル１１１１から得られる暗号化鍵とＩＶとを使って暗号化口座番号を復号し（Ｓ１９０２）、得られた口座番号を元に口座データベース１１０９上の口座情報４０１から口座名を引き当て（Ｓ１９０３）、音声ファイル生成部１１１３により得られた口座名についての口座名音声ファイルを生成し（Ｓ１９０４）、ＳＩＤと口座名と取引管理テーブル１１１１から得られる振込金額と口座名音声ファイルを含む振込確認要求をクライアント装置１００４へ送信し（Ｓ１９０５）、処理を終了する。
【０１３０】
図３６は、サーバ装置１００１が振込確認応答を受信した際に振込処理部１１０８で実行される振込実行／中止処理を示すフローチャートである。
【０１３１】
まず、クライアント装置１００４から振込確認応答を受信すると、振込処理部１１０８は、ＳＩＤが取引管理テーブル１１１１に登録されているかをチェックする（Ｓ２００１）。
ＳＩＤが取引管理テーブル１１１１に登録されていない場合（Ｓ２００１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１１１１に登録されている場合（Ｓ２００１でＹＥＳ）には、振込処理部１１０８は、振込確認応答が実効を含むかを判定する（Ｓ２００２）。
振込確認応答が実行を含む場合（Ｓ２００２でＹＥＳ）には、振込処理部１１０８は、取引管理テーブル１１１１に登録されている振込元口座番号と振込金額と振込先口座番号に従い、口座データベース１１０９上の口座情報４０１について、振込元口座番号の口座の残高を振込金額だけ減算し、振込先口座番号の口座の残高を振込金額だけ加算して振込を実行し（Ｓ２００３）、取引管理テーブル１１１１の振込元口座番号、振込金額、暗号化鍵、振込口座番号の各値をクリアし（Ｓ２００４）、処理を終了する。
Ｓ２００２で、振込確認応答が実行ではなく中止を含む場合には、振込処理部１１０８は、取引管理テーブル１１１１の振込元口座番号、振込金額、暗号化鍵、振込口座番号の各値をクリアし（Ｓ２００４）、処理を終了する。
【０１３２】
以上のように、振込先口座番号は、携帯電話１００９に入力されたものを暗号化してクライアント装置１００４を介してサーバ装置１００１に通知するようにしているので、例えクライアント装置１００４上に振込先を不正に書き換えようとするソフトウェアが存在していても、不正な振込を実行しようとしている振込先を暗号化した値がわからないため、振込先を目的とする口座に書き換えることはできない。
つまり、クライアント装置１００４に存在している不正なソフトウェアは、暗号化鍵を得ることができないので、サーバ装置において復号処理を行った際に目的の振込先口座番号が抽出されるように書き換えることができない。また、不正なソフトウェアがなんらかの書き換えを行っても、通常は、サーバ装置での復号処理において有意な口座番号が得られないので、サーバ装置において以降の処理が中止され、振込処理が行われない。
また、サーバ装置は、復号処理の結果得られた口座番号を用いてクライアント装置に対して振込確認を行う。このため、不正なソフトウェアが口座番号を書き換えた場合に、サーバ装置において復号処理を行って有意な口座番号が得られたとしても、クライアント装置への振込確認において利用者が意図している振込先とは異なる口座が提示されることになるので、この段階で、利用者は振込を中止することができ、意図していない振込先への振込がなされることを防止することができる。
【０１３３】
また、利用者にとっては振込の確認を行う際に、入力したものが振込先の口座番号であるの対して、確認するものは、この入力した口座番号ではなく、口座番号に対応する口座名であるため、利用者の操作ミスを防ぐことができる。
さらに、この振込の確認は、表示領域の大きさが制限される携帯電話１００９のディスプレイ１０１０ではなく、表示領域の大きさが携帯電話１００９のディスプレイ１０１０に比べて大きいクライアント装置１００４のディスプレイ装置１００５を使って大きなフォントで利用者に表示されるため、可視性に優れており、利用者の操作ミスを防ぐことができる。
さらに、クライアント端末での口座名の画面への表示出力だけでなく、口座名を読み上げて音声出力して通知するため、利用者の確認誤りを防ぐことができる。
また、利用者にとっては、パソコンと携帯電話の一般に普及している装置だけを使っており、専用の装置を導入しなくても不正なソフトウェアによる被害を安価に防ぐことができる。
【０１３４】
なお、上記の説明ではクライアント装置１００４と携帯電話１００９との通信に赤外線通信を用いたが、赤外線通信に代えて他の通信、例えばＢｌｕｅｔｏｏｔｈ（登録商標）や無線ＬＡＮなどの無線通信、ＵＳＢケーブルやシリアルケーブルを用いた有線通信を使っても同様の効果が得られる。
【０１３５】
また、上記の説明では、携帯電話１００９から暗号化口座番号をクライアント装置１００４を介してサーバ装置１００１に送信したが、携帯電話１００９からサーバ装置１００１へ直接送信するようにしても同様の効果が得られる。
【０１３６】
また、上記の説明では、サーバ装置１００１から携帯電話１００９へ暗号化鍵と合わせてＩＶを送信したが、実施の形態１と同様に携帯電話１００９からサーバ装置１００１へ暗号化口座名と合わせてＩＶを送信するようにし、サーバ装置１００１で受信した暗号化口座番号を、同時に受信したＩＶと取引管理テーブル１１１１に登録した暗号化鍵とを使って復号するようにしても同様の効果が得られる。
【０１３７】
また、上記の説明では、口座を特定するものとして口座番号のみを用いたが、支店番号や銀行番号がある場合には、これらと口座番号を合わせたものを上記説明における口座番号とすることもでき、この場合にも同様の効果が得られる。
【０１３８】
さらに、上記の説明では、振込先口座番号の通知を振込実行時に行っているが、振込先口座番号を予め通知して登録し、振込実行時には登録済みの口座番号から振込先口座番号を選択するようにしても良い。
【０１３９】
また、上記の説明では、口座名はクライアント端末で表示出力と音声出力で利用者に通知したが、表示出力には実施の形態１で示した口座名をテロップで表示する確認画面を出力しても良く、さらにテロップが全て表示されるまで、かつ、口座名の音声出力が終わるまでは、確認ボタンが押下できないようにすることで、利用者の確認誤りを防ぐ効果を高めることができる。
【０１４０】
実施の形態４．
実施の形態１ならびに２および３では、振込の実行をクライアント端末からの振込確認応答によって実行するものであるが、本実施の形態では、振込の実行を携帯電話からの振込確認応答によって実行する。
図３７は、本実施の形態に係る取引認証システム（通信システム）の一構成例を示す図である。
【０１４１】
図３７において、サーバ装置１３０１は、計算機であり、インターネット１３０２と携帯電話網１３０３に接続される。
サーバ装置１３０１は、振込処理を行う。
【０１４２】
クライアント装置１３０４は、計算機であり、インターネット１３０２に接続される。
クライアント装置１３０４には、ディスプレイ装置１３０５（出力装置）とキーボード１３０６が接続され、赤外線通信ポート１３０７とを備える。
クライアント装置１３０４は、サーバ装置１３０１に対して振込処理を要求する。
クライアント装置１３０４は、第１の端末装置の例である。
【０１４３】
携帯電話１３０８は、無線通信により携帯電話網１３０３に接続される。
携帯電話１３０８は、ディスプレイ１３０９と、入力装置１３１０と、赤外線通信ポート１３１１を備える。
携帯電話１３０８は、第２の端末装置及び通信装置の例である。
【０１４４】
ここで、本実施の形態に係る取引認証システムの動作の概要を説明し、その後、サーバ装置１３０１、携帯電話１３０８の内部構成例を説明する。
【０１４５】
本実施の形態に係る取引認証システムの動作の概要は、実施の形態１で示したものと同様である。
つまり、サーバ装置１３０１は、対になるクライアント装置１３０４と携帯電話１３０８とを対応付けて登録している。ここでは、クライアント装置１３０４と携帯電話１３０８とが同じ利用者により利用されているとする。
そして、クライアント装置１３０４が、インターネット１３０２を通じて、サーバ装置１３０１に対して、振込処理を要求する振込処理要求を送信し、振込処理要求を受信したサーバ装置１３０１は、振込処理要求の送信元のクライアント装置１３０４に対応付けて登録している携帯電話１３０８を特定するとともに、特定した携帯電話１３０８との間で秘密に共有する秘密情報（例えば、暗号化鍵）を、特定した携帯電話１３０８に対して送信する。
携帯電話１３０８は、携帯電話網１３０３から、サーバ装置１３０１からの秘密情報を受信した場合に、対になるクライアント装置１３０４がサーバ装置１３０１に要求している振込処理での振込先口座を特定する振込先口座情報（振込先の口座番号等）を、受信した秘密情報を用いて秘匿化し、秘匿化後の振込先口座情報を赤外線通信によりクライアント装置１３０４に送信する。
クライアント装置１３０４は、赤外線通信により携帯電話１３０９から送信された秘匿化後の振込先口座情報をインターネット１３０２からサーバ装置１３０１に送信する。
サーバ装置１３０１は、秘匿化後の振込先口座情報を受信した場合に、携帯電話１３０８に送信した秘密情報を用いて秘匿化後の振込先口座情報から振込先口座情報を抽出し、抽出した振込先口座情報に基づいて振込処理を行う。
【０１４６】
図３８は、サーバ装置１３０１の内部構成例を示す図である。
【０１４７】
図３８において、サーバ装置１３０１は、ＣＰＵ（中央演算処理装置）１４０１、メモリ装置１４０２、ディスク装置１４０３、通信インタフェース１４０４を備えている。
サーバ装置１３０１は、ソフトウェアのモジュールとして、ログイン／ログアウト処理部１４０５、暗号化鍵管理部１４０６、取引認証部１４０７、振込処理部１４０８、送受信処理部１４１２をディスク装置１４０３上に記憶しており、これらのモジュールをディスク装置１４０３からメモリ装置１４０２上へロードし、ＣＰＵ１４０１により実行する。
図３８では、ログイン／ログアウト処理部１４０５、暗号化鍵管理部１４０６、取引認証部１４０７、振込処理部１４０８、送受信処理部１４１２がメモリ装置１４０２にロードされた状態を示している。
また、ディスク装置１４０３上には、口座データベース１４０９と、利用者データベース１４１０を格納する。
また、データ通信を行うために、通信インタフェース１４０４が接続される。
通信インタフェース１４０４は、インターネット１３０２と携帯電話網１３０３に接続される。
メモリ装置１４０２上には、実行途中の取引を管理するための取引管理テーブル１４１１を記憶する。
【０１４８】
図３８において、ログイン／ログアウト処理部１４０５はログイン／ログアウト処理部２０５と同等の処理を行い、取引認証部１４０７は取引認証部２０７と同等の処理を行う。
また、同様に、振込処理部１４０８は振込処理部２０８と同等の処理を行い、送受信処理部１４１２は送受信処理部２１２と同等の処理を行う。
取引管理テーブル１４１１では、図４０に示すように、図６の取引管理テーブル２１１に確認番号を登録するカラムを追加したもので、図４０において、確認番号以外の要素は、図６に示したものとと同様である。
また、口座データベース１４０９は口座データベース２０９と同等の情報を管理し、図４に例示した通りである。
また、利用者データベース１４１０は利用者データベース２１０と同等の情報を管理し、図５に例示した通りである。
【０１４９】
本実施の形態において、暗号化鍵管理部１４０６は秘密情報取得部及び確認番号生成部の例である。
取引認証部１４０７は、情報抽出部及び口座確認情報生成部の例である。
送受信処理部１４１２は、振込処理要求受信部、秘密情報送信部、秘匿化振込先口座情報受信部、口座確認情報送信部、振込処理確認通知受信部、振込確認番号通知送信部及び振込確認通知受信部の例である。
また、ディスク装置１４０３は、端末装置登録部の例である。
【０１５０】
図３９は、携帯電話１３０８の内部構成例を示す図である。
図３９において、携帯電話１３０８は、ＣＰＵ１５０１、メモリ装置１５０２、フラッシュメモリ１５０３、通信インタフェース１５０４、赤外線通信ポート１３１１、ディスプレイ１３０９、入力装置１３１０を備える。
携帯電話１３０８は、ソフトウェアのモジュールとして、暗号化部１５０５、乱数生成部１５０６、送受信処理部１５０７、入力処理部１５０８をフラッシュメモリ１５０３上に記憶しており、これらモジュールをメモリ装置１５０２上へロードし、ＣＰＵ１５０１により実行する。
【０１５１】
図３９において、暗号化部１５０５は暗号化部３０５と同様の処理を行い、送受信処理部１５０７は送受信処理部３０７と同様の処理を行い、入力処理部１５０８は入力処理部３０８と同等の処理を行う。
【０１５２】
本実施の形態において、暗号化部１５０５及び乱数生成部１５０６は秘匿化処理部の例である。
送受信処理部１５０７は秘密情報受信部及び秘匿化振込先口座情報送信部の例である。
入力処理部１５０８は振込先口座情報入力部の例である。
【０１５３】
次に動作について説明する。
図４１は、利用者が振込を行う際のデータの流れを示した図である。
【０１５４】
まず、利用者は振込に先立ち、クライアント装置１３０４を使ってシステムへのログインを行うと、クライアント装置１３０４からサーバ装置１３０１に対して利用者番号とパスワードを含むログイン要求が送信される（Ｓ２２０１）。
サーバ装置１３０１では、ログイン要求を受信すると、ログイン／ログアウト処理部１４０５によりログイン処理を実行する。
ログインに成功した場合には、サーバ装置１３０１からクライアント装置１３０４に対してセッションＩＤ（ＳＩＤ）を含むログイン応答が送信される（Ｓ２２０２）。
【０１５５】
次に、利用者が振込要求を行うと、クライアント装置１３０４からサーバ装置１３０１にＳＩＤと振込元口座番号と振込金額を含む振込処理要求が送信される（Ｓ２２０３）。
サーバ装置１３０１では、振込処理要求を受信すると、暗号化鍵管理部１４０６で暗号化鍵を生成して、ログイン時に通知された利用者番号を元に利用者データベース１４１０に記憶される利用者情報５０１より得られる携帯メールアドレスに対して送受信処理部１４１２が暗号化鍵とＳＩＤを送信する（Ｓ２２０４）。
携帯電話１３０８では、送受信処理部１５０７が暗号化鍵とＳＩＤを受信し、入力処理部１５０８が利用者から振込先口座の情報（振込先の口座番号）を入力するとともに、乱数生成部３０６が乱数を生成して暗号化のイニシャルベクタ（ＩＶ）とし、暗号化部１５０５が、入力処理部１５０８が入力した振込先の口座番号をサーバ装置１３０１から受信した暗号化鍵を使って暗号化し、暗号化鍵を消去した後に、送受信処理部１５０７が、赤外線通信ポート１３１１を介して暗号化口座番号とＩＶを、クライアント装置１３０４へ送信する（Ｓ２２０５）。
【０１５６】
クライアント装置１３０４では、赤外線通信ポート１３０７で暗号化口座番号とＩＶを受信すると、ＳＩＤと暗号化口座番号とＩＶを含む振込実行をサーバ装置１３０１へ送信する（Ｓ２２０６）。
サーバ装置１３０１では、クライアント装置１３０４から振込実行を受信すると、取引認証部１４０７で暗号化鍵と受信したＩＶとを使って暗号化口座番号を復号し、得られた口座番号を元に口座データベース１４０９に記憶される口座情報４０１より口座名を引き当て、得られた口座名とＳ２２０３で指定された金額とを含む振込確認要求をクライアント装置１３０４へ送信する（Ｓ２２０７）。
また、実施の形態３において説明したように口座名音声ファイルを送信してもよい。
【０１５７】
クライアント装置１３０４では、受信した振込確認要求に含まれる口座名と金額をディスプレイ装置１３０５に表示し、利用者からの振込の確認／中止を受け付けて、ＳＩＤと確認／中止を含む振込確認応答をサーバ装置１３０１へ送信する（Ｓ２２０８）。
サーバ装置１３０１では、振込確認応答を受信すると、振込処理部１４０８がその通知内容に従って振込を中止するか、または、通知内容が確認の場合には、暗号化鍵管理部１４０６で乱数を生成して確認番号とし、取引管理テーブル１４１１へ記憶するとともにＳＩＤと確認番号を含む振込確認番号通知を携帯電話１３０８へ送信し、携帯電話１３０８では、振込確認番号通知を受信すると、ディスプレイ装置１３０９に表示する（Ｓ２２０９）。
携帯電話１３０８では、入力処理部１３１０が利用者からの確認番号の入力を受け付けると、ステップＳ２２０４で受信したＳＩＤと入力された確認番号を含む振込確認通知をサーバ装置１３０１へ送信する（Ｓ２２１０）。サーバ装置１３０１では、携帯電話１３０８よりＳＩＤと確認番号を受信すると、振込処理部１４０８が受信したＳＩＤと確認番号の組に一致するＳＩＤと確認番号の組が取引管理テーブル１４１１上にあるかをチェックし、一致する組が存在する場合には振込を実行し、一致する組が存在しない場合には、振込を中止する（Ｓ２２１０）。
この後、利用者がクライアント装置１３０４を使ってシステムからのログアウトを行うと、クライアント装置１３０４からサーバ装置１３０１に対してＳＩＤを含むログアウト要求が送信される（Ｓ２２１１）。
サーバ装置１３０１では、ログアウト要求を受信すると、ログイン／ログアウト処理部１４０５によりログアウト処理を実行する。
【０１５８】
図４２は、サーバ装置１３０１がログイン要求を受信した際にログイン／ログアウト処理部１４０５で実行されるログイン処理を示すフローチャートである。
【０１５９】
まず、クライアント装置１３０４から利用者番号を含むログイン要求を受信すると、ログイン／ログアウト処理部１４０５は、利用者番号が利用者情報５０１に含まれているか、さらにパスワードが一致するかをチェックして、認証の成否を判定する（Ｓ２３０１）。
認証が失敗の場合（Ｓ２３０１でＮＯ）には、処理を終了する。
認証が成功の場合（Ｓ２３０１でＹＥＳ）には、ログイン／ログアウト処理部１４０５は、取引管理テーブル１４１１で使用されていないＳＩＤを当該クライアント装置１３０４に割り当てる（Ｓ２３０２）。
次に、ログイン／ログアウト処理部１４０５は、取引管理テーブル１４１１に、割り当てたＳＩＤと利用者番号とをあわせて登録し（Ｓ２２０３）、クライアント装置１３０４へＳＩＤを含むログイン応答を送信し（Ｓ２２０４）、ログイン処理を終了する。
【０１６０】
図４３は、サーバ装置１３０１がログアウト要求を受信した際にログイン／ログアウト処理部１４０５で実行されるログアウト処理を示すフローチャートである。
【０１６１】
まず、クライアント装置１３０４からＳＩＤを含むログアウト要求を受信すると、ログイン／ログアウト処理部１４０５は、ＳＩＤが取引管理テーブル１４１１に登録されているかをチェックする（Ｓ２４０１）。
ＳＩＤが取引管理テーブル１４１１に登録されていない場合（Ｓ２４０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１４１１に登録されている場合（Ｓ２４０１でＹＥＳ）には、ログイン／ログアウト処理部１４０５は、取引管理テーブル１４１１から該当するＳＩＤの登録を削除し（Ｓ２４０２）、処理を終了する。
【０１６２】
図４４は、サーバ装置１３０１が振込処理要求を受信した際に暗号化鍵管理部１４０６で実行される暗号化鍵生成処理を示すフローチャートである。
【０１６３】
まず、クライアント装置１３０４から振込処理要求を受信すると、暗号化鍵管理部１４０６は、ＳＩＤが取引管理テーブル１４１１に登録されているかをチェックする（Ｓ２５０１）。
ＳＩＤが取引管理テーブル１４１１に登録されていない場合（Ｓ２５０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１４１１に登録されている場合（Ｓ２５０１でＹＥＳ）には、暗号化鍵管理部１４０６は、口座データベース１４０９上の口座情報４０１から振込元口座番号で指定された口座の残高を引き当て、振込金額が残高を上回っていないかをチェックし（Ｓ２５０２）、残高が不足している場合（Ｓ２５０２でＮＯ）には、処理を終了する。
振込金額以上の残高がある場合（Ｓ２５０２でＹＥＳ）には、暗号化鍵管理部１４０６は、暗号化鍵として乱数を生成し（Ｓ２５０３）、取引管理テーブル１４１１に振込元口座番号と振込金額と暗号化鍵を登録し（Ｓ２５０４）、取引管理テーブル１４１１に登録されている利用者番号を元に、利用者データベース１４１０上の利用者情報５０１から利用者の携帯メールアドレスを引き当て、このアドレスをあて先として携帯電話１３０８に対して暗号化鍵とＳＩＤを送信し（Ｓ２５０５）、処理を終了する。
【０１６４】
図４５は、サーバ装置１３０１が振込実行を受信した際に取引認証部１４０７で実行される取引認証処理を示すフローチャートである。
【０１６５】
まず、クライアント装置１３０４から取引実行を受信すると、取引認証部１４０７は、ＳＩＤが取引管理テーブル１４１１に登録されているかをチェックする（Ｓ２６０１）。
ＳＩＤが取引管理テーブル１４１１に登録されていない場合（Ｓ２６０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１４１１に登録されている場合（Ｓ２６０１でＹＥＳ）には、取引認証部１４０７は、取引管理テーブル１４１１から得られる暗号化鍵と受信したＩＶとを使って暗号化口座番号を復号し（Ｓ２６０２）、得られた口座番号を元に口座データベース１４０９上の口座情報４０１から口座名を引き当て（Ｓ２６０３）、ＳＩＤと口座名と取引管理テーブル１４１１から得られる振込金額を含む振込確認要求をクライアント装置１３０４へ送信し（Ｓ２６０４）、処理を終了する。
【０１６６】
図４６は、サーバ装置１３０１が振込確認応答を受信した際に振込処理部１４０８で実行される振込確認／中止処理を示すフローチャートである。
【０１６７】
まず、クライアント装置１３０４から振込確認応答を受信すると、振込処理部１４０８は、ＳＩＤが取引管理テーブル１４１１に登録されているかをチェックする（Ｓ２７０１）。
ＳＩＤが取引管理テーブル１４１１に登録されていない場合（Ｓ２７０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１４１１に登録されている場合（Ｓ２７０１でＹＥＳ）には、振込処理部１４０８は、振込確認応答が確認を含むかを判定する（Ｓ２７０２）。
振込確認応答が確認を含む場合（Ｓ２７０２でＹＥＳ）には、暗号化鍵管理部１４０６で乱数を生成して取引管理テーブル１４１１の確認番号に登録し（Ｓ２７０３）、携帯電話１３０８へＳＩＤと確認番号を含む振込確認番号通知を送信し（Ｓ２７０４）、処理を終了する。
Ｓ２７０２で、振込確認応答が確認ではなく中止を含む場合には、振込処理部１４０８は、取引管理テーブル１４１１の振込元口座番号、振込金額、暗号化鍵、振込口座番号の各値をクリアし（Ｓ２７０５）、処理を終了する。
【０１６８】
図４７は、サーバ装置１３０１が携帯電話１３０８から振込確認通知を受信した際に振込処理部１４０８で実行される振込実行処理を示すフローチャートである。
【０１６９】
まず、携帯電話１３０８から振込確認通知を受信すると、振込処理部１４０８は、ＳＩＤが取引管理テーブル１４１１に登録されているかをチェックする（Ｓ２８０１）。
ＳＩＤが取引管理テーブル１４１１に登録されていない場合（Ｓ２８０１でＮＯ）には、処理を終了する。
一方、ＳＩＤが取引管理テーブル１４１１に登録されている場合（Ｓ２８０１でＹＥＳ）には、振込処理部１４０８は、取引確認テーブル１４１１に登録されている振込番号が受信した振込番号に一致するかを判定する（Ｓ２８０２）。
振込確認番号が一致する場合（Ｓ２８０２でＹＥＳ）には、振込処理部１４０８は、取引管理テーブル１４１１に登録されている振込元口座番号と振込金額と振込先口座番号に従い、口座データベース１４０９上の口座情報４０１について、振込元口座番号の口座の残高を振込金額だけ減算し、振込先口座番号の口座の残高を振込金額だけ加算して振込を実行し（Ｓ２８０３）、取引管理テーブル１４１１の振込元口座番号、振込金額、暗号化鍵、振込口座番号、確認番号の各値をクリアし（Ｓ２８０４）、処理を終了する。
Ｓ２８０２で、振込番号が一致しない場合には、振込処理部１４０８は、取引管理テーブル１１１１の振込元口座番号、振込金額、暗号化鍵、振込口座番号、確認番号の各値をクリアし（Ｓ２８０４）、処理を終了する。
【０１７０】
以上のように、振込先口座番号は、携帯電話１３０８に入力されたものを暗号化してクライアント装置１３０４を介してサーバ装置１３０１に通知するようにしているので、例えクライアント装置１３０４上に振込先を不正に書き換えようとするソフトウェアが存在していても、不正な振込を実行しようとしている振込先を暗号化した値がわからないため、振込先を目的とする口座に書き換えることはできない。
つまり、クライアント装置１３０４に存在している不正なソフトウェアは、暗号化鍵を得ることができないので、サーバ装置において復号処理を行った際に目的の振込先口座番号が抽出されるように書き換えることができない。また、不正なソフトウェアがなんらかの書き換えを行っても、通常は、サーバ装置での復号処理において有意な口座番号が得られないので、サーバ装置において以降の処理が中止され、振込処理が行われない。
また、サーバ装置は、復号処理の結果得られた口座番号を用いてクライアント装置に対して振込確認を行う。このため、不正なソフトウェアが口座番号を書き換えた場合に、サーバ装置において復号処理を行って有意な口座番号が得られたとしても、クライアント装置への振込確認において利用者が意図している振込先とは異なる口座が提示されることになるので、この段階で、利用者は振込を中止することができ、意図していない振込先への振込がなされることを防止することができる。
【０１７１】
さらに、利用者が口座名を確認した後に、確認番号を携帯電話に送信し、この確認番号を携帯電話からサーバ装置に送り返して初めて、振込が実際に実行されるようにしているため、不正なソフトウェアが例えクライアント装置１３０４上での口座名の確認に対して利用者の確認操作なしに不正に確認応答を返すようにする場合にも振込を中止することができる。
【０１７２】
また、利用者にとっては振込の確認を行う際に、入力したものが振込先の口座番号であるの対して、確認するものは、この入力した口座番号ではなく、口座番号に対応する口座名であるため、利用者の操作ミスを防ぐことができる。
さらに、この振込の確認は、表示領域の大きさが制限される携帯電話１３０８のディスプレイ１３０９ではなく、表示領域の大きさが携帯電話１３０８のディスプレイ１３０９に比べて大きいクライアント装置１３０４のディスプレイ装置１３０５を使って大きなフォントで利用者に表示されるため、可視性に優れており、利用者の操作ミスを防ぐことができる。
また、利用者にとっては、パソコンと携帯電話の一般に普及している装置だけを使っており、専用の装置を導入しなくても不正なソフトウェアによる被害を安価に防ぐことができる。
【０１７３】
なお、上記の説明ではクライアント装置１３０４と携帯電話１３０８との通信に赤外線通信を用いたが、赤外線通信に代えて他の通信、例えばＢｌｕｅｔｏｏｔｈ（登録商標）や無線ＬＡＮなどの無線通信、ＵＳＢケーブルやシリアルケーブルを用いた有線通信を使っても同様の効果が得られる。
【０１７４】
また、上記の説明では、携帯電話１３０８から暗号化口座番号をクライアント装置１３０４を介してサーバ装置１３０１に送信したが、携帯電話１３０８からサーバ装置１３０１へ直接送信するようにしても同様の効果が得られる。
【０１７５】
また、上記の説明では、口座を特定するものとして口座番号のみを用いたが、支店番号や銀行番号がある場合には、これらと口座番号を合わせたものを上記説明における口座番号とすることもでき、この場合にも同様の効果が得られる。
【０１７６】
さらに、上記の説明では、振込先口座番号の通知を振込実行時に行っているが、振込先口座番号を予め通知して登録し、振込実行時には登録済みの口座番号から振込先口座番号を選択するようにしても良い。
【０１７７】
なお、最後に、サーバ装置１０１、６０１等、携帯電話１０８、６０８等のハードウェア構成例について説明する。
【０１７８】
サーバ装置１０１、６０１等、携帯電話１０８、６０８等では、図２、図３、図１４及び図１５等に示したように、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ディスク装置、通信インタフェース等がバスにて接続されている。
この場合、サーバ装置１０１、６０１等、携帯電話１０８、６０８等の機能（「〜部」）を実現するプログラムを例えばディスク装置に格納し、ＣＰＵがこれらプログラムを適宜読み出すことで、各機能を実行する。
【０１７９】
また、ＲＡＭには、ＣＰＵに実行させるプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭには、ＣＰＵによる処理に必要な各種データが格納される。
【０１８０】
ディスク装置やＲＡＭには、ファイル群として、実施の形態１〜４の説明において、「〜の判断」、「〜の判定」、「〜の抽出」、「〜の計算」、「〜の比較」、「〜の検出」、「〜の暗号化」、「〜の復号」、「〜の変換」、「〜の逆変換」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶される。
【０１８１】
また、実施の形態１〜４で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭのメモリ、フレキシブルディスク、コンパクトディスク、ディスク装置、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バスや信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【０１８２】
また、実施の形態１〜４の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭに記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵにより読み出され、ＣＰＵにより実行される。すなわち、プログラムは、実施の形態１〜４の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態１〜４の「〜部」の手順や方法をコンピュータに実行させるものである。
【符号の説明】
【０１８３】
１０１  サーバ装置、１０２  インターネット、１０３  携帯電話網、１０４  クライアント装置、１０５  ディスプレイ装置、１０６  キーボード、１０７  赤外線通信ポート、１０８  携帯電話、１０９  ディスプレイ、１１０  入力装置、１１１  赤外線通信ポート、２０１  ＣＰＵ、２０２  メモリ装置、２０３  ディスク装置、２０４  通信インタフェース、２０５  ログイン／ログアウト処理部、２０６  暗号化鍵管理部、２０７  取引認証部、２０８  振込処理部、２０９  口座データベース、２１０  利用者データベース、２１１  取引管理テーブル、２１２  送受信処理部、３０１  ＣＰＵ、３０２  メモリ装置、３０３  フラッシュメモリ、３０４  通信インタフェース、３０５  暗号化部、３０６  乱数生成部、３０７  送受信処理部、３０８  入力処理部、６０１  サーバ装置、６０２  インターネット、６０３  携帯電話網、６０４  クライアント装置、６０５  ディスプレイ装置、６０６  キーボード、６０７  赤外線通信ポート、６０８  携帯電話、６０９  ディスプレイ、６１０  入力装置、６１１  赤外線通信ポート、７０１  ＣＰＵ、７０２  メモリ装置、７０３  ディスク装置、７０４  通信インタフェース、７０５  ログイン／ログアウト処理部、７０６  変換テーブル管理部、７０７  取引認証部、７０８  振込処理部、７０９  口座データベース、７１０  利用者データベース、７１１  取引管理テーブル、７１２  送受信処理部、８０１  ＣＰＵ、８０２  メモリ装置、８０３  フラッシュメモリ、８０４  通信インタフェース、８０５  変換部、８０６  送受信処理部、８０７  入力処理部。
【図１】
2010165329.tif 000003
【図２】
2010165329.tif 000004
【図３】
2010165329.tif 000005
【図４】
2010165329.tif 000006
【図５】
2010165329.tif 000007
【図６】
2010165329.tif 000008
【図７】
2010165329.tif 000009
【図８】
2010165329.tif 000010
【図９】
2010165329.tif 000011
【図１０】
2010165329.tif 000012
【図１１】
2010165329.tif 000013
【図１２】
2010165329.tif 000014
【図１３】
2010165329.tif 000015
【図１４】
2010165329.tif 000016
【図１５】
2010165329.tif 000017
【図１６】
2010165329.tif 000018
【図１７】
2010165329.tif 000019
【図１８】
2010165329.tif 000020
【図１９】
2010165329.tif 000021
【図２０】
2010165329.tif 000022
【図２１】
2010165329.tif 000023
【図２２】
2010165329.tif 000024
【図２３】
2010165329.tif 000025
【図２４】
2010165329.tif 000026
【図２５】
2010165329.tif 000027
【図２６】
2010165329.tif 000028
【図２７】
2010165329.tif 000029
【図２８】
2010165329.tif 000030
【図２９】
2010165329.tif 000031
【図３０】
2010165329.tif 000032
【図３１】
2010165329.tif 000033
【図３２】
2010165329.tif 000034
【図３３】
2010165329.tif 000035
【図３４】
2010165329.tif 000036
【図３５】
2010165329.tif 000037
【図３６】
2010165329.tif 000038
【図３７】
2010165329.tif 000039
【図３８】
2010165329.tif 000040
【図３９】
2010165329.tif 000041
【図４０】
2010165329.tif 000042
【図４１】
2010165329.tif 000043
【図４２】
2010165329.tif 000044
【図４３】
2010165329.tif 000045
【図４４】
2010165329.tif 000046
【図４５】
2010165329.tif 000047
【図４６】
2010165329.tif 000048
【図４７】
2010165329.tif 000049