説明

2重送信判別方法、2重送信判別装置および2重送信判別プログラム

【課題】クライアントからの2重送信を、より容易に、より効率良く、サーバ側で検出する。
【解決手段】情報処理装置2は、端末1から要求を受け付けて、乱数を生成する乱数生成ステップと、生成した乱数を乱数記憶部に設定する設定ステップと、生成した乱数を端末に送信する乱数送信ステップと、乱数送信ステップで送信した乱数を含む送信データを端末から受信する受信ステップと、送信データに含まれる乱数と前記乱数記憶部に設定された乱数とが一致する場合、送信データを初回の送信と判別して乱数記憶部の乱数を削除するとともに、送信データに含まれる乱数と乱数記憶部に設定された乱数とが一致しない場合、送信データを2重送信と判別する判別ステップと、を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、2重送信を判別する技術に関する。
【背景技術】
【0002】
近年、ネットワークを利用した電子商取引(electronic commerce)が行われている。電子商取引においては、取引データ(商品の注文、決済など)の2重送信を防止する必要がある。例えば、特許文献1には、送信データの一方向性関数により定まる値とセッション開始時間とを用いて、2重送信をチェックする2重送信チェックシステムが記載されている。
【特許文献1】特開2003−256298
【発明の開示】
【発明が解決しようとする課題】
【0003】
ところで、特許文献1では、クライアントとサーバとが連携して、2重送信のチェックを行っている。しかしながら、インターネットに接続された不特定多数のクライアントに各種の商品を販売する場合、クライアント各々に2重送信をチェックするため機能を追加することは困難である。
【0004】
また、複数の画面(Webページ)を用いて1つの処理(商品の注文など)を行う場合や、1つの画面で複数の操作指示が行える場合がある。このような場合、ユーザは、複数の画面を遷移しているうちに、または、複数の操作を行っているいうちに、誤って2重に商品の発注データを送信してしまう場合がある。
【0005】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、クライアントからの2重送信を、より容易に、より効率良く、サーバ側で検出することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明は、例えば、情報処理装置が行う2重送信判別方法であって、情報処理装置は、乱数を記憶する乱数記憶部と、処理部と、を有する。そして、処理部は、端末から第1の要求を受け付けて、乱数を生成する乱数生成ステップと、生成した乱数を乱数記憶部に設定する設定ステップと、生成した乱数を端末に送信する乱数送信ステップと、乱数送信ステップで送信した乱数を含む第1の送信データを端末から受信する第1の受信ステップと、第1の送信データに含まれる乱数と前記乱数記憶部に設定された乱数とが一致する場合、第1の送信データを初回の送信と判別して乱数記憶部の乱数を削除するとともに、第1の送信データに含まれる乱数と乱数記憶部に設定された乱数とが一致しない場合、第1の送信データを2重送信と判別する判別ステップと、を行う。
【発明の効果】
【0007】
本発明では、クライアントからの2重送信を、より容易に、より効率良く、サーバ側で検出することができる。
【発明を実施するための最良の形態】
【0008】
以下、本発明の実施の形態について説明する。
【0009】
本実施形態では、オンライントレード(online trade)の場合を例に、以下説明する。オンライントレードは、インターネットなどのネットワークを通じて行う株取引である。個人投資家などのユーザは、PC(Personal Computer)などのクライアントを用いて、証券会社のWebサイトにアクセスし、オンラインで株の売買を行う。
【0010】
図1は、本発明の一実施形態が適用された注文受付システムの全体構成図である。本実施形態の注文受付システムは、図示するように、少なくとも1つのクライアント1と、サーバ2とを有する。そして、各クライアント1とサーバ2とは、インターネットなどのネットワーク3により接続されている。
【0011】
クライアント1は、ネットワーク3を介してサーバ2にアクセスし、ユーザの指示を受け付けて株の売買を行う装置である。クライアント1は、図示するように、表示部11と、指示受付部12とを有する。表示部11は、一般的なWebブラウザと同様の機能を有し、サーバ2から受信した画面情報を解析して出力装置(不図示)に表示する。指示受付部12は、クライアント1を操作するユーザの指示を受け付ける。
【0012】
サーバ2は、各クライアント1から株の注文を受け付ける装置である。サーバ2は、図示するように、制御部21と、乱数生成部22と、テーブル管理部23と、画面情報生成部24と、判別部25と、記憶部27と、を有する。制御部21は、他の各部22〜25を制御し、クライアント1から株の注文データを受け付ける。乱数生成部22は、制御部21の指示により、ランダムな値である乱数を生成する。テーブル管理部23は、後述する発注テーブル28を管理する。画面情報生成部24は、クライアント1に送信する画面情報を記憶部27に記憶された各画面情報29に基づいて動的に生成する。判別部25は、クライアントから送信された送信データが2重送信か否かを判別する。
【0013】
記憶部27には、少なくとも1つの発注テーブル28と、少なくとも1つの画面情報29とが記憶されている。発注テーブル28は、クライアント1から受け付けた注文内容および乱数が設定されたテーブルであって、クライアント1毎に作成される。画面情報29は、サーバ2がクライアント1に提供する画面情報(Webページ)のテンプレート(雛型)である。各画面情報29は、HTML(HyperText Markup Language)またはXML(eXtensible Markup Language)などのマークアップ言語により記述されている。
【0014】
上記説明した、クライアント1およびサーバ2は、いずれも、例えば図2に示すようなCPU901と、メモリ902と、HDD等の外部記憶装置903と、キーボードやマウスなどの入力装置904と、ディスプレイやプリンタなどの出力装置905と、ネットワークと接続するための通信制御装置906と、を備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、各装置の各機能が実現される。
【0015】
例えば、クライアント1およびサーバ2の各機能は、クライアント1用のプログラムの場合はクライアント1のCPU901が、そして、サーバ2用のプログラムの場合はサーバ2のCPU901が、それぞれ実行することにより実現される。なお、サーバ2の記憶部27には、サーバ2のメモリ902または外部記憶装置903が用いられるものとする。また、入力装置904および出力装置905については、各装置が必要に応じて備えるものとする。
【0016】
次に、サーバ2の記憶部27に記憶された発注テーブル28について説明する。
【0017】
図3は、発注テーブル28の一例を示した図である。図示する発注テーブル28は、乱数キー31と、銘柄32と、株数33と、価格34と、を有する。乱数キー31には、乱数生成部22が生成した乱数が設定される。銘柄32、株数33および価格34には、クライアント1から受信した株の発注内容がそれぞれ設定される。なお、テーブル管理部23は、クライアント1とサーバ2とのセッションが確立されると、当該クライアント1用の発注テーブル28を記憶部27に作成する。
【0018】
次に、クライアント1の出力装置に表示される画面について説明する。なお、本実施形態では、注文入力画面と、注文確認画面と、注文受付完了画面と、注文受付エラー画面と、を用いることとする。
【0019】
図4(a)は、注文入力画面の一例を示す図である。
【0020】
図示する注文入力画面は、注文(購入)する株の銘柄を入力する銘柄入力欄41と、株数を入力する株数入力欄42と、株の購入価格(指値)を入力する価格入力欄43と、株価表示ボタン44と、注文確認ボタン45と、を有する。株価表示ボタン44は、銘柄入力欄41に入力した銘柄の現時点の株価を表示する指示を受け付けるボタンである。株価表示ボタン44がクリックされると、株価が設定されたポップアップウィンドウが注文入力画面に表示される。なお、ポップアップウィンドウは、スクリプトを用いて表示される新しいウィンドウである。注文確認ボタン45は、各入力欄41〜43に入力した内容を確認するための注文確認画面を表示する指示を受け付けるボタンである。注文確認ボタン45をクリックすると、図4(b)に示す注文確認画面が表示される。
【0021】
図4(b)は、注文確認画面の一例を示す図である。図示する注文確認画面は、注文内容表示欄46と、戻るボタン47と、株価表示ボタン48と、発注ボタン49と、を有する。注文内容表示欄46には、注文入力画面(図4(a))で入力された銘柄、株数および価格が表示される。戻るボタン47は、注文確認画面の1つ前の画面(すなわち、注文入力画面)に戻る指示を受け付けるボタンである。株価表示ボタン48は、注文入力画面の株価表示ボタン44と同様である。
【0022】
発注ボタン49は、注文内容表示欄46に表示された株の発注指示を受け付けるボタンである。初回の発注指示の場合、図5(a)に示す注文受付完了画面が表示される。また、2重に発注指示が行われた場合、図5(b)に示す注文受付エラー画面が表示される。
【0023】
なお、図示する注文確認画面の画面情報には、画面上には表示されない隠しデータ50が設定されているものとする。すなわち、後述する注文受付処理において、サーバ2の乱数生成部22が生成した乱数が、隠しデータ50として注文受付画面の画面情報に設定されている。なお、隠しデータについては後述する。
【0024】
図5(a)は、注文受付完了画面の一例を示した図である。図示する注文受付完了画面は、注文を正常に受け付けたことを示すメッセージ51と、戻るボタン52とを有する。戻るボタン52は、注文受付完了画面の1つ前の画面(すなわち、注文確認画面(図4(b))に戻る指示を受け付けるボタンである。なお、図示する注文受付完了画面の画面情報には、注文確認画面と同様に、画面上には表示されない隠しデータ53が設定されているものとする。
【0025】
図5(b)は、注文受付エラー画面の一例を示した図である。図示する注文受付エラー画面は、2重に注文が受け付けられたことを示すエラーメッセージ56と、戻るボタン57とを有する。戻るボタン57は、注文受付エラー画面の1つ前の画面(すなわち、注文確認画面(図4(b))に戻る指示を受け付けるボタンである。なお、図示する注文受付エラー画面の画面情報には、注文確認画面と同様に、画面上には表示されない隠しデータ58が設定されているものとする。
【0026】
次に、本システムの注文受付処理について、サーバ2の処理を中心に説明する。
【0027】
図6は、サーバ2の注文受付処理のフローチャートである。
【0028】
クライアント1の指示受付部12は、ユーザからの指示を受け付け、サーバ2に注文入力画面を要求する。サーバ2の制御部21は、クライアント1からの要求を受信し、注文入力画面の画面情報を、要求元のクライアント1に送信する(S11)。すなわち、制御部21は、注文入力画面の画面情報29を記憶部27から読み出しクライアント1に送信する。そして、制御部21は、クライアント1からの指示(要求)を待つ。
【0029】
そして、クライアント1の表示部11は、サーバ2から受信した注文入力画面の画面情報を解析し、注文入力画面(図4(a))を出力装置に表示する。そして、ユーザは、入力装置を用いて、注文入力画面の各入力欄に銘柄、株数および価格を入力し、いずれかの指示ボタンをクリックする。指示受付部12は、ユーザが入力した入力情報と、クリックした指示とを受け付け、サーバ2に送信する。
【0030】
そして、サーバ2の制御部21は、クライアントから入力情報および指示を受信する。そして、制御部21は、受信した指示が注文確認指示か否かを判別する(S12)。注文確認指示でない場合、すなわち株価表示指示の場合(S12:NO)、制御部21は、受信した入力情報の銘柄の株価を株価データベース(不図示)から取得し、取得した株価を表示する画面情報を生成してクライアント1に送信する(S13)。なお、制御部21は、CGI(Common Gateway Interface)などを用いて所定のプログラムを起動し、株価の検索や株価を示す画面情報の生成を行う。
【0031】
そして、クライアント1の表示部11は、株価の画面情報を受信し、現在表示されている注文入力画面上に、株価が設定されたポップアップウィンドウを表示する。これにより、ユーザは、現時点の株価を考慮して、株を購入するか否か、または、株数や購入価格を変更することができる。
【0032】
一方、注文確認指示の場合(S12:YES)、制御部21は、受信した入力情報各々について、所定のチェック(例えば、銘柄の有無チェックなど)を行った後、乱数生成部22に乱数の生成を指示する。そして、乱数生成部22は、乱数を生成する(S14)。すなわち、乱数生成部22は、所定のアルゴリズムまたは専用ハードウェアにより、乱数(または、疑似乱数)を生成する。なお、乱数の生成方法としては、例えば、混合合同法(mixed congruential method)、メルセンヌ・ツイスタ(Mersenne twister)、ハッシュ関数(hash function)などがある。ハッシュ関数については、入力情報から固定長の疑似乱数を生成することが考えられる。
【0033】
そして、テーブル管理部23は、乱数生成部22が生成した乱数と、S12で受信した入力情報とを、要求元のクライアント1の発注テーブル28(図3参照)に設定する(S15)。なお、テーブル管理部23は、各クライアント1とのセッションが確立されたタイミングで、記憶部27に各クライアント1用の発注テーブル28をそれぞれ作成する。
【0034】
そして、画面情報生成部24は、注文確認画面の画面情報を生成する(S16)。すなわち、画面情報生成部24は、記憶部27から注文確認画面の画面情報29(テンプレート)を取得する。そして、画面情報生成部24は、取得した画面情報29の所定の部分に受信した入力情報および生成した乱数を設定し、注文確認画面の画面情報を動的に生成する。
【0035】
なお、画面情報生成部24は、生成した乱数を、隠しデータとして画面情報に埋め込む。すなわち、HTMLを用いて記述された画面情報の場合、画面情報生成部24は、「INPUT」タグを用いて、以下のような記述を画面情報に追加する。
【0036】
<INPUT TYPE=hidden NAME=Key VALUE=“乱数”>
「TYPE=hidden」により、クライアント1の出力装置には表示されない隠しデータ(VALUEに設定された乱数、NEMEに設定された項目名)を、クライアント1に送信することができる。
【0037】
そして、制御部21は、画面情報生成部24が生成した注文確認画面の画面情報をクライアント1に送信し、クライアント1からの要求を待つ(S17)。
【0038】
そして、クライアント1の表示部11は、受信した注文確認画面の画面情報を解析して、注文確認画面(図4(b))を出力装置に出力する。なお、クライアント1の出力装置に表示される注文確認画面上には、前述の通り、隠しデータの乱数は表示されない。そして、ユーザは、注文確認画面で表示された銘柄、株数および価格を確認し、いずれかの指示ボタンをクリックする。指示受付部12は、いずれかの指示を受け付け、当該指示とともに隠しデータ(乱数とKey)をクライアント1の入力情報としてサーバ2に送信する。
【0039】
そして、サーバ2の制御部21は、クライアント1から隠しデータおよび指示を受信する。そして、制御部21は、受信した指示が発注指示か否かを判別する(S18)。発注指示でない場合(S18:NO)、制御部21は、前画面への戻る指示か否かをさらに判別する(S19)。前画面への戻る指示の場合(S19:YES)、制御部21は、S11へ戻り、注文入力画面の画面情報をクライアント1に送信する。
【0040】
株価表示指示の場合(S19:NO)、制御部21は、S13と同様に、検索した株価を表示する画面情報をクライアント1に送信する(S20)。そして、制御部21は、S18に進み、クライアント1からの要求を待つ。
【0041】
一方、発注指示の場合(S18:YES)、判別部25は、クライアント1から受信した隠しデータの乱数と、当該クライアント1の発注テーブル28の乱数キーとが、一致するか否かを判別する(S21)。両者が一致する場合(S21:YES)、判別部25は、S18で受信した発注指示が、初回の発注指示であると判別する。したがって、制御部21は、発注テーブル28に設定された銘柄、株数および価格の株の注文を受け付ける所定の処理を行う。そして、テーブル管理部23は、発注テーブル28に設定された各項目の値を初期化する(S22)。すなわち、テーブル管理部23は、S15で設定した各項目の値を削除し、null(スペース)を設定する。
【0042】
そして、画面情報生成部24は、注文受付完了画面の画面情報を生成する(S23)。 すなわち、画面情報生成部24は、記憶部27から注文受付完了画面の画面情報29(テンプレート)を取得する。そして、画面情報生成部24は、取得した画面情報29の所定の部分にS18で受信した乱数(すなわち、S14で生成した乱数)を設定した注文受付完了画面の画面情報を生成する。なお、画面情報生成部24は、S16と同様に、隠しデータとして乱数を画面情報に設定する。そして、制御部21は、生成した注文受付完了画面の画面情報を、クライアント1に送信する(S24)。
【0043】
そして、クライアント1の表示部11は、受信した注文受付完了画面の画面情報を解析し、注文受付完了画面(図5(a))を出力装置に出力する。なお、出力装置に表示される注文受付完了画面には、前述の通り、隠しデータである乱数は表示されない。そして、ユーザは、株の注文が正常に受け付けられたことを確認し、注文受付完了画面の戻るボタンをクリックする。指示受付部12は、1つ前の画面(注文確認画面)への戻る指示を受け付け、当該戻る指示とともに隠しデータ(乱数とKey)をクライアント1の入力情報としてサーバ2に送信する。
【0044】
そして、サーバ2の制御部21は、戻る指示および隠しデータをクライアント1から受信し、S16に戻る(S25)。すなわち、画面情報生成部24は、注文確認画面の画面情報にS25で受信した乱数(S14で生成した乱数)を設定する(S16)。そして、制御部21は、S16で生成した注文確認画面をクライアント1に送信し(S17)、クライアント1からの指示を受け付ける(S18)。
【0045】
戻る指示で表示された注文確認画面において、さらに戻る指示を受け付けた場合(S19:YES)、制御部21は、注文入力画面の画面情報をクライアント1に送信する(S11)。これにより、ユーザは、新たな株の注文を入力することができる。しかしながら、戻る指示で表示された注文確認画面において、ユーザが、誤って再度発注指示を入力した場合(S18:YES)、判別部25は、クライアント1から受信した隠しデータの乱数と、当該クライアント1の発注テーブル28の乱数キーとが一致するか否かを判別する(S21)。この場合、初回の発注指示のS22において、発注テーブル28の各項目は既に初期化されている。したがって、クライアント1から受信した乱数と、発注テーブルの乱数キーとは一致しないため(S21:NO)、判別部25は、2重の発注指示であると判別する。
【0046】
この場合、画面情報生成部24は、注文受付エラー画面の画面情報を生成する(S26)。すなわち、画面情報生成部24は、記憶部27から注文受付エラー画面の画面情報29(テンプレート)を取得する。そして、画面情報生成部24は、取得した画面情報29の所定の部分にS18で受信した乱数(S14で生成した乱数)を設定した注文受付エラー確認画面の画面情報を生成する。なお、画面情報生成部24は、S16と同様に、隠しデータとして乱数を画面情報に設定する。そして、制御部21は、生成した注文受付エラー画面の画面情報を、クライアント1に送信する(S27)。そして、制御部21は、戻る指示および隠しデータをクライアント1から受信し、S16に戻る(S25)。
【0047】
以上説明した注文受付処理では、初回の発注指示を受け付けた後に、発注テーブルを初期化する(S22)。一方、クライアント1には、隠しデータの乱数を設定した画面情報を送信する(S24、S27)。これにより、2回目以降の発注指示では、発注テーブルにはNULLが設定されているため、乱数キーは一致しない(S21:NO)。したがって、サーバ2は、重複した発注指示を容易に判別することができる。
【0048】
なお、発注指示が可能な注文確認画面から抜けた場合、すなわち、注文入力画面に戻った場合(S19:YES)、制御部21は、当該注文入力画面には隠しデータを設定しない(S11)。したがって、ユーザは、注文入力画面の各入力欄に、新たな株の注文データを入力し、S12以降の処理を繰り返し行うことができる。
【0049】
以上、本発明の一実施形態を説明した。
【0050】
本実施形態では、発注テーブル28の乱数キーと、画面情報に隠しデータとして設定した乱数とが一致するか否かにより、初回の送信データか2重送信か否かを判別する。これにより、クライアントの2重送信を、サーバ側でより容易、より効率よく検出することができる。
【0051】
また、本実施形態では、戻る指示により注文確認画面が表示され、再度、発注ボタンをクリックした場合であっても、2重送信を判別することができる。また、本実施形態では、注文確認画面において、ユーザの操作ミスにより新たな注文確認画面が表示され(例えば、「Ctrlキー」と「Nキー」の入力)、それぞれの画面で発注ボタンをクリックした場合であっても、2重送信を判別することができる。
【0052】
また、本実施形態の注文確認画面では、1つの画面で複数の指示(操作)ボタンを有している。このように複数の指示ボタンを有する画面において、複数の指示が行われた場合であっても、2重送信か否かを適切に判別することができる。例えば、注文受付完了画面から戻る指示により注文確認画面に戻って、一旦、株価表示ボタンをクリックし、株価のポップアップウィンドウを表示した後、再度、発注ボタンをクリックする。このような場合であっても、発注指示の2重送信を適切に判別することができる。すなわち、注文確認画面を変更して新たな指示ボタンを追加(新機能を追加)する場合であっても、2重送信を判別することができる。
【0053】
また、本実施形態では、2重送信の判別を全てサーバ2側で行っている。これにより、ネットワークに接続された不特定多数のクライアント1からの送信データであっても、2重送信か否かを判別することができる。
【0054】
また、本実施形態では、サーバ2の画面情報生成部24は、画面情報に隠しデータとして生成した乱数を設定する。すなわち、クライアント1の出力装置には、乱数は表示されない。そのため、ユーザは画面情報に設定された乱数を意識することなく株の注文を行うことができる。
【0055】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、上記実施形態では、発注テーブル28をクライアント1毎に作成することとした。しかしながら、本発明はこれに限定されず、例えば、1つの発注テーブルに、セッションが確立した全てのクライアント1のデータを設定することとしてもよい。
【0056】
また、本実施形態のサーバ2は、2重送信時のエラー処理として、注文受付エラー画面(図5(b)参照)をクライアント1に送信する。しかしながら、本発明はこれに限定されず、2重送信と判別した場合、サーバ2は、2重送信のログ情報を記憶部27に記録するなどのエラー処理を行うこととしてもよい。
【図面の簡単な説明】
【0057】
【図1】本発明の一実施形態が適用された注文受付システムの全体構成を示す図である。
【図2】各装置のハードウェア構成例を示す図である。
【図3】発注テーブルの一例を示す図である。
【図4】注文受付画面および注文確認画面の一例を示す図である。
【図5】注文受付完了画面および注文受付エラー画面の一例を示す図である。
【図6】注文受付処理のフローチャートである。
【符号の説明】
【0058】
1:クライアント、11:表示部、12:指示受付部、2:サーバ、21:制御部、22:乱数生成部、23:テーブル管理部、24:画面情報生成部、25:判別部、27:記憶部、28:発注テーブル、29:画面情報、3:ネットワーク

【特許請求の範囲】
【請求項1】
情報処理装置が行う2重送信判別方法であって、
前記情報処理装置は、乱数を記憶する乱数記憶部と、処理部と、を有し、
前記処理部は、
端末から第1の要求を受け付けて、前記乱数を生成する乱数生成ステップと、
前記生成した乱数を前記乱数記憶部に設定する設定ステップと、
前記生成した乱数を前記端末に送信する乱数送信ステップと、
前記乱数送信ステップで送信した乱数を含む第1の送信データを、前記端末から受信する第1の受信ステップと、
前記第1の送信データに含まれる乱数と前記乱数記憶部に設定された乱数とが一致する場合、前記第1の送信データを初回の送信と判別して前記乱数記憶部の乱数を削除するとともに、
前記第1の送信データに含まれる乱数と前記乱数記憶部に設定された乱数とが一致しない場合、前記第1の送信データを2重送信と判別する判別ステップと、を行うこと
を特徴とする2重送信判別方法。
【請求項2】
請求項1記載の2重送信判別方法であって、
前記乱数送信ステップは、前記第1の要求に対する応答情報の中に、前記生成した乱数を隠しデータとして設定し、前記乱数を設定した応答情報を前記端末に送信すること
を特徴とする2重送信判別方法。
【請求項3】
請求項1記載の2重送信判別方法であって、
前記端末から前画面へ戻る第2の要求を受け付けて、前記第2の要求に対応する前画面の画面情報の中に前記生成した乱数を隠しデータとして設定し、前記乱数を設定した前画面の画面情報を前記端末に送信する前画面送信ステップと、
前記前画面送信ステップで送信した乱数を含む第2の送信データを、前記端末から受信する第2の受信ステップと、をさらに行い、
前記判別ステップは、前記第2の送信データに含まれる乱数と前記乱数記憶部に設定された乱数とが一致するか否かを判別すること
を特徴とする2重送信判別方法。
【請求項4】
請求項1記載の2重送信判別方法であって、
前記情報処理装置は、前記端末毎に前記乱数記憶部を有し、
前記第1の送信データは、株の発注データであること
を特徴とする2重送信判別方法。
【請求項5】
2重送信を判別する2重送信判別装置であって、
乱数を記憶する乱数記憶手段と、
端末からの要求を受け付けて、前記乱数を生成する乱数生成手段と、
前記生成した乱数を前記乱数記憶手段に設定する設定手段と、
前記生成した乱数を前記端末に送信する乱数送信手段と、
前記乱数送信手段が送信した乱数を含む送信データを、前記端末から受信する受信手段と、
前記送信データに含まれる乱数と前記乱数記憶手段に設定された乱数とが一致する場合、前記送信データを初回の送信と判別し、前記送信データに含まれる乱数と前記乱数記憶手段に設定された乱数とが一致しない場合、前記送信データを2重送信と判別する判別手段とを有し、
前記送信データを初回の送信と判別した場合、前記設定手段は、前記乱数記憶手段の乱数を削除すること
を特徴とする2重送信判別装置。
【請求項6】
情報処理装置が実行する2重送信判別プログラムであって、
前記情報処理装置は、乱数を記憶する乱数記憶部と、処理部と、を有し、
前記処理部に、
端末から第1の要求を受け付けて、前記乱数を生成する乱数生成ステップと、
前記生成した乱数を前記乱数記憶部に設定する設定ステップと、
前記生成した乱数を前記端末に送信する乱数送信ステップと、
前記乱数送信ステップで送信した乱数を含む第1の送信データを、前記端末から受信する受信ステップと、
前記第1の送信データに含まれる乱数と前記乱数記憶部に設定された乱数とが一致する場合、前記第1の送信データを初回の送信と判別して前記乱数記憶部の乱数を削除するとともに、
前記第1の送信データに含まれる乱数と前記乱数記憶部に設定された乱数とが一致しない場合、前記第1の送信データを2重送信と判別する判別ステップと、を実行させること
を特徴とする2重送信判別プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2006−260295(P2006−260295A)
【公開日】平成18年9月28日(2006.9.28)
【国際特許分類】
【出願番号】特願2005−78150(P2005−78150)
【出願日】平成17年3月17日(2005.3.17)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】