[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP4301275B2 - 電子機器、および情報処理方法 - Google Patents

電子機器、および情報処理方法 Download PDF

Info

Publication number
JP4301275B2
JP4301275B2 JP2006264022A JP2006264022A JP4301275B2 JP 4301275 B2 JP4301275 B2 JP 4301275B2 JP 2006264022 A JP2006264022 A JP 2006264022A JP 2006264022 A JP2006264022 A JP 2006264022A JP 4301275 B2 JP4301275 B2 JP 4301275B2
Authority
JP
Japan
Prior art keywords
data
stored
information processing
processing apparatus
encryption key
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.)
Expired - Fee Related
Application number
JP2006264022A
Other languages
English (en)
Other versions
JP2008084059A (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 JP2006264022A priority Critical patent/JP4301275B2/ja
Priority to US11/900,264 priority patent/US20080178009A1/en
Publication of JP2008084059A publication Critical patent/JP2008084059A/ja
Application granted granted Critical
Publication of JP4301275B2 publication Critical patent/JP4301275B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/3226Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Description

本発明は、電子機器、および情報処理方法に関し、特に、暗号処理の機能を有していない記憶媒体に対して、より安全にデータを記憶させておくことができるようにした電子機器、および情報処理方法に関する。
近年、フラッシュメモリの低価格化、大容量化が進んでいることなどから、PC(Personal Computer)によって作成したデータを記憶しておくための機器としてUFD(USB Flash Disk)が普及してきている。ユーザは、自分のPCに設けられているUSB(Universal Serial Bus)端子にUFDを差し込むことによって、UFDを外部の記憶媒体としてPCに認識させ、そこにデータを記憶させておくことができる。
このようなUFDに記憶させておくデータにPC内で暗号化を施しておくことも行われている。これにより、記憶されているデータを復号することができる機器はUFDにデータを記憶させたPCだけといったように制限されるから、ユーザは、UFDをなくしてしまったとしても、UFDに記憶させておいたデータが他人によって見られてしまうのを防ぐことができる。
特許文献1には、多数のアルゴリズムの中から選択された1つのアルゴリズムによってデータを暗号化し、暗号化されたデータをHDD(Hard Disk Drive)に記憶しておく技術が開示されている。特許文献2には、フラッシュメモリの他にワンライトメモリを設け、暗号化された個人情報をそのワンライトメモリに記憶させておくことによって、認証のための個人情報の漏洩を防ぐ技術が開示されている。特許文献3には、コンピュータによって指紋の認証を行い、その認証結果に応じて、メモリユニットへのアクセスを許可/不許可する技術が開示されている。
特表2005−504373号公報 特開2003−346122号公報 登録実用新案第3115081号公報
UFDに記憶させるデータにPC内で暗号化を施すようにした場合、その暗号化に用いられる鍵は例えばPCのHDDなどに記憶されることになるが、PCに記憶されているデータは、仮に、それが分かりづらい場所に記憶されている場合であっても、悪意のある者によっては容易に見つけ出すことが可能であり、盗まれてしまうという可能性を有している。
また、従来、そのようなデータの暗号化を行う前の本人認証は、ユーザに入力させたパスワードを用いたり、PCに設けられた指紋センサに指をあてさせるなどしてバイオメトリックスを用いたり、リーダライタにかざさせたICカードに記憶されているユーザのIDを用いたり、あるいは、USBキーに記憶されている認証情報を用いたりすることによって行われていたが、いずれも、PC上で行われるものであるために、ユーザに入力させた情報と照合する情報がPCから盗まれる可能性があった。
本発明はこのような状況に鑑みてなされたものであり、例えば暗号処理の機能を有していない記憶媒体に対して、より安全にデータを記憶させておくことができるようにするものである。
本発明の一側面の電子機器は生体情報を読み取る読み取り手段と、電子機器自身に対して抜き差し可能な記憶媒体が挿入される挿入手段と、電子機器自身が接続される情報処理装置から供給されたデータを記憶可能な第1の記憶手段と、前記読み取り手段により読み取られた前記生体情報に基づいてユーザの認証を行い、認証が成功した場合、前記情報処理装置による、前記挿入手段に挿入された前記記憶媒体、または前記第1の記憶手段に対するアクセスを許可し、認証が失敗した場合、前記情報処理装置による前記記憶媒体と前記第1の記憶手段に対するアクセスを禁止する制御手段と、秘密鍵と、暗号鍵と、複数の他の電子機器のそれぞれに記憶されている他の秘密鍵に対応する複数の公開鍵とを記憶する第2の記憶手段と、前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、データを前記第1の記憶手段に記憶させることが前記情報処理装置から指示された場合、前記情報処理装置から供給された書き込みの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化して前記第1の記憶手段に記憶させ、データを前記挿入手段に挿入された前記記憶媒体に記憶させることが前記情報処理装置から指示された場合、前記書き込みの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化するとともに、前記暗号鍵を、前記第2の記憶手段に記憶されている前記複数の公開鍵のうちの、前記情報処理装置から供給された情報により指定されたユーザの前記他の電子機器に記憶されている前記他の秘密鍵に対応する公開鍵を用いて暗号化し、暗号化した前記書き込みの対象とするデータと暗号化した前記暗号鍵とを前記記憶媒体に記憶させる暗号処理手段とを備え、前記暗号処理手段は、さらに、前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、前記第1の記憶手段に記憶されているデータを読み出すことが指示された場合、読み出しの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて復号して前記情報処理装置に送信し、前記他の電子機器に記憶されている他の暗号鍵を用いて暗号化されたデータと、前記第2の記憶手段に記憶されている前記秘密鍵に対応する公開鍵を用いて前記他の電子機器において暗号化された前記他の暗号鍵とが前記挿入手段に挿入された前記記憶媒体に記憶されており、記憶されているデータを読み出すことが前記情報処理装置から指示された場合、前記記憶媒体に記憶されている前記他の暗号鍵を前記第2の記憶手段に記憶されている前記秘密鍵を用いて復号し、復号して得られた前記他の暗号鍵を用いて前記読み出しの対象とするデータを復号して前記情報処理装置に送信する
前記電子機器が接続される前記情報処理装置から送信されてきた書き込みの対象とするデータを暗号化する前記暗号鍵は、書き込みの対象とするデータが送信されてくる毎に、前記電子機器自身により作成されるようにすることができる。
前記読み取り手段には、前記生体情報として指紋を読み取らせることができる。
本発明の一側面の情報処理方法は、生体情報を読み取り手段によって読み取り、読み取った前記生体情報に基づいてユーザの認証を行い、認証が成功した場合、前記情報処理装置による、電子機器自身に対して抜き差し可能な記憶媒体が挿入される挿入手段に挿入された前記記憶媒体、または電子機器自身が接続される情報処理装置から供給されたデータを記憶可能な第1の記憶手段に対するアクセスを許可し、認証が失敗した場合、前記情報処理装置による前記記憶媒体と前記第1の記憶手段に対するアクセスを禁止し、前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、データを前記第1の記憶手段に記憶させることが前記情報処理装置から指示された場合、前記情報処理装置から供給された書き込みの対象とするデータを、秘密鍵と、暗号鍵と、複数の他の電子機器のそれぞれに記憶されている他の秘密鍵に対応する複数の公開鍵とを記憶する第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化して前記第1の記憶手段に記憶させ、データを前記挿入手段に挿入された前記記憶媒体に記憶させることが前記情報処理装置から指示された場合、前記書き込みの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化するとともに、前記暗号鍵を、前記第2の記憶手段に記憶されている前記複数の公開鍵のうちの、前記情報処理装置から供給された情報により指定されたユーザの前記他の電子機器に記憶されている前記他の秘密鍵に対応する公開鍵を用いて暗号化し、暗号化した前記書き込みの対象とするデータと暗号化した前記暗号鍵とを前記記憶媒体に記憶させ、前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、前記第1の記憶手段に記憶されているデータを読み出すことが指示された場合、読み出しの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて復号して前記情報処理装置に送信し、前記他の電子機器に記憶されている他の暗号鍵を用いて暗号化されたデータと、前記第2の記憶手段に記憶されている前記秘密鍵に対応する公開鍵を用いて前記他の電子機器において暗号化された前記他の暗号鍵とが前記挿入手段に挿入された前記記憶媒体に記憶されており、記憶されているデータを読み出すことが前記情報処理装置から指示された場合、前記記憶媒体に記憶されている前記他の暗号鍵を前記第2の記憶手段に記憶されている前記秘密鍵を用いて復号し、復号して得られた前記他の暗号鍵を用いて前記読み出しの対象とするデータを復号して前記情報処理装置に送信するステップを含む。
本発明の一側面においては、生体情報が読み取り手段によって読み取られ、読み取られた前記生体情報に基づいてユーザの認証が行われ、認証が成功した場合、前記情報処理装置による、電子機器自身に対して抜き差し可能な記憶媒体が挿入される挿入手段に挿入された前記記憶媒体、または電子機器自身が接続される情報処理装置から供給されたデータを記憶可能な第1の記憶手段に対するアクセスが許可され、認証が失敗した場合、前記情報処理装置による前記記憶媒体と前記第1の記憶手段に対するアクセスが禁止される。前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、データを前記第1の記憶手段に記憶させることが前記情報処理装置から指示された場合、前記情報処理装置から供給された書き込みの対象とするデータが、秘密鍵と、暗号鍵と、複数の他の電子機器のそれぞれに記憶されている他の秘密鍵に対応する複数の公開鍵とを記憶する第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化されて前記第1の記憶手段に記憶される。また、データを前記挿入手段に挿入された前記記憶媒体に記憶させることが前記情報処理装置から指示された場合、前記書き込みの対象とするデータが前記第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化されるとともに、前記暗号鍵が、前記第2の記憶手段に記憶されている前記複数の公開鍵のうちの、前記情報処理装置から供給された情報により指定されたユーザの前記他の電子機器に記憶されている前記他の秘密鍵に対応する公開鍵を用いて暗号化され、暗号化された前記書き込みの対象とするデータと暗号化された前記暗号鍵とが前記記憶媒体に記憶される。前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、前記第1の記憶手段に記憶されているデータを読み出すことが指示された場合、読み出しの対象とするデータが前記第2の記憶手段に記憶されている前記暗号鍵を用いて復号されて前記情報処理装置に送信され、前記他の電子機器に記憶されている他の暗号鍵を用いて暗号化されたデータと、前記第2の記憶手段に記憶されている前記秘密鍵に対応する公開鍵を用いて前記他の電子機器において暗号化された前記他の暗号鍵とが前記挿入手段に挿入された前記記憶媒体に記憶されており、記憶されているデータを読み出すことが前記情報処理装置から指示された場合、前記記憶媒体に記憶されている前記他の暗号鍵が前記第2の記憶手段に記憶されている前記秘密鍵を用いて復号され、復号されることによって得られた前記他の暗号鍵を用いて前記読み出しの対象とするデータが復号されて前記情報処理装置に送信される。
本発明の一側面によれば、例えば暗号処理の機能を有していない記憶媒体に対して、より安全にデータを記憶させておくことができる。
以下、本発明の実施の形態について図を参照して説明する。
図1は、本発明の一実施形態に係る指紋照合機能付きUFD(USB Flash Disk)1の外観の例を示す図である。
指紋照合機能付きUFD1(以下、単にUFD1という)は箱形の筐体からなり、筐体の側面に設けられるUSB端子1Aが差し込まれることによって、USB端子が設けられるPCなどに接続される。
UFD1にはフラッシュメモリが内蔵されており、ユーザは、UFD1をPCに差し込み、UFD1を外部の記憶媒体としてPCに認識させることによって、PCを用いて作成した各種のデータをUFD1に記憶させておくことができる。
UFD1の筐体表面には指紋センサ11が露出して設けられている。ユーザは、UFD1をPCの外部の記憶媒体として用いるとき、UFD1をPCに差し込んだ状態で1本の指の腹を指紋センサ11にあて、指紋の照合を行わせる必要がある。指紋センサ11により読み取られたユーザの指紋のデータは、ユーザによってあらかじめ登録され、UFD1内に記憶されている指紋のデータとUFD1によって照合され、それらが一致したとき、UFD1に対してPCからデータを記憶させたり、UFD1に記憶されているデータをPCから読み出したりすることが可能となる。
また、UFD1の筐体には、リムーバブルメディア2を抜き差し可能なスロットや、リムーバブルメディア2との電気的な接続を実現する端子などから構成されるリムーバブルメディアアダプタ12が設けられている。ユーザは、メモリスティック(商標)、SDカード(商標)、CF(商標)などの、フラッシュメモリが内蔵されたリムーバブルメディア2をPCに接続されたUFD1のリムーバブルメディアアダプタ12に挿入することによって、リムーバブルメディア2に対してPCからデータを記憶させたり、リムーバブルメディア2に記憶されているデータをPCから読み出したりすることも可能となる。
すなわち、UFD1は、指紋認証機能、外部の記憶媒体としての機能の他に、それ自身に挿入されたリムーバブルメディア2に記憶されているデータの読み書きを行ういわゆるカードリーダとしての機能も有している。
後に詳述するように、UFD1にはPKI(Public Key Infrastructure)を実現するために用いられる秘密鍵や公開鍵、または、データの暗号化、復号に用いられる暗号鍵などが記憶されており、ハードウェアトークンとしての機能も有している。
書き込みの対象としてPCから送信されてきたデータは、常に、UFD1内で暗号化されてから、内部のフラッシュメモリや、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2に記憶される。また、データの読み出しを指示する読み出しコマンドがPCから送信されてきたとき、内部のフラッシュメモリや、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2に暗号化された状態で記憶されているデータは、UFD1内で復号されてからPCに送信される。
データを暗号化したり、暗号化されているデータを復号する機能がリムーバブルメディア2自身に用意されていない場合であっても、そのようなリムーバブルメディア2をUFD1のリムーバブルメディアアダプタ12に挿入して利用することによって、ユーザは、PCから、データを暗号化した状態でリムーバブルメディア2に記憶させておいたり、そのような状態で記憶されているデータをPCから読み出すことが可能になる。
暗号化した状態で記憶させておきたいデータが大量にあり、UFD1に内蔵されているフラッシュメモリの容量では足りない場合であっても、リムーバブルメディア2を複数、リムーバブルメディアアダプタ12に差し替えたりして使うことによって、大量にあるデータを全て暗号化した状態で記憶させておくことが可能になる。
また、データの暗号化、暗号化されているデータの復号に用いられる鍵データはUFD1により管理されるから、PCなどに管理させておく場合に較べて、鍵データが漏洩してしまうリスクを抑えることができる。
図2は、UFD1のハードウエア構成例を示すブロック図である。図1に示される構成と同じ構成には同じ符号を付してある。
図2に示されるように、UFD1は、基本的に、コントローラLSI(Large Scale Integrated Circuit)21に対して指紋センサ11、リムーバブルメディアアダプタ12、フラッシュメモリ22、水晶発振子23が接続されることによって構成される。
コントローラLSI21は、USB I/F(Interface)31、リムーバブルメディアコントローラ32、CPU(Central Processing Unit)33、暗号エンジン34、EEPROM(Electrically Erasable and Programmable Read Only Memory)35、プログラム用RAM/ROM(Random Access Memory/Read Only Memory)36、指紋照合エンジン37、PLL(Phase Lock Loop)38、およびフラッシュメモリI/F39がバス40を介して接続されることによって構成される。
USB I/F31は、UFD1が接続される外部の情報処理装置であるホストPC3とUSB規格に従って通信を行う。USB I/F31は、ホストPC3から送信されてきたデータを受信し、受信したデータをバス40に出力する。バス40に出力されたデータは、例えば、暗号エンジン34により暗号化された後、フラッシュメモリI/F39に供給され、フラッシュメモリ22に記憶される。
また、USB I/F31は、フラッシュメモリ22からフラッシュメモリI/F39により読み出され、暗号エンジン34により復号されたデータがバス40を介して供給されたとき、それをホストPC3に送信する。
リムーバブルメディアコントローラ32は、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2に対するデータの書き込み、またはリムーバブルメディア2に記憶されているデータの読み出しを制御する。
リムーバブルメディアコントローラ32は、暗号エンジン34により暗号化され、バス40を介して供給されたデータをリムーバブルメディア2に記憶させる。また、リムーバブルメディアコントローラ32は、暗号化された状態でリムーバブルメディア2に記憶されているデータを読み出し、読み出したデータをバス40を介して暗号エンジン34に出力する。
CPU33は、プログラム用RAM/ROM36に記憶されているプログラムを実行し、UFD1の全体の動作を制御する。
例えば、CPU33は、ホストPC3による、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2に対するアクセス、フラッシュメモリ22に対するアクセスを制御し、指紋による認証が成功したことが指紋照合エンジン37から通知されたとき、それらのアクセスを許可する。
暗号エンジン34は、ホストPC3から送信された書き込みの対象とするデータがバス40を介して供給されたとき、そのデータをEEPROM35に記憶されている暗号鍵を用いて暗号化し、暗号化して得られたデータを、ホストPC3により指定された書き込み先に応じて、リムーバブルメディアコントローラ32またはフラッシュメモリI/F39に出力する。
また、暗号エンジン34は、フラッシュメモリ22に記憶されているデータがフラッシュメモリI/F39により読み出され、読み出されたデータが供給されたとき、供給されたデータに施されている暗号をEEPROM35に記憶されている暗号鍵を用いて復号し、復号して得られたデータをUSB I/F31に出力して、ホストPC3に送信させる。
暗号エンジン34は、リムーバブルメディア2に記憶されているデータがリムーバブルメディアコントローラ32により読み出され、読み出されたデータが供給されたとき、供給されたデータに施されている暗号を復号するのに用いられる暗号鍵を、EEPROM35に記憶されている秘密鍵を用いて復号し、復号して得られた暗号鍵を用いて復号したデータをUSB I/F31に出力して、ホストPC3に送信させる。後述するように、リムーバブルメディア2にデータを書き込む時にそのデータの暗号化に用いられた暗号鍵は、EEPROM35に記憶されている秘密鍵に対応する公開鍵によって暗号化されている。
EEPROM35は、図3に示されるように、秘密鍵、公開鍵、暗号鍵、および指紋テンプレートを記憶する。
秘密鍵、公開鍵、暗号鍵は暗号エンジン34により適宜読み出され、データの暗号化、または復号に用いられる。
秘密鍵は、これに対応する公開鍵により暗号化されたデータを復号するのに用いられる。この秘密鍵に対応する公開鍵は、例えば、UFD1と同様の構成を有する他のUFDに記憶されている。
公開鍵は、暗号化されたデータをリムーバブルメディア2に記憶させるとき、その暗号化に用いられた暗号鍵を暗号化するのに用いられる。この公開鍵に対応する秘密鍵は、例えば、UFD1と同様の構成を有する他のUFDに記憶されている。
暗号鍵は、RSA、AES(Advanced Encryption Standard)、DES(Data Encryption Standard)などの鍵データであり、記憶させておくデータの暗号化、暗号化された状態で記憶されているデータの復号に用いられる。
例えば、暗号鍵は、ユーザにより指紋の登録が行われたとき、登録された指紋のデータの一部と、EEPROM35にあらかじめ記憶されているデータとを用いて生成され、EEPROM35に記憶される。暗号鍵は、書き込みの対象とするデータがホストPC3から送信されてくる毎に新たに生成され、EEPROM35に記憶されるようにしてもよい。
後に詳述するように、EEPROM35に記憶されている秘密鍵と公開鍵は、UFD1と同様の構成を有するUFDを使うユーザとの間で、リムーバブルメディア2を介してデータをやりとりするときに用いられる。UFD1のユーザをユーザA、UFD1と同様の構成を有する他のUFDのユーザをユーザBとし、ユーザAとユーザBの間でデータをやりとりするものとすると、ユーザAが有するUFD1のEEPROM35には、ユーザAの秘密鍵と、ユーザBの秘密鍵に対応する公開鍵(ユーザBが公開する公開鍵)が少なくとも記憶され、ユーザBが有するUFDのEEPROMには、ユーザBの秘密鍵と、ユーザAの秘密鍵に対応する公開鍵(ユーザAが公開する公開鍵)が少なくとも記憶される。
UFD1のEEPROM35に記憶されているユーザAの秘密鍵は、ユーザBによってリムーバブルメディア2に記憶されたデータをユーザAがホストPC3から読み出させるとき、暗号化されたデータとともにリムーバブルメディア2に記憶されている、ユーザAの公開鍵を用いてユーザBのUFDによって暗号化された暗号鍵を復号するのに用いられる。
また、UFD1のEEPROM35に記憶されているユーザBの公開鍵は、ユーザBに提供するデータをユーザAがホストPC3からリムーバブルメディア2に記憶させるとき、暗号化されたデータとともにリムーバブルメディア2に記憶させる暗号鍵を暗号化するのに用いられる。
一方、ユーザBが有するUFDのEEPROMに記憶されているユーザBの秘密鍵は、ユーザAによってリムーバブルメディア2に記憶されたデータをユーザBが自分のPCから読み出すとき、暗号化されたデータとともにリムーバブルメディア2に記憶されている、ユーザBの公開鍵を用いてユーザAのUFD1によって暗号化された暗号鍵を復号するのに用いられる。
また、ユーザBが有するUFDのEEPROMに記憶されているユーザAの公開鍵は、ユーザAに提供するデータをユーザBが自分のPCからリムーバブルメディア2に記憶させるとき、暗号化されたデータとともにリムーバブルメディア2に記憶させる暗号鍵を暗号化するのに用いられる。
図3の指紋テンプレートは指紋の特徴を表すデータであり、指紋照合エンジン37に供給され、指紋センサ11により読み取られた指紋の照合に用いられる。指紋テンプレートは、指紋の登録時に指紋照合エンジン37により取得され、EEPROM35に記憶される。
このように、1チップ化されたコントローラLSI21に含まれるEEPROM35に各種の鍵データや指紋テンプレートが記憶されるから、コントローラLSI21からみて外部のメモリであるフラッシュメモリ22などにそれらのデータが記憶される場合に較べて、データの漏洩を防ぐことができる。
図2の説明に戻り、プログラム用RAM/ROM36は、CPU33により実行されるプログラムの他、CPU33が各種の処理を実行する上で必要な各種のデータを記憶する。
指紋照合エンジン37は、指紋センサ11から供給されたRF信号に基づいて指紋を読み取り、読み取った指紋の照合を行う。
例えば、指紋照合エンジン37は、指紋センサ11に設定された複数の比較的狭い範囲において指紋が読み取られることによって出力されるRF信号の信号レベルの積算値が閾値を超えたとき、指紋センサ11に指が置かれたと判断し、指紋の読み取りを開始する。
また、指紋照合エンジン37は、指紋センサ11からの出力に基づいて読み取った指紋を照合対象の指紋とし、EEPROM35に記憶されている指紋テンプレートにより表される特徴の照合を行う。指紋照合エンジン37は、照合対象の指紋と、EEPROM35に記憶されている指紋テンプレートにより表される特徴が一致する場合、指紋センサ11に指を置いたユーザが正当なユーザであると判定し、指紋による認証が成功したことをCPU33に通知する。
PLL38は、水晶発振子23から供給されたクロックに基づいてコントローラLSI21内の各部が動作するのに必要なクロックを生成し、生成したクロックを各部に供給する。
フラッシュメモリI/F39は、データストレージ用の内蔵のメモリであるフラッシュメモリ22に対するデータの書き込み、またはフラッシュメモリ22に記憶されているデータの読み出しを制御する。
フラッシュメモリI/F39は、暗号エンジン34により暗号化され、バス40を介して供給されたデータをフラッシュメモリ22に記憶させる。また、フラッシュメモリI/F39は、暗号化された状態でフラッシュメモリ22に記憶されているデータを読み出し、読み出したデータをバス40を介して暗号エンジン34に出力する。
ここで、以上のような構成を有するUFD1の処理について説明する。いずれの処理も、UFD1がホストPC3に接続されている状態で行われる。
はじめに、図4のフローチャートを参照して、指紋を登録するUFD1の処理について説明する。
この処理は、UFD1が接続されるホストPC3を操作するなどして、指紋の登録を行うことがユーザにより指示されたときに開始される。ユーザによる指示が行われたとき、指紋の登録を開始することを指示するコマンドがホストPC3からUFD1に送信される。
ステップS1において、指紋照合エンジン37は、指紋センサ11に指が置かれたか否かを判定し、指が置かれたと判定するまで待機する。
指紋照合エンジン37は、ステップS1において、例えば、指紋センサ11に設定された複数の比較的狭い範囲において物体が検出されることによって出力されるRF信号の信号レベルの積算値が閾値を超えたことから、指が置かれたと判定した場合、ステップS2に進む。
ステップS2において、指紋照合エンジン37は、指紋を読み取ることによって得られたRF信号が指紋読み取りデータとして指紋センサ11から供給されたとき、それを取り込む。
ステップS3において、指紋照合エンジン37は、指紋センサ11により読み取られた指紋の特徴を表すデータを指紋テンプレートとして取り出す。
ステップS4において、指紋照合エンジン37は、取り出した指紋テンプレートをEEPROM35に記憶させることによって指紋の登録を行い、処理を終了させる。
なお、指紋テンプレートは、EEPROM35に記憶されている暗号鍵を用いて暗号エンジン34により暗号化された後、フラッシュメモリ22に記憶されるようにしてもよい。例えば、空いている記憶領域がEEPROM35にない場合、指紋のテンプレートはEEPROM35ではなくフラッシュメモリ22に暗号化された状態で記憶される。
次に、図5のフローチャートを参照して、指紋の認証を行うUFD1の処理について説明する。
ステップS11において、指紋照合エンジン37は、指紋センサ11に指が置かれたか否かを判定し、指が置かれたと判定するまで待機する。
例えば、ホストPC3を用いて作成したデータを、リムーバブルメディアアダプタ12に挿入したリムーバブルメディア2やUFD1が内蔵するフラッシュメモリ22に記憶させようとするとき、または、リムーバブルメディアアダプタ12に挿入したリムーバブルメディア2やUFD1が内蔵するフラッシュメモリ22に記憶されているデータを、ホストPC3に読み出させようとするとき、ユーザは、指紋センサ11に指を置き、認証を行わせる。
指紋照合エンジン37は、ステップS11において、指が置かれたと判定した場合、ステップS12に進み、指紋センサ11から供給された指紋読み取りデータを取り込む。
ステップS13において、指紋照合エンジン37は、指紋読み取りデータによって表される指紋を照合対象の指紋とし、EEPROM35に記憶されている指紋テンプレートにより表される特徴の照合を行う。
なお、指紋テンプレートがフラッシュメモリ22に記憶されている場合、指紋照合エンジン37は、EEPROM35に記憶されている暗号鍵を用いて暗号エンジン34により復号された指紋テンプレートを用いて照合を行う。
ステップS14において、指紋照合エンジン37は、ステップS13の処理の結果を判定し、照合対象の指紋から抽出した特徴と、指紋テンプレートにより表される特徴が一致しないことから認証が失敗したと判定した場合、処理を終了させる。この場合、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2や、フラッシュメモリ22に対してホストPC3からアクセスすることは禁止される。
一方、ステップS14において、指紋照合エンジン37は、照合対象の指紋から抽出した特徴と、指紋テンプレートにより表される特徴が一致することから認証が成功したと判定した場合、そのことをCPU33に通知する。
ステップS15において、CPU33は、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2や、フラッシュメモリ22に対してアクセスすることをホストPC3に許可し、ホストPC3からのアクセスを受け付ける処理を行う。
ここでは、ホストPC3から供給されたデータをリムーバブルメディア2やフラッシュメモリ22に記憶させる、データの書き込みを受け付ける処理、リムーバブルメディア2やフラッシュメモリ22に記憶されたデータをホストPC3に送信する、データの読み出しを受け付ける処理がUFD1により行われる。
次に、図6のフローチャートを参照して、図5のステップS15において行われる、データの書き込みを受け付けるUFD1の処理について説明する。
ステップS21において、暗号エンジン34は、書き込みの対象とするデータを受信する。ホストPC3から送信されてきた書き込みの対象とするデータは、USB I/F31により受信され、バス40を介して暗号エンジン34に供給される。CPU33に対しては、データの書き込み先を、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2とするのか、UFD1の内蔵のメモリであるフラッシュメモリ22とするのかを指定する情報などを含むコマンドが供給される。
ステップS22において、暗号エンジン34は、EEPROM35から暗号鍵を読み出し、読み出した暗号鍵を用いて、ホストPC3から送信されてきたデータを暗号化する。
ステップS23において、CPU33は、ホストPC3から送信されてきたコマンドに基づいて、書き込み先(アクセス先)がUFD1の内蔵のメモリであるフラッシュメモリ22であるか否かを判定し、フラッシュメモリ22であると判定した場合、ステップS24に進む。このとき、暗号化されたデータは、暗号エンジン34からフラッシュメモリI/F39に供給される。
ステップS24において、フラッシュメモリI/F39は、暗号エンジン34により暗号化されたデータをフラッシュメモリ22に記憶させ、図5の処理に戻る。これにより、書き込みの対象としてホストPC3から送信されてきたデータは、UFD1の内蔵のメモリであるフラッシュメモリ22に暗号化された状態で記憶される。
一方、ステップS23において、CPU33は、書き込み先がUFD1の内蔵のメモリであるフラッシュメモリ22ではなく、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2であると判定した場合、ステップS25に進む。
ステップS25において、暗号エンジン34は、データの暗号化に用いた暗号鍵を、EEPROM35に記憶されている、リムーバブルメディア2の利用者が公開する公開鍵を用いて暗号化する。
データの書き込み先がリムーバブルメディア2である場合、ホストPC3からCPU33に対して送信されたコマンドには、リムーバブルメディア2の利用者を指定する情報も含まれている。すなわち、データをリムーバブルメディア2に記憶させるとき、ユーザは、そのデータを見ることを許可するユーザ(PCを用いてリムーバブルメディア2からデータを読み出すことを許可するユーザ)をリムーバブルメディア2の利用者として指定することができるようになされている。
リムーバブルメディア2の利用者が公開する公開鍵は、所定の方法によりUFD1のEEPROM35に記憶されている。例えば、その利用者が利用するPCにUFD1が接続されたとき、PCからUFD1のEEPROM35に公開鍵が書き込まれ、図3に示されるように秘密鍵などとともに記憶される。
ユーザはリムーバブルメディア2の利用者を複数指定することができ、この場合、データの暗号化に用いられた暗号鍵は、リムーバブルメディア2の利用者として指定されたそれぞれのユーザが公開する公開鍵を用いて暗号化される。リムーバブルメディア2の利用者としては、本人だけでなく、知人、同僚、家族などが指定される。
リムーバブルメディア2の利用者が公開する公開鍵を用いて暗号化された暗号鍵と、その暗号化に用いられた公開鍵は、ステップS22で暗号化された書き込みの対象のデータとともに暗号エンジン34からリムーバブルメディアコントローラ32に供給される。
ステップS26において、リムーバブルメディアコントローラ32は、暗号化された暗号鍵と、その暗号化に用いられた公開鍵のペアを、暗号化された書き込みの対象のデータとともに、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2に記憶させ、図5の処理に戻る。
UFD1のユーザがユーザAであり、そのユーザAが、リムーバブルメディア2の利用者としてユーザA自身を指定して、ホストPC3からリムーバブルメディア2にデータを記憶させた場合、以上の処理が行われることにより、リムーバブルメディア2には、暗号鍵を用いて暗号化されたデータとともに、ユーザAが使うUFD1のEEPROM35に記憶されている秘密鍵に対応するユーザAが公開する公開鍵と、その公開鍵によって暗号化された暗号鍵のペアが記憶される。
リムーバブルメディア2に記憶されているデータは、後述する処理によって、リムーバブルメディア2が挿入されたUFD1がホストPC3に接続されているとき、そのホストPC3だけが読み出すことが可能、すなわち、利用者として指定されたホストPC3のユーザであるユーザAだけが見ることが可能になる。
また、ユーザAが、リムーバブルメディア2の利用者としてユーザBを指定して、ホストPC3からリムーバブルメディア2にデータを記憶させた場合、以上の処理が行われることにより、リムーバブルメディア2には、暗号鍵を用いて暗号化されたデータとともに、ユーザBが使うUFDのEEPROMに記憶されている秘密鍵に対応するユーザBが公開する公開鍵と、その公開鍵によって暗号化された暗号鍵のペアが記憶される。ユーザBが使うUFDのEEPROMに記憶されている秘密鍵に対応する公開鍵は、UFD1のEEPROM35に所定のタイミングで記憶されている。
リムーバブルメディア2に記憶されているデータは、後述する処理によって、ユーザBが使うUFDにリムーバブルメディア2が挿入され、そのUFDがPCに接続されているとき、そのPCだけが読み出すことが可能、すなわち、利用者として指定されたユーザBだけが見ることが可能になる。
図7は、フラッシュメモリ22に記憶されたデータの例を示す図である。
図7に示されるように、フラッシュメモリ22の記憶領域全体は領域A1と領域A2に分けられる。
領域A1には、EEPROM35に記憶されている暗号鍵を用いて暗号化された指紋テンプレートが記憶される。この領域A1は、指紋による認証が成功した後であっても、領域A1に記憶されているデータに関する情報はUFD1からホストPC3に通知されず、ホストPC3からはアクセスすることができない領域とされる。
一方、領域A2には、EEPROM35に記憶されている暗号鍵を用いて暗号化されたデータが記憶される。図6のステップS24においてデータの書き込み先となるフラッシュメモリ22の領域は、この領域A2となる。指紋による認証が成功した後、領域A2はホストPC3からアクセス可能な領域となり、ホストPC3からデータを記憶させたり、そこに記憶されているデータをホストPC3が読み出したりすることが可能となる。
領域A2にデータを記憶させるときのデータの暗号化、領域A2に暗号化された状態で記憶されているデータを読み出すときのデータの復号は、ホストPC3から送信されてくるコマンドに応じてUFD1内で自動的に行われるから、データの読み書きに際して、ホストPC3が暗号処理を意識する必要はない。
図8は、リムーバブルメディア2(リムーバブルメディア2に内蔵されるフラッシュメモリ)に記憶されたデータの例を示す図である。
図8に示されるように、リムーバブルメディア2の記憶領域全体は領域A11と領域A12に分けられる。
領域A11には、リムーバブルメディア2の利用者が公開する公開鍵と、その公開鍵によって暗号化された暗号鍵のペアが、ユーザが指定したリムーバブルメディア2の利用者の数だけ記憶される。公開鍵によって暗号化された暗号鍵は、領域A12に記憶させるデータの暗号化に用いられた鍵である。図6のステップS26において公開鍵と暗号鍵のペアの書き込み先となるリムーバブルメディア2の領域は、この領域A11となる。
図8において、公開鍵Aeは、ユーザAが有するUFDに記憶されている秘密鍵に対応する、ユーザAが公開する公開鍵を表し、データ(K)Aeは、公開鍵Aeによって暗号化された暗号鍵Kを表す。同様に、公開鍵Neは、ユーザNが有するUFDに記憶されている秘密鍵に対応する、ユーザNが公開する公開鍵を表し、データ(K)Neは、公開鍵Neによって暗号化された暗号鍵Kを表す。公開鍵Ae,Neは、所定のタイミングでEEPROM35に記憶されていたものである。
一方、領域A12には、EEPROM35に記憶されている暗号鍵を用いて暗号化されたデータが記憶される。図6のステップS26において、暗号化されたデータの書き込み先となるリムーバブルメディア2の領域は、この領域A12となる。指紋による認証が成功した後、領域A12はホストPC3からアクセス可能な領域となり、ホストPC3がデータを記憶させたり、そこに記憶されているデータをホストPC3が読み出したりすることが可能となる。
次に、図9のフローチャートを参照して、図5のステップS15において行われる、データの読み出しを受け付けるUFD1の処理について説明する。
ステップS31において、CPU33は、ホストPC3から送信されてきた読み出しコマンドを受信する。読み出しコマンドには、アクセス先を、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2とするのか、UFD1の内蔵のメモリであるフラッシュメモリ22とするのかを指定する情報や、読み出しの対象とするデータを指定する情報も含まれている。
ステップS32において、CPU33は、ホストPC3から送信されてきたコマンドに基づいて、アクセス先がUFD1の内蔵のメモリであるフラッシュメモリ22であるか否かを判定し、フラッシュメモリ22であると判定した場合、ステップS33に進む。
ステップS33において、暗号エンジン34は、EEPROM35に記憶されている暗号鍵を用いて、フラッシュメモリ22に暗号化された状態で記憶されている、ホストPC3により指定された読み出しの対象とするデータを復号する。暗号エンジン34は、復号して得られたデータをバス40、USB I/F31を介してホストPC3に送信し、図5の処理に戻る。ホストPC3においては、フラッシュメモリ22に記憶されていたデータに基づいて各種の処理が行われる。
一方、ステップS32において、CPU33は、アクセス先がUFD1の内蔵のメモリであるフラッシュメモリ22ではなく、リムーバブルメディアアダプタ12に挿入されたリムーバブルメディア2であると判定した場合、ステップS34に進む。
ステップS34において、暗号エンジン34は、EEPROM35に記憶されている秘密鍵を用いて、リムーバブルメディア2に記憶されている暗号鍵を復号する。上述したように、リムーバブルメディア2には、データの暗号化に用いられた暗号鍵を、EEPROM35に記憶されている秘密鍵に対応する公開鍵を用いて暗号化したデータが記憶されている。
ステップS35において、暗号エンジン34は、ステップS34で得られた暗号鍵を用いて、リムーバブルメディア2に暗号化された状態で記憶されている、ホストPC3により指定された読み出しの対象とするデータを復号する。暗号エンジン34は、復号して得られたデータをバス40、USB I/F31を介してホストPC3に送信し、処理を終了させる。ホストPC3においては、リムーバブルメディア2に記憶されていたデータに基づいて各種の処理が行われる。
UFD1のユーザがユーザAであり、そのユーザAが、リムーバブルメディア2の利用者としてユーザA自身を指定して、ホストPC3からリムーバブルメディア2にデータを記憶させていた場合、以上の処理が行われることにより、リムーバブルメディア2に暗号化された状態で記憶されている暗号鍵が、ユーザAが使うUFD1のEEPROM35に記憶されている秘密鍵を用いて復号され、復号された暗号鍵を用いて、読み出しの対象となるデータが復号される。
また、ユーザAが、リムーバブルメディア2の利用者としてユーザBを指定してホストPC3からリムーバブルメディア2にデータを記憶させていた場合、ユーザBが使うUFDにおいて以上の処理が行われることにより、リムーバブルメディア2に暗号化された状態で記憶されている暗号鍵が、ユーザBが使うUFDのEEPROMに記憶されている秘密鍵を用いて復号され、復号された暗号鍵を用いて、読み出しの対象となるデータが復号される。
ここで、図10のフローチャートを参照して、ユーザAが、リムーバブルメディア2を用いてユーザBにデータを渡すときの一連の処理について説明する。
ここでは、ユーザAが使うホストPC3をホストPCA、ユーザBが使うホストPC3をホストPCBとして説明する。また、ユーザAが自分のホストPCAのUSB端子に差し込んで使うUFD1をUFDA、ユーザBが自分のホストPCBのUSB端子に差し込んで使うUFD1をUFDBとして説明する。基本的に、UFDAにおいては図6を参照して説明した処理が行われ、UFDBにおいては図9を参照して説明した処理が行われることになる。
UFDAに設けられている指紋センサ11にユーザAが指を置いたとき、ステップS61において、UFDAはユーザAの認証を行い、認証が成功したとき、UFDAが接続されるホストPCAからのアクセスを許可する。
ステップS51において、ホストPCAは、書き込みの対象とするデータをUFDAに送信する。
ステップS62において、UFDAは、ホストPCAから送信されてきたデータを受信し、ステップS63に進み、EEPROM35に記憶されている暗号鍵を用いて、ホストPCAから送信されてきたデータを暗号化する。
ステップS64において、UFDAは、EEPROM35に記憶されている、ユーザBが公開する公開鍵を用いて、データの暗号化に用いた暗号鍵を暗号化し、ステップS65に進み、暗号化されたデータとともに、ユーザBが公開する公開鍵と、その公開鍵によって暗号化された暗号鍵のペアを、UFDAのリムーバブルメディアアダプタ12に挿入されているリムーバブルメディア2に記憶させる。
例えば、暗号化されたデータなどが記憶されたリムーバブルメディア2は、ユーザAからユーザBに渡され、UFDBのリムーバブルメディアアダプタ12にユーザBによって挿入される。
UFDBに設けられている指紋センサ11にユーザBが指を置いたとき、ステップS71において、UFDBはユーザBの認証を行い、認証が成功したとき、UFDBが接続されるホストPCBからのアクセスを許可する。
ステップS81において、ホストPCBは読み出しの対象とするデータを指定する情報などを含む読み出しコマンドをUFDBに送信する。
ステップS72において、UFDBは、ホストPCBから送信されてきたコマンドを受信し、ステップS73に進み、UFDBのEEPROM35に記憶されている秘密鍵を用いて、リムーバブルメディア2に記憶されている暗号鍵を復号する。この暗号鍵は、ユーザAが使うUFDAに記憶されている、ユーザBが公開する公開鍵により暗号化されている(ステップS64)。
ステップS74において、UFDBは、復号して得られた暗号鍵を用いて、リムーバブルメディア2に暗号化された状態で記憶されているデータを復号し、ステップS75において、復号して得られたデータをホストPCBに送信する。
ステップS82において、ホストPCBは、UFDBから送信されてきたデータを受信する。これにより、ユーザAがホストPCAからリムーバブルメディア2に記憶させたデータが、リムーバブルメディア2を介して、ユーザBが使うホストPCBに提供される。
以上のような一連の処理が行われることにより、リムーバブルメディア2に記憶されているデータを、データを記憶させたユーザA本人が、本人の装置であるホストPCAで復号するだけでなく、ユーザAが指定した、ユーザBの装置であるホストPCBにおいても復号することが可能になる。
例えば、ユーザAがユーザBにパスワードを教え、データを記憶させるときに設定したパスワードと同じパスワードが入力されたときにそのデータを読み出すことができるようにすることによっても、ユーザAが記憶させたデータをユーザBが復号することができるようにすることもできるが、この場合、パスワードが外部に漏洩したときには誰でも復号することができるようになってしまうのに対し、以上のような処理によればそのようなことを防ぐことができる。
以上のように、暗号化された状態でリムーバブルメディア2に記憶されているデータは、第1に、データを記憶させた装置と同じ装置(UFD1)において、データを記憶させたユーザの指紋による認証が成功したとき、第2に、データを記憶させた装置とは別の装置ではあるが、同様の構成を有する装置において、データを記憶させたユーザの指紋による認証が成功したとき、第3に、データを記憶させた装置とは別の装置ではあるが、同様の構成を有する装置において、データを記憶させたユーザによって指定されたユーザの指紋による認証が成功したとき、といったように複数の環境で復号することが可能となる。
以上のように、UFD1に挿入して用いることによって、比較的安価に購入できるリムーバブルメディア2を、安全性が極めて確保された、データ保存・移動メディアとして使うことが可能となる。
すなわち、データの暗号化に用いられた暗号鍵は、リムーバブルメディア2にデータを記憶させたユーザによって指定されたユーザだけが復号することができるから、暗号鍵が第三者に漏洩することを防ぐことができる。また、その暗号鍵を復号することができる秘密鍵はUFD1内で管理されるから、その秘密鍵自身が外部に漏洩こともなく、データを安全にリムーバブルメディア2に記憶させておくことができる。
また、指紋というバイオメトリックスによる認証をUFD1に行わせ、その認証が成功したときにだけ、暗号処理などをUFD1に行わせることが可能になるため、鍵データだけでなく、指紋の認証に用いられる指紋テンプレートなどの情報も盗まれる可能性が極めて低いシステムを構築することが可能となる。
以上においては、データの暗号化に用いられた暗号鍵を暗号化する手段としてPKIが用いられるものとしたが、PKIに限定されるものではなく、共通鍵による暗号方式によって暗号鍵が暗号化されるようにしてもよい。
また、公開鍵によって暗号鍵を暗号化する場合、図11に示されるように、公開鍵や、それによって暗号化された暗号鍵に対して有効期限が設定されるようにしてもよい。
この場合、例えば、リムーバブルメディア2がUFD1のリムーバブルメディアアダプタ12に挿入された時点で、有効期限が経過していないか否かが判断され、有効期限が経過していると判断された公開鍵や暗号化された暗号鍵はリムーバブルメディア2から消去される。
これにより、ユーザAを利用者として指定して記憶させたデータはいつまで有効、ユーザBを利用者として指定して記憶させたデータはいつまで有効といったように、利用者として指定したユーザに合わせた有効期限を設定することが可能になる。
また、UFD1を、リムーバブルメディア2にデータを記憶させたユーザが誰であるのかを証明するためのいわゆるデジタルサイン装置としても利用することができる。
この場合、例えば、UFD1のリムーバブルメディアアダプタ12に挿入したリムーバブルメディア2にデータを記憶させたとき、図12に示されるように、リムーバブルメディア2には、書き込みの対象としてユーザにより選択されたデータであるオリジナルデータが暗号化されずにそのまま記憶されるとともに、オリジナルデータにハッシュ関数を適用して求められたハッシュ値をEEPROM35に記憶されている秘密鍵で暗号化して得られたデータであるサインデータが記憶される。
リムーバブルメディア2を受け取ったユーザは、サインデータの生成に用いられた秘密鍵に対応する公開鍵が自分が使う装置に記憶されている場合には、その装置にサインデータの確認を行わせ、データを書き込んだユーザが誰であるのかを確認させることができる。
すなわち、リムーバブルメディア2を受け取ったユーザが使う装置においては、その装置に記憶されている公開鍵を用いてサインデータが復号され、サインデータからハッシュ値が取得される。また、オリジナルデータにハッシュ関数を適用することによってハッシュ値が求められ、サインデータから取得されたハッシュ値と、オリジナルデータから求められたハッシュ値が一致する場合に、リムーバブルメディア2にデータを記憶させたユーザが証明される。
なお、この場合、リムーバブルメディア2を受け取ったユーザが使う装置としては、上述したようなUFDに限られるものではなく、サインデータの生成に用いられた秘密鍵に対応する公開鍵が記憶されており、リムーバブルメディア2を挿入することができる限り、PCなどの各種の装置を用いることができる。
このように、UFD1をデジタルサイン装置として用いることにより、リムーバブルメディア2に記憶されているデータが誰によって書き込まれたのかを証明することが可能になり、データの信憑性を高めることができる。不明な人からのファイルを開くと、ウイルスに感染したりしてしまうことなどが問題になっているが、そのようなことの対策にもなる。
以上においては、指紋センサ11により読み取られた指紋によってユーザの認証が行われるものとしたが、必ずしも指紋によって行われる必要はなく、UFD1内で本人認証を行うことができるものであれば良い。例えば、虹彩や掌紋といったように、個人に特有の他の生体情報によってユーザの認証が行われるようにしてもよい。
また、以上においては、指紋による認証が成功したとき、リムーバブルメディア2やフラッシュメモリ22にホストPC3がデータを記憶させることと、リムーバブルメディア2やフラッシュメモリ22に記憶されているデータをホストPC3が読み出すことのいずれもが許可されるものとしたが、いずれか一方だけが許可されるようにしてもよい。
さらに、以上においては、UFD1にはリムーバブルメディアアダプタ12が1つだけ設けられるものとしたが、複数設けられるようにしてもよい。この場合、複数設けられるリムーバブルメディアアダプタ12は、それぞれ異なる規格のリムーバブルメディアに対応したものであってもよいし、同じ規格のリムーバブルメディアに対応したものであってもよい。
また、リムーバブルメディアとしては、メモリスティック、SDカード、CFをあげたが、これらに限らず、リムーバブルメディアであれば他の規格のものでも良い。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図13は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。
CPU(Central Processing Unit)101は、ROM(Read Only Memory)102、または記憶部108に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)103には、CPU101が実行するプログラムやデータなどが適宜記憶される。これらのCPU101、ROM102、およびRAM103は、バス104により相互に接続されている。
CPU101にはまた、バス104を介して入出力インタフェース105が接続されている。入出力インタフェース105には、キーボード、マウス、マイクロホンなどよりなる入力部106、ディスプレイ、スピーカなどよりなる出力部107が接続されている。CPU101は、入力部106から入力される指令に対応して各種の処理を実行する。そして、CPU101は、処理の結果を出力部107に出力する。
入出力インタフェース105に接続されている記憶部108は、例えばハードディスクからなり、CPU101が実行するプログラムや各種のデータを記憶する。通信部109は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
入出力インタフェース105に接続されているドライブ110は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア111が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部108に転送され、記憶される。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図13に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア111、または、プログラムが一時的もしくは永続的に格納されるROM102や、記憶部108を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部109を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
本発明の一実施形態に係る指紋照合機能付きUFDの外観の例を示す図である。 指紋照合機能付きUFDのハードウエア構成例を示すブロック図である。 図2のEEPROMに記憶されているデータの例を示す図である。 指紋照合機能付きUFDの指紋登録処理について説明するフローチャートである。 指紋照合機能付きUFDの認証処理について説明するフローチャートである。 図5のステップS15において行われる処理について説明するフローチャートである。 指紋照合機能付きUFDが内蔵するフラッシュメモリに記憶されたデータの例を示す図である。 リムーバブルメディアに記憶されたデータの例を示す図である。 図5のステップS15において行われる他の処理について説明するフローチャートである。 データの受け渡しを実現する一連の処理を説明するフローチャートである。 リムーバブルメディアに記憶されたデータの例を示す図である。 リムーバブルメディアに記憶されたデータの他の例を示す図である。 パーソナルコンピュータの構成例を示すブロック図である。
符号の説明
1 指紋照合機能付きUFD, 2 リムーバブルメディア, 3 ホストPC, 11 指紋センサ, 12 リムーバブルメディアアダプタ, 21 コントローラLSI, 22 フラッシュメモリ, 23 水晶発振子, 31 USB I/F, 32 リムーバブルメディアコントローラ, 33 CPU, 34 暗号エンジン, 35 EEPROM, プログラム用RAM/ROM, 37 指紋照合エンジン, 38 PLL, 39 フラッシュメモリI/F

