JP2012039390A - Flexible correction of authentication rule - Google Patents

Flexible correction of authentication rule Download PDF

Info

Publication number
JP2012039390A
JP2012039390A JP2010177819A JP2010177819A JP2012039390A JP 2012039390 A JP2012039390 A JP 2012039390A JP 2010177819 A JP2010177819 A JP 2010177819A JP 2010177819 A JP2010177819 A JP 2010177819A JP 2012039390 A JP2012039390 A JP 2012039390A
Authority
JP
Japan
Prior art keywords
rule
value
cryptographic hash
rule factor
ticket
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.)
Pending
Application number
JP2010177819A
Other languages
Japanese (ja)
Inventor
Kenneth Alexander Nicolson
アレクサンダー ニコルソン ケネス
Hideki Matsushima
秀樹 松島
Tomoyuki Haga
智之 芳賀
Manabu Maeda
学 前田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2010177819A priority Critical patent/JP2012039390A/en
Publication of JP2012039390A publication Critical patent/JP2012039390A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a computing technology capable of securely correcting one rule element of complicated authentication rules in a reliable environment.SOLUTION: A security LSI with tamper resistance includes a nonvolatile memory, a volatile memory, a monotone counter region, a configuration register storing storage information related to a platform status, and an encryption section. The security LSI also includes an object rule correction ticket issue part that corrects a rule included in an object received from the outside. Only when the received object includes the same encryption hash as a stored encryption hash, the ticket issue part is activated. Therefore, a rule correction is performed by a method for which origin of the correction can be sufficiently checked.

Description

オープン性および柔軟性を維持しながらパソコンや携帯電話などの電子機器を保護するため、Trusted Computing Group(TCG)は作られた。Trusted Computing Groupは、全体的なセキュリティ解決策の重要な側面である規格策定に重点的に取り組んでおり、特に、ISO/IEC11889としても公開されている「TPM Main Part 1 Design Principals, Specification Version 1.2, Revision 103」に記載されているようなトラステッドプラットフォームモジュール(TPM)と呼ばれるハードウェアコンピュータチップに取り組んでいる。このトラステッドプラットフォームモジュールは、特に、暗号化による情報のセキュアな格納、セキュアな環境で実行される一連の暗号化処理、および、一連の完全性メトリクスを提供するハードウェア装置である。   The Trusted Computing Group (TCG) was created to protect electronic devices such as personal computers and mobile phones while maintaining openness and flexibility. The Trusted Computing Group focuses on standard development, which is an important aspect of the overall security solution. In particular, “TPM Main Part 1 Design Principals, Specification Version 1.”, which is also published as ISO / IEC11889. 2, Revision 103 ", working on a hardware computer chip called Trusted Platform Module (TPM). This trusted platform module is in particular a hardware device that provides secure storage of information by encryption, a series of encryption processes executed in a secure environment, and a series of integrity metrics.

このTPMの特徴の1つは、コマンドの多くが認証を必要とすることである。この認証は、秘密を保持する必要があるただ1つの要因として定義され、この値を生成する一般的な方法は、この値を、ユーザが入力したパスワードのハッシュとすることである。   One feature of this TPM is that many of the commands require authentication. This authentication is defined as the only factor that needs to be kept secret, and a common way to generate this value is to make this value a hash of the password entered by the user.

TPMの機能性については、Talha Tariqによる論文「Extending Secure Execution Environments beyond the TPM」などで、様々な改良案が提案されている。この論文では、上述したただ1つの認証値を、ユーザパスワード、TPM状態、第三者証明機関などの複数の認証ルール要因を表す累積ハッシュ値で置き換える方法として、スマートカードと連動したフレキシブル認証が提案されている。このハッシュ値は、TPMとペアになったスマートカード内で生成されると述べられており、当業者であれば、別の形態において、このフレキシブル認証ルールの処理を、機能を強化したTPMまたは信頼性のある処理環境内に移動させても構わないと分かるであろう。この処理環境は、信頼性のある処理領域内に実装されたソフトウェアTPMを有するシステム内のCPUによって提供される。   Regarding the functionality of the TPM, various improvement proposals have been proposed in a paper “Extending Secure Execution Environments beyond the TPM” by Talha Tariq. In this paper, flexible authentication in conjunction with a smart card is proposed as a method of replacing the single authentication value described above with a cumulative hash value representing multiple authentication rule factors such as user password, TPM status, and third party certification authority. Has been. It is stated that this hash value is generated in the smart card paired with the TPM, and those skilled in the art will, in another form, handle this flexible authentication rule in an enhanced TPM or trusted It will be appreciated that it may be moved into a suitable processing environment. This processing environment is provided by a CPU in the system having a software TPM implemented in a reliable processing area.

また、当業者であれば、これらのフレキシブル認証ルール要因を編集可能にする必要があると分かるであろう。認証データの署名に用いられるキーは変化する可能性がある。当然、ユーザパスワードは変わる方がよい。装置状態への依存度が変わるかもしれない。   Those skilled in the art will also recognize that these flexible authentication rule factors need to be editable. The key used to sign the authentication data can change. Of course, it is better to change the user password. Dependency on device status may change.

既存のTPM仕様書には、キーの所有者がその認証値を変更できる、TPM_ChangeAuthというAPIが存在する。しかしながら、フレキシブル認証を用いると、多数の課題が生じる。例えば、TPM_ChangeAuthでは、認証値を変更する前に、オブジェクトへのアクセス権限があるという証明が必要なので、第三者証明機関のキーが失われたり、無効になれば、そのオブジェクトへのアクセス権限を取得することができず、変更は決して許可されない。既存の仕様書には、認証をなくした場合の課題をどのように回避するのか何も記載されていない。さらに、TPM_ChangeAuthがフレキシブル認証において動作した場合、認証ルールを全面的に変更する性能は、TPM所有者側からすると好ましくないかもしれない。例えば、TPM所有者とオブジェクト所有者とが共に、そのオブジェクトに関連付けられた認証ルール要因を有しているとすれば、フレキシブル認証値は、どの特定ルール要因が変更されたかという証拠がない曖昧なハッシュ値であるため、オブジェクト所有者は、TPM所有者のルール要因を無意識または意図的に上書きすることができるであろう。Tariqの論文には、これらの課題をどのように解決するかについて何も記載されていない。   The existing TPM specification has an API called TPM_ChangeAuth that allows the owner of the key to change its authentication value. However, when flexible authentication is used, a number of problems arise. For example, in TPM_ChangeAuth, it is necessary to prove that you have access authority to the object before changing the authentication value, so if the key of the third-party certification authority is lost or invalidated, access authority to the object will be increased. It cannot be obtained and changes are never allowed. The existing specification does not describe how to avoid the problem when the certification is lost. Furthermore, when TPM_ChangeAuth operates in flexible authentication, the ability to completely change the authentication rule may not be preferable from the TPM owner side. For example, if both the TPM owner and the object owner have an authentication rule factor associated with the object, the flexible authentication value is ambiguous with no evidence of which specific rule factor has changed. Because of the hash value, the object owner will be able to unintentionally or intentionally overwrite the TPM owner's rule factor. The Tariq paper does not describe anything about how to solve these issues.

Proudlerによる米国特許出願公開第2010/115625号明細書には、外部の者がTPM操作および他のTPMへのデータ移行をどのように認証できるのか説明する、TPMのさらなる強化について記載されている。しかしながら、クライアント装置が、それ自身のルールをどのように変更するのか、他のTPMに移行する前にルールをどのように変更するのかについて何も記載されていない。   US Patent Application Publication No. 2010/115625 by Proudler describes additional TPM enhancements that explain how outsiders can authenticate TPM operations and data migration to other TPMs. However, nothing is described about how the client device changes its own rules and how to change the rules before migrating to another TPM.

Schneckらによる米国特許第5933498号明細書では、サーバがルール一覧の原本を保持して、そのコピーを複数のクライアント装置に配信すると規定することによって、認証ルールを更新する課題に対処しようとしている。また、クライアント装置は、それら自身のルールを追加したルールをさらに配信することができるが、自身のルールをどのように変更するのか、他の装置へさらに配信する前にルールをどのように変更するのかについては何も記載されていない。また、個々のルールそれぞれは独立したものであるが、完成したルールが個々のルール全てを合わせた曖昧なものである場合をどのように扱うのか記載されていない。   U.S. Pat. No. 5,933,498 to Schneck et al. Seeks to address the challenge of updating authentication rules by providing that the server retains the original rule list and distributes copies to multiple client devices. Client devices can also distribute rules with their own rules added, but how to change their rules, and how to change rules before further delivery to other devices Nothing is stated about whether or not. Further, although each individual rule is independent, it is not described how to handle the case where the completed rule is ambiguous combining all the individual rules.

Moriconiらによる米国特許第7363650号明細書でも、ポリシーの変更のデルタリストをどのように保持するのか、そして、そのデルタをクライアント装置にどのように適用するのかを規定することによって、認証ルールを更新する課題に対処しようとしているが、クライアント装置が、それ自身のルールをどのように変更するのか、他の装置へさらに配信する前にルールをどのように変更するのかについては何も記載されていない。また、ここでも、個々のルールそれぞれは独立したものであるが、完成したルールが個々のルール全てを合わせた曖昧なものである場合をどのように扱うのか記載されていない。   US Pat. No. 7,363,650 by Moronici et al. Also updates authentication rules by specifying how to maintain a delta list of policy changes and how to apply the deltas to client devices Is not addressing how client devices change their own rules, or how to change rules before further delivery to other devices. . Again, each individual rule is independent, but it does not describe how to handle the case where the completed rule is ambiguous with all the individual rules combined.

Sarmentaらによる論文「Virtual Monotonic Counters and Count−Limited Objects using a TPM without a Trusted OS」では、Merkleハッシュ木において情報をどのように表し、信頼性のある環境内で、どのように変化を木の葉に適用して木の根まで伝えるのかを規定することによって、累積ハッシュ値を更新する課題に対処している。しかしながら、特定の葉の変更をどのように認証するのかについては記載されておらず、その木内にある仮想単調カウンタ以外のデータをどのように表すのかも教示されていない。   In the article by Sarmenta et al. “Virtual Monotonic Counters and Count-Limited Objects using a TPM with a Trusted OS”, how information is represented in a Merkle hash tree and how it changes in a trusted environment Then, the problem of updating the cumulative hash value is addressed by defining whether the tree root is transmitted. However, it does not describe how to authenticate a particular leaf change, nor does it teach how to represent data other than the virtual monotonic counter in the tree.

また、信頼性のあるシステムでは、データの起源を監査できることが重要である。例えば、曖昧な値で表された複雑なルール内のルール要因を1つ変更する場合には、その変更、および、その変更のみが実際に行われたという証拠が必要である。したがって、フレキシブル認証ルール内のルール要因を表す1つの値に対する認証済み変更要求に基づき、フレキシブル認証ルールを表す曖昧な値を安全かつ確実に更新する方法が必要である。   Also, in a reliable system, it is important to be able to audit the origin of the data. For example, when changing one rule factor in a complex rule represented by an ambiguous value, the change and evidence that only that change has actually been made are required. Therefore, there is a need for a method for safely and reliably updating an ambiguous value representing a flexible authentication rule based on an authenticated change request for one value representing a rule factor in the flexible authentication rule.

ゆえに、フレキシブル認証ルールを表す合成ハッシュ内の個々のルール要因を表す要因を1つ更新する信頼できる更新を実装する方法、システム、およびコンピュータプログラム製品を本願では提案する。   Therefore, the present application proposes a method, system, and computer program product that implements a reliable update that updates one factor that represents an individual rule factor in a synthetic hash that represents a flexible authentication rule.

大まかに言うと、本発明は、セキュアなコンピューティングの技術分野に関するものである。   Broadly speaking, the present invention relates to the technical field of secure computing.

本発明のある態様では、変化および変化のみが生じたことを確実に立証できるよう、複雑な認証ルールの中からルール要因を1つ、信頼性のある環境によって安全に変更可能とする技術を提供する。これにより、認証ルールの起源を保証できる。   In one aspect of the present invention, there is provided a technology that allows one rule factor to be changed safely in a reliable environment from among complicated authentication rules so that it can be reliably proved that a change and only a change has occurred. To do. Thereby, the origin of an authentication rule can be guaranteed.

本発明のその他の態様および効果は、本発明の原理を例として説明する図面とともに、以下の詳細な説明から明らかになるであろう。   Other aspects and advantages of the present invention will become apparent from the following detailed description, taken in conjunction with the drawings, illustrating by way of example the principles of the invention.

後述の好ましい実施形態の詳細な説明を以下の図面と共に考察することで、本発明のよりよい理解が得られる。
図1は、ディスクリートチップとしてTPMを実装した、先行技術に係るTPM v1.2搭載システムである。 図2は、プロセッサから提示された信頼性のある実行環境内にTPMを実装した、先行技術に係るTPM v1.2搭載システムである。 図3は、図1の先行技術に基づいた、本発明に係る、フレキシブル認証に対応したシステムである。 図4は、図2の先行技術に基づいた、本発明に係る、フレキシブル認証に対応したシステムである。 図5は、本発明に係る、フレキシブル認証ルールの例である。 図6は、本発明に係る、フレキシブル認証ルールを算出するイベントフローの例である。 図7は、先行技術に係る、キーの構造体を示す。 図8は、本発明に係る、フレキシブル認証に対応したキーの構造体を示す。 図9は、本発明に係るルール要因修正許可チケットを示す。 図10Aは、本発明に係る、スマートカードリーダを特徴としたeTPM v1.2搭載システムである。 図10Bは、本発明に係る、ルール要因修正許可部のチケット発行方法を示す。 図11は、本発明に係る、ルール要因修正許可部のその他の好ましい実施形態を示す。 図12は、本発明に係る、ルール修正チケットを発行するフローチャートを示す。 図13は、本発明に係る、ルール要因修正許可チケットからルール修正チケットを生成するイベントフローを示す。 図14は、本発明に係る、ルール修正チケットを用いてキーを修正するイベントフローを示す。
A better understanding of the present invention can be obtained by considering the following detailed description of the preferred embodiments in conjunction with the following drawings.
FIG. 1 shows a TPM v1.2 mounting system according to the prior art in which a TPM is mounted as a discrete chip. FIG. 2 shows a TPM v1.2 onboard system according to the prior art in which the TPM is implemented in a reliable execution environment presented by the processor. FIG. 3 is a system corresponding to the flexible authentication according to the present invention based on the prior art of FIG. FIG. 4 is a system corresponding to the flexible authentication according to the present invention based on the prior art of FIG. FIG. 5 is an example of a flexible authentication rule according to the present invention. FIG. 6 is an example of an event flow for calculating a flexible authentication rule according to the present invention. FIG. 7 shows a key structure according to the prior art. FIG. 8 shows a key structure corresponding to flexible authentication according to the present invention. FIG. 9 shows a rule factor correction permission ticket according to the present invention. FIG. 10A is an eTPM v1.2 onboard system featuring a smart card reader according to the present invention. FIG. 10B shows a ticket issuing method of the rule factor correction permission unit according to the present invention. FIG. 11 shows another preferred embodiment of the rule factor correction permission unit according to the present invention. FIG. 12 shows a flowchart for issuing a rule correction ticket according to the present invention. FIG. 13 shows an event flow for generating a rule correction ticket from a rule factor correction permission ticket according to the present invention. FIG. 14 shows an event flow for correcting a key using a rule correction ticket according to the present invention.

以下に、本発明の好ましい実施形態を説明する。   Hereinafter, preferred embodiments of the present invention will be described.

図1は、TPMをディスクリートチップとして実装した、先行技術に係るTPM v1.2搭載システムである。TPM v1.2搭載システム100は、中央処理装置CPU102と、Trusted Computing Groupが定義したトラステッドプラットフォームモジュールTPM104を含む。次に、RAM、ROM、ハードディスクなどの一般的なハードウェアリソース116があり、ベーシック入出力システムBIOS106がある。そして、その上位にはオペレーティングシステム108が存在する。TPM104へのインターフェースとして、Trusted Computing Groupが定義したトラステッドソフトウェアスタックTSS110がある。このシステム上では、TPM104と情報のやり取りを行うTSS110を介して相互作用する、TPMを意識した1以上のアプリケーション112が実行されてもよい。また、TSS110を使用しない他のアプリケーション114は、実行されてもされなくてもどちらでもよい。   FIG. 1 shows a TPM v1.2 mounting system according to the prior art, in which the TPM is mounted as a discrete chip. The TPM v1.2 onboard system 100 includes a central processing unit CPU 102 and a trusted platform module TPM 104 defined by a Trusted Computing Group. Next, there are general hardware resources 116 such as a RAM, a ROM, and a hard disk, and a basic input / output system BIOS 106 is provided. An operating system 108 exists at the upper level. As an interface to the TPM 104, there is a trusted software stack TSS110 defined by the Trusted Computing Group. On this system, one or more applications 112 aware of the TPM that interact with each other via the TSS 110 that exchanges information with the TPM 104 may be executed. Further, the other application 114 that does not use the TSS 110 may or may not be executed.

図2は、プロセッサから提示された信頼性のある実行環境内にTPMを実装した、先行技術に係るTPM v1.2搭載システムである。TPM v1.2搭載システム200は、ARMのTrustZoneといった信頼性のある実行環境に対応した中央処理装置CPU202を含む。これにより、CPUは、左側が通常モードで右側がセキュアモードの、間に境界206が存在する、異なる2つのモードを確立することができる。この境界により、片方のモードで実行中の処理は、もう片方のモードの処理やメモリに直接アクセスすることができない。まず、セキュアモードはセキュアなハードウェアリソース208を提供する。このハードウェアリソースは、好ましい形態では、SoC(システムオンチップ)ソリューションが提供するものである。次に、セキュアなベーシック入出力システムBIOS210があり、その上位に、セキュアなオペレーションシステム212が存在する。このセキュアなOS内では、セキュアなOSによって保護されているソフトウェア(SW)TPM204が実行される。また、その他のセキュアなアプリケーション214は、実行されてもされなくてもどちらでもよい。好ましい形態において、セキュアモードはいずれのデバッグ機能も無効にする。これは、セキュアなOS上で実行しているソフトウェアは、装置外部からの未認証アクセスから保護されていることを意味する。また、セキュアモード内の1以上のリソースを、通常モード内のリソースから動的にロードしてもかまわない。これらのリソースは、通常モードに格納されているときは暗号化され、セキュアモードにロードするときは復号化されることが好ましい。   FIG. 2 shows a TPM v1.2 onboard system according to the prior art in which the TPM is implemented in a reliable execution environment presented by the processor. The TPM v1.2 installation system 200 includes a central processing unit CPU 202 corresponding to a reliable execution environment such as ARM TrustZone. Thereby, the CPU can establish two different modes in which the left side is the normal mode and the right side is the secure mode, and the boundary 206 exists between them. Due to this boundary, a process being executed in one mode cannot directly access the process or memory in the other mode. First, secure mode provides a secure hardware resource 208. This hardware resource is, in a preferred form, provided by a SoC (system on chip) solution. Next, there is a secure basic input / output system BIOS 210, and a secure operation system 212 is present above it. In this secure OS, software (SW) TPM 204 protected by the secure OS is executed. Also, other secure applications 214 may or may not be executed. In the preferred form, secure mode disables any debugging features. This means that software running on a secure OS is protected from unauthorized access from outside the device. One or more resources in the secure mode may be dynamically loaded from the resources in the normal mode. These resources are preferably encrypted when stored in normal mode and decrypted when loaded in secure mode.

通常モードは、図1のシステムと類似している。まず、RAM、ROM、ハードディスクなどの一般的なハードウェアリソース116があり、ベーシック入出力システムBIOS106がある。そして、その上位にはオペレーティングシステム108が存在する。TPM204へのインターフェースとして、Trusted Computing Groupが定義したトラステッドソフトウェアスタックTSS110がある。このシステム上では、TPM204と情報のやり取りを行うTSS110を介して相互作用する、TPMを意識した1以上のアプリケーション112が実行されてもよい。また、TSS110を使用しない他のアプリケーション114は、実行されてもされなくてもどちらでもよい。   The normal mode is similar to the system of FIG. First, there are general hardware resources 116 such as a RAM, a ROM, and a hard disk, and a basic input / output system BIOS 106 is provided. An operating system 108 exists at the upper level. As an interface to the TPM 204, there is a trusted software stack TSS110 defined by the Trusted Computing Group. On this system, one or more applications 112 that are aware of the TPM and interact with each other via the TSS 110 that exchanges information with the TPM 204 may be executed. Further, the other application 114 that does not use the TSS 110 may or may not be executed.

図3は、eTPMであり、先頭の「e」は拡張(for extended)を表している。このeTPMは、本発明に係るフレキシブル認証に対応しており、図1の先行技術に基づく。TPM104内には、長期間にわたるデータを記憶する不揮発性RAM、NVRAM300と、短期間のデータを記憶する揮発性RAM、VRAM302と、インクリメントされるだけで決してデクリメントされない特別なカウンタ値を記憶する単調カウンタ304と、PCR312、プラットフォーム構成レジスタと、プラットフォームの構成情報を保持する特別なVRAM記憶部とがある。次に、コアTPM機能308と、本発明に係る、追加されたフレキシブル認証ルール評価および管理機能310とが存在する。フレキシブル認証ルール評価および管理機能には、個々のルール要因それぞれの項を検証かつ評価する方法と、合成ハッシュ拡張部320を用いて、評価された項全てを累積した途中結果を保持して、個々のルール要因と今までの途中結果とを組み合わせる方法とが含まれる。好ましい形態では、拡張部320は、TCGによって説明されている合成ハッシュ拡張技術を利用する。さらに、フレキシブル認証ルール評価および管理機能310用の追加サポートコンポーネントが2つある。1つは、チケット発行部322であり、キーのフレキシブル認証ルールの修正をキーに許可するチケットを生成する。もう1つは、チケット検証部324であり、個々のフレキシブル認証ルール要因の変更を許可するチケットのフォーマットと署名を検証する。最後に、暗号化アルゴリズムSHA−1 314、RSA 316およびHMAC 318がある。これらの暗号化アルゴリズムは、現在、TPMが必要とするものだけであるが、SHA256、SHA384およびSHA512またはECCなどの別のアルゴリズムを、本発明を逸脱することなく、代わりに用いてもかまわない。また、当業者であれば、ROM306は、当該技術分野で周知の技術を用いて、権限を満たしている者により再プログラムされてもよいと分かるであろう。   FIG. 3 is an eTPM, and the leading “e” represents for extended. This eTPM corresponds to the flexible authentication according to the present invention and is based on the prior art of FIG. In the TPM 104, there are a non-volatile RAM, NVRAM 300 for storing data for a long time, a volatile RAM for storing short-term data, a VRAM 302, and a monotonic counter for storing a special counter value that is incremented and never decremented. 304, a PCR 312, a platform configuration register, and a special VRAM storage unit that holds platform configuration information. Next, there is a core TPM function 308 and an added flexible authentication rule evaluation and management function 310 according to the present invention. The flexible authentication rule evaluation and management function includes a method for verifying and evaluating each term of each rule factor, and a result of accumulating all the evaluated terms using the synthetic hash extension unit 320. This method includes a method of combining the rule factors and the intermediate results so far. In a preferred form, the extension unit 320 uses a synthetic hash extension technique described by TCG. In addition, there are two additional support components for the flexible authentication rule evaluation and management function 310. One is a ticket issuing unit 322, which generates a ticket permitting the key to modify the flexible authentication rule for the key. The other is a ticket verification unit 324 that verifies the format and signature of a ticket that permits the change of each flexible authentication rule factor. Finally, there are encryption algorithms SHA-1 314, RSA 316 and HMAC 318. These encryption algorithms are currently only those required by the TPM, but other algorithms such as SHA256, SHA384 and SHA512 or ECC may be used instead without departing from the invention. Those skilled in the art will also recognize that ROM 306 may be reprogrammed by an authorized person using techniques well known in the art.

図4は、eTPMであり、先頭の「e」は拡張(for ectended)を表している。このeTPMは、本発明に係るフレキシブル認証に対応しており、図2の先行技術に基づく。SW TPM204内には、長期間にわたるデータを記憶する不揮発性RAM、NVRAM300と、短期間のデータを記憶する揮発性RAM、VRAM302と、インクリメントされるだけで決してデクリメントされない特別なカウンタ値を記憶する単調カウンタ304と、PCR312、プラットフォーム構成レジスタと、プラットフォームの構成情報を保持する特別なVRAM記憶部とがある。次に、コード記憶領域400が存在し、コアTPM機能308と、本発明に係る、追加されたフレキシブル認証ルール評価および管理機能310とを実現するソフトウェアを記憶する。フレキシブル認証ルール評価および管理機能には、個々のルール要因それぞれの項を検証かつ評価する方法と、合成ハッシュ拡張部320を用いて、評価された項全てを累積した途中結果を保持して、個々のルール要因と今までの途中結果とを組み合わせる方法とが含まれる。好ましい形態では、拡張部320は、TCGによって説明されている合成ハッシュ拡張技術を利用する。さらに、フレキシブル認証ルール評価および管理機能310用の追加サポートコンポーネントが2つある。1つは、チケット発行部322であり、キーのフレキシブル認証ルールの修正をキーに許可するチケットを生成する。もう1つは、チケット検証部324であり、個々のフレキシブル認証ルール要因の変更を許可するチケットのフォーマットと署名を検証する。最後に、暗号化アルゴリズムSHA−1 314、RSA 316およびHMAC 318がある。これらの暗号化アルゴリズムは、現在、TPMが必要とするものだけであるが、SHA256、SHA384およびSHA512またはECCなどの別のアルゴリズムを、本発明を逸脱することなく、代わりに用いてもかまわない。また、当業者であれば、コード記憶部400は、ROM内に置かれている場合や適切な技術を用いて外部の記憶部からコードをロードさせる場合など様々な方法で実現されてもよいと分かるであろう。   FIG. 4 is an eTPM, and the leading “e” represents an extended (for tended). This eTPM corresponds to the flexible authentication according to the present invention and is based on the prior art of FIG. The SW TPM 204 stores a non-volatile RAM for storing data for a long period of time, NVRAM 300, a volatile RAM for storing data for a short period of time, a VRAM 302, and a monotonic counter for storing a special counter value that is incremented and never decremented. There is a counter 304, a PCR 312, a platform configuration register, and a special VRAM storage unit that holds platform configuration information. Next, the code storage area 400 exists, and stores software that realizes the core TPM function 308 and the added flexible authentication rule evaluation and management function 310 according to the present invention. The flexible authentication rule evaluation and management function includes a method for verifying and evaluating each term of each rule factor, and a result of accumulating all the evaluated terms using the synthetic hash extension unit 320. This method includes a method of combining the rule factors and the intermediate results so far. In a preferred form, the extension unit 320 uses a synthetic hash extension technique described by TCG. In addition, there are two additional support components for the flexible authentication rule evaluation and management function 310. One is a ticket issuing unit 322, which generates a ticket permitting the key to modify the flexible authentication rule for the key. The other is a ticket verification unit 324 that verifies the format and signature of a ticket that permits the change of each flexible authentication rule factor. Finally, there are encryption algorithms SHA-1 314, RSA 316 and HMAC 318. These encryption algorithms are currently only those required by the TPM, but other algorithms such as SHA256, SHA384 and SHA512 or ECC may be used instead without departing from the invention. Also, those skilled in the art may realize that the code storage unit 400 may be realized in various ways, such as when placed in the ROM or when loading code from an external storage unit using an appropriate technique. You will understand.

図5は、本発明に係る、フレキシブル認証ルールのデータ表示例である。フレキシブル認証ルール500は、個々のルール要因それぞれが特定の値を有する、個々のルール要因504、508、512の木とみなすことができる。予想されたPCR状態は0x34…56 506、予想された署名付き状態は0x56…78 510、そして、予想されたNV RAMは0x78…9A 514である。好ましい形態では、予測された署名付き状態ルール要因508は、指紋読み取り部によって生成される。これらのルール要因に加え、IDカードから取得した予測IDや予測パスワードなど、他のルール要因を追加してもかまわない。   FIG. 5 is a data display example of the flexible authentication rule according to the present invention. The flexible authentication rule 500 can be viewed as a tree of individual rule factors 504, 508, 512, each individual rule factor having a specific value. The expected PCR state is 0x34 ... 56 506, the expected signed state is 0x56 ... 78 510, and the expected NV RAM is 0x78 ... 9A 514. In a preferred form, the predicted signed state rule factor 508 is generated by a fingerprint reader. In addition to these rule factors, other rule factors such as a prediction ID and a prediction password acquired from the ID card may be added.

さらに、フレキシブル認証ルールそのものは0x12…34 502という値をもち、この値は個々のルール要因を全て組み合わせたものを表している。当該図面の矢印は、1番下のルール要因512を最初に算出してフレキシブル認証ルールの初期値、つまり、0x00…000内に拡張し、そして、第2のルール要因508を評価して今までの要因内に拡張し、そして、第3のルール要因504を評価して今までの結果内に拡張することを示している。そして、最終結果がフレキシブル認証ルール500の値502となる。図8で後述するように、この最終値をTPMキーと関連付けて、フレキシブル認証ルールを検証する必要があるとeTPMに知らせてからこの関連キーへのアクセスを許可してもよい。好ましい形態では、これらの値はSHA−1ハッシュを用いて算出される。しかしながら、当業者であれば、この代わりに他のハッシュアルゴリズムを利用してもかまわないと分かるであろう。ルール要因は、TPM内の予測されたプラットフォーム構成レジスタ、つまり予測PCR値504、または、第三者からの署名付き予測値508、または、NVRAM内の予測値512を表してもよい。   Further, the flexible authentication rule itself has a value of 0x12... 34 502, and this value represents a combination of all individual rule factors. The arrow in the drawing first calculates the rule factor 512 at the bottom and expands it to the initial value of the flexible authentication rule, that is, 0x00... 000, and evaluates the second rule factor 508 so far. And the third rule factor 504 is evaluated and shown to extend within the previous results. The final result is the value 502 of the flexible authentication rule 500. As will be described later with reference to FIG. 8, this final value may be associated with the TPM key to notify the eTPM that the flexible authentication rule needs to be verified before allowing access to the associated key. In a preferred form, these values are calculated using a SHA-1 hash. However, those skilled in the art will recognize that other hash algorithms may be used instead. The rule factor may represent a predicted platform configuration register in the TPM, that is, a predicted PCR value 504, or a signed predicted value 508 from a third party, or a predicted value 512 in NVRAM.

図6は、本発明に係るフレキシブル認証ルールを算出するイベントフローの例を示したものである。ルールを算出するためには、3つの主要要素が必要である。まず、ルールを評価するアプリケーションからの要求を処理するTSS110、次に、TPM内のフレキシブル認証ルール機能310、最後に、TPM上のVRAM302内に置かれているルールハッシュ値記憶部600がある。単純化のため、TSS110からフレキシブル認証ルール機能310へのTPMインターフェースを介したコマンドルーチンは図示していない。このルールハッシュは、検証されたルール要因を全て累積した現在の合成ハッシュを記録するフレキシブル認証ルールセッションに対して可変なセッションである。まず最初に、TSSは、TPMEx_StartRuleSession APIで新たなフレキシブル認証ルールセッションの開始を要求する602。これにより、ルールハッシュ値は0x00…00 606に初期化される604。次に、図5の木の1番下に位置する第1ルール要因は、Cell_1というNVRAM 300のメモリ位置の値が10より小さいことの検証を要求するTPMEx_RuleTestNV APIを呼び出す608ことによって実行される。TPM内のフレキシブル認証ルール評価部310は、まず、Cell_1に記憶された値が実際に10より小さいことを検証し610、そして、10より小さいとみなすと、TPMEx_RuleTestNV APIの引数のSHA−1ハッシュの値を求める612ことによってルール要因を代表する値を形成する。SHA−1ハッシュは、この例では0x78…9Aという値が示されており、図5の514に記載された予測値と一致している。そして、この値をルールハッシュ内に拡張する612。値をハッシュ内に拡張するという動作はTPM仕様書に記載されている処理であり、それによると、現在のハッシュと拡張する値とを連結したハッシュを算出し、そして、その結果を新たなハッシュとして用いることにより、ハッシュを更新する。図示するために、拡張後の新たなルールハッシュは0xFE…DC 616となる。   FIG. 6 shows an example of an event flow for calculating a flexible authentication rule according to the present invention. In order to calculate a rule, three main elements are required. First, there is a TSS 110 that processes a request from an application that evaluates a rule, a flexible authentication rule function 310 in the TPM, and finally a rule hash value storage unit 600 that is placed in the VRAM 302 on the TPM. For simplicity, the command routine from the TSS 110 to the flexible authentication rule function 310 via the TPM interface is not shown. This rule hash is a variable session with respect to the flexible authentication rule session that records the current composite hash in which all verified rule factors are accumulated. Initially, the TSS requests 602 to start a new flexible authentication rule session with the TPMEx_StartRuleSession API. As a result, the rule hash value is initialized 604 to 0x00... 00 606. Next, the first rule factor located at the bottom of the tree of FIG. 5 is executed by calling 608 TMPEx_RuleTestNV API requesting verification that the value of the memory location of NVRAM 300, Cell_1, is less than 10. The flexible authentication rule evaluation unit 310 in the TPM first verifies that the value stored in Cell_1 is actually smaller than 610, and if it is considered smaller than 10, the SHA-1 hash of the argument of the TPMEx_RuleTestNV API is determined. A value representative of the rule factor is formed by determining 612 the value. In this example, the SHA-1 hash has a value of 0x78... 9A, which matches the predicted value described in 514 of FIG. This value is then expanded 612 into the rule hash. The operation of extending a value into a hash is a process described in the TPM specification. According to this, a hash obtained by concatenating the current hash and the value to be extended is calculated, and the result is added to a new hash. Is used to update the hash. For the sake of illustration, the new rule hash after expansion is 0xFE... DC 616.

次に、図5の木の真ん中に位置する第2ルール要因は、1つの特定データに有効な署名が添付されていることの検証を要求するTPMEx_RuleTestSign APIを呼び出す618ことによって実行される。TPM内のフレキシブル認証ルール評価部は、まず、データが実際に正しく署名されていることを検証し620、そして、正しく署名されているとみなすと、TPMEx_RuleTestSign APIの引数のSHA−1ハッシュの値を求める622ことによってルール要因を代表する値を形成する。SHA−1ハッシュは、この例では0x56…78という値が示されており、図5の510に記載された予測値と一致している。そして、この値をルールハッシュ内に拡張する624。図示するために、拡張後の新たなルールハッシュは0xDC…BA 626となる。   Next, the second rule factor, located in the middle of the tree of FIG. 5, is executed by calling 618 TPMEx_RuleTestSign API that requires verification that one particular data has a valid signature attached. The flexible authentication rule evaluator in the TPM first verifies that the data is actually signed correctly 620, and if the data is considered to be correctly signed, the SHA-1 hash value of the argument of the TPMEx_RuleTestSign API is used. By obtaining 622, a value representative of the rule factor is formed. In this example, the SHA-1 hash has a value of 0x56... 78, which matches the predicted value described in 510 of FIG. This value is then extended 624 into the rule hash. To illustrate, the new rule hash after expansion is 0xDC ... BA 626.

次に、図5の木の一番上に位置する第3ルール要因は、PCR値の現在のサブセットと渡された値とが一致することの検証を要求するTPMEx_RuleTestPCR APIを呼び出す628ことによって実行される。TPM内フレキシブル認証ルール評価部は、まず、現在のPCR値と渡された値とが実際に等しいことを検証し630、そして、等しいとみなすと、TPMEx_RuleTestPCR APIの引数のSHA−1ハッシュの値を求める632ことによってルール要因を代表する値を形成する。SHA−1ハッシュは、この例では0x34…56という値が示されており、図5の506に記載された予測値と一致している。そして、この値をルールハッシュ内に拡張する634。図示するために、拡張後の新たなルールハッシュは0x12…34 636となる。図5のフレキシブル認証ルール500を確認すると、そこも0x12…34 502となっている。したがって、フレキシブル認証ルールをこの値に設定したオブジェクトであればTPM内ですぐ利用してもかまわない。   Next, the third rule factor located at the top of the tree of FIG. 5 is executed by calling 628 TMPEx_RuleTestPCR API that requires verification that the current subset of PCR values matches the passed value. The The in-TPM flexible authentication rule evaluator first verifies that the current PCR value is actually equal to the passed value 630, and if it is considered equal, determines the value of the SHA-1 hash of the argument of the TPMEx_RuleTestPCR API. By determining 632, a value representative of the rule factor is formed. In this example, the SHA-1 hash has a value of 0x34... 56, which matches the predicted value described in 506 in FIG. This value is then expanded 634 into the rule hash. To illustrate, the new rule hash after expansion is 0x12... 34 636. When the flexible authentication rule 500 of FIG. 5 is confirmed, it is 0x12. Therefore, an object in which the flexible authentication rule is set to this value may be used immediately in the TPM.

図7は、TPM仕様書に記載されている先行技術に係るキーの構造体を示す。TPMキー構造体700には多くのフィールドがある。まず、1.1.0.0.の値をもつバージョン番号ラベルver 702があり、その次は、キーをどのように利用できるかを示す値、keyUsage 704がある。keyFlags 706は、キーごとに設定可能な制御選択肢を示し、authUsageData 708は、キーに対する認証データをどのように用いるかを示す。algorithmParms 710は、このキーで、どの暗号化アルゴリズムとどの署名アルゴリズムを利用できるかを示す構造であり、pcrInfoSize 712とpcrInfo 714は共に、キーの利用前になければならないPCR値セットを定義している。pubKey 716はキーの公開部分を保持している。最後に、encDataSize 718とencData 720は共に、キーの秘密部分を表している。   FIG. 7 shows a key structure according to the prior art described in the TPM specification. There are many fields in the TPM key structure 700. First, 1.1.0.0. There is a version number label ver 702 with a value of, followed by a keyUsage 704 that indicates how the key can be used. KeyFlags 706 indicates control options that can be set for each key, and authUsageData 708 indicates how to use authentication data for the key. algorithmParms 710 is a structure that indicates which encryption algorithms and signature algorithms can be used with this key, and both pcrInfoSize 712 and pcrInfo 714 define a PCR value set that must be present before the key is used. . The pubKey 716 holds the public part of the key. Finally, both encDataSize 718 and encData 720 represent the secret part of the key.

図8は、本発明に係る、フレキシブル認証に対応したキーの構造体を示している。TPMフレキシブル認証キー構造体800には多くのフィールドがあり、それらの大部分は図7で示したものと同じである。まず、1.3.0.0.の値をもつバージョン番号ラベルver 702がある。なお、キーの構造体が先行技術で説明されたものと異なるたびに、バージョン番号はインクリメントされてきている。その次は、キーをどのように利用できるかを示す値、keyUsage 704である。keyFlags 706は、キーごとに設定可能な制御選択肢を示し、authUsageData 708は、キーに対する認証データをどのように用いるかを示す。ここには、faRuleData 802を用いるかどうかを示す追加フラグと、faRuleData 802を修正できるかどうかを示す他の追加フラグとがある。その次に、algorithmParms 710は、このキーで、どの暗号化アルゴリズムとどの署名アルゴリズムが利用可能なのかを示す構造であり、pcrInfoSize 712とpcrInfo 714は共に、キーの利用前になければならないPCR値セットを定義している。faRuleData 802は、キーの利用前になければならないフレキシブル認証ルールハッシュを定義している。pubKey 716はキーの公開部分を保持している。最後に、encDataSize 718とencData 720は共に、キーの秘密部分を表している。   FIG. 8 shows a key structure corresponding to flexible authentication according to the present invention. The TPM flexible authentication key structure 800 has many fields, most of which are the same as shown in FIG. First, 1.3.0.0. There is a version number label ver 702 having the value of Note that the version number has been incremented each time the key structure is different from that described in the prior art. Next is a keyUsage 704 that indicates how the key can be used. KeyFlags 706 indicates control options that can be set for each key, and authUsageData 708 indicates how to use authentication data for the key. Here, there are an additional flag indicating whether to use faRuleData 802 and another additional flag indicating whether faRuleData 802 can be modified. Next, algorithmParms 710 is a structure that indicates which encryption algorithm and which signature algorithm can be used with this key. Both pcrInfoSize 712 and pcrInfo 714 must have a PCR value set before the key is used. Is defined. faRuleData 802 defines a flexible authentication rule hash that must be present before the key is used. The pubKey 716 holds the public part of the key. Finally, both encDataSize 718 and encData 720 represent the secret part of the key.

TPMフレキシブル認証キー構造体800をTPMにロードするためには、まず、図6と類似のイベントシーケンスを実行してTPMに記憶されたルールハッシュ600を生成しなければならない。次に、TPMを意識したアプリケーション112からの命令でTSS110は、既存のTPM_LoadKey2 APIを呼び出す。先行技術に係るこのコマンドの動作はTPM仕様書において詳述されている。さらに、faRuleData 802をチェックする必要があると示すフラグセットがauthUsageData 708にある場合、渡されたキーのfaRuleData 802とルールハッシュ600に記憶されている値とをTPMは比較し、一致しなければ、キーをロードできないことを示す適切なエラーコードをTPM_LoadKey2 APIは返さなければならない。   In order to load the TPM flexible authentication key structure 800 into the TPM, a rule hash 600 stored in the TPM must first be generated by executing an event sequence similar to that shown in FIG. Next, the TSS 110 calls the existing TPM_LoadKey2 API with a command from the application 112 that is aware of the TPM. The operation of this command according to the prior art is detailed in the TPM specification. Furthermore, if there is a flag set in authUsageData 708 indicating that faRuleData 802 needs to be checked, the TPM compares faRuleData 802 of the passed key with the value stored in rule hash 600, and if they do not match, The TPM_LoadKey2 API must return an appropriate error code indicating that the key cannot be loaded.

上記にて、フレキシブル認証ルールを有するキーはどのように定義かつロードされるのかを詳述した。次に、フレキシブル認証ルールを変更する方法について詳述する。   Above we have detailed how keys with flexible authentication rules are defined and loaded. Next, a method for changing the flexible authentication rule will be described in detail.

図9は、本発明に係るルール要因修正許可チケットを示す。フレキシブル認証ルール内の要因を1つ修正するためには、修正されていないルール要因と、修正されたルール要因と、修正するためのキーハンドルと、変更するルール要因のタイプを表すIDとを含んだ要求にルール要因修正許可部が署名して、TPMルール要因修正チケット900を生成しなければならない。この構造体のフィールドは以下のとおりである。まず、SHA−1ハッシュは、置き換えの必要があるフレキシブル認証内の古いルール要因902を表している。この要因は、図5の506、510、または514に対応する。次に、別のSHA−1は、古い要因902を置き替えることになるフレキシブル認証内の新たなルール要因904を表している。そして、置き替え対象の要因タイプ906を表すIDと、図8で示したようなTPM要因認証キー構造体908と、今までのフィールドの暗号化ダイジェスト910と、そのダイジェストに署名した署名キー912とがある。好ましい形態では、この署名キーには、このような種類のチケットへの署名が許可された署名キーであることを示すTPM_KEY_FACHANGEの値に設定されたkeyUsageフィールド704がある。後述するように、古いルール要因902とTPM要因認証キー908の両方またはどちらか一方は、チケットを利用する場合、古いルール要因902とTPM要因認証キー908の両方またはどちらか一方に制限がないことを示すNULLでもかまわない。   FIG. 9 shows a rule factor correction permission ticket according to the present invention. In order to modify one factor in the flexible authentication rule, it includes an unmodified rule factor, a modified rule factor, a key handle for correction, and an ID indicating the type of rule factor to be changed. The request must be signed by the rule factor correction permission unit to generate the TPM rule factor correction ticket 900. The fields of this structure are as follows: First, the SHA-1 hash represents the old rule factor 902 in the flexible authentication that needs to be replaced. This factor corresponds to 506, 510, or 514 in FIG. Next, another SHA-1 represents a new rule factor 904 in the flexible authentication that will replace the old factor 902. Then, an ID representing the factor type 906 to be replaced, a TPM factor authentication key structure 908 as shown in FIG. 8, an encrypted digest 910 of the field so far, and a signature key 912 that signed the digest, There is. In a preferred form, this signature key has a keyUsage field 704 set to a value of TPM_KEY_FACHANGE indicating that it is a signature key that is allowed to sign such types of tickets. As will be described later, when using a ticket, both the old rule factor 902 and / or the TPM factor authentication key 908 have no restrictions on the old rule factor 902 and / or the TPM factor authentication key 908. NULL may be used.

図10Aは、TPMをディスクリートチップとして実装し、かつ、ルール要因修正許可部がスマートカード上に常駐している、本発明に係るeTPM搭載システムを示している。このeTPM搭載システム100は、中央処理装置CPU102と、Trusted Computing Groupが定義したトラステッドプラットフォームモジュールTPM104を含む。次に、RAM、ROM、ハードディスクなどの一般的なハードウェアリソース116があり、ベーシック入出力システムBIOS106がある。そして、その上位にはオペレーティングシステム108が存在する。TPM104へのインターフェースとして、Trusted Computing Groupが定義したトラステッドソフトウェアスタックTSS110がある。このシステム上では、TPM104と情報のやり取りを行うTSS110を介して相互作用する、TPMを意識した1以上のアプリケーション112が実行されてもよい。また、TSS110を使用しない他のアプリケーション114は、実行されてもされなくてもどちらでもよい。さらに、USBなどのインターフェースや当該技術分野において周知の他の接続方法を介してシステム100に取り付けられたスマートカードリーダ1004がある。スマートカードリーダ1004内にはスマートカード1002があり、そのスマートカード1002上にはルール要因修正許可アプリケーション1000がある。好ましい形態において、スマートカード1002およびルール要因修正許可アプリケーション1000は、OracleのJava Card 3.0仕様書で定義されている規格に準拠している。当業者であれば、ルール要因修正許可アプリケーション1000を、様々な技術を介して実装しても、リモートサーバ上に実装しても、システムが対応しているのであれば、システム100上の信頼性のある実行環境内に実装してもかまわないと分かるであろう。   FIG. 10A shows an eTPM-equipped system according to the present invention in which the TPM is mounted as a discrete chip and the rule factor correction permission unit is resident on the smart card. The eTPM mounting system 100 includes a central processing unit CPU 102 and a trusted platform module TPM 104 defined by the Trusted Computing Group. Next, there are general hardware resources 116 such as a RAM, a ROM, and a hard disk, and a basic input / output system BIOS 106 is provided. An operating system 108 exists at the upper level. As an interface to the TPM 104, there is a trusted software stack TSS110 defined by the Trusted Computing Group. On this system, one or more applications 112 aware of the TPM that interact with each other via the TSS 110 that exchanges information with the TPM 104 may be executed. Further, the other application 114 that does not use the TSS 110 may or may not be executed. In addition, there is a smart card reader 1004 attached to the system 100 via an interface such as USB or other connection methods known in the art. A smart card 1002 is in the smart card reader 1004, and a rule factor correction permission application 1000 is on the smart card 1002. In a preferred form, the smart card 1002 and the rule factor modification permission application 1000 are compliant with the standards defined in Oracle's Java Card 3.0 specification. A person skilled in the art can trust the reliability of the system 100 as long as the system supports the rule factor correction permission application 1000 through various technologies or on a remote server. It will be understood that it may be implemented in a certain execution environment.

図10Bは、本発明に係るルール要因修正許可部のチケット発行方法を示す。ルール要因修正許可チケットを生成するためには、3つの要素がやりとりする必要がある。まず、TSS110はルール要因修正許可部1000に対して要求を行い、そして、ルール要因修正許可部はTPM104を用いてその許可権に署名をする。好ましい形態において、ルール要因修正許可部1000は、システム100に接続されたスマートカード1002上に置かれている。まず、TSS110は、ルール要因を更新したいキーとそのルール要因の現在の値を検索する1052。好ましい形態では、キーごとに個々のルール要因を表すキーに関連した一覧が存在する。その他の好ましい形態では、TSS110を呼び出すTPMを意識したアプリケーション112が、事前に算出したルール要因を引数として渡す。次に、TSSは新たなルール要因を算出する1054。この値はTSS自身によって算出されてもよい。あるいは、その他の好ましい形態では、TSS110を呼び出すTPMを意識したアプリケーション112が、事前に算出した新たなルール要因を引数として渡す。ここで、古いルール要因と新しいルール要因とルール要因タイプと対象キーとが準備されると、TSS110は、ルール要因修正許可部に変更の承認を要求する1056。まず、ルール要因修正許可部1000は、keyUsage 704フィールドが適切な値だと確認することによって、渡されたキーによりそのフレキシブル認証ルールを変更できることを検証し1058、そして、そのルール要因タイプが変更許可されたものであることを確認する1060。例えば、ローカルのルール要因修正許可部は、NVRAMチェック要因の変更用チケットを発行許可するだけでもよいが、リモートルール要因修正許可部は、どんな要因タイプも変更できるチケットを発行してもよい。次に、さらなる確認が行われる1062。好ましい形態では、署名キーのみがローカルのルール要因修正許可部によって変更されてもかまわない。これらの確認が全て成功すれば、ルール要因修正許可部1000は、その修正許可キーをTPM104にロードする1064。なお、このローディングそのものが、図6のように適用されるフレキシブル認証ルールを要求してもかまわない。キーが成功裏にロードされれば、ルール要因修正許可部は、チケット構造体を作成し1066、その構造体の署名付きダイジェストを生成するようTPMに要求する1068。そして、さらなる処理のため、TSSにチケットを返す1070。   FIG. 10B shows a ticket issuing method of the rule factor correction permission unit according to the present invention. In order to generate a rule factor correction permission ticket, three elements must be exchanged. First, the TSS 110 makes a request to the rule factor correction permission unit 1000, and the rule factor correction permission unit signs the permission right using the TPM 104. In a preferred embodiment, the rule factor correction permission unit 1000 is placed on a smart card 1002 connected to the system 100. First, the TSS 110 searches 1052 for the key whose rule factor is to be updated and the current value of the rule factor. In the preferred form, there is a list associated with the keys that represents the individual rule factors for each key. In another preferred form, the application 112 aware of the TPM that calls the TSS 110 passes the rule factor calculated in advance as an argument. The TSS then calculates 1054 a new rule factor. This value may be calculated by the TSS itself. Alternatively, in another preferred form, the application 112 aware of the TPM that calls the TSS 110 passes a new rule factor calculated in advance as an argument. Here, when the old rule factor, the new rule factor, the rule factor type, and the target key are prepared, the TSS 110 requests the rule factor correction permission unit to approve the change 1056. First, the rule factor correction permission unit 1000 verifies that the flexible authentication rule can be changed by the passed key by confirming that the keyUsage 704 field is an appropriate value, and the rule factor type is permitted to be changed. 1060 to confirm that it has been done. For example, the local rule factor correction permitting unit may only permit issuing a ticket for changing the NVRAM check factor, but the remote rule factor correcting permitting unit may issue a ticket that can change any factor type. Further confirmation is then performed 1062. In a preferred embodiment, only the signature key may be changed by the local rule factor correction permission unit. If all these checks are successful, the rule factor correction permission unit 1000 loads 1064 the correction permission key into the TPM 104. Note that this loading itself may request a flexible authentication rule to be applied as shown in FIG. If the key is loaded successfully, the rule factor modification permission unit creates 1066 a ticket structure and requests 1068 to generate a signed digest of the structure. The ticket is then returned 1070 to the TSS for further processing.

図11は、本発明に係る、ルール要因修正許可部のその他の好ましい実施形態を示す。図10Bと同様に、ルール要因修正許可チケットを生成するためには、3つの要素がやりとりする必要がある。まず、TSS110はルール要因修正許可部1000に対して要求を行い、そして、ルール要因修正許可部はTPM104を用いてその許可権に署名をする。好ましい形態において、ルール要因修正許可部1000は、システム100に接続されたスマートカード1002上に置かれている。まず、TSS110は、ルール要因を更新したいキーと、変更を要求したいルール要因の現在のパラメータおよび新しいパラメータとを検索する1102。好ましい形態では、キーごとに個々のルール要因を表すキーと関連付けた一覧が存在する。その他の好ましい形態では、TSS110を呼び出すTPMを意識したアプリケーション112が、ルール要因パラメータを引数として渡す。次に、TSS110は、1102で検索された古いルール要因パラメータと新しいルール要因パラメータとを渡すことによって、ルール要因修正許可部に変更の承認を要求する1104。この図では、修正対象のルール要因は図5のルール要因508なので、古いデータと新しいデータと署名に用いられたキーとが渡される。まず、ルール要因修正許可部1000は、渡されたパラメータに基づいて、古いルール要因と新しいルール要因とを算出する1106。図10Bと同様、ルール要因修正許可部1000は、次に、keyUsage 704フィールドが適切な値だと確認することによって、渡されたキーによりそのフレキシブル認証ルールを変更できることを検証し1108、そして、そのルール要因タイプが変更許可されたものであることを確認する1110。例えば、ローカルのルール要因修正許可部は、NVRAMチェック要因の変更用チケットを発行許可するだけでもよいが、リモートルール要因修正許可部は、どんな要因タイプも変更できるチケットを発行してもよい。次に、さらなる確認が行われる1112。図10Bのステップ1062と比較すると、古いルール要因および新しいルール要因のハッシュ値ではなくそれらの個々の要素が渡されるので、さらなる確認1112はより詳細なものとなる。例えば、古いキーAを検証してそれが無効になったことを確認してもよいし、新たなキーBを検証してそれが無効になっていないことを確認してもよい。または、メッセージAおよびメッセージBを検証してそれらが同じであり、単に修正中のキーであることを確認してもよい。キーAおよびキーBは、署名を検証するルール要因修正許可部1000によって利用されるだけなので、好ましい実施形態では、これらのキーをX.509証明書で表す。その他の好ましい実施形態では、これらのキーはTPM内に置かれる。これらの確認が全て成功すれば、ルール要因修正許可部1000は、その修正許可キーをTPM104にロードする1114。なお、このローディングそのものが、図6のように適用されるフレキシブル認証ルールを要求してもかまわない。キーが成功裏にロードされれば、ルール要因修正許可部は、チケット構造体を作成し1116、その構造体の署名付きダイジェストを生成するようTPMに要求する1118。そして、さらなる処理のため、TSSにチケットを返す1120。   FIG. 11 shows another preferred embodiment of the rule factor correction permission unit according to the present invention. Similar to FIG. 10B, three elements need to be exchanged in order to generate a rule factor correction permission ticket. First, the TSS 110 makes a request to the rule factor correction permission unit 1000, and the rule factor correction permission unit signs the permission right using the TPM 104. In a preferred embodiment, the rule factor correction permission unit 1000 is placed on a smart card 1002 connected to the system 100. First, the TSS 110 retrieves 1102 a key for which a rule factor is to be updated and a current parameter and a new parameter of the rule factor that is desired to be changed. In a preferred form, for each key there is a list associated with keys representing individual rule factors. In another preferred form, the application 112 aware of the TPM that calls the TSS 110 passes the rule factor parameter as an argument. Next, the TSS 110 requests the rule factor correction permission unit to approve the change by passing the old rule factor parameter and the new rule factor parameter searched in 1102 1104. In this figure, since the rule factor to be corrected is the rule factor 508 in FIG. 5, the old data, the new data, and the key used for the signature are passed. First, the rule factor correction permission unit 1000 calculates 1106 an old rule factor and a new rule factor based on the passed parameters. Similar to FIG. 10B, the rule factor correction permission unit 1000 next verifies that the flexible authentication rule can be changed by the passed key by confirming that the key Usage 704 field is an appropriate value 1108, and Confirm 1110 that the rule factor type is permitted to be changed. For example, the local rule factor correction permitting unit may only permit issuing a ticket for changing the NVRAM check factor, but the remote rule factor correcting permitting unit may issue a ticket that can change any factor type. Next, further confirmation is performed 1112. Compared to step 1062 of FIG. 10B, the further confirmation 1112 is more detailed because their individual elements are passed rather than the hash values of the old and new rule factors. For example, the old key A may be verified to confirm that it has become invalid, or the new key B may be verified to confirm that it has not been invalidated. Alternatively, message A and message B may be verified to confirm that they are the same and are simply the key being modified. Since the keys A and B are only used by the rule factor correction permission unit 1000 that verifies the signature, in the preferred embodiment, these keys are designated as X. 509 certificate. In other preferred embodiments, these keys are placed in the TPM. If all these checks are successful, the rule factor correction permission unit 1000 loads the modification permission key into the TPM 104 1114. Note that this loading itself may request a flexible authentication rule to be applied as shown in FIG. If the key is loaded successfully, the rule factor modification permitting unit creates 1116 a ticket structure and requests 1118 to generate a signed digest of the structure. The ticket is then returned 1120 to the TSS for further processing.

図12は、本発明に係るルール修正チケットを示す。完成したフレキシブル認証ルールに対する修正を認証するためには、TPMルール要因修正チケット900がキーの変更を許可されていることは検証済みであると明言できるチケットをTPMは発行しなければならない。このルール修正チケットの構造体1200におけるフィールドは以下のとおりである。まず、SHA−1ハッシュは、置き換えの必要がある、古いフレキシブル認証ルール値1202を含んでいる。この要因は、図5の502に対応する。次に、別のSHA−1は、古いルール値1202を置き替えることになる新しいフレキシブル認証ルール値1204を含んでいる。そして、1202の値から1204の値に変更されたフレキシブル認証ルール値をもつことになる図8で示したようなTPM要因認証キー構造体1206と、最後に、その構造体の上記フィールドのHMACダイジェスト1208がある。このHMACは、TPMが定義したTPM_PERMANENT_DATA中のtpmProof値など、適切な秘密キーを用いてRFC2104に従い算出される。   FIG. 12 shows a rule correction ticket according to the present invention. In order to authenticate the modification to the completed flexible authentication rule, the TPM must issue a ticket that can clearly state that the TPM rule factor modification ticket 900 is permitted to change the key. The fields in the rule correction ticket structure 1200 are as follows. First, the SHA-1 hash includes the old flexible authentication rule value 1202 that needs to be replaced. This factor corresponds to 502 in FIG. Next, another SHA-1 includes a new flexible authentication rule value 1204 that will replace the old rule value 1202. Then, the TPM factor authentication key structure 1206 as shown in FIG. 8 that has the flexible authentication rule value changed from the value of 1202 to the value of 1204, and finally, the HMAC digest of the field of the structure There is 1208. This HMAC is calculated according to RFC 2104 using an appropriate secret key such as a tpmProof value in TPM_PERMANENT_DATA defined by the TPM.

図13は、本発明に係る、ルール要因修正許可チケットからルール修正チケットを生成するイベントフローを示す。ルールを検証するためには、3つの主要要素が必要である。まず、ルールを検証するアプリケーションからの要求を処理するTSS110、次に、TPM内のフレキシブル認証(FA)ルール機能310、最後に、TPM上のVRAM302内に置かれているルールハッシュのペア値記憶部1300がある。このイベントシーケンスは、図6で示したようなフレキシブル認証ルールを算出するものと類似している。しかしながら、1つのルールハッシュ600ではなく、このチケットを生成する場合には、古いルールハッシュと新しいルールハッシュの両方を算出するため、ルールハッシュのペア1300が必要となる。まず、TPMEx_StartRuleVerificationSession APIを呼び出して1302、両方のルールハッシュを0x00…00の値1306に初期化する1304。次に、図5に示したようなルール要因の並びを適用する。図6ではハッシュ内に拡張する前に各ルール要因を検証しているが、ここでキーポイントとなる違いは、ルール要因を検証しないということである。TPMEx_RuleVerifyNV APIを呼び出し1308、規定のNVRAM位置を調べることなく、フレキシブル認証(FA)ルール評価部310は、TPMEx_RuleVerifyNV APIの引数のSHA−1ハッシュの値を求める1310ことによってルール要因を代表する値を形成する。SHA−1ハッシュは、この例では0x78…9Aという値が示されており、図5の514に記載された予測値と一致している。そして、この値をルールハッシュペアの両方に拡張する1312。値をハッシュ内に拡張するという動作はTPM仕様書に記載されている処理であり、それによると、現在のハッシュと拡張する値とを連結したハッシュを算出し、そして、その結果を新たなハッシュとして用いることにより、ハッシュを更新する。図示するために、拡張後の新たなルールハッシュペアは0xFE…DC 616となる。   FIG. 13 shows an event flow for generating a rule correction ticket from a rule factor correction permission ticket according to the present invention. In order to verify the rules, three main elements are required. First, a TSS 110 that processes a request from an application that verifies a rule, then a flexible authentication (FA) rule function 310 in the TPM, and finally a pair value storage unit of a rule hash placed in the VRAM 302 on the TPM There is 1300. This event sequence is similar to that for calculating the flexible authentication rule as shown in FIG. However, when this ticket is generated instead of one rule hash 600, a rule hash pair 1300 is required to calculate both an old rule hash and a new rule hash. First, the TPMEx_StartRuleVerificationSession API is called 1302 and both rule hashes are initialized to a value 1306 of 0x00. Next, the arrangement of rule factors as shown in FIG. 5 is applied. In FIG. 6, each rule factor is verified before being expanded into the hash, but the key point here is that the rule factor is not verified. The TPMEx_RuleVerifyNV API is called 1308, and without examining the specified NVRAM location, the flexible authentication (FA) rule evaluator 310 forms a value representative of the rule factor by obtaining 1310 the value of the SHA-1 hash of the argument of the TPMEx_RuleVerifyNV API. To do. In this example, the SHA-1 hash has a value of 0x78... 9A, which matches the predicted value described in 514 of FIG. This value is then extended 1312 to both rule hash pairs. The operation of extending a value into a hash is a process described in the TPM specification. According to this, a hash obtained by concatenating the current hash and the value to be extended is calculated, and the result is added to a new hash. Is used to update the hash. To illustrate, the new rule hash pair after expansion is 0xFE... DC 616.

次に、図5の木の真ん中に位置する第2ルール要因は、TPMEx_RuleVerifySign APIを呼び出す1316ことによって実行される。これは、図10Aに従ってルール要因修正許可チケットを発行させたルール要因なので、このチケットは、フレキシブル認証(FA)ルール評価部310にも渡される。この評価部は、まず、ルール要因修正許可チケットが正しく署名されていることと、factorIDが現在のルール要因タイプ用を示していることを検証し1318、そして、引数のSHA−1ハッシュの値を求める1320。このSHA−1ハッシュは、この例では0x56…78という値が示されており、図5の510に記載された予測値と一致している。次に、この算出したハッシュを、ルール要因修正許可チケットのoldFactorフィールドに格納されているハッシュと比較する1322。等しければ、チケットはこの項を修正するのに有効なチケットであるため、このチケットのoldFactor902とnewFactor904をそれぞれ、ルールハッシュペア内の各フィールドへ拡張する1324。図示するために、拡張後の新たなルールハッシュペアは0xDC…BA(古い値)および0xCD…BA(新しい値)1326となる。なお、もし、ルール要因修正許可チケットのoldFactorの値902がNULLであれば、1322における古い値の検証は省略され、factorID906がNULLであれば、1318におけるIDの検証は省略される。   Next, the second rule factor located in the middle of the tree of FIG. 5 is executed by calling 1316 the TPMEx_RuleVerifySign API. Since this is the rule factor that issued the rule factor correction permission ticket according to FIG. 10A, this ticket is also passed to the flexible authentication (FA) rule evaluation unit 310. This evaluator first verifies that the rule factor modification permission ticket is correctly signed and that the factorID indicates the current rule factor type 1318, and sets the value of the SHA-1 hash of the argument. Seeking 1320. This SHA-1 hash has a value of 0x56... 78 in this example, and matches the predicted value described in 510 of FIG. Next, the calculated hash is compared 1322 with the hash stored in the oldFactor field of the rule factor correction permission ticket. If they are equal, the ticket is a valid ticket to modify this term, so the oldFactor 902 and newFactor 904 of this ticket are each expanded 1324 to each field in the rule hash pair. To illustrate, the new rule hash pair after expansion is 0xDC ... BA (old value) and 0xCD ... BA (new value) 1326. If the old factor value 902 of the rule factor correction permission ticket is NULL, the verification of the old value in 1322 is omitted, and if the factor ID 906 is NULL, the verification of the ID in 1318 is omitted.

次に、図5の木の一番上に位置する第3ルール要因は、TPMEx_RuleVerifyPCR APIを呼び出し1328、規定のPCRを調べることなく、フレキシブル認証(FA)ルール評価部310は、TPMEx_RuleVerifyPCR APIの引数のSHA−1ハッシュの値を求めることによってルール要因を代表する値を形成する。SHA−1ハッシュは、この例では0x34…56という値が示されており、図5の506に記載された予測値と一致している。そして、この値をルールハッシュのペア内に拡張する1332。図示するために、拡張後のルールハッシュペアは0x12…34の古いハッシュ値と0x21…43の新しいハッシュ値1334になる。   Next, the third rule factor located at the top of the tree in FIG. 5 is to call TMPEx_RuleVerifyPCR API 1328, and without examining the specified PCR, the flexible authentication (FA) rule evaluator 310 determines the argument of the TPMEx_RuleVerifyPCR API. A value representative of the rule factor is formed by determining the value of the SHA-1 hash. In this example, the SHA-1 hash has a value of 0x34... 56, which matches the predicted value described in 506 in FIG. This value is then expanded 1332 into the rule hash pair. For the sake of illustration, the expanded rule hash pair is an old hash value of 0x12... 34 and a new hash value 1334 of 0x21.

この時点で、古いフレキシブル認証ルール値と新しいフレキシブル認証ルール値とが算出されたので、ここで初めて、クライアントTSSは、TPMEx_RequestRuleModificationTicket APIを用い、かつ、チケットを作成するキーとルール要因修正許可チケットとを渡すことによって、ルール修正チケットの作成を要求できる1336。渡されたキーのfaRuleDataフィールド802がルールハッシュペア1300の古い値と等しければ、ルール要因修正許可チケットは正しく署名されており、ルール要因修正許可チケットのkeyフィールド908が渡されたキーと等しければ1338、ルール修正チケットは発行され1340、TSS110にそのチケットを返す。   At this point, since the old flexible authentication rule value and the new flexible authentication rule value have been calculated, for the first time, the client TSS uses the TPMEx_RequestRuleModificationTicket API and generates a key for creating a ticket and a rule factor correction permission ticket. Passing can request 1336 to create a rule correction ticket. If the faRuleData field 802 of the passed key is equal to the old value of the rule hash pair 1300, the rule factor correction permission ticket is correctly signed, and 1338 if the key field 908 of the rule factor correction permission ticket is equal to the passed key. The rule correction ticket is issued 1340 and the ticket is returned to the TSS 110.

図14は、本発明に係る、ルール修正チケットを用いてキーを修正するイベントフローを示す。修正を実行するためには、2つの主要要素が必要である。まず、キーを修正するアプリケーションからの要求を処理するTSS110、そして、構造体への実際の変更を処理するTPM内のフレキシブル認証(FA)ルール機能310がある。TPM内のキーはそれらの親キーによって暗号化されているため、まず最初に、親キーを用いてOSAPセッションを確立し1400、対象である子キーのデータを復号する権限を取得する必要がある。TPMコア308内に実装されている先行技術に従ってセッションが確立された時点で、データの実際の変更を行うことが可能になる。TSSは、対象キーと、OSAPセッションハンドルと、図13に示すように生成されたルール修正チケットとを渡すことによって、フレキシブル認証を変更する要求を行う1402。まず、フレキシブル認証(FA)ルール評価部は、先行技術で説明されているように、OSAPセッションを検証する1404。そして、キー構造体のフォーマット1406およびルール修正チケットの署名1408を検証し、ルール修正チケットのkeyフィールド1206と渡されたキー800との一致をバイトごとに比較して確認し、oldFARule1204がキーのfaRuleData802と等しいことを確認することにより、渡されたキーに対してこのルール修正チケットが有効なこと1410を検証する。これらの2つが一致すれば、encData720内に格納されている秘密キーデータを親キーで復号し1410、その結果得られた構造体を検証して、この構造体が、先行技術で説明されているような、有効なTPM_STORE_ASYMKEYまたはTPM_MIGRATE_ASYMKEYであることを保証する。渡されたキー内のfaRuleData802をルール修正チケット1208のnewFARuleフィールド1204に設定する1414。そして、復号されたencData 720のpubDataDigest内に格納されているハッシュ値を再計算して、フレキシブル認証ルールの変更を反映する。最後に、encData 720を親キーで再び暗号化し1418、処理が成功したことを呼び出し側に返す1420。   FIG. 14 shows an event flow for correcting a key using a rule correction ticket according to the present invention. In order to perform the correction, two main elements are required. First, there is a TSS 110 that handles requests from applications that modify keys, and a flexible authentication (FA) rule function 310 in the TPM that handles the actual changes to the structure. Since the keys in the TPM are encrypted by their parent key, it is necessary to first establish an OSAP session using the parent key 1400 and obtain the authority to decrypt the data of the target child key. . When a session is established according to the prior art implemented in the TPM core 308, it is possible to make actual changes to the data. The TSS makes a request 1402 to change the flexible authentication by passing the target key, the OSAP session handle, and the rule correction ticket generated as shown in FIG. First, the flexible authentication (FA) rule evaluator verifies 1404 the OSAP session as described in the prior art. Then, the format 1406 of the key structure and the signature 1408 of the rule correction ticket are verified, and the match between the key field 1206 of the rule correction ticket and the passed key 800 is compared for each byte, and oldFARule 1204 is the key's faRuleData 802. Verify that the rule modification ticket is valid 1410 for the passed key. If these two match, the private key data stored in encData 720 is decrypted with the parent key 1410, and the resulting structure is verified, and this structure is described in the prior art. As such, it is guaranteed to be a valid TPM_STORE_ASYMKEY or TPM_MIGRATE_ASYMKEY. The faRuleData 802 in the passed key is set 1414 in the newFARule field 1204 of the rule correction ticket 1208. Then, the hash value stored in the pubDataDigest of the decrypted encData 720 is recalculated to reflect the change in the flexible authentication rule. Finally, encData 720 is re-encrypted with the parent key 1418 and a successful operation is returned 1420 to the caller.

キーを移動するたびにキーのポリシーの変更がキーに許可されるキー移動に対して、当業者であれば、図14の技術をTPM仕様書内に記載されている技術と組み合わせてもかまわないと分かるであろう。   One skilled in the art may combine the technique of FIG. 14 with the technique described in the TPM specification for key movements that allow the key to change key policies each time the key is moved. You will understand.

本発明は上記の実施形態に基づいて述べられているが、本発明は明らかにそのような実施形態に限定されるものではない。下記のケースもまた本発明に含まれる。   Although the present invention has been described based on the above embodiments, the present invention is obviously not limited to such embodiments. The following cases are also included in the present invention.

(1)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。   (1) Each of the above devices is specifically a computer system including a microprocessor, a ROM, a RAM, a hard disk unit, a display unit, a keyboard, a mouse, and the like. A computer program is stored in the RAM or the hard disk unit. Each device achieves its functions by the microprocessor operating according to the computer program. Here, the computer program is configured by combining a plurality of instruction codes indicating instructions for the computer.

(2)上記の各装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。RAMには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。   (2) A part or all of the constituent elements constituting each of the above-described devices may be configured by one system LSI (Large Scale Integration). The system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip, and specifically, a computer system including a microprocessor, ROM, RAM, and the like. . A computer program is stored in the RAM. The system LSI achieves its functions by the microprocessor operating according to the computer program.

さらに、各装置を構成する構成部品の各ユニットは、別個の個別チップとして、または、一部もしくは全てを含む単一のチップとして作られてもよい。   Furthermore, each unit of the components that make up each device may be made as a separate individual chip or as a single chip including some or all.

さらに、ここでは、LSIが述べられているが、集積化の程度の違いにより、指定IC、LSI、スーパLSI、ウルトラLSIが使用される場合もある。   Furthermore, although an LSI is described here, a designated IC, LSI, super LSI, or ultra LSI may be used depending on the degree of integration.

さらに、回路の集積化の手段は、LSIに限定されるものではなく、専用回路、もしくは汎用プロセッサによる実装も利用できる。さらに、LSIが製造された後にプログラム可能なフィールドプログラムゲートアレイ(FPGA)を使用することもまた可能であり、またLSI内で回路セルの接続および設定を再構成可能なリコンフィギュアラブルプロセッサも使用可能である。   Furthermore, the means for circuit integration is not limited to LSI, and a dedicated circuit or a general-purpose processor can also be used. It is also possible to use a programmable field program gate array (FPGA) after the LSI has been manufactured, and a reconfigurable processor that can reconfigure circuit cell connections and settings within the LSI. It is.

さらに、もしLSIに置き換わる集積回路技術が半導体技術もしくは他の派生する技術の進歩を通じて現われるのであれば、その技術は当然に構成要素の集積化を実現するために使用することができる。バイオ技術の適用が予想される。   Furthermore, if integrated circuit technology that replaces LSI emerges through advances in semiconductor technology or other derived technology, the technology can of course be used to achieve component integration. Application of biotechnology is expected.

(3)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。ICカードまたはモジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。ICカードまたはモジュールは、上記の超多機能LSIに含まれるとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、ICカードまたはモジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。   (3) Part or all of the constituent elements constituting each of the above devices may be configured from an IC card that can be attached to and detached from each device or a single module. The IC card or module is a computer system that includes a microprocessor, ROM, RAM, and the like. The IC card or the module may be included in the above super multifunctional LSI. The IC card or the module achieves its functions by the microprocessor operating according to the computer program. This IC card or this module may have tamper resistance.

(4)本発明は、上記に示す方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、コンピュータプログラムなどのデジタル信号であるとしてもよい。   (4) The present invention may be a computer program that implements the method described above by a computer, or may be a digital signal such as a computer program.

また、本発明は、コンピュータプログラムまたはデジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されているデジタル信号であるとしてもよい。   The present invention also relates to a computer-readable recording medium capable of reading a computer program or a digital signal, such as a flexible disk, hard disk, CD-ROM, MO, DVD, DVD-ROM, DVD-RAM, BD (Blu-ray Disc), It may be recorded in a semiconductor memory or the like. Further, it may be a digital signal recorded on these recording media.

また、本発明は、コンピュータプログラムまたはデジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。   In the present invention, a computer program or a digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network represented by the Internet, a data broadcast, or the like.

また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、メモリは、上記コンピュータプログラムを記憶しており、マイクロプロセッサは、コンピュータプログラムにしたがって動作するとしてもよい。   The present invention may also be a computer system including a microprocessor and a memory, the memory storing the computer program, and the microprocessor operating according to the computer program.

また、プログラムまたはデジタル信号を記録媒体に記録して移送することにより、またはプログラムまたはデジタル信号を、ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。   Further, the program or digital signal may be recorded on a recording medium and transferred, or the program or digital signal may be transferred via a network or the like and executed by another independent computer system.

(5)本技術分野の当業者にとっては、説明した実施形態の、本発明固有の教示および利点から原理的に離れることのない多くの変形がありえることを容易に理解することができるだろう。また、上記変更および実施形態の任意の組み合わせは、本発明の範囲内に含まれる。   (5) Those skilled in the art will readily appreciate that there can be many variations of the described embodiments that do not depart in principle from the teachings and advantages inherent in the present invention. Further, any combination of the above modifications and embodiments is included within the scope of the present invention.

Claims (15)

耐タンパ性のセキュリティLSIを備える情報処理装置であって、
前記LSIは、
前記LSIのリブート後でも利用できる必要があるデータを記憶する不揮発性メモリ領域と、
前記LSIの1ブートサイクル中にのみ必要なデータを記憶する揮発性メモリ領域と、
インクリメントのみ可能な複数の不揮発性カウンタを記憶する単調カウンタ領域と、
プラットフォーム状態に関する蓄積情報を記憶するプラットフォーム構成レジスタ(PCR)領域と、
複数の暗号化キーを生成し、データを暗号化し、データを復号し、複数の暗号化署名を生成し、複数の暗号化署名を検証する暗号化部と、
前記LSIの外部に情報を送信し、前記LSIの外部から情報を受信する外部インターフェースと、
第1暗号化ハッシュを記憶する前記揮発性メモリ領域内の第1記憶領域と、
第2暗号化ハッシュを記憶する前記揮発性メモリ領域内の第2記憶領域と、
前記外部インターフェースを介して受信したオブジェクトの代表値と、前記第1暗号化ハッシュと、前記第2暗号化ハッシュと、前記代表値および2つの暗号化ハッシュの暗号化ダイジェストとを含んだ、受信した前記オブジェクトに含まれているルールを修正するためのオブジェクトルール修正チケットを発行するオブジェクトルール修正チケット発行部と、
受信した前記オブジェクトが、前記第1記憶領域に記憶されている第1暗号化ハッシュと等しい暗号化ハッシュを含んでいる場合にのみ、前記チケット発行部を有効にするオブジェクトルール修正チケット発行制御部と
を備える情報処理装置。
An information processing apparatus including a tamper-resistant security LSI,
The LSI is
A non-volatile memory area for storing data that needs to be available even after the LSI is rebooted;
A volatile memory area for storing data necessary only during one boot cycle of the LSI;
A monotonic counter area for storing a plurality of non-volatile counters that can only be incremented;
A platform configuration register (PCR) area that stores accumulated information about the platform state;
An encryption unit that generates a plurality of encryption keys, encrypts the data, decrypts the data, generates a plurality of encryption signatures, and verifies the plurality of encryption signatures;
An external interface for transmitting information to the outside of the LSI and receiving information from the outside of the LSI;
A first storage area in the volatile memory area for storing a first cryptographic hash;
A second storage area in the volatile memory area for storing a second cryptographic hash;
Received, including the representative value of the object received via the external interface, the first cryptographic hash, the second cryptographic hash, and the cryptographic digest of the representative value and the two cryptographic hashes An object rule correction ticket issuing unit for issuing an object rule correction ticket for correcting a rule included in the object;
An object rule modification ticket issuance control unit that enables the ticket issuing unit only when the received object includes an encryption hash equal to the first encryption hash stored in the first storage area; An information processing apparatus comprising:
前記LSIは、さらに、
第1の値で前記第1記憶領域を拡張し、第2の値で前記第2記憶領域を拡張する暗号化ハッシュ拡張部と、
前記外部インターフェースを介して受信したデータを代表する値を前記第1記憶領域内と前記第2記憶領域内とに拡張するよう前記暗号化ハッシュ拡張部に要求することによってルール要因を適用する第1ルール要因適用部と、
前記外部インターフェースを介して受信したデータを代表する第1の値を前記第1記憶領域内に拡張し、かつ、前記外部インターフェースを介して受信したルール要因修正チケットに記載されている第2の値を前記第2記憶領域内に拡張するよう前記暗号化ハッシュ拡張部に要求することによって2つのルール要因を適用する第2ルール要因適用部とを備え、
前記ルール要因修正チケットは、前記第2記憶領域内に拡張する置換用の第2の値と、前記ルール要因修正チケット内のデータの暗号化ダイジェストとを含む、
請求項1記載の情報処理装置。
The LSI further comprises:
A cryptographic hash expansion unit that expands the first storage area with a first value and expands the second storage area with a second value;
A rule factor is applied by requesting the cryptographic hash extension unit to extend a value representative of data received via the external interface into the first storage area and the second storage area. A rule factor application section;
A first value representative of data received via the external interface is expanded in the first storage area, and a second value described in the rule factor correction ticket received via the external interface A second rule factor application unit that applies two rule factors by requesting the cryptographic hash expansion unit to expand the data into the second storage area,
The rule factor correction ticket includes a second value for replacement that extends in the second storage area, and an encryption digest of data in the rule factor correction ticket.
The information processing apparatus according to claim 1.
前記ルール要因修正チケットは、さらに、
予測された第1の値を含み、
前記第2ルール要因適用部は、さらに、前記予測された第1の値が、前記外部インターフェースを介して受信したデータを代表する前記第1の値と一致することを確認し、
一致しない場合には、前記第1の値を拡張するという前記暗号化ハッシュ拡張部への要求を行わない
請求項2記載の情報処理装置。
The rule factor correction ticket further includes:
Including the predicted first value;
The second rule factor application unit further confirms that the predicted first value matches the first value representing data received via the external interface;
The information processing apparatus according to claim 2, wherein if they do not match, a request is not made to the cryptographic hash expansion unit to expand the first value.
前記ルール要因修正チケットは、さらに、
前記オブジェクトの予測代表値を含み、
前記第2ルール要因適用部は、さらに、前記オブジェクトの予測代表値が、前記外部インターフェースを介して受信したオブジェクトの代表値と一致することを確認し、
一致しない場合には、前記第1の値を拡張するという前記暗号化ハッシュ拡張部への要求を行わない
請求項2記載の情報処理装置。
The rule factor correction ticket further includes:
Including a predicted representative value of the object,
The second rule factor application unit further confirms that the predicted representative value of the object matches the representative value of the object received via the external interface,
The information processing apparatus according to claim 2, wherein if they do not match, a request is not made to the cryptographic hash expansion unit to expand the first value.
前記ルール要因修正チケットは、さらに、
予測されたルール要因タイプを含み、
前記第2ルール要因適用部は、さらに、前記予測されたルール要因タイプが、前記外部インターフェースを介して受信したルール要因タイプと一致することを確認し、
一致しない場合には、前記第1の値を拡張するという前記暗号化ハッシュ拡張部への要求を行わない
請求項2記載の情報処理装置。
The rule factor correction ticket further includes:
Including the predicted rule factor type,
The second rule factor application unit further confirms that the predicted rule factor type matches the rule factor type received via the external interface;
The information processing apparatus according to claim 2, wherein if they do not match, a request is not made to the cryptographic hash expansion unit to expand the first value.
耐タンパ性のセキュアなアプリケーション実行環境を有したCPUを備える情報処理装置であって、
前記セキュアなアプリケーション実行環境は、
前記セキュアなアプリケーション実行環境内のアプリケーションにサービスを提供するセキュアなオペレーティングシステムと、
前記CPUのリブート後でも利用できる必要があるデータを記憶する不揮発性メモリ領域と、
前記CPUの1ブートサイクル中にのみ必要なデータを記憶する揮発性メモリ領域と、
インクリメントのみ可能な複数の不揮発性カウンタを記憶する単調カウンタ領域と、
プラットフォーム状態に関する蓄積情報を記憶するプラットフォーム構成レジスタ(PCR)領域と、
複数の暗号化キーを生成し、データを暗号化し、データを復号し、複数の暗号化署名を生成し、複数の暗号化署名を検証する暗号化部と、
前記セキュアなアプリケーション実行環境の外部に情報を送信し、前記セキュアなアプリケーション実行環境の外部から情報を受信する外部インターフェースと、
第1暗号化ハッシュを記憶する前記揮発性メモリ領域内の第1記憶領域と、
第2暗号化ハッシュを記憶する前記揮発性メモリ領域内の第2記憶領域と、
前記外部インターフェースを介して受信したオブジェクトの代表値と、前記第1暗号化ハッシュと、前記第2暗号化ハッシュと、前記代表値および2つの暗号化ハッシュの暗号化ダイジェストとを含んだ、受信した前記オブジェクトに含まれているルールを修正するためのオブジェクトルール修正チケットを発行するオブジェクトルール修正チケット発行部と、
受信した前記オブジェクトが、前記第1記憶領域に記憶されている第1暗号化ハッシュと等しい暗号化ハッシュを含んでいる場合にのみ、前記チケット発行部を有効にするオブジェクトルール修正チケット発行制御部と
を備える情報処理装置。
An information processing apparatus including a CPU having a tamper-resistant secure application execution environment,
The secure application execution environment is:
A secure operating system that provides services to applications in the secure application execution environment;
A non-volatile memory area for storing data that needs to be available even after the CPU is rebooted;
A volatile memory area for storing data necessary only during one boot cycle of the CPU;
A monotonic counter area for storing a plurality of non-volatile counters that can only be incremented;
A platform configuration register (PCR) area that stores accumulated information about the platform state;
An encryption unit that generates a plurality of encryption keys, encrypts the data, decrypts the data, generates a plurality of encryption signatures, and verifies the plurality of encryption signatures;
An external interface for transmitting information outside the secure application execution environment and receiving information from outside the secure application execution environment;
A first storage area in the volatile memory area for storing a first cryptographic hash;
A second storage area in the volatile memory area for storing a second cryptographic hash;
Received, including the representative value of the object received via the external interface, the first cryptographic hash, the second cryptographic hash, and the cryptographic digest of the representative value and the two cryptographic hashes An object rule correction ticket issuing unit for issuing an object rule correction ticket for correcting a rule included in the object;
An object rule modification ticket issuance control unit that enables the ticket issuing unit only when the received object includes an encryption hash equal to the first encryption hash stored in the first storage area; An information processing apparatus comprising:
前記セキュアなアプリケーション実行環境は、さらに、
第1の値で前記第1記憶領域を拡張し、第2の値で前記第2記憶領域を拡張する暗号化ハッシュ拡張部と、
前記外部インターフェースを介して受信したデータを代表する値を前記第1記憶領域内と前記第2記憶領域内とに拡張するよう前記暗号化ハッシュ拡張部に要求することによってルール要因を適用する第1ルール要因適用部と、
前記外部インターフェースを介して受信したデータを代表する第1の値を前記第1記憶領域内に拡張し、かつ、前記外部インターフェースを介して受信したルール要因修正チケットに記載されている第2の値を前記第2記憶領域内に拡張するよう前記暗号化ハッシュ拡張部に要求することによって2つのルール要因を適用する第2ルール要因適用部とを備え、
前記ルール要因修正チケットは、前記第2記憶領域内に拡張する置換用の第2の値と、前記ルール要因修正チケット内のデータの暗号化ダイジェストとを含む
請求項6記載の情報処理装置。
The secure application execution environment further includes:
A cryptographic hash expansion unit that expands the first storage area with a first value and expands the second storage area with a second value;
A rule factor is applied by requesting the cryptographic hash extension unit to extend a value representative of data received via the external interface into the first storage area and the second storage area. A rule factor application section;
A first value representative of data received via the external interface is expanded in the first storage area, and a second value described in the rule factor correction ticket received via the external interface A second rule factor application unit that applies two rule factors by requesting the cryptographic hash expansion unit to expand the data into the second storage area,
The information processing apparatus according to claim 6, wherein the rule factor correction ticket includes a replacement second value that is expanded in the second storage area, and an encryption digest of data in the rule factor correction ticket.
前記ルール要因修正チケットは、さらに、
予測された第1の値を含み、
前記第2ルール要因適用部は、さらに、前記予測された第1の値が、前記外部インターフェースを介して受信したデータを代表する前記第1の値と一致することを確認し、
一致しない場合には、前記第1の値を拡張するという前記暗号化ハッシュ拡張部への要求を行わない
請求項7記載の情報処理装置。
The rule factor correction ticket further includes:
Including the predicted first value;
The second rule factor application unit further confirms that the predicted first value matches the first value representing data received via the external interface;
The information processing apparatus according to claim 7, wherein if they do not match, a request is not made to the cryptographic hash expansion unit to expand the first value.
前記ルール要因修正チケットは、さらに、
前記オブジェクトの予測代表値を含み、
前記第2ルール要因適用部は、さらに、前記オブジェクトの予測代表値が、前記外部インターフェースを介して受信したオブジェクトの代表値と一致することを確認し、
一致しない場合には、前記第1の値を拡張するという前記暗号化ハッシュ拡張部への要求を行わない
請求項7記載の情報処理装置。
The rule factor correction ticket further includes:
Including a predicted representative value of the object,
The second rule factor application unit further confirms that the predicted representative value of the object matches the representative value of the object received via the external interface,
The information processing apparatus according to claim 7, wherein if they do not match, a request is not made to the cryptographic hash expansion unit to expand the first value.
前記ルール要因修正チケットは、さらに、
予測されたルール要因タイプを含み、
前記第2ルール要因適用部は、さらに、前記予測されたルール要因タイプが、前記外部インターフェースを介して受信したルール要因タイプと一致することを確認し、
一致しない場合には、前記第1の値を拡張するという前記暗号化ハッシュ拡張部への要求を行わない
請求項7記載の情報処理装置。
The rule factor correction ticket further includes:
Including the predicted rule factor type,
The second rule factor application unit further confirms that the predicted rule factor type matches the rule factor type received via the external interface;
The information processing apparatus according to claim 7, wherein if they do not match, a request is not made to the cryptographic hash expansion unit to expand the first value.
オブジェクトルール修正チケット発行方法であって、
現在のオブジェクトルール値を表す第1暗号化ハッシュを提供し、
新しいオブジェクトルール値を表す第2暗号化ハッシュを提供し、
オブジェクトルール値を含むオブジェクトを提供し、
ルール要因タイプを提供し、
前記オブジェクトルール値が前記第1暗号化ハッシュ値と等しいことを検証し、そして、
これらの値が等しければ、前記オブジェクトの代表値と前記第1暗号化ハッシュと前記第2暗号化ハッシュとの暗号化ダイジェストを生成することによって、オブジェクトルール修正チケットを発行する
オブジェクトルール修正チケット発行方法。
An object rule correction ticket issuing method,
Providing a first cryptographic hash representing the current object rule value;
Providing a second cryptographic hash representing the new object rule value;
Provide an object containing object rule values,
Provide rule factor types,
Verifying that the object rule value is equal to the first cryptographic hash value; and
If these values are equal, an object rule correction ticket issuance method for generating an object rule correction ticket by generating an encryption digest of the representative value of the object, the first encryption hash, and the second encryption hash .
前記方法は、さらに、
ルール要因を表すデータセットを提供し、
置換用の暗号化ハッシュ値と、ルール要因修正チケット内のデータの暗号化ダイジェストとを含むルール要因修正チケットを提供し、
前記ルール要因修正チケットに関連付けられた前記暗号化ダイジェストが正しいことを検証し、
前記検証が成功すれば、ルール要因を表す前記データセットを代表する値を前記第1暗号化ハッシュ内に拡張し、置換用の暗号化ハッシュを前記第2暗号化ハッシュ内に拡張する
請求項11記載の方法。
The method further comprises:
Provide a data set that represents the rule factors,
Providing a rule factor correction ticket that includes a cryptographic hash value for replacement and an encrypted digest of the data in the rule factor correction ticket;
Verifying that the encryption digest associated with the rule factor correction ticket is correct;
12. If the verification is successful, a value representative of the data set representing a rule factor is expanded in the first cryptographic hash, and a replacement cryptographic hash is expanded in the second cryptographic hash. The method described.
前記方法は、さらに、
前記ルール要因修正チケットが、予測された第1の値をさらに含み、
前記予測された第1の値が、ルール要因を表すデータセットを代表する値と一致することをさらに検証し、
一致しなければ、前記第1暗号化ハッシュ内への拡張と前記第2暗号化ハッシュ内への拡張とを行わない
請求項12記載の方法。
The method further comprises:
The rule factor correction ticket further includes a predicted first value;
Further verifying that the predicted first value matches a value representative of a data set representing a rule factor;
The method according to claim 12, wherein if they do not match, the extension into the first cryptographic hash and the extension into the second cryptographic hash are not performed.
前記方法は、さらに、
前記ルール要因修正チケットが、前記オブジェクトの予測された代表値をさらに含み、
前記オブジェクトの予測された代表値が前記オブジェクトの代表値と一致することをさらに検証し、
一致しなければ、前記第1暗号化ハッシュ内への拡張と前記第2暗号化ハッシュ内への拡張とを行わない
請求項12記載の方法。
The method further comprises:
The rule factor correction ticket further includes a predicted representative value of the object;
Further verifying that the predicted representative value of the object matches the representative value of the object;
The method according to claim 12, wherein if they do not match, the extension into the first cryptographic hash and the extension into the second cryptographic hash are not performed.
前記方法は、さらに、
前記ルール要因修正チケットが、予測されたルール要因タイプをさらに含み、
前記予測されたルール要因タイプが前記ルール要因タイプと一致することをさらに検証し、
一致しなければ、前記第1暗号化ハッシュ内への拡張と前記第2暗号化ハッシュ内への拡張とを行わない
請求項12記載の方法。
The method further comprises:
The rule factor correction ticket further includes a predicted rule factor type;
Further verifying that the predicted rule factor type matches the rule factor type;
The method according to claim 12, wherein if they do not match, the extension into the first cryptographic hash and the extension into the second cryptographic hash are not performed.
JP2010177819A 2010-08-06 2010-08-06 Flexible correction of authentication rule Pending JP2012039390A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010177819A JP2012039390A (en) 2010-08-06 2010-08-06 Flexible correction of authentication rule

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010177819A JP2012039390A (en) 2010-08-06 2010-08-06 Flexible correction of authentication rule

Publications (1)

Publication Number Publication Date
JP2012039390A true JP2012039390A (en) 2012-02-23

Family

ID=45850879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010177819A Pending JP2012039390A (en) 2010-08-06 2010-08-06 Flexible correction of authentication rule

Country Status (1)

Country Link
JP (1) JP2012039390A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016194004A (en) * 2015-03-31 2016-11-17 株式会社フジミインコーポレーテッド Polishing composition and method for producing polished article

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016194004A (en) * 2015-03-31 2016-11-17 株式会社フジミインコーポレーテッド Polishing composition and method for producing polished article

Similar Documents

Publication Publication Date Title
CN109313690B (en) Self-contained encrypted boot policy verification
US8732445B2 (en) Information processing device, information processing method, information processing program, and integrated circuit
KR100930218B1 (en) Method, apparatus and processing system for providing a software-based security coprocessor
JP5385148B2 (en) Secure boot terminal, secure boot method, secure boot program, recording medium, and integrated circuit
CN107077574B (en) Trust service for client devices
US10803175B2 (en) Device attestation through security hardened management agent
US7711960B2 (en) Mechanisms to control access to cryptographic keys and to attest to the approved configurations of computer platforms
KR101190479B1 (en) Ticket authorized secure installation and boot
WO2009107349A1 (en) Information processing device
US8171295B2 (en) Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable process
US8880898B2 (en) Anti-roll-back mechanism for counter
US8689010B2 (en) Secure storage for digital rights management
US10810312B2 (en) Rollback resistant security
US8392724B2 (en) Information terminal, security device, data protection method, and data protection program
TW201516733A (en) System and method for verifying changes to UEFI authenticated variables
JP2013519929A (en) Information processing apparatus, information processing system, software routine execution method, and remote authentication method
US20090006854A1 (en) Secure time source operations for digital rights management
Nyman et al. Citizen electronic identities using TPM 2.0
CN115509587B (en) Firmware upgrading method and device, electronic equipment and computer readable storage medium
KR20190128534A (en) Method for combining trusted execution environments for functional extension and method for applying fido u2f for supporting business process
JP2012039390A (en) Flexible correction of authentication rule
US20230106491A1 (en) Security dominion of computing device
US20240037216A1 (en) Systems And Methods For Creating Trustworthy Orchestration Instructions Within A Containerized Computing Environment For Validation Within An Alternate Computing Environment
Wang Towards a General Purpose Trusted Computing Platform for All Vendors and Applications
CN117813795A (en) Device identity key