JP6576017B2 - サーバ装置 - Google Patents

サーバ装置 Download PDF

Info

Publication number
JP6576017B2
JP6576017B2 JP2013246295A JP2013246295A JP6576017B2 JP 6576017 B2 JP6576017 B2 JP 6576017B2 JP 2013246295 A JP2013246295 A JP 2013246295A JP 2013246295 A JP2013246295 A JP 2013246295A JP 6576017 B2 JP6576017 B2 JP 6576017B2
Authority
JP
Japan
Prior art keywords
data
unit
terminal
server
fake
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
JP2013246295A
Other languages
English (en)
Other versions
JP2015106728A (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.)
MUFG Bank Ltd
Original Assignee
MUFG Bank Ltd
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 MUFG Bank Ltd filed Critical MUFG Bank Ltd
Priority to JP2013246295A priority Critical patent/JP6576017B2/ja
Publication of JP2015106728A publication Critical patent/JP2015106728A/ja
Application granted granted Critical
Publication of JP6576017B2 publication Critical patent/JP6576017B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、中間者攻撃などに対して耐性を有する通信システムを構成するサーバおよび端末などに関する。
インターネットなどの通信技術が発達し、実際に遠隔地に赴かなくてもサービスの提供を受けられるようになってきた。例えば、インターネットバンキングが利用可能となり、預金者などは実際に銀行の支店に赴かなくても、残高照会、振込、振替、各種サービスの申し込みがインターネットバンキングを用いて自宅などから行えるようになってきた。
一方、インターネットなどによる通信に関与し、不正を行う手法も発達してきている。例えば、Man in the Browser攻撃やMan in the Middle攻撃などの中間者攻撃が知られている。中間者攻撃は、通信の途中に割り込み、通信に関するデータを改ざんしてサーバや端末に転送する手法である。例えば、利用者がインターネットバンキングを利用している場合、利用者が振込先として指定した口座番号などを改ざんし、不正な振込先に書き換えてインターネットバンキングのサーバに転送する。
このような中間者攻撃の存在を検出する技術として、例えば特許文献1が知られている。
米国特許第7721333号明細書 米国特許第8370899号明細書
しかしながら、特許文献1のように中間者攻撃の存在が検出できたとしても、安全な通信を行うことができない。そこで、本願発明は、中間者攻撃が存在したとしても、より安全に通信を行う技術を提供する。
本発明の一実施形態として、端末装置から送信され、前記端末装置の利用者により入力された真正なデータおよび前記端末装置によって生成された、前記真正なデータと同じ属性の偽のデータを受信するデータ受信部と、前記データ受信部により受信された真正なデータおよび偽のデータから、特定の送信順序により真正なデータを選択するデータ選択部を有する、サーバ装置が提供される。
本発明の一実施形態として、端末装置により入力されたデータを受け付けるデータ受付部と、前記データ受付部により受け付けられた真正なデータに、前記端末装置により生成された偽のデータを付加するデータ付加部と、前記データ受付部により受け付けられたデータと前記データ付加部によりデータ付加部により付加された偽のデータを、各々区別が可能なデータとして送信するデータ送信部と、を有する端末装置が提供される。
本発明の一実施形態として、コンピュータを、端末装置により入力されたデータを受け付けるデータ受付部と、前記データ受付部により受け付けられた真正なデータに、前記端末装置により生成された偽のデータを付加するデータ付加部と、前記データ受付部により受け付けられたデータと前記データ付加部によりデータ付加部により付加された偽のデータを、各々区別が可能なデータとして送信するデータ送信部として機能させるためのプログラムが提供される。
本願発明によれば、中間者攻撃が存在したとしても、より安全に通信を行うことができる。
本発明の一実施形態に係る通信システムの機能ブロック図である。 本発明の一実施形態に係る通信システムの端末における画面遷移の一例図である。 本発明の一実施形態に係る通信システムにより送受信されるデータの一例図である。 本発明の一実施形態に係る通信システムの処理のシーケンス図である。 本発明の一実施形態に係る通信システムの端末の処理のフローチャートである。 本発明の一実施形態に係る通信システムのサーバの処理のフローチャートである。 本発明の一実施形態に係る通信システムの機能ブロック図である。
以下、本発明を実施するための形態について、いくつかの実施形態として説明する。なお、本発明はこれらの実施形態を種々に変形して実施することが可能である。したがって、本発明は、これらの実施形態に限定して解釈されることはない。
(実施形態1)
図1は、本発明の実施形態1に係る通信システムの機能ブロック図である。通信システム100は、端末101とサーバ102とを備え、端末101とサーバ102とは、インターネットなどの通信網10を介して通信を行うことができる。なお、図1においては、端末101として端末が1台のみ示されているが、任意の台数の端末がサーバ102と通信網10などを介して通信を行うことができるようになっていてもよい。また、図1においては、サーバ102としてサーバが1台のみ示されているが、サーバ102の機能を複数台のサーバにより分担するなどして任意の台数のサーバによって実現する構成であってもよい。
端末101は、フィールドデータ受付部104と、偽フィールドデータ追加部105と、フィールドデータ送信部106とを含むブラウザ部103を有する。一般的には、端末101はパーソナルコンピュータ、スマートフォーンなどの通信機器であり、端末101の利用者はブラウザを端末101で動作させて、サーバ102と通信を行うので、端末101で動作するブラウザを、ブラウザ部103としている。ただし、ブラウザ部103は、ブラウザに限定されることはなく、サーバ102と通信を行うための専用プログラムであってもよい。
フィールドデータ受付部104は、フィールドに入力されたデータを受け付ける。ここにフィールドとは、情報を入力するためにブラウザなどによりディスプレイに表示される入力エリアである。例えば、文字列情報を入力するためのテキストエリア、選択を入力するためのラジオボタンなどが入力エリアの例である。
より具体的には、フィールドデータ受付部104は、例えばテキストエリアに文字列として入力された振込金額を受け付ける。また、別の例として、普通預金口座または当座預金口座を指定するためのラジオボタンなどによる選択を受け付ける。
また、フィールドデータ受付部104は、ディスプレイに表示されているリンクに対するマウスなどによる選択が行われたかどうかを受け付けることもできるとしてもよい。また、ボタンをフィールドとみなし、ボタンが押下されたこと、あるいは、ボタンの上にマウスカーソルが位置したことをボタンというフィールドに対する入力としてもよい。
なお、入力エリアやリンクなどのフィールドは、ディプレイに表示される画面内に表示することができる。この場合、画面は、ブラウザや専用プログラムに対応する画面である。
フィールドデータ受付部104は、例えば、ブラウザ画面のSubmitボタンが押下などされたときに、フィールドに入力されたデータを受け付けることができる。また、スクリプトなどにより、マウスカーソルがフィールド上に位置したときやフィールド上にマウスカーソルが移動してクリックがされたことなどを示すイベントが発生すると、そのイベントに対応するイベント処理関数によりフィールドデータ受付部104が動作し、フィールドに入力されたデータを受け付けることができるようになっていてもよい。
フィールドデータ受付部104が動作するかどうかの制御は、例えば例えばサーバ102の送信部から送信されるHTMLなどにより記述がされた画面情報に埋め込まれたスクリプトなどによって可能になっていてもよい。また、画面情報から参照している他のソースから、そのようなスクリプトが端末101によって読み込まれて動作するようになっていてもよい。
偽フィールドデータ追加部105は、偽のデータを生成して、フィールドデータ受付部104が受け付けたデータに追加する。偽のデータは、端末101の利用者が入力および送信を意図しないデータである。言い換えると利用者の意図とは無関係に生成されるデータである。例えばサーバ102の送信部から送信されたプログラムを端末101において実行することにより生成することができる。あるいは、端末101で乱数を発生させるなどして生成することができる。このようなプログラムとして上述のスクリプトを挙げることもできる。
なお、フィールドデータ受付部104が受け付けたデータを真正データとして表記すると、真正データが文字列として表現される場合には、偽のデータも文字列として表現されるのが好ましい。また、この場合、偽のデータの文字列の各文字は、真正データの各文字と同じ属性を有しているのが好ましい。例えば、文字列を構成する文字は、数字、英文字、仮名文字などの属性を有する文字に分類することができる。したがって、真正データに数字が含まれれば、偽のデータにも数字が含まれるようにし、真正データに英文字が含まれれば、偽のデータにも英文字が含まれるようにし、真正データに仮名文字が含まれれば、偽のデータにも仮名文字が含まれるようにしてもよい。これにより、金額データや口座番号が真正データである場合には、偽のデータも金額データや口座番号として解釈されるデータとして生成され、中間者攻撃などを行う者にとっては、どれが真正なデータであり、どれが偽のデータであるかの判別を困難にすることができる。
また、サーバ102の送信部から送信される偽のデータを生成するためのプログラムは、1つに限定されるものではなく、同じ機能を提供する複数のプログラムの中から選択がされてサーバ102の送信部により送信されるようになっていてもよい。また、この場合、複数のプログラムの中からの選択は、例えばランダムな選択とするのが好ましい。また、過去に端末101に送信されたプログラムではないプログラムが選択されるようになっていてもよい。これにより、中間者攻撃などを行う者にとっては毎回異なるプログラムが端末101において実行されるので、解析などが困難となる。また、サーバ102の送信部から送信されるプログラムは、送信の都度、サーバ102によって生成されるプログラムであってもよい。
また、サーバ102の送信部から送信されるHTMLなどにより記述される画面の数は1に限定されることはない。例えば、画面遷移が発生して、遷移先の画面のHTMLなどによる記述がサーバ101の送信部により送信される場合には、偽のデータを生成するプログラムを実行するための画面のHTMLなどによる記述が、真正なデータが入力されるための画面のHTMLなどによる記述とは別にサーバ102の送信部から送信されるようになっていてもよい。この場合、偽のデータを生成するプログラムを実行するための画面のHTMLなどにより記述される画面は、端末101のディスプレイに表示されないようになっているのが好ましい。例えば、ディスプレイの表示可能な範囲外の座標位置に表示される。
また、サーバ102の送信部から送信されるプログラムは、ブラウザのサンドボックス機能により保護された領域内において実行されるようになっていてもよい。
フィールドデータ送信部106は、フィールドデータ受付部104が受け付けたデータおよび偽フィールドデータ追加部105により追加された偽のデータを、通信網10を介して、サーバ102へ送信する。
サーバ102は、処理部107を備え、処理部107は、フィールドデータ受信部108と、真正フィールドデータ選択部109と、を有する。処理部107は、端末101のフィールドデータ送信部106により送信されたデータを処理する部である。例えば、サーバ102により動作するプログラムの一モジュールにより実現することができる。
フィールドデータ受信部108は、通信網10を介して端末101のフィールドデータ送信部106により送信されたデータを受信する。したがって、フィールドデータ受信部108は、端末101のフィールドデータ受付部104が受け付けたデータおよび端末101の偽フィールドデータ追加部105により追加された偽のデータを受信する。例えば、サーバ102のI/Oインターフェースを介してデータを読み取り、サーバ102のメモリの所定のアドレスに書き込む。
真正フィールドデータ選択部109は、フィールドデータ受信部108が受信したデータの中から、偽のデータを除くデータである真正なデータを選択する。真正なデータとは、端末101のフィールドデータ受付部104が受け付けたデータである。言い換えると、利用者が入力または送信をすることを意図していたデータである。
真正フィールドデータ選択部109は、例えば、端末101に送信されたプログラムであり、偽のデータを生成するためのプログラムに基づいて、真正なデータを選択することもできる。例えば、サーバ102には、記録部(図示せず)が備えられており、記録部は、端末101に送信されたプログラムを識別する情報を端末101の識別子や端末101とのセッションの識別子と関連付けて記録する。そして、真正フィールドデータ選択部109は、記録部に記録されたプログラムを識別する情報により、そのプログラムによって生成される偽のデータを判別する情報を格納するデータベースなどを検索することにより、偽のデータと真正なデータとを区別することもできる。
また、複数のHTMLなどによる画面の記述が端末101に送信される場合には、HIDDEN属性を有するフィールドに、偽のデータが生成された画面からのデータであるかを判別可能とする情報を含ませてもよい。
図2は、端末101に表示されるディスプレイに表示される画面の画面遷移の一例を示す。例えば、サーバ102が、ある銀行のインターネットバンキングサービスを提供するためのサーバであるとする。端末101の利用者が、サーバ102へのリンクをポータルサイトにおいて選択したり、サーバ102のURLをブラウザなどに入力したりすると、サーバ102から端末101に対してHTMLなどにより記述されたデータが送信され、端末101のディスプレイに、ログイン画面として図2(a)に例示される画面201が端末101のディスプレイに表示される。
図2(a)において、画面201には、お客様番号を入力する入力エリア202と、パスワードを入力する入力エリア203とが表示されている。利用者は、自分のお客様番号とパスワードとを入力し、リターンキーを押下するなどの操作を行うと、お客様番号とパスワードとが認証情報としてサーバ102に送信され、サーバ102が認証を行う。
認証に成功すると、サーバ102は、インターネットバンキングサービスの中から利用者が必要とするサービスを選択するためのHTMLなどにより記述されたデータを端末102に送信する。
図2(b)は、端末102のディスプレイに、利用者が必要とするサービスを選択するための画面211が表示されている例を示す。画面211においては、口座の残高を確認するための残高照会ボタン212と、振込を行うための振込ボタン213とが示されている。
利用者が振込ボタン213を押下などすると、振込のためのデータを入力するための画面が端末102のディスプレイに表示される。図2(c)に示す画面221は、振込のためのデータを入力するための画面の一例である。
利用者は、入力エリア222に振込先の銀行名を入力し、入力エリア223に振込先の銀行の支店名を入力する。また、利用者は、振込先の口座の種別を入力エリア224に入力し、振込先の口座番号を入力エリア225に入力し、振込額を入力エリア226に入力する。なお、これらの振込のためのデータを入力するための画面は複数の画面により構成されていてもよい。
利用者が振込ボタン227を押下すると、フィールドデータ受付部104が動作し、入力エリア222〜226に入力されたデータを受け付ける。例えば、端末101で動作するブラウザが図2(a)〜(c)に示す画面を表示している場合には、フィールドデータ受付部104は、ブラウザが、入力エリア222〜226に入力されたデータを蓄積しているメモリ領域から、データを読み出す。
例えば、図2(c)の場合には、入力エリア222には、“金持”が、入力エリア223には、“黄金”が、入力エリア224には、“普通”が、入力エリア225には、“1234567”が、フィールドデータ226には、“100,000”が入力されている。そこで、フィールドデータ受付部104は、ブラウザが、入力エリア222〜226に入力されたデータを蓄積しているメモリ領域から“金持”、“黄金”、“普通”、“1234567”、“100,000”を読み出す。
フィールドデータ受付部104は、読み出したデータをサーバ102に送信するために、例えば、図3(a)に示すように、「銀行=“金持”&支店=“黄金”&口座=“普通”&番号=“1234567”&金額=“100,000”&Ser=10」というデータに変換することができる。なお、変換されたデータの「Ser=10」は、データの番号などを示し、本願発明には必須ではない。
次に偽フィールドデータ追加部105が、偽のデータを生成し、フィールドデータ受付部104が受け付けたデータに追加する。例えば、図3(b)に示すように、「銀行=“貧乏”&支店=“土石”&口座=“普通”&番号=“7654321”&金額=“40,000”&Ser=20」および「銀行=“順風”&支店=“満帆”&口座=“当座”&番号=“5671234”&金額=“120,000”&Ser=30」という偽のデータを生成し、「銀行=“金持”&支店=“黄金”&口座=“普通”&番号=“1234567”&金額=“100,000”&Ser=10」というデータに追加する。
ここに、「銀行=“貧乏”&支店=“土石”&口座=“普通”&番号=“7654321”&金額=“40,000”&Ser=20」および「銀行=“順風”&支店=“満帆”&口座=“当座”&番号=“5671234”&金額=“120,000”&Ser=30」という偽のデータは、利用者が、画面221に入力したデータとは異なっており、利用者の意図とは無関係に生成されている。このように、偽フィールドデータ追加部105は、フィールドデータ受付部104が受け付けたデータの一部または全体と異なる偽データを生成する。
図3(b)に示す例においては、「銀行」、「支店」などのデータ項目の名称の並びが真正データと偽のデータとにおいて同じであるが、データ項目の名称の並びが真正データおよび偽のデータのそれぞれにおいて異なるようになっていてもよい。ただし、データ項目の名称の並びが真正データと偽のデータとにおいて同じとし、さらにデータ項目の値(例えば、「銀行」というデータ項目に対する“金持”、“貧乏”、“順風”)の文字列の属性が、上述したように真正なデータと偽のデータとにおいて同じとなっているのが好ましい。この場合、“金持”、“貧乏”、“順風”は、漢字という属性を有する文字の文字列となっている。
次にフィールドデータ送信部106は、フィールドデータ受付部104が受け付けたデータおよび偽フィールドデータ追加部105により追加された偽のデータを、通信網10を介して、サーバ102へ送信する。
フィールドデータ送信部106は、図3(b)に示されるデータを、直列させて1つのセッションを用いて、サーバ102へ送信してもよい。あるいは、複数のセッションによりサーバ102と通信が可能なようにして、図3(b)の各行として示されるデータをそれぞれ異なるセッションに並列させて送信してもよい。
なお、図3(b)においては、フィールドデータ受付部104が受け付けて変換したデータが1行目に配置されて示されている。ただし、本願発明は、これに限定されるものではなく、フィールドデータ受付部104が受け付けて変換したデータは、任意の位置に配置されてもよい。
例えば、フィールドデータ受付部104が受け付けて変換したデータおよび偽フィールドデータ追加部105により追加されたデータのハッシュ値を計算し、ハッシュ値を数値と解釈して昇順または降順に並べ替えた状態でフィールドデータ送信部106はデータを送信することもできる。
フィールドデータ送信部106により送信されたデータは、サーバ102のフィールドデータ受信部108により受信され、サーバ102のメモリ領域に格納される。
次に、真正フィールドデータ選択部109が、メモリ領域に格納されたデータから、偽フィールドデータ追加部105が追加したデータを除くデータである真正なデータを選択する。選択されたデータは、処理部107の後続の処理を行う部(モジュール)に転送される。この場合は、「銀行=“金持”&支店=“黄金”&口座=“普通”&番号=“1234567”&金額=“100,000”&Ser=10」というデータとして転送される。
真正フィールドデータ選択部109が、データが真正であるかどうかを判断する手法には、いくつかの手法が考えられる。例えば、偽フィールドデータ追加部は、利用者が以前のセッションにおいて端末101を用いて送信した真正なデータを端末101の記憶部に記憶し、次のセッションにおいて、記憶されたデータを読み出すことにより生成し、フィールドデータ受付部104が受け付けたデータに追加する。真正フィールドデータ選択部109は、以前のセッションにおいて受信されたデータは真正でないと判断し、以前のセッションにおいて受信されていないデータを真正であると判断する。
なお、振込処理においては、異なる日時に同じ利用者が同じ振込先に同じ金額を振り込む場合があり、この場合には、真正となるべきデータが、以前のセッションにおいても送信されているために、偽のデータとして判断される可能性がある。そこで、図3に示すようにフィールドデータ受付部104は、受け付けたデータに、例えば「Ser=10」のように、以前のセッションに送信されたデータと区別するためのデータを付加してもよい。
また、真正フィールドデータ選択部109は、上述したように、データおよび偽のデータのハッシュ値などに基づいて並べ替えて送信される場合には、データおよび偽のデータが受信された順序における特定の位置に配置されているデータを真正なデータとしてもよい。特定の位置をいずれにするかは、例えば、利用者に渡したトークンカードなどによって生成された数字を利用者が入力して決定されてもよい。
図4は、システム100における送受信のシーケンス図を示す。ステップS401において、端末101からサーバ102に、画面情報要求が送信される。この画面情報要求は、図2(a)に示す認証用の画面のHTMLなどによる記述である画面情報を要求するためのものである。
ステップS402において、サーバ102は、画面情報要求に応じて、画面情報を端末101に送信する。画面情報が端末101において受信されると、例えば、画面201が端末101のディスプレイに表示される。
利用者が端末101のディスプレイに表示された画面201に必要な情報(この場合は、認証情報)を入力すると、ステップS403において、端末101からサーバ102に認証情報が送信される。
サーバ102において認証に成功すると、ステップS404において、次画面情報がサーバ102から端末101へ送信される。次画面情報は、例えば、画面211を端末101のディスプレイに表示するためのHTMLなどによる記述である。
画面211が端末101のディスプレイに表示され、利用者が例えば振込ボタン213を押下などして、振込を選択すると、その選択の内容を示す選択情報がステップS405に端末101からサーバ102に送信される。
サーバ102が選択情報を受信すると、受信した選択情報に応じて、ステップ406において、次次画面情報を送信し、端末102が受信する。次次画面情報は、例えば、画面221を端末101のディスプレイに表示するためのHTMLなどによる記述となる。
画面221が端末101のディスプレイに表示され、利用者が振込に必要な情報を入力し、振込ボタン227を押下などすると、上述したように、フィールドデータ受付部104、偽フィールドデータ追加部105、フィールドデータ送信部106が動作し、図3(b)に示すようなデータが、ステップS407において、端末101からサーバ102に送信される。
その後、サーバ102において、フィールドデータ受信部108および真正フィールドデータ選択部109が動作し、選択がされた振込処理が行われ、処理が完了すると、ステップS408において、サーバ102から端末101に処理が完了した旨を端末101のディスプレイに表示するための完了画面情報が、サーバ102から端末101に送信される。
図5は、端末101における処理を説明するフローチャートである。ステップS501において、例えば振込ボタン227が押下などされるまで待つ。ステップS502において、フィールドデータ受付部104により入力エリアに入力されたデータの読み取りがされる。ステップS503において、偽フィールドデータ追加部105により、偽のデータが追加される。ステップS504において、フィールドデータ送信部106により、データの送信が行われる。
図6は、サーバ102における処理を説明するフローチャートである。ステップS601において、フィールドデータ受信部108によりデータの受信がされるまで待つ。フィールドデータ受信部108によるデータの受信がされると、受信されたデータがサーバ102のメモリに記憶される。ステップS603において、真正なデータの選択が真正フィールドデータ選択部109によりされる。ステップS604において、真正フィールドデータ選択部109により選択された真正なデータによる処理が行われる。
以上のように、本実施形態においては、ユーザが端末に入力したデータに、真正ではない偽のデータが追加されてサーバに送信される。このため、中間者攻撃が行われても、どれが真正なデータであるのかを判断するのが困難となり、改ざんなどによる被害を受けることが少なくなる。このため、より安全な通信が実現される。
また、中間者攻撃が行われている場合、通信の内容が中間者によって通信の内容が書き換えられるが、書き換えを、データおよび偽データがサーバ102のフィールドデータ受信部108により受信される時間の揺らぎによって検出することも可能である。また、長時間が経過したことが明白である場合には、通信により発生したトランザクションや取引を取り消すようにしてもよい。これまでの通信の履歴からある画面が端末に表示されてから端末から送信されるデータが受信されるまでの時間の平均を算出しておき、その平均よりも例えば3倍以上の時間が経過した場合には、長時間が経過したことが明白であるとみなす。このような時間の平均は、ユーザごとに算出しておくのが好ましい。
(実施形態2)
実施形態1においては、ユーザが入力した真正なデータに偽のデータを追加して送信している。本発明の実施形態2においては、ユーザが入力したデータに偽のデータを追加することに加えて、ユーザが操作する真正なワークフローに加えて、偽のワークフローを生成して、中間者攻撃を困難にすることについて説明する。
図7は、本実施形態に係るシステム700の機能ブロック図を示す。システム700は、端末701と、サーバ702とを備え、端末701とサーバ702とは、インターネットなどの通信網70を介して通信を行うことができる。実施形態1と同様に、端末の台数およびサーバの台数は1台に限定されることはなく、システム700においては、任意の台数の構成であってもよい。
端末701は、ブラウザ部703を有し、ブラウザ部703は、ユーザワークフロー部704と偽ワークフロー部705とを有する。サーバ702は、ユーザワークフロー処理部706と偽ワークフロー処理部707とを有する。
ユーザワークフロー部704は、ユーザによる画面遷移によるワークフローを端末701において実行する部である。例えば、通常のブラウザのようにサーバ702から送信された画面情報に従って画面を表示し、ユーザの操作に応じて、サーバ702に要求などを送信し、それに応じて送信される画面情報を次に表示する。
ユーザワークフロー処理部706は、ユーザワークフロー部704により生成された要求を処理し、端末701のディスプレイに次に表示する画面情報を端末701へ送信する。
偽ワークフロー部706は、ユーザの意図によらない偽のワークフローを端末701において実行する。例えば、画面遷移の状態遷移を示すデータを端末701のメモリなどに記憶しておき、その状態遷移を示すデータに従って、次の状態に移るための要求をサーバ702に送信し、それに応じて送信される画面情報を受信することを繰り返す。例えば、状態遷移において分岐がある場合には、ランダムに分岐先を選択してワークフローを実行する。
偽ワークフロー部707は、偽ワークフロー部706により生成された要求を処理し、次の画面情報を端末701へ送信する。
ユーザワークフロー部704によるワークフローであるのか、偽ワークフロー部705によるワークフローであるかどうかは、例えば各ワークフローにおいて行われる利用者の認証を行った際に、認証に成功したワークフローがユーザワークフロー部704によるワークフローとし、認証に失敗したワークフローが偽ワークフロー部705によるワークフローとすることもできる。
本実施形態においては、実施形態1のように、ユーザワークフロー部704は、偽のデータを追加し、サーバに送信し、ユーザワークフロー処理部706は、真正なデータを選択し、処理を行う構成とすることもできる。
本実施形態においては、複数のワークフローが生成され、その中には偽のワークフローが含まれる。このため、このため、中間者攻撃が行われているとしても、どれが真正なワークフローであるのかを判断するのが困難となり、改ざんなどによる被害が生じることが少なくなる。このため、より安全な通信が実現される。
(実施形態3)
実施形態2においては、主に、真正なワークフローと偽のワークフローとを異なるワークフローとして説明した。しかし、本発明はこれに限られるものではなく、真正なワークフローにおいて画面遷移が発生すると、真正なワークフローから偽のワークフローが分岐するようにすることもできる。
この場合、ユーザワークフロー処理部706が画面遷移などを処理すると、画面遷移などが処理されたことを示す情報が偽ワークフロー処理部707に伝達され、偽ワークフロー処理部707は、真正なワークフローから偽のワークフローを分岐させるための画面情報を端末701の偽ワークフロー部705に送信する。この場合、偽のワークフローを分岐させるための画面情報は、端末701のディスプレイには表示されないようにするのが好ましい。例えば、偽のワークフローを分岐させるための画面情報が表示される座標位置を端末701のディスプレイの表示範囲外と設定することにより、レンダリングの対象から偽のワークフローを分岐させるための画面情報をはずす。
また、真正なワークフローから偽のワークフローが分岐する場合、偽のワークフローの数は1に限定されることなく、任意の数とすることができる。
100 システム、101 端末、102 サーバ、103 ブラウザ部、104 フィールドデータ受付部、105 偽フィールドデータ追加部、106 フィールドデータ送信部、107 処理部、108 フィールドデータ受信部、109 真正フィールドデータ選択部109

Claims (2)

  1. 端末装置から送信され、前記端末装置の利用者により入力された真正なデータおよび前記端末装置によって生成された、前記真正なデータと同じ属性の偽のデータを受信するデータ受信部と、
    前記データ受信部により受信された真正なデータおよび偽のデータから、特定の送信順序により真正なデータを選択するデータ選択部と、
    を有するサーバ装置。
  2. 前記データ選択部は、真正なデータおよび複数の前記偽のデータから、真正なデータを選択する請求項1に記載のサーバ装置。
JP2013246295A 2013-11-28 2013-11-28 サーバ装置 Active JP6576017B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013246295A JP6576017B2 (ja) 2013-11-28 2013-11-28 サーバ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013246295A JP6576017B2 (ja) 2013-11-28 2013-11-28 サーバ装置

Related Child Applications (3)

Application Number Title Priority Date Filing Date
JP2017152518A Division JP2017195646A (ja) 2017-08-07 2017-08-07 サーバおよび端末
JP2018045101A Division JP2018093546A (ja) 2018-03-13 2018-03-13 情報処理装置
JP2019010472A Division JP7008647B2 (ja) 2019-01-24 2019-01-24 サーバ装置、通信方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2015106728A JP2015106728A (ja) 2015-06-08
JP6576017B2 true JP6576017B2 (ja) 2019-09-18

Family

ID=53436655

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013246295A Active JP6576017B2 (ja) 2013-11-28 2013-11-28 サーバ装置

Country Status (1)

Country Link
JP (1) JP6576017B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4703805B2 (ja) * 1999-11-16 2011-06-15 大日本印刷株式会社 暗号化装置、暗号化方法、復号化装置、復号化方法および通信システム
EP1429515B1 (en) * 2002-12-13 2007-10-17 Hewlett-Packard Company, A Delaware Corporation Privacy protection system and method
JP2005044054A (ja) * 2003-07-25 2005-02-17 Base Technology Inc 符号列の処理システム
KR20070074971A (ko) * 2006-01-11 2007-07-18 주식회사 팬택앤큐리텔 패스워드 보안 및 인증 방법

Also Published As

Publication number Publication date
JP2015106728A (ja) 2015-06-08

Similar Documents

Publication Publication Date Title
US11385779B2 (en) Autofill for a user device
CN104767613B (zh) 签名验证方法、装置及系统
US8224823B1 (en) Browsing history restoration
US11971942B2 (en) System and method for sharing information using a machine-readable code on a mobile device
US20150348020A1 (en) Secure online communication through a widget on a web page
CN104766001A (zh) 检测和破坏captcha自动化脚本以及防止图像刮削
CN104967586B (zh) 一种用户身份验证方法、装置及系统
CN103180860A (zh) 认证系统及方法
US20130106916A1 (en) Drag and drop human authentication
US20210397682A1 (en) Secure Service Interaction
US20110295740A1 (en) System And Method For Secure Transactions
CN102576400A (zh) 认证服务器装置、认证服务器装置用程序以及认证方法
CN110399561A (zh) 信息推荐方法、信息推荐装置和电子设备
CN108960820A (zh) 一种基于区块链的实名认证方法、系统及存储介质
US9852119B2 (en) Device for securing contents of a web page
US20180181742A1 (en) Server system, communication system, communication terminal device, program, recording medium, and communication method
CN103617043B (zh) 一种带图片网页数据上传的方法和系统
US20170147155A1 (en) Generating and verifying a reputational profile
JP4758175B2 (ja) 利用者認証方法及び利用者認証プログラム
CN108809896A (zh) 一种信息校验方法、装置和电子设备
US8799763B1 (en) Methods and apparatus for assisting in completion of a form
JP6576017B2 (ja) サーバ装置
JP7008647B2 (ja) サーバ装置、通信方法およびプログラム
JP7077173B2 (ja) サーバおよび端末
JP2019195228A (ja) サーバおよび端末

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20131213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131213

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160825

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170807

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180313

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20180313

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20180322

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20180327

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20180511

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20180515

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20180911

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20181002

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20181009

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20181204

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20190319

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20190625

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20190702

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20190730

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20190730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190820

R150 Certificate of patent or registration of utility model

Ref document number: 6576017

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250