JP2005079912A - セキュアデータ管理装置 - Google Patents

セキュアデータ管理装置 Download PDF

Info

Publication number
JP2005079912A
JP2005079912A JP2003307863A JP2003307863A JP2005079912A JP 2005079912 A JP2005079912 A JP 2005079912A JP 2003307863 A JP2003307863 A JP 2003307863A JP 2003307863 A JP2003307863 A JP 2003307863A JP 2005079912 A JP2005079912 A JP 2005079912A
Authority
JP
Japan
Prior art keywords
data
application
data management
card
secure
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.)
Withdrawn
Application number
JP2003307863A
Other languages
English (en)
Inventor
Takeshi Naka
健 中
Hisashi Takayama
久 高山
Shino Takegawa
視野 竹川
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 Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003307863A priority Critical patent/JP2005079912A/ja
Priority to TW093124030A priority patent/TW200517909A/zh
Priority to US10/920,438 priority patent/US20050050363A1/en
Priority to EP04019629A priority patent/EP1510901A3/en
Priority to KR1020040068021A priority patent/KR20050021922A/ko
Priority to CNA2004100749030A priority patent/CN1591397A/zh
Publication of JP2005079912A publication Critical patent/JP2005079912A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • G06F21/725Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits operating on a secure reference time value
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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/2137Time limited access, e.g. to a computer or data

Abstract

【課題】 情報処理端末上での、サーバとの同期処理の信頼性と確実性の向上、データの安全性と時刻の信頼性の向上を図り、確実で、安全性の高いデータ管理を行うこと。
【解決手段】 ICカード102上のデータ管理カードアプリ301が、端末101上で動作する端末アプリケーションであるMTA200(Master Trusted Agent)を端末101に対して発行し、MTA200がサーバ103とのデータの同期処理を行う端末アプリケーションであるデータ管理アプリ201のコードに認証情報を埋め込んで起動し、その認証情報を基にデータ管理カードアプリ301がデータ管理アプリ201を認証し、データ管理アプリ201が同期処理の目標データをICカード102に格納し、ICカード102に格納した目標データに基づいてデータ管理アプリ201がサーバとの間で同期処理を行う。
【選択図】 図4

Description

本発明は、データをセキュアに保持するICカード等のセキュアデバイスと、そのセキュアデバイスを搭載する携帯電話やPDA(Personal Digital Assistant)、パーソナルコンピュータなどの情報処理端末に関する。
従来から、コンピューターや携帯用の端末装置を利用してフィールドでの営業活動を支援するためのシステムが広く利用されている。その様な中で、データベースサーバとオンライン接続するための通信コストの節約と、オフライン環境下での利便性から、携帯用の端末装置に、データベースの一部を保存し、オフライン環境下でも営業支援活動が行えるようにしたものが普及しつつある。その一例として、特許文献1に挙げた先行技術がある。この先行技術のブロック構成図を図45に示す。ホストマシン2と携帯端末装置3に、企業情報記憶部6a、14を備えており、記憶した営業情報を相互交換可能となるように編成されている。ホストマシン2は、営業支援活動で利用する営業情報を企業情報記憶部6aに保持している。携帯端末装置3は、フロッピー(R)などの外部記憶媒体4を介して、ホストマシン2と同期処理を行い、ホストマシン2の企業情報記憶部6aの営業情報を、携帯端末装置3の企業情報記憶部14に保存する。携帯端末装置3は、企業情報記憶部14を参照することで、単独でも、営業情報を参照し、営業支援活動に利用することが可能である。また、この先行技術を応用して、ホストマシンと携帯端末装置との間を、外部記憶媒体の代わりにネットワークで結び、ホストマシンと携帯端末装置との間で同期処理を行って、ホストマシンの企業情報記憶部に保存された営業情報の一部を携帯端末装置の企業情報記憶部に保存し、携帯端末装置は企業情報記憶部に保存された営業情報を参照することで、オフラインでも営業支援活動を行うことが出来る。
特開平11−175596号公報
しかしながら、この場合、携帯端末装置上には顧客リストなどの営業情報も格納されるため、例えば、携帯端末装置の盗難や紛失によって顧客データが外部に流出する場合や、携帯端末装置を管理する社員が意図的に機密情報を流出する場合など、大きな損害を被る場合があった。また、不正なアプリケーションのなりすましによって、同期処理などが確実に行えない場合があった。また、同期処理が確実に行えたとしても、古いデータをあらかじめコピーしておき、新しいデータとすり替え、削除されるはずの古いデータを参照させて、顧客情報を参照されてしまう場合があった。また、同期処理の際に利用する現在時刻を、端末の時計を戻すことによって、有効期限が切れていないものとして、処理がなされ、有効期限の切れたデータやアプリケーションを使い続けることが可能になるなどの問題に対処できなかった。
この発明はこのような実状に鑑みてなされたものであり、処理の信頼性、確実性、データの安全性、時刻の信頼性の向上を図り、より確実、安全、信頼できるデータの管理を行うことを目的とする。
上記課題を解決するために本発明は、第一に、データの格納、演算を秘匿した状態で実行するセキュアデバイスと情報処理端末によって構成され、セキュアデバイスは、情報処理端末で動作するアプリケーションの起動を制御するアプリケーションであるMTA(Master Trusted Agent)を情報処理端末に対して発行するカード処理モジュールと、MTAを格納するカード記憶装置を備え、情報処理端末は、実データと前記実データの管理を行うデータ管理アプリを格納する記憶装置とを備え、セキュアデバイスから発行された前記MTAを起動して、MTAと前記カード処理モジュールとの間で認証処理を行い、セキュアデバイスによって認証されたMTAがデータ管理アプリを起動し、データ管理アプリが前記セキュアデバイスと認証処理を行い、サーバとの間で実データの同期処理を行う。これにより安全で、信頼性の高いデータ管理が行える。
本発明は、第二に、データ管理アプリは、サーバとの実データの同期処理の内容を記述した目標データを生成決定する目標データ決定手段と、カード記憶装置に格納された目標データに基づき実データに対するサーバとの同期処理を行うデータ同期手段と、カード記憶装置に格納された目標データに基づき、記憶装置に格納された実データの削除を行うデータ削除手段を備え、目標データ決定手段が生成した目標データを、データ管理アプリが備える制御手段が、カード制御手段に送信し、カード制御手段が、カード記憶装置に格納し、カード記憶装置に格納された目標データに基づき、データ同期手段が、サーバとの間で実データの同期処理を行い、データ削除手段が、記憶装置に格納された実データの削除を行う。これにより信頼できるデータ管理アプリが、データの同期処理を行うので、安全で、信頼性の高いデータ管理が行える。
本発明は、第三に、カード記憶装置には、実データの利用可能な期限を示す有効期限情報が格納されており、目標データ決定手段が、有効期限情報を基に、有効期限が過ぎた実データを削除されるべきデータとして目標データに設定する。これにより、データの有効期限を信頼できるデータ管理アプリが管理することで、安全で、信頼性の高いデータ管理が行える。
本発明は、第四に、ダウンロード、アップロード、削除といった同期処理の種類別の優先度と、各同期処理の種類毎のデータの優先度を記述したデータポリシーデータをカード記憶装置に格納し、目標データ決定手段が、データポリシーデータを基に、目標データを生成する。これにより、例えば、機密レベルの高い実データから優先的に削除する設定にしておくことで、データ管理の安全性が向上する。また、サーバが接続するたびに更新するデータを決定し、同期処理を主導的に行う場合に比べ、情報処理端末が目標データを決定し、同期処理を行うので、サーバの負荷が低減できる。
本発明は、第五に、セキュアデバイスが、時刻をカウントするカード時刻カウント手段を備え、MTAの制御手段が、セキュアデバイスのカード時刻カウント手段が示す経過時間と、情報処理端末の時刻カウント手段が示す経過時間を比較することにより、情報処理端末の時刻カウント手段が示す経過時間の正当性を判断し、不正と判断した場合には、情報処理端末で動作中のアプリケーションを停止する。これにより、情報処理端末の時刻の改変による不正行為を防ぐことができる。
本発明は、第六に、MTAの時刻取得手段がネットワーク上のサーバから現在時刻を取得した際に、カード制御手段がカード記憶装置にサーバから取得した現在時刻を格納しておき、MTAが新たに起動した際に、時刻取得手段がネットワーク上のサーバから現在時刻を取得できなかった場合に、カード記憶装置に格納した現在時刻と、情報処理端末の時刻カウント手段が示す現在時刻を、MTAの制御手段が比較することで、情報処理端末の時刻カウント手段が示す現在時刻の正当性を確認し、不正と判断した場合には、情報処理端末で動作中のアプリを停止する。これにより、情報処理端末の時刻の改変による不正行為を防ぐことができる。
本発明は、第七に、MTAのネットワーク上のサーバから現在時刻情報を取得する時刻取得手段が、時刻情報の取得を失敗した場合に、MTAの制御手段は、カード制御手段に失敗したことを通知し、カード制御手段は、失敗回数をカード記憶装置に格納し、許容回数を越えると情報処理端末で動作するアプリを停止する。これにより、情報処理端末の時計の改変による不正行為を防ぐことができる。
本発明は、第八に、データの格納、演算を秘匿した状態で実行するセキュアデバイスと情報処理端末によって構成され、セキュアデバイスは、情報処理端末で動作するアプリケーションの起動を制御するアプリケーションであるMTA(Master Trusted Agent)を情報処理端末に対して発行するカード処理モジュールと、MTAと、実データと、実データの管理を行うデータ管理アプリを格納するセキュア記憶装置を備え、情報処理端末は、セキュアデバイスから発行されたMTAを起動してMTAとカード処理モジュールとの間で認証処理を行い、セキュアデバイスによって認証されたMTAがデータ管理アプリを起動し、データ管理アプリがセキュアデバイスと認証処理を行い、サーバとの間で実データの同期処理を行う。これにより安全で、信頼性の高いデータ管理が行える。
以上説明したように本発明のセキュアデータ管理装置を利用することで、情報処理端末上で動作する、セキュアデバイスと信頼関係のあるアプリケーションを利用することで、同期処理、データの改ざん検出、データの緊急削除、有効期限の切れたデータの削除、データに対する参照、現在時刻の取得や計測を、信頼ある状態で安全かつ確実に行える。
以下、本発明の実施の形態を、図面を参照しながら説明する。
(実施の形態1)
本発明の実施の形態1におけるセキュアデータ管理装置を示すシステム構成を図1に示す。
セキュアデータ管理装置は、端末101、ICカード102、サーバ103から構成されている。セキュアデータ管理装置は、端末101で利用されるデータを、安全に管理するための装置である。端末101は、複数台存在しても良い。
セキュアデータ管理装置の処理概要を図4に示す。
セキュアデータ管理装置は、ICカード102が、信頼できるアプリケーションであるMTA200を端末101上で起動し、さらに、MTA200(Master Trusted Agentの略である。以下では、MTAとする)が端末101上で信頼できるアプリケーションを動作させるという仕組みを利用している。本特許では、端末101上で起動するアプリケーションとして、データ管理アプリ201が起動する(MTA200を利用した信頼できるアプリケーションの起動に仕組みについては後で詳しく説明する)。
データ管理アプリ201は、ICカード102とデータベースサーバが稼動するサーバ103とそれぞれ通信し、端末101上で、端末上のデータの同期を行うアプリケーションである。扱うデータの具体例としては、例えば、端末が営業支援用端末の場合には、顧客リストや、契約情報、価格表などが想定され、端末が情報家電端末の場合には、音楽や動画などのコンテンツなどが想定される。
以下、処理フローについて述べる。
端末101の電源をオンにし、ICカード102を挿入、または、ICカード102が既に装着されていると、まず、端末101によってICカード102のデータ管理カードアプリ301が選択されて、データ管理カードアプリ301が起動する(図4の1))。
すると、データ管理カードアプリ301は端末101にMTA200を発行し、MTA200のコードを受信した端末101では、データ管理カードアプリ301から発行されたMTA200が起動する(図4の2))。MTA200は、データ管理カードアプリ301と認証を行い、信頼できるセッションを確立する(図4の3))。
次に、MTA200は、端末101の状態を調べる。この場合、データ管理アプリ201は、起動していないので、MTA200は、データ管理カードアプリ301に、データ管理アプリ201の発行要求を出す。データ管理カードアプリ301は、MTA200に対して、データ管理アプリ201を発行する(図4の4))。それを受信したMTA200は、データ管理アプリ201を起動する(図4の5))。その際、データ管理アプリ201は、データ管理カードアプリ301と認証を行い、信頼できるセッションを確立する(図4の6))。
起動したデータ管理アプリ201は、必要に応じて、サーバ103との間で、同期の前処理及び同期処理を行う(図4の7))。データ管理アプリ201は、同期の前処理及び同期処理の結果を、データ管理カードアプリ301に対して通知する(図4の8))。
以上が、セキュアデータ管理装置の処理概要である。以上の処理は四つのタイミングで行われる。例えば、1日1回午前9時に行うといった設定をしておき、定期的に行う場合や、端末101でのアプリケーションの動作状況を見てCPU負荷率の低い時に行う場合や、端末101にICカード102を挿入した場合や、ユーザがGUIから同期ボタン(同期処理開始を要求するボタン)を押して処理開始を要求した場合である。
次に、端末101の内部構成について説明する。
端末101は、図1に示すように処理モジュール104、記憶装置105から構成されている。
端末101は、ICカード等のセキュアデバイスを搭載可能な携帯電話、パーソナルコンピュータを想定している。
携帯電話の場合、例えば、端末101の処理モジュール104は、CPUとROMとRAMと、外部と通信するためのアンテナ、RF部、無線通信制御回部、ICカード102と通信するためのスロットを備えている。記憶装置としては、フラッシュメモリなどを備えている。ROMには、OSやJava(R)VMなどのソフトウェアが格納され、それらが、RAMを用いてCPU上で実行されることによって、各種のアプリケーションを実行する処理モジュール104が実現される。
パーソナルコンピュータの場合、端末101の処理モジュール104は、CPUと、記憶メモリと、外部との通信するためのモデムや、ネットワークカード、ICカード102を装着、通信するためのPCIカード、SDカードなどのスロットを備えている。記憶装置としては、HDDを備えている。ROMおよびHDDには、OSやJava(R)VMなどのソフトウェアが格納され、それらが、RAMを用いてCPU上で実行されることによって、各種のアプリケーションを実行する処理モジュール104が実現される。
次に、ICカード102の内部構成について説明する。
ICカード102は、図1に示すようにカード処理モジュール106、カード記憶装置107から構成されている。
ICカード102のカード処理モジュール106は、CPUとROM、RAMと端末と通信するためのホストI/Fから構成され、カード記憶装置107は、EEPROMなどの不揮発性メモリによって構成され、ICカード102は全体として耐タンパ性を備え、外部からICカードの内部に直接アクセスできないようになっている。
サーバ103は、サーバコンピュータ装置であり、アプリケーションとしてデータベースサーバが稼動している。
本発明の実施形態1におけるセキュアデータ管理装置を示すブロック図を図2、3に示す。
図2は、端末101のブロック図である。図3は、ICカード102のブロック図である。
処理モジュール104は、様々なアプリケーション(以下アプリと略す)を実行する機能、ネットワークを通してサーバ103と通信する機能、ICカード102と通信する機能を備えている。
実施の形態1では、処理モジュール104で、アプリとしてMTA200とデータ管理アプリ201を実行する。
MTA200は、ICカード102が信頼できるアプリとして端末101上で動作し、端末101の状態に応じて、アプリの起動、信頼できる時刻の取得、計測を行う。
MTA200は、アプリ操作手段203、調査手段204、制御手段205、時刻取得手段206、時刻カウント手段207、アプリ発行手段218、復号化手段219、データ検証手段220から構成されている。
MTA200については、後で詳しく説明する。
データ管理アプリ201は、MTA200によって起動され、ICカード102が信頼できるアプリとして、端末101上で動作し、サーバ103と通信してデータの同期、端末101上のデータの管理を行う。
データ管理アプリ201は、データ同期手段208、データ削除手段209、データ検証手段210、目標データ決定手段211、調査手段212、制御手段213、暗号化手段214、復号化手段215から構成されている。
記憶装置105は、データを保存するための装置である。
実施の形態1では、記憶装置105は、データ管理アプリ201が管理する実データ216と、データ管理アプリ201の実行コードであるデータ管理アプリデータ217を、保存している。
カード処理モジュール106は、ICカード102上で様々なアプリを実行する機能、端末101と通信する機能を備えている。
実施の形態1では、カード処理モジュール106は、カードアプリとして、データ管理カードアプリ301を実行する。
データ管理カードアプリ301は、アプリ発行手段302、認証手段303、カード制御手段304、カード時刻カウント手段314から構成されている。
カード記憶装置107は、ICカード102上に、データを保存するための装置である。
実施の形態1では、カード記憶装置107に、構成データ305、目標データ306、起動アプリリストデータ307、前回更新日時データ308、MTAデータ309、データポリシーデータ311、鍵データ312、時刻データ313を保存している。
次に、データについて、説明する。
実データ216は、本特許のセキュアデータ管理装置によって安全に管理されるデータのことである。実データ216は、データ管理アプリ201によって管理され、記憶装置105に保存されている時は、暗号化されていて、IDで管理され、複数存在する。データの具体的内容としては、顧客リスト、契約情報、価格表、業務マニュアル、アプリケーションなどのデータである。
データ管理アプリデータ217は、端末101の処理モジュール104上で動作するアプリであるデータ管理アプリ201の起動前のデータ(実行コード)であり、暗号化されて、記憶装置105に保存されている。
構成データ305は、実データ216とデータ管理アプリデータ217に関する情報を記したデータである。構成データ305には、どの実データ216についての情報であるかを示す識別子IDと、実データ216を暗号化する時に利用した鍵を示す情報と、実データ216から算出したハッシュ値と、データの種類を示す種別情報と、その実データ216の有効期限を示す情報と、その実データ216を更新した日時情報と、更新した方法が記されている。
構成データ305の具体例を、図16、17、18、19、20を用いて説明する。
図16は、構成データに記載されている各項目の内容を示している。項目としては、ID、対応鍵番号、ハッシュ値、種別、有効期限、更新日時がある。それぞれの括弧内の数字は、データで表現する場合の値である。
例えば、図17に示すような内容を実際のデータで表現すると、図19になり、図18に示すような内容を実際のデータで表現すると、図20になる。
本実施の形態では、実データ216を端末101の記憶装置105に保存し、構成データ305をICカード102のカード記憶装置107に保存している。
従来、端末101上に保存していたデータを、古いデータとすり替えた場合に、改ざんの検出すらできなかったことに鑑みて、必要最低限のデータのみ、耐タンパなICカード102に保存し、利用することによって、改ざんを検出できる仕組みにしている。
目標データ306は、同期処理の対象となるデータと同期処理の状態を管理するデータであり、同期、削除を行う時に対象となるデータの識別子IDと、処理が完了したかどうかを示す情報と、処理を開始した日時情報と、処理を中断した日時情報と、処理が終了した日時情報とを処理毎に記録したデータである。
目標データ306の具体例を、図21、22、23を用いて説明する。
図21は、目標データに記載されている各項目の内容を示している。項目としては、処理名、実データのID(ここの内容には、処理状況も表現される)、開始日時、中断日時、終了日時がある。それぞれの括弧内の数字は、データで表現する場合の値である。
例えば、図22に示すような内容を実際のデータで表現すると、図23になる。
起動アプリリストデータ307は、端末101が起動している際に、処理モジュール104で起動しておくべきアプリのリストを示すデータである。
また、起動アプリリストデータ307には、緊急時に行うデータの削除を行うべきかどうかを示す緊急削除フラグ情報も示されている。
起動アプリリストデータ307の具体例を、図24、25、26を用いて説明する。
図24は、起動アプリリストデータに記載されている各項目の内容を示している。項目としては、緊急削除フラグ、起動アプリ名がある。それぞれの括弧内の数字は、データで表現する場合の値である。
例えば、図25に示すような内容を実際のデータで表現すると、図26になる。
端末101上で起動すべきアプリをICカード102で管理し、MTA200が、端末101の状態に応じて必要なアプリを起動することで、端末101でのデータ管理のための処理が確実に実行される。
前回更新日時データ308は、目標データ306を前回いつ決定したかを示す日時情報を記すデータである。一度サーバ103から取得した更新情報を接続のたびに、取得しなおさなくてよいため、通信コストの軽減を図ることができる。また、前回からの更新分だけを調べればよいため、目標決定の処理も速く行うことができる。
前回更新日時データ308の具体例を、図27、28、29を用いて説明する。
図27は、前回更新日時データに記載されている各項目の内容を示している。項目としては、前回更新日時がある。それぞれの括弧内の数字は、データで表現する場合の値である。
例えば、図28に示すような内容を実際のデータで表現すると、図29になる。
MTAデータ309は、端末101の処理モジュール104上で動作するアプリであるMTA200の元のデータ(実行コード)である。データ管理カードアプリ301が、MTAデータ309から端末101に対してMTAを発行することによって、MTA200が起動される。
データポリシーデータ311は、各処理の際の実データに対する優先度の情報と、削除と同期のような複数の処理を、同一の実データ216に対して行う衝突状態になった場合の優先基準情報を記すデータである。
データポリシーデータ311の具体例を、図13、14、15を用いて説明する。
図13は、データポリシーデータに記載されている各項目の内容を示している。項目としては、処理名、最優先データ、それ以外の決定基準、削除と更新での目標データ衝突の場合の優先基準、更新と更新での目標データ衝突の場合の優先基準がある。それぞれの括弧内の数字は、データで表現する場合の値である。
データポリシーデータに基づき、複数ある実データ216に対する処理の順番が決定される。例えば、データポリシーデータを、機密レベルの高い実データから優先的に削除する設定にしておくことで、データ管理の安全性が向上する。
また、サーバが接続するたびに更新するデータを決定し、同期処理を主導的に行う場合に比べ、情報処理端末が目標データを決定し、同期処理を行うので、サーバの負荷が低減できる。
例えば、図14に示すような内容を実際のデータで表現すると、図15になる。
鍵データ312は、実データ216を暗号化または復号化するための共通鍵暗号方式に基く暗号鍵である。複数ある場合には、それぞれの鍵に番号を付け、番号で管理している。
時刻データ313には、時刻取得手段206がサーバから取得した時刻情報、または、時刻カウント手段207が、カウントした時刻情報が保存されている。また、時刻データ313には、時刻情報のサーバからの取得に連続して失敗した回数と、その回数の許容最大値が記録されている。
次に、それぞれの手段について説明する。
アプリ操作手段203は、端末101上で、MTA以外のアプリの起動処理を行う手段であり、端末のOSとの間でアプリ発行手段218が発行したアプリの起動処理を行う。
調査手段204は、起動アプリリストデータ307を参照して、起動すべきアプリの現在の状態、起動している、起動していないなどを調べる手段である。
制御手段205は、調査手段204の調査状況報告と、起動アプリリストデータ307を基に起動すべきアプリを決定行う手段である。また、制御手段205は、MTA自体に埋め込まれた認証用の鍵を取得する手段である。また制御手段205は、ネットワークを利用するためにプロバイダ、データベースサーバなどに接続するための手段である。
時刻取得手段206は、ネットワーク上の信頼できる時刻を保持しているサーバから、時刻を取得する手段である。また、時刻取得手段206は、その取得した時刻を、時刻カウント手段207とICカード102に通知する。
時刻カウント手段207は、時刻取得手段206からの通知時刻を基に、現在時刻を計測する手段である。また、時刻カウント手段206は、その計測した時刻を、ICカード102に通知する。
アプリ発行手段218は、端末101上で起動するアプリデータのコードにセッション鍵を埋め込む手段である。
復号化手段219は、鍵データ312を利用して、データを復号化する手段である。
データ検証手段220は、データのハッシュ値を計算し、さらに必要な場合には、構成データ305に記録してあるハッシュ値と比較し、データの改ざんを検証する手段である。
データ同期手段208は、サーバ103と通信し、目標データ306を基に、実データ216、データ管理アプリデータ217、起動アプリリストデータ307、MTAデータ309、データポリシーデータ311、などのデータのアップロード、ダウンロードを行う。また、データ同期手段208は、処理状況をICカード102に通知する。
データ削除手段209は、目標データ306を基に、実データ216、データ管理アプリデータ217の削除を行う。また、データ削除手段209は、処理状況をICカード102に通知する。
データ検証手段210は、データのハッシュ値を計算し、さらに必要な場合には、構成データ305に記録してあるハッシュ値と比較し、実データ216の改ざんを検証する手段である。信頼できるハッシュ値の計算を、端末101上で行えるのは、本特許の特徴の一つである。
目標データ決定手段211は、サーバ103と通信し、前回更新日時データ308と、サーバ103のデータの更新情報と、構成データ305の更新日時データ、有効期限、データポリシーデータ311、目標データ306を基に、ダウンロード、アップロード、削除すべきデータを決定する手段である。また、目標データ決定手段211は、決定した目標データ306をICカード102に通知する。
調査手段212は、端末101の状況情報として、記憶装置105の残り記憶容量、CPU負荷率などを調べ、制御手段213に通知する手段である。
データ管理アプリ201の制御手段213は、調査手段212からの通知情報と、目標データ306に基づき、データ管理アプリ201の動作を決定する手段である。
また、制御手段213は、データ管理アプリ201が備える手段であり、ネットワークを利用するためにプロバイダや、データベースサーバに接続するための手段である。
暗号化手段214は、鍵データ312を利用して、データを暗号化する手段である。
復号化手段215は、鍵データ312を利用して、データを復号化する手段である。
アプリ発行手段302は、端末101上で起動するアプリデータのコードにセッション鍵を埋め込み、アプリを発行する手段である。
認証手段303は、サーバ103、端末101、MTA200、データ管理アプリ201、その他の端末101上で起動するアプリとICカード102のデータ管理カードアプリ301の間で認証を行うための手段である。ICカード102が、サーバ103との間で、SSLセッションを確立する際にも利用する。
カード制御手段304は、ICカード102のカード記憶装置107に保存しているデータの内容を参照、変更、削除する手段である。
カード時刻カウント手段314は、ICカード102で、時刻の経過を計るための手段である。
また、端末101上の同一アプリ内の手段同士はメモリ空間を共有しているため、一部の手段が取得、参照したデータは、どの手段も利用できる。
また、サーバ103、端末101、ICカード102は、認証時に得た鍵を共有し、お互いに通信する場合は、通信路を暗号化している。
また、本特許で説明している時刻情報、日時データなどは、最低でも年月分秒の単位までを表しており、利用用途に応じて、表現単位を変えても良い。
次に、セキュアデータ管理装置で行う処理のフローについて順に説明する。
まず、端末101の動作について説明する。
端末101は、パワーオンするとMTA200が自動的に起動され、データ管理カードアプリ301などのそれ以外のアプリは、MTA200によって起動される。
まず、MTA200の起動フローを図5に示す。
MTA200の起動処理は、端末101のOS、MTAローダ、データ管理カードアプリ301の間で行われる。MTAローダは、ICカード102にMTA200の発行を依頼し、発行されたMTA200の起動を行う端末のアプリである。
パワーオンすると端末101のOSは、MTA200を端末101上にロードするためのMTAローダを起動する(図5の1))。
起動したMTAローダは、データ管理カードアプリ301に対して、MTA200の発行要求を送信する(図5の2))。
データ管理カードアプリ301のアプリ発行手段302は、MTA200の起動後の認証と通信用に、MTAに認証情報を埋め込む(図5の3))。
データ管理カードアプリ301のアプリ発行手段302は、MTAローダに対して、MTAデータを発行する(図5の4))。
MTAローダは、端末101のOSに対して、受信したMTA200の起動要求を出す(図5の5))。
端末101のOSは、MTAデータを受け取り、MTA200を起動する(図5の6))。
起動したMTA200の制御手段205は、埋め込まれた認証情報からセッション鍵を生成する(図5の7))。
MTA200の制御手段205とデータ管理カードアプリ301の認証手段303は、データ管理カードアプリ301が同様に認証情報からセッション鍵を生成し、その生成したセッション鍵を利用して、認証を行う(図5の8))。
以上が、MTA200の起動フローである。
MTA200以外の端末101上で起動するアプリの起動パターンとしては、MTA200の判断で起動する場合と、ユーザの要求によって起動する場合がある。
MTA200の判断に基づくアプリ起動フローを図6に示す。
この場合の処理は、MTA200とデータ管理カードアプリ301の間で行われる。
MTA200の制御手段205は、データ管理カードアプリ301のカード制御手段304に起動アプリリストデータ307を要求する(図6の1))。
データ管理カードアプリ301のカード制御手段304は、記憶装置107に保存している起動アプリリストデータ307を参照し、MTA200の制御手段205に起動アプリリストデータ307を送信する(図6の2))。
MTA200の調査手段204は、端末101の処理モジュール104で現在起動中のアプリを調べ、起動アプリリストデータ307に記されているアプリの起動状態を調べる。その結果、MTA200のアプリ操作手段203は、起動アプリリストデータ307に記されていて、現在起動していないアプリを、起動すべきアプリとして、起動処理を開始する(図6の3))。
MTA200の制御手段205は、データ管理カードアプリ301のカード制御手段304に、起動するアプリを復号化するための鍵と、改ざんを検出するためのハッシュ値を記載している構成データ305を要求する(図6の4))。
データ管理カードアプリ301のカード制御手段304は、構成データ305と、構成データ305に記載されている鍵番号を参照し、参照した鍵番号を基に鍵データ312を参照し、MTA200の制御手段205に、起動するアプリを復号化するための鍵と、改ざんを検出するためのハッシュ値が記載されている構成データ305を送信する(図6の5))。
MTA200の復号化手段219は、鍵データ312を利用して、アプリデータを復号化する(図6の6))。
MTA200のデータ検証手段220は、アプリデータからハッシュ値を計算し、構成データ305に記載されているハッシュ値と比較し、アプリデータの改ざんをチェックする(図6の7))。
MTA200のアプリ発行手段218は、認証用のセッション鍵を生成し、アプリデータに埋め込み、アプリを発行する。そして、MTA200の制御手段205は、生成した認証用のセッション鍵を、データ管理カードアプリ301のカード制御手段304に渡す(図6の8))。
MTA200のアプリ操作手段203は、発行されたアプリの起動処理を行う(図6の9))。
起動したアプリの制御手段(データ管理アプリ201の場合ならば、制御手段213のこと)は、埋め込まれたセッション鍵を取得し、データ管理カードアプリ301の認証手段303との間で、セッションを確立する(図6の10))。
セッションを確立したアプリの制御手段は、その後の処理に必要な暗号鍵、復号鍵などのデータをデータ管理カードアプリ301のカード制御手段304に対して、要求し取得する(図6の11))。尚、アプリデータに埋め込むセッション鍵を生成するのは、アプリ発行手段302が行い、図6の5)で、制御手段205に渡しても良い。
また、MTA200によって起動されたアプリケーションは、ICカード102とのセッションが確立している間は、正常に動作し、ICカード102が抜かれるなどして、セッションが確立していない場合には、調査手段212が検知し、アプリケーションを終了する。
以上がMTA200の判断に基づくアプリ起動フローである。
また、端末101は、ユーザによる要求操作に基づいてアプリを起動する場合もある。
ユーザの要求に基づくアプリ起動フローを図7に示す。
この場合の処理は、ユーザが利用するGUIなどのインターフェースとMTA200とデータ管理カードアプリ301の間で行われる。
ユーザはGUIなどを通して、MTA200のアプリ操作手段203に対して、起動したいアプリの起動を要求する(図7の1))。
MTA200の制御手段205は、データ管理カードアプリ301のカード制御手段304に、起動するアプリを復号化するための鍵と、改ざんを検出するためのハッシュ値を記した構成データ305を要求する(図7の2))。
データ管理カードアプリ301のカード制御手段304は、構成データ305と、構成データ305に記載されている鍵番号を参照し、参照した鍵番号を基に鍵データ312を参照し、MTA200の制御手段205に、起動するアプリを復号化するための鍵と、改ざんを検出するためのハッシュ値が記載されている構成データ305を送信する(図7の3))。
MTA200の復号化手段219は、鍵データ312を利用して、アプリデータを復号化する(図7の4))。
MTA200のデータ検証手段220は、アプリデータからハッシュ値を計算し、構成データ305に記載されているハッシュ値と比較し、アプリデータの改ざんをチェックする(図7の5))。
MTA200のアプリ発行手段218は、認証用のセッション鍵を生成し、アプリデータに埋め込み、アプリを発行する(図7の6))。
MTA200のアプリ操作手段203は、発行されたアプリの起動処理を行う(図7の7))。
起動したアプリの制御手段は、埋め込まれたセッション鍵を取得し、データ管理カードアプリ301の認証手段303との間で、セッションを確立する(図7の8))。
セッションを確立したアプリの制御手段は、その後の処理に必要な暗号鍵、復号鍵などのデータをデータ管理カードアプリ301のカード制御手段304に対して、要求し取得する(図7の9))。ここでいう制御手段とは、データ管理アプリ201の場合では、制御手段213のことである。尚、アプリデータに埋め込むセッション鍵を生成するのは、アプリ発行手段302が行い、図7の3)で、制御手段205に渡しても良い。
以上がユーザの要求に基づくアプリ起動フローである。
起動アプリリストデータ307には、データ管理アプリ201が、起動すべきアプリとして記載されており、データ管理アプリ201は、MTA200によって起動され、常に起動状態にある。
データ管理アプリ201は、実データ216などのデータの同期処理を行う場合、サーバに接続する。
サーバへの接続フローを図8に示す。
この場合の処理は、データベースサーバが稼動しているサーバ103とデータ管理アプリ201とデータ管理カードアプリ301の間で行われる。
データ管理アプリ201の制御手段213は、サーバとの接続を行うためのURLなどの情報をデータ管理カードアプリ301のカード制御手段304に要求し、取得する(図8の1))。
データ管理アプリ201の制御手段213は、取得した情報を基にサーバと接続する(図8の2))。
サーバとデータ管理カードアプリ301の認証手段303は、SSLセッションを確立する(図8の3))。
確立したセッションを利用して、サーバと端末101は、は通信することができる(図8の4))。
以上が、接続のフローである。
データ管理アプリ201は、データベースサーバと接続したのちに、同期処理を行う対象となるデータを、目標データ306に挙げる。
目標データ306を決定するためのフローを図9に示す。
この場合の処理は、サーバ103とデータ管理アプリ201とデータ管理カードアプリ301の間で行われる。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301のカード制御手段304に対して、同期処理に必要な情報を要求する(図9の1))。
データ管理カードアプリ301のカード制御手段304は、カード記憶装置107を参照して、前回更新日時データ308、目標データ306、構成データ305、データポリシーデータ311を、データ管理アプリ201の制御手段213に応答として返す(図9の2))。
データ管理アプリ201の目標データ決定手段211は、更新データ一覧をサーバから取得する。更新データ一覧には、三種類ある。一つには、前回更新日時以後に更新されたデータのID一覧と、その更新日時と、データサイズで構成される場合、一つには、削除要求と、データのIDの一覧で構成される場合、一つには、緊急削除要求で構成される場合である。また、緊急削除要求には、二種類あり、一つには、要求のみの場合、一つには、緊急削除要求と、データのID一覧の場合がある。(図9の3)。緊急削除の詳細については、後述する)。
次に、データ管理アプリ201の調査手段212は、端末101の記憶装置105を調べ、残り記憶容量を取得する(図9の4))。
データ管理アプリ201の目標データ決定手段211は、前回更新日時データ308と、構成データ305の更新日時を比較し、前回更新日時以後に、更新されたものを、サーバ103へ送信する候補一覧として挙げる(図9の5))。
データ管理アプリ201の目標データ決定手段211は、サーバ103からダウンロードする候補、サーバ103にアップロードする候補、削除する候補それぞれについて、データポリシーデータ311に基づき、候補を処理順に並べる。最優先データに記されているIDを先頭にし、それ以外の決定基準に基づき、それ以外の候補を処理順に並べる(図9の6))。
データ管理アプリ201の目標データ決定手段211は、サーバ103からダウンロードする候補、サーバ103にアップロードする候補、削除する候補のうち、複数に候補として挙がっており、衝突しているIDを検出する(図9の7))。
データ管理アプリ201の目標データ決定手段211は、データポリシーデータ311の衝突時の優先度に基づき、衝突しているIDに対する処理を決定する(図9の8))。
データ管理アプリ201の目標データ決定手段は、構成データ305とサーバ103から取得した更新データ一覧のIDを比較し、構成データ305として存在しないデータを新規ダウンロード候補として列挙し、サーバ103からダウンロードする候補の処理順の早いIDから順にデータサイズを加算していき、残り記憶容量内に収まるIDまでに絞り込む(図9の9))。
データ管理アプリ201の目標データ決定手段211は、候補一覧から既に、目標データ306に挙がっているIDを排除する(図9の10))。
以上の処理を行うとダウンロード、アップロード、削除の目標データ306が決定する。
データ管理アプリ201の目標データ決定手段は、決定した目標データ306と、新規データリストをデータ管理カードアプリ301に通知する(図9の11))。
データ管理カードアプリ301のカード制御手段304は、ICカード102のカード記憶装置107に保存している目標データ306を更新する(図9の12))。
データ管理カードアプリ301のカード制御手段304は、ICカード102のカード記憶装置107に新規データリストに挙がっているIDの構成データ305を用意する(図9の13))。
データ管理カードアプリ301のカード制御手段304は、ICカード102のカード記憶装置107に保存している前回更新日時データ308を更新する(図9の14))。
データ管理カードアプリ301のカード制御手段304は、データ管理アプリ201の制御手段213に目標データ決定終了を通知し、目標データ306を決定する処理を終了する(図9の15))。
最優先データ、それ以外の決定基準、衝突時の優先度について、図13、14を参照しながら、具体的に説明をしておく。
削除処理の候補として、IDが587,107,089,007,003,002のデータがリストアップされた場合、図14に示すデータポリシーデータに基づくと、削除については、001と003が、削除候補に挙がっている場合には、優先的に早く削除するように目標データの先頭に挙げることになるので、削除順の先頭は、003となる。
次に、それ以外の決定基準について見てみると、IDの小さい順となっているので、ID002、007、089、107、587という順に処理順を決定して行く。その結果、削除候補に挙がっているIDの処理順は、003、002、007、089、107、587となる。
衝突時の優先度は、図13では、削除と更新での目標データの衝突の場合の優先基準、更新と更新での目標データの衝突の場合の優先基準と表示しているデータであり、削除目標候補と更新目標候補の両方に挙がり、両方を行うことはできない場合に、どちらを優先するかを決める基準である。図14ならば、削除と更新の場合には、削除優先であるから、更新する候補からは、排除して、削除目標のみ対象となるデータのIDを挙げる。更新と更新の場合には、新規優先なので、サーバから得た更新日時と、対象となるデータに対応する構成データ305の更新日時を比較してサーバ側データが新しい場合には、ダウンロードの目標に挙げ、端末側が新しいならば、アップロードの目標に挙げる。
削除の候補として、003、002、007、089、107、587が挙がっており、ダウンロードの候補として、005、002、055、107、258が挙がっている場合について説明する。
図14に基づくと削除と更新(ダウンロード)では、削除優先なので、削除候補は、変わらない。ダウンロードの候補は、002と107が排除され、005、055、258となる。
以上が、目標データ306を決定するためのフローである。
同期処理の目標データ306が、決定するとデータ管理アプリ201は、同期の処理を開始する。
データ同期処理のフローを図10に示す。
この場合の処理は、サーバ103とデータ管理アプリ201とデータ管理カードアプリ301の間で行われる。
データ管理アプリ201の制御手段213は、同期処理を行うために必要な情報を、データ管理カードアプリ301に要求する(図10の1))。
データ管理カードアプリ301のカード制御手段304は、目標データ306のダウンロード、アップロード、削除の目標になっているデータのIDを参照する(図10の2))。
データ管理カードアプリ301のカード制御手段304は、目標データ306のダウンロードするデータのIDに対応する暗号鍵を決定し、鍵データ312を参照する。(図10の3))。
データ管理カードアプリ301のカード制御手段304は、目標データ306のアップロードするデータの改ざん検出に利用するハッシュ値が記載された構成データ305を参照する。そして、また構成データ305を参照し、実データ216を復号するための鍵を鍵データ312から参照する(図10の4))。
データ管理カードアプリ301のカード制御手段304は、データ管理アプリ201に、ダウンロードデータのIDリスト、アップロードするデータのIDリスト、削除するデータのIDリスト、暗号化するための鍵、復号化するための鍵、構成データ305を応答として返す(図10の5))。
応答を返した後に、データ管理カードアプリ301のカード制御手段304は、新たにダウンロードする実データ216のIDに対応する構成データ305の対応鍵番号を更新する(図10の6))。
応答を受けたデータ管理アプリ201の制御手段213は、ダウンロード、アップロード、削除のいずれかの処理を、適宜開始する。ここでは、ダウンロード、アップロード、削除全ての処理について述べる。
ダウンロードする場合、データ管理アプリ201のデータ同期手段208は、データのIDを指定して、ダウンロードするデータをサーバ103へ要求し、サーバ103からデータをダウンロードする(図10の7))。この際に、データの更新日時、有効期限もダウンロードする。
データ管理アプリ201のデータ検証手段210は、ダウンロードしたデータのハッシュ値を計算する(図10の8))。
データ管理アプリ201の暗号化手段214は、IDに対応する暗号化するための鍵で、ダウンロードしたデータを暗号化する(図10の9))。
データ管理アプリ201の制御手段213は、暗号化した実データ216を端末101の記憶装置105に保存する(図10の10))。
データ管理アプリ201制御手段は、データ管理カードアプリ301のカード制御手段304に、処理結果と、保存したデータのIDと、そのハッシュ値、更新日時、有効期限を通知し、通知を受けたデータ管理カードアプリ301のカード制御手段304は、目標データ306を参照して、まだダウンロードすべきデータがあるかどうかを判断する(図10の15))。
データ管理カードアプリ301のカード制御手段304は、目標データ306において、ダウンロードした実データ216の処理状態を「済み」の状態に更新する(図10の16))。
データ管理カードアプリ301のカード制御手段304は、ダウンロードしたデータのIDに対応する構成データ305のハッシュ値と、更新日時を更新する(図10の17))。
ダウンロードすべきデータが、目標データ306に無い場合は目標データ306の終了日時を更新する(図10の18))。
データ管理カードアプリ301のカード制御手段304は、サーバ103にダウンロードの処理が終了したことと、ダウンロードしたデータのIDを報告する(図10の19))。
アップロードする場合には、データ管理アプリ201の復号化手段215は、実データ216のIDに対応する復号化するための鍵で、アップロードするデータを復号化する(図10の11))。
データ管理アプリ201のデータ検証手段210は、アップロードするデータのハッシュ値を計算し、データ管理カードアプリ301から取得したハッシュ値と比較して、改ざんされていないかを検証する(図10の12))。
従来であると、ハッシュ値の計算を行うアプリ自体に改変を加えられ、ハッシュ値自体が信用できない場合があったが、MTA200によって起動した信頼できるデータ管理アプリ201のデータ検証手段210が、ハッシュ値の計算を行うため、データの検証結果を信頼することができる。
データ管理アプリ201のデータ同期手段208は、実データ216のIDを指定して、サーバ103へデータをアップロードする(図10の13))。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301のカード制御手段304に、処理結果とアップロードした実データ216のIDを通知し、通知を受けたデータ管理カードアプリ301のカード制御手段304は、目標データ306を参照して、まだアップロードすべきデータがあるかどうかを判断する(図10の15)’)。
データ管理カードアプリ301のカード制御手段304は、目標データ306において、アップロードした実データ216の処理状態を「済み」の状態に更新する(図10の16))。
アップロードすべきデータが、目標データ306に、無い場合は目標データ306の終了日時を更新する(図10の18))。
データ管理カードアプリ301のカード制御手段304は、サーバ103にアップロードの処理が終了したことと、アップロードした実データ216のIDを報告する(図10の19))。
削除する場合は、データ管理アプリ201のデータ削除手段209は、目標データ306に挙がっているIDに対応する実データ216を端末101の記憶装置105から削除する(図10の14))。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301に、処理結果と削除した実データ216のIDを通知し、通知を受けたデータ管理カードアプリ301のカード制御手段304は、目標データ306を参照して、まだ削除すべきデータがあるかどうかを判断する(図10の15)’’)。
データ管理カードアプリ301のカード制御手段304は、目標データ306において、削除した実データ216データの処理状態を「済み」の状態に更新する(図10の16))。
削除する目標データ306がまだある場合は処理を継続し、無い場合は目標データ306の終了日時を更新する(図10の18))。
データ管理カードアプリ301のカード制御手段304は、サーバ103に削除の処理が終了したことを通知する(図10の19))。尚、削除した実データ216のIDを報告しても良い。また、処理の終了時には、データ管理アプリ201がメモリ上に保持している鍵データ、構成データなどの機密情報は、メモリ上から消去する。
尚、図10の16)〜19)の処理は、ダウンロード、アップロード、削除それぞれについて、行われる。
以上が、データの同期処理のフローである。
また、今までの利用していた複数の端末の内、今まで利用していたユーザが無効になった場合や、端末を紛失した場合や、端末の不正利用を検出した場合に、端末の保存している実データ216を緊急に削除する必要がでてくる。
データの緊急削除時のフローを図11に示す。
この場合の処理は、サーバ103とデータ管理アプリ201とデータ管理カードアプリ301の間で行われる。
サーバ103が、データを緊急に削除すべきと判断する(図11の1))。
サーバ103は、データ管理アプリ201の目標データ306決定手段に緊急削除命令を出す(図11の2))。
緊急削除命令のパターンとしては、2パターンある。一つには、緊急削除命令のみを出す場合である。そして、一つには、緊急削除命令と削除するデータのIDリストを出す場合である。
緊急削除命令だけの場合には、命令を受けたデータ管理アプリ201の目標データ決定手段211は、データ管理カードアプリ301のカード制御手段304に構成データ305と、データポリシーデータ311を要求し、緊急削除目標と処理順を決定する(図11の3))。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301のカード制御手段304に対して、緊急削除の通知と、目標データ306の通知を行う(図11の4))。
データ管理カードアプリ301のカード制御手段304は、目標データ306を更新し、緊急削除目標を追加する(図11の5))。
データ管理カードアプリ301のカード制御手段304は、緊急削除の情報を、起動アプリリストデータに追加する(図11の6))。
データ管理カードアプリ301のカード制御手段304は、鍵データ312を削除する(図11の7))。
一方、データ管理カードアプリ301に通知を行った後に、データ管理アプリ201のデータ削除手段209は、緊急削除を開始する(図11の8))。
データ管理アプリ201のデータ削除手段209は、緊急削除の目標となるIDに対応するデータを端末101の記憶装置105から削除する(図11の9))。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301のカード制御手段304に、処理結果と削除したデータのIDを通知し、通知を受けたカード制御手段304は、目標データ306を参照して、まだ削除すべきデータがあるかどうかを判断する(図11の10))。
データ管理カードアプリ301のカード制御手段304は、目標データ306において、削除した実データ216の処理状態を「済み」の状態に更新する(図11の11))。
データ管理カードアプリ301のカード制御手段304は、必要に応じて構成データ305自体を削除する(図11の12))。
緊急削除する目標データ306が無い場合は、目標データ306の終了日時を更新する(図11の13))。
データ管理カードアプリ301のカード制御手段304は、起動アプリリストデータ307から、緊急削除フラグの情報を、必要に応じて適宜削除(具体例では、OFFに)する(図11の14))。
データ管理カードアプリ301のカード制御手段304は、サーバ103に緊急削除の処理が終了したことと、削除したデータのIDを報告する(図11の15))。この場合、データを削除する方法としては、全ての削除対象領域に、1、0など意味の無いデータを書き込むことまで行うとより効果的である。
また、緊急削除処理の際に、ICカード102が抜かれた場合でも削除は続行する。その後、削除を行うアプリが、停止させられても、再びICカード102を挿入したならば、起動アプリリストデータ307の緊急削除フラグがONになっているため、データを削除し始める。
以上が、緊急削除時のフローである。
また、実データ216には、利用できる有効期限がついており、有効期限が切れたデータをデータ管理アプリ201が、削除することもある。
有効期限切れデータの削除のフローを図12に示す。
この場合の処理は、データ管理アプリ201とデータ管理カードアプリ301の間で行われる。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301に要求し、構成データ305を取得する(図12の1))。
データ管理アプリ201の目標データ306決定手段は、構成データ305の有効期限情報と現在の日時情報を比較し、有効期限の切れている実データ216のIDを、削除するデータとして挙げる(図12の2))。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301に目標データ306を通知する(図12の3))。
データ管理カードアプリ301のカード制御手段304は、目標データ306を更新する(図12の4))。
データ管理アプリ201のデータ削除手段209は、削除の目標となるIDに対応するデータを端末101の記憶装置105から削除する(図12の5))。
データ管理アプリ201の制御手段213は、データ管理カードアプリ301に、処理結果と削除したデータのIDを通知する(図12の6))。
データ管理カードアプリ301のカード制御手段304は、目標データ306の削除したIDの処理状態を「済み」にする(図12の7))。
データ管理カードアプリ301のカード制御手段304は、必要に応じて構成データ305自体を削除する(図12の8))。
削除する目標データ306がまだある場合は処理を継続し、無い場合は目標データ306の終了日時を更新する(図12の9))。
以上が有効期限切れデータの削除のフローである。
また、実データ216が、顧客リストデータ、契約情報などの実データは、データ管理アプリ201によって内容を参照され端末101のディスプレイに表示される。
実データ216の参照のフローについて説明する。
この場合の処理は、データ管理アプリ201とデータ管理カードアプリ301の間で行われる。
データ管理アプリ201の制御手段213は、ユーザ操作もしくは、他のアプリからの参照要求と、参照したい実データ216のIDを受信し、データ管理カードアプリ301のカード制御手段304にIDに対応する復号鍵とハッシュ値を記載している構成データ305を要求する。
データ管理カードアプリ301のカード制御手段304は、要求された実データ216のIDに対応する構成データ305を参照し、更に対応鍵番号を参照する。
データ管理カードアプリ301のカード制御手段304は、対応鍵番号に対応した鍵データ312を参照する。
データ管理カードアプリ301のカード制御手段304は、データ管理アプリ201に、復号化するための鍵と、ハッシュ値が記載されている構成データ305を応答として返す。
データ管理アプリ201の復号化手段215は、実データ216のIDに対応する復号化するための鍵で、実データ216を復号化する。
データ管理アプリ201のデータ検証手段210は、実データ216のハッシュ値を計算し、データ管理カードアプリ301から取得した構成データ305のハッシュ値と比較して、改ざんされていないかを検証する。これによって実データ216を参照することができる。
この時、データ管理アプリ201は、参照要求を出した相手に応じて、参照するデータの範囲に制限をかけたり、ユーザIDや時刻情報を電子透かしとして入れても良いし、印刷、保存など、参照後のデータに対する処理に制限をかけても良い。
以上が実データ216の参照フローである。
また、本発明の実施の形態1では、時刻を比較する際の現在時刻は、以下の仕組みを利用して信頼できる正しい時刻を取得している。
信頼できる時刻の取得と保存のフローを図30に示す。
この場合の処理は、サーバ103とMTA200とデータ管理カードアプリ301と端末101上で動作しているアプリの間で行われる。
サーバ103は、ネットワーク上の信頼できる時刻サーバと時刻を同期しており、正確な時刻情報を端末に提供する。本実施形態では、サーバ103が、端末101に時刻情報を提供するとしたが、同様に時刻情報を提供する機能を備えたサーバまたは時刻サーバから時刻情報を受信するようにしても良い。
MTA200は、最初、起動するとサーバとSSLの通信セッションを確立することで、サーバが正しい時刻情報を提供するサーバであることを認証し、セキュアセッションを確立する(図30の1))。
MTA200の時刻取得手段206は、サーバから時刻情報を取得する(図30の2))。
MTA200の時刻カウント手段207は、経過時間を計測し、取得した時刻情報と、合わせて、現在時刻を算出する(図30の3))。MTA200の時刻カウント手段207は、電源がオフされてMTA200が終了するまで時刻をカウントし続ける。時刻カウント手段207がカウントする時刻はユーザが変更したり、他のアプリケーションが変更したりすることは出来ない。信頼できるMTA200によって時刻がカウントされ続けるので、端末101は常に正しい正確な時刻を保つことができる。
端末101上で起動中のデータ管理アプリ201やその他のアプリケーションは、現在時刻を利用する場合には、MTA200に問い合わせることで、信頼できる時刻を取得する(図30の4))。
また、MTA200は、サーバから取得した時刻や、カウントした時刻をデータ管理カードアプリ301のカード制御手段304に通知する(図30の5))。
データ管理カードアプリ301のカード制御手段304は、通知された時刻をカード記憶装置107に時刻データ313として保存する(図30の6))。
また、データ管理カードアプリ301への時刻情報の通知タイミングは、三種類ある。一つは、サーバから時刻情報を取得した直後であり、一つは、一時間に一回のような定期的なタイミングであり、一つは、他のアプリから時刻取得要求を受けるようなイベント発生時でもある。
保存した時刻データの利用法としては、次のような方法がある。
一旦、端末101の電源をオフにし、次回、起動した時に、サーバから時刻情報が取得できなかった場合に、MTA200は、端末101の時刻をICカード102に保存した時刻を用いて検証する。端末の時刻がカード記憶装置107の時刻データ313が示す時刻よりも過去であった場合、MTA200の制御手段205は、時刻が不正に変更されたと判定し、データ管理アプリなどのアプリを起動しない。このようにすることで、時間を前に戻すことで、有効期限の切れた実データ216や、アプリを、不正に利用する行為を防ぐことができる。
また、端末の時刻がカード記憶装置107の時刻データ313が示す時刻よりも未来であった場合も、その差が予め設定した閾値よりも大きい場合には、MTA200の制御手段205は、時刻が不正に変更されたと判定し、サーバに接続して改めて時刻情報が取得されない限り、オフライン状態ではデータ管理アプリなどのアプリを起動しない。このようにすることで、時間を進めることでまだ利用可能になっていない実データ216や、アプリを、不正に利用する行為を防ぐことができる。
また、時刻データ313には、時刻情報のサーバからの取得に連続して失敗した回数と、その回数の許容最大値が記録されている。連続して失敗した回数は、サーバからの時刻情報が取得に失敗すると1カウントアップし、サーバから時刻情報が取得されるとゼロにリセットされる。その回数が許容最大値を超えると、MTA200はデータ管理アプリ等のアプリを起動しないようになる。
時刻情報の取得に失敗すると、MTAは端末101の画面にメッセージを表示するなどしてユーザに通知し、オンライン状態にすることをユーザに促す。このようにすることで、ある頻度で端末101とサーバとをオンラインにして、端末101上のデータと時刻をサーバと同期が取れた状態に保つようにすることも可能である。
また、計測した経過時間が、実際の経過時間より遅くなるように端末101のクロックを不正に改造する場合が考えられるが、そのような場合の対処法としては、下記の二つの方法がある。
一つには、ネットワーク上のサーバから取得できる時刻を利用する場合である。まず、時刻取得手段206は、サーバから時刻情報を取得する。時刻カウント手段207は、予め決めた時間、例えば1分として、時刻を図る。時刻カウント手段207が計った時間で、1分経過した後に、時刻取得手段206は、サーバから時刻情報を取得する。時刻取得手段206の取得した時刻の差分が2分であったとして、予め決めた時間が1分であったので比較すると、実際の経過時間が2倍早いことが分かるので、時刻カウント手段207の時刻の計り方に補正をかけ、時刻カウント手段207の計測した経過時間の2倍が実際の経過時間であるとして、時刻カウント手段207が、時刻の経過を正確に計ることが可能になる。また、経過時間に差があった場合、不正な端末であると判断し、アプリの利用を停止、終了する対処法もある。
一つには、ICカード102を利用することによってオフラインでも、正確な時刻の経過を計る方法が考えられる。時刻カウント手段207は、予め決めた時間、例えば1分として、時刻をカウントする。同時に、制御手段205は、カード時刻カウント手段314に、時刻のカウントの開始を要求する。時刻カウント手段207が計測した時間で、あらかじめ決めた時間である1分が経過した後に、制御手段205は、カード時刻カウント手段314に、経過時刻を要求する。カード時刻カウント手段314の計測した経過時刻が2分であったとすると、予め決めた時間(ここでの1分)を比較することによって、時刻カウント手段207の計測した時間を2倍した時間が、実際の経過時間であると分かるので、時刻カウント手段207の時刻の計り方に補正をかけるにより、時刻カウント手段207の計測した経過時間の2倍が実際の経過時間であるとして、オフラインでも、時刻カウント手段207が、時刻の経過を正確に計ることが可能になる。また、この場合、カード時刻カウント手段314に、計測時間(ここでの1分)をセットし、カード時刻カウント手段314からの計測終了通知を受けた後に、補正をかける方法もある。また、この場合も、経過時間に差があった場合、不正な端末であると判断し、アプリの利用を停止、終了する対処法もある。
(実施の形態2)
本発明の実施の形態2におけるセキュアデータ管理装置を示すシステム構成を図31に示す。
実施の形態2では、カードとして、セキュアデータ管理カード3001を利用する。セキュアデータ管理カード3001は、通常のICカード102に比べて、大きな記憶容量をもっているカードである。実施の形態2では、実施の形態1において、端末101の記憶装置105に保存していたデータを、セキュアデータ管理カード3001に保存する。
セキュアデータ管理装置は、端末101、セキュアデータ管理カード3001、サーバ103から構成されている。セキュアデータ管理装置は、端末101で利用するデータを、安全に管理するための装置である。
セキュアデータ管理装置の処理概要を図34に示す。
セキュアデータ管理装置の利用目的概要については実施の形態1と同様である。
以下、処理フローについて述べる。
端末101の電源をオンにし、セキュアデータ管理カード3001を挿入、または、既に装着されていると、まず、セキュアデータ管理カード3001で、データ管理カードアプリ3301が起動する(図34の1))。
端末101では、データ管理カードアプリ3301から発行された、MTA3200が起動する(図34の2))。MTA200は、データ管理カードアプリ3301と認証を行い、信頼できるセッションを確立する(図34の3))。
MTA3200は、端末101の状態を調べる。この場合、データ管理アプリ3201は、起動していないので、MTA3200は、データ管理カードアプリ3301に、データ管理アプリ3201の発行要求を出す。データ管理カードアプリ3301は、MTA3200に対して、データ管理アプリ3201を発行する(図34の4))。それを受け取ったMTA3200は、データ管理アプリ3201を起動する(図34の5))。その際、データ管理アプリ3201は、データ管理カードアプリ3301と認証を行い、信頼できるセッションを確立する(図34の6))。
起動したデータ管理アプリ3201は、必要に応じて、サーバ103との間で、同期の前処理及び同期処理を行う(図34の7))。データ管理アプリ201は、同期の前処理結果、同期処理の結果、同期処理で得たデータを、データ管理カードアプリ3301に対して通知する(図34の8))。データ管理カードアプリ3301は、同期によって得たデータに対する更新、削除などの処理を行う(図34の9))。
データ管理カードアプリ3301は、処理結果に基づき、状況情報を更新する(図34の10))。処理タイミングについては、実施の形態1と同様である。
以上が、セキュアデータ管理装置の処理概要である。
端末101の構成は、実施の形態1と同様である。
セキュアデータ管理カード3001は、カード処理モジュール3002、セキュア記憶装置3003、カード記憶装置3004から構成されている。サーバ103は、実施の形態1と同様である。
本発明のより具体的なハードウェア構成について述べる。
端末101の内部構成は、実施の形態1と同様である。
セキュアデータ管理カード3001のセキュア記憶装置3003、カード記憶装置3004は、耐タンパ性を持つなど外部からの直接参照が困難な記憶領域で、例えばEEPROMなどで実装される。
次に、セキュアデータ管理カード3001の内部構成について説明する。
セキュアデータ管理カード3001は、図31に示すようにカード処理モジュール3002、セキュア記憶装置3003、カード記憶装置3004から構成されている。
セキュアデータ管理カード3001のカード処理モジュール3002は、CPUとROM、RAMと端末と通信するためのホストI/Fから構成され、セキュア記憶装置3003、カード記憶装置3004は、EEPROMなどの不揮発性メモリによって構成され、セキュアデータ管理カード3001は全体として耐タンパ性を備えている。セキュア記憶装置3003へのアクセスは、カード処理モジュール3002を介してのみ行える。セキュア記憶装置3003に記録されるデータは、暗号化されており、参照する際に復号化される。暗号化、復号化は、セキュアデータ管理カード3001のファイルシステムが、行うため、鍵に関する管理を行う必要はない。
本発明の実施の形態2におけるセキュアデータ管理装置を示すブロック図を図32、33に示す。
図32は、端末101の機能ブロック図である。図33は、セキュアデータ管理カード3001の機能ブロック図である。
処理モジュール104の機能は、実施の形態1の場合の機能とほぼ同様である。異なる点は、ICカード102ではなく、セキュアデータ管理カード3001と通信する機能を備えていることである。
実施の形態2では、処理モジュール104で、アプリとしてMTA3200とデータ管理アプリ3201を実行する。
MTA3200の機能の概要については、実施の形態1のMTA200と同様である。処理フローが多少変わるため、詳細は後述する。
MTA3200は、アプリ操作手段3203、調査手段3204、制御手段3205、時刻取得手段3206、時刻カウント手段3207から構成されている。
データ管理アプリ3201の概要については、実施の形態1のデータ管理アプリ201と同様である。データ管理アプリ201と異なる点は、実データ216の保存場所が、端末101の記憶装置105ではなくなったことによる、処理フローの変化である。詳しくは後述する。
データ管理アプリ3201は、データ同期手段3208、目標データ決定手段3211、調査手段3212、制御手段3213から構成されている。
記憶装置105の機能は、実施の形態1と同様である。
実施の形態2では、記憶装置105には、特にデータを保存しない。
カード処理モジュール3002は、実施の形態1のカード処理モジュール106と同様の機能を備えている。
実施の形態2では、カード処理モジュール3002は、アプリとして、データ管理カードアプリ3301を実行する。
データ管理カードアプリ3301は、アプリ発行手段3302、認証手段3303、カード制御手段3304、データ削除手段3305、カード時刻カウント手段3314から構成されている。
カード記憶装置3004は、セキュアデータ管理カード3001上に、データを保存するための装置である。端末101側から直接アクセスできることが特徴である。
カード記憶装置3004には、データを保存しない。
セキュア記憶装置3003は、セキュアデータ管理カード3001上に、データを保存するための装置である。カード処理モジュール3002を介してのみ、アクセスできることが特徴である。
実施の形態2では、セキュア記憶装置3003には、構成データ3306、実データ216、データ管理アプリデータ217、目標データ306、起動アプリリストデータ307、前回更新日時データ308、MTAデータ309、データポリシーデータ311、鍵データ312、時刻データ313を保存している。
実データ216、データ管理アプリデータ217、目標データ306、起動アプリリストデータ307、前回更新日時データ308、MTAデータ309、データポリシーデータ311、鍵データ312、時刻データ313については、実施の形態1と同様である。
構成データ3306は、実施の形態1の構成データ305とほぼ同様である。異なる点は、以下の二点である。実データ216をセキュアデータカード3001のセキュア記憶装置3003に保存しており、改ざん、すり替えの危険がないため、ハッシュ値を記録しない。また、実データ216の暗号化、復号化は、セキュアデータ管理カード3001のファイルシステムが、行うため、鍵に関する管理を行わないため、対応鍵番号についても記録しない。
構成データ3306の具体例を、図38、39、40、41、42に示す。
図38のように、項目としては、ID、種別、有効期限、更新日時がある。それぞれの括弧内の数字は、データで表現する場合の値である。
例えば、図39をデータで表現すると、図41になり、図40をデータで表現すると、図42になる。
アプリ操作手段3203は、セキュアデータ管理カード3001を利用して、端末101上で、アプリを起動するための手段である。
調査手段3204は、起動アプリリストデータ307を参照して、起動すべきアプリの現在の状態、起動している、起動していないなどを調べる手段である。
制御手段3205は、調査手段3204の調査状況報告と、起動アプリリストデータ307を基に起動すべきアプリを決定行う手段である。また、制御手段3205は、埋め込まれた認証用の鍵を取得する手段である。また制御手段3205は、ネットワークを利用するためにプロバイダ、データベースサーバなどに接続するための手段である。
時刻取得手段3206は、ネットワーク上の信頼できる時刻を保持しているサーバから、時刻を取得する手段である。また、時刻取得手段3206は、その取得した時刻を、時刻カウント手段3207とセキュアデータ管理カード3001に通知する。
時刻カウント手段3207は、時刻取得手段3206からの通知時刻を基に、現在時刻を計測する手段である。また、時刻取得手段3206は、その計測した時刻を、セキュアデータ管理カード3001に通知する。
データ同期手段3208は、サーバ103と通信し、目標データ306を基に、実データ216、データ管理アプリデータ217、起動アプリリストデータ307、MTAデータ309、データポリシーデータ311、などのデータのアップロード、ダウンロードを行う。また、データ同期手段3208は、処理状況をセキュアデータ管理カード3001に通知する。
目標データ決定手段3211は、サーバ103と通信し、前回更新日時データ308と、サーバ103のデータの更新情報と、構成データ3306の更新日時データ、有効期限、データポリシーデータ311、目標データ306を基に、ダウンロード、アップロード、削除すべきデータを決定する手段である。また、目標データ決定手段3211は、決定した目標データ306をセキュアデータ管理カード3001に通知する。
調査手段3212は、端末101の状況情報として、記憶装置105、セキュア記憶装置3003の残り記憶容量、CPU負荷率などを調べ、制御手段3213に通知する手段である。
データ管理アプリ3201の制御手段3213は、調査手段3212からの通知情報と、目標データ306に基づき、データ管理アプリ3201の動作を決定する手段である。
また、制御手段3213は、データ管理アプリ3201が備える手段であり、ネットワークを利用するためにプロバイダや、データベースサーバに接続するための手段である。
アプリ発行手段3302は、端末101上で起動するアプリデータにセッション鍵を埋め込み、MTA3200に対して送信する手段である。
認証手段3303は、サーバ103、端末101、MTA3200、データ管理アプリ3201、その他の端末101上で起動するアプリとセキュアデータ管理カード3001のデータ管理カードアプリ3301の間で認証を行うための手段である。
カード制御手段3304は、セキュアデータ管理カード3001のカード記憶装置3004、セキュア記憶装置3003に保存しているデータの内容を参照、変更する手段である。
カード時刻カウント手段3314は、セキュアデータ管理カード3001で、時刻の経過を計るための手段である。
データ削除手段3305は、目標データ306を基に、実データ216の削除を行う。また、データ削除手段3305は、カード制御手段3304に処理状況を通知する。
また、同一アプリ内の手段同士はメモリ空間を共有しているため、一部の手段が取得、参照したデータは、どの手段も利用できる。
また、サーバ103、端末101、セキュアデータ管理カード3001は、認証時に得た鍵を共有し、お互いに通信する場合は、通信路を暗号化している。
MTA3200の起動フローについて、説明する。
MTA3200の起動処理は、端末101のOS、MTAローダ、データ管理カードアプリ3301の間で行われる。実施の形態1で、MTA200が行っていた処理を、MTA3200が行う。実施の形態1で、データ管理カードアプリ301が行っていた、処理をデータ管理カードアプリ3301が行う。
以上が、MTA3200の起動フローである。
MTA3200の判断に基づくアプリ起動フローについて図43に基づき説明する。
この場合の処理は、MTA3200とデータ管理カードアプリ3301の間で行われる。
実施の形態1と異なり、起動するアプリの元のデータが、セキュア記憶装置3003に保存されていることによりフローが異なる。
MTA3200の制御手段3205は、データ管理カードアプリ3301のカード制御手段3304に起動アプリリストデータを要求する(図43の1))。
データ管理カードアプリ3301のカード制御手段3304は、セキュア記憶装置3003に保存している起動アプリリストデータを参照し、MTA3200の制御手段3205に起動アプリリストデータを送信する(図43の2))。
MTA3200の調査手段3204は、端末101の処理モジュール104で現在起動中のアプリを調べ、起動アプリリストデータに記されているアプリの起動状態を調べる。その結果、MTA200のアプリ操作手段203は、起動アプリリストデータ307に記されていて、現在起動していないアプリを、起動すべきアプリとして、起動処理を開始する(図43の3))。
MTA3200のアプリ操作手段3203は、データ管理カードアプリ3301のアプリ発行手段3302にアプリの発行を要求する(図43の4))。
データ管理カードアプリ3301のアプリ発行手段3302は、認証用のセッション鍵を生成し、アプリデータに埋め込む(図43の5))。
データ管理カードアプリ3301のアプリ発行手段3302は、MTA3200のアプリ操作手段3203に対してアプリを発行する(図43の6))。
MTA3200のアプリ操作手段3203は、発行されたアプリの起動処理を行う(図43の7))。
起動したアプリの制御手段(データ管理アプリ3301の場合ならば、制御手段3213のこと)は、埋め込まれたセッション鍵を取得し、データ管理カードアプリ3301の認証手段3303との間で、セッションを確立する(図43の8))。
セッションを確立したアプリの制御手段は、その後の処理に必要な暗号鍵、復号鍵などのデータをデータ管理カードアプリ3301のカード制御手段3304に対して、要求し取得する(図43の9))。
以上がMTA3200の判断に基づくアプリ起動フローである。
ユーザの要求に基づくアプリ起動フローについては、図44に基づき説明する。
この場合の処理は、ユーザが利用するGUIなどのインターフェースとMTA3200とデータ管理カードアプリ3301の間で行われる。
ユーザはGUIなどを通して、MTA3200のアプリ操作手段3203に対して、起動したいアプリの起動を要求する(図44の1))。
MTA3200のアプリ操作手段3203は、データ管理カードアプリ3301のアプリ発行手段3302にアプリの発行を要求する(図44の2))。
データ管理カードアプリ3301のアプリ発行手段3302は、認証用のセッション鍵を生成し、アプリデータに埋め込む(図44の3))。
データ管理カードアプリ3301のアプリ発行手段3302は、MTA3200のアプリ操作手段3203に対してアプリを発行する(図44の4))。
MTA3200のアプリ操作手段3203は、発行されたアプリの起動処理を行う(図44の5))。
起動したアプリの制御手段(データ管理アプリ3301の場合ならば、制御手段3213のこと)は、埋め込まれたセッション鍵を取得し、データ管理カードアプリ3301の認証手段3303との間で、セッションを確立する(図44の6))。
セッションを確立したアプリの制御手段は、その後の処理に必要な暗号鍵、復号鍵などのデータをデータ管理カードアプリ3301のカード制御手段3304に対して、要求し取得する(図44の7))。
以上がユーザの要求に基づくアプリ起動フローである。
接続のフローについて説明する。
この場合の処理は、サーバとデータ管理アプリ3201とデータ管理カードアプリ3301の間で行われる。
実施の形態1と比較して、異なる点は、制御手段213が、制御手段3213になっている点、カード制御手段304が、カード制御手段3204になっている点である。
処理フローについては、実施の形態1と同様である。
目標データ306を決定するためのフローについて説明する。
この場合の処理は、サーバ103とデータ管理アプリ3201とデータ管理カードアプリ3301の間で行われる。
実施の形態1と比較して、構成データ305が、構成データ3306になっている点、制御手段213が、制御手段3213になっている点、カード制御手段304が、カード制御手段3304になっている点、カード記憶装置107が、セキュア記憶装置3003になっている点、目標データ決定手段211が、目標データ決定手段3211になっている点、調査手段212が、調査手段3212になっている点、調査手段212が、端末101の記憶装置105の残り記憶容量ではなく、セキュアデータ管理カード3001のセキュア記憶装置3003の、残り記憶容量を調べる点、が異なる。
データ同期処理のフローを図35に示す。
この場合の処理は、サーバ103とデータ管理アプリ3201とデータ管理カードアプリ3301の間で行われる。
データ管理アプリ3201の制御手段3213は、同期処理を行うために必要な情報を、データ管理カードアプリ3301に要求する(図35の1))。
データ管理カードアプリ3301のカード制御手段3304は、目標データ306のダウンロード、アップロード、削除の目標になっているデータのIDを参照する(図35の2))。
データ管理カードアプリ3301のカード制御手段3304は、データ管理アプリ3201に、ダウンロードデータのIDリスト、アップロードするデータのID、削除するデータのIDを応答として返す(図35の3))。
応答を受けたデータ管理アプリ3201の制御手段3213は、ダウンロード、アップロード、削除のいずれかの処理を、適宜開始する。ここでは、ダウンロード、アップロード、削除全ての処理について述べる。
ダウンロードする場合、データ管理アプリ3201のデータ同期手段3208は、データのIDを指定して、ダウンロードするデータをサーバ103へ要求し、サーバ103からデータをダウンロードする(図35の4)、5))。この際に、データの更新日時、有効期限もダウンロードする。
データ管理アプリ3201の制御手段3213は、受信したデータ、更新日時、有効期限を、データ管理カードアプリ3301のカード制御手段3304に通知する(図35の6))。
データ管理カードアプリ3301のカード制御手段3304は、受け取ったデータを実データ216として保存する(図35の7))。
データ管理カードアプリ3301のカード制御手段3304は、目標データ306のダウンロードしたIDの処理状態を「済み」にする(図35の13))。
データ管理カードアプリ3301のカード制御手段3304は、ダウンロードしたデータのIDに対応する構成データ3306の更新日時、有効期限を更新する(図35の14))。
ダウンロードする目標データ306がまだある場合は処理を継続し、無い場合は目標データ306の終了日時を更新する(図35の15))。
データ管理カードアプリ3301のカード制御手段3304は、サーバ103にダウンロードの処理が終了したことと、ダウンロードしたデータのIDを報告する(図35の16))。
アップロードする場合には、データ管理アプリ3201のデータ同期手段3208は、サーバ103へ送信する実データ216と構成データ3306の更新日時を、データ管理カードアプリ3301のカード制御手段3304に要求し、取得する(図35の8))。
データ管理アプリ3201のデータ同期手段3208は、実データ216のIDを指定して、サーバ103へデータをアップロードする(図35の9))。
データ管理アプリ3201の制御手段3213は、データ管理カードアプリ3301のカード制御手段3304に、処理結果とアップロードした実データ216のIDを通知する(図35の11))。
データ管理カードアプリ3301のカード制御手段3304は、目標データ306において、アップロードした実データ216の処理状態を「済み」の状態に更新する(図35の13))。
アップロードする目標データ306がまだある場合は処理を継続し、無い場合は目標データ306の終了日時を更新する(図35の15))。
データ管理カードアプリ3301のカード制御手段3304は、サーバ103にアップロードの処理が終了したことと、アップロードした実データ216のIDを報告する(図35の16))。
削除する場合は、データ管理アプリ3201のデータ削除手段3305は、目標データ306に挙がっているIDに対応する実データ216をセキュア記憶装置3303から削除する(図35の12))。
データ管理カードアプリ3301のカード制御手段3304は、目標データ306において、削除した実データ216の処理状態を「済み」の状態に更新する(図35の13))。また、必要に応じて構成データ3306自体を削除する。
削除する目標データ306がまだある場合は処理を継続し、無い場合は目標データ306の終了日時を更新する(図35の15))。
データ管理カードアプリ3301のカード制御手段3304は、サーバ103に削除の処理が終了したことを通知する。尚、削除の処理の終了の通知と共に、削除した実データ216のIDを報告しても良い(図35の16))。
以上が、データの同期処理のフローである。
緊急削除時のフローを図36に示す。
この場合の処理は、サーバ103とデータ管理アプリ3201とデータ管理カードアプリ3301の間で行われる。
サーバ103が、データを緊急に削除すべきと判断する(図36の1))。
サーバ103は、データ管理アプリ3201の目標データ決定手段3211に緊急削除命令を出す(図36の2))。
緊急削除命令のパターンとしては、2パターンある。一つには、緊急削除命令のみを出す場合である。そして、一つには、緊急削除命令と削除するデータのIDリストを出す場合である。
緊急削除命令だけの場合には、命令を受けたデータ管理アプリ3201の目標データ決定手段3211は、データ管理カードアプリ3301のカード制御手段3304に構成データ3306と、データポリシーデータ311を要求し、それに基づき、削除目標と処理順を決定する(図36の3))。
データ管理アプリ3201の制御手段3213は、データ管理カードアプリ3301のカード制御手段3304に対して、緊急削除の通知と、目標データ306の通知を行う(図36の4))。
データ管理カードアプリ3301のカード制御手段3304は、目標データ306を更新し、緊急削除の目標データを追加する(図36の5))。
データ管理カードアプリ3301のカード制御手段3304は、起動アプリリストデータの緊急削除フラグをONにする(図36の6))。削除が行われるのがカード内である点が、実施の形態1と異なる。
データ管理カードアプリ3301のデータ削除手段3305は、緊急削除の目標となる実データ216をセキュア記憶装置3003から削除する(図36の7))。また、データ管理カードアプリ3301のカード制御手段3304は、鍵データを削除する。データ管理カードアプリ3301のカード制御手段3304は、目標データ306において、削除した実データ216の処理状態を「済み」の状態にする(図36の8))。
データ管理カードアプリ3301のカード制御手段3304は、構成データ3306を削除しても良い(図36の9))。
削除する目標データ306がまだある場合は緊急削除処理を継続し、無い場合は目標データ306の終了日時を更新する(図36の10))。
データ管理カードアプリ3301のカード制御手段3304は、起動アプリリストデータ307から、緊急削除フラグの情報を、OFFにする(図36の11))。
データ管理カードアプリ3301のカード制御手段3304は、サーバ103に緊急削除の処理が終了したことと、削除したデータのIDを報告する(図36の12))。
実データ216が、カードに保存されているため、実施の形態1と処理フローが異なる。
以上が、緊急削除時のフローである。
有効期限切れ削除のフローを図37に示す。
この場合の処理は、データ管理アプリ3201とデータ管理カードアプリ3301の間で行われる。
データ管理アプリ3201の制御手段3213は、データ管理カードアプリ3301に要求し、構成データ3306を取得する(図37の1))。
データ管理アプリ3201の目標データ306決定手段は、構成データ3306の有効期限情報と現在の日時情報を比較し、有効期限の切れている実データ216のIDを、削除する目標データとして挙げる(図37の2))。
データ管理アプリ3201の制御手段3213は、データ管理カードアプリ3301のカード制御手段3304に目標データ306を通知する(図37の3))。
データ管理カードアプリ3301のカード制御手段3304は、目標データ306を更新する(図37の4))。
データ管理カードアプリ3301のデータ削除手段3305は、削除の目標となるIDに対応するデータをセキュア記憶装置3003から削除する(図37の5))。
データ管理カードアプリ3301のカード制御手段3304は、目標データ306において、削除した実データ216の処理状態を「済み」の状態にする(図37の6))。
データ管理カードアプリ3301のカード制御手段3304は、構成データ3306を削除する(図37の7))。
削除する目標データ306がまだある場合は処理を継続し、無い場合は目標データ306の終了日時を更新する(図37の8))。
以上が有効期限切れ削除のフローである。
実データ216の参照のフローについて説明する。
この場合の処理は、データ管理アプリ3201とデータ管理カードアプリ3301の間で行われる。
データ管理アプリ3201の制御手段3213は、ユーザ操作もしくは、他のアプリから参照したい実データ216のIDを要求として受信し、データ管理カードアプリ3301のカード制御手段3304に、要求に対応する実データ216を要求する。
データ管理カードアプリ3301のカード制御手段3304は、セキュア記憶装置3003の実データ216を参照し、IDに対応する実データ216を参照する。
データ管理カードアプリ3301のカード制御手段3304は、データ管理アプリの制御手段3213に実データ216を送信する。
以上が、実データ216の参照のフローである。
時刻を比較する際の現在時刻は、以下の仕組みを利用して取得している。
信頼できる時刻の取得と保存のフローについて説明する。
この場合の処理は、サーバとMTA3200とデータ管理カードアプリ3301と端末101上で動作しているアプリの間で行われる。
実施の形態1と比較すると、異なる点は、制御手段205が、制御手段3205になっている点、時刻取得手段206が、時刻取得手段3206になっている点、時刻カウント手段207が、時刻カウント手段3207になっている点、カード制御手段304が、カード制御手段3304になっている点、カード記憶装置107が、セキュア記憶装置3003になっている点、カード時刻カウント手段314が、カード時刻カウント手段3314になっている点、である。
なお、本発明はこれらの実施の形態に何ら限定されるものではなく、その要旨を逸脱しない範囲において、種々なる態様で実施し得る。
本発明は、ICカードなどのセキュアデバイスを装着でき、様々なアプリケーションを実行でき、ネットワーク上のデータベースサーバと同期処理などを行う、携帯電話、携帯情報端末(PDA)、パーソナルコンピュータなどの情報処理装置に適用が可能である。
本発明の実施の形態1における、セキュアデータ管理装置システム構成図 本発明の実施の形態1における、端末機能ブロック図 本発明の実施の形態1における、ICカード機能ブロック図 本発明の実施の形態1におけるセキュアデータ管理装置処理概要図 本発明の実施の形態1における、MTAの起動フロー 本発明の実施の形態1における、MTAの判断に基づくアプリ起動フロー 本発明の実施の形態1における、ユーザの要求操作に基づくアプリ起動フロー 本発明の実施の形態1における、サーバへの接続フロー 本発明の実施の形態1における、目標データ決定フロー 本発明の実施の形態1における、データの同期処理フロー 本発明の実施の形態1における、データの緊急削除フロー 本発明の実施の形態1における、有効期限切れデータの削除フロー 本発明の実施の形態1における、データポリシーデータのフォーマット 本発明の実施の形態1における、データポリシーデータ具体例 本発明の実施の形態1における、図14をデータ形式で表現したデータポリシーデータ 本発明の実施の形態1における、構成データフォーマット 本発明の実施の形態1における、構成データ具体例その1 本発明の実施の形態1における、構成データ具体例その2 本発明の実施の形態1における、図17をデータ形式で表現した構成データ 本発明の実施の形態1における、図18をデータ形式で表現した構成データ 本発明の実施の形態1における、目標データフォーマット 本発明の実施の形態1における、目標データ具体例 本発明の実施の形態1における、図22をデータ形式で表現した目標データ 本発明の実施の形態1における、起動アプリリストデータ 本発明の実施の形態1における、起動アプリリストデータ具体例 本発明の実施の形態1における、図25をデータ形式で表現した起動アプリリストデータ 本発明の実施の形態1における、前回更新日時データ 本発明の実施の形態1における、前回更新日時データ具体例 本発明の実施の形態1における、図28をデータ形式で表現した前回更新日時データ 本発明の実施の形態1における、時刻の取得と保存フロー 本発明の実施の形態2における、セキュアデータ管理装置システム構成図 本発明の実施の形態2における、端末機能ブロック図 本発明の実施の形態2における、セキュアデータ管理カード機能ブロック図 本発明の実施の形態2におけるセキュアデータ管理装置処理概要図 本発明の実施の形態2における、データの同期処理フロー 本発明の実施の形態2における、データの緊急削除フロー 本発明の実施の形態2における、有効期限切れデータの削除フロー 本発明の実施の形態2における、構成データフォーマット 本発明の実施の形態2における、構成データ具体例その1 本発明の実施の形態2における、構成データ具体例その2 本発明の実施の形態2における、図39をデータ形式で表現した構成データ 本発明の実施の形態2における、図40をデータ形式で表現した構成データ 本発明の実施の形態2における、MTAの判断に基づくアプリ起動フロー 本発明の実施の形態2における、ユーザの要求操作に基づくアプリ起動フロー 従来例のブロック構成図
符号の説明
101 端末
102 ICカード
103 サーバ
104 処理モジュール
105 記憶装置
106 カード処理モジュール
107 カード記憶装置
200 MTA
201 データ管理アプリ
203 アプリ操作手段
204 調査手段
205 制御手段
206 時刻取得手段
207 時刻カウント手段
208 データ同期手段
209 データ削除手段
210 データ検証手段
211 目標データ決定手段
212 調査手段
213 制御手段
214 暗号化手段
215 復号化手段
216 実データ
217 データ管理アプリデータ
218 アプリ発行手段
219 復号化手段
220 データ検証手段
301 データ管理カードアプリ
302 アプリ発行手段
303 認証手段
304 カード制御手段
305 構成データ
306 目標データ
307 起動アプリリストデータ
308 前回更新日時データ
309 MTAデータ
311 データポリシーデータ
312 鍵データ
313 時刻データ
314 カード時刻カウント手段
3001 セキュアデータ管理カード
3002 カード処理モジュール
3003 セキュア記憶装置
3004 カード記憶装置
3200 MTA
3201 データ管理アプリ
3203 アプリ操作手段
3204 調査手段
3205 制御手段
3206 時刻取得手段
3207 時刻カウント手段
3208 データ同期手段
3211 目標データ決定手段
3212 調査手段
3213 制御手段
3301 データ管理カードアプリ
3302 アプリ発行手段
3303 認証手段
3304 カード制御手段
3306 構成データ
3314 カード時刻カウント手段

Claims (28)

  1. データの格納、演算を秘匿した状態で実行するセキュアデバイスと情報処理端末によって構成され、前記セキュアデバイスは、前記情報処理端末で動作するアプリケーションの起動を制御するアプリケーションであるMTA(Master Trusted Agent)を前記情報処理端末に対して発行するカード処理モジュールと、MTAを格納するカード記憶装置を備え、前記情報処理端末は、実データと前記実データの管理を行うデータ管理アプリを格納する記憶装置とを備え、前記情報処理端末は、前記セキュアデバイスから発行された前記MTAを起動して、前記MTAと前記カード処理モジュールとの間で認証処理を行い、前記セキュアデバイスによって認証されたMTAが前記データ管理アプリを起動し、前記データ管理アプリが前記セキュアデバイスと認証処理を行い、サーバとの間で前記実データの同期処理を行うことを特徴とするセキュアデータ管理装置。
  2. 前記MTA、または、前記データ管理アプリは、前記情報処理端末に前記セキュアデバイスが装着されているかどうかを確認する調査手段を備え、前記セキュアデバイスが装着されていないことを確認すると、動作を終了することを特徴とする請求項1記載のセキュアデータ管理装置。
  3. 前記カード記憶装置には、前記実データ及び前記データ管理アプリのハッシュ値がそれぞれ格納されており、前記実データまたは前記データ管理アプリが利用される際にそれぞれのハッシュ値を算出し、前記カード記憶装置に格納されたハッシュ値と比較することによって前記実データ及び前記データ管理アプリの改ざんを検出するデータ検証手段を備えることを特徴とする請求項1記載のセキュアデータ管理装置。
  4. 前記データ管理アプリの前記データ検証手段は、同期処理によってサーバから受信した実データのハッシュ値を算出し、前記データ管理アプリの制御手段が、前記算出されたハッシュ値を、前記カード制御手段に送信し、前記カード制御手段が、前記制御手段から受信したハッシュ値を、前記カード記憶装置に格納することを特徴とする請求項3記載のセキュアデータ管理装置。
  5. 前記データ管理アプリが、暗号化手段及び復号化手段を備え、前記実データは、前記カード記憶装置に格納された暗号鍵データを用いて、前記暗号化手段が暗号化した状態で、前記記憶装置に格納され、復号化する場合には、前記カード記憶装置に格納された暗号鍵データを用いて、前記復号化手段が復号することを特徴とする請求項1記載のセキュアデータ管理装置。
  6. 前記カード記憶装置には、前記情報処理端末で起動すべきアプリケーションが記述された起動アプリリストデータが格納されており、前記起動アプリリストデータの中には、前記データ管理アプリが記述されており、前記MTAのアプリ操作手段が、前記起動アプリリストデータを参照し、常にデータ管理アプリが起動している状態に保つことを特徴とする請求項1記載のセキュアデータ管理装置。
  7. 前記MTAのアプリ発行手段が前記記憶装置に格納されたデータ管理アプリに、前記セキュアデバイスと認証処理を行う認証情報を埋め込んで起動し、起動された前記データ管理アプリの制御手段が前記セキュアデバイスの認証手段と認証処理を行うことを特徴とする請求項1記載のセキュアデータ管理装置。
  8. 前記データ管理アプリは、サーバとの前記実データの同期処理の内容を記述した目標データを生成決定する目標データ決定手段と、前記カード記憶装置に格納された前記目標データに基づき前記実データに対するサーバとの同期処理を行うデータ同期手段と、前記カード記憶装置に格納された目標データに基づき、前記記憶装置に格納された実データの削除を行うデータ削除手段を備え、前記目標データ決定手段が生成した前記目標データを、前記データ管理アプリが備える制御手段が、前記カード制御手段に送信し、前記カード制御手段が、前記カード記憶装置に格納し、前記カード記憶装置に格納された目標データに基づき、前記データ同期手段が、サーバとの間で前記実データの同期処理を行い、前記データ削除手段が、前記記憶装置に格納された実データの削除を行うことを特徴とする請求項1記載のセキュアデータ管理装置。
  9. 前記カード記憶装置には、前記実データの利用可能な期限を示す有効期限情報が格納されており、目標データ決定手段が、有効期限情報を基に、有効期限が過ぎた削除すべき前記実データを削除されるべきデータとして前記目標データに設定することを特徴とする請求項8記載のセキュアデータ管理装置。
  10. ダウンロード、アップロード、削除といった同期処理の種類別の優先度と、各同期処理の種類毎のデータの優先度を記述したデータポリシーデータを前記カード記憶装置に格納し、前記目標データ決定手段が、前記データポリシーデータを基に、目標データを生成することを特徴とする請求項8記載のセキュアデータ管理装置。
  11. 前記目標データには、各同期処理が処理状況を示す情報が含まれており、前記制御手段が、同期の処理結果情報を前記カード制御手段に通知し、前記カード制御手段が、処理結果情報を基に、前記カード記憶装置に格納された前記目標データを更新することを特徴とする請求項8記載のセキュアデータ管理装置。
  12. 前記カード記憶装置には、緊急削除処理を促す緊急削除フラグが格納され、前記緊急削除フラグがONの状態になっている場合には、優先的に削除処理を行う目標データを生成することを特徴とする請求項8記載のセキュアデータ管理装置。
  13. 前記情報処理端末上で動作するアプリケーションが、前記実データに対する参照を要求する場合に、前記データ管理アプリの前記復号化手段が復号した実データに対し、前記データ管理アプリの前記制御手段が、日時やユーザIDを電子透かしとして埋め込み、アプリケーションに前記実データを送信することを特徴とする請求項5記載のセキュアデータ管理装置。
  14. データの格納、演算を秘匿した状態で実行するセキュアデバイスと情報処理端末によって構成され、前記セキュアデバイスは、前記情報処理端末で動作するアプリケーションの起動を制御するアプリケーションであるMTA(Master Trusted Agent)を前記情報処理端末に対して発行するカード処理モジュールと、MTAを格納するカード記憶装置を備え、前記MTAは、ネットワーク上のサーバから現在時刻を取得する時刻取得手段と、前記情報処理端末上での現在時刻をカウントする時刻カウント手段を備え、前記情報処理端末は、前記セキュアデバイスから発行された前記MTAを起動して、前記MTAと前記カード処理モジュールとの間で認証処理を行い、前記セキュアデバイスによって認証されたMTAの前記時刻取得手段がサーバから現在時刻を取得し、前記時刻カウント手段に設定し、前記時刻カウント手段が、前記時刻カウント手段が示す時刻を現在時刻とすることを特徴とするセキュアデータ管理装置。
  15. 前記MTAの前記時刻取得手段がネットワーク上のサーバから複数回現在時刻を取得し、その取得した現在時刻の差分に基づく経過時間と、時刻カウント手段が示す経過時間を、前記MTAの制御手段が比較することにより、情報処理端末の時刻カウント手段が示す経過時間の正当性を判断し、不正と判断した場合には、前記情報処理端末で動作中のアプリケーションを停止することを特徴とする請求項14記載のセキュアデータ管理装置。
  16. 前記セキュアデバイスが、時刻をカウントするカード時刻カウント手段を備え、前記MTAの制御手段が、前記セキュアデバイスの前記カード時刻カウント手段が示す経過時間と、前記情報処理端末の時刻カウント手段が示す経過時間を比較することにより、情報処理端末の時刻カウント手段が示す経過時間の正当性を判断し、不正と判断した場合には、前記情報処理端末で動作中のアプリケーションを停止することを特徴とする請求項14記載のセキュアデータ管理装置。
  17. 前記MTAの時刻取得手段がネットワーク上のサーバから現在時刻を取得した際に、カード制御手段がカード記憶装置に前記サーバから取得した現在時刻を格納しておき、MTAが新たに起動した際に、時刻取得手段がネットワーク上のサーバから現在時刻を取得できなかった場合に、前記カード記憶装置に格納した現在時刻と、前記情報処理端末の前記時刻カウント手段が示す現在時刻を、前記MTAの制御手段が比較することで、情報処理端末の時刻カウント手段が示す現在時刻の正当性を確認し、不正と判断した場合には、前記情報処理端末で動作中のアプリを停止することを特徴とする請求項14記載のセキュアデータ管理装置。
  18. 前記MTAのネットワーク上のサーバから現在時刻情報を取得する時刻取得手段が、時刻情報の取得を失敗した場合に、前記MTAの制御手段は、カード制御手段に失敗したことを通知し、カード制御手段は、失敗回数をカード記憶装置に格納し、許容回数を越えると前記情報処理端末で動作するアプリを停止することを特徴とする請求項14記載のセキュアデータ管理装置。
  19. データの格納、演算を秘匿した状態で実行するセキュアデバイスと情報処理端末によって構成され、前記セキュアデバイスは、前記情報処理端末で動作するアプリケーションの起動を制御するアプリケーションであるMTA(Master Trusted Agent)を前記情報処理端末に対して発行するカード処理モジュールと、MTAと、実データと、前記実データの管理を行うデータ管理アプリを格納するセキュア記憶装置を備え、前記情報処理端末は、前記セキュアデバイスから発行された前記MTAを起動して前記MTAと前記カード処理モジュールとの間で認証処理を行い、前記セキュアデバイスによって認証されたMTAが前記データ管理アプリを起動し、前記データ管理アプリが前記セキュアデバイスと認証処理を行い、サーバとの間で前記実データの同期処理を行うことを特徴とするセキュアデータ管理装置。
  20. 前記MTA、または、前記データ管理アプリは、前記情報処理端末に前記セキュアデバイスが装着されているかどうかを確認する調査手段を備え、前記セキュアデバイスが装着されていないことを確認すると、動作を終了することを特徴とする請求項19記載のセキュアデータ管理装置。
  21. 前記セキュア記憶装置には、前記情報処理端末処理モジュールで起動すべきアプリケーションが記述された起動アプリリストデータが格納されており、前記起動アプリリストデータの中には、前記データ管理アプリが記述されており、前記MTAのアプリ操作手段が、前記起動アプリリストデータを参照し、常にデータ管理アプリが起動している状態に保つことを特徴とする請求項19記載のセキュアデータ管理装置。
  22. 前記MTAのアプリ発行手段が前記セキュア記憶装置に格納されたデータ管理アプリに、前記セキュアデバイスと認証処理を行う認証情報を埋め込んで起動し、起動された前記データ管理アプリの制御手段が前記セキュアデバイスの認証手段と認証処理を行うことを特徴とする請求項19記載のセキュアデータ管理装置。
  23. 前記データ管理アプリは、サーバとの前記実データの同期処理の内容を記述した目標データを生成する目標データ決定手段と、前記セキュア記憶装置に格納された前記目標データに基づき前記実データに対するサーバとの同期処理を行うデータ同期手段と、前記セキュア記憶装置に格納された目標データに基づき、前記セキュア記憶装置に格納された実データの削除を行うデータ削除手段を備え、前記目標データ決定手段が生成した前記目標データを、前記データ管理アプリが備える制御手段が、前記カード制御手段に送信し、前記カード制御手段が、前記セキュア記憶装置に格納し、前記セキュア記憶装置に格納された目標データに基づき、前記データ同期手段が、サーバとの間で前記実データの同期処理を行い、前記データ削除手段が、前記セキュア記憶装置に格納された実データの削除を行うことを特徴とする請求項19記載のセキュアデータ管理装置。
  24. 前記セキュア記憶装置には、前記実データの利用可能な期限を示す有効期限情報が格納されており、目標データ決定手段が、有効期限情報を基に、有効期限が過ぎた実データを削除されるべきデータとして前記目標データに設定することを特徴とする請求項23記載のセキュアデータ管理装置。
  25. ダウンロード、アップロード、削除といった同期処理の種類別の優先度と、各同期処理の種類毎のデータの優先度を記述したデータポリシーデータを前記セキュア記憶装置に格納し、前記目標データ決定手段が、前記データポリシーデータを基に、目標データを生成することを特徴とする請求項23記載のセキュアデータ管理装置。
  26. 前記目標データには、各同期処理が処理状況を示す情報が含まれており、前記制御手段が、同期の処理結果情報を前記カード制御手段に通知し、前記カード制御手段が、処理結果情報を基に、前記セキュア記憶装置に格納された前記目標データを更新することを特徴とする請求項23記載のセキュアデータ管理装置。
  27. 前記セキュア記憶装置には、緊急削除処理を促す緊急削除フラグが格納され、前記緊急削除フラグがONの状態になっている場合には、優先的に削除処理を行う目標データを生成することを特徴とする請求項23記載のセキュアデータ管理装置。
  28. 前記情報処理端末上で動作するアプリケーションが、前記実データに対する参照を要求する場合に、実データに対し、前記データ管理アプリの前記制御手段が、日時やユーザIDを電子透かしとして埋め込み、アプリケーションに前記実データを送信することを特徴とする請求項19記載のセキュアデータ管理装置。
JP2003307863A 2003-08-29 2003-08-29 セキュアデータ管理装置 Withdrawn JP2005079912A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2003307863A JP2005079912A (ja) 2003-08-29 2003-08-29 セキュアデータ管理装置
TW093124030A TW200517909A (en) 2003-08-29 2004-08-11 Secure date management apparatus
US10/920,438 US20050050363A1 (en) 2003-08-29 2004-08-18 Secure data management apparatus
EP04019629A EP1510901A3 (en) 2003-08-29 2004-08-18 Secure data management apparatus
KR1020040068021A KR20050021922A (ko) 2003-08-29 2004-08-27 시큐어 데이터 관리장치
CNA2004100749030A CN1591397A (zh) 2003-08-29 2004-08-30 安全数据管理设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003307863A JP2005079912A (ja) 2003-08-29 2003-08-29 セキュアデータ管理装置

Publications (1)

Publication Number Publication Date
JP2005079912A true JP2005079912A (ja) 2005-03-24

Family

ID=34101271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003307863A Withdrawn JP2005079912A (ja) 2003-08-29 2003-08-29 セキュアデータ管理装置

Country Status (6)

Country Link
US (1) US20050050363A1 (ja)
EP (1) EP1510901A3 (ja)
JP (1) JP2005079912A (ja)
KR (1) KR20050021922A (ja)
CN (1) CN1591397A (ja)
TW (1) TW200517909A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006155159A (ja) * 2004-11-29 2006-06-15 Fuji Electric Holdings Co Ltd 耐タンパ装置
JP2008077485A (ja) * 2006-09-22 2008-04-03 Sharp Corp 通信端末装置および制御プログラム
JP2012516491A (ja) * 2009-01-28 2012-07-19 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ユーザのプライバシー保護のための方法
JP2016146641A (ja) * 2006-05-09 2016-08-12 インターデイジタル テクノロジー コーポレーション 無線装置のためのセキュア時刻機能

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030021417A1 (en) * 2000-10-20 2003-01-30 Ognjen Vasic Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
JP4717398B2 (ja) * 2004-09-10 2011-07-06 キヤノン株式会社 データ処理装置の制御方法
KR100608604B1 (ko) * 2004-09-15 2006-08-03 삼성전자주식회사 객체 식별자를 이용하여 이동형 저장 장치에서 권리객체를 검색하는 방법 및 장치
KR100724439B1 (ko) * 2005-03-22 2007-06-04 엘지전자 주식회사 콘텐츠 사용권리 보호방법
US7356539B2 (en) * 2005-04-04 2008-04-08 Research In Motion Limited Policy proxy
US8099495B2 (en) 2005-12-29 2012-01-17 Intel Corporation Method, apparatus and system for platform identity binding in a network node
KR101258529B1 (ko) 2006-01-17 2013-04-30 삼성전자주식회사 메모리 카드 시스템, 메모리 카드, 그리고 메모리 카드의응용프로그램 수행방법
US8104074B2 (en) * 2006-02-24 2012-01-24 Microsoft Corporation Identity providers in digital identity system
US8117459B2 (en) * 2006-02-24 2012-02-14 Microsoft Corporation Personal identification information schemas
US20070203852A1 (en) * 2006-02-24 2007-08-30 Microsoft Corporation Identity information including reputation information
US8205238B2 (en) * 2006-03-30 2012-06-19 Intel Corporation Platform posture and policy information exchange method and apparatus
US8078880B2 (en) * 2006-07-28 2011-12-13 Microsoft Corporation Portable personal identity information
US8856860B2 (en) * 2006-08-18 2014-10-07 Cisco Technology, Inc. System and method for implementing policy server based application interaction manager
US8266683B2 (en) * 2006-09-08 2012-09-11 Imation Corp. Automated security privilege setting for remote system users
US8087072B2 (en) * 2007-01-18 2011-12-27 Microsoft Corporation Provisioning of digital identity representations
US8407767B2 (en) * 2007-01-18 2013-03-26 Microsoft Corporation Provisioning of digital identity representations
US8689296B2 (en) 2007-01-26 2014-04-01 Microsoft Corporation Remote access of digital identities
US8266706B2 (en) * 2007-01-26 2012-09-11 Microsoft Corporation Cryptographically controlling access to documents
JP5223860B2 (ja) * 2007-03-28 2013-06-26 日本電気株式会社 時刻情報配信システム、時刻配信局、端末、時刻情報配信方法及びプログラム
US8887298B2 (en) * 2007-07-13 2014-11-11 Microsoft Corporation Updating and validating documents secured cryptographically
US8887297B2 (en) * 2007-07-13 2014-11-11 Microsoft Corporation Creating and validating cryptographically secured documents
US8347359B2 (en) 2007-12-28 2013-01-01 Bruce Backa Encryption sentinel system and method
KR101281678B1 (ko) 2008-01-15 2013-07-03 삼성전자주식회사 이동 저장 장치에서 호스트 인증 방법, 호스트 인증을 위한정보 제공 방법, 장치, 및 기록매체
US9164925B2 (en) 2008-01-15 2015-10-20 Samsung Electronics Co., Ltd. Method and apparatus for authorizing host to access portable storage device
US8180838B2 (en) * 2008-08-29 2012-05-15 Microsoft Corporation Efficiently managing modular data storage systems
TWI496006B (zh) * 2010-05-28 2015-08-11 Alibaba Group Holding Ltd Data updating method, device and system
US20120023072A1 (en) * 2010-07-20 2012-01-26 Research In Motion Limited System and method for controlling the deletion of data associated with electronic groups
US8631236B2 (en) * 2011-12-09 2014-01-14 Centurylink Intellectual Property Llc Auto file locker
TWI530954B (zh) * 2013-11-22 2016-04-21 新唐科技股份有限公司 保護非揮發性記憶體中儲存之程式碼的裝置
US10809938B2 (en) * 2018-03-06 2020-10-20 International Business Machines Corporation Synchronized safe data commit scans in multiple data storage systems
US10740007B2 (en) 2018-03-06 2020-08-11 International Business Machines Corporation Synchronized primary-secondary role swaps with synchronized safe data commit scans
CN113010880B (zh) * 2021-02-08 2022-10-14 上海新时达电气股份有限公司 电梯配件认证方法、系统、服务器和存储介质
CN113312179A (zh) * 2021-06-01 2021-08-27 中国民航信息网络股份有限公司 数据组件管理方法、装置、系统、电子设备及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6609199B1 (en) * 1998-10-26 2003-08-19 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
US7127605B1 (en) * 1999-05-10 2006-10-24 Axalto, Inc. Secure sharing of application methods on a microcontroller
US6351817B1 (en) * 1999-10-27 2002-02-26 Terence T. Flyntz Multi-level secure computer with token-based access control
US6857067B2 (en) * 2000-09-01 2005-02-15 Martin S. Edelman System and method for preventing unauthorized access to electronic data
US20030021417A1 (en) * 2000-10-20 2003-01-30 Ognjen Vasic Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data
US20030014657A1 (en) * 2001-07-12 2003-01-16 Hsieh Gary Kuan-Hong Auto online mechanism and method
EP1554855A1 (en) * 2002-10-24 2005-07-20 Matsushita Electric Industrial Co., Ltd. System and method for pushing information from a service provider to a communication terminal comprising a memory card

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006155159A (ja) * 2004-11-29 2006-06-15 Fuji Electric Holdings Co Ltd 耐タンパ装置
JP2016146641A (ja) * 2006-05-09 2016-08-12 インターデイジタル テクノロジー コーポレーション 無線装置のためのセキュア時刻機能
US9774457B2 (en) 2006-05-09 2017-09-26 Interdigital Technology Corporation Secure time functionality for a wireless device
JP2008077485A (ja) * 2006-09-22 2008-04-03 Sharp Corp 通信端末装置および制御プログラム
JP2012516491A (ja) * 2009-01-28 2012-07-19 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ユーザのプライバシー保護のための方法

Also Published As

Publication number Publication date
TW200517909A (en) 2005-06-01
US20050050363A1 (en) 2005-03-03
EP1510901A3 (en) 2006-06-07
EP1510901A2 (en) 2005-03-02
KR20050021922A (ko) 2005-03-07
CN1591397A (zh) 2005-03-09

Similar Documents

Publication Publication Date Title
JP2005079912A (ja) セキュアデータ管理装置
KR101979586B1 (ko) 블록 체인 기반으로 관리되는 사물 인터넷 디바이스 및 그 시스템 및 방법
US8219806B2 (en) Management system, management apparatus and management method
US8938625B2 (en) Systems and methods for securing cryptographic data using timestamps
KR101086568B1 (ko) 무선 장치에 대한 보안 시간 기능
US8533492B2 (en) Electronic device, key generation program, recording medium, and key generation method
US8516574B2 (en) Software update system, management apparatus, recording medium, and integrated circuit
EP2727040B1 (en) A secure hosted execution architecture
US20070136202A1 (en) Personal-information managing apparatus, method of providing personal information, computer product, and personal-information-providing system
JP2017021434A (ja) 情報処理装置及びその制御方法
JP2004295271A (ja) カード及びパスコード生成器
JP2009070408A (ja) 情報処理装置
CN110008659B (zh) 软件许可的离线管理方法、装置、计算机设备及存储介质
KR100443621B1 (ko) 개인용 컴퓨터 기반의 고유 아이디를 이용한 휴대용 정보단말기의 어플리케이션의 인증방법과 이를 이용한 시스템
JP4012771B2 (ja) ライセンス管理方法、ライセンス管理システム、ライセンス管理プログラム
US7747532B2 (en) Content use management system, content playback apparatus, content use management method, content playback method, and computer program including system date/time information validation
JP6721248B2 (ja) 情報管理端末装置
EP1950680A1 (en) Communication terminal device, server terminal device, and communication system using the same
JP5593452B2 (ja) セキュリティレベルを維持するために情報を削除する方法、システム、仲介サーバ、クライアント及びコンピュータプログラム
JP2009080772A (ja) ソフトウェア起動システム、ソフトウェア起動方法、及びソフトウェア起動プログラム
JP2005157429A (ja) 情報処理装置、情報処理システム及びプログラム
CN111224826B (zh) 基于分布式系统的配置更新方法、设备、系统及介质
JP2004326210A (ja) メモリカード及びサーバ
JP2007140961A (ja) 不正にコピーされたファイルの使用防止装置およびプログラム
CN115567218A (zh) 基于区块链的安全证书的数据处理方法、装置和服务器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060519

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20070709