JP5824849B2 - 情報処理装置および情報処理方法 - Google Patents

情報処理装置および情報処理方法 Download PDF

Info

Publication number
JP5824849B2
JP5824849B2 JP2011096439A JP2011096439A JP5824849B2 JP 5824849 B2 JP5824849 B2 JP 5824849B2 JP 2011096439 A JP2011096439 A JP 2011096439A JP 2011096439 A JP2011096439 A JP 2011096439A JP 5824849 B2 JP5824849 B2 JP 5824849B2
Authority
JP
Japan
Prior art keywords
data
information processing
command
processing apparatus
unit
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
JP2011096439A
Other languages
English (en)
Other versions
JP2012226711A (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
Priority to JP2011096439A priority Critical patent/JP5824849B2/ja
Priority to PCT/JP2012/059840 priority patent/WO2012144380A1/ja
Priority to US14/111,804 priority patent/US9626504B2/en
Priority to EP12774821.8A priority patent/EP2701101B1/en
Priority to CN201280018524.2A priority patent/CN103493430B/zh
Publication of JP2012226711A publication Critical patent/JP2012226711A/ja
Application granted granted Critical
Publication of JP5824849B2 publication Critical patent/JP5824849B2/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/44Program or device authentication
    • 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/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • 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/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • 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
    • 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/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3242Cryptographic 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 cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Description

本技術は、情報処理装置および情報処理方法に関し、特に、データの改ざんを検出する場合に用いて好適な情報処理装置および情報処理方法に関する。
従来、ICカードからデータを読み出す場合に、伝送路におけるデータの改ざんを検出するためにメッセージダイジェストが用いられている(例えば、特許文献1参照)。
特開2010−141639号公報
しかしながら、従来のメッセージダイジェストを用いた方法では、通信に用いられるコマンドのパラメータの改ざんに対応することができない。
例えば、ICカードからデータを読み出すための読み出しコマンドのパラメータに含まれるアドレスが改ざんされ、改ざんされたアドレスからデータが読み出された場合、ICカードとリーダライタで、同じデータに基づいてメッセージダイジェストが生成される。従って、両者のメッセージダイジェストが一致するため、アドレスの改ざんにより別のデータが読み出されたことを検出することができない。
本技術の目的は、データおよびコマンドのパラメータの少なくとも一方が改ざんされたことを検出できるようにするものである。
本技術の第1の側面の情報処理装置は、他の情報処理装置から所定のコマンドを受信する受信部と、受信した前記コマンドのパラメータの少なくとも一部、および、前記コマンドに対応して前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出する演算部と、前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信する送信部とを備える。
記憶媒体からのデータの読み出しを制御する読み出し制御部をさらに設け、前記コマンドを、前記第1のデータを読み出す位置を示す位置情報をパラメータに含み、前記位置情報により示される位置から前記第1のデータを読み出すためのコマンドとし、前記読み出し制御部には、前記位置情報に示される前記記憶媒体の位置から前記第1のデータを読み出させ、前記演算部には、受信した前記コマンドのパラメータに含まれる前記位置情報、および、前記記憶媒体から読み出された前記第1のデータに基づいて、前記第2のデータを算出させることができる。
前記演算部には、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出させることができる。
本技術の第1の側面の情報処理方法は、情報処理装置が、他の情報処理装置から所定のコマンドを受信し、受信した前記コマンドのパラメータの少なくとも一部、および、前記コマンドに対応して前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出し、前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信するステップを含む。
本技術の第2の側面の情報処理装置は、他の情報処理装置に所定のコマンドを送信する送信部と、前記コマンドに対応して前記他の情報処理装置から送信されてくる、第1のデータ、および、受信した前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて前記他の情報処理装置が所定のアルゴリズムにより算出した認証用の第2のデータを受信する受信部と、前記他の情報処理装置に送信した前記コマンドのパラメータの少なくとも一部、および、前記他の情報処理装置から受信した前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出する演算部と、前記第2のデータと前記第3のデータの認証を行う認証部とを備える。
前記コマンドを、前記第1のデータを読み出す位置を示す位置情報をパラメータに含み、前記位置情報により示される位置から前記第1のデータを読み出すためのコマンドとし、前記他の情報処理装置には、受信した前記コマンドのパラメータに含まれる前記位置情報、および、前記位置情報により示される位置から読み出した前記第1のデータに基づいて、前記第2のデータを算出させ、前記演算部には、送信した前記コマンドのパラメータに含まれる前記位置情報、および、前記他の情報処理装置から受信した前記第1のデータに基づいて、前記第3のデータを算出させることができる。
前記他の情報処理装置には、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出させ、前記演算部には、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第3のデータを算出させることができる。
本技術の第2の側面の情報処理方法は、情報処理装置が、他の情報処理装置に所定のコマンドを送信し、前記コマンドに対応して前記他の情報処理装置から送信されてくる、第1のデータ、および、受信した前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて前記他の情報処理装置が所定のアルゴリズムにより算出した認証用の第2のデータを受信し、前記他の情報処理装置に送信した前記コマンドのパラメータの少なくとも一部、および、前記他の情報処理装置から受信した前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出し、前記第2のデータと前記第3のデータの認証を行うステップを含む。
本技術の第3の側面の情報処理装置は、他の情報処理装置に送信するコマンドのパラメータの少なくとも一部、および、前記コマンドとともに前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出する演算部と、前記コマンド、前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信する送信部とを備える。
前記コマンドを、前記第1のデータを書き込む位置を示す位置情報をパラメータに含み、前記位置情報により示される位置に前記第1のデータを書き込むためのコマンドとし、前記演算部には、前記位置情報および前記第1のデータに基づいて、前記第2のデータを算出させることができる。
前記演算部には、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出させることができる。
本技術の第3の側面の情報処理方法は、情報処理装置が、他の情報処理装置に送信するコマンドのパラメータの少なくとも一部、および、前記コマンドとともに前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出し、前記コマンド、前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信するステップを含む。
本技術の第4の側面の情報処理装置は、他の情報処理装置から送信されてくる、所定のコマンド、第1のデータ、および、前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて所定のアルゴリズムにより算出された認証用の第2のデータを受信する受信部と、受信した前記コマンドのパラメータの少なくとも一部、および、前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出する演算部と、前記第2のデータと前記第3のデータの認証を行う認証部とを備える。
記憶媒体へのデータの書き込みを制御する書き込み制御部をさらに設け、前記コマンドを、前記第1のデータを書き込む位置を示す位置情報をパラメータに含み、前記位置情報により示される位置に前記第1のデータを書き込むためのコマンドとし、前記他の情報処理装置には、送信する前記コマンドのパラメータに含まれる前記位置情報、および、送信する前記第1のデータに基づいて、前記第2のデータを算出させ、前記演算部には、受信した前記コマンドのパラメータに含まれる前記位置情報、および、受信した前記第1のデータに基づいて、前記第3のデータを算出させることができる。
前記他の情報処理装置には、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出させ、前記演算部には、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第3のデータを算出させることができる。
本技術の第4の側面の情報処理方法は、情報処理装置が、他の情報処理装置から送信されてくる、所定のコマンド、第1のデータ、および、前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて所定のアルゴリズムにより算出された認証用の第2のデータを受信し、受信した前記コマンドのパラメータの少なくとも一部、および、前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出し、前記第2のデータと前記第3のデータの認証を行うステップを含む。
本技術の第1の側面においては、他の情報処理装置から所定のコマンドが受信され、受信された前記コマンドのパラメータの少なくとも一部、および、前記コマンドに対応して前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータが算出され、前記第1のデータおよび前記第2のデータが前記他の情報処理装置に送信される。
本技術の第2の側面においては、他の情報処理装置に所定のコマンドが送信され、前記コマンドに対応して前記他の情報処理装置から送信されてくる、第1のデータ、および、受信した前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて前記他の情報処理装置が所定のアルゴリズムにより算出した認証用の第2のデータが受信され、前記他の情報処理装置に送信された前記コマンドのパラメータの少なくとも一部、および、前記他の情報処理装置から受信された前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータが算出され、前記第2のデータと前記第3のデータの認証が行われる。
本技術の第3の側面においては、他の情報処理装置に送信するコマンドのパラメータの少なくとも一部、および、前記コマンドとともに前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータが算出され、前記コマンド、前記第1のデータおよび前記第2のデータが前記他の情報処理装置に送信される。
本技術の第4の側面においては、他の情報処理装置から送信されてくる、所定のコマンド、第1のデータ、および、前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて所定のアルゴリズムにより算出された認証用の第2のデータが受信され、受信された前記コマンドのパラメータの少なくとも一部、および、前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータが算出され、前記第2のデータと前記第3のデータの認証が行われる。
本技術の第1乃至第4の側面によれば、データおよびコマンドのパラメータの少なくとも一方が改ざんされたことを検出することができる。
本技術を適用した情報処理システムの一実施の形態を示すブロック図である。 認証部の構成例を示すブロック図である。 リーダライタがICカードからデータを読み出す場合の処理を説明するためのフローチャートである。 MAC演算の具体例を説明するための図である。 リーダライタからICカードにデータを書き込む場合の処理を説明するためのフローチャートである。 コンピュータの構成例を示すブロック図である。
以下、本技術を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.実施の形態
2.変形例
<1.実施の形態>
[情報処理システムの構成例]
図1は、本技術を適用した情報処理システムの一実施の形態を示すブロック図である。
図1の情報処理システム1は、リーダライタ11およびICカード12を含むように構成される。
リーダライタ11は、ICカード12と所定の通信方式による近接通信を行い、ICカード12にデータを書き込んだり、ICカード12からデータを読み込んだりする。
なお、リーダライタ11とICカード12の間の通信方式は、例えばNFC(Near Field Communication)等、任意の方式を採用することができる。
リーダライタ11は、入力部21、コマンド生成部22、コマンド送信部23、アンテナ24、レスポンス受信部25、MAC演算部26、および、認証部27を含むように構成される。
入力部21は、例えば、ボタン、キー、スイッチなどの入力装置により構成され、リーダライタ11への各種の指令等の入力に用いられる。入力部21は、入力された指令等をコマンド生成部22に供給する。
コマンド生成部22は、入力部21から供給される指令に基づいて、各種のコマンドを生成する。
例えば、コマンド生成部22は、ICカード12のメモリ46の指定したアドレス(以下、読み出しアドレスと称する)からデータを読み出すための読み出しコマンドを生成する。そして、コマンド生成部22は、生成した読み出しコマンドをコマンド送信部23に供給し、読み出しアドレスをMAC演算部26に供給する。
また、例えば、コマンド生成部22は、ICカード12のメモリ46の指定したアドレス(以下、書き込みアドレスと称する)にデータ(以下、書き込みデータと称する)を書き込むための書き込みコマンドを生成する。このとき、コマンド生成部22は、書き込みデータと書き込みアドレスをMAC演算部26に供給し、書き込みデータと書き込みアドレスに基づくMAC(Message Authentication Code)を算出させ、算出されたMACを取得する。そして、コマンド生成部22は、書き込みアドレスをパラメータに設定し、書き込みデータおよびMACを添付した書き込みコマンドを生成し、コマンド送信部23に供給する。
コマンド送信部23は、コマンド生成部22から供給されるコマンドを、アンテナ24を介してICカード12に送信する。
レスポンス受信部25は、リーダライタ11が送信したコマンドに対応してICカード12から送信されてくる応答コマンドを、アンテナ24を介して受信する。また、レスポンス受信部25は、読み出しコマンドに対する応答コマンドを受信した場合、応答コマンドに添付されている、メモリ46から読み出されたデータ(以下、読み出しデータと称する)をMAC演算部26に供給し、MACを認証部27に供給する。
MAC演算部26は、コマンド生成部22から供給される読み出しアドレス、および、レスポンス受信部25から供給される読み出しデータに基づいて、所定のアルゴリズムによりMACを算出し、算出したMACを認証部27に供給する。
また、MAC演算部26は、コマンド生成部22から供給される書き込みデータおよび書き込みアドレスに基づいて、所定のアルゴリズムによりMACを算出し、算出したMACをコマンド生成部22に供給する。
認証部27は、MAC演算部26により算出されたMACとICカード12から受信したMACとの認証を行う。
ICカード12は、アンテナ41、コマンド受信部42、MAC演算部43、認証部44、メモリアクセス部45、メモリ46、レスポンス生成部47、および、レスポンス送信部48を含むように構成される。
コマンド受信部42は、リーダライタ11から送信されてくる各種のコマンドを、アンテナ41を介して受信する。
また、コマンド受信部42は、読み出しコマンドを受信した場合、読み出しコマンドに設定されている読み出しアドレスをメモリアクセス部45に供給する。
さらに、コマンド受信部42は、書き込みコマンドを受信した場合、書き込みコマンドに添付されている書き込みデータ、および、書き込みコマンドに設定されている書き込みアドレスをMAC演算部43に供給する。また、コマンド受信部42は、書き込みコマンドに添付されているMACを認証部44に供給する。
MAC演算部43は、コマンド受信部42から供給される書き込みデータおよび書き込みアドレスに基づいて、リーダライタ11のMAC演算部26と共通のアルゴリズムによりMACを算出する。そして、MAC演算部43は、算出したMAC、並びに、算出に用いた書き込みデータおよび書き込みアドレスを認証部44に供給する。
また、MAC演算部43は、コマンド受信部42から供給される読み出しアドレス、および、メモリアクセス部45から供給される読み出しデータに基づいて、リーダライタ11のMAC演算部26と共通のアルゴリズムによりMACを算出する。そして、MAC演算部43は、算出したMACをレスポンス生成部47に供給する。
認証部44は、リーダライタ11から受信した書き込みコマンドに添付されているMACと、MAC演算部43により算出されたMACとの認証を行う。認証部44は、認証に成功した場合、書き込みデータと書き込みアドレスをメモリアクセス部45に供給する。
メモリアクセス部45は、メモリ46からのデータの読み出し、および、メモリ46へのデータの書き込みを制御する。
例えば、メモリアクセス部45は、読み出しコマンドに設定されている読み出しアドレスにより示されるメモリ46のアドレスからデータを読み出し、読み出したデータ(読み出しデータ)をMAC演算部43およびレスポンス生成部47に供給する。
また、例えば、メモリアクセス部45は、書き込みコマンドに設定されている書き込みアドレスにより示されるメモリ46のアドレスに書き込みデータを書き込み、書き込みの完了をレスポンス生成部47に通知する。
レスポンス生成部47は、リーダライタ11から受信したコマンドに対する応答コマンドを生成し、レスポンス送信部48に供給する。
例えば、レスポンス生成部47は、読み出しコマンドに対して、メモリ46から読み出されたデータ(読み出しデータ)、および、MAC演算部43により算出されたMACを添付した応答コマンドを生成し、レスポンス送信部48に供給する。
また、例えば、レスポンス送信部48は、書き込みコマンドに対して、書き込みデータの書き込みの完了を通知するための応答コマンドを生成し、レスポンス送信部48に供給する。
レスポンス送信部48は、レスポンス生成部47から供給される応答コマンドを、アンテナ41を介してリーダライタ11に送信する。
[MAC演算部26の構成例]
図2は、リーダライタ11のMAC演算部26の構成例を示すブロック図である。
MAC演算部26は、入力されたデータをDES-CBC(Data Encryption Standard for Cipher Block Chaining)により暗号化することにより、MACを算出する。MAC演算部26は、トリプルDES暗号化部101−1乃至101−n、および、EXOR演算部102−1乃至102−(n−1)を含むように構成される。
MAC演算部26は、入力されたデータを所定のバイト(例えば、8バイト)数毎に分割して処理する。そして、分割後の先頭のデータ1が、トリプルDES暗号化部101−1に入力され、2番目以降のデータi(i=2〜n)が、それぞれEXOR演算部102−(i−1)に入力される。
トリプルDES暗号化部101−1は、データ1に対してトリプルDESによる暗号化を行い、得られた暗号化データをEXOR演算部102−1に供給する。
EXOR演算部102−1は、トリプルDES暗号化部101−1から取得した暗号化データとデータ2の排他的論理和を算出し、算出したデータをトリプルDES暗号化部101−2に供給する。
トリプルDES暗号化部101−2は、EXOR演算部102−1から取得したデータに対してトリプルDESによる暗号化を行い、得られた暗号化データをEXOR演算部102−2に供給する。
EXOR演算部102−2(不図示)は、トリプルDES暗号化部101−2から取得した暗号化データとデータ3の排他的論理和を算出し、算出したデータをトリプルDES暗号化部101−3(不図示)に供給する。
トリプルDES暗号化部101−3は、EXOR演算部102−2から取得したデータに対してトリプルDESによる暗号化を行い、得られた暗号化データをEXOR演算部102−3(不図示)に供給する。
MAC演算部26は、以上の処理を最後のn番目のデータnが、トリプルDES101−nにより暗号化されるまで繰り返す。そして、MAC演算部26は、トリプルDES101−nによる暗号化データをMACとして出力する。
なお、ICカード12のMAC演算部43は、MAC演算部26と同様の構成を有しており、その説明は繰り返しになるため省略する。
また、図2に示されるMAC演算部26およびMAC演算部43の構成は、その一例であり、例えば、DES-CBCとは異なるアルゴリズムによりMAC演算を行う構成にすることが可能である。
[データ読み出し処理]
次に、図3のフローチャートを参照して、リーダライタ11がICカード12からデータを読み出す場合の処理について説明する。
なお、この処理は、例えば、ICカード12の指定したアドレス(読み出しアドレス)からデータを読み出す旨の指令が、リーダライタ11の入力部21を介して、コマンド生成部22に入力されたとき開始される。
なお、図3のフローチャートでは、リーダライタ11がICカード12を捕捉し、リーダライタ11とICカード12との間で相互認証を行う処理の記載を省略している。また、以下、すでにリーダライタ11とICカード12の間の認証処理が実行済みであるものとして説明する。
ステップS1において、リーダライタ11のコマンド生成部22は、読み出しコマンドを生成する。具体的には、コマンド生成部22は、入力部21から取得した読み出しアドレスをパラメータに設定した読み出しコマンドを生成する。そして、コマンド生成部22は、生成した読み出しコマンドをコマンド送信部23に供給する。また、コマンド生成部22は、読み出しアドレスをMAC演算部26に供給する。
ステップS2において、コマンド送信部23は、アンテナ24を介して、ICカード12に読み出しコマンドを送信する。
ステップS11において、ICカード12のコマンド受信部42は、アンテナ41を介して、リーダライタ11から送信された読み出しコマンドを受信する。コマンド受信部42は、受信した読み出しコマンドのパラメータに含まれる読み出しアドレスをMAC演算部43およびメモリアクセス部45に供給する。
ステップS12において、メモリアクセス部45は、読み出しコマンドにより指定されたメモリ46のアドレス(すなわち、読み出しアドレス)からデータを読み出す。メモリアクセス部45は、読み出したデータ(読み出しデータ)をMAC演算部43およびレスポンス生成部47に供給する。
ステップS13において、MAC演算部43は、メモリ46から読み出しデータ、および、リーダライタ11から受信した読み出しアドレスに基づいて、MACを算出する。MAC演算部43は、算出したMACをレスポンス生成部47に供給する。
ここで、図4を参照して、MACの演算方法を具体例について説明する。なお、以下、読み出しコマンドにメモリ46の0001乃至0005番地が設定されており、当該アドレスから合計5つのデータが読み出されたものとする。
この場合、トリプルDES暗号化部101−1には、読み出しコマンドによりデータの読み出しが指示されたアドレスの数、換言すれば、読み出されたデータの個数(0x0005)、および、データを読み出したアドレスの先頭から3番目までの値(0x0001,0x0002,0x0003)からなる8バイトのデータ(0x0005000100020003)が入力される。
また、EXOR演算部102−1には、データを読み出したアドレスの4番目と5番目の値(0004,0005)、および、入力データを8バイトにするためのフィラー(0x00000000)からなる8バイトのデータ(0x0004000500000000)が入力される。
また、0001番地から読み出されたデータ1の前半8バイトがEXOR演算部102−2に入力され、データ1の後半8バイトがEXOR演算部102−3に入力される。0002番地から読み出されたデータ2の前半8バイトがEXOR演算部102−4(不図示)に入力され、データ2の後半8バイトがEXOR演算部102−5(不図示)に入力される。0003番地から読み出されたデータ3の前半8バイトがEXOR演算部102−6(不図示)に入力され、データ3の後半8バイトがEXOR演算部102−7(不図示)に入力される。0004番地から読み出されたデータ4の前半8バイトがEXOR演算部102−8(不図示)に入力され、データ4の後半8バイトがEXOR演算部102−9(不図示)に入力される。0005番地から読み出されたデータ5の前半8バイトがEXOR演算部102−10に入力され、データ5の後半8バイトがEXOR演算部102−11に入力される。
そして、図2を参照して上述したアルゴリズムにより、リーダライタ11から受信した読み出しコマンドに設定されている読み出しアドレス、並びに、メモリ46から読み出されたデータおよびその個数に基づいてMACが演算される。
なお、必ずしも読み出されたデータの個数をMACの演算に用いる必要はない。ただし、データの個数を用いるようにした方が、実際のアドレスと、入力データを8バイトにするためのフィラーとを正確に区別することが可能になる。例えば、上述した例では、フィラーとして追加したデータが、値だけではアドレスかフィラーか区別できないが、データの個数に基づいて、フィラーであると認識することが可能になる。
ステップS14において、レスポンス生成部47は、メモリ46から読み出したデータ、および、算出したMACを添付した応答コマンドを生成する。すなわち、レスポンス生成部47は、読み出しコマンドに対応して、メモリ46から読み出した読み出しデータおよびMAC演算部43により算出されたMACを添付した応答コマンドを生成する。そして、レスポンス生成部47は、生成した応答コマンドをレスポンス送信部48に供給する。
ステップS15において、レスポンス送信部48は、アンテナ41を介してリーダライタ11に応答コマンドを送信する。このとき、応答コマンドに添付されている読み出しデータは、暗号化されずにICカード12からリーダライタ11に送信される。
ステップS3において、リーダライタ11のレスポンス受信部25は、アンテナ24を介して、ICカード12から応答コマンドを受信する。レスポンス受信部25は、応答コマンドに添付されている読み出しデータをMAC演算部26に供給し、MACを認証部27に供給する。
ステップS4において、MAC演算部26は、ICカード12から受信したデータ、および、ICカード12に送信した読み出しアドレスに基づいて、MACを算出する。このとき、MAC演算部26は、ICカード12のMAC演算部43と同様のアルゴリズムによりMACを算出する。すなわち、MAC演算部26は、ICカードに送信した読み出しコマンドに設定した読み出しアドレス、および、読み出しを指示したデータの個数(=アドレスの数)、並びに、ICカード11から受信した読み出しデータに基づいて、図4を参照して上述したアルゴリズムによりMACを算出する。MAC演算部26は、算出したMACを認証部27に供給する。
ステップS5において、認証部27は、算出したMACとICカード12から受信したMACの認証を行う。そして、認証部27は、両者が一致する場合、リーダライタ11とICカード12との間の伝送路において改ざんが行われていないと判定する。
一方、認証部27は、両者が一致しない場合、リーダライタ11とICカード12との間の伝送路において改ざんが行われた可能性があると判定する。すなわち、認証部27は、リーダライタ11とICカード12との間の伝送路において、読み出しコマンドに設定された読み出しアドレスおよび応答コマンドに添付された読み出しデータのうち少なくとも一方が改ざんされた可能性があると判定する。
その後、リーダライタ11とICカード12との間で通信を終了させるための処理が行われ、一連の処理は終了する。
このようにして、読み出しコマンドに設定された読み出しアドレスおよび応答コマンドに添付された読み出しデータのうち少なくとも一方が改ざんされたことを、複雑な処理を行わずに、簡単に検出することができる。
[データ書き込み処理]
次に、図5のフローチャートを参照して、リーダライタ11からICカード12にデータを書き込む場合の処理について説明する。
なお、この処理は、例えば、ICカード12の指定したアドレス(書き込みアドレス)に入力データ(書き込みデータ)を書き込む旨の指令が、リーダライタ11の入力部21を介して、コマンド生成部22に入力されたとき開始される。
なお、図5のフローチャートでは、リーダライタ11がICカード12を捕捉し、リーダライタ11とICカード12との間で相互認証を行う処理の記載を省略している。また、以下、すでにリーダライタ11とICカード12の間の認証処理が実行済みであるものとして説明する。
ステップS51において、MAC演算部26は、書き込みデータと書き込みアドレスに基づいて、MACを算出する。具体的には、コマンド生成部22は、入力部21から取得した書き込みデータと書き込みアドレスをMAC演算部26に供給する。MAC演算部26は、送信する書き込みデータおよびその個数、並びに、書き込みアドレスに基づいて、図4を参照して上述したアルゴリズムによりMACを算出する。MAC演算部26は、算出したMACをコマンド生成部22に供給する。
ステップS52において、コマンド生成部22は、書き込みデータ、書き込みアドレス、および、MACを含む書き込みコマンドを生成する。具体的には、コマンド生成部22は、書き込みアドレスをパラメータに設定し、書き込みデータおよびMAC演算部26により算出されたMACを添付した書き込みコマンドを生成する。コマンド生成部22は、生成した書き込みコマンドをコマンド送信部23に供給する。
ステップS53において、コマンド送信部23は、アンテナ24を介してICカード12に書き込みコマンドを送信する。このとき、書き込みコマンドに添付されている書き込みデータは、暗号化されずにリーダライタ11からICカード12に送信される。
ステップS61において、ICカード12のコマンド受信部42は、アンテナ41を介して、リーダライタ11から送信された書き込みコマンドを受信する。コマンド受信部42は、受信した書き込みコマンドのパラメータに含まれる書き込みアドレス、および、書き込みコマンドに添付されている書き込みデータをMAC演算部43に供給する。また、コマンド受信部42は、受信した書き込みコマンドに添付されているMACを認証部44に供給する。
ステップS62において、MAC演算部43は、リーダライタ11から受信した書き込みデータおよび書き込みアドレスに基づいて、MACを算出する。このとき、MAC演算部43は、リーダライタ11のMAC演算部26と同様のアルゴリズムによりMACを算出する。すなわち、MAC演算部43は、受信した書き込みデータおよびその個数、並びに、受信した書き込みアドレスに基づいて、図4を参照して上述したアルゴリズムによりMACを算出する。MAC演算部43は、算出したMAC、並びに、算出に用いた書き込みデータおよび書き込みアドレスを認証部44に供給する。
ステップS63において、認証部44は、算出したMACとリーダライタ11から受信したMACの認証を行い、両者が一致するか否かを判定する。両者が一致すると判定された場合、処理はステップS64に進む。
ステップS64において、メモリアクセス部45は、指定されたメモリ46のアドレスに書き込みデータを書き込む。具体的には、認証部44は、書き込みデータおよび書き込みアドレスをメモリアクセス部45に供給する。メモリアクセス部45は、書き込みアドレスにより示されるメモリ46のアドレスに書き込みデータを書き込む。メモリアクセス部45は、書き込みの完了をレスポンス生成部47に通知する。
ステップS65において、レスポンス生成部47は、書き込みコマンドに対応し、データの書き込み完了を通知するための応答コマンドを生成する。そして、レスポンス生成部47は、生成した応答コマンドをレスポンス送信部48に供給する。
ステップS66において、レスポンス送信部48は、アンテナ41を介してリーダライタ11に応答コマンドを送信する。
ステップS54において、リーダライタ11のレスポンス受信部25は、アンテナ24を介して、ICカード12から送信された応答コマンドを受信する。
その後、リーダライタ11とICカード12との間で通信を終了させるための処理が行われ、一連の処理は終了する。
一方、ステップS63において、ICカード12の認証部44が、算出したMACとリーダライタ11から受信したMACが一致しないと判定した場合、ステップS64乃至S66の処理はスキップされ、ICカード12の処理は終了する。
すなわち、この場合、リーダライタ11とICカード12との間の伝送路において、書き込みコマンドに設定された書き込みアドレスおよび添付された書き込みデータの少なくとも一方が改ざんされた可能性がある。従って、メモリ46へのデータの書き込みは行われずに、一連の処理が終了する。
このようにして、書き込みコマンドに設定された書き込みアドレスおよび添付された書き込みデータのうち少なくとも一方が改ざんされたことを、複雑な処理を行わずに、簡単に検出することができる。
<2.変形例>
以下、本技術の実施の形態の変形例について説明する。
[変形例1]
以上の説明では、データの読み出し時および書き込み時の両方において、本技術を適用する例を示したが、いずれか一方のみに適用することも可能である。例えば、データの書き込みを行わないシステムにおいては、データの読み出し時のみに本技術を適用することが可能である。
[変形例2]
また、本技術は、上述したリーダライタ11とICカード12との間の通信に限定されるものではなく、各種の装置間の通信に適用することができる。例えば、ICカード12の代わりに、近接通信が可能なICチップ、または、ICチップを搭載した各種の装置(例えば、ICタグ、携帯電話機、携帯情報端末等)を用いた通信に適用することができる。また、例えば、ICカード12のように記憶媒体を内蔵した装置だけでなく、記憶媒体が外付けの装置を用いた通信にも適用することが可能である。
さらに、通信方式も近接通信に限定されるものではなく、有線または無線を問わず、任意の通信方式を採用することが可能である。
[変形例3]
また、改ざんの検出対象である、コマンドに設定する読み出しアドレスおよび書き込みアドレス等の位置情報は、任意の態様にすることが可能である。
例えば、全てのアドレスを個々に指定するようにしてもよいし、アドレスの範囲を、開始アドレスと終了アドレスにより指定したり、開始アドレスとアドレス数により指定したりするようにしてもよい。また、例えば、絶対アドレスまたは相対アドレスのいずれを用いてもよい。さらに、例えば、ブロック番号や領域名など、アドレス以外の単位で位置を示すようにしてもよい。
[変形例4]
さらに、以上の説明では、読み出しアドレスまたは書き込みアドレスを改ざんの検出対象とする例を示したが、本技術は、それ以外のパラメータの改ざんを検出する場合にも適用することができる。
例えば、読み出しを開始するアドレス、読み出すデータの数、および、データを読み出す方向(アドレスの昇順または降順)を、読み出しコマンドにパラメータとして設定する場合、それらの全てのパラメータを用いてMACを演算することにより、当該全てのパラメータの改ざんを検出することが可能になる。
[変形例5]
また、本技術では、必ずしもコマンドの全てのパラメータをMACの演算に用いる必要はなく、少なくとも一部のみ(例えば、改ざんを検出したいパラメータのみ)を用いて演算するようにしてもよい。
[変形例6]
また、例えば、リーダライタ11がICカード12にデータを書き込むときに、ICカード12に保持されているカウンタをインクリメントするようにするとともに、そのカウンタの値も含めてMAC演算を行うようにしてもよい。例えば、リーダライタ11が、MACを演算する前にICカード12からカウンタの値を読み出し、書き込みデータ、書き込みアドレス、および、読み出したカウンタの値に基づいて、MACを算出するようにしてもよい。
[変形例7]
さらに、上述したMAC演算のアルゴリズムは、その一例であり、他のセキュリティ強度の高いアルゴリズムを採用することが可能である。
また、改ざんの検出に用いる認証用データには、上述したMAC以外にも、送信側と受信側で共通のセキュリティ強度の高いアルゴリズムにより算出されるデータを採用することができる。
さらに、認証用データの演算アルゴリズムには、共通鍵暗号化方式および公開鍵暗号化方式のいずれの暗号化方式を採用してもよい。なお、公開鍵暗号化方式を採用した場合、認証用データの送信側が秘密鍵を用いて演算し、受信側が公開鍵を用いて演算するようにすればよい。
あるいは、セッション毎に生成され、送信側と受信側で共有されるセッション鍵を用いて認証用データを演算するようにしてもよい。
なお、セッション鍵の生成方法には、任意の方法を採用することができる。例えば、情報処理システム1においては、リーダライタ11がICカード12に乱数を書き込み、その乱数に基づいて、ICカード12がセッション鍵を生成するようにすることが可能である。生成されたセッション鍵は、例えば、電源が切断されたり、再度ICカード12に乱数が書き込まれるまで有効とされる。
また、認証用データの演算アルゴリズムには、鍵を用いないアルゴリズムを採用することも可能である。ただし、この場合、得られた認証用データを、共通鍵暗号化方式および公開鍵暗号化方式のいずれかの暗号化方式により暗号化して送信する必要がある。なお、公開鍵暗号化方式を採用した場合、認証用データの送信側が秘密鍵を用いて暗号化し、受信側が公開鍵を用いて復号するようにすればよい。
[変形例8]
さらに、本技術は、データを暗号化して送受信する場合にも適用することができる。この場合、伝送路上でデータが改ざんされる可能性が低くなるため、認証用データが一致しない場合、コマンドのパラメータが改ざんされた可能性が高いことを検出することができる。
[コンピュータの構成例]
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図6は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)201,ROM(Read Only Memory)202,RAM(Random Access Memory)203は、バス204により相互に接続されている。
バス204には、さらに、入出力インタフェース205が接続されている。入出力インタフェース205には、入力部206、出力部207、記憶部208、通信部209、及びドライブ210が接続されている。
入力部206は、キーボード、マウス、マイクロフォンなどよりなる。出力部207は、ディスプレイ、スピーカなどよりなる。記憶部208は、ハードディスクや不揮発性のメモリなどよりなる。通信部209は、ネットワークインタフェースなどよりなる。ドライブ210は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア211を駆動する。
以上のように構成されるコンピュータでは、CPU201が、例えば、記憶部208に記憶されているプログラムを、入出力インタフェース205及びバス204を介して、RAM203にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU201)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア211に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア211をドライブ210に装着することにより、入出力インタフェース205を介して、記憶部208にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部209で受信し、記憶部208にインストールすることができる。その他、プログラムは、ROM202や記憶部208に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、システムの用語は、複数の装置、手段などより構成される全体的な装置を意味するものとする。
さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
1 情報処理システム, 11 リーダライタ, 12 ICカード, 22 コマンド生成部, 23 コマンド送信部, 25 レスポンス受信部, 26 MAC演算部, 27 認証部, 42 コマンド受信部, 43 MAC演算部, 44 認証部, 45 メモリアクセス部, 46 メモリ, 47 レスポンス生成部, 48 レスポンス送信部

Claims (16)

  1. 他の情報処理装置から所定のコマンドを受信する受信部と、
    受信した前記コマンドのパラメータの少なくとも一部、および、前記コマンドに対応して前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出する演算部と、
    前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信する送信部と
    を備える情報処理装置。
  2. 記憶媒体からのデータの読み出しを制御する読み出し制御部をさらに備え、
    前記コマンドは、前記第1のデータを読み出す位置を示す位置情報をパラメータに含み、前記位置情報により示される位置から前記第1のデータを読み出すためのコマンドであり、
    前記読み出し制御部は、前記位置情報に示される前記記憶媒体の位置から前記第1のデータを読み出し、
    前記演算部は、受信した前記コマンドのパラメータに含まれる前記位置情報、および、前記記憶媒体から読み出された前記第1のデータに基づいて、前記第2のデータを算出する
    請求項1に記載の情報処理装置。
  3. 前記演算部は、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出する
    請求項2に記載の情報処理装置。
  4. 情報処理装置が、
    他の情報処理装置から所定のコマンドを受信し、
    受信した前記コマンドのパラメータの少なくとも一部、および、前記コマンドに対応して前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出し、
    前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信する
    ステップを含む情報処理方法。
  5. 他の情報処理装置に所定のコマンドを送信する送信部と、
    前記コマンドに対応して前記他の情報処理装置から送信されてくる、第1のデータ、および、受信した前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて前記他の情報処理装置が所定のアルゴリズムにより算出した認証用の第2のデータを受信する受信部と、
    前記他の情報処理装置に送信した前記コマンドのパラメータの少なくとも一部、および、前記他の情報処理装置から受信した前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出する演算部と、
    前記第2のデータと前記第3のデータの認証を行う認証部と
    を備える情報処理装置。
  6. 前記コマンドは、前記第1のデータを読み出す位置を示す位置情報をパラメータに含み、前記位置情報により示される位置から前記第1のデータを読み出すためのコマンドであり、
    前記他の情報処理装置は、受信した前記コマンドのパラメータに含まれる前記位置情報、および、前記位置情報により示される位置から読み出した前記第1のデータに基づいて、前記第2のデータを算出し、
    前記演算部は、送信した前記コマンドのパラメータに含まれる前記位置情報、および、前記他の情報処理装置から受信した前記第1のデータに基づいて、前記第3のデータを算出する
    請求項5に記載の情報処理装置。
  7. 前記他の情報処理装置は、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出し、
    前記演算部は、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第3のデータを算出する
    請求項6に記載の情報処理装置。
  8. 情報処理装置が、
    他の情報処理装置に所定のコマンドを送信し、
    前記コマンドに対応して前記他の情報処理装置から送信されてくる、第1のデータ、および、受信した前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて前記他の情報処理装置が所定のアルゴリズムにより算出した認証用の第2のデータを受信し、
    前記他の情報処理装置に送信した前記コマンドのパラメータの少なくとも一部、および、前記他の情報処理装置から受信した前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出し、
    前記第2のデータと前記第3のデータの認証を行う
    ステップを含む情報処理方法。
  9. 他の情報処理装置に送信するコマンドのパラメータの少なくとも一部、および、前記コマンドとともに前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出する演算部と、
    前記コマンド、前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信する送信部と
    を備える情報処理装置。
  10. 前記コマンドは、前記第1のデータを書き込む位置を示す位置情報をパラメータに含み、前記位置情報により示される位置に前記第1のデータを書き込むためのコマンドであり、
    前記演算部は、前記位置情報および前記第1のデータに基づいて、前記第2のデータを算出する
    請求項9に記載の情報処理装置。
  11. 前記演算部は、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出する
    請求項10に記載の情報処理装置。
  12. 情報処理装置が、
    他の情報処理装置に送信するコマンドのパラメータの少なくとも一部、および、前記コマンドとともに前記他の情報処理装置に送信する第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第2のデータを算出し、
    前記コマンド、前記第1のデータおよび前記第2のデータを前記他の情報処理装置に送信する
    ステップを含む情報処理方法。
  13. 他の情報処理装置から送信されてくる、所定のコマンド、第1のデータ、および、前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて所定のアルゴリズムにより算出された認証用の第2のデータを受信する受信部と、
    受信した前記コマンドのパラメータの少なくとも一部、および、前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出する演算部と、
    前記第2のデータと前記第3のデータの認証を行う認証部と
    を備える情報処理装置。
  14. 記憶媒体へのデータの書き込みを制御する書き込み制御部をさらに備え、
    前記コマンドは、前記第1のデータを書き込む位置を示す位置情報をパラメータに含み、前記位置情報により示される位置に前記第1のデータを書き込むためのコマンドであり、
    前記他の情報処理装置は、送信する前記コマンドのパラメータに含まれる前記位置情報、および、送信する前記第1のデータに基づいて、前記第2のデータを算出し、
    前記演算部は、受信した前記コマンドのパラメータに含まれる前記位置情報、および、受信した前記第1のデータに基づいて、前記第3のデータを算出する
    請求項13に記載の情報処理装置。
  15. 前記他の情報処理装置は、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第2のデータを算出し、
    前記演算部は、前記位置情報および前記第1のデータに加えて、前記第1のデータの個数に基づいて、前記第3のデータを算出する
    請求項14に記載の情報処理装置。
  16. 情報処理装置が、
    他の情報処理装置から送信されてくる、所定のコマンド、第1のデータ、および、前記コマンドのパラメータの少なくとも一部と前記第1のデータとに基づいて所定のアルゴリズムにより算出された認証用の第2のデータを受信し、
    受信した前記コマンドのパラメータの少なくとも一部、および、前記第1のデータに基づいて、前記他の情報処理装置と共通のアルゴリズムにより認証用の第3のデータを算出し、
    前記第2のデータと前記第3のデータの認証を行う
    ステップを含む情報処理方法。
JP2011096439A 2011-04-22 2011-04-22 情報処理装置および情報処理方法 Active JP5824849B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2011096439A JP5824849B2 (ja) 2011-04-22 2011-04-22 情報処理装置および情報処理方法
PCT/JP2012/059840 WO2012144380A1 (ja) 2011-04-22 2012-04-11 情報処理装置および情報処理方法
US14/111,804 US9626504B2 (en) 2011-04-22 2012-04-11 Information processing device and information processing method
EP12774821.8A EP2701101B1 (en) 2011-04-22 2012-04-11 Information processing devices and information processing methods
CN201280018524.2A CN103493430B (zh) 2011-04-22 2012-04-11 信息处理设备以及信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011096439A JP5824849B2 (ja) 2011-04-22 2011-04-22 情報処理装置および情報処理方法

Publications (2)

Publication Number Publication Date
JP2012226711A JP2012226711A (ja) 2012-11-15
JP5824849B2 true JP5824849B2 (ja) 2015-12-02

Family

ID=47041491

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011096439A Active JP5824849B2 (ja) 2011-04-22 2011-04-22 情報処理装置および情報処理方法

Country Status (5)

Country Link
US (1) US9626504B2 (ja)
EP (1) EP2701101B1 (ja)
JP (1) JP5824849B2 (ja)
CN (1) CN103493430B (ja)
WO (1) WO2012144380A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015122620A (ja) * 2013-12-24 2015-07-02 富士通セミコンダクター株式会社 認証システム、認証方法、認証装置、及び、被認証装置
US9819660B2 (en) * 2014-04-11 2017-11-14 Xerox Corporation Systems and methods for document authentication
US11075768B2 (en) * 2015-03-27 2021-07-27 Centro De Pesquisas Avancadas Wernher Von Braun Embedding protected memory access into a RFID authentication process based on a challenge-response mechanism
EP3622442A4 (en) * 2017-05-08 2021-04-21 Security Matters Ltd. VIRTUAL CURRENCY SYSTEM BASED ON BLOCK CHAIN ARCHITECTURE AND PHYSICAL MARKING
CN107679427A (zh) * 2017-10-27 2018-02-09 四川云玦科技有限公司 适用于数据存储装置的防掉落设备
KR102415330B1 (ko) 2018-01-08 2022-06-30 삼성전자주식회사 스토리지 장치의 동작 방법 및 시스템

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2748134B1 (fr) * 1996-04-30 1998-06-26 Bull Cp8 Procede et dispositif permettant a un programme fige de pouvoir evoluer
JP3793629B2 (ja) * 1997-10-30 2006-07-05 沖電気工業株式会社 メモリカードとメモリカード装置
US7395435B2 (en) * 2002-09-20 2008-07-01 Atmel Corporation Secure memory device for smart cards
JP2004280401A (ja) * 2003-03-14 2004-10-07 Toshiba Corp コンテンツ配信システム、装置及びプログラム
JP4624732B2 (ja) * 2003-07-16 2011-02-02 パナソニック株式会社 アクセス方法
DE10345454A1 (de) * 2003-09-30 2005-04-28 Infineon Technologies Ag Wortindividuelle Schlüsselerzeugung
JP2005140823A (ja) * 2003-11-04 2005-06-02 Sony Corp 情報処理装置、制御方法、プログラム、並びに記録媒体
US7580519B1 (en) * 2003-12-08 2009-08-25 Advanced Micro Devices, Inc. Triple DES gigabit/s performance using single DES engine
FR2869486B1 (fr) * 2004-04-21 2007-08-31 Oberthur Card Syst Sa Procede de traitement de donnees securise et dispositif associe
JP2006080642A (ja) * 2004-09-07 2006-03-23 Sony Corp 情報処理装置および方法、プログラム並びに記録媒体
JP2006099548A (ja) 2004-09-30 2006-04-13 Hitachi Ltd データ共有システム、データ共有方法、データ保有者デバイスおよびデータサーバ
JP2006203564A (ja) * 2005-01-20 2006-08-03 Nara Institute Of Science & Technology マイクロプロセッサ、ノード端末、コンピュータシステム及びプログラム実行証明方法
US8127144B2 (en) 2005-10-12 2012-02-28 Panasonic Corporation Program loader operable to verify if load-destination information has been tampered with, processor including the program loader, data processing device including the processor, promgram loading method, and integrated circuit
JP4931542B2 (ja) * 2005-10-12 2012-05-16 パナソニック株式会社 ロード先情報に対する改ざん検証機能を備えたプログラムローダ、プログラムローダを含むプロセッサ、プロセッサを含むデータ処理装置、プログラムロード方法、及び集積回路
US8077867B2 (en) * 2007-01-15 2011-12-13 Panasonic Corporation Confidential information processing apparatus, confidential information processing device, and confidential information processing method
WO2009031245A1 (ja) * 2007-09-04 2009-03-12 Nintendo Co., Ltd. ダウンロードセキュリティシステム
US8601285B2 (en) * 2007-11-23 2013-12-03 Nokia Corporation Method for secure program code execution in an electronic device
US20090187771A1 (en) * 2008-01-17 2009-07-23 Mclellan Jr Hubert Rae Secure data storage with key update to prevent replay attacks
JP2009258860A (ja) * 2008-04-14 2009-11-05 Sony Corp 情報処理装置および方法、記録媒体、プログラム、並びに情報処理システム
US8452984B2 (en) * 2008-08-28 2013-05-28 Alcatel Lucent Message authentication code pre-computation with applications to secure memory
US8070061B2 (en) * 2008-10-21 2011-12-06 Habraken G Wouter Card credential method and system
JP2010141639A (ja) 2008-12-12 2010-06-24 Dainippon Printing Co Ltd 通信システムおよび通信方法
JP5039728B2 (ja) * 2009-02-24 2012-10-03 三菱重工業株式会社 コンピュータメモリにおけるスタック領域のデータの保護方法
US8479011B2 (en) * 2009-10-07 2013-07-02 Gemalto Sa Method and apparatus for using cryptographic mechanisms to provide access to a portable device using integrated authentication using another portable device
CN101964789B (zh) * 2010-09-26 2013-11-20 飞天诚信科技股份有限公司 安全访问受保护资源的方法及系统

Also Published As

Publication number Publication date
EP2701101A1 (en) 2014-02-26
JP2012226711A (ja) 2012-11-15
CN103493430B (zh) 2017-09-29
EP2701101B1 (en) 2018-03-14
US20140230014A1 (en) 2014-08-14
WO2012144380A1 (ja) 2012-10-26
CN103493430A (zh) 2014-01-01
EP2701101A4 (en) 2015-04-08
US9626504B2 (en) 2017-04-18

Similar Documents

Publication Publication Date Title
US10694360B2 (en) Hearing device and method of hearing device communication
CN101291224B (zh) 在通信系统中处理数据的方法和系统
JP5815294B2 (ja) セキュアなフィールドプログラマブルゲートアレイ(fpga)アーキテクチャ
US9363079B2 (en) Method of generating message authentication code and authentication device and authentication request device using the method
JP5824849B2 (ja) 情報処理装置および情報処理方法
CN107438230B (zh) 安全无线测距
US20170063853A1 (en) Data cipher and decipher based on device and data authentication
JP2012527190A (ja) 対称暗号化システムにおいてデバイスを安全に識別し認証するためのシステムおよび方法
US20170353315A1 (en) Secure electronic entity, electronic apparatus and method for verifying the integrity of data stored in such a secure electronic entity
JP2015122620A (ja) 認証システム、認証方法、認証装置、及び、被認証装置
CN113079001B (zh) 密钥更新方法、信息处理设备及密钥更新装置
CN102970676A (zh) 一种对原始数据进行处理的方法、物联网系统及终端
WO2007072615A1 (ja) 認証システム及び認証対象装置
CN107872315A (zh) 数据处理方法和智能终端
JP6246516B2 (ja) 情報処理システム
CN111177676B (zh) 验证系统、验证方法以及非暂态计算机可读取记录介质
US10200348B2 (en) Method to detect an OTA (over the air) standard message affected by an error
CN111651788B (zh) 一种基于格密码的终端访问控制系统及方法
EP3113515A1 (en) Hearing device and method of hearing device communication
JP6069120B2 (ja) 情報処理システム
CN110601841B (zh) Sm2协同签名及解密方法、装置
JP2015014839A (ja) 情報処理システム
JP6404958B2 (ja) 認証システム、方法及びプログラム並びにサーバ
JP6124338B2 (ja) 情報処理システム
JP4746296B2 (ja) 暗号鍵設定システム、データ通信装置、暗号鍵設定方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140304

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150729

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150928

R151 Written notification of patent or utility model registration

Ref document number: 5824849

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250