JP2008005156A - 情報処理端末および状態通知方法 - Google Patents

情報処理端末および状態通知方法 Download PDF

Info

Publication number
JP2008005156A
JP2008005156A JP2006171727A JP2006171727A JP2008005156A JP 2008005156 A JP2008005156 A JP 2008005156A JP 2006171727 A JP2006171727 A JP 2006171727A JP 2006171727 A JP2006171727 A JP 2006171727A JP 2008005156 A JP2008005156 A JP 2008005156A
Authority
JP
Japan
Prior art keywords
log
entry
information processing
processing terminal
entries
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
JP2006171727A
Other languages
English (en)
Other versions
JP2008005156A5 (ja
JP4939851B2 (ja
Inventor
Shino Takegawa
視野 竹川
Hisashi Takayama
久 高山
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 JP2006171727A priority Critical patent/JP4939851B2/ja
Priority to CN2007800234337A priority patent/CN101473335B/zh
Priority to US12/305,126 priority patent/US8086861B2/en
Priority to PCT/JP2007/062035 priority patent/WO2007148602A1/ja
Publication of JP2008005156A publication Critical patent/JP2008005156A/ja
Publication of JP2008005156A5 publication Critical patent/JP2008005156A5/ja
Application granted granted Critical
Publication of JP4939851B2 publication Critical patent/JP4939851B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/2151Time stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/127Trusted platform modules [TPM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]

Landscapes

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

Abstract

【課題】サーバに対して情報処理端末の状態を通知する際に、プライバシーとセキュリティを両立させることができる情報処理端末、状態通知システムおよび状態通知方法を提供する。
【解決手段】情報処理端末10は、エントリごとに通知可能な相手を判定する公開有無判定部1001と、エントリを隠蔽するログ隠蔽部1002と、複数の通知相手についてハッシュの更新を指示するログ複数測定部1003と、通知相手向けのログを構成し署名させるログ構成部1004と、検証を要求する検証要求部1005と、通知可能な相手の判定に用いるポリシーを記憶するポリシー記憶手段1006と、エントリを記憶するログ記憶手段1007と、を備え、エントリに通知相手ごとの適した隠蔽処理などの処理を施したもののハッシュによる累積を指示する。
【選択図】図1

Description

本発明は、ネットワークを介してさまざまなサービスを提供するサーバに、それらのサービスを受けるパソコンなどの情報処理端末が、自端末の状態を通知する技術に関する。
近年、ネットワークを介して提供されるサービスは、音楽や映像といった著作物の提供や、企業の機密情報の送受、オンラインバンキングなど、多岐かつ高価なものになってきている。多岐に渡るサービスに対応するため、パソコン、携帯端末、携帯電話、デジタル家電などの情報処理端末には、多くのクライアントソフトウェアがインストールされる。また、それらのソフトウェアにはサービスを受ける機能そのものの他に、高価な情報を保護するための機能が実装されている。
こうしたサービスで得られる価値が高まるにつれ、情報処理端末上のソフトウェアに不正な変更を加えるなどの方法でソフトウェアが課している制限を迂回されることによる被害が深刻化しており、サービスを提供しようとしている情報処理端末のクライアントソフトウェアおよびそれが動作するオペレーティングシステムを含んだ実行環境に不正な変更が加えられていないかどうか検証する必要性が増している。
そうした必要性に応えるため、TCG(Trusted Computing Group)などによって、情報処理端末において実行されているソフトウェアの情報を正確に伝える技術が提案されている。上記のTCGなどによって提案されている技術は、例えば特許文献1に公開されている。
図14は、TCGなどによって提案されている技術に基づき、検証サーバ1410が情報処理端末1400上で実行されているソフトウェアを検証するシステムの一例を示しており、情報処理端末1400には、TPM(Trusted Platform Module)1401と呼ばれる耐タンパモジュールが実装され、このモジュールによりセキュリティ上重要な情報である秘密鍵やハッシュ値を保護し、またセキュリティ上重要な処理を安全に実行する。
情報処理端末1400は、CPU1402が起動時からBIOSやローダ、カーネルといった実行されるソフトウェアのコードのハッシュを計算し、TPM1401に記憶させる。TPM1401は、この情報処理端末の状態を検証しようとする外部の存在である検証サーバ1410に対して、デジタル署名したハッシュを提示可能なため、検証サーバ1410が正しいハッシュと比較することで情報処理端末が正しいコードが実行された状態にあることを証明することが可能である。
ハッシュをとる対象は、より一般化され、ソフトウェアが起動した、ドライバがロードされた、のように生起したイベントについての情報を表現したデータ(以下エントリと呼ぶ)も含む。この形式の場合、プログラム名やそのコードのハッシュをエントリに入れることも可能であり、各エントリを結合した情報(以下イベントログあるいは単にログと呼ぶ)の内容が保証対象になる。
具体的には、情報処理端末1400のCPU1402は、BIOS, Loader, Kernel, App A, App Bとソフトウェアのコードを実行する際に、それぞれのハッシュを計算し(ハッシュ計算1421)、計算したハッシュ1422をTPM1401に送信し、さらに、そのエントリ1424をイベントログ1403に追加して記憶する。TPM1401はハッシュ1422が送られてくると、既に記憶している値と送られてきた値を連結し、ハッシュ演算を実行して、ひとつのハッシュにしてPCR(Platform Configuration Register)1404に記憶する(累積演算処理1423)。
このように後から改ざん検知の対象になるデータが増えた場合でも、順序も含めてひとつのハッシュで保証することが可能である。状態を累積していくため、以降このハッシュを累積ハッシュと呼ぶ。またこのようにハッシュを計算して累積していく処理を測定とも呼ぶ。
検証サーバ1410が情報処理端末1400上で実行されているソフトウェアを検証する場合、まず、検証サーバ1410から情報処理端末1400にチャレンジ1425が送信され、TPM1401は、受信したチャレンジ1425とPCR1404に格納された累積ハッシュとを連結してそれに電子署名を施し(電子署名処理1426)、さらに、証明書と、イベントログ1403と連結して検証情報1427として検証サーバ1410に送信する。
検証サーバ1410は、まず、証明書の署名を検証し、次に、電子署名を検証し、次に、受信したイベントログ1403のエントリと検証データDB1411に登録されているエントリとを照合し、さらに、改めて累積ハッシュを算出して受信した検証情報1427に含まれる累積ハッシュと照合し、さらにチャレンジ1425と受信した検証情報1427に含まれるチャレンジとを照合することで、情報処理端末1400上で実行されているソフトウェアを検証する。
このように、署名された累積ハッシュだけでなく、イベントログも通知することにより、より詳細に及んだ検証をすることも可能である。累積ハッシュにより、このイベントログも正しいことを検証することが可能なためである。
現実的には、ソフトウェアはいくつかの階層からなり、下層が同じであっても上層が違うなどの場合があるため、組み合わせが多様であり、全ての状態に一つの累積ハッシュを割りあてると検証が困難になりうる。そのため、TPMは複数の累積ハッシュを保持可能になっており、PCR0からPCR15まで16個のレジスタがあり、CPU1402はハッシュをTPMに送る際にどの累積ハッシュを更新するか番号(以下累積ハッシュ番号)で指定する。
特表2002−536757号公報
しかしながら、検証サーバ1410にイベントログを通知することによって、より詳しい検証が可能である反面、この場合、どのようなソフトウェア、どのようなネットワークサービスを利用しているかといったことまでが検証サーバ1410側に知られることになるので、プライバシー情報の漏洩が懸念され、セキュリティとの兼ね合いを考慮にいれるべきである。
プライバシー情報保護の観点からは、実行状態を通知する対象である対象サーバに応じて、通知する内容の一部を削除または隠蔽できるのが望ましい。しかしながら、前記従来の構成では、累積ハッシュの更新後にイベントログを変更すると、改ざんされたと解釈されるため、イベントログの内容を削除したり隠蔽したりするような変更はできない。
本発明は、前記従来の課題を解決するもので、プライバシー情報を保護しながら、イベントログの改ざん検知が可能な形で、自端末の状態を通知することが可能な情報処理端末を提供することを目的とする。
本発明の情報処理端末は、状態の変化を示すデータであるエントリを記録し、エントリを結合したログを通知する情報処理端末であって、エントリが通知可能か否かを通知相手ごとに判定する公開有無判定手段と、隠蔽処理を施したエントリを生成するログ隠蔽手段と、エントリを記憶するログ記憶手段と、ログの改ざん検知に用いるエントリの累積を通知相手ごとに保持する累積記憶手段と、前記公開有無判定手段の判定結果に基づきエントリの通知が不可の通知相手に対応する前記累積記憶手段が保持するエントリの累積は隠蔽処理を施したエントリに基づいて更新し、エントリの通知が可能な通知相手に対応する前記累積記憶手段が保持するエントリの累積は隠蔽処理を施していないエントリに基づいて更新するよう指示するログ複数測定手段と、前記公開有無判定手段の判定結果に基づき通知相手に対して通知が不可のエントリは隠蔽処理を施したエントリとなり通知相手に対して通知が可能なエントリは隠蔽処理を施していないエントリとなるように前記ログ記憶手段が記憶しているエントリから通知相手に通知するログを生成するログ構成手段と、通知相手に対応する前記累積記憶手段が保持するエントリの累積に電子署名を施したデータと前記ログ構成手段が生成したログとを含むデータを前記通知相手に送信する検証要求手段と、を備える。
そのため、通知相手ごとに送信するログの内容を変えてプライバシー情報を保護でき、なおかつ、改ざん検知が可能なように状態の累積を行うことができる。すなわち、アプリBというアプリケーションが起動しているにもかかわらず、アプリAに成りすまして、イベントログでは、アプリAが起動しているようにすることや、実際にはアプリC(スパイウェアなど)が起動しているにもかかわらず、イベントログには何の痕跡も残さないようにするイベントログの改ざんを検知可能な形でサーバに通知するとともに、各エントリの隠蔽の有無を通知相手ごとに変えてプライバシー情報を保護することができる。
また、本発明の情報処理端末は、前記累積記憶手段が保持するエントリの累積がエントリの累積ハッシュであることを特徴とする。
そのため、通知相手では、受信したログに対して累積ハッシュを計算し、受信したエントリの累積と照合することで、ログが改ざんされていないことを検証することができ、また、情報処理端末では累積記憶手段に必要となるメモリの容量を小さくすることが出来る。
また、本発明のセキュアデバイスは、情報処理端末の状態の変化を示すデータであるエントリの累積を保持する累積記憶手段と、前記累積記憶手段に保持されるエントリの累積の更新を行う累積演算手段と、前記エントリの累積に電子署名を行う署名手段と、前記情報処理端末から受信したログを検証する検証手段と、サービスを提供するサービスサーバと、を備える。
そのため、通知相手ごとに送信するログの内容を変えてプライバシー情報を保護し、なおかつ、改ざん検知が可能なようにサーバ等の相手に通知するので、相手は、通知されたログを検証、確認したうえで正当なユーザにサービスを提供することができる。また、重要な個人情報をセキュアデバイスに格納しておき、検証に成功したサービスサーバにだけ個人情報の取得や操作を許可することで、安全に個人情報を利用することが可能になる。
また、本発明のセキュアデバイスは、実行環境を提供する実行環境提供手段と、実行環境を記憶する実行環境記憶手段と、をさらに備える。
そのため、自身が提供した実行環境からのアクセスのみ許可するといったアクセス制御が可能になる。すなわち、実行環境のソフトウェアは、セキュアデバイスから情報処理端末へ提供されるので、セキュアデバイスは、情報処理端末上で実行環境を実現するために、どのソフトウェアが起動されているべきかを知っており、情報処理端末から受信したログと照合することで、自身が提供した実行環境からのアクセスかどうかを判断し、自身が提供した実行環境からのアクセスのみ許可することにより、セキュリティを向上させることができる。
また、本発明の情報処理端末のログ複数測定手段は、通知相手が異なる場合であってもエントリの累積の値が同じになる場合には、前記累積記憶手段には一つのエントリの累積として保持されるように更新を指示する。
そのため、余分な累積ハッシュの更新演算を省くことができるので、エントリの累積を更新する処理を高速化することができる。
また、本発明の情報処理端末は、ログ隠蔽手段が、マスターキーを保持し、エントリIDを前記マスターキーにより暗号化したものから暗号鍵を生成し、エントリを前記暗号鍵で暗号化するものである。
そのため、事後の開示要求に応えるために保持しておかなければならない情報をなくすことができるので、情報処理端末の記憶容量を削減することができる。
また、本発明の情報処理端末は、ログ隠蔽手段が、暗号鍵をランダムに生成し、エントリを前記暗号鍵で暗号化するものであり、前記暗号鍵を隠蔽情報として記憶する隠蔽情報記憶手段を備える。そのため、暗号鍵をランダムにすることができ、セキュリティを向上させることができる。
また、本発明の情報処理端末は、ログ隠蔽手段がエントリの内容の一部または全部を削除するものである。そのため、通知相手に応じて公開できる内容を制限することができ、セキュリティを向上させることができる。
また、本発明の情報処理端末は、エントリごとに異なるエントリIDを付与するID付与手段と、エントリごとの隠蔽に関する隠蔽情報をエントリIDと対応づけて記憶する隠蔽情報記憶手段と、隠蔽されたエントリの開示を要求された際に、エントリIDに対して隠蔽を解除する情報を取得ないしは生成し、要求してきた相手に開示してよいか判断し、開示してよいと判断した場合に、隠蔽を解除する情報または解除したエントリを渡すログ開示判定手段とを、さらに備える。
そのため、通知時には隠蔽したエントリを、必要に応じて後から解除できるので、情報処理端末上で発生した不具合や不正について分析する際など、必要に応じて隠蔽した情報を後から開示することが可能である。
また、本発明の情報処理端末は、ログ開示判定手段が、開示してよいか判断する際に、隠蔽を解除したエントリを利用者に提示し、利用者にエントリを開示してよいか指定させるものである。
そのため、利用者自身が、開示するエントリの内容を確認し、開示してよいか判断することができるので、利用者のプライバシー保護を向上させることができる。
また、本発明の状態通知方法は、情報処理端末が自端末の状態変化の履歴であるログをサーバに通知する方法であって、通知可能でないサーバ向けにエントリを隠蔽してログを生成するステップと、前記ログと、前記ログに対応する累積ハッシュに電子署名を施したデータと、前記電子署名を検証するための証明書とを連結した署名付ログを生成するステップと、前記署名付ログを前記サーバに送信するステップと、を有する。
そのため、サーバでは、まず、電子署名を検証することで、累積ハッシュ自体が改ざんされていないことが確認でき、さらに、累積ハッシュを照合することで、受信したエントリのログが、改ざんされていないことが確認できるので、通知相手ごとに送信するログの内容を変えてプライバシー情報を保護し、なおかつ、改ざん検知が可能なようにサーバに通知することができる。
本発明の情報処理端末によれば、通知するサーバによって各エントリの隠蔽の有無を変えることでプライバシー情報を保護しながら、イベントログの改ざん検知が可能な形で通知することが可能である。また、本発明の情報処理端末によれば、サービスを受ける上で、情報処理端末上で発生した不具合や不正について分析する際など、必要に応じて隠蔽した情報を後から開示することが可能である。
以下本発明の実施の形態について、図面を参照しながら説明する。
(第1の実施形態)
本発明の第1の実施形態では、耐タンパな記憶領域と処理装置を実装するセキュアモジュールを搭載した情報処理端末であり、起動時からイベントログを蓄積し、累積ハッシュを更新し、イベントログと、そのイベントログに対応する累積ハッシュに電子署名を施したデータと、その電子署名を検証するための証明書とを連結したデータ(以下では、この連結したデータを「署名付ログ」と呼ぶ)をサーバに送信し、検証してもらうことで、サービスを受ける情報処理端末について記載する。
図1は、本発明の第1の実施形態における構成図である。図1を用いて構成を述べる。情報処理端末10は、エントリをどのサーバに対して公開可能かを判定する公開有無判定部1001と、公開しないサーバ向けにエントリに隠蔽処理を施すログ隠蔽部1002と、隠蔽しないエントリと隠蔽したエントリの両方を受けとり公開有無判定部1001の判定結果に従って複数の累積ハッシュの更新を指示するログ複数測定部1003と、通知サーバに応じたログを構成するログ構成部1004と、署名付ログをサーバに通知し検証を要求する検証要求部1005と、ポリシーデータを記憶するポリシー記憶手段1006と、エントリを記憶するログ記憶手段1007と、エントリにエントリIDを付与するID付与部1008と、どのような隠蔽をしたかの隠蔽情報を記憶する隠蔽情報記憶手段1009と、入力されたエントリIDに対応するエントリの開示の可否を判定するログ開示判定部1010と、サーバからサービスを受けるサービスクライアント1011と、を備えている。
セキュアモジュール20は、ハッシュと累積ハッシュ番号を受けとり対応する累積ハッシュを更新する累積演算部2001と、累積ハッシュによる電子署名を演算する署名部2002と、累積ハッシュを記憶する累積ハッシュ記憶手段2003と、を備えている。セキュアモジュール20は望ましくは、耐タンパ性を備えている。
サーバ30は、署名付ログを検証する検証部3001と、隠蔽情報を受けとってエントリの隠蔽を解除するログ開示部3002と、ログを保存するログ保存手段3003と、ログを検証するためのデータが記録されたサーバDB3004と、サービスを提供するサービスサーバ3005と、を備えている。
情報処理端末10は、例えばパソコンや携帯電話であり、公開有無判定部1001、ログ隠蔽部1002、ログ複数測定部1003、ログ構成部1004、検証要求部1005、ID付与部1008、ログ開示判定部1010、サービスクライアント1011は、情報処理端末10が備えるCPUによって実行されるソフトウェアとして実現される。また、ポリシー記憶手段1006、ログ記憶手段1007、隠蔽情報記憶手段1009は、HDDや半導体メモリなどの記憶装置によって構成される。
セキュアモジュール20は、例えばTPMのような耐タンパ性を持ったチップであり、搭載された処理装置により累積演算部2001、署名部2002が実現され、搭載された記憶装置により累積ハッシュ記憶手段2003が実現される。
サーバ30は、例えば高性能なパソコンであり、検証部3001、ログ開示部3002、サービスサーバ3005などは備えられたCPUによって実行されるソフトウェアとして実現される。また、ログ保存手段3003、サーバDB3004は、HDDや半導体メモリなどの記憶装置によって構成される。
次に図5を用いて、イベント発生時にハッシュを累積する測定の動作について述べる。情報処理端末10で発生したイベント情報のエントリはID付与部1008に渡される。ID付与部1008はエントリにそのエントリを一意に特定可能なエントリIDを付与する(ID付与 ステップS101)。
公開有無判定部1001は、エントリをどのサーバに対して公開可能かをポリシー記憶手段1006に記憶されているポリシーデータを用いて判定する(公開有無判定 ステップS102)。なお、この場合、そのエントリのソフトウェアの提供者、または、情報処理端末10を含む情報システムのシステム管理者、または、情報処理端末10の利用者は、そのポリシーデータを誰に公開可能にするかを設定することができる。
ログ隠蔽部1002は、エントリをログ記憶手段1007に記憶して、さらに、公開しないサーバ向けにエントリに隠蔽処理を施す(ログ隠蔽 ステップS103)。このとき、ログインペイ部1002は、どのような隠蔽をしたかを表す隠蔽情報を隠蔽情報記憶手段1009に記憶する。
隠蔽処理は、例えば、ランダムに生成した鍵で暗号化を施すことであり、その場合は、その暗号鍵をエントリIDと対応づけて隠蔽情報として記憶する。あるいは、マスターキーと呼ばれる機器固有の暗号鍵を秘匿しておき、エントリIDをこのマスターキーで暗号化したデータから隠蔽に用いる鍵を生成してもよい。また、他の隠蔽処理としては、完全に削除してしまってもよいし、一部の情報だけを残すようにしてもよい。その場合、事後に開示を可能にする場合は、エントリそのものを隠蔽情報として記憶する。
ログ複数測定部1003は、隠蔽しないエントリと隠蔽したエントリの両方を受けとり公開有無判定部1001の判定結果に従って複数の累積ハッシュの更新をセキュアモジュール20に対して指示する(ログ複数測定 ステップS104)。より具体的には各サーバに対応した累積ハッシュに、必要に応じて隠蔽処理の施されたエントリのハッシュの累積処理を、セキュアモジュール20に累積ハッシュ番号とハッシュを渡して指示する。
セキュアモジュール20の累積演算部2001は、ハッシュと累積ハッシュ番号を受けとり、対応する累積ハッシュを更新する。累積ハッシュは累積ハッシュ記憶手段2003に記憶される(累積演算処理 ステップS105)。
次に図6(a)(b)を用いて、サービスクライアントがサービスサーバに対して状態を通知する動作について述べる。この動作により、サービスクライアントは、サービスサーバからサービスを受けるために、現在の情報処理端末の状態が、望ましい状態にあることを、サービスサーバが確認できるよう通知する。まず、サービスクライアント1011は、検証要求部1005に検証を要求する(検証要求 ステップS111)。
検証要求部1005は、ログ構成部1004に署名付ログを要求する(署名付ログ要求 ステップS112)。ログ構成部1004は、ログ記憶手段1007から対応するエントリを取りだし、必要に応じて隠蔽処理を施して、通知サーバに応じたログを構成し、通知サーバに応じた累積ハッシュ番号を指定して署名部2002に署名を要求する(署名要求 ステップS113)。
署名部2002は、指定された累積ハッシュ番号の累積ハッシュに対する電子署名を演算する(署名処理 ステップS114)。この電子署名の演算は、典型的には累積ハッシュをセキュアモジュール20の署名鍵により処理する演算であり、RSA等のよく知られた手法で演算する。同じデータ列に対するハッシュは同じ値になり、アルゴリズムによっては電子署名の結果も同じものになるため、サーバから受け取った乱数を使う、エントリにタイムスタンプを含むなどして、再送攻撃に対する対策を施すことが望ましい。
この電子署名は、再構成されたログに対応する累積ハッシュに対する電子署名であり、署名部2002から電子署名を受信した検証要求部1005は署名付ログを生成し、この署名付ログが検証部3001に送られる(署名付ログ送信 ステップS115)。
検証部3001は、署名付ログを受信し、まず、証明書を検証し、さらに証明書に含まれる公開鍵を用いて累積ハッシュに施された署名の検証により累積ハッシュが改ざんされていないことを確認し、受信したエントリのログから累積ハッシュを計算し、受信した累積ハッシュと照合することで、受信した累積ハッシュとエントリのログに不整合が無いことを検証する。
さらに、サーバDB3004からログを検証するためのデータを取りだして、ログを検証する(ログ検証 ステップS116)。また、検証部3001は受信した署名付ログをログ保存手段3003に保存する。
サービスサーバ3005は、サービスクライアント1011の動作状態が問題ないことの確認を受け、サービスを提供する(サービス提供 ステップS117)。望ましくは、この一連の通知・検証の通信の中でサービスクライアント1011とサービスサーバ3005との間でセッション鍵を共有し、サービス提供時の通信に用いる。
次に図7および図6(c)を用いて、情報処理端末10がサーバ30に通知した時には隠蔽したエントリを開示する動作について述べる。
情報処理端末10のログ開示判定部1010は、エントリIDにより指定されたエントリの開示の可否を判定し(ログ開示判定 ステップS121)、開示可能と判定された際に、隠蔽情報記憶手段1009からそのエントリの隠蔽情報を取りだし、開示先に送信する(隠蔽情報送信 ステップS122)。
ログの開示要求者は、例えば、動作の不具合を発見した利用者、または、不正の疑いを持ったサーバ管理者であり、開示を要求するエントリをエントリIDで指定する。開示の判定は、ログ開示判定部1010が一定のルール(例えば、認証済みの利用者、または、認証済みのサーバからの要求に対してのみ開示するなど)に従って自動的に行う。開示される情報にはプライバシー情報が含まれる場合があるので、利用者から入力される指示をログ開示判定部1010が行う開示判定の要素に含めるようにしても良い。この場合、利用者は、エントリの内容と開示の必要性から判断し、情報処理端末に指示を入力する。また、エントリの開示の要求では、エントリIDではなく隠蔽したエントリをログ開示判定部1010に入力してもよい。また、エントリの開示先に対して、隠蔽情報ではなく隠蔽を解除したエントリを送信するようにしてもよい。
サーバ30のログ開示部3002は、隠蔽情報を受けとってログ保存手段3003から隠蔽されたエントリを取りだし、エントリの隠蔽を解除する(隠蔽解除 ステップS123)。
次に図8を用いてデータの具体例について説明する。図8(a)は、エントリのデータの具体例である。一行目は、エントリIDである。二行目は、イベントが発生した時刻を表わすタイムスタンプである。三行目はイベントのタイプを表わしており、ここでは、コンポーネントがロードされたことを示している。ロード以外には例えばアンロードがタイプとしてありうる。四行目は、関与したコンポーネントを特定できる名前である。五行目は、コンポーネントのハッシュである。六行目は、バージョンを表わしている。イベントのタイプによっては、不要な行もある。
図8(c)は、ポリシーのデータの具体例である。一行目は、サービスの名称である。二行目は、サービスから提供されたコンポーネント名の一覧である。三行目は、サービスを提供するサーバの名称である。この他に、通知を許可するサーバ(あるいはサービス)の名称を含められてもよい。
これから具体例について説明するが、まず概要を述べる。情報処理端末では、電源が入るとBIOS、Loader、Kernelの順に実行され、そのイベントが測定される。その後、Kernelの機能により、測定やアプリケーションの実行がなされる。
発生したイベントはどのサービスに属するものか判別され、さらにどのサーバに通知して良いかが判断され、測定される。このとき通知してもよいサーバに対応する累積ハッシュに対しては平文のままのエントリが累積され、通知してはいけないサーバに対応する累積ハッシュに対しては一部が暗号化されたエントリが累積される。
アプリケーションがサーバに接続する時など必要な時に、そのサーバに対して通知すべきログがエントリから構成され、対応する累積ハッシュに署名がつけられサーバに送信される。サーバは、受け取ったログが改ざんされていないか検証し、改ざんがされていないことを確認すると、ログを検証する。ログの内容から、必要な正規のコンポーネントが起動していることを確認し、サービスを提供する。
サービス提供開始後、他のサービスのコンポーネントが存在することで不具合が発生し、当該コンポーネントのエントリの中身をサーバの管理者に確認してもらうために開示する。
次に図9を用いて第1の実施形態の具体例について説明する。この具体例において、システムについてのログはサーバによって変えることなく常に全て送信されるため、効率上、別に測定する。そのため、システム測定部を新たに設けたが、この構成は必須ではない。
まず、コンポーネントが実行されるとイベントが発生し、エントリが生成される。このエントリには前述のタイムスタンプ、タイプ、名前、ハッシュ、バージョンが記載される。この例では、BIOS、Loader、Kernel、App A、App B、App Cの順で実行される。BIOS、Loader、Kernel、App A、App B、App Cは、それぞれ、複数のコンポーネントを含んでいても良く、その場合にも個々のコンポーネントの実行に対してエントリが生成される。App Aは、サービスAのクライアントソフトウェアである。同様にApp B、App CはそれぞれサービスB、サービスCのクライアントソフトウェアである。この後の説明は、厳密にはkernelより後の測定について当てはまるが、BIOS、Loader、Kernelについても同様の処理が行われたものとする。
ID付与部1008は、生成されたエントリに順に数字を割りあてていく。この数字は、1から始まり、単調に増加する。この値は電源を切ってもリセットされず保持される。
公開有無判定部1001は、エントリIDの割り当てられたエントリを受けとり、ポリシー記憶手段1006に記憶されているポリシーを利用して、エントリをどのサーバに対して通知してよいか判定する。コンポーネントの属するサービスとそのサービスに対応するサーバを特定し、そのサーバへは通知可能と判定する。
その他、関連するサーバへの通知を認めてもよい。その場合はポリシーにその旨記載される。この例では、BIOS、Loader、Kernelがシステムのエントリ、App AがサーバAへ通知可能、App BがサーバBに通知可能、App CはサーバAとサーバBに通知可能と判定されている。
図8(a)に例示したエントリと図8(c)に例示したポリシーAおよび(d)に例示したポリシーBを用いて具体的に説明する。
公開有無判定部1001は、エントリから名前drm−b.dllを得て、ポリシーのServiceFiles欄にその名前が含まれているか探していく。ポリシーA(図8(c))の中には、含まれていないが、ポリシーB(図8(d))の中には含まれているので、App Bに対応するエントリであることがわかる。そのポリシーBのServer欄の内容が通知可能なサーバ名であり、この例では、drm.example.orgである。こうして、drm.example.org(これがサーバBであるとする)に通知可能、他には通知不可と判定される。
望ましくはデータベースを用いるなど名前からサービスを高速に探すために、名前からサービスを索けるよう効率的なデータの保持の仕方をする。
ログ隠蔽部1002は、システムに属するエントリの場合はシステム測定部1014にそのままエントリを渡す。それ以外の場合は、エントリに隠蔽処理を施し、ログ複数測定部1003にもとのエントリと隠蔽したエントリを渡す。なお、図中、エントリにかかっている斜線は隠蔽処理が施されていることを図示している。
隠蔽処理の例を説明する。エントリIDとタイムスタンプは隠蔽せずに残すものとする。まず、隠蔽する部分の平文のハッシュを計算し、三行目に挿入する。次に、エントリIDをマスターキーで暗号化したデータから暗号化に使う鍵を生成する。最後に、エントリの四行目以降を暗号化することで隠蔽処理とする。図8(b)に隠蔽したエントリの例を示した。この方法では、隠蔽情報として特に何も保存しなくてよい。一行目をサーバから受けとることで復号するための鍵を生成できるからである。この暗号化に使う鍵をランダムに生成する場合はエントリIDと鍵を対応づけて記憶しておく。
ログ記憶手段1007には、もとのエントリと通知可能なサーバ一覧を記憶させる。隠蔽処理を施したエントリも記憶させておくと通知時の処理が高速になるが、余分に記憶させることになるため、ログ記憶手段1007の容量に応じて使いわける。
システム測定部1014は、エントリのハッシュを計算し、システムに対応した累積ハッシュ番号とともに累積演算部2001に送信する。累積演算部2001は、システムに対応した累積ハッシュである累積ハッシュSに累積する。
ログ複数測定部1003は、もとのエントリと隠蔽されたエントリを受けとり、全サーバに対して、各サーバ向けに処理されたエントリのハッシュを各サーバに対応した累積ハッシュ番号とともに累積演算部2001に送信する。累積ハッシュ番号は、初めてエントリを累積するときにまだ使用されていない累積ハッシュの番号が割り当てられ、後の使用のためにサーバに対応付けて記憶される。
累積演算部2001は、サーバAに対するエントリのハッシュは累積ハッシュAに、サーバBに対するエントリのハッシュは累積ハッシュBにと、各サーバに対応する累積ハッシュに累積する。図9に示した具体例の場合、累積ハッシュAには、App Aに関連するエントリはエントリのハッシュがそのまま累積され、App Bに関連するエントリは隠蔽されたエントリのハッシュが累積される。逆に、累積ハッシュBには、App Aに関連するエントリは隠蔽されたエントリのハッシュが累積され、App Bに関連するエントリはエントリのハッシュがそのまま累積される。
累積の際には、まだ起動されていないアプリケーションに対応するサービスのサーバに対する累積ハッシュついても累積することになる。多くのサービスは、自身のサーバにしか通知を許可しないことが想定される。起動されていないアプリケーションに対応するサービスのサーバに対する累積ハッシュに対しては、他のサービスのエントリが累積されていくため、多くの場合、隠蔽されたエントリが累積される。この場合、まだ起動されていない複数のアプリケーションに対応するサービスのサーバに対するそれぞれの累積ハッシュの値は等しくなる。この性質を用いて、起動するまでは一つの累積ハッシュとして累積しておき、必要に応じて、分岐して累積していくと累積に必要な演算量を減らすことができる。
以上が累積の流れである。続いて通知について説明する。サービスを受けるサービスクライアントが、通知のためにログ構成部に通知サーバ名を渡して、署名されたログを要求する。
ログ構成部1004は、ログ記憶手段1007から、エントリを取りだし連結してログを構成する。この際、通知サーバ名が通知可能なサーバ一覧に含まれている場合はそのまま、含まれていない場合は隠蔽処理が施されたエントリを連結する。累積時に隠蔽処理を施したものを記憶してあればそれを用いる。さらに、システムのログに対応する累積ハッシュとサービスに対応する累積ハッシュへの署名を署名部2002に要求する。
署名部2002は、指定された累積ハッシュに署名を施す。ログ構成部1004は、このログと署名とを検証要求部1005に返し、検証要求部1005はさらに証明書を連結して署名付ログを生成し、サーバに通知する。例えば、サーバA301は、累積ハッシュSと累積ハッシュAにそれぞれ署名が施されたデータと、App Bのエントリが隠蔽されたログと、証明書とから構成される署名付ログAを受け取り、サーバB302は累積ハッシュSと累積ハッシュBにそれぞれ署名が施されたデータと、App Aのエントリが隠蔽されたログと、証明書とから構成される署名付ログBを受けとる。
各サーバともログ保存手段3003にログを記憶する。各サーバは、まず、証明書を検証し、さらに証明書に含まれる公開鍵を用いて累積ハッシュに施された署名を検証することにより、ログが改ざんされていないことを確認し、受信したエントリのログから累積ハッシュを計算し、受信した累積ハッシュと照合することで、受信した累積ハッシュとエントリのログに不整合が無いことを検証する。この時、隠蔽されたエントリについても、隠蔽されていないエントリの場合と同様にハッシュを計算して累積ハッシュを計算する。各サーバは、サービスを提供するために必要十分なエントリを知ることができ、さらに、サーバDBの情報を用いて情報処理端末の状態がサービスを提供して問題ない状態にあるか確認できる。
例えば、App Aのコンポーネントに不正な改ざんがなされていないことや、不正なコンポーネントが動作していないこと、あるいや逆に必要な別のコンポーネント(例えば、drm−b.dllなど)が動作していることを確認できる。一方、端末の利用者は、さしあたり不要なエントリを開示しなくてすみ、プライバシーが保護される。
以上が通知の流れである。続いて開示について説明する。サーバAの利用者がサービスのサービスクライアントが正常に動作せず、サービスを受けられないことに気づき、サーバAにその旨通知したとする。サーバAの管理者は、その通知を受け、不具合の検証のために、隠蔽されたエントリ(App Bについてのエントリ)の内容を知る必要があると考えた場合に、ログ開示判定部1010に、隠蔽されたエントリのエントリIDを送信して、そのエントリの開示を要求する。
ログ開示判定部1010は、エントリIDに対応するエントリを開示してよいか判定する。この例では、隠蔽されたエントリからエントリIDを取りだし、それらをマスターキーで暗号化したデータから暗号鍵を生成して、隠蔽を解除し、利用者にエントリの内容を提示し、利用者が開示の可否を判定する。
利用者が、App Bに関するエントリ内容を確認し、開示が可能と判定してその旨の指示を入力すると、情報処理端末10は隠蔽を解除したエントリをサーバAに送信する。サーバAは隠蔽されていた部分の平文のハッシュを計算し、隠蔽されたエントリの中に含まれる対応するハッシュ値(図8(b)に示した例における三行目のハッシュ値に相当)と比較することで、正しい内容であることを確認する。
以上が開示の流れである。このように、通知時は隠蔽したエントリの内容を、後日開示する必要があった場合に、開示することが可能である。
以上説明したように、本実施の形態では、サーバへは、電子署名が施された累積ハッシュと、再構成されたエントリのログが送られる。サーバでは、電子署名の検証処理と、累積ハッシュとエントリのログとの整合性を検証する。サーバは、まず、累積ハッシュに施された電子署名を検証することで、情報処理端末に保存されていた累積ハッシュであることを検証し、次に、受信したエントリのログから累積ハッシュを計算し、受信した累積ハッシュと照合することで、受信した累積ハッシュとエントリのログに不整合が無いことを検証する。これにより、セキュリティとプライバシー情報の保護を両立することが可能である。
なお、本実施の形態において、ID付与部1008はエントリにそのエントリを一意に特定可能なエントリIDを付与したが、同一内容のエントリには同一IDを付与してもよい。
なお、本実施の形態において、公開有無判定部1001は公開可能なサーバだけを判定し、サーバごとに隠蔽の有無だけを判定したが、サーバごとに異なる隠蔽処理を行うよう判定してもよい。なお、本実施の形態において、各コンポーネントの確認はサーバが行っているが、情報処理端末10上で、例えば証明書による検証を行い、その結果をエントリに含めてもよい。
なお、本実施の形態において、システムに属するエントリは全て公開しているが、これらについても、サーバ毎に通知する内容を変えるようにしてもよい。例えば、利用者がポリシーを提供してもよく、システムのエントリについて制限してもよい。例えば、通知する必要のないデバイスドライバに関するエントリを通知しないことで使用しているデバイスを知られずにすむといった具合である。
(第2の実施形態)
本発明の第2の実施形態では、サービスクライアントが仮想実行環境上で実行されている場合について記載する。仮想実行環境は仮想化ソフトウェアによりKernelによる実行環境と分離されるため、相互に影響を与えることがなく、異なる実行環境上で動作するコンポーネントを通知する必要がなくなる。ただし、そのためには仮想化ソフトウェアと仮想化ソフトウェアが実行されるまでのコンポーネントについては検証可能でなければならない。
図2は、本発明の第2の実施形態における構成図である。図2を用いて構成を述べる。情報処理端末10は、第1の実施形態の情報処理端末に加え、起動したKernelとは別のKernelにより実現される仮想実行環境1012と、仮想実行環境1012の実行を可能にする仮想化ソフトウェア1013と、をさらに備えている。
次に動作について述べる。情報処理端末10の電源が入れられ、Kernelが起動した後、仮想化ソフトウェア1013が測定され起動される。仮想化ソフトウェア1013により、仮想実行環境1012が用意され実行される。仮想実行環境1012と、もとの実行環境とは仮想化ソフトウェア1013により分離され、仮想実行環境およびその上で動作するアプリケーションはもとの実行環境に直接影響を与えられない。
サービスクライアント1011は仮想実行環境1012上で実行される。この際、サービスクライアント1011についても測定されるが、もとの実行環境が測定に使っている累積ハッシュとは異なるハッシュに累積する。サービスクライアント1011が複数実行される際には第1の実施形態と同様に複数累積をするが、これらももとの実行環境が使っている累積ハッシュとは異なるハッシュに累積する。
もとの実行環境上で動くサービスクライアントは、もとの実行環境の累積ハッシュを、仮想実行環境上で動くサービスクライアントは、仮想実行環境の累積ハッシュを用いてサービスサーバに通知することにより、よりプライバシーを向上させることができる。
リソースを多く使うが、実行環境を複数用意し、一つの実行環境に割りあてるサービスクライアントの数を減らすことで、さらにプライバシーを向上させることができる。これを押しすすめると、一つのサービスクライアントに一つの実行環境を割りあてることもできる。この場合、不具合が発生した場合、サービスクライアント自身か、その実行環境、仮想化ソフトウェア、あるいはさらに下のコンポーネントのいずれかが原因と特定できる。
図12を用いて、具体例で説明する。情報処理端末が起動後、BIOS、Loader、Kernel、VL(Virtualization Layerの略で、仮想化ソフトウェアのことである)、Kernel’(仮想実行環境のことである)、もとの実行環境で、App A、App B、仮想実行環境でApp C、App Dの順で各ソフトウェアが起動される。図13(a)にこの状態のソフトウェアスタックの図を示した。
各サービスは、いずれも自分のサーバにのみ自分のエントリの通知を許可しているものとする。BIOS、Loader、Kernel、VL、Kernel’はシステムのエントリであり公開するものとする。
仮想実行環境の状態の正しさを保証するためには、もとの実行環境の正しさも保証される必要があるため、もとの実行環境についてのエントリを仮想実行環境に引き継ぐ。これは仮想化ソフトウェアを経由して、仮想実行環境に引き継がれる。引き継がれたエントリと仮想実行環境になるKernel’のエントリとが累積されて仮想実行環境としての累積ハッシュS’が形成される。
BIOS、Loader、Kernel、VL、App A、App Bは第一の実施形態と同様に累積される。VL起動後に、Kernel’が起動され、その上で、App C、App Dが起動される。Kernel’より後の仮想実行環境上のエントリは、もとの実行環境とは独立した累積ハッシュに累積される。
図12の矢印は、どのエントリがどの累積ハッシュに累積されるかを表している。例えば、累積ハッシュAには、App Aのエントリをそのまま、App Bのエントリを隠蔽して累積する。App C、App Dのエントリは累積されない。同様に、累積ハッシュCにも、App Cをそのまま、App Dを隠蔽して累積する。App A、App Bのエントリは累積されない。
各サーバには、サービスクライアントが動作している実行環境自身とその実行環境上で動作しているアプリケーションについてのエントリから生成されたログが通知される。例えば、サーバAには、それぞれ署名が施された累積ハッシュSと累積ハッシュAとを含む署名付ログAが通知され、サーバCには、それぞれ署名が施された累積ハッシュS’と累積ハッシュCとを含む署名付ログCが通知される。
このように、VLにより互いの実行環境が影響を与えないことが保証され、不具合や不正の原因にはならないため、異なる実行環境で動いているコンポーネントについてのエントリは通知しなくて済む。
なお、本実施の形態において、仮想化ソフトウェア1013は、Kernelの起動した後に動作したが、図13(b)のように、最初に起動されるプログラムが仮想化ソフトウェア1013であり、その上で、Kernelとまた別のKernel’が起動する形でもよい。
(第3の実施形態)
本発明の第3の実施形態では、耐タンパな記憶領域と処理装置を実装する着脱可能なセキュアデバイスを装着した情報処理端末について記載する。図3は、本発明の第3の実施形態における構成図である。
図3を用いて構成を述べる。各構成ブロックの処理内容は第1の実施形態と同様である。情報処理端末10は、公開有無判定部1001と、ログ隠蔽部1002と、ログ複数測定部1003と、ログ構成部1004と、検証要求部1005と、ポリシー記憶手段1006と、ログ記憶手段1007と、サービスクライアント1011と、を備えている。
セキュアデバイス40は、累積演算部4001と、署名部4002と、累積ハッシュ記憶手段4003と、検証部4004と、サーバDB4005と、サービスサーバ4006と、を備えている。
次に図10を用いて、イベント発生時にハッシュを累積し測定する動作について述べる。情報処理端末10で発生したイベント情報のエントリは公開有無判定部1001に渡される。公開有無判定部1001は、エントリをどのサーバに対して公開可能かをポリシー記憶手段に記憶されているポリシーデータを用いて判定する(公開有無判定 ステップS201)。この時、公開有無判定部1001は、セキュアデバイス40上のサービスサーバ4006に対しても判定する。
ログ隠蔽部1002は、エントリを公開しないサーバ向けにエントリに隠蔽処理を施す(ログ隠蔽 ステップS202)。このとき、隠蔽処理を施したエントリをログ記憶手段1007に記憶する。
ログ複数測定部1003は、隠蔽しないエントリと隠蔽したエントリの両方を受けとり公開有無判定部1001の判定結果に従って複数の累積ハッシュの更新を指示するコマンドをセキュアデバイス40に送信する(ログ複数測定 ステップS203)。より具体的には、セキュアデバイス40に送信するコマンドの中に、累積ハッシュ番号とハッシュを含めて各サーバ(セキュアデバイス40上のサービスサーバ4006を含む)に対応した累積ハッシュに、必要に応じて隠蔽処理の施されたエントリのハッシュの累積処理を指示する。
セキュアデバイス40の累積演算部4001は、ハッシュと累積ハッシュ番号を含んだコマンドを受けとり、対応する累積ハッシュを更新する。累積ハッシュは累積ハッシュ記憶手段4003に記憶される(累積演算処理 ステップS204)。
次に図11を用いて、サービスクライアントがサービスサーバに対して状態を通知する動作について述べる。サービスクライアント1011は、検証要求部1005に検証を要求する(検証要求 ステップS211)。
検証要求部1005は、ログ構成部1004に署名付ログを要求する(署名付ログ要求 ステップS212)。ログ構成部1004は、ログ記憶手段1007から対応するエントリを取りだし、必要に応じて隠蔽処理を施して、通知サーバに応じたログを構成し、署名部4002に署名を要求する(署名要求 ステップS213)。
署名部4002は、指定された累積ハッシュ番号の累積ハッシュによる電子署名を演算する(署名処理 ステップS214)。この電子署名の演算は、典型的には累積ハッシュをセキュアデバイス40の署名鍵により処理する演算であり、RSA等のよく知られた手法で演算する。
この電子署名は、再構成されたログに対応する累積ハッシュに対する電子署名であり、署名部2002から電子署名を受信した検証要求部1005は署名付ログを生成し、この署名付ログが検証部4004に送られる(署名付ログ送信 ステップS215)。
検証部4004は、署名付ログを受信し、まず、証明書を検証し、さらに証明書に含まれる公開鍵を用いて累積ハッシュに施された署名の検証により累積ハッシュが改ざんされていないことを確認し、受信したエントリのログから累積ハッシュを計算し、受信した累積ハッシュと照合することで、受信した累積ハッシュとエントリのログに不整合が無いことを検証する。さらにサーバDB4005からログを検証するためのデータを取りだして、ログを検証する(ログ検証 ステップS216)。
サービスサーバ4006は、サービスクライアント1011の動作状態が問題ないことの確認を受け、サービスを提供する(サービス提供 ステップS217)。望ましくは、この一連の通知・検証の通信の中でサービスクライアント1011とサービスサーバ4006との間でセッション鍵を共有し、サービス提供時の通信に用いる。
このように、例えば、重要な個人情報をセキュアデバイスに格納しておき、検証に成功したサービスクライアントにだけ個人情報の取得や操作を許可することで、安全に個人情報を利用することが可能になる。なお、本実施の形態において、セキュアデバイス上にサーバ機能を実装したが、もちろん通常のネットワーク上のサーバであってもよい。また、以上では、検証部4004は、署名が施された累積ハッシュを情報処理端末10の検証要求部1005から受信するとしたが、セキュアデバイスの内部のインターフェイスを介して累積ハッシュ記憶手段4004に格納されている累積ハッシュを受信し、検証要求部1005からは、再構成されたログだけを受信するようにしても良い。
(第4の実施形態)
本発明の第4の実施形態では、第3の実施形態において、サービスクライアントが仮想実行環境上で実行されている場合について記載する。図4は、本発明の第4の実施形態における構成図である。
情報処理端末10は、第3の実施形態の情報処理端末に加え、起動したKernelとは別のKernelにより実現される仮想実行環境1012と、仮想実行環境1012の実行を可能にする仮想化ソフトウェア1013と、をさらに備えている。
セキュアデバイス40は、第3の実施形態のセキュアデバイスに加え、仮想実行環境を提供する実行環境提供部4007と、仮想実行環境を記憶する実行環境記憶手段4008と、をさらに備えている。
次に動作について述べる。情報処理端末10の電源が入れられ、Kernelが起動した後、仮想化ソフトウェア1013が測定され起動される。
仮想化ソフトウェア1013は、セキュアデバイス40の実行環境提供部4007に実行環境を要求する。実行環境提供部4007は、実行環境記憶手段4008から仮想実行環境のイメージを取り出し、仮想化ソフトウェア1013に送信する。仮想化ソフトウェア1013は、仮想実行環境1012を実行する。仮想実行環境1012と、もとの実行環境とは仮想化ソフトウェア1013により分離され、仮想実行環境およびその上で動作するアプリケーションはもとの実行環境に直接影響を与えられない。
サービスクライアント1011が仮想実行環境1012上で実行される。この際、サービスクライアント1011についても測定されるが、もとの実行環境が測定に使っている累積ハッシュとは異なるハッシュに累積する。サービスクライアント1011が複数実行される際には第3の実施形態と同様に複数累積をするが、これらももとの実行環境が使っている累積ハッシュとは異なるハッシュに累積する。
もとの実行環境上で動くサービスクライアントは、もとの実行環境の累積ハッシュを、仮想実行環境上で動くサービスクライアントは、仮想実行環境の累積ハッシュを用いてサービスサーバに通知することにより、よりプライバシーを向上させることができる。
検証部4004が通知されたログを検証し、サーバDB4005のデータを用いて内容を確認する。サービスサーバ4006は、その結果を受け、サービスを提供するかどうか判断する。例えば、実行環境提供部4007が送信した仮想実行環境1012の上で動いているアプリケーションからの要求以外は答えないといった具合である。なお、本実施の形態において、実行環境提供部4007は、仮想実行環境1012だけ提供したが、さらにその上で動作するアプリケーションを提供してもよい。また、以上では、検証部4004は、署名が施された累積ハッシュを情報処理端末10の検証要求部1005から受信するとしたが、セキュアデバイスの内部のインターフェイスを介して累積ハッシュ記憶手段4004に格納されている累積ハッシュを受信し、検証要求部1005からは、再構成されたログだけを受信するようにしても良い。
なお、本実施の形態において、セキュアデバイス上にだけ、累積演算部と累積ハッシュ記憶手段と署名部があったが、第1の実施形態のように情報処理端末にセキュアモジュールを備えさせ、システムについてなど一部の測定は情報処理端末の機能を用いて実現してもよい。さらに、セキュアデバイスの装着時などにセキュアデバイスが保持する累積ハッシュをリセットしてもよい。
本発明の情報処理端末は、プライバシー情報を保護したまま、情報処理端末の状態を通知可能であるため、セキュリティとプライバシーを両立することが可能であり、例えば、携帯電話、携帯情報端末(PDA)、パーソナルコンピュータ、音楽再生(及び録音)装置、カメラ、ビデオカメラ等、各種の情報処理端末に適用することができる。
本発明の第1の実施形態における構成図 本発明の第2の実施形態における構成図 本発明の第3の実施形態における構成図 本発明の第4の実施形態における構成図 本発明の第1の実施形態における累積動作の説明図 (a)本発明の第1の実施形態における情報処理端末における通知動作の説明図 (b)本発明の第1の実施形態におけるサーバの検証動作の説明図 (c)本発明の第1の実施形態における隠蔽したエントリを開示する動作の説明図 本発明の第1の実施形態における開示動作説明図 本発明の第1の実施形態の具体例の説明図 本発明の第1の実施形態のデータの具体例の説明図 本発明の第3の実施形態における累積動作の説明図 本発明の第3の実施形態における通知動作の説明図 本発明の第3の実施形態における具体例の説明図 本発明の第2の実施形態におけるソフトウェアスタックの図 従来の技術に基づく情報処理端末上で実行されているソフトウェアを検証するシステムの説明図
符号の説明
10 情報処理端末
1001 公開有無判定部
1002 ログ隠蔽部
1003 ログ複数測定部
1004 ログ構成部
1005 検証要求部
1006 ポリシー記憶手段
1007 ログ記憶手段
1008 ID付与部
1009 隠蔽情報記憶手段
1010 ログ開示判定部
1011 サービスクライアント
1012 仮想実行環境
1013 仮想化ソフトウェア
1014 システム測定部
20 セキュアモジュール
2001 累積演算部
2002 署名部
2003 累積ハッシュ記憶手段
30 サーバ
3001 検証部
3002 ログ開示部
3003 ログ保存手段
3004 サーバDB
3005 サービスサーバ
40 セキュアデバイス
4001 累積演算部
4002 署名部
4003 累積ハッシュ記憶手段
4004 検証部
4005 サーバDB
4006 サービスサーバ
4007 実行環境提供部
4008 実行環境記憶手段

Claims (11)

  1. 状態の変化を示すデータであるエントリを記録し、エントリを結合したログを通知する情報処理端末であって、
    エントリが通知可能か否かを通知相手ごとに判定する公開有無判定手段と、
    隠蔽処理を施したエントリを生成するログ隠蔽手段と、
    エントリを記憶するログ記憶手段と、
    ログの改ざん検知に用いるエントリの累積を通知相手ごとに保持する累積記憶手段と、
    前記公開有無判定手段の判定結果に基づき、
    エントリの通知が不可の通知相手に対応する前記累積記憶手段が保持するエントリの累積は隠蔽処理を施したエントリに基づいて更新し、
    エントリの通知が可能な通知相手に対応する前記累積記憶手段が保持するエントリの累積は隠蔽処理を施していないエントリに基づいて更新するよう指示する、
    ログ複数測定手段と、
    前記公開有無判定手段の判定結果に基づき、
    通知相手に対して通知が不可のエントリは隠蔽処理を施したエントリとなり、
    通知相手に対して通知が可能なエントリは隠蔽処理を施していないエントリとなるように前記ログ記憶手段が記憶しているエントリから通知相手に通知するログを生成するログ構成手段と、
    通知相手に対応する前記累積記憶手段が保持するエントリの累積に電子署名を施したデータと前記ログ構成手段が生成したログとを含むデータを前記通知相手に送信する検証要求手段と、
    を備えた情報処理端末。
  2. 前記累積記憶手段が保持するエントリの累積がエントリの累積ハッシュであることを特徴とする請求項1に記載の情報処理端末。
  3. 請求項1に記載の情報処理端末に装着されるセキュアデバイスであり、
    情報処理端末の状態の変化を示すデータであるエントリの累積を保持する累積記憶手段と、
    前記累積記憶手段に保持されるエントリの累積の更新を行う累積演算手段と、
    前記エントリの累積に電子署名を行う署名手段と、
    前記情報処理端末から受信したログを検証する検証手段と、
    サービスを提供するサービスサーバと、
    を備えたセキュアデバイス。
  4. 実行環境を提供する実行環境提供手段と、
    実行環境を記憶する実行環境記憶手段と、
    をさらに備えた請求項3に記載のセキュアデバイス。
  5. 前記ログ複数測定手段が、通知相手が異なる場合であってもエントリの累積の値が同じになる場合には、前記累積記憶手段には一つのエントリの累積として保持されるように更新を指示することを特徴とする請求項1に記載の情報処理端末。
  6. 前記ログ隠蔽手段は、マスターキーを保持し、エントリIDを前記マスターキーにより暗号化したものから暗号鍵を生成し、エントリを前記暗号鍵で暗号化することを特徴とする請求項1に記載の情報処理端末。
  7. 前記ログ隠蔽手段は、暗号鍵をランダムに生成し、エントリを前記暗号鍵で暗号化し、
    前記暗号鍵を隠蔽情報として記憶する隠蔽情報記憶手段を備えることを特徴とする請求項1に記載の情報処理端末。
  8. 前記ログ隠蔽手段が、エントリの内容の一部または全部を削除することを特徴とする請求項1に記載の情報処理端末。
  9. エントリごとに異なるエントリIDを付与するID付与手段と、
    エントリごとの隠蔽に関する隠蔽情報をエントリIDと対応づけて記憶する隠蔽情報記憶手段と、
    隠蔽されたエントリの開示を要求された際に、エントリIDに対して隠蔽を解除する情報を取得ないしは生成し、要求してきた相手に開示してよいか判断し、開示してよいと判断した場合に、前記隠蔽を解除する情報または解除したエントリを渡すログ開示判定手段と、
    をさらに備えた請求項1に記載の情報処理端末。
  10. 前記ログ開示判定手段が、開示してよいか判断する際に、隠蔽を解除したエントリを利用者に提示し、利用者にエントリを開示してよいか指定させることを特徴とする請求項9に記載の情報処理端末。
  11. 情報処理端末が自端末の状態変化の履歴であるログをサーバに通知する方法であって、
    通知可能でないサーバ向けにエントリを隠蔽してログを生成するステップと、
    前記ログと、前記ログに対応する累積ハッシュに電子署名を施したデータと、前記電子署名を検証するための証明書とを連結した署名付ログを生成するステップと、
    前記署名付ログを前記サーバに送信するステップと、
    を有する状態通知方法。
JP2006171727A 2006-06-21 2006-06-21 情報処理端末、セキュアデバイスおよび状態処理方法 Active JP4939851B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006171727A JP4939851B2 (ja) 2006-06-21 2006-06-21 情報処理端末、セキュアデバイスおよび状態処理方法
CN2007800234337A CN101473335B (zh) 2006-06-21 2007-06-14 信息处理终端、安全设备、在信息处理终端中使用的方法
US12/305,126 US8086861B2 (en) 2006-06-21 2007-06-14 Information processing terminal and status notification method
PCT/JP2007/062035 WO2007148602A1 (ja) 2006-06-21 2007-06-14 情報処理端末および状態通知方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006171727A JP4939851B2 (ja) 2006-06-21 2006-06-21 情報処理端末、セキュアデバイスおよび状態処理方法

Publications (3)

Publication Number Publication Date
JP2008005156A true JP2008005156A (ja) 2008-01-10
JP2008005156A5 JP2008005156A5 (ja) 2009-07-09
JP4939851B2 JP4939851B2 (ja) 2012-05-30

Family

ID=38833344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006171727A Active JP4939851B2 (ja) 2006-06-21 2006-06-21 情報処理端末、セキュアデバイスおよび状態処理方法

Country Status (4)

Country Link
US (1) US8086861B2 (ja)
JP (1) JP4939851B2 (ja)
CN (1) CN101473335B (ja)
WO (1) WO2007148602A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008242805A (ja) * 2007-03-27 2008-10-09 Nec Corp 自動収集システム、通信端末、サーバー、自動収集方法、及びプログラム
JP2010039882A (ja) * 2008-08-07 2010-02-18 Kenwood Corp サーバ装置、車載装置、コンテンツ配信方法、及びコンテンツ配信受領方法
JP2014164536A (ja) * 2013-02-26 2014-09-08 Nec Corp 検証装置、検証方法、及びプログラム
JP2014191120A (ja) * 2013-03-26 2014-10-06 Fujitsu Fsas Inc 構成情報管理装置および構成情報管理方法
JP2016509443A (ja) * 2013-02-22 2016-03-24 ガードタイム アイピー ホールディングス リミテッド より低いエントロピーを有する入力レコードについて追加的セキュリティをもたらす検証システム及び方法
JP2018073183A (ja) * 2016-10-31 2018-05-10 ヤフー株式会社 証明書発行プログラム、証明書発行装置及び証明書発行方法
CN110335125A (zh) * 2019-07-12 2019-10-15 政采云有限公司 一种信息报备方法及装置

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4872875B2 (ja) * 2007-09-28 2012-02-08 ブラザー工業株式会社 ログ管理装置、及びログ管理プログラム
USRE46915E1 (en) * 2008-08-22 2018-06-26 Telit Automotive Solutions Nv Verification of process integrity
US9490984B2 (en) * 2009-09-14 2016-11-08 Interdigital Patent Holdings, Inc. Method and apparatus for trusted authentication and logon
US8935487B2 (en) * 2010-05-05 2015-01-13 Microsoft Corporation Fast and low-RAM-footprint indexing for data deduplication
US20120272167A1 (en) * 2011-04-20 2012-10-25 Nokia Corporation Methods, apparatuses and computer program products for providing a mechanism for same origin widget interworking
EP2608098B1 (en) * 2011-12-22 2017-05-10 BlackBerry Limited System and method for accessing a software application
US8689299B2 (en) 2011-12-22 2014-04-01 Blackberry Limited System and method for accessing a software application
EP2798566B1 (en) * 2011-12-31 2019-10-09 Intel Corporation Securing device environment for trust provisioning
US8793504B2 (en) * 2012-02-22 2014-07-29 International Business Machines Corporation Validating a system with multiple subsystems using trusted platform modules and virtual platform modules
WO2015054083A1 (en) * 2013-10-07 2015-04-16 Semper Fortis Solutions LLC System and method for encryption key management, federation and distribution
US9338013B2 (en) 2013-12-30 2016-05-10 Palantir Technologies Inc. Verifiable redactable audit log
US9692599B1 (en) * 2014-09-16 2017-06-27 Google Inc. Security module endorsement
US10871878B1 (en) 2015-12-29 2020-12-22 Palantir Technologies Inc. System log analysis and object user interaction correlation system
KR102509594B1 (ko) * 2016-06-28 2023-03-14 삼성전자주식회사 어플리케이션 코드의 위변조 여부 탐지 방법 및 이를 지원하는 전자 장치
JP6942601B2 (ja) * 2017-10-18 2021-09-29 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
US11843619B1 (en) * 2022-10-07 2023-12-12 Uab 360 It Stateless system to enable data breach notification

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001337600A (ja) * 2000-05-29 2001-12-07 Toshiba Corp 電子データ保管システム、履歴検証装置、電子データ保管方法及び記録媒体
JP2002251326A (ja) * 2001-02-22 2002-09-06 Hitachi Ltd 耐タンパ計算機システム
JP2002536757A (ja) * 1999-02-15 2002-10-29 ヒューレット・パッカード・カンパニー 信用コンピューティング・プラットフォーム
JP2004013608A (ja) * 2002-06-07 2004-01-15 Hitachi Ltd プログラムの実行および転送の制御
WO2004053664A1 (ja) * 2002-12-12 2004-06-24 Fujitsu Limited プログラム実行制御装置、os、クライアント端末、サーバ、プログラム実行制御システム、プログラム実行制御方法、プログラム実行制御プログラム
JP2004334362A (ja) * 2003-05-01 2004-11-25 Hitachi Eng Co Ltd アクセスログ管理方法
JP2005025617A (ja) * 2003-07-04 2005-01-27 Toshiba Corp 履歴情報管理方法及び履歴情報管理装置
WO2005071925A2 (fr) * 2003-12-23 2005-08-04 France Telecom Terminal de telecommunication a deux espaces d'execution
WO2005096121A1 (ja) * 2004-04-02 2005-10-13 Matsushita Electric Industrial Co., Ltd. 実行装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6757832B1 (en) * 2000-02-15 2004-06-29 Silverbrook Research Pty Ltd Unauthorized modification of values in flash memory
US6990579B1 (en) * 2000-03-31 2006-01-24 Intel Corporation Platform and method for remote attestation of a platform
SG118081A1 (en) * 2000-07-24 2006-01-27 Sony Corp Information processing method inter-task communication method and computer-excutable program for thesame
JP2003016098A (ja) 2001-07-03 2003-01-17 Toshiba Corp クライアント・システム、情報要求方法、情報通信方法及びプログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002536757A (ja) * 1999-02-15 2002-10-29 ヒューレット・パッカード・カンパニー 信用コンピューティング・プラットフォーム
JP2001337600A (ja) * 2000-05-29 2001-12-07 Toshiba Corp 電子データ保管システム、履歴検証装置、電子データ保管方法及び記録媒体
JP2002251326A (ja) * 2001-02-22 2002-09-06 Hitachi Ltd 耐タンパ計算機システム
JP2004013608A (ja) * 2002-06-07 2004-01-15 Hitachi Ltd プログラムの実行および転送の制御
WO2004053664A1 (ja) * 2002-12-12 2004-06-24 Fujitsu Limited プログラム実行制御装置、os、クライアント端末、サーバ、プログラム実行制御システム、プログラム実行制御方法、プログラム実行制御プログラム
JP2004334362A (ja) * 2003-05-01 2004-11-25 Hitachi Eng Co Ltd アクセスログ管理方法
JP2005025617A (ja) * 2003-07-04 2005-01-27 Toshiba Corp 履歴情報管理方法及び履歴情報管理装置
WO2005071925A2 (fr) * 2003-12-23 2005-08-04 France Telecom Terminal de telecommunication a deux espaces d'execution
WO2005096121A1 (ja) * 2004-04-02 2005-10-13 Matsushita Electric Industrial Co., Ltd. 実行装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008242805A (ja) * 2007-03-27 2008-10-09 Nec Corp 自動収集システム、通信端末、サーバー、自動収集方法、及びプログラム
JP2010039882A (ja) * 2008-08-07 2010-02-18 Kenwood Corp サーバ装置、車載装置、コンテンツ配信方法、及びコンテンツ配信受領方法
JP2016509443A (ja) * 2013-02-22 2016-03-24 ガードタイム アイピー ホールディングス リミテッド より低いエントロピーを有する入力レコードについて追加的セキュリティをもたらす検証システム及び方法
JP2014164536A (ja) * 2013-02-26 2014-09-08 Nec Corp 検証装置、検証方法、及びプログラム
JP2014191120A (ja) * 2013-03-26 2014-10-06 Fujitsu Fsas Inc 構成情報管理装置および構成情報管理方法
JP2018073183A (ja) * 2016-10-31 2018-05-10 ヤフー株式会社 証明書発行プログラム、証明書発行装置及び証明書発行方法
CN110335125A (zh) * 2019-07-12 2019-10-15 政采云有限公司 一种信息报备方法及装置

Also Published As

Publication number Publication date
CN101473335A (zh) 2009-07-01
US8086861B2 (en) 2011-12-27
CN101473335B (zh) 2012-05-09
JP4939851B2 (ja) 2012-05-30
US20090271637A1 (en) 2009-10-29
WO2007148602A1 (ja) 2007-12-27

Similar Documents

Publication Publication Date Title
JP4939851B2 (ja) 情報処理端末、セキュアデバイスおよび状態処理方法
US11531732B2 (en) Systems and methods for providing identity assurance for decentralized applications
EP3061027B1 (en) Verifying the security of a remote server
Pearson et al. Trusted computing platforms: TCPA technology in context
US7228434B2 (en) Method of protecting the integrity of a computer program
JP4278327B2 (ja) コンピュータ・プラットフォームおよびその運用方法
JP4550147B2 (ja) コンポーネントをロードするための方法、システム及び記録媒体
US9342683B2 (en) Stateless attestation system
US8601265B2 (en) Method and system for improving storage security in a cloud computing environment
US9118666B2 (en) Computing device integrity verification
KR101067399B1 (ko) 대칭 키 암호화에 기초한 데이터의 저장 및 검색을 위한, 컴퓨팅 장치에서 구현되는 방법, 시스템 및 복수의 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 매체
KR20030082484A (ko) 공개 키 암호화에 기초한 데이터의 저장 및 검색
CN114651253A (zh) 用于策略强制实施的虚拟环境类型验证
Gallery et al. Trusted computing: Security and applications
Cappos et al. Package management security
Gopalan et al. Policy driven remote attestation
Maruyama et al. Linux with TCPA integrity measurement
CN111245600B (zh) 基于区块链技术的鉴权认证方法和系统
Galanou et al. Matee: Multimodal attestation for trusted execution environments
Lucyantie et al. Attestation with trusted configuration machine
Booth et al. Securing the IMSS Assets
CN116263817A (zh) 一种数据访问控制方法及相关系统
JP2009010911A (ja) 認証システムおよび装置
Khattak et al. Trustworthy mutual attestation protocol for local true single sign-on system: Proof of concept and performance evaluation
NZ750907B2 (en) Systems and methods for providing identity assurance for decentralized applications

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071113

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090525

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120111

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

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

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

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4939851

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150