Claims (4)

  1. 生体情報を読み取る読み取り手段と、
    電子機器自身に対して抜き差し可能な記憶媒体が挿入される挿入手段と、
    電子機器自身が接続される情報処理装置から供給されたデータを記憶可能な第1の記憶手段と、
    前記読み取り手段により読み取られた前記生体情報に基づいてユーザの認証を行い、認証が成功した場合、前記情報処理装置による、前記挿入手段に挿入された前記記憶媒体、または前記第1の記憶手段に対するアクセスを許可し、認証が失敗した場合、前記情報処理装置による前記記憶媒体と前記第1の記憶手段に対するアクセスを禁止する制御手段と
    秘密鍵と、暗号鍵と、複数の他の電子機器のそれぞれに記憶されている他の秘密鍵に対応する複数の公開鍵とを記憶する第2の記憶手段と、
    前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、データを前記第1の記憶手段に記憶させることが前記情報処理装置から指示された場合、前記情報処理装置から供給された書き込みの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化して前記第1の記憶手段に記憶させ、データを前記挿入手段に挿入された前記記憶媒体に記憶させることが前記情報処理装置から指示された場合、前記書き込みの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化するとともに、前記暗号鍵を、前記第2の記憶手段に記憶されている前記複数の公開鍵のうちの、前記情報処理装置から供給された情報により指定されたユーザの前記他の電子機器に記憶されている前記他の秘密鍵に対応する公開鍵を用いて暗号化し、暗号化した前記書き込みの対象とするデータと暗号化した前記暗号鍵とを前記記憶媒体に記憶させる暗号処理手段と
    を備え、
    前記暗号処理手段は、さらに、前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、前記第1の記憶手段に記憶されているデータを読み出すことが指示された場合、読み出しの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて復号して前記情報処理装置に送信し、前記他の電子機器に記憶されている他の暗号鍵を用いて暗号化されたデータと、前記第2の記憶手段に記憶されている前記秘密鍵に対応する公開鍵を用いて前記他の電子機器において暗号化された前記他の暗号鍵とが前記挿入手段に挿入された前記記憶媒体に記憶されており、記憶されているデータを読み出すことが前記情報処理装置から指示された場合、前記記憶媒体に記憶されている前記他の暗号鍵を前記第2の記憶手段に記憶されている前記秘密鍵を用いて復号し、復号して得られた前記他の暗号鍵を用いて前記読み出しの対象とするデータを復号して前記情報処理装置に送信する
    電子機器。
  2. 前記電子機器が接続される前記情報処理装置から送信されてきた書き込みの対象とするデータを暗号化する前記暗号鍵は、書き込みの対象とするデータが送信されてくる毎に、前記電子機器自身により作成される
    請求項1に記載の電子機器。
  3. 前記読み取り手段は、前記生体情報として指紋を読み取る
    請求項1に記載の電子機器。
  4. 生体情報を読み取り手段によって読み取り、
    読み取った前記生体情報に基づいてユーザの認証を行い、認証が成功した場合、前記情報処理装置による、電子機器自身に対して抜き差し可能な記憶媒体が挿入される挿入手段に挿入された前記記憶媒体、または電子機器自身が接続される情報処理装置から供給されたデータを記憶可能な第1の記憶手段に対するアクセスを許可し、認証が失敗した場合、前記情報処理装置による前記記憶媒体と前記第1の記憶手段に対するアクセスを禁止し、
    前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、データを前記第1の記憶手段に記憶させることが前記情報処理装置から指示された場合、前記情報処理装置から供給された書き込みの対象とするデータを、秘密鍵と、暗号鍵と、複数の他の電子機器のそれぞれに記憶されている他の秘密鍵に対応する複数の公開鍵とを記憶する第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化して前記第1の記憶手段に記憶させ、データを前記挿入手段に挿入された前記記憶媒体に記憶させることが前記情報処理装置から指示された場合、前記書き込みの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて暗号化するとともに、前記暗号鍵を、前記第2の記憶手段に記憶されている前記複数の公開鍵のうちの、前記情報処理装置から供給された情報により指定されたユーザの前記他の電子機器に記憶されている前記他の秘密鍵に対応する公開鍵を用いて暗号化し、暗号化した前記書き込みの対象とするデータと暗号化した前記暗号鍵とを前記記憶媒体に記憶させ、
    前記情報処理装置による前記記憶媒体または前記第1の記憶手段に対するアクセスが許可された後において、前記第1の記憶手段に記憶されているデータを読み出すことが指示された場合、読み出しの対象とするデータを前記第2の記憶手段に記憶されている前記暗号鍵を用いて復号して前記情報処理装置に送信し、前記他の電子機器に記憶されている他の暗号鍵を用いて暗号化されたデータと、前記第2の記憶手段に記憶されている前記秘密鍵に対応する公開鍵を用いて前記他の電子機器において暗号化された前記他の暗号鍵とが前記挿入手段に挿入された前記記憶媒体に記憶されており、記憶されているデータを読み出すことが前記情報処理装置から指示された場合、前記記憶媒体に記憶されている前記他の暗号鍵を前記第2の記憶手段に記憶されている前記秘密鍵を用いて復号し、復号して得られた前記他の暗号鍵を用いて前記読み出しの対象とするデータを復号して前記情報処理装置に送信する
    ステップを含む情報処理方法。
JP2006264022A 2006-09-28 2006-09-28 電子機器、および情報処理方法 Expired - Fee Related JP4301275B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006264022A JP4301275B2 (ja) 2006-09-28 2006-09-28 電子機器、および情報処理方法
US11/900,264 US20080178009A1 (en) 2006-09-28 2007-09-11 Electronic apparatus and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006264022A JP4301275B2 (ja) 2006-09-28 2006-09-28 電子機器、および情報処理方法

Publications (2)

Publication Number Publication Date
JP2008084059A JP2008084059A (ja) 2008-04-10
JP4301275B2 true JP4301275B2 (ja) 2009-07-22

Family

ID=39354867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006264022A Expired - Fee Related JP4301275B2 (ja) 2006-09-28 2006-09-28 電子機器、および情報処理方法

Country Status (2)

Country Link
US (1) US20080178009A1 (ja)
JP (1) JP4301275B2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10181055B2 (en) * 2007-09-27 2019-01-15 Clevx, Llc Data security system with encryption
JP5112812B2 (ja) * 2007-10-19 2013-01-09 パナソニック株式会社 遠隔医療システム
GB0808341D0 (en) * 2008-05-08 2008-06-18 Michael John P External storage security and encryption device
JP3149967U (ja) * 2009-02-09 2009-04-23 振亞 劉 Usbプラグのカードリーダー
DE102009059077A1 (de) * 2009-12-18 2011-06-22 Braun, Uwe Peter, Dipl.-Ing., 14467 Externe Vorrichtung mit mindestens einem Speicher
JP5505010B2 (ja) 2010-03-19 2014-05-28 富士通株式会社 記憶媒体アダプタ及びデータアクセス不能化方法
US8812860B1 (en) * 2010-12-03 2014-08-19 Symantec Corporation Systems and methods for protecting data stored on removable storage devices by requiring external user authentication
FR2969343B1 (fr) * 2010-12-21 2013-07-05 Oberthur Technologies Dispositif et procede de controle d'acces a une memoire de masse amovible
FR2975249B1 (fr) * 2011-05-11 2013-05-17 Univ D Avignon Et Des Pays De Vaucluse Procede, serveur et systeme d'authentification biometrique
JP5393733B2 (ja) 2011-06-30 2014-01-22 京セラドキュメントソリューションズ株式会社 電子機器
US10489852B2 (en) * 2013-07-02 2019-11-26 Yodlee, Inc. Financial account authentication
CN104951407B (zh) * 2014-03-24 2017-11-28 哈尔滨安天科技股份有限公司 一种可加密u盘及其加密方法
CN106156571B (zh) * 2015-03-31 2019-08-09 深圳指芯智能科技有限公司 指纹加密工具、指纹加密工具加解密系统及加解密方法
US10796026B2 (en) * 2017-04-25 2020-10-06 Wildfi Proprietary Limited Process and detachable device for using and managing encryption keys
EP3610607B1 (en) 2019-03-29 2021-08-25 Advanced New Technologies Co., Ltd. Cryptographic key management based on identity information
JP6871411B2 (ja) 2019-03-29 2021-05-12 アドバンスド ニュー テクノロジーズ カンパニー リミテッド 暗号動作のセキュアな実行
CN110431803B (zh) * 2019-03-29 2022-11-18 创新先进技术有限公司 基于身份信息管理加密密钥
AU2019204724C1 (en) 2019-03-29 2021-12-09 Advanced New Technologies Co., Ltd. Cryptography chip with identity verification
JP7383275B2 (ja) * 2019-08-26 2023-11-20 エムコマース株式会社 データ処理装置
US20230101220A1 (en) * 2021-09-27 2023-03-30 Real Identity Co., Ltd. Usb secure data storage device, system to authenticate the same and authenticating method of the same

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL122230A (en) * 1997-11-17 2003-12-10 Milsys Ltd Biometric system and techniques suitable therefor
IL134527A (en) * 2000-02-14 2011-08-31 Bioguard Components And Technology Ltd Biometric interface
US6775776B1 (en) * 2000-06-27 2004-08-10 Intel Corporation Biometric-based authentication in a nonvolatile memory device
DE10057697A1 (de) * 2000-11-21 2002-05-29 Fujitsu Siemens Computers Gmbh Speichermedium
JP2003085149A (ja) * 2001-06-07 2003-03-20 Systemneeds Inc 指紋認証装置及び認証システム
SG96688A1 (en) * 2002-04-25 2003-06-16 Ritronics Components Singapore A biometrics parameters protected computer serial bus interface portable data
CZ2005209A3 (cs) * 2002-09-10 2005-12-14 Ivi Smart Technologies, Inc. Bezpečné biometrické ověření identity
JP2004206412A (ja) * 2002-12-25 2004-07-22 Casio Comput Co Ltd カード型デバイスおよび認証システム
US20050044387A1 (en) * 2003-08-18 2005-02-24 Ozolins Helmars E. Portable access device
SG113483A1 (en) * 2003-10-30 2005-08-29 Ritronics Components S Pte Ltd A biometrics parameters protected usb interface portable data storage device with usb interface accessible biometrics processor
US7597250B2 (en) * 2003-11-17 2009-10-06 Dpd Patent Trust Ltd. RFID reader with multiple interfaces
US7447911B2 (en) * 2003-11-28 2008-11-04 Lightuning Tech. Inc. Electronic identification key with portable application programs and identified by biometrics authentication
US20060013447A1 (en) * 2004-07-16 2006-01-19 Cross Match Technologies, Inc. Hand-held personal identification analysis device and methods of use
US7536016B2 (en) * 2004-12-17 2009-05-19 Microsoft Corporation Encrypted content data structure package and generation thereof

Also Published As

Publication number Publication date
JP2008084059A (ja) 2008-04-10
US20080178009A1 (en) 2008-07-24

Similar Documents

Publication Publication Date Title
JP4301275B2 (ja) 電子機器、および情報処理方法
JP2009003676A (ja) 電子機器、および情報処理方法
US8898477B2 (en) System and method for secure firmware update of a secure token having a flash memory controller and a smart card
US20080209547A1 (en) Electronic device and information processing method
WO2005096158A1 (ja) 利用認証方法、利用認証プログラム、情報処理装置および記録媒体
KR20110051181A (ko) 데이터 보안 시스템, 방법 및 컴퓨터 판독가능 매체
JP4470373B2 (ja) 認証処理装置及びセキュリティ処理方法
JP2007013433A (ja) 暗号化データを送受信する方法及び情報処理システム
CN111401901A (zh) 生物支付设备的认证方法、装置、计算机设备和存储介质
JPWO2006004130A1 (ja) データ管理方法、そのプログラム及びプログラムの記録媒体
JP2009080772A (ja) ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム
JP4724107B2 (ja) リムーバブル・デバイスを用いたユーザの認証方法およびコンピュータ
ES2720077T3 (es) Método y sistema para realizar una transacción y para realizar una verificación de acceso legítimo o uso de datos digitales
JPH11250192A (ja) Icチップ内蔵記録媒体、情報アクセス制御装置
JP2000029792A (ja) 機密情報格納装置
JP2009211487A (ja) 情報処理装置、情報処理システム及びプログラム
KR100720738B1 (ko) 고주파 무선 태그에 기밀성, 상호인증, 무결성을 제공하는 방법
JP4760124B2 (ja) 認証装置、登録装置、登録方法及び認証方法
JP4385261B2 (ja) 端末認証、端末変更方法、操作端末、認証サーバ、および認証プログラム
JP2009169759A (ja) 電子機器、および情報処理方法
JP2008191851A (ja) 電子機器、および情報処理方法
JP2020046778A (ja) Icカード及び携帯可能電子装置
JP2009238156A (ja) 認証装置、認証方法およびプログラム
TW202429355A (zh) 用於加密加密資產錢包的私密金鑰/種子並在nfc卡上儲存的裝置及用於該裝置的方法
JP2005346489A (ja) 生体情報登録方法、生体情報登録装置、認証媒体、プログラム、記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081104

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090413

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120501

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130501

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees