JP2009070408A - 情報処理装置 - Google Patents

情報処理装置 Download PDF

Info

Publication number
JP2009070408A
JP2009070408A JP2008307370A JP2008307370A JP2009070408A JP 2009070408 A JP2009070408 A JP 2009070408A JP 2008307370 A JP2008307370 A JP 2008307370A JP 2008307370 A JP2008307370 A JP 2008307370A JP 2009070408 A JP2009070408 A JP 2009070408A
Authority
JP
Japan
Prior art keywords
storage
data
information
storage means
protection level
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
JP2008307370A
Other languages
English (en)
Other versions
JP4464455B2 (ja
Inventor
Natsume Matsuzaki
なつめ 松崎
Kazuo Sakushima
和生 佐久嶋
Makoto Tatebayashi
誠 館林
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.)
Panasonic Corp
Original Assignee
Panasonic 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 Panasonic Corp filed Critical Panasonic Corp
Priority to JP2008307370A priority Critical patent/JP4464455B2/ja
Publication of JP2009070408A publication Critical patent/JP2009070408A/ja
Application granted granted Critical
Publication of JP4464455B2 publication Critical patent/JP4464455B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control

Landscapes

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

Abstract

【課題】TRM内に実装する記憶領域の容量を越えるプログラムを、各プログラムの管理者が必要とする安全性を確保しつつ、ダウンロードすることができるセキュアデバイスを提供する。
【解決手段】耐タンパ集積回路と耐タンパ集積回路の外部にある外部記憶手段とを備える情報処理装置であって、耐タンパ集積回路はデータを格納する内部記憶手段と、鍵情報を保持する鍵保持手段と、内部記憶手段に格納されているデータを鍵保持手段が保持する鍵情報を用いて暗号化して外部記憶手段に格納する暗号処理手段と、暗号処理手段が行う処理にエラーが発生した場合にエラーを耐タンパ集積回路の外部に出力するエラー出力手段とを備え、外部記憶手段は内部記憶手段に格納されているデータを暗号処理手段が鍵保持手段が保持する鍵情報を用いて暗号化したデータを格納し、内部記憶手段のデータが格納されていた空き領域にもう1つのデータを格納する。
【選択図】図2

Description

本発明は、コンテンツの不正な使用を防止するための技術、及び、電子商取引(モバイルEC)における不正を防止する技術を備えるセキュアデバイスに関する。
近年、インターネット等のネットワークを介して、音楽コンテンツや動画像コンテンツの配信を受けるコンテンツ配信サービス、及び、モバイルECサービス等の様々な電子情報サービスが普及している。
これらの電子情報サービスにおいては、コンテンツの不正な使用を防止するコンテンツ保護技術、及び、モバイルECにおける認証技術や課金技術等のEC保護技術が不可欠であり、これら技術を備えるセキュアデバイスが開発され利用されている。
例えば、利用者はこのようなセキュアデバイスを自分の携帯電話に装着して、外出先からコンテンツ配信サービスやモバイルECサービス等を安全に行うことができる。
セキュアデバイスについては、「コンテンツ配信・モバイルコマース用のセキュアマルチメディアカード」日立評論2001年10月号、三宅順、石原晴次、常広隆司に、コンテンツ保護技術とEC保護技術とを備えるセキュアマルチメディアカード(以下「SMMC」)が記載されている。
SMMCには、JAVA(登録商標)Cardのようにプログラムのダウンロード機能を備えるタイプがある。ここでダウンロードされるプログラムは、新規アプリケーションプログラムや、カード内に記録されているプログラムのバージョンアップ版等である。
プログラムのダウンロード機能を備えるSMMCは、TRM(Tamper Resistant Module:耐タンパモジュール)内に暗号処理エンジン、セキュリティ鍵情報、CPU、RAM、ROM、EEPROMを備え、また、TRM外に大容量のフラッシュメモリ(例えば8MBから256MB程度)を備え、CPUが暗号処理エンジンやセキュリティ鍵情報を用いて認証処理や暗号処理等を制御し、また、外部よりダウンロードすべきプログラムを取得してTRM内に実装するEEPROMに記録して実行する。
ここでTRMとは、外部から本モジュール内に記録されているデータの不正な参照や改竄などを困難にする施策が施されたモジュールである。
また、フラッシュメモリには、配信対象である音楽コンテンツや動画像コンテンツ等のデジタルデータが記録される。
TRM内に実装するEEPROMは、他のメモリと比較して記憶容量あたりのコストが高く高価なデバイスなので、EEPROMの容量を増やすとSMMCのコストに与える影響が大きい。またデバイスの特性上、TRM内に実装するEEPROMの容量には限界があり、現状ではEEPROMの容量が64KB程度の構成が一般的である。
「コンテンツ配信・モバイルコマース用のセキュアマルチメディアカード」日立評論2001年10月号、三宅順、石原晴次、常広隆司。
しかしながら、SMMCにダウンロードされるアプリケーションプログラムは今後益々増加するものと予想されるので、現状の構成ではアプリケーションプログラムを、TRM内に実装するEEPROMに格納しきれなくなるのは明らかである。
また、TRM内に実装するEEPROMの容量を超えるために記録できないアプリケーションプログラムを、TRM外に実装するフラッシュメモリに記録する方法も考えられるが、安全面を考慮すると無秩序にこのような方法を実施することはできず、少なくとも各プログラムの管理者の承認が必要であり、安全性を確保するための新たな技術の確立が望まれる。
本発明は、TRM内に実装する記憶領域の容量を越えるプログラムを、各プログラムの管理者が必要とする安全性を確保しつつ、ダウンロードすることができるセキュアデバイスを提供することを目的とする。
上記目的を達成するために、本発明に係るセキュアデバイスは、デジタルデータを格納して利用に供するセキュアデバイスであって、それぞれが記憶領域を備える複数の記憶手段と、格納先となる記憶手段を特定するための格納先情報が付加されたデジタルデータを入手する入手手段と、前記格納先情報により特定される記憶手段に前記デジタルデータを格納する処理手段とを備えることを特徴とする。
上記目的を達成するために、本発明に係る格納方法は、デジタルデータを格納して利用に供するセキュアデバイスにおける格納方法であって、前記セキュアデバイスはそれぞれが記憶領域を備え、当該格納方法は、格納先となる記憶手段を特定するための格納先情報が付加されたデジタルデータを入手する入手ステップと、前記格納先情報により特定される記憶手段に前記デジタルデータを格納する処理ステップとを含むことを特徴とする。
これらによって、デジタルデータの管理者がデジタルデータ毎に格納先を設定しておき、TRM内に実装するEEPROMのような保護レベルが高い記憶手段の容量が足らない場合に、各デジタルデータの管理者によって設定された格納先情報に基づいて、管理者によって許可されているデジタルデータであればTRM外に実装するフラッシュメモリのような保護レベルが低い記憶手段に記録することができるので、デジタルデータを価値に応じて効率よく記録することができる。
従って、TRM内に実装する記憶領域の容量を越えるプログラムを、プログラムの管理者が必要とする安全性を確保しつつ、ダウンロードすることができる。
本発明に係るセキュアデバイスは、デジタルデータを格納して利用に供するセキュアデバイスであって、それぞれが記憶領域を備える複数の記憶手段と、格納先となる記憶手段を特定するための格納先情報が付加されたデジタルデータを入手する入手手段と、前記格納先情報により特定される記憶手段に前記デジタルデータを格納する処理手段とを備えることを特徴とする。
本発明に係る格納方法は、デジタルデータを格納して利用に供するセキュアデバイスにおける格納方法であって、前記セキュアデバイスはそれぞれが記憶領域を備え、当該格納方法は、格納先となる記憶手段を特定するための格納先情報が付加されたデジタルデータを入手する入手ステップと、前記格納先情報により特定される記憶手段に前記デジタルデータを格納する処理ステップとを含むことを特徴とする。
これらによって、デジタルデータの管理者がデジタルデータ毎に格納先を設定しておき、TRM内に実装するEEPROMのような保護レベルが高い記憶手段の容量が足らない場合に、各デジタルデータの管理者によって設定された格納先情報に基づいて、管理者によって許可されているデジタルデータであればTRM外に実装するフラッシュメモリのような保護レベルが低い記憶手段に記録することができるので、デジタルデータを価値に応じて効率よく記録することができる。
従って、TRM内に実装する記憶領域の容量を越えるプログラムを、プログラムの管理者が必要とする安全性を確保しつつ、ダウンロードすることができる。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記格納先情報は保護レベルを示し、前記処理手段は、前記格納先情報が示す保護レベルと同じ保護レベルが設定されている記憶手段を前記デジタルデータの格納先として特定することを特徴とすることもできる。
これによって、デジタルデータの管理者がデジタルデータ毎に保護レベルを設定しておき、保護レベルが一致する記憶手段を格納先として特定することができるので、デジタルデータを価値に応じて効率よく記録することができる。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記格納先情報は保護レベルを示し、前記処理手段は、前記格納先情報が示す保護レベル以上の保護レベルが設定されている記憶手段のうちの1つを前記デジタルデータの格納先として特定することを特徴 とすることもできる。
これによって、デジタルデータの管理者がデジタルデータ毎に保護レベルを設定しておき、保護レベルが同等以上の記憶手段を格納先として特定することができるので、デジタルデータを価値に応じて効率よく記録することができる。
また、セキュアデバイスにおいて、前記処理手段は、前記入手手段により入手された格納先情報が示す保護レベル以上の保護レベルが設定された記憶手段のうち前記デジタルデータを格納するための空いている記憶領域を確保できる記憶手段を全て検索する検索手段と、検索手段により検索された記憶手段のうち一番高い保護レベルが設定されている記憶手段を前記デジタルデータの格納場所として決定する決定手段と、前記デジタルデータを決定手段により決定された記憶手段に格納する格納手段とを含むことを特徴とすることもできる。
これによって、空いている記憶領域を確保できる記憶手段のうち、一番高い保護レベルが設定されている記憶手段を格納先として特定することができるので、それぞれのデジタルデータをできるだけ安全に記録することができる。
また、セキュアデバイスにおいて、前記処理手段は、さらに、前記検索手段により何れの記憶手段も検索されなかった場合に利用者にデジタルデータを格納できない旨を提示するためのエラー情報を出力する出力手段を含むことを特徴とすることもできる。
これによって、空いている記憶領域が無い場合に、利用者にデジタルデータを格納できない旨を提示することができる。
また、セキュアデバイスにおいて、前記処理手段は、さらに、前記検索手段により何れの記憶手段も検索されなかった場合に、(1)前記入手手段により入手された格納先情報が示す第1保護レベル以上の保護レベルが設定されている記憶手段に格納されているデジタルデータのそれぞれに付加された格納先情報を読み出し、(2)読み出した格納先情報のうち、それぞれの格納先情報が示す保護レベルが、当該第1保護レベルよりも低い格納先情報を抽出し、(3)抽出した格納先情報に対応するデジタルデータを、当該第1保護レベルよりも低く、且つ、それぞれの格納先情報が示す保護レベル以上の保護レベルが設定されている記憶手段に移動することにより、前記入手手段により入手されたデジタルデータを格納するための記憶領域を確保する移動手段を含み、前記格納手段は、移動手段により確保された記憶領域に前記入手手段により入手されたデジタルデータを格納することを特徴とすることもできる。
これによって、先に格納されているデジタルデータを格納先情報に基づいて移動して、新しいデジタルデータを格納するための記憶領域を確保することができるので、それぞれのデジタルデータを価値に応じて効率よく記録することができる。
また、セキュアデバイスにおいて、記処理手段は、さらに、前記移動手段により記憶領域を確保できない場合に利用者にデジタルデータを格納できない旨を提示するためのエラー情報を出力する出力手段を含むことを特徴とすることもできる。
これによって、先に格納されているデジタルデータを移動しても記憶領域を確保できない場合に、利用者にデジタルデータを格納できない旨を提示することができる。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記格納先情報は保護レベルを示し、さらに、前記対応するデジタルデータの格納先として当該保護レベルが設定されている記憶手段のみを格納先として特定するか、及び、当該保護レベルが設定されている記憶手段以上の保護レベルが設定された記憶手段を格納先として特定するかのどちらかを指定し、前記処理手段は、前記格納先情報に従い前記格納先情報が示す保護レベルが設定されている記憶手段を、又は、前記格納先情報が示す保護レベル以上の保護レベルが設定されている記憶手段のうちの1つを前記デジタルデータの格納先として特定することを特徴とすることもできる。
これによって、保護レベルが一致する記憶手段を格納先として特定するか、保護レベルが同等以上の記憶手段を格納先として特定するかを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟性が高い。
また、セキュアデバイスにおいて、前記格納先情報は前記対応するデジタルデータの格納先を当該セキュアデバイスにおいて格納する際に任意に決定してもよいか否かを指定し、前記処理手段は、前記格納先情報に従い任意に決定する記憶手段に、又は、前記格納先情報により特定される記憶手段に前記デジタルデータを格納することを特徴とすることもできる。
これによって、格納先を当該セキュアデバイスにおいて格納する際に任意に決定してもよいか否かを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟性が高い。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記格納先情報はデジタルデータを所定の保護レベル以下の記憶手段に格納する際に暗号化するか否かを指定し、前記処理手段は、デジタルデータを前記所定の保護レベル以下の記憶手段に格納する際に前記格納先情報に従い当該デジタルデータを暗号化して格納するか、又は、そのまま格納することを特徴とすることもできる。
これによって、デジタルデータを所定の保護レベル以下の記憶手段に格納する際に暗号化するか否かを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟が高い。
また、セキュアデバイス毎に固有の鍵を用いて暗号化して格納する場合には、フラッシュメモリのような保護レベルが低い記憶手段に格納したデジタルデータが、他のセキュアデバイスに不正にコピーされるといった攻撃を回避できる。
つまり、他のセキュアデバイスに不正にコピーされたとしても、鍵が異なるので正しく復号することができないため、正常に利用できない。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記格納先情報はデジタルデータを所定の保護レベル以下の記憶手段に格納する際にデジタルデータに改竄検出用の情報を付加するか否かを指定し、前記処理手段は、デジタルデータを前記所定の保護レベル以下の記憶手段に格納する際に前記格納先情報に従い当該デジタルデータに改竄検出用の情報を付加して格納するか、又は、そのまま格納することを特徴とすることもできる。
これによって、デジタルデータを所定の保護レベル以下の記憶手段に格納する際に改竄検出用の情報を付加するか否かを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟が高い。
また、改竄検出用の情報を付加して格納する場合には、フラッシュメモリのような保護レベルが低い記憶手段に格納したデジタルデータや格納先情報が改竄されてデジタルデータが不正に用いられるといった攻撃を回避できる。
つまり、デジタルデータや格納先情報が改竄されたとしても、認証処理を行うことにより改竄されていることが解るので、改竄されている場合にはデジタルデータの使用を禁止すればよい。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記格納先情報はデジタルデータを所定の保護レベル以下の記憶手段に格納する際にデジタルデータにデジタル署名を埋め込むか否かを指定し、前記処理手段は、デジタルデータを前記所定の保護レベル以下の記憶手段に格納する際に前記格納先情報に従い当該デジタルデータにデジタル署名を埋め込んで格納するか、又は、そのまま格納することを特徴とすることもできる。
これによって、デジタルデータを所定の保護レベル以下の記憶手段に格納する際に、デジタル署名を施すか否かを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟が高い。
また、デジタル署名を施して格納する場合には、フラッシュメモリのような保護レベルが低い記憶手段に格納したデジタルデータや格納先情報が改竄されてデジタルデータが不正に用いられるといった攻撃を回避できる。
つまり、デジタルデータや格納先情報が改竄されたとしても、認証処理を行うことにより改竄されていることが解るので、改竄されている場合にはデジタルデータの使用を禁止すればよい。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記格納先情報は前記デジタルデータの優先度を示し、少なくとも1つの記憶手段にはデジタルデータが格納され、記憶手段に格納されているデジタルデータにはデジタルデータの優先度が設定され、記憶手段にはより優先度が高いデジタルデータがより保護レベルが高い記憶手段に格納されている状態でデジタルデータが格納されており、前記処理手段は、前記格納先情報により示される優先度に基づいて前記状態を維持したまま前記入手手段により入手されたデジタルデータを格納することを特徴とすることもできる。
これによって、デジタルデータの管理者がデジタルデータ毎に優先度を設定しておき、優先度の高さに応じて格納先を特定することができるので、デジタルデータを効率よく記録することができる。
また、セキュアデバイスにおいて、記憶手段に格納されているデジタルデータにはデジタルデータの優先度を示す格納先情報が付加されており、前記処理手段は、一番高い保護レベルが設定されている記憶手段から順に、(1)前記入手手段により入手されたデジタルデータを格納するための空いている記憶領域を確保できるか否かを判定し、(2)判定が否定的な場合に、判定対象の記憶手段に格納されているデジタルデータのそれぞれに付加された格納先情報を読み出し、(3)読み出した格納先情報のうち、それぞれの格納先情報が示す優先度が、前記入手手段により入手された格納先情報が示す優先度よりも低い格納先情報を抽出し、(4)抽出した格納先情報を含むデジタルデータを、移動するデジタルデータ対応する保護レベルより低い保護レベルが設定されている記憶手段に移動し、(5)前記判定が肯定的となるまで(1)〜(4)の処理を繰り返すことにより、前記入手手段により入手されたデジタルデータを格納するための記憶領域を確保する移動手段と、移動手段により確保された記憶領域に前記入手手段により入手されたデジタルデータを格納する格納手段とを含むことを特徴とすることもできる。
これによって、先に格納されているデジタルデータを優先度に基づいて移動して、新しいデジタルデータを格納するための、できるだけ高い保護レベルが設定されている記憶領域を確保することができるので、それぞれのデジタルデータをできるだけ安全に記録することができる。
また、セキュアデバイスにおいて、前記移動手段により読み出された格納先情報はデジタルデータを移動する場合に暗号化するか否かを指定し、前記移動手段は、移動すべきデジタルデータに付加された格納先情報に従い当該デジタルデータを暗号化して移動するか、又は、そのまま移動することを特徴とすることもできる。
これによって、デジタルデータを移動する際に暗号化するか否かを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟が高い。
また、セキュアデバイス毎に固有の鍵を用いて暗号化して移動する場合には、フラッシュメモリのような保護レベルが低い記憶手段に移動したデジタルデータが、他のセキュアデバイスに不正にコピーされるといった攻撃を回避できる。
つまり、他のセキュアデバイスに不正にコピーされたとしても、鍵が異なるので正しく復号することができないため、正常に利用できない。
また、セキュアデバイスにおいて、前記移動手段により読み出された格納先情報はデジタルデータを移動する場合にデジタルデータに改竄検出用の情報を付加するか否かを指定し、前記移動手段は、移動すべきデジタルデータに付加された格納先情報に従い当該デジタルデータに改竄検出用の情報を付加して移動するか、又は、そのまま移動することを特徴とすることもできる。
これによって、デジタルデータを移動する際に改竄検出用の情報を付加する否かを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟が高い。
また、改竄検出用の情報を付加して移動する場合には、フラッシュメモリのような保護レベルが低い記憶手段に移動したデジタルデータや格納先情報が改竄されてデジタルデータが不正に用いられるといった攻撃を回避できる。
つまり、デジタルデータや格納先情報が改竄されたとしても、認証処理を行うことにより改竄されていることが解るので、改竄されている場合にはデジタルデータの使用を禁止すればよい。
また、セキュアデバイスにおいて、前記移動手段により読み出された格納先情報はデジタルデータを移動する際にデジタルデータにデジタル署名を埋め込むか否かを指定し、前記移動手段は、移動すべきデジタルデータに付加された格納先情報に従い当該デジタルデータにデジタル署名を埋め込んで移動するか、又は、そのまま移動することを特徴とすることもできる。
これによって、デジタルデータを移動する際にデジタル署名を施すか否かを、デジタルデータの管理者がデジタルデータ毎に設定することができるので、設定の柔軟が高い。
また、デジタル署名を施して移動する場合には、フラッシュメモリのような保護レベルが低い記憶手段に移動したデジタルデータや格納先情報が改竄されてデジタルデータが不正に用いられるといった攻撃を回避できる。
つまり、デジタルデータや格納先情報が改竄されたとしても、認証処理を行うことにより改竄されていることが解るので、改竄されている場合にはデジタルデータの使用を禁止すればよい。
また、セキュアデバイスにおいて、前記格納先情報は、さらに、保護レベルを示し、前記移動手段は、前記入手手段により入手された格納先情報が示す保護レベルより低い保護レベルが設定されている記憶手段においては前記処理を行わず、前記処理手段は、さらに、移動手段により記憶領域を確保できない場合に利用者にデジタルデータを格納できない旨を提示するためのエラー情報を出力する出力手段を含むことを特徴とすることもできる。
これによって、デジタルデータの管理者が、さらに、デジタルデータ毎に保護レベルを設定しておき、保護レベルが低い記憶手段に対しては移動処理を行わないので、デジタルデータの安全性を確保することができる。
また、記憶領域を確保できない場合に、利用者にデジタルデータを格納できない旨を提示することができる。
また、セキュアデバイスにおいて、前記入手手段により入手されるデジタルデータはコンピュータプログラムであり、複数のサブプログラムを含み、サブプログラム毎に格納先情報が付加されており、前記処理手段は、サブプログラム毎にそれぞれに付加された格納先情報により特定される記憶手段に、対応するサブプログラムを格納することを特徴とすることもできる。
これによって、デジタルデータの管理者が、サブプログラム毎に格納先情報を設定しておき、格納先情報に基づいて、サブプログラム毎に格納先の記憶手段を特定することができるので、各サブプログラムの価値に応じて効率よく記録することができる。
また、セキュアデバイスにおいて、前記複数の記憶手段にはそれぞれ保護レベルが設定されており、前記入手手段により入手されるデジタルデータはコンピュータプログラムであり1つのメインルーチンと複数のサブルーチンを含み、各ルーチン毎に格納先情報が付加され特にメインルーチンに付加された格納先情報は保護レベルが高い記憶手段に格納すべき事を示し、前記処理手段は、ルーチン毎にそれぞれに付加された格納先情報により特定される記憶手段に、対応するルーチンを格納することを特徴とすることもできる。
これによって、デジタルデータの管理者が、ルーチン毎に格納先情報を設定しておき、格納先情報に基づいて、ルーチン毎に格納先の記憶手段を特定することができるので、各ルーチンの価値に応じて効率よく記録することができる。
特に、メインルーチンを保護レベルの高い記憶素子に格納することによってプログラムを難化することができる。
また、セキュアデバイスにおいて、前記入手手段により入手されるデジタルデータには、当該デジタルデータに付加された格納先情報の正当性を示し、又は、当該デジタルデータと格納先情報の対応が正しいことを示すデジタル署名が埋め込まれているか、又は、認証子が付加されており、前記処理手段は、前記デジタル署名、又は、認証子に応じた認証を実施し、当該認証が成功した場合に限り前記デジタルデータを格納することを特徴とすることもできる。
これによって、格納先情報とデジタルデータとが切り離せないので、安全性が高い。
<概要>
本発明は、保護レベルの異なる複数種類の記憶領域を有するセキュアデバイスが、記憶領域を指定する付加情報を含むデジタルデータを入手して、付加情報に基づいて記憶領域の種類を特定してデジタルデータを記憶するものである。
より具体的には、保護レベルが高いEEPROMと保護レベルが低いフラッシュメモリとの2種類の記憶素子を有するSMMCにおいて、対応するプログラムを記憶すべき記憶素子がEEPROMであるかフラッシュメモリであるかを指定する付加情報を含むプログラムを、携帯電話を介してサーバから受信して、付加情報によりEEPROM及びフラッシュメモリの何れかを特定し、特定した記憶素子に対応するプログラムをダウンロードするものである。
<システム構成>
図1は、本発明の実施の形態1に係るセキュアシステムの構成を示す図である。
図1に示すようにセキュアシステムは、サーバ1、携帯電話2、及び、セキュアデバイス10から構成される。
サーバ1は、予めプログラム毎に付加情報を記録しておき、サーバ1の操作者による指示操作、又は、携帯電話2の利用者による要求操作に応じて、付加情報を含むプログラムを電話回線を介して携帯電話2に送信する。
ここで付加情報は、例えばTRM12内に実装するEEPROM19であるかTRM12外に実装するフラッシュメモリ18であるかを指定するフラグや、記憶素子毎に設定されている保護レベルを示す数値である。
携帯電話2は、電話回線を介してサーバ1から、付加情報を含むプログラムを受信する。
セキュアデバイス10は、例えばJAVA(登録商標) Card等のダウンロード機能を備えるSMMCであり、利用者等によって携帯電話2に装着され、携帯電話2から受信された付加情報を含むプログラムを受取り、付加情報を用いてEEPROM19及びフラッシュメモリ18の何れかを特定して、特定した記憶素子にプログラムをダウンロードする。
セキュアデバイスの外形は、例えば従来のSMMCと同様に切手大程度のサイズや、従来のICカードのサイズであり、他の形状であってもよい。
図1に示すようにセキュアデバイス10は、TRM12外にカードインタフェース回路11、及び、フラッシュメモリ18を備え、TRM12内に、暗号処理エンジン13、セキュリティ鍵情報14、CPU15、ROM16、RAM17、EEPROM19、付加情報処理部20を備える。
ここでダウンロードするプログラムは、例えば、有料のアプリケーションプログラム、課金に関わるプログラム、及び、カード内に記録されているプログラムのバージョンアップ版等であり、セキュアデバイス10において相応の安全性を確保しつつ利用しなければならない。
また、TRM12内に実装するEEPROM19は、格納しているプログラムに対して外部から不正なアクセスが出来ず改竄が困難であるので、本明細書において保護レベルが高いと表現する。
一方、TRM12外に実装するフラッシュメモリ18は、格納しているプログラムに対して外部から不正なアクセスが比較的容易にできるので、本明細書において保護レベルが低いと表現する。
カードインタフェース回路11は、携帯電話2とデータのやり取りを行うもであり、携帯電話2から付加情報を含むプログラムを受け取る。
TRM12は、耐タンパモジュール(Tamper Resistant Module)であり、内部に記録されているデータに対する外部からの不正なアクセスや改竄を困難にする対策が施された部分である。
暗号処理エンジン13は、プログラムをフラッシュメモリに格納する際に暗号化したり、プログラムの安全性を確認する為に施されたMAC情報(Message Authentication Code)やデジタル署名の認証等を行う。
セキュリティ鍵情報14は、暗号処理エンジン13による暗号処理や認証処理等に用いられる。
付加情報処理部20は、カードインタフェース回路11が受け取ったプログラムに含まれる付加情報の意味を解析して、対応するプログラムの格納すべき記憶素子がEEPROM19及びフラッシュメモリ18の何れであるかを特定する。
CPU15は、予めROM16に格納されたプログラムを実行し、RAM17、フラッシュメモリ18、及び、EEPROM19を用いて、暗号処理エンジン13、及び、付加情報処理部20の制御を行い、付加情報処理部20により特定された記憶素子に、カードインタフェース回路11が受け取ったプログラムをダウンロードする。
なお、暗号処理エンジン13、及び、付加情報処理部20は、ROM16に格納されたプログラムをCPU15が実行することにより実現されるものであってもよい。
(実施の形態1)
<セキュアデバイスの構成>
図2は、本発明の実施の形態1に係るセキュアデバイス100の構成を示す図である。
図2に示すセキュアデバイス100は、TRM110外にプログラム入手部101、及び、低保護レベル記憶部102を備え、TRM110内に、高保護レベル記憶部118、付加情報解析部111、領域検索部112、保護レベル判定部113、移動部114、プログラム格納部115、エラー出力部116、暗号処理部117を備える。
プログラム入手部101は、図1に示したカードインタフェース回路11に相当し、携帯電話から付加情報を含むプログラムを入手する。
低保護レベル記憶部102は、例えばTRM外に実装するフラッシュメモリ等の、保護レベルが低い記憶素子である。
高保護レベル記憶部118は、例えばTRM内に実装するEEPROM等の、保護レベルが高い記憶素子である。
付加情報解析部111は、プログラム入手部101により入手されたプログラムに含まれる付加情報を解析して、領域検索部112、及び、暗号処理部117に動作指示を出す。
領域検索部112は、プログラム入手部101により入手されたプログラムを格納できるだけの空いている記憶領域を、付加情報解析部111の指示に従って、高保護レベル記憶部118、及び、低保護レベル記憶部102から検索して、当該記憶領域が存在するか否かを判断する。
保護レベル判定部113は、領域検索部112により検索された記憶領域が、付加情報の意味に適合するかを判定することによって、プログラム入手部101により入手されたプログラムの格納場所を決定し、必要に応じてエラー情報を出力するようにエラー出力部116に指示する。
図3は、本実施の形態1における付加情報を示す図である。
図3に示すように本実施の形態1においては、付加情報は5ビットとする。
付加情報の下位2ビットは、“00”“01”“10”“11”の4段階の保護レベルのうちの何れかを示す。
下位2ビット“00”は、対応するプログラムを高保護レベル記憶部118中の空いている記憶領域に格納すべき旨、及び、対応するプログラムを格納できるだけの空いている記憶領域が高保護レベル記憶部118中に存在しない場合には格納せずにエラー情報を携帯電話に返すべき旨を意味する。
下位2ビット“01”は、対応するプログラムを高保護レベル記憶部118中の空いている記憶領域に格納すべき旨、及び、対応するプログラムを格納できるだけの空いている記憶領域が高保護レベル記憶部118中に存在しない場合には、高保護レベル記憶部118中の記憶領域を空けて格納する旨を意味する。なお、下位2ビット“01”は、他のプログラムが格納されている高保護レベル記憶部118中の記憶領域に上書きすべき旨を意味することにしてもよい。
下位2ビット“10”は、対応するプログラムを低保護レベル記憶部102に格納すべき旨、及び、対応するプログラムを格納できるだけの空いている記憶領域が低保護レベル記憶部102中に存在しない場合には格納せずにエラー情報を携帯電話に返すべき旨を意味する。
下位2ビット“11”は、対応するプログラムを格納できるだけの空いている記憶領域が高保護レベル記憶部118中に存在する場合には高保護レベル記憶部118に格納すべき旨、存在しない場合には低保護レベル記憶部102に格納すべき旨、及び、対応するプログラムを格納できるだけの空いている記憶領域が低保護レベル記憶部102中に存在しない場合には格納せずにエラー情報を携帯電話に返すべき旨を意味する。
付加情報の下位から3ビット目は、対応するプログラムを低保護レベル記憶部102に格納する際に、暗号化するか否かを示す。
ここでは下位から3ビット目“0”は、暗号化しない旨を意味し、下位から3ビット目“1”は、暗号化する旨を意味することとする。
付加情報の下位から4ビット目は、対応するプログラムを低保護レベル記憶部102に格納する際に、MAC情報の付加やデジタル署名等を施すか否かを示す。
ここでは下位から4ビット目“0”は、MAC情報を付加せずデジタル署名を施さない旨を意味し、下位から4ビット目“1”は、MAC情報を付加しデジタル署名を施す旨を意味することとする。
付加情報の最上位ビット(下位から5ビット目)は、セキュアデバイス100の利用者が、対応するプログラムの格納場所を自由に決めてよいか否かを示す。
ここでは最上位ビット“0”は、格納場所を自由に決めてはならない旨を意味し、最上位ビット“1”は、下位2ビットが示す保護レベルに依存することなく格納場所を自由に決めてよい旨を意味することとする。
ここで保護レベル判定部113は、高保護レベル記憶部118から記憶領域が検索された場合であって、最上位ビットが“0”かつ下位2ビットが“00”、“01”、“11”の時には、検索された高保護レベル記憶部118中の記憶領域を格納場所に決定する。
また保護レベル判定部113は、低保護レベル記憶部102から記憶領域が検索された場合であって、最上位ビットが“0”かつ下位2ビットが“10”の時、及び、高保護レベル記憶部118から記憶領域が検索されずかつ低保護レベル記憶部102から記憶領域が検索された場合であって、最上位ビットが“0”かつ下位2ビットが“11”の時には、検索された低保護レベル記憶部102中の記憶領域を格納場所に決定する。
また保護レベル判定部113は、高保護レベル記憶部118と低保護レベル記憶部102との少なくとも一方から記憶領域が検索された場合であって、最上位ビット“1”の時には、検索された何れかの記憶部中の記憶領域を格納場所に決定する。
また保護レベル判定部113は、高保護レベル記憶部118から記憶領域が検索されない場合であって、最上位ビットが“0”かつ下位2ビットが“01”の時には、移動部114に高保護レベル記憶部118中の記憶領域を空ける処理を実施するよう指示する。なお、下位2ビット“01”が、他のプログラムが格納されている高保護レベル記憶部118中の記憶領域に上書きすべき旨を意味することにした場合には、他のプログラムが格納されている高保護レベル記憶部118中の記憶領域を格納場所に決定する。
また保護レベル判定部113は、高保護レベル記憶部118から記憶領域が検索されない場合であって、最上位ビットが“0”かつ下位2ビットが“00”の時、低保護レベル記憶部102から記憶領域が検索されない場合であって、最上位ビットが“0”かつ下位2ビットが“10”の時、高保護レベル記憶部118と低保護レベル記憶部102との両方から記憶領域が検索されない場合であって、最上位ビットが“1”の時、又は、最上位ビットが“0”かつ下位2ビットが“11”の時には、エラー情報を出力するようにエラー出力部116に指示する。
移動部114は、高保護レベル記憶部118から記憶領域が検索されず、付加情報の最上位ビット“0”、下位2ビットが“01”の場合に、高保護レベル記憶部118に格納されているプログラムのそれぞれに付加されている付加情報を読み出し、これら付加情報のうち、最上位ビット“0”、又は、下位2ビットが“11”である付加情報を抽出し、抽出した付加情報に対応するプログラムを低保護レベル記憶部102に移動し、プログラム入手部101により入手されたプログラムを格納するための記憶領域を高保護レベル記憶部118中に確保する。
ここで、必要な容量の記憶領域を確保できない場合には、エラー情報を出力するようにエラー出力部116に指示する。なお、必要な容量の記憶領域を確保できない場合に、他のプログラムが格納されている高保護レベル記憶部118中の記憶領域を格納場所に決定することにしてもよい。
プログラム格納部115は、保護レベル判定部113により決定又は移動部114により確保された格納場所に、プログラム入手部101により入手されたプログラムを格納する。
エラー出力部116は、保護レベル判定部113によりエラー情報を出力すると決定された場合に、その旨の指示を受けてエラー情報を携帯電話に返し、携帯電話の表示部にデジタルデータを格納できない旨を提示させる。
暗号処理部117は、セキュアデバイス毎に異なるID情報を保持し、プログラム入手部101により入手されたプログラムを低保護レベル記憶部102に格納する際、及び、プログラムを高保護レベル記憶部118から低保護レベル記憶部102に移動する際に、付加情報の下位から4ビット目が“1”の場合には、MAC情報を付加しデジタル署名を施し、付加情報の下位から3ビット目が“1”の場合には、保持しているID情報を用いてプログラムを暗号化する。
ここで、暗号処理部117は、プログラムを高保護レベル記憶部118に格納する際にも、付加情報の下位から4ビット目が“1”の場合には、MAC情報を付加しデジタル署名を施し、付加情報の下位から3ビット目が“1”の場合には、保持しているID情報を用いてプログラムを暗号化してもよい。
<動作>
図4は、本発明の実施の形態1に係るセキュアデバイス100における、プログラムのダウンロード処理の動作を示す図である。
以下に、プログラムのダウンロード処理の動作について説明する。
(1)プログラム入手部101が、携帯電話から付加情報を含むプログラムを受け取る(S1)。
(2)付加情報解析部111が、付加情報の最上位ビットが“0”であるか“1”であるかを解析する(S2)。
(3)最上位ビットが“1”である場合は、領域検索部112が、プログラム入手部101により入手されたプログラムを格納できるだけの空いている記憶領域を、高保護レベル記憶部118、及び、低保護レベル記憶部102から検索して、当該記憶領域が少なくとも一方の記憶部に存在するか否かを判断する(S3)。存在しない場合は、エラー処理を行う。
(4)存在する場合は、利用者の直接指示や利用者により予め設定されている指示等に基づいて、検索された何れかの記憶部中の記憶領域を格納場所に決定する(S4)。
(5)最上位ビットが“0”である場合は、保護レベル判定部113が、付加情報の下位2ビットが“10”であるか否かを判定する(S5)。
(6)下位2ビットが“10”である場合は、領域検索部112が、プログラム入手部101により入手されたプログラムを格納できるだけの空いている記憶領域が、低保護レベル記憶部102に存在するか否かを検索して、当該記憶領域が存在するか否かを判断する(S6)。存在しない場合は、エラー処理を行う。
(7)存在する場合には、保護レベル判定部113が、検索された低保護レベル記憶部102中の記憶領域を格納場所に決定する(S7)。
(8)下位2ビットが“10”でない場合は、領域検索部112が、プログラム入手部101により入手されたプログラムを格納できるだけの空いている記憶領域が、高保護レベル記憶部118に存在するか否かを検索して、当該記憶領域が存在するか否かを判断する(S8)。
(9)存在する場合には、保護レベル判定部113が、検索された高保護レベル記憶部118中の記憶領域を格納場所に決定する(S9)。
(10)存在しない場合には、保護レベル判定部113が、付加情報の下位2ビットが“00”であるか否かを判定する(S10)。下位2ビットが“00”である場合は、エラー処理を行う。
(11)下位2ビットが“00”でない場合は、保護レベル判定部113が、付加情報の下位2ビットが“01”であるか否かを判定する(S11)。
(12)下位2ビットが“01”である場合は、移動部114が、高保護レベル記憶部118に格納されているプログラムを、それぞれに付加されている付加情報に基づいて低保護レベル記憶部102に移動し、記憶領域を高保護レベル記憶部118中に確保する(S12)。確保出来ない場合にはエラー処理を行う。
ここで、高保護レベル記憶部118に格納されている移動対象のプログラムに、暗号処理部117による各処理が施されていない場合には、当該プログラムの移動に際して、付加情報の下位から4ビット目に応じてMAC情報を付加しデジタル署名を施し、3ビット目に応じてプログラムを暗号化する。
(13)下位2ビットが“01”でない場合は“11”であるので、領域検索部112が、プログラム入手部101により入手されたプログラムを格納できるだけの空いている記憶領域が、低保護レベル記憶部102に存在するか否かを検索して、当該記憶領域が存在するか否かを判断する(S13)。存在しない場合は、エラー処理を行う。
(14)存在する場合には、保護レベル判定部113が、検索された低保護レベル記憶部102中の記憶領域を格納場所に決定する(S14)。
(15)プログラム格納部115が、決定又は確保された格納場所にプログラムを格納する(S19)。
ここで、当該プログラムを低保護レベル記憶部102に格納する際には、付加情報解析部111が付加情報の下位から4ビット目及び3ビット目を解析し、暗号処理部117が、解析結果に応じてMAC情報を付加しデジタル署名を施し、またプログラムを暗号化する。
(16)格納場所を検索又は確保できない場合には、エラー出力部116が、エラー情報を携帯電話に返す(S20)。
(実施の形態2)
<セキュアデバイスの構成>
図5は、本発明の実施の形態2に係るセキュアデバイス200の構成を示す図である。
なお、実施の形態1と同様の構成要素には同一番号を付し、その説明を省略する。
図5に示すセキュアデバイス200は、TRM210外にプログラム入手部101、及び、低保護レベル記憶部102を備え、TRM210内に、高保護レベル記憶部118、付加情報解析部111、領域検索部112、保護レベル判定部213、移動部214、プログラム格納部115、エラー出力部116、暗号処理部117を備える。
保護レベル判定部213は、保護レベル判定部213は、優先度が高いプログラムから順に高保護レベル記憶部118に格納し、高保護レベル記憶部118に空き領域が足らなくなったら、低保護レベル記憶部102に格納し、必要に応じてエラー情報を出力するようにエラー出力部116に指示する。
図6は、本実施の形態2における付加情報を示す図である。
図6に示すように本実施の形態2においては、付加情報は5ビットとする。
付加情報の下位2ビットは、“00”“01”“10”“11”の4段階のプログラムの優先度のうちの何れかを示す。
下位2ビット“00”はプログラムの優先度が最も高い事を意味する。
下位2ビット“01”はプログラムの優先度が2番目に高い事を意味する。
下位2ビット“10”はプログラムの優先度が3番目に高い事を意味する。
下位2ビット“11”はプログラムの優先度が4番目に高い事を意味する。
付加情報の下位から3ビット目、4ビット目及び最上位ビットは、実施の形態1と同様である。
ここで保護レベル判定部213は、高保護レベル記憶部118から記憶領域が検索された場合には、検索された高保護レベル記憶部118中の記憶領域を格納場所に決定する。
また保護レベル判定部213は、高保護レベル記憶部118から記憶領域が検索されなかった場合であって、付加情報の最上位ビット“0”かつ下位2ビットが“00”“01”“10”の時には、移動部214に高保護レベル記憶部118中の記憶領域を空ける処理を実施するよう指示する。
また保護レベル判定部213は、高保護レベル記憶部118から記憶領域が検索されず、低保護レベル記憶部102から記憶領域が検索された場合であって、付加情報の最上位ビット“0”かつ下位2ビットが“11”の時には、検索された低保護レベル記憶部102中の記憶領域を格納場所に決定する。
移動部214は、高保護レベル記憶部118から記憶領域が検索されず、付加情報の最上位ビット“0”、下位2ビットが“00”“01”“10”の場合に、高保護レベル記憶部118に格納されているプログラムのそれぞれに付加されている付加情報を読み出し、これら付加情報のうち、元の付加情報よりも優先度が低い付加情報を抽出し、抽出した付加情報に対応するプログラムを低保護レベル記憶部102に移動し、プログラム入手部101により入手されたプログラムを格納するための記憶領域を高保護レベル記憶部118中に確保する。
ここで、記憶領域を高保護レベル記憶部118中に確保できなかった場合には、記憶領域を低保護レベル記憶部102中に確保する。
また、記憶領域を低保護レベル記憶部102中にも確保できなかった場合には、保護レベル判定部213がエラー情報を出力するようにエラー出力部116に指示する。
また、例えば、付加情報の下位から2ビット目が“0”の場合には、高保護レベル記憶部118にのみ格納を許可するように予め取り決めていたとすると、移動部214は下位から2ビット目が“0”の付加情報に対応するプログラムの移動は行わず、また、保護レベル判定部213は高保護レベル記憶部118中に記憶領域が検索されなかった場合であって、付加情報の下位から2ビット目が“0”の時には、低保護レベル記憶部102に記憶領域が検索されたとしても低保護レベル記憶部102中の記憶領域を格納場所に決定はせずに、エラー情報を出力するようにエラー出力部116に指示する。
<動作>
図7は、本発明の実施の形態2に係るセキュアデバイス200における、プログラムのダウンロード処理の動作を示す図である。
以下に、プログラムのダウンロード処理の動作について説明する。
なお、実施の形態1と同様のステップには同一番号を付しその説明を省略する。
(1)実施の形態1の(1)と同じ。
(2)実施の形態1の(2)と同じ。
(3)実施の形態1の(3)と同じ。
(4)実施の形態1の(4)と同じ。
(5)最上位ビットが“0”である場合は、領域検索部112が、プログラム入手部101により入手されたプログラムを格納できるだけの空いている記憶領域が、高保護レベル記憶部118に存在するか否かを検索して、当該記憶領域が存在するか否かを判断する(S21)。
(6)存在する場合には、保護レベル判定部113が、検索された高保護レベル記憶部118中の記憶領域を格納場所に決定する(S22)。
(7)存在しない場合には、保護レベル判定部113が、付加情報の下位2ビットが“11”であるか否かを判定する(S23)。
(8)下位2ビットが“11”である場合は、領域検索部112が、プログラム入手部101により入手されたプログラムを格納できるだけの空いている記憶領域が、低保護レベル記憶部102に存在するか否かを検索して、当該記憶領域が存在するか否かを判断する(S24)。存在しない場合は、エラー処理を行う。
(9)存在する場合には、保護レベル判定部113が、検索された低保護レベル記憶部102中の記憶領域を格納場所に決定する(S25)。
(10)下位2ビットが“11”でない場合は、移動部214が、高保護レベル記憶部118に格納されているプログラムのそれぞれに付加されている付加情報を読み出し、これら付加情報のうち、元の付加情報よりも優先度が低い付加情報を抽出し、抽出した付加情報に対応するプログラムを低保護レベル記憶部102に移動し、プログラム入手部101により入手されたプログラムを格納するための記憶領域を高保護レベル記憶部118中に確保する(S26)。
ここで、高保護レベル記憶部118に格納されている移動対象のプログラムに、暗号処理部117による各処理が施されていない場合には、当該プログラムの移動に際して、付加情報の下位から4ビット目に応じてMAC情報を付加しデジタル署名を施し、3ビット目に応じてプログラムを暗号化する。
(11)記憶領域を高保護レベル記憶部118中に確保できない場合には、記憶領域を低保護レベル記憶部102中に確保する(S27)。記憶領域を低保護レベル記憶部102中にも確保できない場合には、エラー処理を行う。
(12)実施の形態1の(15)と同じ(S15)。
(13)実施の形態1の(16)と同じ(S16)。
(変形例)
なお、付加情報は対応するプログラムと切り離しができないように、プログラムファイルのヘッダに付加情報をプログラムIDと共に記録し、ヘッダを含むプログラムファイル全体に対して、MAC情報を付加したりデジタル署名を施し、本発明のセキュアデバイスがプログラムのダウンロードの条件として、MAC情報やデジタル署名の認証を行なってもよいし、また、プログラムを実行することにより付加情報を出力するものであってもよい。
また、本発明の実施の形態1及び2では、付加情報をプログラムと共に格納し、格納したプログラムを移動する際に用いているが、移動等を行なわず格納後に付加情報を使わない場合には付加情報を格納しなくてもよいので、付加情報を除いてプログラムのみを格納しても構わない。
また、本発明の実施の形態1及び2では、プログラムを格納する記憶素子として、保護レベルが異なる2種類の記憶素子を用いて説明したが、保護レベルが異なる3種類以上の記憶素子を用いても同様に実施できる。
また、本発明の実施の形態1及び2では、プログラム毎に付加情報を対応付けているが、1つのプログラムに複数の付加情報を対応付けてもよい。例えば、1つのプログラムを複数のサブプログラムに分割してサブプログラム毎に付加情報を対応付けることによって、決算プログラムの中で料金を直接処理しているような秘匿性の高いサブプログラムだけを保護レベルの高い記憶素子に格納することができる。また例えば、プログラム中のメインルーチンと各サブルーチンを分離して各ルーチン毎に付加情報を対応付け、メインルーチンを保護レベルの高い記憶素子に格納することによってプログラムを難読化することができ、あるいは、各サブルーチンのうち秘匿性の高いサブルーチンだけを保護レベルの高い記憶素子に格納することができる。
また、本発明の実施の形態1及び2では、ダウンロードの対象をプログラムとして説明したが、デジタルコンテンツであってもよいし、他のデジタルデータであってもよい。
(まとめ)
以上のように、本発明のセキュアデバイスによれば、プログラムに含まれる付加情報に基づいてプログラムの格納場所を決定する事ができるので、プログラムの管理者が付加情報を予め設定しておくことによって、TRM内に実装する記憶領域の容量を越えるプログラムを、各プログラムの管理者が必要とする安全性を確保しつつ、ダウンロードすることができる。
ここで、産業上の利用の可能性という観点で考えると、本発明は、インターネット等のネットワークを介して、音楽コンテンツや動画像コンテンツの配信を受けるコンテンツ配信サービス、及び、モバイルECサービス等の様々な電子情報サービスに適用することができる。
本発明のセキュアデバイスにより、TRM内に実装する記憶領域の容量を越えるプログラムを、各プログラムの管理者が必要とする安全性を確保しつつダウンロードすることができ、利用者は本発明のセキュアデバイスを自分の携帯電話に装着して、外出先からコンテンツ配信サービスやモバイルECサービス等を安全に行うことができる。
本発明は、コンテンツの不正な使用を防止するコンテンツ保護技術、及び、モバイルECにおける認証技術や課金技術等のEC保護技術を備えるセキュアデバイスなどの技術分野に広く適用することができる。
本発明によって、TRM内に実装するEEPROMのような保護レベルが高い記憶手段の容量が足らない場合に、管理者によって許可されているデジタルデータであれば、TRM外に実装するフラッシュメモリのような保護レベルが低い記憶手段に記録することができるので、TRM内に実装する記憶領域の容量を越えるプログラムを、プログラムの管理者が必要とする安全性を確保しつつ、ダウンロードすることができ、その産業的利用価値は極めて高い。
本発明の実施の形態1に係るセキュアシステムの構成を示す図である。 本発明の実施の形態1に係るセキュアデバイス100の構成を示す図である。 本実施の形態1における付加情報を示す図である。 本発明の実施の形態1に係るセキュアデバイス100における、プログラムのダウンロード処理の動作を示す図である。 本発明の実施の形態2に係るセキュアデバイス200の構成を示す図である。 本実施の形態2における付加情報を示す図である。 本発明の実施の形態2に係るセキュアデバイス200における、プログラムのダウンロード処理の動作を示す図である。
符号の説明
10 セキュアデバイス
11 カードインタフェース回路
12 TRM
13 暗号処理エンジン
14 セキュリティ鍵情報
15 CPU
16 ROM
17 RAM
18 フラッシュメモリ
19 EEPROM
20 付加情報処理部
100 セキュアデバイス
101 プログラム入手部
102 低保護レベル記憶部
110 TRM
111 付加情報解析部
112 領域検索部
113 保護レベル判定部
114 移動部
115 プログラム格納部
116 エラー出力部
117 暗号処理部
118 高保護レベル記憶部
200 セキュアデバイス
210 TRM
213 保護レベル判定部
214 移動部

Claims (8)

  1. 耐タンパ集積回路と前記耐タンパ集積回路の外部にある外部記憶手段とを備える情報処理装置であって、
    前記耐タンパ集積回路は、
    データを格納する内部記憶手段と、
    鍵情報を保持する鍵保持手段と、
    前記内部記憶手段に格納されているデータを前記鍵保持手段が保持する鍵情報を用いて暗号化して前記外部記憶手段に格納する暗号処理手段と、
    前記暗号処理手段が行う処理にエラーが発生した場合にエラーを前記耐タンパ集積回路の外部に出力するエラー出力手段と、
    を備え、
    前記外部記憶手段は前記内部記憶手段に格納されているデータを前記暗号処理手段が前記鍵保持手段が保持する鍵情報を用いて暗号化したデータを格納し、前記内部記憶手段の前記データが格納されていた空き領域にもう1つのデータを格納する
    ことを特徴とする情報処理装置。
  2. さらに、前記内部記憶手段の空き領域を調べる領域検索手段を備え、
    前記領域検索手段が前記もう1つのデータを格納する空き領域が前記内部記憶手段にあるかを調べ、
    空き領域がある場合には前記もう1つのデータを前記内部記憶手段に格納し、
    空き領域が無い場合には前記暗号処理手段が前記内部記憶手段に格納されているデータを前記鍵保持手段が保持する鍵情報を用いて暗号化して前記外部記憶手段に格納し、前記内部記憶手段の前記データが格納されていた空き領域にもう1つのデータを格納する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記鍵保持手段が保持する鍵情報は、前記耐タンパ集積回路に固有の鍵情報であることを特徴とする請求項1に記載の情報処理装置。
  4. 前記暗号処理手段は、さらに、前記外部記憶手段に格納されている暗号化したデータを前記鍵保持手段が保持する鍵情報を用いて復号する
    ことを特徴とする請求項1に記載の情報処理装置。
  5. 前記データは付加情報を備え、
    前記暗号処理手段は、前記付加情報をもとにデータの優先度を判断し、優先度の高いデータを前記内部記憶手段に格納するために、優先度の低いデータを暗号化して前記外部記憶手段に格納する
    ことを特徴とする請求項1に記載の情報処理装置。
  6. 前記データは付加情報を備え、
    前記付加情報がデータの改竄検出用の情報の付加を示す場合に、
    前記暗号処理手段が、さらに、前記外部記憶手段に格納されるデータに、前記改竄検出用の情報を含める
    ことを特徴とする請求項1に記載の情報処理装置。
  7. 前記もう1つのデータは付加情報を備え、
    前記付加情報が前記外部記憶手段への格納を示す場合に、前記暗号処理手段が前記もう1つのデータを前記鍵保持手段が保持する鍵情報を用いて暗号化して前記外部記憶手段に格納し、
    前記付加情報が前記内部記憶手段への格納を示す場合に、前記空き領域にもう1つのデータを格納する
    ことを特徴とする請求項1に記載の情報処理装置。
  8. 情報処理装置で用いられる情報処理方法であって、
    前記情報処理装置は、耐タンパ集積回路と前記耐タンパ集積回路の外部にある外部記憶手段とを備え、
    前記耐タンパ集積回路は、
    データを格納する内部記憶手段と、
    鍵情報を保持する鍵保持手段とを備え、
    前記方法は、
    前記内部記憶手段に格納されているデータを前記鍵保持手段が保持する鍵情報を用いて暗号化して前記外部記憶手段に格納する暗号処理ステップと、
    前記暗号処理手段が行う処理にエラーが発生した場合にエラーを前記耐タンパ集積回路の外部に出力するエラー出力ステップと含み、
    前記外部記憶手段は前記内部記憶手段に格納されているデータを前記暗号処理手段が前記鍵保持手段が保持する鍵情報を用いて暗号化したデータを格納し、前記内部記憶手段の前記データが格納されていた空き領域にもう1つのデータを格納する
    ことを特徴とする情報処理方法。
JP2008307370A 2002-03-13 2008-12-02 情報処理装置 Expired - Fee Related JP4464455B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008307370A JP4464455B2 (ja) 2002-03-13 2008-12-02 情報処理装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002068097 2002-03-13
JP2008307370A JP4464455B2 (ja) 2002-03-13 2008-12-02 情報処理装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003067248A Division JP4350962B2 (ja) 2002-03-13 2003-03-12 セキュアデバイス

Publications (2)

Publication Number Publication Date
JP2009070408A true JP2009070408A (ja) 2009-04-02
JP4464455B2 JP4464455B2 (ja) 2010-05-19

Family

ID=27800294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008307370A Expired - Fee Related JP4464455B2 (ja) 2002-03-13 2008-12-02 情報処理装置

Country Status (9)

Country Link
US (2) US7246247B2 (ja)
EP (2) EP1523705A2 (ja)
JP (1) JP4464455B2 (ja)
KR (1) KR20040101293A (ja)
CN (1) CN100350343C (ja)
AU (1) AU2003212647A1 (ja)
BR (1) BR0308370A (ja)
RU (1) RU2313122C2 (ja)
WO (1) WO2003077083A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013507715A (ja) * 2009-10-13 2013-03-04 マイクロソフト コーポレーション 一時的な機密のセキュアストレージ方法

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4572519B2 (ja) * 2003-09-17 2010-11-04 日本電気株式会社 電子情報認証システム、携帯情報端末及びそれらに用いる電子情報認証方法
US8359432B2 (en) * 2003-09-17 2013-01-22 Bindu Rama Rao System and method for transferring data between removable storage media units
US7681046B1 (en) * 2003-09-26 2010-03-16 Andrew Morgan System with secure cryptographic capabilities using a hardware specific digital secret
US7694151B1 (en) 2003-11-20 2010-04-06 Johnson Richard C Architecture, system, and method for operating on encrypted and/or hidden information
JP2005275812A (ja) * 2004-03-24 2005-10-06 Canon Inc 情報処理装置及びその制御方法、並びに制御プログラム及び記憶媒体
JP4724655B2 (ja) * 2004-04-30 2011-07-13 富士通セミコンダクター株式会社 セキュリティチップおよび情報管理方法
US7636857B2 (en) * 2004-05-24 2009-12-22 Interdigital Technology Corporation Data-mover controller with plural registers for supporting ciphering operations
WO2006120938A1 (ja) 2005-05-09 2006-11-16 Matsushita Electric Industrial Co., Ltd. メモリカード、アプリケーションプログラム保持方法、及び保持プログラム
JP4813133B2 (ja) * 2005-09-20 2011-11-09 富士通株式会社 生体認証方法及び生体認証システム
US8424110B2 (en) * 2006-08-17 2013-04-16 Sony Corporation Content storage apparatus, content storage method, storage medium, and program
KR100849212B1 (ko) * 2006-10-12 2008-07-31 삼성전자주식회사 메모리 카드 및 메모리 카드의 구동 프로그램 업데이트방법
JP4912174B2 (ja) 2007-02-07 2012-04-11 株式会社日立製作所 ストレージシステム及び記憶管理方法
FR2928755B1 (fr) * 2008-03-14 2014-04-11 Sagem Securite Procede de securisation d'une execution d'un programme
WO2009147548A2 (en) * 2008-05-27 2009-12-10 Nxp B.V. Method for storing nfc applications in a secure memory device
KR101418467B1 (ko) * 2008-08-15 2014-07-10 엘에스아이 코포레이션 니어 코드워드들의 ram 리스트-디코딩
US8171306B2 (en) * 2008-11-05 2012-05-01 Microsoft Corporation Universal secure token for obfuscation and tamper resistance
CN101458667B (zh) * 2009-01-10 2013-09-04 汤放鸣 基于电子密级标识的信息交换流向控制方法及移动存储器
JP5923931B2 (ja) * 2011-10-31 2016-05-25 株式会社リコー 情報処理装置、管理方法、及び管理プログラム
US20150286510A1 (en) * 2012-05-31 2015-10-08 Sony Corporation Information processing device, information processing method, and program
US10204178B2 (en) * 2013-02-04 2019-02-12 Authentise Inc. System, method, and program product for digital production management
US9741085B2 (en) * 2013-03-14 2017-08-22 Artificial Intelligence Research Group Limited System and method of encoding content and an image
CN105279019B (zh) * 2014-06-10 2018-11-23 中国移动通信集团公司 一种应用程序的调度方法、装置和终端设备

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4184201A (en) * 1978-04-26 1980-01-15 Sperry Rand Corporation Integrating processor element
US4713753A (en) * 1985-02-21 1987-12-15 Honeywell Inc. Secure data processing system architecture with format control
US4962533A (en) * 1989-02-17 1990-10-09 Texas Instrument Incorporated Data protection for computer systems
US5237609A (en) * 1989-03-31 1993-08-17 Mitsubishi Denki Kabushiki Kaisha Portable secure semiconductor memory device
US5226137A (en) * 1989-05-15 1993-07-06 Dallas Semiconductor Corp. Electronic key with multiple password protected sub-keys using address and translation to implement a block data move between public and protected sub-keys
JPH03240127A (ja) * 1990-02-17 1991-10-25 Hitachi Maxell Ltd プログラム制御システム
JPH06119510A (ja) * 1992-10-07 1994-04-28 Mitsubishi Electric Corp メモリカード
WO1995033239A1 (en) * 1994-05-26 1995-12-07 The Commonwealth Of Australia Secure computer architecture
US5749088A (en) * 1994-09-15 1998-05-05 Intel Corporation Memory card with erasure blocks and circuitry for selectively protecting the blocks from memory operations
US6282652B1 (en) * 1998-02-26 2001-08-28 Sun Microsystems, Inc. System for separately designating security requirements for methods invoked on a computer
JPH09297798A (ja) 1996-05-08 1997-11-18 Matsushita Electric Ind Co Ltd マルチメディア機器のコピー防止装置
JPH1027135A (ja) 1996-07-10 1998-01-27 Nippon Telegr & Teleph Corp <Ntt> 電子情報格納方法及び装置
EP0988591A1 (en) * 1997-06-09 2000-03-29 Intertrust, Incorporated Obfuscation techniques for enhancing software security
US6018724A (en) * 1997-06-30 2000-01-25 Sun Micorsystems, Inc. Method and apparatus for authenticating on-line transaction data
GB2329499B (en) * 1997-09-19 2001-05-30 Ibm Method for controlling access to electronically provided services and system for implementing such method
RU2134931C1 (ru) 1999-03-15 1999-08-20 ОАО "Всероссийский научно-исследовательский институт автоматизации управления в непромышленной сфере" Способ обеспечения доступа к объектам в операционной системе мсвс
RU2163744C2 (ru) 1999-04-29 2001-02-27 Щеглов Андрей Юрьевич Система защиты виртуального канала корпоративной сети с фиксальным контролем доступа к информации, построенной на каналах и средствах коммутации сети связи общего пользования
CN1304977C (zh) * 1999-07-06 2007-03-14 索尼株式会社 数据提供系统、装置及其方法
JP2001195308A (ja) 2000-06-09 2001-07-19 Hiroshi Nakamura パソコンソフトの不正コピー防止
JP2002229861A (ja) 2001-02-07 2002-08-16 Hitachi Ltd 著作権保護機能つき記録装置
US7251248B2 (en) * 2001-07-31 2007-07-31 Bridgeworks Ltd. Connection device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013507715A (ja) * 2009-10-13 2013-03-04 マイクロソフト コーポレーション 一時的な機密のセキュアストレージ方法

Also Published As

Publication number Publication date
US7739519B2 (en) 2010-06-15
US20070234074A1 (en) 2007-10-04
RU2004130450A (ru) 2005-04-10
US20030182569A1 (en) 2003-09-25
WO2003077083A3 (en) 2005-01-20
RU2313122C2 (ru) 2007-12-20
AU2003212647A8 (en) 2003-09-22
KR20040101293A (ko) 2004-12-02
CN1643470A (zh) 2005-07-20
WO2003077083A2 (en) 2003-09-18
BR0308370A (pt) 2005-05-03
EP2275960A2 (en) 2011-01-19
CN100350343C (zh) 2007-11-21
EP1523705A2 (en) 2005-04-20
US7246247B2 (en) 2007-07-17
AU2003212647A1 (en) 2003-09-22
JP4464455B2 (ja) 2010-05-19

Similar Documents

Publication Publication Date Title
JP4464455B2 (ja) 情報処理装置
JP4891902B2 (ja) 電子機器、更新サーバ装置、鍵更新装置
JP5175856B2 (ja) セキュアデバイス・システムにおけるフラッシュメモリ・ブロックの保護と方法
US7802112B2 (en) Information processing apparatus with security module
JP5190800B2 (ja) プログラムの実行制御システム、実行制御方法、実行制御用コンピュータプログラム
US7325139B2 (en) Information processing device, method, and program
US20070136202A1 (en) Personal-information managing apparatus, method of providing personal information, computer product, and personal-information-providing system
CN101571900B (zh) 一种软件版权保护方法、设备和系统
JP4625000B2 (ja) データ保護システム及び記録担体
US20020112163A1 (en) Ensuring legitimacy of digital media
JPWO2006009081A1 (ja) アプリケーション実行装置及びアプリケーション実行装置のアプリケーション実行方法
EP1334419B1 (en) System and method for verifying the integrity of stored information within an electronic device
JP2005128996A (ja) 情報処理装置、情報処理システム及びプログラム
JP2005079912A (ja) セキュアデータ管理装置
KR101756978B1 (ko) 트러스티드 실행 환경 기반의 어플리케이션 프로그램 보호 방법 및 시스템
JP5354001B2 (ja) 情報処理装置、情報処理システム及びプログラム
WO2006031030A1 (en) Method and apparatus for searching for rights objects stored in portable storage device using object identifier
JP4055393B2 (ja) データ処理装置およびその方法とプログラム
JP2006262393A (ja) 耐タンパ装置およびファイル生成方法
JP4350962B2 (ja) セキュアデバイス
JPH1031587A (ja) データ端末装置およびコンピュータプログラム
JP2006268513A (ja) 端末装置のログオン管理装置
CN111177784A (zh) 一种文件系统的安全保护方法、装置及存储介质
JP2006190011A (ja) 無線icチップ、それを利用した暗号復号化システム、それに用いられるプログラム、そのプログラムが記録された記録媒体、暗号復号化方法、および、プログラムのインストール方法
CN114297093A (zh) 一种数据的存储方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091221

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100218

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

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4464455

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140226

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees