


























この発明は、オンライン・バンキングなどの処理における、セキュアな取引技法に関するものである。 The present invention relates to a secure transaction technique in processing such as online banking.
最近、パーソナル・コンピュータや、携帯、スマート・フォンによるオンライン・バンキングの不正アクセスが頻発しており、基本的な対策として、IDやパスワードの強化が謳われている。 Recently, unauthorized access to online banking by personal computers, mobile phones, and smart phones has frequently occurred, and strengthening of IDs and passwords has been advocated as a basic measure.
また、これに対する重要な対策方針として、(1) 相手認証の強化、(2) 接続先サイトの保証、(3) 送金内容の保証がある。これ以外の脅威も存在するが、オンライン・バンキングでは、この3つが、最も重要なセキュリティ要素であると想定してよい。 Important countermeasures against this are (1) Strengthening partner authentication, (2) Guarantee of connected sites, and (3) Guarantee of remittance details. There are other threats, but in online banking these three may be assumed to be the most important security factors.
相手認証の強化とは、オンライン・バンキングのIDやパスワードが盗難されて悪意の第三者が不正ログインを試みることに対抗する仕組みである。これの例として、ワンタイム・パスワード(OTP)、2要素認証やバイオメトリックスがある。 Strengthening partner authentication is a mechanism that counters malicious third parties attempting to log in illegally due to online banking IDs and passwords being stolen. Examples of this are one-time passwords (OTP), two-factor authentication and biometrics.
接続先サイトの保証とは、フィッシング攻撃で誤った銀行サイトに誘導され、そこでIDやパスワードが騙し取られることに対抗する仕組みである。これの例として、SSL-EV証明書によるサイト認証がある。 The guarantee of the connection destination site is a mechanism that counters that a phishing attack leads to an incorrect bank site where an ID or password is deceived. An example of this is site authentication using an SSL-EV certificate.
送金内容の保証には、最近になって報告されている、パーソナル・コンピュータに常駐し、送金内容(金額や振込先)をユーザに分からないように不正に書き換えるコンピュータ・ウイルスを検出することが含まれる。 Guarantee of remittance details includes detecting a computer virus that has recently been reported and resides on a personal computer and illegally rewrites the remittance details (amount and transfer destination) so that the user does not know It is.
上記のような対策を実現する仕組みとして、例えば、米国特許公開2011/0131639号公報に記載されているように、ハードウェア・トークンにより発生されたワンタイム・パスワードを使用して認証を行う技法が知られている。これは、セキュリティ的に頑健であるが、運用が難しいという問題がある。 As a mechanism for realizing the above countermeasure, for example, as described in US Patent Publication No. 2011/0131639, there is a technique for performing authentication using a one-time password generated by a hardware token. Are known. This is a security problem, but it is difficult to operate.
特開2002−342285号公報は、利用者管理端末が、携帯電話から送信される認証情報に基づいて認証処理を行い、認証が成立した場合に、情報の発行許可を受けるための認証を行う情報であるワンタイムパスワードを携帯電話に発行し、発行されたワンタイムパスワードと該発行されたワンタイムパスワードの発行対象の携帯電話の識別情報とを対応づけて一時記憶し、発行端末から送信される識別情報とワンタイムパスワードとを受信し、一時記憶された情報に基づいて認証処理を行い、認証が成立した場合に情報の発行を許可するようにしたシステムを開示する。 Japanese Patent Laid-Open No. 2002-342285 discloses information in which a user management terminal performs authentication processing based on authentication information transmitted from a mobile phone, and performs authentication for receiving permission to issue information when authentication is established. Is issued to the mobile phone, and the issued one-time password and the identification information of the mobile phone to which the issued one-time password is issued are temporarily stored and transmitted from the issuing terminal. Disclosed is a system that receives identification information and a one-time password, performs an authentication process based on the temporarily stored information, and permits the issuance of information when authentication is established.
特開2004−240637号公報は、インターネットに接続し、利用者IDを入力してログイン用ワンタイムパスワードの問合せを認証サーバーに行う携帯電話と、携帯電話番号と利用者IDが認証データベースに登録されているか照合を行い、一致した場合のみ、そのワンタイムパスワードを携帯画面に送信する認証サーバーと、インターネット経由で認証システムログイン画面を起動して、利用者IDと携帯電話1で得たログイン用ワンタイムパスワードを入力するパソコンやPDAなどの端末装置とからなるシステムを開示する。 Japanese Patent Application Laid-Open No. 2004-240637 discloses a mobile phone that connects to the Internet, inputs a user ID and makes an inquiry about a one-time password for login to an authentication server, and a mobile phone number and a user ID are registered in an authentication database. The authentication server that sends the one-time password to the mobile screen and the authentication system login screen via the Internet are activated only when they match, and the login one obtained with the user ID and the mobile phone 1 A system comprising a terminal device such as a personal computer or PDA for inputting a time password is disclosed.
特開2007−108973号公報は、認証サーバがサービスサーバからの要求に基づいてユニークなトークンを発行し、記憶し、サービスサーバが、発行されたトークン情報を含み、認証サーバのURLを表す2次元コード画像を生成してパソコンに送信し、ユーザはパソコン画面から携帯端末のカメラで2次元コード画像を読み取り、認証サーバにアクセスし、認証サーバは携帯端末からのアクセスに基づき、端末IDを取得すると共にトークンを抽出して有効か否かを判定し、判定結果を記録、通知するシステムを開示する。 Japanese Patent Laid-Open No. 2007-108973 discloses a two-dimensional representation in which an authentication server issues and stores a unique token based on a request from a service server, and the service server includes the issued token information and represents the URL of the authentication server. A code image is generated and transmitted to a personal computer. The user reads the two-dimensional code image from the personal computer screen with the camera of the mobile terminal and accesses the authentication server. The authentication server obtains the terminal ID based on the access from the mobile terminal. In addition, a system is disclosed in which a token is extracted to determine whether it is valid, and the determination result is recorded and notified.
Jonathan M. McCune, Adrian Perrig, Michael K. Reiter, "Seeing-Is-Believing: Using Camera Phones for Human Verifiable Authentication", Security and Privacy, 2005 IEEE Symposium on May 8-11, 2005は、認証と装置の識別のための視覚的チャネルを実装するための、2次元バーコードと、カメラ付電話を用いたシステムを開示する。ここで開示されている技法によれば、対象デバイスに貼り付けられているバーコードを近距離で撮影し、データを読み込むので、中間者攻撃しにくいというメリットがある。 Jonathan M. McCune, Adrian Perrig, Michael K. Reiter, "Seeing-Is-Believing: Using Camera Phones for Human Verifiable Authentication", Security and Privacy, 2005 IEEE Symposium on May 8-11, 2005 A system using a two-dimensional barcode and a camera phone is disclosed for implementing a visual channel. According to the technique disclosed here, since the barcode attached to the target device is photographed at a short distance and the data is read, there is an advantage that it is difficult for a man-in-the-middle attack.
しかし、上記どの従来技術も、情報伝達チャネルの安全性を高めることには貢献するものの、取引の内容そのものの確実性を保証する点では不十分であった。 However, although any of the above prior arts contributes to improving the safety of the information transmission channel, it is insufficient in ensuring the certainty of the transaction content itself.
従って、この発明の目的は、高価な専用デバイスを使用することなく、取引の安全と取引の内容の確実性を保証する技法を提供することにある。 Therefore, an object of the present invention is to provide a technique for guaranteeing the safety of transactions and the certainty of the contents of transactions without using expensive dedicated devices.
この発明は、上記課題を解決するためになされたものであり、パーソナル・コンピュータ、携帯またはスマート・フォンなどのユーザ端末から、ホスト・システムに送信した、送金先口座番号や、送金金額などの取引情報を、ホスト・システムが、ユーザ端末に送り返す。ユーザ端末では、送られた取引情報をユーザ端末の画面に表示するとともに、送られた取引情報に端末ユーザID及び端末固有の秘密情報を加えた情報にハッシュ関数を施し、確認コードを生成する。ユーザが、ユーザ端末の画面に表示された情報を確認して、確認コードをホスト・システムに送り、ホスト・システムがそれを検証することで、認証が完了する。 The present invention has been made to solve the above-mentioned problems, and is a transaction such as a remittance destination account number and a remittance amount transmitted to a host system from a user terminal such as a personal computer, a mobile phone or a smart phone. Information is sent back to the user terminal by the host system. In the user terminal, the sent transaction information is displayed on the screen of the user terminal, and a hash function is applied to the information obtained by adding the terminal user ID and the terminal-specific secret information to the sent transaction information to generate a confirmation code. The user confirms the information displayed on the screen of the user terminal, sends a confirmation code to the host system, and the host system verifies it, thereby completing the authentication.
この発明の第1の側面では、ユーザ端末はパーソナル・コンピュータであり、パーソナル・コンピュータのユーザはさらに、携帯またはスマート・フォンを使った二要素認証を行う。このため、携帯またはスマート・フォンには予め、端末ユーザIDがセットされ、好適にはホスト・システムから、所定のアプリケーション・プログラムがダウンロードされ導入される。端末ユーザIDは、事前に、ホスト・システムに登録される。ホスト・システムは、送金先口座番号や、送金金額などの情報を含む取引情報を所定の関数でエンコードし、二次元バーコードのデータを生成し、パーソナル・コンピュータに送る。パーソナル・コンピュータはそのコードに基づき、二次元バーコードを、パーソナル・コンピュータのディスプレイに表示する。 In the first aspect of the present invention, the user terminal is a personal computer, and the user of the personal computer further performs two-factor authentication using a mobile phone or a smart phone. For this reason, a terminal user ID is set in advance in the mobile phone or smart phone, and a predetermined application program is preferably downloaded and installed from the host system. The terminal user ID is registered in advance in the host system. The host system encodes transaction information including information such as a remittance account number and remittance amount with a predetermined function, generates two-dimensional barcode data, and sends it to a personal computer. Based on the code, the personal computer displays a two-dimensional bar code on the display of the personal computer.
パーソナル・コンピュータのユーザは、ディスプレイに表示された二次元バーコードを、携帯またはスマート・フォンで撮影することによって読み取る。携帯またはスマート・フォンは、読み取った二次元バーコードの情報から、送金先口座番号及び送金金額などの取引情報を引き出し、それらの情報を携帯またはスマート・フォンのディスプレイに表示するとともに、導入されているアプリケーション・プログラムにより、取引情報と端末ユーザIDを加えた情報に所定のハッシュ関数を施し、その出力結果の少なくとも一部の値を確認コードとして表示する。ユーザは、携帯またはスマート・フォンのディスプレイに表示された情報が正しいことを確認すると、ディスプレイに表示された確認コードをパーソナル・コンピュータの画面の所定フィールドに打ち込み、OKボタンをクリックして、確認コードをホスト・システムに送る。そして、送られた確認コードに基づき、ホスト・システムは認証を行う。 The user of the personal computer reads the two-dimensional barcode displayed on the display by photographing with a mobile phone or a smart phone. The mobile phone or smart phone is introduced by extracting transaction information such as the remittance account number and remittance amount from the read 2D barcode information and displaying the information on the display of the mobile phone or smart phone. A predetermined hash function is applied to the information obtained by adding the transaction information and the terminal user ID, and at least a part of the output result is displayed as a confirmation code. When the user confirms that the information displayed on the mobile phone or smart phone display is correct, the user enters the confirmation code displayed on the display into a predetermined field on the screen of the personal computer, clicks the OK button, and confirms the confirmation code. To the host system. Then, the host system performs authentication based on the sent confirmation code.
この発明の第2の側面では、二要素認証でなく、ユーザ端末は、パーソナル・コンピュータ、携帯またはスマート・フォンのどれか一つである。ユーザ端末には、予め、端末ユーザIDがセットされ、好適にはホスト・システムから、所定のアプリケーション・プログラムがダウンロードされ導入される。端末ユーザIDは、事前に、ホスト・システムに登録される。ホスト・システムは、送金先口座番号や、送金金額などの情報を含む取引情報を、好適にはエンコードしてユーザ端末に送る。ユーザ端末は、受け取った情報をデコードとして得た取引情報を、ユーザ端末のディスプレイに表示する。ユーザ端末はさらに、導入されているアプリケーション・プログラムにより、取引情報と端末ユーザIDを加えた情報に所定のハッシュ関数を施し、その出力結果の少なくとも一部の値を確認コードとして保持する。ユーザは、携帯またはスマート・フォンのディスプレイに表示された情報が正しいことを確認すると、OKボタンをクリックして、確認コードをホスト・システムに送る。そして、送られた確認コードに基づき、ホスト・システムは認証を行う。 In the second aspect of the present invention, instead of two-factor authentication, the user terminal is any one of a personal computer, a mobile phone, and a smart phone. A terminal user ID is set in advance in the user terminal, and a predetermined application program is preferably downloaded and installed from the host system. The terminal user ID is registered in advance in the host system. The host system preferably encodes and sends the transaction information including information such as the remittance destination account number and remittance amount to the user terminal. The user terminal displays transaction information obtained by decoding the received information on the display of the user terminal. The user terminal further applies a predetermined hash function to the information obtained by adding the transaction information and the terminal user ID by the installed application program, and holds at least a part of the output result as a confirmation code. When the user confirms that the information displayed on the mobile or smart phone display is correct, he clicks the OK button and sends a confirmation code to the host system. Then, the host system performs authentication based on the sent confirmation code.
この発明によれば、ユーザ端末に取引内容をきちんと表示してユーザに目視で確認させるとともに、取引内容に関連して生成された確認コードをホスト側に送信して、照合することより、特別な機器を使うことなく取引の高いセキュリティを保証することが可能となる。 According to the present invention, the transaction content is displayed properly on the user terminal so that the user can visually confirm it, and the confirmation code generated in connection with the transaction content is transmitted to the host side for verification. It is possible to guarantee high security of transactions without using equipment.
特に、スマート・フォンと、クライアント・コンピュータと、ホスト・システムからなる、本発明の第1の実施例に係る発明では、クライアント・コンピュータにコンピュータ・ウイルスが感染している等の可能性があって、クライアント・コンピュータにおいて送金内容の確実性が保証できないような場合でも、スマート・フォンを第二のデバイスとして使うことにより、セキュアに取引を行うことが可能となる。 In particular, in the invention according to the first embodiment of the present invention comprising a smart phone, a client computer, and a host system, there is a possibility that the client computer is infected with a computer virus. Even if the client computer cannot guarantee the remittance details, the smart phone can be used as the second device to perform a secure transaction.
また、スマート・フォンと、ホスト・システムからなる、本発明の第2の実施例に係る発明では、スマート・フォンがセキュアであるという前提で、仮に銀行にログインするパスワードが第三者に盗み取られていたとしても、所有者以外の端末(例えばスマート・フォンから第三者が勝手にログインして送金することが防止できるという効果を与える。 Further, in the invention according to the second embodiment of the present invention comprising the smart phone and the host system, the password for logging in to the bank is stolen by a third party on the assumption that the smart phone is secure. Even if it is provided, it is possible to prevent a third party from logging in and sending money without permission from a terminal other than the owner (for example, a smart phone).
以下、図面に従って、本発明の実施例を説明する。これらの実施例は、本発明の好適な態様を説明するためのものであり、発明の範囲をここで示すものに限定する意図はないことを理解されたい。また、以下の図を通して、特に断わらない限り、同一符号は、同一の対象を指すものとする。 Embodiments of the present invention will be described below with reference to the drawings. It should be understood that these examples are for the purpose of illustrating preferred embodiments of the invention and are not intended to limit the scope of the invention to what is shown here. Also, throughout the following drawings, the same reference numerals refer to the same objects unless otherwise specified.
図1において、取引サーバ(銀行ホスト・サーバ)102には、インターネット104を介して、複数のクライアント・コンピュータ106a、106b・・・106zが接続されている。図1のシステムにおいては、クライアント・コンピュータのユーザは、Webブラウザを通じて、インターネット104の回線を介して、銀行口座からの送金、残高照会などの目的で、取引サーバ102に、ログインする。具体的には、所定のURLをWebブラウザに打ち込んで、所定のページを表示する。 1, a plurality of
ログインに当たっては、クライアント・コンピュータのユーザは、与えられたユーザIDと、それに関連付けられたパスワードを用いる。 When logging in, the user of the client computer uses a given user ID and a password associated therewith.
取引サーバ102にはまた、パケット通信網108を介して、スマート・フォン110a、・・・110kなどのモバイル端末が接続される。ユーザは、与えられたユーザIDと、それに関連付けられたパスワードがあれば、スマート・フォンに導入されているWebブラウザを通じて、同様に取引サーバ102にアクセスできる。 The
次に、図2を参照して、図1で参照番号106a、106b・・・106zのように示されているクライアント・コンピュータのハードウェア・ブロック図について、説明する。図2において、クライアント・コンピュータは、典型的にはパーソナル・コンピュータであり、メイン・メモリ206、CPU204、IDEコントローラ208をもち、これらは、バス202に接続されている。バス202には更に、ディスプレイ・コントローラ214と、通信インターフェース218と、USBインターフェース220と、オーディオ・インターフェース222と、キーボード・マウス・コントローラ228が接続されている。IDEコントローラ208には、ハードディスク・ドライブ(HDD)210と、DVDドライブ212が接続されている。DVDドライブ212は、必要に応じて、CD−ROMやDVDから、プログラムを導入するために使用する。ディスプレイ・コントローラ214には、好適には、LCD画面をもつディスプレイ装置216が接続されている。 Next, referring to FIG. 2, a hardware block diagram of the client computer indicated by
USBインターフェース220には、必要に応じて、外付けHDDなどのデバイスを接続するために使用される。 The
キーボード・マウス・コントローラ228には、キーボード230と、マウス232が接続されている。キーボード230と、マウス232は、銀行のオンライン・バンキングの画面で、口座番号を選んだり、金額を入力したりするために使用される。 A
CPU204は、例えば、32ビット・アーキテクチャまたは64ビット・アーキテクチャに基づく任意のものでよく、インテル社のPentium(インテル・コーポレーションの商標)4、Core(商標)2 Duo、Core(商標)2 Quado、Core(商標)i3、Core(商標)i5、Core(商標)i7、AMD社のAthlon(商標)などを使用することができる。 The
ハードディスク・ドライブ210には、少なくとも、オペレーティング・システムと、オペレーティング・システム上で動作するWebブラウザ(図示しない)が格納されており、システムの起動時に、オペレーティング・システムは、メインメモリ206にロードされる。オペレーティング・システムは、Windows XP(マイクロソフト・コーポレーションの商標)、Windows(マイクロソフト・コーポレーションの商標)7、Linux(Linus Torvaldsの商標)、Mac OS Xなどを使用することができる。 The
ハードディスク・ドライブ210にはさらに、Webブラウザが導入されている。Webブラウザは、好適にはSSLに対応した、Internet Explorer、FireFox、Google Chromeなど任意のものを使用することができる。 The
通信インターフェース218は、オペレーティング・システムが提供するTCP/IP通信機能を利用して、イーサネット(商標)・プロトコルなどにより、取引サーバ102と通信する。 The
図3は、取引サーバ102のハードウェア構成の概要ブロック図である。図3に示すように、クライアント・コンピュータと通信するためのインターネット104と、スマート・フォンと通信するためのパケット通信網108が、取引サーバ102の通信インターフェース302に接続される。通信インターフェース302はさらに、バス304に接続され、バス304には、CPU306、主記憶(RAM)308、及びハードディスク・ドライブ(HDD)310が接続されている。 FIG. 3 is a schematic block diagram of the hardware configuration of the
図示しないが、取引サーバ102にはさらに、キーボード、マウス、及びディスプレイが接続され、これらによって、取引サーバ102全体の管理やメンテナンス作業を行うようにしてもよい。 Although not shown, the
取引サーバ102のハードディスク・ドライブ310には、オペレーティング・システム、クライアント・コンピュータ106a、106b・・・106zのログイン管理のための、ユーザIDとパスワードの対応テーブルが保存されている。ハードディスク・ドライブ310にはさらに、取引サーバ102を取引サーバとして機能させるためのWebSphere(R)などのソフトウェアが保存され、取引サーバ102の立ち上げ時に、主記憶308にロードされて、動作する。これによって、クライアント・コンピュータ106a、106b・・・106zが、TCP/IPのプロトコルで、取引サーバ102にアクセスすることが可能となる。 The
また、図示しないが、取引サーバ102のハードディスク・ドライブ310には、パケット通信網108を介してスマート・フォンと通信するための通信モジュールも格納されている。 Although not shown, the
ハードディスク・ドライブ310にはさらに、図5の機能ブロック図に関連して後述するメイン・プログラム502、通信モジュール504、ユーザ情報データ506、乱数生成ルーチン508、ハッシュ関数ルーチン510、コード変換ルーチン512、ユーザ登録ルーチン514及び取引処理ルーチン516が格納されている。これらのモジュールまたはルーチンは、C、C++、C#、Java(R)、Python、Rubyなどの既存の任意のプログラミング言語で作成することができる。 The
尚、上記取引サーバ102として、インターナョナル・ビジネス・マシーンズ・コーポレーションから購入可能な、IBM(インターナョナル・ビジネス・マシーンズ・コーポレーションの商標)System X、System i、System pなどの機種のサーバを使うことができる。その際、使用可能なオペレーティング・システムは、AIX(インターナョナル・ビジネス・マシーンズ・コーポレーションの商標)、UNIX(The Open Groupの商標)、Linux(Linus Torvaldsの商標)、Windows(商標)2008 Serverなどがあり、これには限定されず、任意のオペレーティング・システムで本発明の機能を実装することができる。 As the
図4は、スマート・フォン110a、・・・110k(以下、スマート・フォン110と総称する)のハードウェアのブロック図である。図4において、バス402には、CPU404、RAM406、フラッシュ・メモリ408、及び通話モジュール410が接続されている。CPU404は、クアルコム、NVIDIA、ARMなどから提供されているものである。 FIG. 4 is a hardware block diagram of smart phones 110a,... 110k (hereinafter collectively referred to as smart phones 110). In FIG. 4, a
バス402にはさらに、通信モジュール412、ディスプレイ416、タッチパネル・インターフェース418、カメラ424、及びバッテリ制御モジュール426が接続されている。 Further, a
通信モジュール412は、アンテナ414と基地局(図示しない)を含むパケット通信網108を介して、取引サーバ102と通信し、取引サーバ102にメッセージやデータを送ったり、取引サーバ102からファイルやアプリケーション・プログラムを受信したりする機能をもつ。 The
スマート・フォン110は、図示しないが、固有の識別IDの情報を含む、SIMカードをもつ。 Although not shown, the
フラッシュ・メモリ408には、オペレーティング・システムや、ブラウザを含む、その他のアプリケーション・プログラムが格納されている。スマート・フォンの代表的なオペレーティング・システムとして、Appleから提供されているiOSと、Open Handset Allianceから提供されているAndroidがあるが、本発明は、任意のオペレーティング・システムを導入されたスマート・フォンに適用可能である。 The
ディスプレイ416は、ブラウザその他のアプリケーション・プログラムによる画面を表示する機能をもつ。タッチパネル・インターフェース418は、ディスプレイ416上の指の動きを検出して、スクロールやイメージの拡大・縮小等を行う機能をもつ。 The display 416 has a function of displaying a screen by a browser or other application program. The touch panel interface 418 has a function of detecting movement of a finger on the display 416 and performing scrolling, image enlargement / reduction, and the like.
カメラ424は、ディジタル的に風景や人物などを撮影する機能、及び二次元バーコードを読み取る機能をもつ。読み取られた二次元バーコードは、別途のモジュールで復号される。 The
図5は、取引サーバ102における、機能構成のブロック図である。全体の処理を統合するためのメイン・プログラム502は、通信モジュール504、ユーザ情報データ506、乱数生成ルーチン508、ハッシュ関数ルーチン510、コード変換ルーチン512、ユーザ登録ルーチン514及び取引処理ルーチン516を適宜呼び出して処理を行う。 FIG. 5 is a block diagram of a functional configuration in the
通信モジュール504は、クライアント・コンピュータ106a、106b・・・106zや、スマート・フォン110a、・・・110kと、サーバ102との間でデータをやりとりする機能を行う。 The
ユーザ情報データ506は、クライアント・コンピュータ106a、106b・・・106zや、スマート・フォン110a、・・・110kのユーザの名前、端末ID、パスワード、口座番号、などのデータを保管し、これらの情報は適宜ハッシュ関数ルーチン510、コード変換ルーチン512、及び取引処理ルーチン516などから利用されるとともに、ユーザ登録ルーチン514によってデータを追加あるいは更新される。特にユーザ情報データ506は、下記のような、名前、口座番号、端末ID、秘密情報をユーザ毎に格納するユーザ登録情報テーブルを有する。
乱数生成ルーチン508は、既知の任意のアルゴリズムで乱数を生成する機能をもち、この乱数は、ユーザ登録情報テーブルの秘密情報として提供されたり、ハッシュ関数ルーチン510の引数として提供されたりする。 The random
ハッシュ関数ルーチン510は、これには限定されないが、SHA-1、SHA-2などの既存のハッシュ・アルゴリズムを実装してハッシュ値を与える機能をもつ。この実施例では特に、金額、口座、秘密情報、乱数などを値を引数にして、送金確認コードを生成するために使用される。特に好適には、このハッシュ関数は、秘密情報をキーとする、Keyed Hashである。 Although not limited to this, the
コード変換ルーチン512は、送金確認コード、金額、口座、及び乱数の情報を使用して、二次元バーコードのデータを生成する機能をもつ。 The
ユーザ登録ルーチン514は、クライアント・コンピュータ106a、106b・・・106zや、スマート・フォン110a、・・・110kを介した、サーバ102へのユーザのアクセスに応答して、ユーザ登録情報テーブルへのエントリの追加など、ユーザ情報データ506へのユーザ情報の追加を行う機能をもつ。 The user registration routine 514 responds to user access to the
取引処理ルーチン516は、ユーザの認証や、認証の結果に基づき送金処理などの取引を実行する機能を有する。 The transaction processing routine 516 has a function of executing transactions such as remittance processing based on user authentication and the result of authentication.
次に、図6を参照して、本発明の第1の実施例の処理の概要を説明する。この説明で使用されるのは、取引サーバ102と、クライアント・コンピュータ106と、スマート・フォン110と、サーバ602である。クライアント・コンピュータ106は、図1に示すクライアント・コンピュータ106a、106b・・・106zのどれかであるが、ここでは総称的にクライアント・コンピュータ106と呼ぶことにする。スマート・フォン110も、図1に示すスマート・フォン110a、110b・・・110kのどれかであり、スマート・フォン110と総称的に呼ぶことにする。サーバ602は、図1には示されていないが、スマート・フォン用のアプリケーションを配信するWebサーバであり、インターネット104に接続されている。一般的には、サーバ602は、取引サーバ102とは物理的に別のサーバであるが、取引サーバ102を、サーバ602の代わりにアプリケーション配信用に使用することもできる。 Next, with reference to FIG. 6, the outline of the processing of the first embodiment of the present invention will be described. Used in this description are
図6において、最初のステップ(1)は、スマート・フォン110のユーザが、サーバ602にアクセスして、アプリケーションをダウンロードし、適宜取引サーバ102にもアクセスして、スマート・フォン110上でアプリケーションをセットアップすることである。 In FIG. 6, the first step (1) is that the user of the
次のステップ(2)では、スマート・フォン110のユーザが、自分の管理または所有に係るクライアント・コンピュータ106のWebブラウザを使って、取引サーバ102にアクセスし、オンライン・バンキング取引として、所定口座に意図した金額を送金処理する。 In the next step (2), the user of the
次のステップ(3)では、取引サーバ102が、この段階ではまだオンライン・バンキング取引を完了させず、スマート・フォン110のユーザの秘密情報と、送金先の口座番号、送金金額などのオンライン・バンキング取引情報を含むハッシュ値でコード化した二次元バーコード情報をクライアント・コンピュータ106に送る。これに応答して、クライアント・コンピュータ106は、二次元バーコード情報をそのディスプレイに表示する。 In the next step (3), the
次のステップ(4)では、スマート・フォン110のユーザが、スマート・フォン110カメラ機能を使って、クライアント・コンピュータ106のディスプレイに表示された二次元バーコード情報を読み取る。スマート・フォン110に導入されているアプリケーションは、読み取った二次元バーコード情報をデコードして、そこから、送金先の口座番号と送金金額の情報を取り出し、スマート・フォン110の画面に表示する。 In the next step (4), the user of the
スマート・フォン110に導入されているアプリケーションはさらに、保持している秘密情報と、送金先の口座番号と送金金額の情報などにハッシュ関数をほどこし、そこから確認コードを生成し、スマート・フォン110の画面に表示する。このハッシュ関数は、図5のハッシュ関数ルーチン510と同一の関数である。 The application installed in the
スマート・フォン110のユーザは、次のステップ(5)で、スマート・フォン110の画面に表示されている確認コードを、クライアント・コンピュータ106のWebブラウザに表示されている所定フィールドに打ち込み、好適にはWebブラウザがEV SSL表示になっていることを確認した後、OKボタンをクリックする。 In the next step (5), the user of the
取引サーバ102は、ハッシュ関数ルーチン510を呼び出して、スマート・フォン110で確認コードが生成されたのと同じ情報と同じハッシュ関数を使い同様に確認コードを生成し、その生成した確認コードと、クライアント・コンピュータ106から送られてきた確認コードが一致することを確認したら、オンライン・バンキング取引を実行して完了させる。 The
次に、図6の(1)で示した、スマート・フォン110へのアプリケーションのダウンロード処理について、図7のフローチャートを参照して説明する。図7において、スマート・フォン110のユーザは、ステップ702で、サーバ602上のスマート・フォンのアプリケーション・サイトにアクセスする。 Next, the process of downloading an application to the
ステップ704では、スマート・フォン110のユーザは、この発明の処理のために使用されるネットバンク・アプリケーションを探し、見つかると、ステップ706で、そのネットバンク・アプリケーションを、スマート・フォン110に導入する。 At
図8は、図7のステップで示すスマート・フォン110と、サーバ602の間の処理のシーケンスを示す図である。すなわち、図8には、スマート・フォン110が、サーバ602にアクセスして、ネットバンク・アプリケーションを検索し、サーバ602がスマート・フォン110に検索結果を返し、スマート・フォン110がサーバ602に、アプリケーション・ダウンロード要求を出し、それに応答して、サーバ602がスマート・フォン110にアプリケーションをダウンロードする様子が示されている。 FIG. 8 is a diagram showing a processing sequence between the
次に、図6の(1)における、スマート・フォン110へのアプリケーションのダウンロード処理の続きである、スマート・フォン110における、取引サーバ(銀行ホスト)102上でのユーザ登録処理を、図9のフローチャートを参照して説明する。この処理は、図5に示す、ユーザ登録ルーチン514によって実行される。 Next, a user registration process on the transaction server (bank host) 102 in the
図9において、ステップ902では、スマート・フォン110のユーザは、ネットバンク・アプリケーションから、ユーザ登録処理を実行する。 In FIG. 9, in
ステップ904では、ネットバンク・アプリケーションが、銀行ホストに接続する。 In
ステップ906では、スマート・フォン110のユーザが、例えば、当該銀行から付与されたユーザIDとパスワードを使用して、銀行ホスト102にログインする。 In
ステップ908では、銀行ホスト102から送られてきた画面に、スマート・フォン110のユーザが、ユーザ名、口座番号を入力し、OKボタン(図示しない)をクリックすると、ネットバンク・アプリケーションが、ユーザ名及び口座番号の情報を、スマート・フォン110の端末IDとともに、銀行ホスト102に送信する。 In
ステップ910では、スマート・フォン110が、銀行ホスト102から秘密情報を受信する。ステップ912でネットバンク・アプリケーションは、秘密情報をデータファイルとして暗号化して保存し、ステップ914でユーザ登録処理を終わる。 In
次に、図10を参照して、取引サーバ(銀行ホスト)102側でのユーザ登録処理を説明する。図10のステップ1002では、スマート・フォン110のネットバンク・アプリケーションから、銀行ホスト102が、ログオン要求を受信する。 Next, user registration processing on the transaction server (bank host) 102 side will be described with reference to FIG. In
ステップ1004では、銀行ホスト102が、スマート・フォン110に、ユーザ登録画面を送信する。そして、銀行ホスト102は、ステップ1006で、ユーザのスマート・フォン110から、名前、口座番号、端末IDなどの情報を受信する。 In
ステップ1008で、銀行ホスト102は、ユーザ情報登録テーブルに該当エントリがないかどうか判断し、もしそうなら、ステップ1010で、乱数生成ルーチン508により秘密情報を生成し、ユーザ情報登録テーブルに格納し、処理を終わる。ユーザ情報登録テーブルに該当エントリがあるなら、銀行ホスト102は、ステップ1012で、重複登録エラー表示して処理を終わる。 In
図11は、銀行ホスト上での、スマート・フォン110のユーザ登録処理のシーケンス図である。すなわち、ここでは、スマート・フォン110が銀行ホスト102にログインし、銀行ホスト102がスマート・フォン110にユーザ情報を要求し、それに応じてスマート・フォン110が銀行ホスト102に、名前、口座番号、端末IDを送り、それに応じて銀行ホスト102がスマート・フォン110に秘密情報を作成し、格納するとともに送って、登録完了することが示されている。 FIG. 11 is a sequence diagram of user registration processing of the
スマート・フォン110は、下記のような秘密テーブルに、日時とともに秘密情報を格納する。
秘密テーブルは、日付とともに、複数の秘密情報のエントリをもつことができる。セキュリティの安全性向上のため、秘密情報は、定期的、あるいは不定期に銀行ホスト102からスマート・フォン110に提供することができ、好適には、最新の日付の秘密情報が、スマート・フォン110で有効とされる。 The secret table can have multiple secret information entries along with the date. To improve security safety, the secret information can be provided to the
次に、図12のフローチャートを参照して、銀行ホストにおけるネットバンク処理について説明する。この処理は、図5に示した、取引処理ルーチン514が実行する。 Next, net bank processing in the bank host will be described with reference to the flowchart of FIG. This processing is executed by the transaction processing routine 514 shown in FIG.
図12において、銀行ホスト102は、ステップ1202で、クライアント・コンピュータ106から、ログオン要求を受信する。銀行ホスト102は、受信したログオン要求のユーザIDとパスワードをユーザ情報506に保存されている情報と比較し、ユーザIDとパスワードの組がユーザ情報506に見つかると、ステップ1204で、ユーザ認証OKとする。 In FIG. 12, the
ユーザ認証OKでないなら、ステップ1206で認証エラーとして、処理を終了する。 If the user authentication is not OK, the process ends in
ユーザ認証OKなら、銀行ホスト102は、ステップ1208で、クライアント・コンピュータ106に送金情報入力画面を送信する。 If the user authentication is OK, the
銀行ホスト102は、ステップ1210で、クライアント・コンピュータ106から送金情報を受信する。銀行ホスト102は次に、送金情報がユーザ情報登録テーブルの情報と一致するかどうか確認し、それが一致しないと、ステップ1214で、送金エラーとして処理を終了する。
銀行ホスト102は、ステップ1216で、乱数生成ルーチン508で乱数を生成し、それを乱数1と呼ぶことにし、次に、ハッシュ関数ルーチン510を呼び出して、H(金額,口座,秘密情報,乱数1)により、送金確認コードを生成する。 In
銀行ホスト102は次に、ステップ1218で、送金確認コード、金額、口座、乱数1をビット列に変換し、二次元バーコード(QRコード)に変換する。 Next, in
銀行ホスト102は次に、ステップ1220で、QRコードを送信確認画面とともにクライアント・コンピュータ106に送信する。その後、銀行ホスト102は、ステップ1222で、所定の時間以内にクライアント・コンピュータ106からユーザ確認コードを受信したかどうかを判断し、もし所定時間以内に受信したかどうかを判断し、そうでないなら、ステップ1224で、送金処理エラー表示して、処理を終了する。 Next, in
一方、銀行ホスト102がステップ1222で、所定の時間以内にクライアント・コンピュータ106からユーザ確認コードを受信したことを確認すると、銀行ホスト102は、ステップ1226で、ユーザ確認コードを、ユーザ情報登録テーブルの秘密情報を使って確認する。具体的には、ユーザ確認コードは、スマート・フォン110が二次元バーコードを読み取って、そこから、金額,口座,乱数1の情報を引き出し、保持している秘密情報を使用して、H(金額,口座,秘密情報,端末ID,乱数1)により生成されたコードが、5867405976740495595767であるとすると、このままでは情報として長すぎるので、例えば、5867405976[740495]595767のような、[]で囲った位置の長さをユーザ確認コードとして使用すると決めておく。すると、銀行ホスト102側でも、同じ情報と、同じ関数H()を用いてコードを生成して、その中から同様の位置からユーザ確認コードを取り出し、比較することで、ステップ1228で正しいユーザ確認コードであるかどうかが検査される。ユーザ確認コードが不一致であると、ステップ1230で、送金処理エラー表示して、処理を終了する。 On the other hand, when the
一方、銀行ホスト102は、ステップ1228で、クライアント・コンピュータ106から受信したユーザ確認コードと、生成したユーザ確認コードが一致することを確認したら、ステップ1232で、送信処理を実行して、処理を終わる。 On the other hand, when the
次に、図13のフローチャートを参照して、クライアント・コンピュータ106における、ネット・バンキング処理について説明する。 Next, the net banking process in the client computer 106 will be described with reference to the flowchart of FIG.
図13において、クライアント・コンピュータ106のユーザは、ステップ1302で、Webブラウザを使用して、銀行ホスト102のネットバンク・サイト(例えば、http://www.abcbank.co.jp/login/)にアクセスする。ステップ1304で、クライアント・コンピュータ106のユーザは、所与のユーザID/パスワードで、ネットバンク・サイトでログインする。この場合のクライアント・コンピュータ106における、Webブラウザの画面の例を、図16に、画面1602として示す。 In FIG. 13, the user of the client computer 106 uses a web browser to access the
すると、銀行ホスト102から、クライアント・コンピュータ106のWebブラウザに、ステップ1306で、送金画面が送られてくるので、それを受信する。その送金内容を入力するためのメニューは、図16の領域1604として示されている。 Then, the remittance screen is sent from the
ステップ1308で、クライアント・コンピュータ106のユーザは、領域1604に、送金先の銀行名、支店名、口座番号、名義人などの内容を入力し、処理開始ボタン1606をクリックする。 In
すると、銀行名、支店名、口座番号、名義人などの内容が銀行ホスト102に送られ、銀行ホスト102側では、図12のステップ1220に関して説明したように、送金確認コード、金額、口座、乱数1をビット列に変換し、二次元バーコード(QRコード)を作成して、クライアント・コンピュータ106に送ってくる。 Then, contents such as a bank name, branch name, account number, holder, etc. are sent to the
クライアント・コンピュータ106は、ステップ1310で、銀行ホスト102から、このQRコードを受信し、受信したQRコードを、図16に示すように、QRコード1608として表示する。そして、クライアント・コンピュータ106は、ステップ1312で、一定時間以内にユーザ確認コードの入力があったかどうかを判断する。 In
図13のフローチャートには示されていないが、ステップ1310の段階で、クライアント・コンピュータ106のユーザは、スマート・フォン110で、クライアント・コンピュータ106の画面に表示されているQRコード1608を撮影して、このデータをスマート・フォン110に取り込む。すると、スマート・フォン110のネットバンク・アプリケーションの処理により、図17に示すように、スマート・フォン110の画面に、送金額及び金額の情報1702と、ユーザ確認コードの情報1704が表示される。すると、スマート・フォン110のユーザ(一般的に、クライアント・コンピュータ106のユーザでもある)は、ユーザ確認コードの情報1704をみて、その情報(この場合、740495)を、クライアント・コンピュータ106の画面のフィールド1610に入力し、OKボタン1612をクリックする。すると、ステップ1312の判断が肯定的になり、ステップ1314で、クライアント・コンピュータ106は、ユーザ確認コードを銀行ホスト102に送る。もし、銀行ホスト102がユーザ確認コードが正しいと認証すると、銀行ホスト102から、その旨のメッセージがクライアント・コンピュータ106に返され、メッセージ1614として表示される。 Although not shown in the flowchart of FIG. 13, in
次に、図14のフローチャートを参照して、スマート・フォン110における、ネット・バンキング処理について説明する。 Next, the net banking process in the
ステップ1402で、スマート・フォン110のユーザは、アプリケーションを起動して、スマート・フォン110に搭載のカメラで、QRコードを撮影する。アプリケーションはステップ1404で、撮影したQRコードをデコードして、送金確認コード、金額、口座番号、及び乱数1の情報を引き出す。金額、口座の情報は、スマート・フォン110のユーザが目視が確認できるように、参照番号1704のようにスマート・フォン110の画面に表示される。 In
ステップ1406で、スマート・フォン110のアプリケーションは、APIで端末IDを取得し、送金確認コードが正しいかどうか確認する。これは、送金確認コード = H(金額,口座番号,秘密情報,乱数1)という計算をスマート・フォン110で計算し、QRコードから取り出した送金確認コードと比較することによって行われる。それらが一致すれば認証はOKであるのでステップ1408に進み、そうでなければ処理を中止する。 In
ステップ1408で、スマート・フォン110のアプリケーションは、ユーザ確認コード = H(金額,口座番号,秘密情報,端末ID,乱数1)により、ユーザ確認コードを生成する。 In
しかし、ステップ1222で既に説明したように、実際に使用するのは、ユーザ確認コードのうちの決まった位置からの決まった長さの一部の値である。よって、アプリケーションは、ステップ1410で、ユーザ確認コードのうちの決まった位置からの決まった長さの一部の値を抽出する。 However, as already described in
ステップ1412では、スマート・フォン110のユーザが、情報1702が正しいと確認した後、図17に示したような、切り出されたユーザ確認コード1704を見て、クライアント・コンピュータ106の画面のフィールド1610に入力して、OKボタン1612をクリックすることにより、銀行ホスト102に送信する。 In
次に、図12、図13及び図14のフローチャートの処理の動作のまとめとして、図15のシーケンス図を参照して、スマート・フォン110、クライアント・コンピュータ106及び銀行ホスト102の間の処理の時間的流れを説明する。 Next, referring to the sequence diagram of FIG. 15 as a summary of the processing operations of the flowcharts of FIGS. 12, 13, and 14, the processing time between the
図15において、(1)で、クライアント・コンピュータ106が、銀行ホスト102にログインする。(2)で、銀行ホスト102が、当該ログインを認証し、(3)送金入力画面等をクライアント・コンピュータ106に送信する。 In FIG. 15, the client computer 106 logs into the
(4)で、クライアント・コンピュータ106のユーザが、送金情報を入力し、(5)で、金額、口座番号などの送金情報を、銀行ホスト102に送り、銀行ホスト102は、(6)で、送金確認コード = H(金額,口座番号,秘密情報,乱数1)により送金確認コードを生成し、(7)で、送金確認コード、金額、口座番号、乱数1の情報を使ってQRコードを生成し、(8)で、銀行ホスト102は、クライアント・コンピュータ106に、QRコードと確認画面を送信し、(9)でクライアント・コンピュータ106は、図16に示すように、QRコードと確認画面を表示する。 At (4), the user of the client computer 106 inputs remittance information, and at (5), remittance information such as the amount and account number is sent to the
(10)では、スマート・フォン110のユーザが、ネットバンク・アプリケーションを起動し、(11)で、スマート・フォン110により、クライアント・コンピュータ106の画面に表示されているQRコード1608を撮影する。これにより、(12)で、QRコード1608の情報がスマート・フォン110に取り込まれる。 In (10), the user of the
スマート・フォン110のネットバンク・アプリケーションは、(13)で、QRコードから、送金確認コード、金額、口座番号、乱数1を抽出し、送金確認コードが正しいかどうか検証する。 In (13), the net bank application of the
スマート・フォン110のネットバンク・アプリケーションは、(14)で、ユーザ確認コード = H(金額,口座番号,秘密情報,端末ID,乱数1)を生成し、(15)で、スマート・フォン110のユーザに、金額、口座番号、ユーザ確認コード(の一部)を表示する。ユーザが金額、口座番号の情報が正しいと確認すると、ユーザ確認コード(の一部)を、(16)で、クライアント・コンピュータ106の画面のフィールド1610に入力する。そして、(17)で、クライアント・コンピュータ106の画面のOKボタン1612をクリックすると、ユーザ確認コード(の一部)が銀行ホスト102に送られる。 The net bank application of the
銀行ホスト102は、(18)で、ユーザ情報テーブルにある情報を使用して、送られたユーザ確認コード(の一部)が正しいかどうかを検証する。 At (18), the
すなわち、銀行ホスト102側では、ユーザのログイン情報に基づき、保持しているユーザ登録情報テーブルを検索し、これから秘密情報を取り出し、銀行ホスト102側でも、ユーザ確認コード = H(金額,口座番号,秘密情報,端末ID,乱数1)を生成することで、クライアント・コンピュータ106から受信したユーザ確認コードと比較する。 That is, on the
正しければ(19)で送金処理などを実行する。そして、好適には、クライアント・コンピュータ106に、正しく処理が完了したことを通知する。 If it is correct, the remittance process is executed in (19). Preferably, the client computer 106 is notified that the processing has been correctly completed.
次に、図18以下を参照して、クライアント・コンピュータ106を使わず、スマート・フォン110と銀行ホスト102だけを使う、別の実施例について説明する。 Next, with reference to FIG. 18 and the following, another embodiment in which only the
図18において、サーバ602は、図1には示されていないが、スマート・フォン用のアプリケーションを配信するWebサーバであり、インターネット104に接続されている。一般的には、サーバ602は、取引サーバ102とは物理的に別のサーバであるが、取引サーバ102を、サーバ602の代わりにアプリケーション配信用に使用することもできる。 In FIG. 18, a
図18において、最初のステップ(1)は、スマート・フォン110のユーザが、サーバ602にアクセスして、アプリケーションをダウンロードし、適宜取引サーバ102にもアクセスして、スマート・フォン110上でアプリケーションをセットアップすることである。 In FIG. 18, the first step (1) is that the user of the
次のステップ(2)では、スマート・フォン110のユーザが、スマート・フォン110を使って、取引サーバ102にアクセスし、オンライン・バンキング取引として、所定口座に意図した金額を送金処理する。 In the next step (2), the user of the
次のステップ(3)では、取引サーバ102が、この段階ではまだオンライン・バンキング取引を完了させず、スマート・フォン110のユーザの秘密情報と、送金先の口座番号、送金金額などのオンライン・バンキング取引情報を含むハッシュ値でコード化した情報をスマート・フォン110に送る。受信した情報をデコードして、そこから、送金先の口座番号と送金金額の情報を取り出し、スマート・フォン110の画面に表示する。スマート・フォン110に導入されているアプリケーションはさらに、保持している秘密情報と、送金先の口座番号と送金金額の情報などにハッシュをほどこし、そこから確認コードを生成し、スマート・フォン110の内部に保持する。 In the next step (3), the
スマート・フォン110のユーザは、次のステップ(4)で、スマート・フォン110に画面に表示されている口座番号と送金金額が正しいと確認すると、OKボタンにタッチする。すると、保持されている確認コードが取引サーバ102に送られる。 In the next step (4), the user of the
取引サーバ102は、スマート・フォン110で確認コードが生成されたのと同じ情報と同じハッシュ関数を使い同様に確認コードを生成し、その生成した確認コードと、クライアント・コンピュータ106から送られてきた確認コードが一致することを確認したら、オンライン・バンキング取引を実行して完了させる。 The
次に、図18の(1)で示した、スマート・フォン110へのアプリケーションのダウンロード処理について、図19のフローチャートを参照して説明する。図19において、スマート・フォン110のユーザは、ステップ1902で、サーバ602上のスマート・フォンのアプリケーション・サイトにアクセスする。 Next, the process of downloading an application to the
ステップ1904では、スマート・フォン110のユーザは、この発明の処理のために使用されるネットバンク・アプリケーションを探し、見つかると、ステップ1906で、そのネットバンク・アプリケーションを、スマート・フォン110に導入する。 At
図20は、図19のステップで示すスマート・フォン110と、サーバ602の間の処理のシーケンスを示す図である。すなわち、図20には、スマート・フォン110が、サーバ602にアクセスして、ネットバンク・アプリケーションを検索し、サーバ602がスマート・フォン110に検索結果を返し、スマート・フォン110がサーバ602に、アプリケーション・ダウンロード要求を出し、それに応答して、サーバ602がスマート・フォン110にアプリケーションをダウンロードする様子が示されている。 FIG. 20 is a diagram showing a processing sequence between the
次に、図18の(1)における、スマート・フォン110へのアプリケーションのダウンロード処理の続きである、スマート・フォン110における、取引サーバ(銀行ホスト)102上でのユーザ登録処理を、図21のフローチャートを参照して説明する。 Next, a user registration process on the transaction server (bank host) 102 in the
図21において、ステップ2102では、スマート・フォン110のユーザは、ネットバンク・アプリケーションから、ユーザ登録処理を実行する。 In FIG. 21, in
ステップ2104では、ネットバンク・アプリケーションが、銀行ホストに接続する。 In step 2104, the net bank application connects to the bank host.
ステップ2106では、スマート・フォン110のユーザが、例えば、当該銀行から付与されたユーザIDとパスワードを使用して、銀行ホスト102にログインする。 In step 2106, the user of the
ステップ2108では、銀行ホスト102から送られてきた画面に、スマート・フォン110のユーザが、ユーザ名、口座番号を入力し、OKボタン(図示しない)をクリックすると、ネットバンク・アプリケーションが、ユーザ名及び口座番号の情報を、スマート・フォン110の端末IDとともに、銀行ホスト102に送信する。 In
ステップ2110では、スマート・フォン110が、銀行ホスト102から秘密情報を受信する。ステップ2112でネットバンク・アプリケーションは、秘密情報をデータファイルとして暗号化して保存し、ステップ2114でユーザ登録処理を終わる。 In step 2110,
次に、図22を参照して、取引サーバ(銀行ホスト)102側でのユーザ登録処理を説明する。この処理は、図5に示す、ユーザ登録ルーチン514によって実行される。ステップ2202では、スマート・フォン110のネットバンク・アプリケーションから、銀行ホスト102が、ログオン要求を受信する。 Next, with reference to FIG. 22, a user registration process on the transaction server (bank host) 102 side will be described. This process is executed by a user registration routine 514 shown in FIG. In
銀行ホスト102は、ステップ2204で、ログオン要求で送られてきた、ユーザIDとパスワードにより、ユーザ認証OKかどうか判断する。ユーザ認証OKでないなら、銀行ホスト102は、ステップ2206で、認証エラーとして処理を終わる。 In
ステップ2204でユーザ認証OKと判断すると、ステップ2208で、銀行ホスト102が、スマート・フォン110に、ユーザ登録画面を送信する。そして、銀行ホスト102は、ステップ2210で、ユーザのスマート・フォン110から、名前、口座番号、端末IDなどの情報を受信する。 If it is determined in
ステップ2212で、銀行ホスト102は、ユーザ情報登録テーブルに該当エントリがないかどうか判断し、もしそうなら、ステップ2214で、乱数生成ルーチン508により秘密情報を生成し、ユーザ情報登録テーブルに格納し、処理を終わる。ユーザ情報登録テーブルに該当エントリがあるなら、銀行ホスト102は、ステップ2216で、重複登録エラー表示して処理を終わる。 In
図23は、銀行ホスト上での、スマート・フォン110のユーザ登録処理のシーケンス図である。すなわち、ここでは、スマート・フォン110が銀行ホスト102にログインし、銀行ホスト102がスマート・フォン110にユーザ情報を要求し、それに応じてスマート・フォン110が銀行ホスト102に、名前、口座番号、端末IDを送り、それに応じて銀行ホスト102がスマート・フォン110に秘密情報を送信し、格納するとともに送って、登録完了することが示されている。 FIG. 23 is a sequence diagram of user registration processing of the
図24は、銀行ホスト上でのネット・バンキング処理のフローチャートを示す図である。この処理は、図5に示した、取引処理ルーチン514が実行する。図24において、ステップ2402では、銀行ホスト102は、スマート・フォン110のネットバンク・アプリケーションから、送金メニューにログオン要求を受信する。 FIG. 24 is a diagram showing a flowchart of the net banking process on the bank host. This processing is executed by the transaction processing routine 514 shown in FIG. In FIG. 24, in
銀行ホスト102は、ステップ2404で、ログオン要求で送られてきた、ユーザIDとパスワードにより、ユーザ認証OKかどうか判断する。ユーザ認証OKでないなら、銀行ホスト102は、ステップ2406で、認証エラーとして処理を終わる。 In
ユーザ認証OKであるなら、銀行ホスト102は、ステップ2408で、スマート・フォン110に、例えば、図27の参照番号2702で示すような送金情報入力画面を送信する。 If the user authentication is OK, the
銀行ホスト102は、ステップ2410で、送金情報をスマート・フォン110から受信する。銀行ホスト102は、ステップ2412で更に、金額、口座番号、乱数2、ユーザ確認コードを受信する。
銀行ホスト102は、ステップ2414で、受信した金額、口座番号、乱数2と、スマート・フォン110用に保持している秘密情報、端末IDから、ユーザ確認コードを生成し、スマート・フォン110から受信したユーザ確認コードと比較し、それらが一致するなら、ステップ2416で送金処理を実行し、そうでなければ、ステップ2418で送信エラーを表示して処理を終わる。 In
図25は、スマート・フォン110上でのネット・バンキング処理のフローチャートを示す図である。ステップ2502では、スマート・フォン110のユーザは、ネット・バンキング・アプリケーションを起動して、送金メニューを選択する。 FIG. 25 is a flowchart of net banking processing on the
ステップ2504では、ネット・バンキング・アプリケーションは、銀行ホストに接続する。 In
ステップ2506では、スマート・フォン110のユーザは、ネット・バンキング・アプリケーション上で、ユーザIDとパスワードを使用して、ログインする。 At
これに応答して、銀行ホストからスマート・フォン110に、ステップ2508で送金画面が送られてくるので、スマート・フォン110はそれを受信して、図27の領域2702のように表示する。 In response to this, a remittance screen is sent from the bank host to the
ステップ2510で、スマート・フォン110のユーザが、送金画面に入力すると、確認用の送金先口座番号と、金額が、領域2704に表示される。ステップ2510ではさらに、ネット・バンキング・アプリケーションが、乱数2を生成する。 In
ネット・バンキング・アプリケーションはステップ2512で、ユーザ確認コード = H(金額,口座番号,秘密情報,端末ID,乱数2)を生成する。 In
スマート・フォン110のユーザが、領域2704の確認データを確認してOKであることを確認し、処理続行2702をタッチすると、ネット・バンキング・アプリケーションはステップ2514で、金額、口座番号、乱数2、ユーザ確認コードを銀行ホスト102に送る。なお、領域2704の確認データがOKでないなら、キャンセル2708をタッチして、処理をキャンセルする。 When the user of the
ステップ2514で銀行ホスト102に送信した金額、口座番号、乱数2、ユーザ確認コードを用いて、図24のステップ2414でユーザ確認コードが正しいことを確認すると、銀行ホスト102がステップ2416で送金処理を実行し、そのことの応答を受け取ると、スマート・フォン110には、そのことを示すメッセージ2710が表示される。 When it is confirmed in
次に、図24、及び図25のフローチャートの処理の動作のまとめとして、図26のシーケンス図を参照して、スマート・フォン110及び銀行ホスト102の間の処理の時間的流れを説明する。 Next, as a summary of the processing operations of the flowcharts of FIGS. 24 and 25, the time flow of the processing between the
図26において、(1)で、スマート・フォン110のユーザがネットバンク・アプリケーションを起動し、(2)で、スマート・フォン110が、銀行ホスト102にログインする。(3)で、銀行ホスト102が、当該ログインを認証し、(4)送金入力画面等をスマート・フォン110に送信する。 In FIG. 26, at (1), the user of the
(5)でスマート・フォン110のユーザが、銀行ホスト102から受信した送金入力画面2702(図27)に、送金情報を入力する。所定の送金情報確定動作に応答して、ネットバンク・アプリケーションは、(6)で確認画面2704を表示する。 In (5), the user of the
(7)でスマート・フォン110のユーザが、確認画面2704の送金内容を見て、問題ないか確認し、処理続行2706をタッチすると、(8)でネットバンク・アプリケーションは、乱数2を生成してからユーザ確認コード = H(金額,口座番号,秘密情報,端末ID,乱数2)を生成し、(9)でユーザ確認コード、金額、口座番号、乱数2を銀行ホスト102に送る。 When the user of the
銀行ホスト102側では、ユーザのログイン情報に基づき、保持しているユーザ登録情報テーブルを検索し、これから秘密情報を取り出し、銀行ホスト102側でも、ユーザ確認コード = H(金額,口座番号,秘密情報,端末ID,乱数2)を生成することで、スマート・フォン110から受信したユーザ確認コードと比較する。 On the
そして、それらが一致すれば検証が正しいとして、(11)で送金処理を実行し、送金処理が完了したことをスマート・フォン110に通知して、処理を終了する。 Then, if they match, the verification is correct, the remittance process is executed in (11), the completion of the remittance process is notified to the
以上、特定のハードウェアとソフトウェアの組み合わせで構築された例で説明してきたが、本発明は特定のプラットフォームに限定されず、任意のハードウェア、オペレーティング・システム、プログラミング処理系、あるいはネットワーク環境の下で実現可能である。 As described above, the description has been given by using the example of the combination of specific hardware and software. However, the present invention is not limited to a specific platform, and may be performed under any hardware, operating system, programming processing system, or network environment. It is feasible.
また、モバイル・デバイスとして、スマート・フォンを使用した例で説明してきたが、通信機能と、二次元バーコードを読み取ってデコードする機能をもつ、通常の携帯端末などの任意のモバイル・デバイスが使用可能である。 In addition, although an example using a smart phone has been described as a mobile device, it can be used by any mobile device such as an ordinary mobile terminal that has a communication function and a function to read and decode a two-dimensional barcode. Is possible.
さらに、上記で説明した第1の実施例では、二次元バーコードへのコード化を、銀行端末で行うようにしているが、二次元バーコードへのコード化のもとになる情報をクライアント・コンピュータに送り、クライアント・コンピュータ側で二次元バーコードへのコード化を行って、画面に表示するようにしてもよい。 Furthermore, in the first embodiment described above, encoding into a two-dimensional barcode is performed at a bank terminal, but information that is the basis for encoding into a two-dimensional barcode is stored in the client The data may be sent to a computer and coded on a two-dimensional barcode on the client computer side, and displayed on a screen.
また、第1の実施例で、二次元バーコードを読み取るのは、スマート・フォンでなく、二次元バーコードのリーダーを備えた別のクライアント・コンピュータであってもよい。 In the first embodiment, the two-dimensional barcode may be read by another client computer equipped with a two-dimensional barcode reader instead of the smart phone.
さらに、第2の実施例で、スマート・フォンの代わりにクライアント・コンピュータを使用してもよいし、スマート・フォンから銀行ホストに、口座番号と送金額の情報は送らなくて、ユーザ確認コードと、乱数の情報だけでもよい。それだけでも、銀行ホスト側に口座番号と送金額の情報はあるので、銀行ホスト側で、対照のためにユーザ確認コードを生成することができる。 Furthermore, in the second embodiment, a client computer may be used instead of the smart phone, and the account number and remittance information are not sent from the smart phone to the bank host. Only random number information may be used. By itself, the bank host side has the account number and remittance information, so the bank host side can generate a user verification code for comparison.
さらに、この発明の技法は、オンライン・バンキングだけでなく、官庁へのオンライン申請手続きなど、セキュアな取り扱いを要する任意のトランザクションに適用可能である。 Furthermore, the technique of the present invention can be applied not only to online banking but also to any transaction that requires secure handling, such as online application procedures to government offices.
102・・・取引サーバ(銀行ホスト)
106・・・クライアント・コンピュータ
110・・・スマート・フォン
506・・・ユーザ情報データ
508・・・乱数生成ルーチン
510・・・ハッシュ関数ルーチン
512・・・コード変換ルーチン
514・・・ユーザ登録ルーチン
516・・・取引処理ルーチン102 ... Transaction server (bank host)
106:
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012257299AJP2014106593A (en) | 2012-11-26 | 2012-11-26 | Transaction authentication method and system |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012257299AJP2014106593A (en) | 2012-11-26 | 2012-11-26 | Transaction authentication method and system |
| Publication Number | Publication Date |
|---|---|
| JP2014106593Atrue JP2014106593A (en) | 2014-06-09 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012257299APendingJP2014106593A (en) | 2012-11-26 | 2012-11-26 | Transaction authentication method and system |
| Country | Link |
|---|---|
| JP (1) | JP2014106593A (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016009497A1 (en)* | 2014-07-15 | 2016-01-21 | 株式会社あいびし | Data falsification detection device, network service providing device, data falsification detection method, network service providing method, and program |
| JP2016179543A (en)* | 2016-07-22 | 2016-10-13 | 富士重工業株式会社 | Drill and drill manufacturing method |
| JP2016181806A (en)* | 2015-03-24 | 2016-10-13 | 株式会社 ゆうちょ銀行 | Information processing device, information processing system, cryptographic device, information processing method and program |
| WO2017022121A1 (en)* | 2015-08-06 | 2017-02-09 | 三菱電機株式会社 | Authentication device, authentication system, and authentication method |
| JP2017537421A (en)* | 2014-11-17 | 2017-12-14 | オベルトゥル テクノロジOberthur Technologies | How to secure payment tokens |
| CN111819590A (en)* | 2018-03-22 | 2020-10-23 | 三星电子株式会社 | Electronic device and authentication method thereof |
| JP2021505057A (en)* | 2017-11-28 | 2021-02-15 | ビザ インターナショナル サービス アソシエーション | Systems and methods to prevent relay attacks |
| KR20210043658A (en)* | 2018-09-10 | 2021-04-21 | 라인 가부시키가이샤 | Information processing method, information display method, program, terminal and server |
| JP2023164828A (en)* | 2018-12-14 | 2023-11-14 | アメリカン エキスプレス トラヴェル リレイテッド サーヴィシーズ カンパニー, インコーポレイテッド | Transaction account data maintenance using blockchain |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPWO2016009497A1 (en)* | 2014-07-15 | 2017-05-25 | 株式会社あいびし | Data falsification detecting device, network service providing device, data falsification detecting method, network service providing method, and program |
| WO2016009497A1 (en)* | 2014-07-15 | 2016-01-21 | 株式会社あいびし | Data falsification detection device, network service providing device, data falsification detection method, network service providing method, and program |
| JP2017537421A (en)* | 2014-11-17 | 2017-12-14 | オベルトゥル テクノロジOberthur Technologies | How to secure payment tokens |
| JP2016181806A (en)* | 2015-03-24 | 2016-10-13 | 株式会社 ゆうちょ銀行 | Information processing device, information processing system, cryptographic device, information processing method and program |
| WO2017022121A1 (en)* | 2015-08-06 | 2017-02-09 | 三菱電機株式会社 | Authentication device, authentication system, and authentication method |
| JPWO2017022121A1 (en)* | 2015-08-06 | 2017-09-07 | 三菱電機株式会社 | Authentication apparatus, authentication system, and authentication method |
| CN107851168A (en)* | 2015-08-06 | 2018-03-27 | 三菱电机株式会社 | Authentication device, Verification System and authentication method |
| JP2016179543A (en)* | 2016-07-22 | 2016-10-13 | 富士重工業株式会社 | Drill and drill manufacturing method |
| US11647042B2 (en) | 2017-11-28 | 2023-05-09 | Visa International Service Association | Systems and methods for protecting against relay attacks |
| JP2021505057A (en)* | 2017-11-28 | 2021-02-15 | ビザ インターナショナル サービス アソシエーション | Systems and methods to prevent relay attacks |
| US11936684B2 (en) | 2017-11-28 | 2024-03-19 | Visa International Service Association | Systems and methods for protecting against relay attacks |
| JP7250788B2 (en) | 2017-11-28 | 2023-04-03 | ビザ インターナショナル サービス アソシエーション | Systems and methods for preventing relay attacks |
| CN111819590A (en)* | 2018-03-22 | 2020-10-23 | 三星电子株式会社 | Electronic device and authentication method thereof |
| CN111819590B (en)* | 2018-03-22 | 2024-05-31 | 三星电子株式会社 | Electronic device and authentication method thereof |
| KR20230047515A (en)* | 2018-09-10 | 2023-04-07 | 라인 가부시키가이샤 | Information processing method, information display method, program, terminal, and server |
| KR102517440B1 (en)* | 2018-09-10 | 2023-04-03 | 라인 가부시키가이샤 | Information processing method, information display method, program, terminal and server |
| KR20210043658A (en)* | 2018-09-10 | 2021-04-21 | 라인 가부시키가이샤 | Information processing method, information display method, program, terminal and server |
| KR102676770B1 (en)* | 2018-09-10 | 2024-06-20 | 라인 야후 가부시키가이샤 | Information processing method, information display method, program, terminal, and server |
| JP2023164828A (en)* | 2018-12-14 | 2023-11-14 | アメリカン エキスプレス トラヴェル リレイテッド サーヴィシーズ カンパニー, インコーポレイテッド | Transaction account data maintenance using blockchain |
| Publication | Publication Date | Title |
|---|---|---|
| JP2014106593A (en) | Transaction authentication method and system | |
| US11625720B2 (en) | Secure in-line payments for rich internet applications | |
| CN104662864B (en) | The convenient authentication method of user and device that mobile authentication is applied are used | |
| US10504103B2 (en) | Login using QR code | |
| CN106575416B (en) | System and method for authenticating a client to a device | |
| CA2736582C (en) | Authorization of server operations | |
| CN102164141B (en) | Method for protecting security of account | |
| CN105959287A (en) | Biological feature based safety certification method and device | |
| KR20170041729A (en) | System and method for establishing trust using secure transmission protocols | |
| CN106357640A (en) | Method, system and server for authenticating identities on basis of block chain networks | |
| EP3061025B1 (en) | Method and system for authenticating service | |
| CN114830092A (en) | System and method for protecting against malicious program code injection | |
| JP6378870B2 (en) | Authentication system, authentication method, and authentication program | |
| KR101206854B1 (en) | Authentication system and method based by unique identifier | |
| JP5317795B2 (en) | Authentication system and authentication method | |
| JP4334515B2 (en) | Service providing server, authentication server, and authentication system | |
| KR20150146061A (en) | Voice recognition authentication system and method for providing authentication service using voice recognition | |
| JP5584102B2 (en) | Authentication system, client terminal, server, authenticated method, authentication method, authentication client program, and authentication server program | |
| HK1199774A1 (en) | Server-based login system, login server and authentication method for the same | |
| WO2015060950A1 (en) | Method and system for authenticating service | |
| JP5044784B2 (en) | Method and server for authenticating a user | |
| CN113515768A (en) | An information security protection method and device | |
| JP6351607B2 (en) | Safety device and safe data transmission method | |
| HK40081382A (en) | System and method for protection against malicious program code injection | |
| HK1195178B (en) | Method and device for security authentication |