JPWO2018190154A1 - 通信装置、情報処理装置、およびデータ処理システム - Google Patents

通信装置、情報処理装置、およびデータ処理システム Download PDF

Info

Publication number
JPWO2018190154A1
JPWO2018190154A1 JP2019512432A JP2019512432A JPWO2018190154A1 JP WO2018190154 A1 JPWO2018190154 A1 JP WO2018190154A1 JP 2019512432 A JP2019512432 A JP 2019512432A JP 2019512432 A JP2019512432 A JP 2019512432A JP WO2018190154 A1 JPWO2018190154 A1 JP WO2018190154A1
Authority
JP
Japan
Prior art keywords
processing
server
communication
servers
transmits
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.)
Granted
Application number
JP2019512432A
Other languages
English (en)
Other versions
JP7136087B2 (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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Publication of JPWO2018190154A1 publication Critical patent/JPWO2018190154A1/ja
Application granted granted Critical
Publication of JP7136087B2 publication Critical patent/JP7136087B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10297Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for handling protocols designed for non-contact record carriers such as RFIDs NFCs, e.g. ISO/IEC 14443 and 18092
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/0723Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

本技術は、システム全体としての処理時間の最大値を小さくすることができることができるようにする通信装置、情報処理装置、およびデータ処理システムに関する。リーダライタの通信部は、ICカードに対してコマンドの送信を行った結果に基づいて、所定のリクエストを複数のサーバに対して送信するともに、複数のサーバから、リクエストに対するレスポンスを受信する。リーダライタの制御部は、複数のサーバのうち、最も早く受信したサーバのレスポンスに基づいて、次の処理を実行する。本技術は、例えば、データ処理システム等に適用できる。

Description

本技術は、通信装置、情報処理装置、およびデータ処理システムに関し、特に、システム全体としての処理時間の最大値を小さくすることができることができるようにした通信装置、情報処理装置、およびデータ処理システムに関する。
電子マネーシステムやセキュリティシステムなどでは、リーダライタと通信可能な外部装置を搭載したICカードが広く普及してきている。さらに近年では、非接触外部装置を搭載し、リーダライタと非接触通信可能な携帯端末も普及してきている。
このようなICカードや携帯端末を用いたシステムでは、通信でやりとりした情報がリーダライタからサーバに送信され、データ処理される(例えば、特許文献1参照)。
特開2006−99509号公報
ICカード、リーダライタ、及び、サーバからなるシステム全体の処理時間のうち、通信回線や処理要求の輻輳等により、リーダライタとサーバ間の通信時間およびサーバでの処理時間のばらつきが大きい。結果として、システム全体としての処理時間が大きくなることがあった。
本技術は、このような状況に鑑みてなされたものであり、システム全体としての処理時間の最大値を小さくすることができるようにするものである。
本技術の第1の側面の通信装置は、外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストを複数のサーバに対して送信するともに、前記複数のサーバから、前記リクエストに対するレスポンスを受信する通信部と、前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理を実行する制御部とを備える。
本技術の第1の側面においては、外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストが複数のサーバに対して送信されるともに、前記複数のサーバから、前記リクエストに対するレスポンスが受信され、前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理が実行される。
本技術の第2の側面の情報処理装置は、外部装置に対してコマンドの送信を行う通信装置から、所定のリクエストを受信するとともに、前記リクエストに対して実行した処理の処理結果を含むレスポンスを前記通信装置に送信する通信部と、前記処理を実行する制御部とを備え、前記レスポンスに含まれる前記処理結果は、前記通信装置が復号できない鍵で暗号化されている。
本技術の第2の側面においては、外部装置に対してコマンドの送信を行う通信装置から、所定のリクエストが受信されるとともに、前記リクエストに対して処理が実行され、実行された処理の処理結果を含むレスポンスが前記通信装置に送信される。前記レスポンスに含まれる前記処理結果は、前記通信装置が復号できない鍵で暗号化されている。
本技術の第3の側面のデータ処理システムは、通信装置と、複数のサーバとからなり、前記通信装置は、外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストを前記複数のサーバに対して送信するともに、前記複数のサーバから、前記リクエストに対するレスポンスを受信する第1通信部と、前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理を実行する第1制御部とを備え、前記複数のサーバそれぞれは、前記通信装置から、前記リクエストを受信するとともに、前記リクエストに対して実行した処理の処理結果を含むレスポンスを前記通信装置に送信する第2通信部と、前記処理を実行する第2制御部とを備え、前記レスポンスに含まれる前記処理結果は、前記通信装置が復号できない鍵で暗号化されている。
本技術の第3の側面においては、通信装置と、複数のサーバとからなり、前記通信装置では、外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストが前記複数のサーバに対して送信されるともに、前記複数のサーバから、前記リクエストに対するレスポンスが受信され、前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理が実行される。前記複数のサーバそれぞれでは、前記通信装置から、前記リクエストが受信されるとともに、前記リクエストに対して処理が実行され、実行された処理の処理結果を含むレスポンスが前記通信装置に送信される。前記レスポンスに含まれる前記処理結果は、前記通信装置が復号できない鍵で暗号化されている。
本技術の第4の側面の情報処理装置は、外部装置に対して行った認証処理の処理結果と、その処理を識別する処理識別情報を、複数の他の情報処理装置から受信する通信部と、複数の他の情報処理装置から受信された、同一の前記処理識別情報をもつ前記処理結果を、同一の認証処理結果とみなす処理を実行する制御部とを備える。
本技術の第4の側面においては、外部装置に対して行った認証処理の処理結果と、その処理を識別する処理識別情報が、複数の他の情報処理装置から受信され、複数の他の情報処理装置から受信された、同一の前記処理識別情報をもつ前記処理結果を、同一の認証処理結果とみなす処理が実行される。
なお、本技術の第1の側面の通信装置、第2の側面の情報処理装置、及び、第4の側面の情報処理装置は、コンピュータにプログラムを実行させることにより実現することができる。また、コンピュータに実行させるプログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
第1の側面の通信装置、第2の側面の情報処理装置、及び、第4の側面の情報処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
本技術の第1乃至第3の側面によれば、システム全体としての処理時間の最大値を小さくすることができる。
また、本技術の第4の側面によれば、複数のサーバで実行された同一処理の重複を排除することができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
シンクライアント型のデータ処理システムの一般的構成例を示すブロック図である。 図1のデータ処理システムにおける通信処理例を示すフローチャートである。 本技術を適用したデータ処理システムの構成例を示すブロック図である。 図2と同じ通信処理を図3のデータ処理システムで実行した場合のフローチャートである。 トランザクションのシーケンス例である。 第1の問題を説明する通信処理例を示す図である。 第1の問題を説明する通信処理例を示す図である。 第1の問題を解決した図3のデータ処理システムの通信処理を示すフローチャートである。 第1の問題を解決した図3のデータ処理システムの通信処理を示すフローチャートである。 後処理サーバを設けた場合の通信処理を示すフローチャートである。 第2の問題を説明する通信処理例を示す図である。 第2の問題を解決した図3のデータ処理システムの通信処理を示すフローチャートである。 図12の通信処理の変形例を示すフローチャートである。 後処理サーバを用いない場合の通信処理例を示すフローチャートである。 ICカードおよびリーダライタの構成例を示すブロック図である。 携帯端末の構成例を示すブロック図である。 サーバ装置の構成例を示すブロック図である。
以下、本技術を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.シンクライアント型データ処理システムの一般的構成例
2.本技術を適用したデータ処理システムの構成例
3.複数サーバ構成で発生し得る第1の問題と対策
4.複数サーバ構成で発生し得る第2の問題と対策
5.ハードウエア構成例
<1.シンクライアント型データ処理システムの一般的構成例>
非接触通信を行うICカードから、所定のデータを読み出して、所定の処理を実行したのち、処理後のデータをICカードに書き込むデータ処理システムとして、サーバ側でコマンドを生成するシンクライアント型のシステムがある。
図1は、非接触通信を行うICカードを用いたシンクライアント型のデータ処理システムの一般的構成例を示している。
データ処理システムは、ICカード11、リーダライタ12、及び、サーバ13により構成される。また、データ処理システムによっては、後処理サーバ14がさらに設けられる場合もある。
ICカード11は、ICチップを搭載したカードであり、リーダライタ12から見て外部に存在する外部装置である。リーダライタ12は、ICカード11に格納された所定のデータを、ICカード11から読み出したり、書き込んだりする。これにより、ICカード11を所有するユーザに、電子マネーサービス、電車・バス等の交通機関の乗車券サービス、クレジットカードサービスなどの所定のサービスを提供する。データは、例えば、電子マネーシステムの電子マネー情報、クレジットカードのカード情報、電車、バス等の交通機関の乗車券情報、ICカード11に固有のカードIDなどである。
ICカード11は、リーダライタ12との間で、近接型のICカードシステムの規格であるISO/IEC 14443、または、NFCIP(Near Field Communication Interface and Protocol)-1の規格であるISO/IEC 18092に準拠した近接通信(非接触通信)によって、所定のデータをやりとりする。近接通信または非接触通信とは、通信する装置どうしの距離が、数10cm以内となって可能となる非接触による通信を意味し、通信する装置どうし(の筐体)が接触して行う通信も含まれる。
リーダライタ12は、サーバ13との間で、所定のネットワークを介したネットワーク通信によって、所定のデータをやりとりする。所定のネットワークとは、例えば、インターネット、電話回線網、衛星通信網、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)、IP−VPN(Internet Protocol−Virtual Private Network)などの専用回線網などである。
サーバ13は、リーダライタ12からの要求に応じて、データ処理システムがユーザに提供するサービスに関する所定のデータ処理を行う。例えば、サーバ13は、電子マネーデータの管理、ユーザデータの管理などを行う。
後処理サーバ14は、サーバ13で実行されたデータ処理の後処理を行う。
図2は、図1のデータ処理システムにおける通信処理例を示すフローチャートである。
リーダライタ12は、ステップS1において、リーダライタ12の通信距離内に検出されたICカード11に対して、所定のコマンドの一つであるコマンド1を送信する。
ICカード11は、ステップS2において、リーダライタ12から受信したコマンド1に対する返信として、レスポンス1をリーダライタ12に送信する。
リーダライタ12は、ステップS3において、ICカード11からレスポンス1を受信し、受信したレスポンス1に応じて、所定の処理を要求するリクエストAを、サーバ13に送信する。
サーバ13は、ステップS4において、リーダライタ12からのリクエストAを受信し、受信したリクエストAに応じた所定の処理を実行し、ステップS5において、処理結果に基づいて、リクエストAに対する返信であるレスポンスAを、リーダライタ12に送信する。リーダライタ12からみたサーバ13の処理時間は、図2に示されるように、リクエストAを送信してからレスポンスAを受信するまでの時間であり、リーダライタ12とサーバ13間の通信時間も含まれる。
リーダライタ12は、ステップS6において、サーバ13からレスポンスAを受信し、レスポンスAに基づく次のコマンドとして、コマンド2をICカード11に送信する。
ICカード11は、ステップS7において、リーダライタ12から受信したコマンド2に対する返信として、レスポンス2をリーダライタ12に送信する。
ICカード11とリーダライタ12間のコマンド及びレスポンスは、上述したように近接通信によって、やりとりされる。リーダライタ12とサーバ13のリクエスト及びレスポンスは、ネットワーク通信によって、やりとりされる。
このようなデータ処理システムにおいて、ICカード11における処理時間、リーダライタ12における処理時間、および、ICカード11とリーダライタ12間の通信時間は、短時間であり、時間のばらつき(標準偏差)も小さい。
一方、サーバ13における処理時間、リーダライタ12とサーバ13間の通信時間については、通信回線のトラフィックや、多数のリーダライタ12からの処理要求の輻輳等によって、時間のばらつき(標準偏差)が大きくなる場合がある。
したがって、データ処理システム全体の処理時間の最大値を小さくするためには、リーダライタ12とサーバ13間の処理時間の平均を短くするとともに、ばらつきを小さくする必要がある。
<2.本技術を適用したデータ処理システムの構成例>
そこで、図3は、本技術を適用したデータ処理システムであって、システム全体の処理最大時間の短縮を目的としたデータ処理システムの構成例を示している。
図3に示されるデータ処理システム40は、ICカード11およびリーダライタ51と、3つのサーバ52である第1サーバ52A、第2サーバ52B、及び、第3サーバ52Cとで構成される。また、図1における場合と同様に、データ処理システム40によっては、後処理サーバ53がさらに設けられる場合もある。
図3から明らかなように、図1のデータ処理システムとの大きな違いは、図1のサーバ13に相当する装置であるサーバ52が、複数個設けられている点である。ICカード11に関しては、図1のデータ処理システムと同一である。
なお、図3の例では、サーバ52が3個設けられた構成が示されているが、サーバ52の個数は複数であればよい。したがって、サーバ52の個数は、2個でもよいし、4個以上であってもよい。
リーダライタ51は、外部装置であるICカード11との間で、近接型のICカードシステムの規格であるISO/IEC 14443、または、NFCIP-1の規格であるISO/IEC 18092に準拠した近接通信(非接触通信)によって、所定のデータをやりとりする。
また、リーダライタ51は、複数のサーバ52との間で、所定のネットワークを介したネットワーク通信によって、所定のデータをやりとりする。所定のネットワークとは、例えば、インターネット、電話回線網、衛星通信網、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)、IP−VPN(Internet Protocol−Virtual Private Network)などの専用回線網などである。
複数のサーバ52それぞれ(第1サーバ52A乃至第3サーバ52C)は、データ処理システム40がユーザに提供するサービスに関する所定のデータ処理を行う。例えば、サーバ52は、電子マネーデータの管理、ユーザデータの管理などを行う。
後処理サーバ53は、複数のサーバ52(第1サーバ52A乃至第3サーバ52C)で実行されたデータ処理の後処理、例えば、複数のサーバ52の処理結果の突合処理、異常検知処理などを行う。
図4は、図2で説明したシーケンスと同じ通信処理を、図3のデータ処理システム40で実行した場合のフローチャートである。
リーダライタ51は、ステップS41において、リーダライタ51の通信距離内に検出されたICカード11に対して、所定のコマンドの一つであるコマンド1を送信する。
ICカード11は、ステップS42において、リーダライタ12から受信したコマンド1に対する返信として、レスポンス1をリーダライタ51に送信する。
リーダライタ51は、ステップS61において、ICカード11からレスポンス1を受信し、受信したレスポンス1に応じて、所定の処理を要求するリクエストAを、3つのサーバ52、すなわち、第1サーバ52A、第2サーバ52B、及び、第3サーバ52Cに送信する。
第1サーバ52A、第2サーバ52B、及び、第3サーバ52Cそれぞれは、リーダライタ51からリクエストAを受信した時点から、受信したリクエストAに応じた所定の処理を開始(実行)する。具体的には、第1サーバ52Aは、ステップS62において、リクエストAに応じた所定の処理を開始し、第2サーバ52Bは、ステップS63において、リクエストAに応じた所定の処理を開始し、第3サーバ52Cは、ステップS64において、リクエストAに応じた所定の処理を開始する。
そして、第1サーバ52A、第2サーバ52B、及び、第3サーバ52Cそれぞれは、受信したリクエストAに応じた所定の処理が終了した時点で、処理結果に基づいて、リクエストAに対する返信であるレスポンスAを、リーダライタ51に送信する。図4の例では、処理終了のタイミングが、第2サーバ52B、第3サーバ52C、第1サーバ52Aの順となっており、まず先に、ステップS65において、第2サーバ52Bが、レスポンスAをリーダライタ12に送信し、ステップS66において、第3サーバ52Cが、レスポンスAをリーダライタ12に送信し、ステップS67において、第1サーバ52Aが、レスポンスAをリーダライタ12に送信する。
リーダライタ51から複数のサーバ52へ送信されるリクエストは、同一内容であり、複数のサーバ52は、同一のリクエストに対して同じ処理を実行した結果を、レスポンスとして、リーダライタ51に送信する。したがって、サーバ52からリーダライタ51へ送信されるレスポンスは、同一処理に基づく結果であるが、送信されるデータ自体は異なる場合がある。
例えば、リーダライタ51から複数のサーバ52へ送信されるリクエストが、セッション鍵の要求である場合、各サーバ52は、リクエストに基づき、セッション鍵とする乱数を生成する処理を実行する。各サーバ52によって生成される乱数は一般的には異なる値となるので、各サーバ52が、セッション鍵としてリーダライタ51へ送信するセッション鍵情報としての乱数(値)は、異なるものとなる。
リーダライタ51は、同一のリスエストを送信した複数のサーバ52のうち、最も早く返信してきたサーバ52のデータを用いて、次のコマンド2をICカード11に送信する。図4の例では、第2サーバ52Bから、レスポンスAを最も早く受信するので、リーダライタ51は、第2サーバ52BからレスポンスAを受信した後、ステップS43において、レスポンスAに基づく次のコマンドとして、コマンド2をICカード11に送信する。
ICカード11は、ステップS44において、リーダライタ51から受信したコマンド2に対する返信として、レスポンス2をリーダライタ51に送信する。
以上のように、データ処理システム40では、リーダライタ51が、同一のリクエストAを複数のサーバ52へ送信する。各サーバ52は、リーダライタ51からのリクエストAを受信し、同一の処理を実行し、処理が終了し次第、受信したリクエストAに対する返信であるレスポンスAをリーダライタ51へ送信する。したがって、リーダライタ51が送信したリクエストAに対する同一の処理が、複数のサーバ52で並行して実行される。
そして、リーダライタ51は、複数のサーバ52のうち、最も早くレスポンスAを送信してきたサーバ52のデータを用いて、次の処理を実行する。
図4において、リーダライタ51からみた第1サーバ52A、第2サーバ52B、及び、第3サーバ52CのリクエストAに対する処理時間は、それぞれ、T1、T2、及び、T3であり、それらの処理時間の大きさは、T2<T3<T1となっている。
したがって、この例では、リーダライタ51は、コマンド2のICカード11への送信を、第2サーバ52Bからレスポンスを受信したタイミングで開始する。
データ処理システム40では、複数のサーバ52による処理時間(通信時間も含む)の最小値が、リーダライタ51からみたサーバ群の処理時間となるので、図1の1台のサーバ13で構成したデータ処理システムと比較して、処理時間の平均が短くなるとともに、ばらつき(標準偏差)も小さくなる。よって、データ処理システム全体の処理時間の最大値を小さくすることができる。
また、データ処理システム40では、複数のサーバ52を備えることにより、そのうちの1台(例えば、第2サーバ52B)が停止した場合であっても、他のサーバ52(第1サーバ52Aと第3サーバ52C)を用いて処理を行うことができる。
さらに、複数のサーバ52とリーダライタ51間の通信路も複数にすることで、所定の通信路の一時的な負荷上昇、切断などが発生した場合であっても、他の通信路を用いたサーバ52を使って処理を行うことができる。例えば、リーダライタ51と第1サーバ52A間の通信路が公衆網であり、リーダライタ51と第2サーバ52B間の通信路が専用線である場合、専用線が輻輳しても、公衆網を利用して第1サーバ52Aを用いた処理を行うことができる。
したがって、データ処理システム40によれば、システム全体の可用性を向上させることができ、ユーザビリティが向上する。
なお、上述した例では、リーダライタ51は、データ処理システム40として構成されている複数のサーバ52の全てにリクエストを送信する例を示したが、必ずしもすべてのサーバ52に送信する必要はなく、所定の条件に基づいて2以上のサーバ52を適宜選択し、リクエストを送信する構成としてもよい。
データ処理システム40として構成されている複数のサーバ52から、リクエストを送信する2以上のサーバ52を決定する方法としては、例えば、以下の方法がある。
(1)リーダライタ51は、送信するリクエストの種類によって、送信するサーバ52を決定する。
(2)リーダライタ51は、その前に受信したレスポンスの到着時刻に基づいて、送信するサーバ52を決定する。具体的には、リーダライタ51は、到着時刻の早い複数のサーバ52を選択したり、到着時刻の遅い1以上のサーバ52を除外する。
<3.複数サーバ構成で発生し得る第1の問題と対策>
次に、データ処理システム40のように複数サーバ構成とした場合に発生し得る問題と、それに対して、データ処理システム40で実施されている対策について説明する。
初めに、複数サーバ構成で発生し得る第1の問題と対策について説明する。
リーダライタ51とサーバ52間の通信が1回しか行われない場合には、データ処理システム40のデータ通信は、図4に示したシーケンスのようになるが、一般に、トランザクション(一連の処理)には、リーダライタ51とサーバ52間の通信が複数回含まれる。
図5は、リーダライタ51とサーバ52間の通信が複数回含まれるトランザクションのシーケンス例である。
ICカード11とサーバ52との間では、1つのトランザクションとして、ステップS81乃至86のコマンドとレスポンスのやりとりが、順次、実行される。
ステップS81は、ICカード11を捕捉するコマンド(いわゆるポーリングコマンド)と、そのレスポンスである。ステップS82は、ICカード11で提供される所定のサービスに対応するサービス鍵情報を取得するコマンドと、そのレスポンスである。ステップS83は、ICカード11を認証するためのコマンドと、そのレスポンスである。ステップS84は、リーダライタ51を認証するためのコマンドと、そのレスポンスである。ステップS85は、ICカード11が保有するデータを読み出すためのコマンドと、そのレスポンスである。ステップS86は、ICカード11に所定のデータを書き込むためのコマンドと、そのレスポンスである。
そして、リーダライタ51とサーバ52との間では、ステップS81乃至86のコマンドとレスポンスに応じて、ステップS91乃至S96のリクエストとレスポンスのやりとりが、順次、実行される。
このとき、例えば、ステップS91のレスポンスにおいて、サーバ52からリーダライタ51へ送信される情報のなかに、それ以降のステップS92乃至S96のリクエストとレスポンスのやりとりで必要な情報が含まれる場合がある。そのような情報の例としては、例えば、セッション鍵を示す情報であるセッション鍵情報がある。具体的には、例えば、ステップS91において、セッション鍵の要求をリクエストし、サーバ52が、セッション鍵として使用する所定の乱数を生成して、レスポンスとしてリーダライタ51へ返信する。ステップS92乃至S96では、ステップS91で生成されたセッション鍵を用いて、リクエストとレスポンスがやりとりされる。
このように、サーバが、あるタイミングで処理した処理結果を、それ以降の処理で必要とする場合、図1のような、サーバ1台構成のデータ処理システムでは、サーバ13は、それまでにやりとりした情報を全て把握しているため、問題は発生しないが、図3のデータ処理システム40のように、複数のサーバ52を用いた場合には、問題が発生し得る(第1の問題)。
図6及び図7は、複数サーバ構成のデータ処理システム40において発生し得る第1の問題の通信処理例を示している。なお、図6以降の説明では、複数サーバ構成として少なくとも2つのサーバ52があればよいので、第3サーバ52Cは省略されている。
図6の通信処理例は、リーダライタ51が各サーバ52へ第1の処理と第2の処理を順に要求し、第1の処理結果を第2の処理結果に用いる場合であって、各サーバ52で得られる第1の処理結果が同一である場合の例である。
トランザクションの大まかな流れとしては、リーダライタ51は、ICカード11との間で、ステップS121乃至S123として、コマンドとレスポンスのやりとりを3回実行する。そして、リーダライタ51は、ステップS121において、レスポンス1をICカード11から受信した後に、各サーバ52へリクエストAを送信して第1の処理を要求し、各サーバ52からレスポンスAを受信する。また、リーダライタ51は、ステップS122においてレスポンス2をICカード11から受信した後に、各サーバ52へリクエストBを送信して第2の処理を要求し、各サーバ52からレスポンスBを受信する。
リーダライタ51は、第1の処理を要求するリクエストAを、第1サーバ52Aと第2サーバ52Bへ送信する。第2サーバ52Bは、リクエストAを受信して第1の処理を実行し、実行結果として、処理結果X1に基づくレスポンスAをリーダライタ51へ送信したが、第1サーバ52Aは、通信路が一時的に使用できずに、リクエストAを受信できなかった。これにより、第1サーバ52Aは、第1の処理を実行せず、実行していれば得られたはずの、処理結果X1を得ることができなかった。
そのため、第1サーバ52Aと第2サーバ52Bが、リーダライタ51からリクエストBを受信して第2の処理を実行し、その処理結果をレスポンスBとして返信する場合、第1サーバ52Aは、処理結果X1を知らないので、正しい第2の処理結果を得ることができない。
図7の通信処理例は、リーダライタ51が各サーバ52へ第1の処理と第2の処理を順に要求し、第1の処理結果を第2の処理結果に用いる場合であって、各サーバ52で得られる第1の処理結果が異なる場合の例である。
リーダライタ51は、第1の処理を要求するリクエストAを、第1サーバ52Aと第2サーバ52Bへ送信する。第1サーバ52Aは、リクエストAを受信して第1の処理を実行し、実行結果として、処理結果Y1に基づくレスポンスA1をリーダライタ51へ送信する。第2サーバ52Bは、リクエストAを受信して第1の処理を実行し、実行結果として、処理結果Y2に基づくレスポンスA2をリーダライタ51へ送信する。
リーダライタ51は、第1サーバ52Aから送信されてきたレスポンスA1と、第2サーバ52Bから送信されてきたレスポンスA2のうち、第1サーバ52AからのレスポンスA1を早く受信したので、第1サーバ52Aからの処理結果Y1に基づくレスポンスA1を採用して、ICカード11との次の通信処理を実行する。
そして、リーダライタ51は、第2の処理を要求するリクエストBを、第1サーバ52Aと第2サーバ52Bへ送信するが、第2サーバ52Bは、リーダライタ51が、第1サーバ52Aの処理結果Y1を採用したことを知らず、処理結果Y1も知らないため、正しい第2の処理結果を得ることができない。
このように、サーバが、あるタイミングで処理した処理結果を、それ以降の処理で必要とする場合において、複数のサーバ52を用いたデータ処理システム40においては、何らの対策を施さず、サーバ1台構成のデータ処理システムと同じように通信を行った場合には、トランザクション全体の処理として、正しい処理結果を得ることができない場合がある。
そこで、上記の第1の問題を解決するため、データ処理システム40の各サーバ52は、各サーバ52におけるそれ以降の処理で必要とする情報をリーダライタ51へのレスポンスに含めて送信し、データ処理システム50のリーダライタ51は、その情報を、次に各サーバ52に送信するリクエストに含めて送信する。
上述したように、複数のサーバ52それぞれからレスポンスを受信した場合には、最も早くレスポンスを送信してきたサーバ52のデータを用いて、次の処理を実行するので、リーダライタ51は、最も早く受信したサーバ52のレスポンスに含まれる情報を、次に各サーバ52に送信するリクエストに含めて送信する。
図8は、図6と同一状況において、第1の問題に対して対策を施したデータ処理システム40の通信処理を示すフローチャートである。
ステップS121においてICカード11とリーダライタ51との間で、コマンド1とレスポンス1のやりとりが実行された後、ステップS141において、リーダライタ51は、リクエストAを複数のサーバ52へ送信する。
図6と同様に、リクエストAは、第1サーバ52Aには到達せず、第2サーバ52Bには到達した。
第2サーバ52Bは、ステップS142において、第1の処理を実行し、ステップS143において、処理結果X1を含むレスポンスAを、リーダライタ51へ送信する。処理結果X1は、複数のサーバ52で共有された鍵で暗号化された後、デジタル署名またはメッセージ認証符号を付して送信される。
リーダライタ51は、ステップS122として、ICカード11とリーダライタ51との間でコマンド2とレスポンス2を送受信した後、ステップS144において、ステップS143で受信した処理結果X1を含むリクエストBを、複数のサーバ52へ送信する。このときの処理結果X1も、複数のサーバ52で共有された鍵で暗号化され、デジタル署名またはメッセージ認証符号が付されている。
処理結果X1を含むリクエストBを受信した各サーバ52は、処理結果X1を用いて、第2の処理を実行する。具体的には、第1サーバ52Aは、ステップS145において、処理結果X1を用いて第2の処理を実行し、第2サーバ52Bは、ステップS147において、処理結果X1を用いて第2の処理を実行する。
第1サーバ52Aは、ステップS145における第2の処理の実行終了後、ステップS146において、リクエストBに対するレスポンスBとして、第2の処理の処理結果をリーダライタ51へ送信する。第2サーバ52Bは、ステップS147における第2の処理の実行終了後、ステップS148において、リクエストBに対するレスポンスBとして、第2の処理の処理結果をリーダライタ51へ送信する。
リーダライタ51は、最も早く受信したレスポンスBである、第1サーバ52AからのレスポンスBを受信した後、ステップS123として、ICカード11とリーダライタ51との間でコマンド3とレスポンス3を送受信する。
図9は、図7と同一状況において、第1の問題に対して対策を施したデータ処理システム40の通信処理を示すフローチャートである。
ステップS121においてICカード11とリーダライタ51との間で、コマンド1とレスポンス1のやりとりが実行された後、ステップS161において、リーダライタ51は、リクエストAを複数のサーバ52へ送信する。
リクエストAを受信した各サーバ52は、第1の処理を実行する。具体的には、第1サーバ52Aは、ステップS162において、第2の処理を実行し、ステップS163において、第1の処理の処理結果Y1を含むレスポンスA1を、リーダライタ51へ送信する。同様に、第2サーバ52Bは、ステップS164において、第1の処理を実行し、ステップS165において、第1の処理の処理結果Y2を含むレスポンスA2を、リーダライタ51へ送信する。処理結果Y1及びY2も、複数のサーバ52で共有された鍵で暗号化され、デジタル署名またはメッセージ認証符号が付されている。
リーダライタ51は、ステップS163における第1サーバ52AからのレスポンスA1を、ステップS165における第2サーバ52BからのレスポンスA2よりも先に受信したとする。
リーダライタ51は、ステップS122として、ICカード11とリーダライタ51との間でコマンド2とレスポンス2を送受信した後、ステップS166において、ステップS163で受信した処理結果Y1を含むリクエストBを、複数のサーバ52へ送信する。この処理結果Y2も、複数のサーバ52で共有された鍵で暗号化され、デジタル署名またはメッセージ認証符号が付されている。
処理結果Y1を含むリクエストBを受信した各サーバ52は、処理結果Y1を用いて、第2の処理を実行する。すなわち、第1サーバ52Aは、ステップS168において、処理結果Y1を用いて第2の処理を実行し、第2サーバ52Bは、ステップS167において、処理結果Y1を用いて第2の処理を実行する。
第2サーバ52Bは、ステップS167における第2の処理の実行終了後、ステップS169において、第2の処理の処理結果を含むレスポンスBを、リーダライタ51へ送信する。第1サーバ52Aは、ステップS168における第2の処理の実行終了後、ステップS170において、第2の処理の処理結果を含むレスポンスBを、リーダライタ51へ送信する。
リーダライタ51は、最も早く受信したレスポンスBである、第2サーバ52BからのレスポンスBを受信した後、ステップS123として、ICカード11とリーダライタ51との間でコマンド3とレスポンス3を送受信する。
以上のように、データ処理システム40の各サーバ52は、各サーバ52におけるそれ以降の処理で必要とする情報をリーダライタ51へのレスポンスに含めて送信し、データ処理システム40のリーダライタ51は、その情報を、次に各サーバ52に送信するリクエストに含めて送信する。これにより、図6及び図7で説明したような第1の問題を解決することができる。
また、各サーバ52から受信した情報であって、それ以降の処理で各サーバ52が必要とする情報が、リーダライタ51が知ってはならない情報である場合には、サーバ52は、その情報を、複数のサーバ52どうしで共有し、リーダライタ51が知らない鍵(リーダライタ51が復号できない鍵)で暗号化してから、レスポンスに含めて送信する。これにより、リーダライタ51には知られずに、他のサーバ52と情報を共有することができる。
<後処理サーバを備える場合>
データ処理システム40に、後処理サーバ53が設けられている場合について補足する。
データ処理システム40に、後処理サーバ53が設けられている場合、各サーバ52は、自分自身が処理を行った際には、トランザクション全体の処理に必要な情報(トランザクション必要情報)を、後処理サーバ53に送信する処理も行う。
後処理サーバ53は、各サーバ52から送信されてくるトランザクション必要情報を受信し、各サーバ52のトランザクション必要情報に基づいて、トランザクション全体の結果を判定する処理(後処理)を行う。トランザクション全体の結果を判定する処理としては、例えば、データ処理システム40が電子マネーを処理する電子マネーシステムである場合には、各サーバ52が保持している電子マネー残高情報の保守処理や、処理異常の検知処理などが挙げられる。
図10は、図8に示したデータ処理システム40の通信処理に、後処理サーバ53への通信処理を加えたフローチャートである。
図10の説明では、図8で説明した処理に新たに追加される処理のみ説明する。
第2サーバ52Bは、ステップS142における第1の処理を実行した後、ステップS181において、トランザクション必要情報として、処理結果Z1を後処理サーバ53に送信する。ステップS181とステップS143の処理の順番は問わない。
第1サーバ52Aは、ステップS145における第2の処理を実行した後、ステップS182において、トランザクション必要情報として、処理結果Z2を後処理サーバ53に送信する。ステップS182とステップS146の処理の順番は問わない。
第2サーバ52Bは、ステップS147における第2の処理を実行した後、ステップS183において、トランザクション必要情報として、処理結果Z2を後処理サーバ53に送信する。ステップS183とステップS148の処理の順番は問わない。
第1サーバ52Aと第2サーバ52Bが行う第2の処理は同じ処理であるので、ステップS182で第1サーバ52Aから送信されてくる処理結果Z2と、ステップS183で第2サーバ52Bから送信されてくる処理結果Z2は、同じものである。
ステップS184において、後処理サーバ53は、トランザクションを構成する各処理において複数のサーバ52から送信されてくるトランザクション必要情報を集約し、トランザクション全体の結果を判定する。また、後処理サーバ53は、トランザクション全体の結果に基づいて、予め決められた所定の処理を行う。
トランザクション必要情報の集約では、後処理サーバ53は、複数のサーバ52から送信されてくる同一の処理結果は、1つの処理結果として認定し、複数のサーバ52による重複を排除する処理を行う。
以上のように、データ処理システム40が後処理サーバ53を含む構成である場合には、各サーバ52は、各処理の実行結果に基づいて、トランザクション全体の処理に必要な情報を、他の情報処理装置である後処理サーバ53に送信する。後処理サーバ53は、トランザクションを構成する各処理において複数のサーバ52から送信されてくるトランザクション必要情報を集約し、トランザクション全体の結果を判定する。
<4.複数サーバ構成で発生し得る第2の問題と対策>
次に、複数サーバ構成で発生し得る第2の問題と対策について説明する。
図5に示したトランザクションのシーケンスにも見られるように、一連の通信処理には、リーダライタ51がICカード11を認証し、ICカード11がリーダライタ51を認証する相互認証が行われるが、リーダライタ51がICカード11を認証する手法には、一般にチャレンジ・レスポンス方式と呼ばれる方式が用いられる。
チャレンジ・レスポンス方式は、簡単に説明すると、以下のような方式である。
まず、リーダライタ51が乱数を生成し、生成した乱数または乱数に基づく値(以下、この値をランダムチャレンジという。)をICカード11に送信する。ICカード11は、自身が保持する秘密の鍵を使ってランダムチャレンジに対して特定の計算を行い、その計算結果をリーダライタ51に送信(返信)する。リーダライタ51は、ICカード11から送信されてきたランダムチャレンジ(RC)に対する計算結果(以下、RC計算結果という。)を検証することで、ICカード11が秘密の鍵を保持する真正な通信相手であることを認証する。
シンクライアント型のデータ処理システムでは、上述のランダムチャレンジを、サーバ52が生成し、RC計算結果を検証することで、ICカード11が秘密の鍵を保持する真正な通信相手であることを認証する。
データ処理システム40が、上述したように複数サーバ構成とされる場合、リーダライタ51はRC計算結果を複数のサーバ52に送信するので、複数回の認証処理が行われたような状態が発生し得る(第2の問題)。
図11のフローチャートを参照して、複数回の認証処理が行われたような状態が発生し得る場合の通信処理について説明する。
初めに、ステップS201において、複数のサーバ52のうちの一つ、例えば第1サーバ52Aが、ランダムチャレンジ(以下、RCという。)を生成し、生成したRCにデジタル署名を付けた署名付きRCを、リーダライタ51へ送信する。デジタル署名は、ランダムチャレンジ(RC)が真正なサーバ52によって生成されたことを証明する情報である。
本実施の形態では、複数用意されたサーバ52の所定の一つのサーバ52が、RCを生成するサーバ52として割り当てられ、割り当てられたサーバ52は、例えば定期的にまたは不定期にRCを生成し、リーダライタ51に送信する。なお、RCを生成する専用のサーバ52が設けられてもよいし、サーバ52が、リーダライタ51からランダムチャレンジ生成の要求を受けたときのみ、生成するようにしてもよい。
リーダライタ51は、ステップS202において、署名付きRCを第1サーバ52Aから受信し、受信したRCが真正な第1サーバ52Aで生成されたものであることを検証した後、カード認証コマンドとRCを、ICカード11に送信する。
ICカード11は、ステップS203において、カード認証コマンドとRCを受信し、RCに対して特定の計算を行い、その計算結果(RC計算結果)をリーダライタ51に送信(返信)する。
リーダライタ51は、ステップS204において、ICカード11から受信したRC計算結果を、署名付きRCとともに各サーバ52へ送信する。
ステップS205において、第1サーバ52Aは、リーダライタ51から署名付きRCとRC計算結果を受信し、RCを用いてRC計算結果を検証することで、ICカード11を認証する。
そして、ステップS206において、認証処理を実行した処理結果をリーダライタ51に送信する。
第2サーバ52B側においても同様に、第2サーバ52Bは、ステップS207において、リーダライタ51から署名付きRCとRC計算結果を受信し、受信したRCを用いてRC計算結果を検証することで、ICカード11を認証する。
そして、ステップS208において、認証処理を実行した処理結果をリーダライタ51に送信する。
以上のように、複数のサーバ52を備えるデータ処理システム40において、サーバ側でICカード11の認証処理を行った場合、例えば、ICカード11がリーダライタ51へ一度しかタッチされていないにも関わらず、複数回タッチされたような状況が起こり得る。
例えば、データ処理システム40が、電子マネーの残高をサーバ側で管理する電子マネーシステムである場合には、一度のタッチで複数回の決済を行うことにもなりかねない。
そこで、第2の問題に対して対策を施したデータ処理システム40による通信処理について説明する。
第2の問題への対策としては、RCを生成する第1サーバ52Aが、トランザクションを識別する情報であるTID(Transaction ID)も生成してリーダライタ51に送信する。リーダライタ51は、署名付きRC及びRC計算結果とともに、TIDも、各サーバ52に送信する。各サーバ52は、認証処理の処理結果を、TIDとともに、後処理サーバ53に送信する。そして、後処理サーバ53が、受信したTIDに基づいて、複数のサーバ52から受信した認証処理結果を突合する(突合せる)。
図12は、第2の問題に対して対策を施したデータ処理システム40の通信処理を示すフローチャートである。
初めに、ステップS221において、複数のサーバ52のうちの一つ、例えば第1サーバ52Aが、RCと、トランザクションを識別する情報であるTIDを生成し、生成したRCとTIDそれぞれにデジタル署名を付けた署名付きRC及び署名付きTIDを、リーダライタ51へ送信する。
リーダライタ51は、ステップS222において、署名付きRCを第1サーバ52Aから受信し、受信したRCとTIDが真正なサーバ52で生成されたものであることを検証した後、カード認証コマンドとRCを、ICカード11に送信する。
ICカード11は、ステップS223において、カード認証コマンドとRCを受信し、RCに対して特定の計算を行い、その計算結果(RC計算結果)をリーダライタ51に送信(返信)する。
リーダライタ51は、ステップS224において、ICカード11から受信したRC計算結果を、署名付きRC及び署名付きTIDとともに、各サーバ52へ送信する。
第1サーバ52Aは、ステップS225において、リーダライタ51から署名付きRC、署名付きTID、及びRC計算結果を受信し、受信したRCとTIDが真正な第1サーバ52Aで生成されたものであることを検証する。そして、第1サーバ52Aは、RCを用いてRC計算結果を検証することで、ICカード11を認証する。ステップS226において、第1サーバ52Aは、認証処理を実行した処理結果をリーダライタ51に送信する。
続いて、ステップS227において、第1サーバ52Aは、認証処理の処理結果と、認証処理を識別するための署名付きTIDを、後処理サーバ53に送信する。
第2サーバ52B側においても同様に、第2サーバ52Bは、ステップS231において、リーダライタ51から署名付きRC、署名付きTID、及びRC計算結果を受信し、受信したRCとTIDが真正な第1サーバ52Aで生成されたものであることを検証する。そして、第2サーバ52Bは、RCを用いてRC計算結果を検証することで、ICカード11を認証する。ステップS232において、第2サーバ52Bは、認証処理を実行した処理結果をリーダライタ51に送信する。
続いて、ステップS233において、第2サーバ52Bは、認証処理の処理結果と、認証処理を識別するための署名付きTIDを、後処理サーバ53に送信する。
後処理サーバ53は、ステップS241において、複数のサーバ52から送信されてきた認証処理の処理結果と署名付きTIDを受信し、TIDに基づく突合処理を行う。より具体的には、後処理サーバ53は、複数のサーバ52から送信されてきたTIDを突合せ、同一のTIDが付された処理結果は同一の処理結果であるとみなすことにより、所定の認証処理が1回だけ行われたものとして処理する。
これにより、例えば、データ処理システム40が、ICカード11が保持するICカード識別情報であるカードIDを鍵として、電子マネーの残高をサーバ側で管理する電子マネーシステムである場合には、TIDが同じ決済処理を、同一の決済として取り扱うことができる。
以上のように、RCを生成する第1サーバ52Aが、TIDも生成するようにして、認証処理を行った各サーバ52が、認証処理の処理結果をTIDとともに、後処理サーバ53に送信する。これにより、後処理サーバ53は、処理結果に付されたTIDに基づいて、同一処理の重複を排除することができるので、複数のサーバ52を備えるデータ処理システム40において発生し得る第2の問題を解決することができる。
なお、図12の通信処理では、RCを生成する第1サーバ52Aが、RCとTIDを同時に生成してリーダライタ51に送信するようにしたが、TIDを生成するタイミング及びリーダライタ51に送信するタイミングは、RCと異なるタイミングでもよい。
また、TIDは、RCと無関係に生成してもよいし、RCの値に基づいた計算により生成してもよい。
さらに言えば、TIDをRCで代用(兼用)することもできる。TIDをRCで代用した場合、図13に示されるように、ステップS221において、RCを生成する第1サーバ52Aが、リーダライタ51に送信するデータは、署名付きRCのみとなる。
図13は、図12に示した通信処理の変形例を示すフローチャートである。図12と図13の処理の流れは同じであるため、図13では、図12と同一のステップ番号が付されている。
ステップS224では、リーダライタ51は、署名付きRCと、ICカード11から受信したRC計算結果を、各サーバ52へ送信する。ステップS227及びS232では、認証処理の処理結果と、署名付きRCが、後処理サーバ53に送信される。ステップS241では、後処理サーバ53は、RCに基づいて、突合処理を行う。
次に、第2の問題に対して後処理サーバ53を用いない対策について説明する。
後処理サーバ53を用いない構成の場合には、RCを生成する第1サーバ52Aが、生成したRCの有効期限を短時間(例えば、数秒)に設定し、設定した有効期限にデジタル署名を付け、署名付きRCとともに、リーダライタ51に送信する。RC計算結果に基づいて認証する各サーバ52は、RCの有効期限を検証し、有効期限が有効である(すなわち有効期限内である)場合に、認証処理を実行する。
図14は、後処理サーバ53を用いない場合の具体的な通信処理例を示すフローチャートである。
初めに、ステップS241において、複数のサーバ52のうちの一つ、例えば第1サーバ52Aが、RCを生成するとともに、その有効期限を設定し、生成したRCとTIDそれぞれにデジタル署名を付けた署名付きRC及び署名付き有効期限を、リーダライタ51へ送信する。
リーダライタ51は、ステップS242において、署名付きRC及び署名付き有効期限を第1サーバ52Aから受信し、受信したRCが真正なサーバ52で生成されたものであることを検証した後、カード認証コマンドとRCを、ICカード11に送信する。
ICカード11は、ステップS243において、カード認証コマンドとRCを受信し、RCに対して特定の計算を行い、その計算結果(RC計算結果)をリーダライタ51に送信(返信)する。
リーダライタ51は、ステップS244において、ICカード11から受信したRC計算結果を、署名付きRC及び署名付き有効期限とともに、各サーバ52へ送信する。
第1サーバ52Aは、ステップS245において、リーダライタ51から署名付きRC、署名付き有効期限、及びRC計算結果を受信し、受信したRCと有効期限が真正な第1サーバ52Aで生成されたものであることを検証する。そして、第1サーバ52Aは、有効期限が有効であるかを検証し、さらにRC計算結果を検証することで、ICカード11を認証する。ステップS246において、第1サーバ52Aは、認証処理を実行した処理結果をリーダライタ51に送信する。
第2サーバ52B側においても同様に、第2サーバ52Bは、ステップS251において、リーダライタ51から署名付きRC、署名付き有効期限、及びRC計算結果を受信し、受信したRCと有効期限が真正な第1サーバ52Aで生成されたものであることを検証する。そして、第2サーバ52Bは、有効期限が有効であるかを検証し、さらにRC計算結果を検証することで、ICカード11を認証する。ステップS252において、第2サーバ52Bは、認証処理を実行した処理結果をリーダライタ51に送信する。
有効期限は、極めて短く設定されるので、リーダライタ51は、有効期限内に複数のサーバ52から送信されてきた処理結果は同一の処理とみなす処理を行う。
一方、例えば、図14のステップS281乃至S283のように、有効期限が過ぎた期間に、リーダライタ51から署名付きRC、署名付き有効期限、及びRC計算結果が所定のサーバ52(図14では、第2サーバ52B)に送信された場合には、認証処理は成功せず、失敗の処理結果がリーダライタ51に返信される。
したがって、例えば、リーダライタ51になりすました悪意のあるリーダライタが、署名付きRC、署名付き有効期限、及びRC計算結果を取得して、任意のサーバ52に送信した場合が発生したとしても、認証処理が成功せず、不正な処理を防止することができる。
<5.ハードウエア構成例>
<ICカードとリーダライタの構成例>
図15は、ICカード11およびリーダライタ51の構成例を示すブロック図である。
リーダライタ51のRF通信部101は、所定の電磁波を輻射し、それに対する負荷の変化に基づいて、ICカード11が近接されたか否かを検出するとともに、例えば、ICカード11が近接されたとき、ICカード11と各種のデータを非接触で送受信する。
RF通信部101は、アンテナを備え、ICカード11との間で、例えば、ISO/IEC 14443、または、ISO/IEC 18092に準拠した近接通信(非接触通信)を行う。RF通信部101は、例えば、不図示の発振回路(OSC)から供給される所定の周波数の搬送波を、CPU102から供給されるデータに基づいて、ASK(Amplitude Shift Keying)変調し、生成された変調波を、電磁波としてアンテナから出力する。また、アンテナを介して取得した変調波(ASK変調波)を復調し、復調されたデータをCPU102に供給する。
RF通信部101は、CPU102の制御に基づいて、電磁波を用いて、コマンドをICカード11に送信するとともに、レスポンスを受信する。
リーダライタ51のCPU(Central Processing Unit)102は、リーダライタ51の動作全体を制御する制御部である。CPU102は、ROM(Read Only Memory)103に記憶されているプログラムを、RAM(Random Access Memory)104にロードするなどして各種の処理を実行する。RAM104にはまた、CPU102が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU102は、暗号演算部105を制御することにより、予め定められた暗号アルゴリズムに基づく、データの暗号化と復号を行うことができるように構成されている。ここで、暗号演算部105の暗号アルゴリズムは、DES(Data Encryption Standard)、トリプルDES、AES(Advanced Encryption Standard)などの暗号アルゴリズムであって、いわゆる秘密鍵(共通鍵)暗号方式の暗号アルゴリズムとされる。
リーダライタ51においてデータの暗号化または復号を行う場合、例えば、CPU102が秘密鍵記憶部106に記憶された秘密鍵を、暗号化または復号すべきデータとともに、暗号演算部105に供給することにより、暗号演算部105による、供給された秘密鍵を用いた、供給されたデータの暗号化または復号が実行される。
秘密鍵記憶部106に記憶される秘密鍵は、ICカード11に記憶されている秘密鍵と同じものとされ、ICカード11に対応するリーダライタ51であって、ICカード11に固有の識別情報であるカードIDの読み出しを許可されたリーダライタ51のみに、予め秘密鍵が記憶されている。
通信部107は、CPU102の制御に基づいて、複数のサーバ52との間で、所定のネットワークを介したネットワーク通信によって、所定のデータをやりとりする。所定のネットワークとは、上述したように、例えば、インターネット、電話回線網、衛星通信網、Ethernet(登録商標)を含む各種のLAN、WAN、IP−VPNなどの専用回線網などとすることができるが、その種類は問わない。
ICカード11のRF通信部201は、例えば、コイル状のアンテナとコンデンサにより構成されるLC回路を有する構成とされ、リーダライタ51との間で、例えば、ISO/IEC 14443、または、ISO/IEC 18092に準拠した近接通信(非接触通信)を行う。
RF通信部201は、リーダライタ51から輻射される所定の周波数の電磁波と共振するようになされている。また、RF通信部201は、アンテナにおいて励起された交流磁界をASK復調により整流し、それを安定化し、各部に直流電源として供給する。リーダライタ51から輻射される電磁波の電力は、ICカード11に必要な電力を賄う磁界を発生させるように調整されている。
また、RF通信部201は、アンテナを介して受信した変調波(ASK変調波)を包絡線検波して復調し、復調後のデータをBPSK(Binary Phase Shift Keying)復調してCPU202に供給するとともに、受信信号のクロック周波数と同一の周波数のクロック信号を発生してCPU202に供給する。
さらに、RF通信部201は、所定の情報をリーダライタ51に送信する場合、CPU202から供給されBPSK変調されたデータを、例えばアンテナの負荷の変動に基づいてASK変調し、その変調成分を、アンテナを介してリーダライタ51に送信する。
CPU202は、ICカード11の動作全体を制御する制御部であり、ROM203に記憶されているプログラムを実行するなどして各種の処理を実行する。秘密鍵記憶部204乃至データ記憶部206は、例えば、EEPROM(Electrically Erasable Programmable Read-Only Memory)などで構成され、それぞれがEEPROMの記憶領域の一部とされる。
CPU202は、暗号演算部207を制御することにより、予め定められた暗号アルゴリズムに基づく、データの暗号化と復号を行うことができるように構成されている。ここで、暗号演算部207の暗号アルゴリズムは、暗号演算部105の暗号アルゴリズムと同じアルゴリズムとされ、やはり秘密鍵(共通鍵)暗号方式の暗号アルゴリズムとされる。
ICカード11においてデータの暗号化または復号を行う場合、例えば、CPU202が秘密鍵記憶部204に記憶された秘密鍵を、暗号化または復号すべきデータとともに、暗号演算部207に供給することにより、暗号演算部207による、供給された秘密鍵を用いた、供給されたデータの暗号化または復号が実行される。
ID記憶部205は、ICカード11に固有の識別情報であるカードIDを記憶する。
データ記憶部206は、ICカード11を用いて行われる各種サービスなどを提供するためのアプリケーションデータなどが必要に応じて記憶される。
なお、暗号演算部105と暗号演算部207は、それぞれソフトウェアとして構成されるようにすることも可能である。
リーダライタ51とICカード11は、以上のように構成される。
なお、上述した説明では、リーダライタ51とICカード11が別々の装置とされ、リーダライタ51が、外部装置としてのICカード11との間で非接触通信を行うものとして説明した。
しかしながら、例えば、おサイフケータイ(登録商標)などとして知られている携帯端末のように、リーダライタ51とICカード11の機能が1つの装置内に含まれる構成があり得る。具体的には、図16に示されるように、携帯端末70が、リーダライタ51の機能を有するリーダライタ71と、ICカード11の機能を有するICチップ72とを備える。この場合も、ICチップ72は、リーダライタ71から見て外部に存在する外部装置である。したがって、本明細書でいう外部装置は、同じ筐体のなかにあってもよい。
同一筐体のなかに存在するリーダライタ71とICチップ72は、金属配線、入出力端子等で接続され、リーダライタ71とICチップ72との間では、有線通信により、コマンド及びレスポンスがやりとりされる。また、ICチップ72は、図15のRF通信部201の構成も有し、リーダライタ51と同様の構成を有する他のリーダライタ(通信装置)と、非接触通信を行うこともできる。
<サーバ装置の構成例>
図17は、各サーバ52や後処理サーバ53として用いられるサーバ装置の構成例を示すブロック図である。
サーバ装置300において、CPU(Central Processing Unit)301,ROM(Read Only Memory)302,RAM(Random Access Memory)303は、バス304により相互に接続されている。
バス304には、さらに、入出力インタフェース305が接続されている。入出力インタフェース305には、入力部306、出力部307、記憶部308、通信部309、及びドライブ310が接続されている。
入力部306は、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部307は、ディスプレイ、スピーカ、出力端子などよりなる。記憶部308は、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部309は、ネットワークインタフェースなどよりなる。ドライブ310は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブル記録媒体311を駆動する。
以上のように構成されるサーバ装置300では、CPU301が、例えば、記憶部308に記憶されているプログラムを、入出力インタフェース305及びバス304を介して、RAM303にロードして実行することにより、上述した一連の処理が行われる。CPU301は、サーバ装置300の動作全体を制御する制御部である。RAM303にはまた、CPU301が各種の処理を実行する上において必要なデータなども適宜記憶される。
サーバ装置300では、プログラムは、リムーバブル記録媒体311をドライブ310に装着することにより、入出力インタフェース305を介して、記憶部308にインストールすることができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して、通信部309で受信し、記憶部308にインストールすることができる。その他、プログラムは、ROM302や記憶部308に、あらかじめインストールしておくことができる。
本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる場合はもちろん、必ずしも時系列的に処理されなくとも、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで実行されてもよい。
本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
上述した例では、ICカード11とリーダライタ51が、ISO/IEC 14443またはISO/IEC 18092に準拠した近接通信(非接触通信)によって、所定のデータをやりとりするものとしたが、これ以外の通信仕様を用いてもよい。
例えば、上述した実施の形態の一部の機能のみを備えた形態を採用することができる。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、本明細書に記載されたもの以外の効果があってもよい。
なお、本技術は以下のような構成も取ることができる。
(1)
外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストを複数のサーバに対して送信するともに、前記複数のサーバから、前記リクエストに対するレスポンスを受信する通信部と、
前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理を実行する制御部と
を備える通信装置。
(2)
前記通信部は、最も早く受信した前記サーバの前記レスポンスに含まれる情報を、前記複数のサーバに送信する
前記(1)に記載の通信装置。
(3)
最も早く受信した前記サーバの前記レスポンスに含まれる情報は、自分が復号できない鍵で暗号化されており、
前記通信部は、前記鍵で暗号化された前記情報を、前記複数のサーバに送信する
前記(2)に記載の通信装置。
(4)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジを受信し、前記ランダムチャレンジと、前記外部装置から受信した前記ランダムチャレンジに対する計算結果を、前記複数のサーバに送信する
前記(1)乃至(3)のいずれかに記載の通信装置。
(5)
前記ランダムチャレンジには、デジタル署名が付されている
前記(4)に記載の通信装置。
(6)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、トランザクションを識別するトランザクション識別情報を受信し、前記ランダムチャレンジ及び前記トランザクション識別情報と、前記外部装置から受信した前記ランダムチャレンジに対する計算結果を、前記複数のサーバに送信する
前記(1)乃至(3)のいずれかに記載の通信装置。
(7)
前記ランダムチャレンジ及び前記トランザクション識別情報には、デジタル署名が付されている
前記(6)に記載の通信装置。
(8)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、その有効期限を示す有効期限情報を受信し、前記ランダムチャレンジ及び前記有効期限情報と、前記外部装置から受信した前記ランダムチャレンジに対する計算結果を、前記複数のサーバに送信する
前記(1)乃至(3)のいずれかに記載の通信装置。
(9)
前記ランダムチャレンジ及び前記有効期限情報には、デジタル署名が付されている
前記(8)に記載の通信装置。
(10)
前記外部装置に対して、非接触通信により、前記コマンドの送信を行う非接触通信部をさらに備える
前記(1)乃至(9)のいずれかに記載の通信装置。
(11)
前記外部装置に対して、有線通信により、前記コマンドの送信を行う有線通信部をさらに備える
前記(1)乃至(9)のいずれかに記載の通信装置。
(12)
前記制御部は、前記複数のサーバのうち、前記リクエストを送信する2以上のサーバを決定し、
前記通信部は、前記制御部が決定した2以上のサーバに前記リクエストを送信する
前記(1)乃至(11)のいずれかに記載の通信装置。
(13)
外部装置に対してコマンドの送信を行う通信装置から、所定のリクエストを受信するとともに、前記リクエストに対して実行した処理の処理結果を含むレスポンスを前記通信装置に送信する通信部と、
前記処理を実行する制御部と
を備え、
前記レスポンスに含まれる前記処理結果は、前記通信装置が復号できない鍵で暗号化されている
情報処理装置。
(14)
前記通信部は、さらに、前記処理の実行結果に基づいて、トランザクション全体の処理に必要な情報を、他の情報処理装置に送信する
前記(13)に記載の情報処理装置。
(15)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジを前記通信装置にさらに送信し、
前記制御部は、前記ランダムチャレンジを生成する処理をさらに実行する
前記(13)または(14)に記載の情報処理装置。
(16)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジに対する前記外部装置の計算結果を、前記ランダムチャレンジとともに、前記通信装置から受信し、
前記制御部は、前記ランダムチャレンジに対する計算結果に基づいて認証処理を実行し、
前記通信部は、前記認証処理の処理結果と前記ランダムチャレンジを、他の情報処理装置に送信する
前記(13)乃至(15)のいずれかに記載の情報処理装置。
(17)
前記ランダムチャレンジには、デジタル署名が付されている
前記(15)または(16)に記載の情報処理装置。
(18)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、トランザクションを識別するトランザクション識別情報を前記通信装置にさらに送信し、
前記制御部は、前記ランダムチャレンジと前記トランザクション識別情報を生成する処理をさらに実行する
前記(13)または(14)に記載の情報処理装置。
(19)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジに対する前記外部装置の計算結果、前記ランダムチャレンジ、及び、トランザクションを識別するトランザクション識別情報を、前記通信装置から受信し、
前記制御部は、前記ランダムチャレンジに対する計算結果に基づいて認証処理を実行し、
前記通信部は、前記認証処理の処理結果と前記トランザクション識別情報を、他の情報処理装置に送信する
前記(13)または(18)に記載の情報処理装置。
(20)
前記ランダムチャレンジ及び前記トランザクション識別情報には、デジタル署名が付されている
前記(18)または(19)に記載の情報処理装置。
(21)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、その有効期限を示す有効期限情報を前記通信装置にさらに送信し、
前記制御部は、前記ランダムチャレンジを生成し、前記有効期限を設定する処理をさらに実行する
前記(13)または(14)に記載の情報処理装置。
(22)
前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジに対する前記外部装置の計算結果、前記ランダムチャレンジ、及び、前記ランダムチャレンジの有効期限を示す有効期限情報を、前記通信装置から受信し、
前記制御部は、前記有効期限が有効である場合に、前記ランダムチャレンジに対する計算結果に基づいて認証処理を実行する
前記(13)または(14)に記載の情報処理装置。
(23)
前記ランダムチャレンジ及び前記有効期限情報には、デジタル署名が付されている
前記(21)または(22)に記載の情報処理装置。
(24)
通信装置と、複数のサーバとからなり、
前記通信装置は、
外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストを前記複数のサーバに対して送信するともに、前記複数のサーバから、前記リクエストに対するレスポンスを受信する第1通信部と、
前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理を実行する第1制御部と
を備え、
前記複数のサーバそれぞれは、
前記通信装置から、前記リクエストを受信するとともに、前記レスポンスを前記通信装置に送信する第2通信部と、
前記リクエストに対して前記レスポンスとして返信するための処理を実行する第2制御部と
を備える
データ処理システム。
(25)
外部装置に対して行った認証処理の処理結果と、その処理を識別する処理識別情報を、複数の他の情報処理装置から受信する通信部と、
複数の他の情報処理装置から受信された、同一の前記処理識別情報をもつ前記処理結果を、同一の認証処理結果とみなす処理を実行する制御部と
を備える情報処理装置。
(26)
前記通信部は、前記複数の他の情報処理装置から、トランザクション全体の処理に必要な情報をさらに受信し、
前記制御部は、前記トランザクション全体の処理に必要な情報に基づいて、トランザクション全体の結果を判定する
前記(25)に記載の情報処理装置。
11 ICカード, 40 データ処理システム, 51 リーダライタ, 52A 第1サーバ, 52B 第2サーバ, 52C 第3サーバ, 53 後処理サーバ, 70 携帯端末, 70 リーダライタ, 72 ICチップ, 101 RF通信部, 102 CPU, 107 通信部, 201 RF通信部, 300 サーバ装置, 301 CPU, 302 ROM, 303 RAM, 306 入力部, 307 出力部, 308 記憶部, 309 通信部, 310 ドライブ

Claims (26)

  1. 外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストを複数のサーバに対して送信するともに、前記複数のサーバから、前記リクエストに対するレスポンスを受信する通信部と、
    前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理を実行する制御部と
    を備える通信装置。
  2. 前記通信部は、最も早く受信した前記サーバの前記レスポンスに含まれる情報を、前記複数のサーバに送信する
    請求項1に記載の通信装置。
  3. 最も早く受信した前記サーバの前記レスポンスに含まれる情報は、自分が復号できない鍵で暗号化されており、
    前記通信部は、前記鍵で暗号化された前記情報を、前記複数のサーバに送信する
    請求項2に記載の通信装置。
  4. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジを受信し、前記ランダムチャレンジと、前記外部装置から受信した前記ランダムチャレンジに対する計算結果を、前記複数のサーバに送信する
    請求項1に記載の通信装置。
  5. 前記ランダムチャレンジには、デジタル署名が付されている
    請求項4に記載の通信装置。
  6. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、トランザクションを識別するトランザクション識別情報を受信し、前記ランダムチャレンジ及び前記トランザクション識別情報と、前記外部装置から受信した前記ランダムチャレンジに対する計算結果を、前記複数のサーバに送信する
    請求項1に記載の通信装置。
  7. 前記ランダムチャレンジ及び前記トランザクション識別情報には、デジタル署名が付されている
    請求項6に記載の通信装置。
  8. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、その有効期限を示す有効期限情報を受信し、前記ランダムチャレンジ及び前記有効期限情報と、前記外部装置から受信した前記ランダムチャレンジに対する計算結果を、前記複数のサーバに送信する
    請求項1に記載の通信装置。
  9. 前記ランダムチャレンジ及び前記有効期限情報には、デジタル署名が付されている
    請求項8に記載の通信装置。
  10. 前記外部装置に対して、非接触通信により、前記コマンドの送信を行う非接触通信部をさらに備える
    請求項1に記載の通信装置。
  11. 前記外部装置に対して、有線通信により、前記コマンドの送信を行う有線通信部をさらに備える
    請求項1に記載の通信装置。
  12. 前記制御部は、前記複数のサーバのうち、前記リクエストを送信する2以上のサーバを決定し、
    前記通信部は、前記制御部が決定した2以上のサーバに前記リクエストを送信する
    請求項1に記載の通信装置。
  13. 外部装置に対してコマンドの送信を行う通信装置から、所定のリクエストを受信するとともに、前記リクエストに対して実行した処理の処理結果を含むレスポンスを前記通信装置に送信する通信部と、
    前記処理を実行する制御部と
    を備え、
    前記レスポンスに含まれる前記処理結果は、前記通信装置が復号できない鍵で暗号化されている
    情報処理装置。
  14. 前記通信部は、さらに、前記処理の実行結果に基づいて、トランザクション全体の処理に必要な情報を、他の情報処理装置に送信する
    請求項13に記載の情報処理装置。
  15. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジを前記通信装置にさらに送信し、
    前記制御部は、前記ランダムチャレンジを生成する処理をさらに実行する
    請求項13に記載の情報処理装置。
  16. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジに対する前記外部装置の計算結果を、前記ランダムチャレンジとともに、前記通信装置から受信し、
    前記制御部は、前記ランダムチャレンジに対する計算結果に基づいて認証処理を実行し、
    前記通信部は、前記認証処理の処理結果と前記ランダムチャレンジを、他の情報処理装置に送信する
    請求項13に記載の情報処理装置。
  17. 前記ランダムチャレンジには、デジタル署名が付されている
    請求項15に記載の情報処理装置。
  18. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、トランザクションを識別するトランザクション識別情報を前記通信装置にさらに送信し、
    前記制御部は、前記ランダムチャレンジと前記トランザクション識別情報を生成する処理をさらに実行する
    請求項13に記載の情報処理装置。
  19. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジに対する前記外部装置の計算結果、前記ランダムチャレンジ、及び、トランザクションを識別するトランザクション識別情報を、前記通信装置から受信し、
    前記制御部は、前記ランダムチャレンジに対する計算結果に基づいて認証処理を実行し、
    前記通信部は、前記認証処理の処理結果と前記トランザクション識別情報を、他の情報処理装置に送信する
    請求項13に記載の情報処理装置。
  20. 前記ランダムチャレンジ及び前記トランザクション識別情報には、デジタル署名が付されている
    請求項18に記載の情報処理装置。
  21. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジと、その有効期限を示す有効期限情報を前記通信装置にさらに送信し、
    前記制御部は、前記ランダムチャレンジを生成し、前記有効期限を設定する処理をさらに実行する
    請求項13に記載の情報処理装置。
  22. 前記通信部は、チャレンジ・レスポンス方式におけるランダムチャレンジに対する前記外部装置の計算結果、前記ランダムチャレンジ、及び、前記ランダムチャレンジの有効期限を示す有効期限情報を、前記通信装置から受信し、
    前記制御部は、前記有効期限が有効である場合に、前記ランダムチャレンジに対する計算結果に基づいて認証処理を実行する
    請求項13に記載の情報処理装置。
  23. 前記ランダムチャレンジ及び前記有効期限情報には、デジタル署名が付されている
    請求項21に記載の情報処理装置。
  24. 通信装置と、複数のサーバとからなり、
    前記通信装置は、
    外部装置に対してコマンドの送信を行った結果に基づいて、所定のリクエストを前記複数のサーバに対して送信するともに、前記複数のサーバから、前記リクエストに対するレスポンスを受信する第1通信部と、
    前記複数のサーバのうち、最も早く受信した前記サーバの前記レスポンスに基づいて、次の処理を実行する第1制御部と
    を備え、
    前記複数のサーバそれぞれは、
    前記通信装置から、前記リクエストを受信するとともに、前記リクエストに対して実行した処理の処理結果を含むレスポンスを前記通信装置に送信する第2通信部と、
    前記処理を実行する第2制御部と
    を備え、
    前記レスポンスに含まれる前記処理結果は、前記通信装置が復号できない鍵で暗号化されている
    データ処理システム。
  25. 外部装置に対して行った認証処理の処理結果と、その処理を識別する処理識別情報を、複数の他の情報処理装置から受信する通信部と、
    複数の他の情報処理装置から受信された、同一の前記処理識別情報をもつ前記処理結果を、同一の認証処理結果とみなす処理を実行する制御部と
    を備える情報処理装置。
  26. 前記通信部は、前記複数の他の情報処理装置から、トランザクション全体の処理に必要な情報をさらに受信し、
    前記制御部は、前記トランザクション全体の処理に必要な情報に基づいて、トランザクション全体の結果を判定する
    請求項25に記載の情報処理装置。
JP2019512432A 2017-04-14 2018-03-30 通信装置、情報処理装置、およびデータ処理システム Active JP7136087B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017080289 2017-04-14
JP2017080289 2017-04-14
PCT/JP2018/013633 WO2018190154A1 (ja) 2017-04-14 2018-03-30 通信装置、情報処理装置、およびデータ処理システム

Publications (2)

Publication Number Publication Date
JPWO2018190154A1 true JPWO2018190154A1 (ja) 2020-05-14
JP7136087B2 JP7136087B2 (ja) 2022-09-13

Family

ID=63793247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019512432A Active JP7136087B2 (ja) 2017-04-14 2018-03-30 通信装置、情報処理装置、およびデータ処理システム

Country Status (5)

Country Link
US (1) US20210089854A1 (ja)
EP (1) EP3611624B1 (ja)
JP (1) JP7136087B2 (ja)
CN (1) CN110462596B (ja)
WO (1) WO2018190154A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001312434A (ja) * 2000-04-28 2001-11-09 Nippon Telegr & Teleph Corp <Ntt> 情報配信システム
WO2007110468A1 (en) * 2006-03-28 2007-10-04 Nokia Corporation Authenticating an application
JP2013117782A (ja) * 2011-12-01 2013-06-13 Ricoh Co Ltd 情報処理装置、情報処理方法、及びプログラム
JP2016181120A (ja) * 2015-03-24 2016-10-13 シャープ株式会社 情報処理装置および画像形成装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1317718A2 (en) * 2000-02-28 2003-06-11 360 Degree Web, Inc. Smart card enabled mobile personal computing environment
JP4391375B2 (ja) 2004-09-30 2009-12-24 フェリカネットワークス株式会社 情報管理装置および方法、並びにプログラム
US8998544B1 (en) * 2011-05-20 2015-04-07 Amazon Technologies, Inc. Load balancer
US9032212B1 (en) * 2013-03-15 2015-05-12 Emc Corporation Self-refreshing distributed cryptography

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001312434A (ja) * 2000-04-28 2001-11-09 Nippon Telegr & Teleph Corp <Ntt> 情報配信システム
WO2007110468A1 (en) * 2006-03-28 2007-10-04 Nokia Corporation Authenticating an application
JP2013117782A (ja) * 2011-12-01 2013-06-13 Ricoh Co Ltd 情報処理装置、情報処理方法、及びプログラム
JP2016181120A (ja) * 2015-03-24 2016-10-13 シャープ株式会社 情報処理装置および画像形成装置

Also Published As

Publication number Publication date
JP7136087B2 (ja) 2022-09-13
EP3611624A4 (en) 2020-07-29
EP3611624B1 (en) 2024-02-28
CN110462596A (zh) 2019-11-15
EP3611624A1 (en) 2020-02-19
WO2018190154A1 (ja) 2018-10-18
CN110462596B (zh) 2023-12-12
US20210089854A1 (en) 2021-03-25

Similar Documents

Publication Publication Date Title
CN110933125B (zh) 区块链实体、链下实体、认证设备及用于执行协作的方法
US11736296B2 (en) Biometric verification process using certification token
TWI792284B (zh) 用於驗證對安全裝置功能性之線上存取之方法
EP2487629B1 (en) Secure smart poster
JP5959410B2 (ja) 決済方法、これを実行する決済サーバ、これを実行するためのプログラム及びこれを実行するシステム
US20220141036A1 (en) Electronic authentication device and method using blockchain
WO2020251597A1 (en) Dynamic off-chain digital currency transaction processing
CN104618116B (zh) 一种协同数字签名系统及其方法
US20100153731A1 (en) Lightweight Authentication Method, System, and Key Exchange Protocol For Low-Cost Electronic Devices
EP2961094A1 (en) System and method for generating a random number
CN105144670A (zh) 启用无线联网的个人标识系统
US20100153719A1 (en) Lightweight Authentication Method and System for Low-Cost Devices Without Pseudorandom Number Generator
US8918844B1 (en) Device presence validation
Chen et al. An ownership transfer scheme using mobile RFIDs
CN112352410B (zh) 使用智能卡作为安全令牌的方法和装置,可读存储介质
Lee et al. Mutual authentication protocol for enhanced RFID security and anti-counterfeiting
Al-Haj et al. Providing security for NFC-based payment systems using a management authentication server
US20210374718A1 (en) Ic card, processing method, and information processing system
Munilla et al. Cryptanalaysis of an EPCC1G2 standard compliant ownership transfer scheme
JP2021175184A (ja) 複数の回転セキュリティ鍵を備えた非接触カード
Chabbi et al. RFID and NFC authentication protocol for securing a payment transaction
US10922679B2 (en) Method for authenticating payment data, corresponding devices and programs
CN104205900B (zh) 无线存储装置认证
JP7136087B2 (ja) 通信装置、情報処理装置、およびデータ処理システム
Jayapandian Business Transaction Privacy and Security Issues in Near Field Communication

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220530

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: 20220802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220815

R151 Written notification of patent or utility model registration

Ref document number: 7136087

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151