JP6307610B2 - データ改竄検知装置、データ改竄検知方法、及びプログラム - Google Patents

データ改竄検知装置、データ改竄検知方法、及びプログラム Download PDF

Info

Publication number
JP6307610B2
JP6307610B2 JP2016534022A JP2016534022A JP6307610B2 JP 6307610 B2 JP6307610 B2 JP 6307610B2 JP 2016534022 A JP2016534022 A JP 2016534022A JP 2016534022 A JP2016534022 A JP 2016534022A JP 6307610 B2 JP6307610 B2 JP 6307610B2
Authority
JP
Japan
Prior art keywords
user terminal
data
input
input data
dimensional code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016534022A
Other languages
English (en)
Other versions
JPWO2016009497A1 (ja
Inventor
昇 菱沼
昇 菱沼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AIBC, INC.
Original Assignee
AIBC, INC.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AIBC, INC. filed Critical AIBC, INC.
Publication of JPWO2016009497A1 publication Critical patent/JPWO2016009497A1/ja
Application granted granted Critical
Publication of JP6307610B2 publication Critical patent/JP6307610B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/42User authentication using separate channels for security data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

本発明は、データ改竄検知装置、ネットワークサービス提供装置、データ改竄検知方法、ネットワークサービス提供方法、及びプログラムに関する。
インターネットを利用したネットバンキング等のネットワークサービスが普及している。ユーザは、PC(Personal Computer)等の端末装置を操作して専用のサイトにアクセスし、パスワード等による本人認証を行った後、振込データ等を入力して、振込処理等の必要なサービスを利用することが可能となる。
また、特許文献1には、ワンタイムパスワードを発行することでこのようなサービスのセキュリティを向上させることについて記載されている。
特開2007−328381号公報
特許文献1等に開示された技術により正しくユーザ認証ができたとしても、その後、ユーザが入力したデータを裏側で改竄する中間者攻撃やMITB(マン・イン・ザ・ブラウザ・アタック)を防ぐことは難しい。ユーザは正しいデータを入力したつもりであり、端末装置の画面には正しい処理内容が表示されるため、ユーザがデータの改竄に気付くのは困難なためである。
本発明は、このような問題に鑑みてなされたものであり、ネットワークサービスにおける入力データの改竄を検知することができるデータ改竄検知装置、データ改竄検知方法、及びプログラムを提供することを目的とする。また、本発明は、入力データが改竄されることのないネットワークサービス提供装置、ネットワークサービス提供方法、及びプログラムを提供することを目的とする。
上記目的を達成するため、本発明の第1の観点に係るデータ改竄検知装置は、
ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させる2次元コード表示制御部と、
前記2次元コードを読み取った携帯端末から送信された入力データを取得する第1データ取得部と、
前記ユーザ端末から入力データを取得する第2データ取得部と、
前記第1データ取得部が取得した入力データと前記第2データ取得部が取得した入力データとが一致しない場合に、前記ユーザ端末に入力された入力データは改竄されていると判別する改竄検知部と、
を備える。
前記2次元コード表示制御部は、前記ユーザ端末に前記2次元コードを作成するためのJAVA(登録商標)アプレットを送信して実行させることにより、該2次元コードを表示させてもよい。
前記2次元コード表示制御部は、前記入力データを暗号化して送信するためのURLを記録した2次元コードを前記ユーザ端末に表示させ、
前記第1データ取得部は、暗号化された入力データを復号化してもよい。
前記ネットワークサービスは振込システムであり、
前記入力データは、前記振込システムを利用するために前記ユーザ端末に入力された振込データであってもよい。
上記目的を達成するため、本発明の第2の観点に係るネットワークサービス提供装置は、
ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させる2次元コード表示制御部と、
前記2次元コードを読み取った携帯端末から送信された入力データを取得するデータ取得部と、
前記データ取得部が取得した入力データを用いて、前記ネットワークサービスを実行するサービス実行部と、
を備える。
前記データ取得部が取得した入力データを送信元の携帯端末に送信する入力データ送信部と、
前記入力データ送信部により入力データを送信した携帯端末からの確認通知を受信する確認通知受信部と、を備え、
前記サービス実行部は、前記入力データ送信部による前記入力データの送信から、所定時間以内に、前記確認通知受信部が確認通知を受信した場合に、前記ネットワークサービスを実行してもよい。
前記確認通知は、前記携帯端末からの電話着信であってもよい。
上記目的を達成するため、本発明の第3の観点に係るデータ改竄検知方法は、
コンピュータが、
ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させ、
前記2次元コードを読み取った携帯端末から送信された入力データを取得し、
前記ユーザ端末から入力データを取得し、
前記携帯端末から取得した入力データと前記ユーザ端末から取得した入力データとが一致しない場合に、前記ユーザ端末に入力された入力データは改竄されていると判別する。
上記目的を達成するため、本発明の第4の観点に係るネットワークサービス提供方法は、
ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させ、
前記2次元コードを読み取った携帯端末から送信された入力データを取得し、
取得した入力データを用いて、前記ネットワークサービスを実行する。
上記目的を達成するため、本発明の第5の観点に係るプログラムは、
コンピュータを、
ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させる2次元コード表示制御部、
前記2次元コードを読み取った携帯端末から送信された入力データを取得する第1データ取得部、
前記ユーザ端末から入力データを取得する第2データ取得部、
前記第1データ取得部が取得した入力データと前記第2データ取得部が取得した入力データとが一致しない場合に、前記ユーザ端末に入力された入力データは改竄されていると判別する改竄検知部、
として機能させる。
上記目的を達成するため、本発明の第6の観点に係るプログラムは、
コンピュータを、
ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させる2次元コード表示制御部、
前記2次元コードを読み取った携帯端末から送信された入力データを取得するデータ取得部、
前記データ取得部が取得した入力データを用いて、前記ネットワークサービスを実行するサービス実行部、
として機能させる。
本発明によれば、ネットワークサービスにおける入力データの改竄を検知することができる。また、本発明によれば、入力データが改竄されることのないネットワークサービスを提供することができる。
本発明の実施形態に係る振込システムの全体構成を示す図である。 サーバの構成を示すブロック図である。 ユーザDBに記憶されている情報の例を示す図である。 トランザクションDBに記憶されている情報の例を示す図である。 ユーザ端末の構成を示すブロック図である。 携帯端末の構成を示すブロック図である。 本発明の実施形態に係る振込システムの動作を説明するためのフローチャート(その1)である。 本発明の実施形態に係る振込システムの動作を説明するためのフローチャート(その2)である。 本発明の実施形態に係る振込システムの動作を説明するためのフローチャート(その3)である。 振込データ入力画面の例を示す図である。 QRコード表示処理の動作を説明するためのフローチャートである。 QRコードに記録されるURLの例を示す図である。 QRコードを表示した振込データ入力画面の例を示す図である。 携帯端末に表示される振込データ確認画面の例を示す図である。 本発明の実施形態に係る振込システムの動作の別例を説明するためのフローチャートである。
以下、本発明の実施形態について図面を参照しながら詳細に説明する。なお、図中、同一または同等の部分には同一の符号を付す。
図1は、本発明の実施形態に係る振込システムの全体構成を示す図である。この振込システムは、サーバ10と、この振込システムを利用するユーザのユーザ端末20と、携帯端末30と、を備える。サーバ10と各ユーザ端末20および各携帯端末30は、インターネット40を介して互いに通信可能に接続されている。また、サーバ10と各携帯端末30とは、電話網50を介して通話や通信可能に接続されている。
サーバ10は、本発明のデータ改竄検知装置、及びネットワークサービス提供装置に相当する。サーバ10は、例えば銀行の管理サーバであり、ユーザがユーザ端末20に入力した振込みデータに基づいて、当該銀行の口座から指定された口座に金額を振り込むための振込処理を実施する。また、サーバ10は、この振込処理の実施に先立って、MITBや中間者攻撃等により、ユーザが入力した振込データが改竄されているか否かを判別し、改竄されていると判別した場合は振込処理を実行しない。
続いて、サーバ10の構成について説明する。サーバ10は、例えば、PCサーバやメインフレームなどであり、図2に示すように、通信部11と、電話通信部12と、記憶部13と、制御部14と、を備える。なお、サーバ10は、1台のコンピュータから構成されていてもよいし、複数台のコンピュータから構成されていてもよい。例えば、サーバ10は、ユーザの認証処理(ログイン)や振込データの改竄検知を主に実行する認証サーバと、認証後のユーザに対して振込処理を実行するWebサーバと、から構成されてもよい。
通信部11は、制御部14の制御の下、インターネット40を介して、各ユーザ端末20や携帯端末30とデータ通信を行う。通信部11は、例えば、通信コネクタなどの通信インタフェースを備える。
電話通信部12は、制御部14の制御の下、電話網50を介して、各携帯端末30と通話やデータ通信を行う。電話通信部12は、例えば、電話回線接続装置などの通信インタフェースを備える。
記憶部13は、例えば、ハードディスクドライブなどであり、サーバ10が動作するために必要な各種のデータを記憶する。例えば、記憶部13は、ユーザDB(データベース)131と、トランザクションDB132と、QRコード表示用アプレット133と、振込データ取得用アプレット134と、を備える。
ユーザDB131には、振込サービスを利用可能なユーザ毎に、該ユーザに関する各種の情報が記憶される。具体的には、図3に示すように、ユーザDB131には、ユーザ毎に、ユーザID、氏名、パスワード、口座情報、携帯電話番号等が記憶される。
ユーザIDは、ユーザを一意に識別するためのIDである。パスワードは、ユーザが振込処理を開始する際のユーザ認証に利用される。口座情報は、ユーザが所有する口座を特定する情報である。携帯電話番号は、ユーザの携帯端末30の電話番号である。
図2に戻り、トランザクションDB132には、ユーザからの振込依頼(QRコード作成要求)を受信する度に作成されるトランザクションデータが記憶される。具体的には、図4に示すように、トランザクションDB132には、依頼ID、ワンタイムID、暗号復号化キー、携帯電話番号、ステータス、振込データ等から構成されるトランザクションデータが記憶される。
依頼IDは、トランザクションデータを一意に識別するためのIDである。ワンタイムIDは、振込データとともにQRコード(登録商標)に記録される一時的なIDである。例えば、ワンタイムIDは、32桁のランダムな文字列である。暗号復号化キーは、振込データを暗号化及び復号化するためのキー情報である。例えば、暗号復号化キーは、16桁のランダムな文字列である。ステータスは、このトランザクションデータに対応する処理の進捗状況を示す。
図2に戻り、QRコード表示用アプレット133は、ユーザ端末20に送信されて実行されるJAVAアプレットである。QRコード表示用アプレット133が実行されることにより、ユーザ端末20に入力された振込データをサーバ10に送信するためのURLが記録されたQRコードが作成されて、ユーザ端末20に表示される。
振込データ取得用アプレット134は、ユーザ端末20に送信されて実行されるJAVAアプレットである。振込データ取得用アプレット134が実行されることにより、ユーザ端末20に入力された振込データが、インターネット40を介して、サーバ10に送信される。
制御部14は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等(何れも図示せず)を備え、CPUが、RAMをワークメモリとして用い、ROMや記憶部13に記憶されている各種プログラムを適宜実行することにより、サーバ10の全体を制御する。
また、制御部14は、振込処理を開始する際に、ユーザ端末20に入力された振込データが改竄されていないか否かを判別する処理を行う。制御部14が行うこの処理の詳細については後述する。
図1に戻り、続いて、ユーザ端末20について説明する。ユーザ端末20は、例えば、一般的なPCであり、インターネット40を介して、サーバ10に接続される。ユーザは、ユーザ端末20から、サーバ10が提供する振込サービスを利用することができる。ユーザ端末20は、図5に示すように、通信部21と、入力部22と、表示部23と、記憶部24と、制御部25と、を備える。
通信部21は、通信インタフェースを備え、制御部25の制御の下、インターネット40を介して、サーバ10とデータ通信を行う。
入力部22は、キーボードやマウス等から構成され、ユーザ端末20に様々な情報を入力するために使用される。例えば、ユーザは、入力部22を操作して、ログインするために必要なユーザIDやパスワードを入力したり、振込処理に必要な口座番号や金額等の振込データを入力する。
表示部23は、例えば液晶ディスプレイ等であり、制御部25の制御の下、様々な情報を出力する。例えば、表示部23には、後述するログイン画面や振込データ入力画面が表示される。
記憶部24は、例えば、ハードディスクトライブであり、ユーザ端末20が動作するために必要な各種のデータを記憶する。また、記憶部24には、サーバ10から送信されたJAVAアプレット(QRコード表示用アプレット133,振込データ取得用アプレット134)が一時的に記憶される。
制御部25は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等(何れも図示せず)を備え、CPUが、RAMをワークメモリとして用い、ROMや記憶部24に記憶されている各種プログラムを適宜実行することにより、ユーザ端末20の全体を制御する。
続いて、図1に戻り、携帯端末30について説明する。携帯端末30は、例えば、携帯電話やスマートフォンであり、インターネット40および電話網50を介してサーバ10に接続される。携帯端末30は、ユーザ端末20に入力された振込データが改竄されていないかを判別するために利用される。携帯端末30は、図6に示すように、通信部31と、電話通信部32と、入力部33と、表示部34と、2次元コード読取部35と、記憶部36と、制御部37と、を備える。
通信部31は、制御部37の制御の下、インターネット40を介して、サーバ10とデータ通信を行う。通信部31は、例えば、通信コネクタなどの通信インタフェースを備える。
電話通信部32は、制御部37の制御の下、電話網50を介して、サーバ10と通話やデータ通信を行う。
入力部33は、例えばタッチパネル等であり、携帯端末30に様々な情報を入力するために使用される。例えば、ユーザは、入力部33を操作して、サーバ30に電話発信するための操作を行う。
表示部34は、例えば液晶ディスプレイ等であり、制御部37の制御の下、様々な情報を出力する。例えば、表示部34には、サーバ10から受信した振込データが表示される。
2次元コード読取部35はカメラ等を備え、QRコード等の2次元コードに記録された情報を読み取り、制御部37に出力する。なお、2次元コード読取部35は、一般的な携帯電話やスマートフォンに標準で搭載されている。
記憶部36は、例えば、フラッシュメモリであり、携帯端末30が動作するために必要な各種のデータを記憶する。
制御部37は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等(何れも図示せず)を備え、CPUが、RAMをワークメモリとして用い、ROMや記憶部36に記憶されている各種プログラムを適宜実行することにより、携帯端末30の全体を制御する。
続いて、上述した振込システムの動作について、図7〜9のフローチャートを用いて説明する。
振込サービスを利用したいユーザは、ユーザ端末20の入力部22を操作して、振込サービス開始用のログイン画面を表示部23に表示させる。そして、ユーザは、入力部22を操作して、ログイン画面に自分のユーザIDとパスワードとを入力し、ログイン画面のログインボタンをクリックする。ログインボタンがクリックされると、制御部25は、入力されたユーザIDとパスワードとを含んだログイン要求をサーバ10に送信する(ステップS101)。
ログイン要求を受信すると、サーバ10の制御部14は、このログイン要求に含まれるユーザIDとパスワードとを用いて、ユーザが振込サービスを利用可能であることを確認するユーザ認証を行う(ステップS102)。具体的には、制御部14は、受信したログイン要求に含まれるユーザIDとパスワードとを含むレコードがユーザDB131に登録されていることを確認してユーザ認証を行えばよい。なお、ユーザDB131に該当するレコードが登録されていない場合、ユーザ認証は不成功となりエラーとして処理は終了する。
ユーザ認証に成功するとサーバ10の制御部14は、メニュー画面をユーザ端末20に送信し(ステップS103)、ユーザ端末20の表示部23にはメニュー画面が表示される(ステップS104)。ユーザは、ユーザ端末20の入力部22を操作してメニュー画面のメニューから振込処理を選択し、制御部25は、図10に示すような振込データ入力画面を表示部23に表示させる(ステップS105)。なお、図10に示す振込データ入力画面では、既に振込データが入力されている状態である。
続いて、ユーザは、ユーザ端末20の入力部22を操作して、振込データ入力画面から振込先の銀行名や口座番号や振込金額等の振込データを入力し、入力完了ボタンをクリックする。このクリック動作に応じて、ユーザ端末20の制御部25は、QRコード作成要求をサーバ10に送信する(ステップS106)。なお、このQRコード作成要求には、ユーザのユーザIDは含まれているものの、入力された振込データは含まれていない。
QRコード作成要求を受信すると、サーバ10の制御部14は、今回の処理に対応するトランザクションデータを生成し、トランザクションDB132に登録する(ステップS107)。なお、この処理で生成されるトランザクションデータのステータスは、処理開始を表す「1」とする。また、生成されるトランザクションデータの携帯電話番号は、ユーザDB131を参照して対応するユーザ(ユーザID)の携帯電話番号を取得すればよい。なお、この処理で生成されるトランザクションデータの振込データは空である。
トランザクションデータの生成が完了すると、サーバ10の制御部14は、QRコード表示用アプレット133を、QRコード作成要求の送信元であるユーザ端末20に送信して実行させる(ステップS108)。
ユーザ端末20の制御部25は、サーバ10から受信したQRコード表示用アプレット133を実行し、当該アプレットで規定されている処理を実行する。即ち、制御部25は、QRコード表示用アプレット133の処理により、振込データ入力画面に入力された振込データをサーバ10に送信するためのURL(Uniform Resource Locator)を記録したQRコードを作成して表示部23に表示させるQRコード表示処理を実行する(ステップS109)。なお、JAVAアプレットの仕様により、QRコード表示用アプレット133を実行する際、サーバ10の管理者の電子証明書が付された確認ダイアログがユーザ端末20の表示部23にポップアップ表示され、ユーザからの確認操作(例えば、OKボタンのクリック)を待たなければ、QRコード表示用アプレット133は実行されない。
ここで、ステップS109のQRコード表示処理の詳細について、図11のフローチャートを参照して説明する。
まず、ユーザ端末20の制御部25は、サーバ10の記憶部13のトランザクションDB132に情報取得依頼を送信し、ステップS107で作成して登録したトランザクションデータからワンタイムIDと暗号復号化キーとを取得する(ステップS21)。
続いて、制御部25は、取得した暗号復号化キーを用いて、振込データ入力画面に入力されている振込データを暗号化する(ステップS22)。
続いて、制御部25は、暗号化した振込データと取得したワンタイムIDとをサーバ10に通知するためのURLを作成する(ステップS23)。図12に作成されるURLの例を示す。この例では、サーバ10アクセス用のURLに、暗号化した振込データとワンタイムIDとがパラメータv1,v2として付されたURLが作成されている。
図11に戻り、ユーザ端末20の制御部25は、公知の手法により、作成したURLを記録したQRコードを作成し、図13に示すように振込データ入力画面に表示する(ステップS24)。なお、このとき制御部25は、図10に示す振込データ入力画面に表示されていた「入力完了」ボタンを消去するとともに、表示されているメッセージもQRコードの読み取りを促すメッセージに変更する。
図11に戻り、QRコードの表示が完了するとユーザ端末20の制御部25は、QRコード表示完了通知をサーバ10に送信する(ステップS25)。以上でQRコード表示処理は終了する。
図7に戻り、その後、ユーザは、QRコード表示処理によってユーザ端末20の表示部23の振込データ入力画面に表示されたQRコードに携帯端末30の2次元コード読取部35を近接させるとともに、入力部33を操作して、QRコード読取用のアプリケーションの起動を指示する。この指示に応答して、2次元コード読取部35は、近接されたQRコードを撮像してその画像データを解析し、記録されているURLを読み取る(ステップS110)。そして、携帯端末30の制御部37は、インターネット40を介して、2次元コード読取部35が読み取ったURLでサーバ10にアクセスする(図8、ステップS111)。
サーバ10の制御部14は、アクセスのあったURLのパラメータから、暗号化された振込データとワンタイムIDとを取得する(ステップS112)。そして、制御部14は、取得したワンタイムIDがトランザクションDB132に登録されているか否かを判別する(ステップS113)。
ワンタイムIDが登録されていない場合(ステップS113;No)、サーバ10の制御部14は、エラーとして処理を終了する。一方、ワンタイムIDが登録されている場合(ステップS113;Yes)、制御部14は、当該ワンタイムIDを有するトランザクションデータをトランザクションDB132から取得する(ステップS114)。
続いて、サーバ10の制御部14は、取得したトランザクションデータに含まれる暗号複合化キーを用いて、ステップS112で取得した暗号化された振込データを復号化し(ステップS115)、トランザクションDB132内のこのトランザクションデータに格納する(ステップS116)。
続いて、サーバ10の制御部14は、ユーザ端末20に振込データ取得用アプレット134を送信して実行させる(ステップS117)。ユーザ端末20の制御部25は、この振込データ取得用アプレット134の処理により、インターネット40を介して、振込データ入力画面に入力されている振込データをサーバ10に送信する(図9、ステップS118)。
サーバ10の制御部14は、ユーザ端末20から振込データを受信すると、この振込みデータが、ステップS115〜S116で復号化してトランザクションDB132内のトランザクションデータに格納した振込データ(即ち、携帯端末30から取得した振込データ)と一致するかどうかを判別する(ステップS119)。なお、制御部14は、公知の手法により、両振込データからハッシュ値を生成し、ハッシュ値が一致することを確認してもよい。
振込データが不一致の場合(ステップS119;No)、振込データは改竄されていることがわかり、サーバ10の制御部14は、その旨をユーザ端末20に通知し、エラーとして処理を終了する。一方、振込データが一致する場合(ステップS119;Yes)、ユーザ端末20から受信した振込データは改竄されていないことがわかり、サーバ10の制御部14は、この振込データを、URLでのアクセスのあった携帯端末30に返信する(ステップS120)。
そして、携帯端末30の制御部37は、図14に示すように、サーバ10から返信された振込データを表示部34に表示する(ステップS121)。ユーザは、携帯端末30の表示部34に表示されている振込データと、ユーザ端末20の表示部23の振込データ入力画面に表示されている振込データ(図13)とが一致することを確認し、一致する場合は、画面下の電話番号部分(03−1234−5678)をクリックする。なお、この電話番号は、サーバ10の自局電話番号を表す。電話番号がクリックされると、携帯端末30の制御部37は、振込処理開始の確認通知として、電話網50を介して、サーバ10に電話発信する(図9、ステップS122)。なお、この処理は、サーバ10に携帯端末30の発信者番号を通知するためである。そのため、サーバ10の制御部14は、着信した番号を検出した後、すぐに着信した電話を切断する(所謂ワン切りする)。
サーバ10の制御部14は、ステップS120で振込データを送信(返信)してから所定時間以内(例えば、5分以内)に携帯端末30からの確認通知があることを確認する(ステップS123)。具体的には、制御部14は、ステップS107で生成したトランザクションデータに含まれる携帯電話番号による着信が、所定時間以内になされたことを確認すればよい。なお、所定時間以内にこの携帯端末30から着信が無かった場合、制御部14は、エラーとして処理を終了する。
一方、所定時間以内に携帯端末30からの確認通知(着信)があった場合、サーバ10の制御部14は、ユーザDB131の口座情報が示すユーザの口座から、ユーザ端末20から受信した振込データが示す指定口座に指定金額を振り込む振込処理を開始する(ステップS124)。なお、この振込処理は、外部の銀行サーバ等が行ってもよい。
続いて、振込処理が完了すると、サーバ10の制御部14は、対応するトランザクションデータをトランザクションDB132から削除するとともに、振込処理の完了をユーザ端末20に通知する(ステップS125)。そして、ユーザ端末20の制御部25は、表示部23に振込処理完了画面を表示する(ステップS126)。以上で振込処理は終了する。
このように、本実施形態によれば、サーバ10は、ユーザ端末20に、入力された振込データを取得するためのURLを記録した2次元コード(QRコード)を作成して表示させる。そして、サーバ10は、このQRコードを読み取った携帯端末30から送信された振込データを、ユーザ端末20から送信された振込データと比較して、不一致の場合は振込データが改竄されたと判別する。このため、振込システム等のネットワークサービスにおける振込データ(入力データ)の改竄を確実に検知することが可能となる。
さらに、本実施形態によれば、この2次元コードは、サーバ10がユーザ端末20に送信して実行させるJAVAアプレット(QRコード表示用アプレット133)の処理によって作成される。JAVAアプレットは、サンドボックスと呼ばれる強力なセキュリティ機構を持ち、実行の際には電子証明書が付された確認ダイアログが表示されるため、JAVAアプレットの処理によって作成されるQRコードが改竄される可能性は極めて低い。従って、このQRコードを読み取った携帯端末30から送信された振込データは、改竄の虞が無い、画面に入力された振込データの内容そのものであり、ユーザ端末20から取得した振込データと比較することで、確実に改竄を検知することが可能となる。
さらに、本実施形態によれば、QRコードを読み取った携帯端末30から送信される振込データは暗号化されている。そのため、第三者によってこのQRコードが読み取られたとしても、振込データが漏洩する虞も無く、高いセキュリティを確保することができる。
さらに、本実施形態によれば、サーバ10は、ユーザの携帯端末30に振込データを送信するため、ユーザの目視によっても振込データの改竄が無いことを確認することができる。また、振込データの確認をしたユーザの携帯端末30からの着信(確認通知)があった場合にのみ、振込処理を開始するため、不正に入手したユーザIDとパスワードとを用いた成りすましも防止することが可能となる。
(変形例)
なお、上述した実施形態は一例であり、種々の変更及び応用が可能である。
例えば、上記実施形態に係る振込システムでは、QRコードを読み取った携帯端末30から送信された振込データとユーザ端末20から送信された振込データとを比較し、一致する場合に振込データは改竄されていないものとして、振込処理を行った。しかしながら、QRコード経由で携帯端末30から取得した振込データは改竄の虞が無いため、このような比較を行わずに、携帯端末30から取得した振込データを直接用いて振込処理を行ってもよい。
ここで、この場合の振込システムの動作について説明する。ユーザ端末20がサーバ10にログイン要求を送信し、サーバ10がQRコード表示用アプレット133を送信してユーザ端末20にQRコードを表示させ、このQRコードを読み取ったユーザ端末20から送信されたデータを復号化して振込データを取得するステップS101〜S115までの処理は、これまでに述べた動作(図7,8)と同様である。
続いて、図15に示すように、サーバ10の制御部14は、ステップS115で復号化した振込データを、URLでのアクセスのあった携帯端末30に返信する(ステップS201)。
そして、携帯端末30の制御部37は、図14に示すように、サーバ10から返信された振込データを表示部34に表示する(ステップS202)。なお、この処理は、図9のステップS121と実施的に同じ処理である。
続いて、ユーザは、携帯端末30の表示部34に表示されている振込データと、ユーザ端末20の表示部23の振込データ入力画面に表示されている振込データ(図13)とが一致することを確認し、一致する場合は、振込処理開始の確認通知として、画面下の電話番号部分(03−1234−5678)をクリックし、携帯端末30の制御部37は、電話網50を介して、サーバ10に電話発信する(図9、ステップS203)。なお、この処理は、図9のステップS122と実施的に同じ処理である。
サーバ10の制御部14は、ステップS201で振込データを送信(返信)してから所定時間以内(例えば、5分以内)に携帯端末30からの確認通知(着信)があることを確認する(ステップS204)。なお、この処理は、図9のステップS123と実施的に同じ処理である。
そして、所定時間以内に携帯端末30からの確認通知(着信)があった場合、サーバ10の制御部14は、ユーザDB131の口座情報が示すユーザの口座から、携帯端末30から受信してステップS115で復号化した振込データが示す指定口座に指定金額を振り込む振込処理を開始する(ステップS205)。そして、振込処理が完了すると、制御部14は、その旨をユーザ端末20に通知し(ステップS206)、ユーザ端末20の制御部25は、表示部23に振込処理完了画面を表示する(ステップS207)。以上で振込処理は終了する。
このように、ユーザ端末20からは振込データを取得しないで、QRコード経由で携帯端末30から取得したデータを直接用いて振込処理を行うため、より処理を短縮することが可能となる。
また、上記実施形態では、振込データ取得用アプレット134を送信して実行させることにより、インターネット40を介して、サーバ10がユーザ端末から振込データを取得した(図8,図9のステップS117,S118)。しかしながら、図7のステップS106で、QRコード作成要求とともに、振込データ入力画面に入力された振込データをサーバ10に送信してもよい。若しくは、振込データ入力画面に振込データが入力される度に、振込データをサーバ10に送信するようにしてもよい。このようにすることで、サーバ10は、振込データ取得用アプレット134を用いずにユーザ端末20から振込データを取得できるため、処理を短縮することが可能となる。
また、上記実施形態では、振込システムにおける振込データの改竄の検知について説明した。しかしながら、本発明は、他のネットワークサービスおける入力データの改竄の検知にも適用可能である。例えば、インターネット40を利用したチケット予約システムにおけるユーザが入力した予約データの改竄の検知にも、同様に本発明は適用可能である。
また、上記実施形態では、サーバ10がJAVAアプレット(QRコード表示用アプレット133)をユーザ端末20に送信して実行させることによりQRコードを作成したが、JAVAアプレット以外の他のアプレットやプログラムを送信して実行させてもよい。
また、上記実施形態では、サーバ10は、振込データを送信するためのURLを記録したQRコードをユーザ端末20に表示させたが、QRコードの代わりに、URLを記録したCPコードやSemaコード等といった他の2次元コードを表示させてもよい。
本実施形態に係るサーバ10は、専用のシステムにより実現してもよいし、通常のコンピュータシステムにより実現してもよい。例えば、上述の動作を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に格納して配布し、該プログラムをコンピュータにインストールして、上述の処理を実行することによってサーバ10を構成してもよい。また、上記プログラムをインターネット等のネットワーク上のサーバ装置が備えるディスク装置に格納しておき、コンピュータにダウンロード等できるようにしてもよい。また、上述の機能を、OSとアプリケーションソフトとの協働により実現してもよい。この場合には、OS以外の部分を媒体に格納して配布してもよいし、OS以外の部分をサーバ装置に格納しておき、コンピュータにダウンロード等できるようにしてもよい。
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
本発明は、ネットバンキング等のシステムに好適に利用される。
サーバ 10,20 ユーザ端末、30 携帯端末、40 インターネット、50 電話網、11,21,31 通信部、12,32 電話通信部、13,24,36 記憶部、131 ユーザDB、132 トランザクションDB、133 QRコード表示用アプレット、134 振込データ取得用アプレット、14,25,37 制御部、22,33 入力部、23,34 表示部、35 2次元コード読取部

Claims (6)

  1. ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させる2次元コード表示制御部と、
    前記2次元コードを読み取った携帯端末から送信された入力データを取得する第1データ取得部と、
    前記ユーザ端末から入力データを取得する第2データ取得部と、
    前記第1データ取得部が取得した入力データと前記第2データ取得部が取得した入力データとが一致しない場合に、前記ユーザ端末に入力された入力データは改竄されていると判別する改竄検知部と、
    を備えるデータ改竄検知装置。
  2. 前記2次元コード表示制御部は、前記ユーザ端末に前記2次元コードを作成するためのJAVAアプレットを送信して実行させることにより、該2次元コードを表示させる、
    請求項1に記載のデータ改竄検知装置。
  3. 前記2次元コード表示制御部は、前記入力データを暗号化して送信するためのURLを記録した2次元コードを前記ユーザ端末に表示させ、
    前記第1データ取得部は、暗号化された入力データを復号化する、
    請求項1又は2に記載のデータ改竄検知装置。
  4. 前記ネットワークサービスは振込システムであり、
    前記入力データは、前記振込システムを利用するために前記ユーザ端末に入力された振込データである、
    請求項1から3の何れか1項に記載のデータ改竄検知装置。
  5. コンピュータが、
    ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させ、
    前記2次元コードを読み取った携帯端末から送信された入力データを取得し、
    前記ユーザ端末から入力データを取得し、
    前記携帯端末から取得した入力データと前記ユーザ端末から取得した入力データとが一致しない場合に、前記ユーザ端末に入力された入力データは改竄されていると判別する、
    データ改竄検知方法。
  6. コンピュータを、
    ネットワークサービスを利用するためにユーザ端末に入力された入力データを送信するためのURL(Uniform Resource Locator)を記録した2次元コードを該ユーザ端末に表示させる2次元コード表示制御部、
    前記2次元コードを読み取った携帯端末から送信された入力データを取得する第1データ取得部、
    前記ユーザ端末から入力データを取得する第2データ取得部、
    前記第1データ取得部が取得した入力データと前記第2データ取得部が取得した入力データとが一致しない場合に、前記ユーザ端末に入力された入力データは改竄されていると判別する改竄検知部、
    として機能させるプログラム。
JP2016534022A 2014-07-15 2014-07-15 データ改竄検知装置、データ改竄検知方法、及びプログラム Active JP6307610B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/068815 WO2016009497A1 (ja) 2014-07-15 2014-07-15 データ改竄検知装置、ネットワークサービス提供装置、データ改竄検知方法、ネットワークサービス提供方法、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2016009497A1 JPWO2016009497A1 (ja) 2017-05-25
JP6307610B2 true JP6307610B2 (ja) 2018-04-04

Family

ID=55078018

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016534022A Active JP6307610B2 (ja) 2014-07-15 2014-07-15 データ改竄検知装置、データ改竄検知方法、及びプログラム

Country Status (2)

Country Link
JP (1) JP6307610B2 (ja)
WO (1) WO2016009497A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6437610B1 (ja) * 2017-09-25 2018-12-12 圭 江尻 アクセス認証システム
JP6836002B1 (ja) * 2020-07-20 2021-02-24 セイコーソリューションズ株式会社 認証システム、認証システムの制御方法及び認証装置
CN115708339B (zh) * 2021-08-20 2024-03-12 清华大学 数据处理方法、装置和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006048464A (ja) * 2004-08-06 2006-02-16 Toshiba Corp コンテンツデータ配信システム、コンテンツデータ配信方法及商品販売方法
US7021534B1 (en) * 2004-11-08 2006-04-04 Han Kiliccote Method and apparatus for providing secure document distribution
JP2009098702A (ja) * 2007-10-12 2009-05-07 Tetsuichiro Sasada 情報登録システム、情報登録方法、サーバーコンピュータ、及びコンピュータプログラム
WO2010066304A1 (en) * 2008-12-12 2010-06-17 Nec Europe Ltd. Universal mobile verifier
JP2011204169A (ja) * 2010-03-26 2011-10-13 Nomura Research Institute Ltd 認証システム、認証装置、認証方法および認証プログラム
JP2014106593A (ja) * 2012-11-26 2014-06-09 International Business Maschines Corporation 取引認証方法、及びシステム

Also Published As

Publication number Publication date
WO2016009497A1 (ja) 2016-01-21
JPWO2016009497A1 (ja) 2017-05-25

Similar Documents

Publication Publication Date Title
US10904234B2 (en) Systems and methods of device based customer authentication and authorization
US11361065B2 (en) Techniques for authentication via a mobile device
EP3420677B1 (en) System and method for service assisted mobile pairing of password-less computer login
US11494754B2 (en) Methods for locating an antenna within an electronic device
US9813400B2 (en) Computer-implemented systems and methods of device based, internet-centric, authentication
US9338156B2 (en) System and method for integrating two-factor authentication in a device
US20160162875A1 (en) Login using qr code
WO2016107333A1 (zh) 一种在线激活移动终端令牌的设备和系统的工作方法
JP6691262B2 (ja) グラフィックコード情報を提供及び取得する方法及び装置並びに端末
CN111628871B (zh) 一种区块链交易处理方法、装置及电子设备和存储介质
CN113553572B (zh) 资源信息获取方法、装置、计算机设备和存储介质
JP6307610B2 (ja) データ改竄検知装置、データ改竄検知方法、及びプログラム
KR20190111006A (ko) 인증 서버, 인증 시스템 및 방법
JP5991143B2 (ja) 情報処理装置、システム及び情報登録方法
JP7079528B2 (ja) サービス提供システム及びサービス提供方法
JP6325654B2 (ja) ネットワークサービス提供装置、ネットワークサービス提供方法、及びプログラム
US20150381622A1 (en) Authentication system, authentication method, authentication apparatus, and recording medium
JP5584102B2 (ja) 認証システム、クライアント端末、サーバ、被認証方法、認証方法、認証クライアントプログラム、及び認証サーバプログラム
CN114640460B (zh) 一种应用程序中的用户登录方法、装置、设备及介质
JP6975621B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP2016163198A (ja) ファイル管理装置、ファイル管理システム、ファイル管理方法及びファイル管理プログラム
TWI633231B (zh) Smart lock and smart lock control method
JP4717356B2 (ja) 情報処理デバイス及びそれを用いた情報処理方法並びに情報処理プログラム
JP2008243135A (ja) サービス提供システム、および、サービス提供システムにおける登録方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180312

R150 Certificate of patent or registration of utility model

Ref document number: 6307610

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250