Nothing Special   »   [go: up one dir, main page]

JP2009518762A - A method for verifying the integrity of a component on a trusted platform using an integrity database service - Google Patents

A method for verifying the integrity of a component on a trusted platform using an integrity database service Download PDF

Info

Publication number
JP2009518762A
JP2009518762A JP2008544666A JP2008544666A JP2009518762A JP 2009518762 A JP2009518762 A JP 2009518762A JP 2008544666 A JP2008544666 A JP 2008544666A JP 2008544666 A JP2008544666 A JP 2008544666A JP 2009518762 A JP2009518762 A JP 2009518762A
Authority
JP
Japan
Prior art keywords
integrity
client platform
report
trust
component
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
JP2008544666A
Other languages
Japanese (ja)
Inventor
トーマス, パラス ハードジョーノ,
デビッド, モーリツ ブレックマン,
ウイリアム, ワイアット スターンズ,
ブラッドレイ, ダグラス アンダーソン,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SignaCert Inc
Original Assignee
SignaCert Inc
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 SignaCert Inc filed Critical SignaCert Inc
Publication of JP2009518762A publication Critical patent/JP2009518762A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

クライアントプラットフォームは、ネットワーク上のリソースまたはサービスへのアクセスが許可される前に、クライアントプラットフォームにある個々のハードウェアまたはソフトウェアコンポーネントを検証して有効と判断することにより検証される。クライアントプラットフォームの複数のコンポーネントに対するダイジェストが生成される。これらのダイジェストは、集められてインテグリティレポートとなる。オーセンティケーターエンティティは、このインテグリティレポートを受信し、これらのダイジェストと、インテグリティオーソリティにあるローカルシグネチャデータベースまたはグローバルシグネチャデータベースのいずれかまたは両方に格納されているダイジェストとを比較する。もしくは、ダイジェストは、ポータブルダイジェストコレクタードングルに収集されて格納することも他のやり方としてできる。これらのダイジェストが有効であるか無効である場合には、全体のインテグリティ/トラストスコアが生成される。全体のインテグリティ/トラストスコアは、ポリシーを使って、クライアントプラットフォームのネットワーク上にあるリソースへのアクセスが許可されるべきか否かを決定するのに用いられる。
【選択図】図1
The client platform is validated by validating individual hardware or software components on the client platform before allowing access to resources or services on the network. Digests are generated for multiple components of the client platform. These digests are collected into an integrity report. The authenticator entity receives this integrity report and compares these digests with the digests stored in either or both the local signature database or the global signature database in the integrity authority. Alternatively, the digest can be collected and stored in a portable digest collector dongle as another method. If these digests are valid or invalid, an overall integrity / trust score is generated. The overall integrity / trust score is used to determine whether access to resources on the client platform's network should be allowed using policies.
[Selection] Figure 1

Description

本発明は、信頼できるコンピュータの使用およびネットワークのセキュリティに関し、より詳しくは、クライアントプラットフォームからのネットワーク上にあるリソースまたはサービスへのアクセスする許可を前に、そのクライアントプラットフォームの複数のコンポーネントのインテグリティ(integrity)を決めることに関する。   The present invention relates to the use of trusted computers and network security, and more particularly to the integrity of multiple components of the client platform prior to permission from the client platform to access resources or services on the network. ) To decide.

インターネットの拡大成長により、世界は変化した。1970年代の後期および1980年代の初期には、インターネットは、誕生したばかりであり、防衛省やいくつかの学術分野に専用の相互接続されたコンピュータの一部に位置づけられるものであった。1990年代の初期には、インターネットは、公衆の知るところとなった。公衆がインターネットにアクセスし易くなるほど、インターネットは、著しく大きく、複雑になった。その結果、インターネットは細分化して成長した。特に、ソフトウェアおよびハードウェア開発業者らは、インターネットに接続可能な多種多様なデバイスを開発した。これらのデバイスの開発は発展しながら続けられ、その結果、今日、インターネットに接続可能なデバイスは、多種多様なものとなっている。PCクライアント、サーバ、PDA(Personal Digital Assistants)、携帯電話、ルータや、他のネットワークに接続可能なデバイスは、すべてインターネットを経由して相互接続されているのが一般的である。セキュリティおよび認証の分野において、これらの相互接続可能なデバイスは、地域的規模および地球的規模で、変化をもたらしている。   The world has changed with the growth and growth of the Internet. In the late 1970s and early 1980s, the Internet was just born and was part of an interconnected computer dedicated to the Ministry of Defense and several academic disciplines. In the early 1990s, the Internet became known to the public. The easier the public has access to the Internet, the larger and more complex the Internet is. As a result, the Internet has grown fragmented. In particular, software and hardware developers have developed a wide variety of devices that can be connected to the Internet. The development of these devices continues to evolve, and as a result, there are a wide variety of devices that can be connected to the Internet today. In general, PC clients, servers, PDAs (Personal Digital Assistants), mobile phones, routers, and other devices that can be connected to other networks are all interconnected via the Internet. In the area of security and authentication, these interconnectable devices are changing on a regional and global scale.

インターネットの多くの未開拓の分野では、望まざる傾向が発生している。悪意をもった人々が、非合法に、偽物のハードウェアコンポーネントやソフトウェアコンポーネントを反合法的市場に売る。海賊版ソフトウェア、ウイルス、ワーム、そして他の危険な物も、また、脅威となっている。これらの脅威は、安全と、健全なインターネット、そのユーザー、およびそれらのデータを脅かしている。商取引の促進をインターネットに頼っている事業主は、事業の存続を最優先と考えると、これらの際限なく増大する脅威に直面しなければならないことに気づく。同様に個人のインターネットユーザーは、彼らの個人的な金融取引情報等の個人情報を含むデータの完全性(インテグリティ、integrity)や安全性について心配する。ネットワーク上におけるエンドポイントのインテグリティは、事業やネットワーク産業にとって、重大な懸案事項となってきている。   In many undeveloped areas of the Internet, undesired trends are occurring. Malicious people illegally sell fake hardware and software components to the illegal market. Pirated software, viruses, worms, and other dangerous things are also a threat. These threats threaten the safe and healthy Internet, its users, and their data. Business owners who rely on the Internet to promote commerce find that they must face these endlessly growing threats when business survival is a top priority. Similarly, individual Internet users are concerned about the integrity and safety of data containing personal information such as their personal financial transaction information. Endpoint integrity on the network has become a major concern for businesses and the network industry.

今日存在するアンチウイルスソフトウェア、スパムフィルター、そして他のソフトウェア製品は、コンピューターウイルスや、他の悪意のあるソフトウェア(マルウェア、malware)や他のユーザーにつけ込んだ試みを特定し、妨害し、除去することによって、上記の問題のいくつかに対して対処している。しかしながら、ウイルスを妨害すること自体は、クライアントプラットフォームのソフトウェアコンポーネントおよびハードウェアコンポーネントのインテグリティを保証するという問題を解決していない。特に、上述したソフトウェア製品は、ハードウェアやソフトウェアが信頼性のある公知の標準に依拠した真正のコンポーネントであるか否かを検証することができない。例えば、アンチウイルスソフトウェアは、問題のあるコンピュータシステムが例え悪意のあるソフトウェアを有していても、当該コンピュータシステムがネットワークにログインすることを阻止することができず、ハードウェアコンポーネントのインテグリティを検査することもない。また、アンチウイルスソフトウェアは、クライアントプラットフォームが違法のコンポーネントを有している可能性のある場合に、何ら予防措置をとらない。   Anti-virus software, spam filters, and other software products that exist today identify, block, and remove computer viruses, other malicious software (malware, malware) and other user attempts Addresses some of the above problems. However, blocking the virus itself does not solve the problem of ensuring the integrity of the software and hardware components of the client platform. In particular, the software products described above cannot verify whether the hardware or software is a genuine component that relies on a known reliable standard. For example, anti-virus software does not prevent the computer system from logging into the network, even if the problematic computer system has malicious software, and checks the integrity of the hardware components There is nothing. Anti-virus software also does not take any precautions if the client platform may have illegal components.

アンチウイルスソフトウェア製造業者の努力にもかかわらず、“汚染された”マシンを通じて企業のネットワークにますます多くのマルウェアが取り込まれている。例えば、従業員が出張の際にラップトップコンピューターを携帯し、社内ネットワーク外にあるインターネット等のネットワークに接続する際に、このような“汚染”が起きる可能性がある。その結果、当該マシンは、ある種のマルウェアによって“汚染される”。それから、“汚染された”マシンは、社内ネットワークに戻され、社内ネットワーク全体のインテグリティを脅かす虞がある。最高情報責任者(CIO)に対し、金融データを管理し、報告するシステムの安全性、正確性および信頼性について責任を負わせるサーベンス・オクスリー法(Sarbanes-Oxley Act)等の近年の法律制定を踏まえると、マシンインテグリティは特に重要である。   Despite the efforts of anti-virus software manufacturers, more and more malware is being introduced into corporate networks through “tainted” machines. For example, such “pollution” can occur when an employee carries a laptop computer on a business trip and connects to a network such as the Internet outside the corporate network. As a result, the machine is “contaminated” by some sort of malware. The “contaminated” machine can then be returned to the internal network, threatening the integrity of the entire internal network. Recent legislation such as the Sarbanes-Oxley Act, which makes the Chief Information Officer (CIO) responsible for the safety, accuracy and reliability of systems that manage and report financial data In light of this, machine integrity is particularly important.

銀行は、マルウェアや違法のコンポーネントを有するクライアントプラットフォームに対して特に脆弱な業種のよい一例である。もともと、銀行は、慎重に扱うべき金融情報を保管しており、当然、当該情報が安全な状態であることを確保しようとしている。今日、銀行のネットワークにアクセスを要求している既知のクライアントプラットフォームが取引を行うために要求される全体のインテグリティを有し、上記ネットワークに深刻な脅威をもたらさないか否かについて、程度の差はあるが銀行は把握できていない。   Banks are a good example of an industry that is particularly vulnerable to client platforms with malware and illegal components. Originally, banks kept financial information that should be treated with caution and, of course, are trying to ensure that the information is secure. Today, known client platforms that are requesting access to a bank's network have the overall integrity required to conduct a transaction, and to the extent that they do not pose a serious threat to the network, Yes, but the bank is not able to grasp it.

従って、ネットワークサービスやリソースへのアクセス許可が与えられる前に、不適当な状態であるかもしれないクライアントプラットフォームのハードウェアコンポーネントおよびソフトウェアコンポーネントについて識別し、有効なコンポーネントを認証する方法が、依然として求められている。本発明は、上記の問題および上記先行技術に関連した他の問題を解決するものである。   Therefore, there remains a need for a method for identifying and validating valid components of client platform hardware and software components that may be in an improper state before being granted access to network services and resources. ing. The present invention solves the above problems and other problems associated with the prior art.

本発明は、クライアントプラットフォームを認証し、クライアントプラットフォームの少なくとも1つのコンポーネントのインテグリティレポート(integrity report)を生成し、インテグリティに署名し、インテグリティレポートとインテグリティオーソリティ(integrity authority)のデータベースに格納されている複数のインテグリティ/トラストレコード(integrity/trust record)とを比較することによりネットワーク上にあるリソースやサービスへのアクセスを許可する方法および装置に関する。   The present invention authenticates a client platform, generates an integrity report of at least one component of the client platform, signs integrity, and is stored in a database of integrity reports and integrity authorities. The present invention relates to a method and apparatus for permitting access to resources and services on a network by comparing the integrity / trust record of the network.

本発明の前述した特徴、目的、利点およびそれら以外の特徴、目的、利点は、添付図面と関連して記載された以下の詳細な説明から明らかとなるであろう。   The foregoing features, objects, and advantages of the present invention, as well as other features, objects, and advantages will be apparent from the following detailed description taken in conjunction with the accompanying drawings.

好ましい実施例の詳細な説明Detailed Description of the Preferred Embodiment

本発明の実施例は、サプリカント(supplicant、クライアントプラットフォームとも言う)のソフトウェアおよびハードウェアのモジュールおよびコンポーネント(以下、これらのモジュールおよびコンポーネントを合わせて単に“コンポーネント”とも言う)のインテグリティを検証するものである。クライアントプラットフォームは、検証されるコンポーネントの情報(以下、“ダイジェスト”、“シグネチャ(signature)”とも言う)を収集する。ダイジェストは、クライアントインテグリティレポート(“インテグリティレポート”と言う)としてまとめられる。インテグリティレポートは、認証サーバ(authentication server)や他のオーセンティケーターエンティティ(authenticator entity)等のサーバに送信されることができる。それから、ダイジェストは、コンポーネントインテグリティ/トラストレコード(“インテグリティ/トラストレコード”とも言う)と比較される。インテグリティ/トラストレコードは、後述するインテグリティオーソリティによって前もって収集されていたものである。比較の結果、クライアントプラットフォームの信頼性の検証がなされる。   Embodiments of the present invention verify the integrity of supplicant (also referred to as client platform) software and hardware modules and components (hereinafter collectively referred to simply as “components”). It is. The client platform collects information on components to be verified (hereinafter also referred to as “digest” and “signature”). The digest is compiled as a client integrity report (referred to as an “integrity report”). The integrity report can be sent to a server such as an authentication server or other authenticator entity. The digest is then compared to the component integrity / trust record (also referred to as “integrity / trust record”). The integrity / trust record was previously collected by the integrity authority described below. As a result of the comparison, the reliability of the client platform is verified.

インテグリティオーソリティは、インテグリティ/トラストレコードを含むデータベースを有している。ある実施例では、グローバルシグネチャデータベース(global signature database、GSDB)が無数のソフトウェアおよびハードウェアのコンポーネントについての情報を含むインテグリティ/トラストレコードを供給する。当該情報は、前もってソフトウェアおよびハードウェア製造業者らから収集されたものであり、精製されており(refined)、かつ個々のインテグリティ/トラストスコア(integrity/trust score)が割り当てられている。別の実施例では、ローカルシグネチャデータベース(local signature database、LSDB)がインテグリティ/トラストレコードを供給する。LSDBは、定期的に更新されるか、GSDBと同期するように構成することができる。   The integrity authority has a database containing integrity / trust records. In one embodiment, a global signature database (GSDB) provides an integrity / trust record that contains information about a myriad of software and hardware components. This information has been collected in advance from software and hardware manufacturers, has been refined, and has been assigned an individual integrity / trust score. In another embodiment, a local signature database (LSDB) provides integrity / trust records. The LSDB can be configured to be updated periodically or synchronized with the GSDB.

ある実施例では、ダイジェストは、市販の製品から得ることができ、購入版からレコードを収集することにより得ることができる。また、別の実施例では、ダイジェストは、製造業者からアップロードされることにより、または直接的な手段で情報を得ることにより収集することができる。後者の方法は、一般に、コンポーネントの“流通過程の履歴(Chain-of-Custody)”についての確実性を考慮している。なぜなら、技術的防御方法を回避しようとして製品のコンポーネントを改ざんすることのできる仲介人(例えば、所有者)がより少ないからである。一般的に、流通過程の履歴における仲介人の人数が少ないと、製品のコンポーネントの改ざんが起こりにくい。とはいえ、改ざんが起こった場合、当業者であれば、真正の“基準(rule)”ではないと認識するであろう。また、当業者であれば、市販の製品または製造業者から直接得る以外の、ダイジェストを収集する方法があることを理解するであろう。   In one embodiment, the digest can be obtained from a commercial product and can be obtained by collecting records from a purchased version. In another embodiment, the digest can be collected by uploading from the manufacturer or by obtaining information by direct means. The latter method generally takes into account certainty about the component's “Chain-of-Custody”. This is because there are fewer intermediaries (eg, owners) that can tamper with the components of a product in an attempt to circumvent technical defenses. In general, if the number of intermediaries in the distribution process history is small, it is difficult to tamper with product components. Nonetheless, if tampering occurs, those skilled in the art will recognize that it is not a genuine “rule”. Those skilled in the art will also appreciate that there are methods for collecting digests other than those obtained directly from commercial products or manufacturers.

オーセンティケーターエンティティは、クライアントプラットフォームの信頼性のレベルを評価するためのデータベースにある情報を、使用することができる。クライアントプラットフォームの信頼性のレベルの評価は、データベースのインテグリティ/トラストレコードと、クライアントプラットフォームから受信したインテグリティレポートに格納された個々のコンポーネントとを比較し、クライアントプラットフォームについての全体のインテグリティ/トラストスコアを算出することにより行われる。全体のインテグリティ/トラストスコアは、いくつかの要因から影響を受けうる。例えば、ダイジェストがインテグリティレポートに格納されているコンポーネントの流通過程の履歴は、インテグリティ/トラストレコードのコンポーネントに割り当てられた個々のインテグリティ/トラストスコアに影響を与える可能性があり、最終的には、クライアントプラットフォームについて判断される全体のインテグリティ/トラストスコアに影響を与えうる。上述したように、直接製造業者から収集したダイジェストは、市販の製品からダイジェストとして収集したものよりも信頼性が高いと思われる。そして、ダイジェストがより信頼性の高いものであると、ダイジェストは、クライアントプラットフォームをより顕著に“信頼性が高いもの”に導く可能性がある。クライアントプラットフォームの“信頼性”を検証する別の要因として、インテグリティレポートの署名に用いられた認証方法が挙げられる。一旦全体のインテグリティ/トラストスコアが検証されると、当該スコアは、さらなる意思決定に用いられ、既定のポリシーに従って、ネットワーク上にあるリソースまたはサービスに、クライアントプラットフォームがアクセスすることを許可するか禁止するかの決定に用いられる。   The authenticator entity can use the information in the database to assess the level of trust of the client platform. Client platform reliability levels are evaluated by comparing the integrity / trust records in the database with the individual components stored in the integrity report received from the client platform to calculate the overall integrity / trust score for the client platform. Is done. The overall integrity / trust score can be affected by several factors. For example, the distribution history of a component whose digest is stored in an integrity report can affect the individual integrity / trust score assigned to the component in the integrity / trust record, and ultimately the client It can affect the overall integrity / trust score determined for the platform. As noted above, digests collected directly from manufacturers appear to be more reliable than those collected as digests from commercial products. And if the digest is more reliable, the digest can lead the client platform to be significantly more “reliable”. Another factor for verifying the “trust” of the client platform is the authentication method used to sign the integrity report. Once the overall integrity / trust score is verified, the score is used for further decision making and allows or disallows the client platform to access resources or services on the network according to predefined policies It is used for the determination.

図1は、パーソナルコンピュータ115、ネットワークエレメント120、携帯電話125そして携帯情報端末130等の種々のクライアントプラットフォーム110を含むシステム105を示している。また、当業者は、ノートブックコンピュータ、キオスク(kiosk)、デジタルカメラ等のシステム105に用いられうる他の種類のクライアントもあることがわかるであろう。各クライアントプラットフォーム110は、ネットワーク135に接続されることができる。ネットワーク135は、デバイスを相互接続することのできるあらゆるネットワークである。例えば、ネットワークとしては、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、そしてインターネットのようなグローバルネットワークが挙げられる。さらに、ネットワークは、任意の接続形式を用いることができ、例えば、IEEE 802.3標準(イーサネット)のような有線接続、IEEE 802.11標準のいずれかの無線接続、また、任意の有線および無線接続の組み合わせを用いることができる。   FIG. 1 shows a system 105 that includes various client platforms 110 such as a personal computer 115, a network element 120, a mobile phone 125, and a personal digital assistant 130. Those skilled in the art will also recognize that there are other types of clients that can be used in the system 105 such as notebook computers, kiosks, digital cameras, and the like. Each client platform 110 can be connected to a network 135. Network 135 is any network that can interconnect devices. For example, the network includes a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), and a global network such as the Internet. In addition, the network can use any connection type, for example, a wired connection such as the IEEE 802.3 standard (Ethernet), a wireless connection of any of the IEEE 802.11 standards, and any combination of wired and wireless connections. Can be used.

また、インテグリティオーソリティ140およびオーセンティケーターエンティティ145は、ネットワーク135に接続されたものとして示されている。図2について後述するように、オーセンティケーターエンティティ145は、本発明の種々の実施例に応じて、認証サーバ(authentication server)、検証サーバ(verification server)、ポリシーサーバ等の1または複数のサーバを有することができる。同様に、インテグリティオーソリティ145も後述するような機能を果たす1または複数のサーバを有することができる。図1では、インテグリティオーソリティ140とオーセンティケーターエンティティ145とは別々に示されているものの、当業者は、インテグリティオーソリティ140およびオーセンティケーターエンティティ145の機能が、同一の物理的なマシンまたは同一の物理的なマシンによって実行される複数の仮想的なマシン(仮想化については後述する)によって、統合され、稼働されることも可能なことを理解するであろう。例えば、インテグリティオーソリティ140とオーセンティケーターエンティティ145との両方が1つの企業で制御される場合、両方のマシンの機能を実行する1つのサーバを有することは理にかなう。インテグリティオーソリティ140およびオーセンティケーターエンティティ145は、クライアントプラットフォームを有効にする際、または、リソース150へのアクセスを許可するか否かの決定を行う際に連動して機能する。リソース150は、様々なものを含むサービスでありうるが、中でも、ウエブサービス、またはそのアプリケーション、サーバ、ネットワーク(アクセス制御が提供される組織内でのネットワーク等)、プリンタ、フラッシュメモリーディスク、または他のソリッドステートメモリーデバイス、1または複数のストレージデバイス、そして、出力またはディスプレイを含むものでもよい。   Also, integrity authority 140 and authenticator entity 145 are shown as being connected to network 135. As described below with respect to FIG. 2, the authenticator entity 145 may include one or more servers, such as an authentication server, a verification server, and a policy server, in accordance with various embodiments of the invention. Can have. Similarly, the integrity authority 145 may have one or more servers that perform the functions described below. Although FIG. 1 shows the integrity authority 140 and the authenticator entity 145 separately, those skilled in the art will recognize that the functions of the integrity authority 140 and the authenticator entity 145 are the same physical machine or the same physical It will be appreciated that a plurality of virtual machines (virtualization will be described later) can be integrated and operated by a single machine. For example, if both the integrity authority 140 and the authenticator entity 145 are controlled by a single enterprise, it makes sense to have a single server that performs the functions of both machines. The integrity authority 140 and the authenticator entity 145 work in conjunction when enabling the client platform or making a decision whether to allow access to the resource 150. Resource 150 can be a variety of services, among others, a web service or its application, server, network (such as a network within an organization where access control is provided), printer, flash memory disk, or others Solid state memory devices, one or more storage devices, and an output or display.

インテグリティオーソリティ140は、上述したハードウェアおよびソフトウェアコンポーネントの両方のデータを格納する。このデータは、ネットワーク135上の他の構成要素(例えば、オーセンティケーターエンティティ145)に供給されることができる。インテグリティオーソリティ140については、後述する図3、図4の説明中で説明する。   The integrity authority 140 stores data for both the hardware and software components described above. This data can be provided to other components on the network 135 (eg, the authenticator entity 145). The integrity authority 140 will be described in the description of FIGS.

イメージファイル155は、クライアントプラットフォーム110のようなクライアントプラットフォームにインストールされていてもよい。イメージファイル155をインストールする様々な方法および実施例については、後述する。図1に示す各種の構成要素は、システム105のマシン間での様々なデータを受信/送信するための受信装置および送信装置を有している。これらの操作については、後述する。   The image file 155 may be installed on a client platform such as the client platform 110. Various methods and embodiments for installing the image file 155 are described below. The various components shown in FIG. 1 have a receiving device and a transmitting device for receiving / transmitting various data between machines of the system 105. These operations will be described later.

インテグリティオーソリティ140およびオーセンティケーターエンティティ145が複数のサーバで構成されていることを前述したが、当業者であれば、前述した他のマシンにあるインテグリティオーソリティ140およびオーセンティケーターエンティティ145も、すべて仮想化できることを理解するであろう。その上、下記の各マシンは、1または複数のコンピュータ上で稼動している複数の仮想マシンとしてインスタンス化(instantiate)することができる。1または複数のコンピュータは、任意の構成とすることができる。さらに、プラットフォームのインテグリティの検証に用いられるすべてのマシンは、1台のハードウェア上で稼動する複数の仮想マシンとしてインスタンス化することができる。この場合、複数の仮想マシンは、あたかもそれらがすべて別のハードウェアであるかのように情報のやりとりを行う。また、インテグリティオーソリティ140およびオーセンティケーターエンティティ145は、保護されたドメイン下にあるクライアントプラットフォーム110上で稼動する仮想マシンとしてインスタンス化することができる。当業者であれば、仮想マシンの他の可能性のある構成を理解するであろう。ハードウェア上でのマシンの仮想化は、明確に列挙できるか否かに関わらず、すべての下記のマシンに適用することもできる。   As described above, the integrity authority 140 and the authenticator entity 145 are composed of multiple servers. You will understand that In addition, each of the following machines can be instantiated as a plurality of virtual machines running on one or more computers. One or a plurality of computers may have any configuration. Furthermore, all machines used to verify platform integrity can be instantiated as multiple virtual machines running on a single piece of hardware. In this case, a plurality of virtual machines exchange information as if they are all different hardware. Also, the integrity authority 140 and authenticator entity 145 can be instantiated as virtual machines running on the client platform 110 under the protected domain. Those skilled in the art will appreciate other possible configurations of virtual machines. Machine virtualization on hardware can also be applied to all of the following machines, whether or not they can be explicitly enumerated.

図2は、検証サーバ205、認証サーバ210およびポリシーサーバ215を備えたオーセンティケーターエンティティ145の実施例を示している。図2では、オーセンティケーターエンティティ145が1つの場所に設置され、検証サーバ205、認証サーバ210、ポリシーサーバ215が同一の場所に設置されているが、当業者ならば、各サーバは、別々の場所に設置してもよいことを理解するであろう。他の実施例では、オーセンティケーターエンティティ145は、検証サーバ205とポリシーサーバ215とを備えており、認証サーバ210の機能は、検証サーバ205によって達成される。さらに他の実施例では、オーセンティケーターエンティティ145は、1つのサーバを備え、認証サーバ210およびポリシーサーバ215の機能は、検証サーバ205によって達成される。当業者であれば、検証サーバ205、認証サーバ210およびポリシーサーバ215の各機能についての他の組み合わせがあることを理解するであろう。言い換えると、本発明のいくつかの実施例に照らすと、図2に示すいくつかのサーバの実体によって行われるどの機能も、1または複数のサーバによって行われることができる。ポリシーサーバ215は、ポリシーディシジョンポイント(Policy Decision Point、PDP)と呼ばれ、認証サーバ210は、ポリシーエンフォースメントポイント(Policy Enforcement Point、PEP)と呼ばれる。   FIG. 2 shows an embodiment of an authenticator entity 145 comprising a verification server 205, an authentication server 210 and a policy server 215. In FIG. 2, the authenticator entity 145 is installed in one place, and the verification server 205, the authentication server 210, and the policy server 215 are installed in the same place. It will be understood that it may be installed in a location. In another embodiment, the authenticator entity 145 includes a verification server 205 and a policy server 215, and the functionality of the authentication server 210 is achieved by the verification server 205. In yet another embodiment, the authenticator entity 145 comprises one server, and the functions of the authentication server 210 and policy server 215 are achieved by the validation server 205. One skilled in the art will appreciate that there are other combinations of functions for the validation server 205, authentication server 210, and policy server 215. In other words, in light of some embodiments of the present invention, any function performed by several server entities shown in FIG. 2 can be performed by one or more servers. The policy server 215 is called a policy decision point (PDP), and the authentication server 210 is called a policy enforcement point (PEP).

検証サーバ205は、クライアントプラットフォーム110のインテグリティの状態を検証するように構成されている。各クライアントプラットフォーム(例えば、図1に示す115、120、125、130)は、各クライアントプラットフォームのコンポーネント160についての情報を収集する。当該情報は“ダイジェスト”または“シグネチャ”とも言われる。これらの情報は、トラステッドプラットフォームモジュール(Trusted Platform Module、TPM)チップにあるプラットホームコンフィギュレーションレジスタ(platform configuration register、PCR)から収集される。TPMチップは、トラステッドコンピューティンググループ(Trusted Computing Group、TCG)の団体によって標準化され、推奨されているセキュリティ−ハードウェアチップである。TPMチップのセキュリティ上の特徴は、スマートカードのような他のハードウェアを用いたセキュリティ技術とは区別される。例えば、TPMチップは、インテグリティの測定、メトリクス(metrics)の収集、報告の機能を有している。そして、メトリクスのダイジェストは、PCRに格納される。また、TPMチップは、“シールドロケーション(shield location)”をサポートしている。シールドロケーションは、データが失われる危険を冒すことなく、かつ認証されていない命令にさらすことなく、慎重に行うべき操作が行われることのできるメモリの安全な部位を用意するものである。さらに、TPMチップは、“プロテクテッドケイパビリティズ(protected capabilities)”をサポートしている。プロテクテッドケイパビリティズは、シールドロケーションへのアクセスが禁止されたコマンドのセットである。上記の特徴および他の特徴によって、TMPチップは、信頼性のあるコンピューティング環境にとって理想的なものとなる。   The verification server 205 is configured to verify the integrity status of the client platform 110. Each client platform (eg, 115, 120, 125, 130 shown in FIG. 1) collects information about the component 160 of each client platform. This information is also referred to as “digest” or “signature”. These pieces of information are collected from a platform configuration register (PCR) in the Trusted Platform Module (TPM) chip. The TPM chip is a security-hardware chip that has been standardized and recommended by an organization of the Trusted Computing Group (TCG). The security features of the TPM chip are distinct from security technologies that use other hardware such as smart cards. For example, the TPM chip has functions for measuring integrity, collecting metrics, and reporting. The metrics digest is then stored in the PCR. The TPM chip also supports “shield location”. A shielded location provides a secure portion of memory where sensitive operations can be performed without risking data loss and without exposing to unauthorized instructions. In addition, TPM chips support “protected capabilities”. Protected capabilities are a set of commands that are prohibited from accessing shielded locations. The above and other features make the TMP chip ideal for a reliable computing environment.

ダイジェストは、また、プラットフォームに特有な他の部位や特徴からも生成することができる。上記特徴は、例えば、TPMと関連しないレジスタや、アプリケーション、プロセス、サービス、スレッドや、これらと同様のものであり、クライアントプラットフォーム110のコンポーネント160についての信頼できる情報源からの信頼できる情報を提供するものであってもよい。アプリケーションソフトウェアのダイジェストを生成する際には、ダイジェストは、アプリケーションの部分であるいくつかのファイルから生成することができ、そのような各ファイルがコンポーネントとされる。例えば、ソフトウェアスイートがワードプロセッサ、スプレッドシート、e-メールパッケージを含んでいる場合、ダイジェストは、他の可能性も考えられるが、各実行ファイルや、スイートの部分である関連づけられた各ライブラリファイルから生成することができる。ある実施例では、ソフトウェアアプリケーションの一部であるすべてのファイルをコンポーネントと考えることができ、他の実施例では、コンポーネントは、より選択的に特定される。当業者ならば、他のソフトウェアアプリケーションのコンポーネントをどのように特定できるか理解するであろう。   Digests can also be generated from other parts and features specific to the platform. The above features are, for example, registers not associated with the TPM, applications, processes, services, threads, and the like, and provide reliable information from trusted sources about the component 160 of the client platform 110. It may be a thing. When generating the digest of the application software, the digest can be generated from several files that are part of the application, and each such file is a component. For example, if the software suite includes a word processor, spreadsheet, and email package, the digest is generated from each executable and each associated library file that is part of the suite, although other possibilities are possible. can do. In some embodiments, all files that are part of a software application can be considered components, and in other embodiments, components are more selectively identified. Those skilled in the art will understand how other software application components can be identified.

ダイジェストは、コンポーネント160のハッシュを含んでいてもよい。コンポーネントのハッシュは、一方向暗号ハッシュ関数を用いて生成することができる。一方向暗号ハッシュ関数としては、MD5, SHA-1, SHA-256等が挙げられ、当業者であれば、他の使用できる一方向暗号ハッシュ関数を理解できるであろう。インテグリティレポートジェネレータ165は、ハッシュや他の生成された情報を含むダイジェストのすべてを収集し、インテグリティレポート170を生成する。図6の説明において後述するように、インテグリティレポート170には、インテグリティレポート170を送信したクライアントプラットフォームの同一性(identity)を検証するために、デジタル署名を行うことができる。   The digest may include a hash of component 160. The component hash can be generated using a one-way cryptographic hash function. One-way cryptographic hash functions include MD5, SHA-1, SHA-256, etc., and those skilled in the art will understand other one-way cryptographic hash functions that can be used. The integrity report generator 165 collects all of the digests, including hashes and other generated information, and generates an integrity report 170. As will be described later in the description of FIG. 6, the integrity report 170 can be digitally signed to verify the identity of the client platform that transmitted the integrity report 170.

クライアントプラットフォーム110は、認証サーバ210と、プラットフォームインテグリティベリフィケーションハンドシェイクを行う。ある実施例では、プラットフォームインテグリティベリフィケーションハンドシェイクは、プラットフォーム認証セッション中にクライアントプラットフォーム110と認証サーバ210との間での複数の対話(interactions)を含むことができる。プラットフォーム認証セッションは、クライアントプラットフォーム110からの最初のリソース150へのアクセス要求に始まり、クライアントプラットフォーム110のリソース150へのアクセスの許可または拒否の決定で終わる。他の実施例では、認証サーバ210は、クライアントプラットフォーム110の認証の一環としてトラストレポート220を用いることができる。クライアントプラットフォーム110がアクセスを拒否された場合、最後の確認応答(acknowledgment)とセッションの終了が起こる。クライアントプラットフォーム110がアクセスを許可された場合、最後の確認応答とセッションの終了は後で起こる。当業者であれば、最後の確認応答とセッションの終了は延期され、場合によっては全く起こらないかもしれないことを理解するであろう。プラットフォームインテグリティベリフィケーションの間、検証サーバ205は、インテグリティレポートジェネレータ165によって生成されたインテグリティレポート170に含まれるコンポーネント160のダイジェストを評価する。   The client platform 110 performs a platform integrity verification handshake with the authentication server 210. In certain embodiments, the platform integrity verification handshake may include multiple interactions between the client platform 110 and the authentication server 210 during the platform authentication session. The platform authentication session begins with an initial access request to the resource 150 from the client platform 110 and ends with a decision to allow or deny access to the resource 150 on the client platform 110. In other embodiments, the authentication server 210 can use the trust report 220 as part of the authentication of the client platform 110. If the client platform 110 is denied access, a final acknowledgment and session termination occurs. If the client platform 110 is granted access, the final acknowledgment and session termination will occur later. One skilled in the art will understand that the final acknowledgment and session termination is postponed and may not occur at all. During platform integrity verification, verification server 205 evaluates the digest of component 160 included in integrity report 170 generated by integrity report generator 165.

ある実施例では、検証サーバ205は、クライアントプラットフォーム110のトラストレベルを算定するための評価を行う。検証サーバ205は、また、トラストレポート220を生成する。トラストレポート220は、クライアントプラットフォーム110についての前記評価に従った全体のインテグリティ/トラストスコア225を含むものである。認証サーバ210は、全体のインテグリティ/トラストスコア225をポリシーサーバ215に供給する。ポリシーサーバ215は、クライアントプラットフォーム110のリソース150へのアクセスを許可するか否かを決定するものである。ポリシーサーバ215がクライアントプラットフォーム110のリソース150へのアクセスを拒否した場合、クライアントプラットフォーム110には、拒否の旨が通知されてもよい。例えば、クライアントプラットフォーム110がもはや信用できないほどに、クライアントプラットフォーム110のコンポーネント160が“ドリフトしている(drifted)”(コンポーネント160の認識されたダイジェストから変化している場合)場合、要求される修正は、クライアントプラットフォーム110がイメージファイル155を用いて再イメージ化されるか、さもなくば、やり直しである。あるいは、修正は、リソース150へのアクセスを許可する前に、“ドリフトした”コンポーネントの再インストールまたは削除することを伴うかもしれない。あるいは、クライアントプラットフォーム110は、リソース150へのアクセスを許可されるかもしれないが、もしかすると、そのアクセスは、クライアントプラットフォーム110が“ドリフト”に対処するまで低いレベルでのアクセスとなるかもしれない。当業者であれば、コンポーネントの“ドリフト”を取り扱うための他の可能性のある方法があることを理解するであろう。   In one embodiment, the validation server 205 performs an evaluation to calculate the client platform 110 trust level. The verification server 205 also generates a trust report 220. The trust report 220 includes an overall integrity / trust score 225 according to the assessment for the client platform 110. The authentication server 210 provides the overall integrity / trust score 225 to the policy server 215. The policy server 215 determines whether or not to permit access to the resource 150 of the client platform 110. When the policy server 215 denies access to the resource 150 of the client platform 110, the client platform 110 may be notified of the denial. For example, if the component 160 of the client platform 110 is “drifted” (if it has changed from the recognized digest of the component 160) such that the client platform 110 is no longer reliable, the required modification is The client platform 110 is reimaged using the image file 155, or it is redone. Alternatively, the modification may involve re-installing or removing “drifted” components before allowing access to resource 150. Alternatively, the client platform 110 may be allowed access to the resource 150, but that access may be at a lower level until the client platform 110 addresses "drift". One skilled in the art will appreciate that there are other possible ways to handle component “drift”.

他の実施例では、オーセンティケーターエンティティ145がトラストレポート220をクライアントプラットフォーム110に供給することができる。これによって、クライアントプラットフォーム110は、トラストレポート220を他のネットワークリソースやサービスへアクセスするための、“トラストチケット(trust ticket)”の一種として使うことができる。当該他のネットワークリソースやサービスも、トラストレポート220の有効性を検査するためのオーセンティケーターエンティティを有していてもよい。当業者であれば、無数のリソースやサービスが、トラストレポート220を用いるクライアントプラットフォーム110からアクセス可能であることを理解するであろう。   In other embodiments, the authenticator entity 145 can provide the trust report 220 to the client platform 110. This allows the client platform 110 to use the trust report 220 as a kind of “trust ticket” for accessing other network resources and services. Such other network resources and services may also have an authenticator entity for checking the validity of the trust report 220. One skilled in the art will appreciate that a myriad of resources and services are accessible from the client platform 110 using the trust report 220.

トラストレポート220は、トラストスコア225とは別に、どのマシンがオーセンティケーターエンティティ145およびインテグリティオーソリティ140として機能していたかについての表示を含んでいる。この情報は、トラストスコア225の信頼性を検証するのに用いることができる。サードパーティーはこの情報を、どのマシンがトラストスコア225の生成を担っていたかを判断するために用いることができる。特殊な例として、オーセンティケーターエンティティ145および/またはインテグリティオーソリティ140が仮想マシンである場合、この情報は、仮想マシンがインスタンス化されている物理マシンの表示を含むものとすることができる。したがって、例えば、オーセンティケーターエンティティ145およびインテグリティオーソリティ140がともにクライアントプラットフォーム110上でインスタンス化されている場合、サードパーティーは、問題となっている仮想マシンが、信頼性について分析がなされた同じ物理ハードウェアプラットフォーム上でインスタンス化されたものであることに気づくであろう。   Trust report 220 includes an indication of which machine was functioning as authenticator entity 145 and integrity authority 140, apart from trust score 225. This information can be used to verify the reliability of the trust score 225. The third party can use this information to determine which machine was responsible for generating the trust score 225. As a special example, if the authenticator entity 145 and / or the integrity authority 140 is a virtual machine, this information may include an indication of the physical machine on which the virtual machine is instantiated. Thus, for example, if the authenticator entity 145 and the integrity authority 140 are both instantiated on the client platform 110, then the third party can verify that the virtual machine in question is the same physical hardware that has been analyzed for reliability. You will notice that it was instantiated on the hardware platform.

検証サーバ205は、プロファイルデータベース235にクライアントプラットフォームインフォメーション230を格納することができる。クライアントプラットフォームインフォメーション230は、様々なものを含むことができるが、とりわけ、インテグリティレポート170および全体のインテグリティ/トラストスコア225を有するトラストレポート220を含むことができる。また、クライアントプラットフォームインフォメーション230は、評価の日時、クライアントプラットフォームコンフィグレーションの情報、インテグリティプロファイル(ここでは、“スキャンポリシー”とも言う)、ユーザー情報、そして、マシンに特有の情報を含むことができる。検証サーバ205は、プロファイルデータベース235に格納された情報をスキャンポリシーを実行するために用いることができる。例えば、ある組織は、財務部門に所属しているような特定のユーザーに対し、クライアントプラットフォーム110にあるコンポーネントのセットを持つことを要求し、一方では、他の“通常”のユーザーに対しては異なるコンポーネントのセットを持つことを要求してもよい。加えて、サブポリシーは、最高財務責任者のような財務部門の特定の人物に対し、追加の所定のコンポーネントを持つことを要求することができる。スキャンポリシーは、どのコンポーネントが存在するかを検証するだけでなく、どの程度、どの方法によってあるクライアントがスキャンされたかを検証することができる。上述した例では、スキャンポリシーは、2つのセットの要件で実施されたが、当業者であれば、無数の要件およびスキャンポリシーの階層(tiers)を実施可能であることを理解するであろう。   The verification server 205 can store the client platform information 230 in the profile database 235. The client platform information 230 can include a variety of things, among others, can include a trust report 220 having an integrity report 170 and an overall integrity / trust score 225. In addition, the client platform information 230 may include date and time of evaluation, client platform configuration information, integrity profile (also referred to herein as “scan policy”), user information, and machine-specific information. The verification server 205 can use the information stored in the profile database 235 to execute the scan policy. For example, an organization may require certain users, such as those in the finance department, to have a set of components on the client platform 110, while other “normal” users It may be required to have a different set of components. In addition, the sub-policy can require that certain persons in the finance department, such as the chief financial officer, have additional predetermined components. A scan policy can not only verify which components are present, but also to what extent and how a certain client was scanned. In the example described above, the scan policy was implemented with two sets of requirements, but those skilled in the art will understand that a myriad of requirements and scan policy tiers can be implemented.

ポリシーサーバ215は、所定の機関のためにカスタマイズされたポリシーを実施することができる。例えば、銀行について検討する。銀行の顧客が、クライアントプラットフォーム110を介して銀行の彼らのアカウントにアクセスすることを望む際には、ポリシーサーバ215は、全体のインテグリティ/トラストスコア225に従って、銀行の口座情報への段階的なアクセスを与えることを選択することができる。例えば、全体のインテグリティ/トラストスコア225が最初の閾値を超えていた場合、アクセスは、口座残高や、口座の明細等の口座情報や口座のリソースの一部まで許可される。全体のインテグリティ/トラストスコア225がより高い2番目の閾値を超えていた場合、アクセスは、電子送金を行えるような、より高いレベルの口座情報や口座のリソースまで許可される。上述の例では、ポリシーは、2つのトラストスコアの閾値を用いて、2つのセットのリソースへのアクセスを実施していたが、当業者であれば、無数の閾値とアクセスの段階を実施できることを理解するであろう。   Policy server 215 can implement a policy customized for a given institution. For example, consider a bank. When a bank customer wants to access their bank account via the client platform 110, the policy server 215 provides step-by-step access to the bank account information according to the overall integrity / trust score 225. You can choose to give For example, if the overall integrity / trust score 225 exceeds an initial threshold, access is granted to account information, such as account balances, account details, or a portion of account resources. If the overall integrity / trust score 225 exceeds a higher second threshold, access is granted to a higher level of account information and account resources that can be transferred electronically. In the above example, the policy used two trust score thresholds to access the two sets of resources, but those skilled in the art will understand that the myriad thresholds and stages of access can be implemented. You will understand.

図3は、本発明の実施例に係るインテグリティオーソリティ140を示す。インテグリティオーソリティ140は、複数のコンポーネント310から生情報(raw information)305を収集し、情報315(コンポーネントのダイジェストを含む)を検証するとともに精製し、精製情報315をインテグリティ/トラストレコード320としてグローバルシグネチャデータベース(GSDB)325に格納する。より具体的には、インテグリティオーソリティ140は、これらのコンポーネント310についての未加工の情報305をそれらの供給元(例えば、製造業者、ソフトウェアの販売元、ハードウェアの販売元等)から収集する。前述したように、ダイジェストは、市販の製品からレコードを収集することにより得ることができる。また、ダイジェストは、直接製造業者から、アップロードされることにより、または直接的な手段を通じて情報を得ることより、または他の手段を用いることにより得ることができる。コンポーネントの収集において、全体の信頼のレベルが最も高いものとなるような技術が用いられることが好ましい。例えば、コンポーネントの“流通過程の管理”ができるだけ安全なものとなる技術が用いられることが好ましい。オーセンティケーターエンティティ145(図1参照)は、クライアントプラットフォーム110の信頼性のレベルを評価するため、GSDB 325にある情報を用いることができる。この信頼性のレベルの評価は、GSDB 325のインテグリティ/トラストレコード320と、クライアントプラットフォーム110(図1)から受信したインテグリティレポート170(図1)に記載された個々のコンポーネントとを比較し、クライアントプラットフォーム110(図1)に全体のインテグリティ/トラストスコア225(図2)を割り当てることにより行われる。   FIG. 3 illustrates an integrity authority 140 according to an embodiment of the present invention. The integrity authority 140 collects raw information 305 from a plurality of components 310, verifies and refines the information 315 (including the component digest), and uses the global signature database as the integrity / trust record 320. Store in (GSDB) 325. More specifically, the integrity authority 140 collects raw information 305 about these components 310 from their suppliers (eg, manufacturers, software vendors, hardware vendors, etc.). As described above, the digest can be obtained by collecting records from commercially available products. The digest can also be obtained by uploading directly from the manufacturer, by obtaining information through direct means, or by using other means. In collecting the components, it is preferable to use a technique that gives the highest level of overall trust. For example, it is preferable to use a technology that makes component “distribution process management” as safe as possible. The authenticator entity 145 (see FIG. 1) can use the information in the GSDB 325 to assess the level of reliability of the client platform 110. This level of confidence is evaluated by comparing the GSDB 325 integrity / trust record 320 with the individual components listed in the integrity report 170 (FIG. 1) received from the client platform 110 (FIG. 1). This is done by assigning an overall integrity / trust score 225 (FIG. 2) to 110 (FIG. 1).

情報を収集した後に、インテグリティオーソリティ140は、既定のヒューリスティックス(heuristics)を用いて、情報の正確さを検証する。ある実施例では、ヒューリスティックスは、コンピューターアプリケーションまたはプログラムによる自動的な手段を介して適用される。他の実施例では、権限が与えられた個人によってマニュアルの検証が行われる。また、他の実施例では、情報は、収集され、規格化されたフォーマット(精製情報)315の状態で格納される。例えば、生情報305の検証は、生情報を精製情報315に精製し、インテグリティ/トラストレコード320の形式で格納できるようになされてもよい。加えて、インテグリティ/トラストレコード320は、収集した情報を検証するために、元の製造業者に送り返すことによって、さらに検証がなされてもよい。これは、収集されたデータにおける“ループの閉鎖(closing the loop)”と言うことができる。   After collecting the information, the integrity authority 140 verifies the accuracy of the information using predetermined heuristics. In one embodiment, heuristics are applied via automatic means by a computer application or program. In another embodiment, the manual is verified by an authorized individual. In another embodiment, information is collected and stored in a standardized format (purification information) 315. For example, the verification of the raw information 305 may be made so that the raw information can be refined into refined information 315 and stored in the form of an integrity / trust record 320. In addition, the integrity / trust record 320 may be further verified by sending it back to the original manufacturer to verify the collected information. This can be referred to as “closing the loop” in the collected data.

インテグリティ/トラストレコード320は、検索オペレーションに利用することができ、その場合、検証サーバは、図2で上述したように、クライアントプラットフォームインテグリティレポートを用いてクライアントプラットフォームのインテグリティを検証することを試みることができる。ある実施例では、検索オペレーションは、ウェブサービスインターフェイスを介して図2の検証サーバ205によって開始される。検索オペレーションは、コンポーネント毎を基本として、連続して行われることができる。あるいは、検索オペレーションは、1つのメッセージであってもよく、または複数の検索要求を含むバッチプロセスであってもよい。加えて、検索オペレーションは、GSDB 325に格納された情報およびダイジェストの制約が加えられたセットやカテゴリーについて行うことができる。これは、検索の範囲を制限するとともに、GSDB 325のパフォーマンスを改善するために行われる。当業者であれば、検索の範囲を制限することは、パターンマッチングや、集合論等を利用することにより遂行されることを理解するであろう。また、当業者であれば、例えば、直接的な接続、ウェブサービス以外のインターフェース、または他のネットワーク手段を介して検索オペレーションが行われる方法があることを理解できるであろう。   The integrity / trust record 320 can be used for search operations, in which case the validation server attempts to validate the integrity of the client platform using the client platform integrity report, as described above in FIG. it can. In one embodiment, the search operation is initiated by the validation server 205 of FIG. 2 via a web service interface. Search operations can be performed continuously on a component-by-component basis. Alternatively, the search operation may be a single message or a batch process that includes multiple search requests. In addition, search operations can be performed on sets and categories with information and digest constraints added to the GSDB 325. This is done to limit the scope of the search and improve the performance of GSDB 325. Those skilled in the art will appreciate that limiting the scope of a search is accomplished by using pattern matching, set theory, and the like. Those skilled in the art will also appreciate that there are ways in which search operations are performed, for example, via a direct connection, an interface other than a web service, or other network means.

図4は、本発明の実施例に係るインテグリティ/トラストレコード320の拡大図である。インテグリティオーソリティ140は、上述した図3に記載の方法によってインテグリティ/トラストレコード320を生成する。各インテグリティ/トラストレコード320は、ハッシュ405を含むことができる。また、各インテグリティ/トラストレコード320は、インテグリティオーソリティ140を特定する情報410を含むことができる。コンポーネントインフォメーション415は、コンポーネントアイデンティティ、コンポーネントの説明、コンポーネントの製造業者、モデル番号、バージョンリリース、パッチバージョン、製造日、製造地(例えば、国名、場所)等を含むことができる。また、インテグリティオーソリティ140のインテグリティ/トラストレコード320は、下記のようなその他の情報420を含むことができる。
レコードインフォメーション
レコードシリアルナンバー
現在のインテグリティ/トラストレコードの有効期間の開始日
現在のインテグリティ/トラストレコードの有効期間の終了日
レコードの発行者
収集情報
収集者のアイデンティティ(harvester identity)
収集方法
収集日時
割り当てられたインテグリティ/トラストスコア
ハッシュ値
リファレンス
他のサブコンポーネントのインテグリティ/トラストレコードのリファレンス
元の原製造業者(raw manufacturer)のデータのリファレンス
標準仕様のリファレンス
署名者(サイナー、signer)の情報
署名者(インテグリティオーソリティ)のアイデンティティ
インテグリティオーソリティの証明書のリファレンス
インテグリティオーソリティのデジタル署名
FIG. 4 is an enlarged view of the integrity / trust record 320 according to an embodiment of the present invention. The integrity authority 140 generates the integrity / trust record 320 by the method described above with reference to FIG. Each integrity / trust record 320 can include a hash 405. Each integrity / trust record 320 can also include information 410 identifying the integrity authority 140. The component information 415 can include a component identity, a description of the component, a component manufacturer, a model number, a version release, a patch version, a manufacturing date, a manufacturing location (eg, country name, location), and the like. In addition, the integrity / trust record 320 of the integrity authority 140 may include other information 420 as described below.
Record information
Record serial number
Start date of validity period of current integrity / trust record
End date of validity period of current integrity / trust record
Record issuer Collected information
Harvester identity
Collection method
Collection date and time
Assigned integrity / trust score
Hash value reference
Integrity / trust record reference for other subcomponents
Reference to original raw manufacturer data
Reference of standard specifications Information of signer
The identity of the signer (integrity authority)
Integrity Authority Certificate Reference Integrity Authority Digital Signature

図5は、本発明の実施例に係る検証サーバ205の拡大図である。また、トラストレポート220の拡大図が示されている。トラストレポート220は、全体のインテグリティ/トラストスコア225、クライアントプラットフォームアイデンティティ505(例えば、物理的なシリアルナンバー)、検証サーバ205のTPM証明書のリファレンス510、検証サーバアイデンティティ515を含むことができる。TPM証明書(およびTPMに関連した証明書)は、通常、改ざん耐性のあるハードウェアに格納されており、関連したレポートの内容のソースについての証明を供給する。トラストレポート220は、また、その他の情報520を含むことができ、その他の情報520は、クライアントプラットフォーム110のTPM証明書への1または複数のリファレンス、評価の日時、検証サーバ205の電子署名、クライアントプラットフォームから収集されたダイジェストが比較されたデータベースへのリファレンスを含むことができる。(通常、各データベースに格納されているダイジェストは、同一のものであるべきだが、同期の遅れや、データベースポリシーマネージメントのせいで、クライアントプラットフォームの信頼性を検証するのに用いられるデータベースは、潜在的に同期対象外(out-of-synch)であったものとすることができる。)加えて、その他の情報520は、1または複数のコンポーネント160のリストを含むことができ、その場合、コンポーネントは、GSDB 325(図3参照)にある当該各コンポーネント160と対応したインテグリティ/トラストレコード320へのリファレンスを有している。検証サーバ205は、クライアントプラットフォーム110についての評価に従って、トラストレポート220を生成する。   FIG. 5 is an enlarged view of the verification server 205 according to the embodiment of the present invention. Also, an enlarged view of the trust report 220 is shown. The trust report 220 may include an overall integrity / trust score 225, a client platform identity 505 (eg, a physical serial number), a TPM certificate reference 510 for the validation server 205, and a validation server identity 515. TPM certificates (and certificates associated with TPM) are typically stored on tamper resistant hardware and provide proof of the source of the content of the associated report. The trust report 220 may also include other information 520, which may include one or more references to the client platform 110 TPM certificate, the date and time of the evaluation, the electronic signature of the verification server 205, the client A reference to a database against which digests collected from the platform were compared can be included. (Normally, the digests stored in each database should be the same, but the database used to verify the reliability of the client platform because of synchronization delays and database policy management is a potential In addition, the other information 520 can include a list of one or more components 160, in which case the component is And a reference to the integrity / trust record 320 corresponding to each component 160 in the GSDB 325 (see FIG. 3). The verification server 205 generates a trust report 220 according to the evaluation for the client platform 110.

コンパレータ525は、インテグリティレポート170中のダイジェストと図3のGSDB 325にあるインテグリティ/トラストレコード320とを比較するために用いられる。インテグリティレポート170中のダイジェストとインテグリティ/トラストレコード320と比較することにより、検証サーバ205はクライアントプラットフォーム110の信頼性のレベルを判定することができる。この信頼性のレベルは、トラストレポート220において、全体のインテグリティ/トラストスコア225として表わされる。   Comparator 525 is used to compare the digest in integrity report 170 with the integrity / trust record 320 in GSDB 325 of FIG. By comparing the digest in the integrity report 170 with the integrity / trust record 320, the validation server 205 can determine the level of trustworthiness of the client platform 110. This level of confidence is represented in the trust report 220 as an overall integrity / trust score 225.

ダイジェストの種類と量は、全体のインテグリティ/トラストスコア225に影響を与えうる。例えば、オペレーティングシステムに関するダイジェストは、ゲームソフトウェアに関するダイジェストよりも重要となる可能性がある。全体のインテグリティ/トラストスコア225は、クライアントプラットフォーム110から集められたダイジェストに関連したファクターだけでなく、インテグリティレコード320の信頼性に関連したファクターによっても影響を受ける。前述したように、インテグリティレコード320に記憶されたコンポーネントの流通履歴は、各インテグリティ/トラストレコード320に記載のコンポーネントに割り当てられた個々のインテグリティ/トラストスコア425(図4参照)に影響を与える。そして、インテグリティ/トラストレコード320は、最終的に、クライアントプラットフォーム110について判定された全体のインテグリティ/トラストスコア225に影響を与うる。インテグリティレポート170に署名する証明書の種類や、GSDB 325に格納されたダイジェストの合計数と比較したクライアントプラットフォーム110から収集されるダイジェストの合計数等の他のファクターも、全体のインテグリティ/トラストスコア225に影響を与える。加えて、その定義されたカテゴリーやセットに対してマッチしたダイジェストの数に制約を課すことによって、セット内とセット外のコンポーネントの数がわかり、また、どのコンポーネントがすっかりなくなっているかがわかる。   The type and amount of digests can affect the overall integrity / trust score 225. For example, a digest for an operating system may be more important than a digest for game software. The overall integrity / trust score 225 is affected not only by factors related to the digest collected from the client platform 110 but also by factors related to the reliability of the integrity record 320. As described above, the distribution history of the component stored in the integrity record 320 affects the individual integrity / trust score 425 (see FIG. 4) assigned to the component described in each integrity / trust record 320. The integrity / trust record 320 can ultimately affect the overall integrity / trust score 225 determined for the client platform 110. Other factors such as the type of certificate that signs the integrity report 170 and the total number of digests collected from the client platform 110 compared to the total number of digests stored in the GSDB 325 also contribute to the overall integrity / trust score 225. To affect. In addition, by constraining the number of matched digests for the defined category or set, you can see how many components are in and out of the set, and which components are completely missing.

本件出願人に譲渡されたU.S. Patent Application Serial No. 11/288/820では、インテグリティ/トラストスコア225を決定することのできる方法について詳しく説明している。インテグリティ/トラストスコアは、コンピュータシステムの全体のインテグリティの指標、またはコンピュータシステムが信頼に値するものとみなすことができるか否かの指標となる。インテグリティ/トラストスコアは多くの異なる方法によって生成できる。ある実施例では、インテグリティ/トラストスコアは、コンピュータシステムのコンポーネント全部(有効とされたか否かに関わらず)の数に対するコンピュータシステム上の有効とされたコンポーネントの数の比である。他の実施例では、インテグリティ/トラストスコアは、0から1000の間の数字で評価される。ここで、0は、全く信用できないコンピュータシステムを示し、1000は、完全に信用できるコンピュータシステムを示す。さらに、他の実施例では、重要なコンポーネントは、他のコンポーネントよりも大きく重み付けをすることができる。このため、より多くの有効とされた重要なコンポーネントを有するコンピュータシステムが、より少ない有効とされた重要なコンポーネントを有するコンピュータシステムより高いスコアを得ることができる。(“重要な”の定義は、潜在的なすべてのユーザーにすべての状況で“必要”とされるコンポーネントを示すことは意図していない。むしろ、問題となっている組織で重要であると特定されるコンポーネントを示すことを意図している。このため、ある組織は、オペレーティングシステムに関するファイルが“重要”であると考えるかもしれず、一方で、他の組織は、内部で特別に開発したコンポーネント(どのような目的のためであっても)を“重要”であると考えるかもしれない。あるコンポーネントが“必要”かつ“重要”であることはありうるが、一方の性質が他方の性質を示唆するものではない。)   U.S. Patent Application Serial No. 11/288/820, assigned to the present applicant, details how the integrity / trust score 225 can be determined. The integrity / trust score is an indicator of the overall integrity of the computer system or whether the computer system can be considered reliable. Integrity / trust scores can be generated in many different ways. In one embodiment, the integrity / trust score is the ratio of the number of enabled components on the computer system to the total number of components of the computer system (whether or not enabled). In another embodiment, the integrity / trust score is evaluated as a number between 0 and 1000. Here, 0 indicates a computer system that cannot be trusted at all, and 1000 indicates a computer system that can be completely trusted. Furthermore, in other embodiments, critical components can be weighted more than other components. Thus, a computer system having more significant components that are validated can obtain a higher score than a computer system having fewer significant components that are validated. (The definition of “important” is not intended to indicate to all potential users the components that are “necessary” in all situations. Rather, it identifies them as important to the organization in question This is intended to show the components that are being managed, so some organizations may consider operating system files to be “important”, while others may have specifically developed components ( May be considered “important” (for any purpose), one component may be “necessary” and “important”, but one property suggests the other Not.)

インテグリティ/トラストスコア225を計算することができる他の方法がある。他の実施例では、シグネチャデータベース内での様々な有効とされたコンポーネントの位置をファクターとして用いることができる。例えば、シグネチャデータベース内において先にリストに挙げられたコンポーネントは、シグネチャデータベース内において後で生じたコンポーネントよりも重要なものと考えることができる。同様に、インテグリティレポートジェネレータ165(図1)がどのコンポーネントがクライアントプラットフォームの総合的なインテグリティにとってより重要かを示して、コンポーネントのダイジェストを収集する場合(例えば、インテグリティレポート170に、重要度の順番でダイジェストをリスト化する場合)、当該情報もまた、インテグリティ/トラストスコア225に組み込むことができる。他の実施例では、インテグリティ/トラストスコア225は、コンポーネントの識別子に組み込むことができる。ある製造業者によって製造されたコンポーネントは、他の製造業者によって製造されたコンポーネントより、より重要でありうる。例えば、アプリケーションと共同で機能するコンポーネントを考えるとよい。アプリケーションの製造業者によって製造されたコンポーネントは、サードパーティーによって製造されたコンポーネントよりも重要と考えることができる。   There are other ways in which the integrity / trust score 225 can be calculated. In other embodiments, the location of various enabled components within the signature database can be used as a factor. For example, the components listed earlier in the signature database can be considered more important than components that occur later in the signature database. Similarly, when the integrity report generator 165 (Figure 1) indicates which components are more important to the overall integrity of the client platform and collects a digest of the components (for example, in the integrity report 170, in order of importance) If listing digests), that information can also be incorporated into the integrity / trust score 225. In other embodiments, the integrity / trust score 225 may be incorporated into the component identifier. Components manufactured by one manufacturer may be more important than components manufactured by other manufacturers. For example, consider a component that works in conjunction with an application. Components manufactured by application manufacturers can be considered more important than components manufactured by third parties.

さらに、他の実施例では、コンポーネントのバージョンおよび/またはパッチのレベルは、インテグリティ/トラストスコアの計算を行う際のファクターとして用いられることができる。例えば、コンポーネントがいくつかのバージョンを有すると仮定すると、より最新のバージョンは、古いバージョンよりも重要であると考えることができる。もし、有効とされたコンポーネントが期限切れとなると、その結果としてのインテグリティ/トラストスコアは、より最新のバージョンの同じコンポーネントを有している他の同一のコンピュータシステムよりも低くなりうる。一方で、新しいコンポーネントに信頼性を疑う理由がある場合(例えば、当該コンポーネントは、欠陥があると知られている場合)、当該新しいバージョンのコンポーネントを有することは、インテグリティ/トラストスコアをより低いものとするかもしれない。   Further, in other embodiments, the component version and / or patch level can be used as a factor in performing the integrity / trust score calculation. For example, assuming that a component has several versions, the more recent version can be considered more important than the older version. If a validated component expires, the resulting integrity / trust score can be lower than other identical computer systems that have the more recent version of the same component. On the other hand, if there is a reason to suspect the reliability of a new component (eg if the component is known to be defective), having the new version of the component has a lower integrity / trust score. It may be.

上記の比較オペレーションにおいて、検証サーバ205は、インテグリティレポート170を解析し、インテグリティレポート170の各ダイジェストについてインテグリティオーソリティ140(図3)のGSDB 325への検索オペレーションを行う。この検索オペレーションは、コンポーネント単位で連続して行うことができる。もしくは、検索オペレーションは、それぞれが複数の検索要求を含む1または複数のメッセージであってもよい。また、検索オペレーションは、よりきめ細かい結果を提供するとともに、GSDB 325の総合的なパフォーマンスを向上させるために、情報のあるカテゴリーやセットに対して範囲を絞るものであってもよい。   In the above comparison operation, the verification server 205 analyzes the integrity report 170 and performs a search operation on the GSDB 325 of the integrity authority 140 (FIG. 3) for each digest of the integrity report 170. This search operation can be performed continuously in component units. Alternatively, the search operation may be one or more messages each including a plurality of search requests. The search operation may also narrow the scope to a category or set of information in order to provide more fine-grained results and improve the overall performance of GSDB 325.

ある実施例では、クライアントプラットフォーム110がネットワーク135のリソース150へのアクセスを許可される前に、検証サーバ205は、クライアントプラットフォーム110のインテグリティを検証することができる。他の実施例では、コンパレータ525は、一定時間の間、定期的に比較オペレーションを行うことができるが、最初のアクセスを許可された後に初めて比較オペレーションを行うようにしてもよい。例えば、ホームコンピュータのユーザーは、コンポーネント160の評価をするように指示しながら、ネットワーク135へのアクセスを得ようとするかもしれない。しかしながら、常時接続であるブロードバンド接続は、ホームコンピュータのユーザーの間でもありふれたものとなってきている。ブロードバンド接続は、ユーザーがネットワークにログインする回数を減らすことができる。また、このことは、法人および企業のコンピュータユーザーにも同様にあてはまる。結果として、コンパレータ525は、クライアントプラットフォーム110のネットワーク135への最初の接続の試みと同時ではなく、それからしばらくたって、比較オペレーションを行うことができる。   In some embodiments, the verification server 205 can verify the integrity of the client platform 110 before the client platform 110 is granted access to the resources 150 of the network 135. In another embodiment, the comparator 525 can perform the comparison operation periodically for a certain period of time, but may perform the comparison operation only after the first access is granted. For example, a home computer user may attempt to gain access to network 135 while instructing to evaluate component 160. However, broadband connections, which are always connected, are becoming common among home computer users. A broadband connection can reduce the number of times a user logs into the network. This also applies to corporate and corporate computer users. As a result, the comparator 525 can perform the comparison operation some time later, not at the same time as the initial connection attempt of the client platform 110 to the network 135.

図6は、本発明の実施例に係るインテグリティレポート170の拡大図である。クライアントプラットフォーム110は、通常、XMLのような標準的な形式または言語で、インテグリティレポート170を生成する。しかしながら、当業者であれば、標準的でないフォーマットや言語も用いることができることを理解するであろう。インテグリティレポート170は、TPM証明書610を用いてデジタル署名605がなされる。当業者であれば、TPMチップを含むどのような証明書でも用いることができ、このため、TPM証明書610は、Endorsement Key(EK)証明書、Attestation Identity Keys (AIK)証明書、またはSubject Key Attestation Evidence (SKAE)証明書とすることができることを理解するであろう。さらに、当業者であれば、インテグリティレポート170は、必ずしもTPM証明書ではなくても、TPMに規定された証明書から派生した証明書によって署名されることもできるし、他の証明書によって署名されることもできることを理解するであろう。   FIG. 6 is an enlarged view of the integrity report 170 according to the embodiment of the present invention. The client platform 110 typically generates the integrity report 170 in a standard format or language such as XML. However, those skilled in the art will appreciate that non-standard formats and languages can also be used. The integrity report 170 is digitally signed 605 using the TPM certificate 610. A person skilled in the art can use any certificate including a TPM chip, so the TPM certificate 610 can be an Endorsement Key (EK) certificate, an Attestation Identity Keys (AIK) certificate, or a Subject Key. You will understand that it can be an Attestation Evidence (SKAE) certificate. Furthermore, those skilled in the art can sign the integrity report 170 with a certificate derived from a certificate specified in the TPM, but not necessarily with a TPM certificate. You will understand that you can.

上述したように、インテグリティレポート170は、クライアントプラットフォームにある複数のコンポーネントの複数のダイジェストを含むことができる。ある実施例では、これらのダイジェストは、それらのコンポーネント160のハッシュ615として計算される。他の実施例では、これらのダイジェストは、GSDB 325(図3)のインテグリティ/トラストレコード320に保存されたコンポーネントに関連付けられたダイジェストと比較されることができる。他の実施例では、ダイジェストは、図7において後述するローカルシグネチャデータベース(LSDB)のインテグリティ/トラストレコードに保存されたコンポーネントに関連付けられたダイジェストのサブセットと比較される。そして、その中で見つからない場合は、ローカルデータベースで照合されなかったダイジェストについてGSDB 325を参照することができる。さらに、他の実施例では、ローカルデータベースは、完全にグローバルデータベスのダイジェストと同期し(正確に照合され)、場合によってGSDB 325を参照する必要性をなくすことができる。   As described above, the integrity report 170 can include multiple digests of multiple components at the client platform. In one embodiment, these digests are computed as hashes 615 of their components 160. In other examples, these digests can be compared to digests associated with components stored in integrity / trust record 320 of GSDB 325 (FIG. 3). In another embodiment, the digest is compared to a subset of digests associated with components stored in a local signature database (LSDB) integrity / trust record described below in FIG. And if it is not found in it, the GSDB 325 can be referred to for a digest that was not verified in the local database. Furthermore, in other embodiments, the local database may be completely synchronized (exactly matched) with the global database digest, eliminating the need to reference GSDB 325 in some cases.

図7は、本発明の実施例に係るシステム705を示しており、システム705は、企業ネットワーク710のオーセンティケーターエンティティ145に接続されたクライアントプラットフォーム110を含む。オーセンティケーターエンティティ145は、インテグリティオーソリティ140と相互にやりとりを行うことができる。企業ネットワーク710は、インターネット715や上述したような他の任意のネットワークを介してインテグリティオーソリティ140と接続されることができる。図7に示すように、クライアントプラットフォーム110は、企業のワイヤレスアクセスポイント720を経由して無線でオーセンティケーターエンティティ145と接続されている。しかしながら、当業者であれば、クライアントプラットフォーム110は、IEEE 802.3規格(イーサネット)のような有線接続、IEEE 802.11規格のような無線接続や、任意の有線または無線のネットワークの組み合わせ等の、任意の形式の接続を用いて企業ネットワーク710に接続可能であることを理解するであろう。   FIG. 7 illustrates a system 705 according to an embodiment of the present invention that includes a client platform 110 connected to an authenticator entity 145 of an enterprise network 710. The authenticator entity 145 can interact with the integrity authority 140. The corporate network 710 can be connected to the integrity authority 140 via the Internet 715 or any other network as described above. As shown in FIG. 7, the client platform 110 is wirelessly connected to the authenticator entity 145 via a corporate wireless access point 720. However, those skilled in the art will understand that the client platform 110 can be in any format, such as a wired connection such as the IEEE 802.3 standard (Ethernet), a wireless connection such as the IEEE 802.11 standard, or any wired or wireless network combination. It will be understood that it is possible to connect to the corporate network 710 using

上述したように、オーセンティケーターエンティティ145は、クライアントプラットフォーム110の評価をする。この評価は、クライアントプラットフォーム110が企業ネットワーク710にアクセスを求めたときに行われる。すなわち、評価は、クライアントプラットフォーム110を認証の一部であり、クライアントプラットフォームが特定のリソースへのアクセスを要求する前である。オーセンティケーターエンティティ145は、クライアントプラットフォーム110を他の期間に評価することができる。例えば、オーセンティケーターエンティティ145は、場合によっては、企業のポリシーに従って、定期的にクライアントプラットフォーム110を再評価してもよい。ある実施例では、オーセンティケーターエンティティ145は、クライアントプラットフォーム110からのインテグリティレポート170を要求することにより、クライアントプラットフォーム110のコンポーネント160を評価することができる。クライアントプラットフォーム110は、インテグリティレポートジェネレータ165を用いて、インテグリティレポート170を生成する。インテグリティレポート170にあるコンポーネント160を表す各ダイジェストに対して、オーセンティケーターエンティティ145は、後に詳述するLSDB 720から前記ダイジェストに対応するインテグリティ/トラストレコード725を特定する。クライアントプラットフォーム110の信頼性のレベルを評価するために、インテグリティ/トラストレコード725は、コンポーネント160のハッシュと比較される。   As described above, the authenticator entity 145 evaluates the client platform 110. This evaluation is performed when the client platform 110 seeks access to the corporate network 710. That is, the evaluation is part of authenticating the client platform 110 and before the client platform requests access to a particular resource. The authenticator entity 145 can evaluate the client platform 110 at other time periods. For example, the authenticator entity 145 may re-evaluate the client platform 110 periodically, in some cases, in accordance with corporate policy. In one embodiment, the authenticator entity 145 can evaluate the component 160 of the client platform 110 by requesting an integrity report 170 from the client platform 110. Client platform 110 uses integrity report generator 165 to generate integrity report 170. For each digest representing the component 160 in the integrity report 170, the authenticator entity 145 identifies an integrity / trust record 725 corresponding to the digest from the LSDB 720 described in detail below. In order to assess the level of trustworthiness of the client platform 110, the integrity / trust record 725 is compared to the hash of the component 160.

他の実施例では、オーセンティケーターエンティティ145は、例えばクライアントにトンネリングする適当なサーバによって、クライアントプラットフォーム110を遠隔で評価することができ、そのため、クライアントプラットフォーム110からのインテグリティレポート170を要求しない。その代りに、オーセンティケーターエンティティ145は、遠隔の評価を基にしてインテグリティレポート170を生成する。この遠隔の評価は、様々な機構を用いて行うことができる。例えば、「Intel vPro」 technologyを用いることができる(「Intel vPro」は、アメリカおよびその他の国におけるIntel Corporationおよびその子会社の登録商標である)。当業者であれば、他の機構を用いることができることを理解するであろう。   In other embodiments, the authenticator entity 145 can remotely evaluate the client platform 110, for example by a suitable server tunneling to the client, and therefore does not require an integrity report 170 from the client platform 110. Instead, the authenticator entity 145 generates an integrity report 170 based on the remote assessment. This remote evaluation can be performed using various mechanisms. For example, “Intel vPro” technology can be used (“Intel vPro” is a registered trademark of Intel Corporation and its subsidiaries in the United States and other countries). One skilled in the art will appreciate that other mechanisms can be used.

LSDB 720にあるインテグリティ/トラストレコード725は、定期的に、アップデートされ、GSDB 325にあるインテグリティ/トラストレコード320と同期させられる。これは、LSDB 720が最新のインテグリティ/トラストレコードを利用できることを確保するためである。ある実施例では、企業ネットワーク710での評価オペレーションに関連するインテグリティ/トラストレコード320のみがLSDB 720に転送される。GSDB 325の一部を格納することにより、ネットワークトラフィックを減らすことができ、また、LSDB 720のサイズを最小化することができる利点がある。LSDB 720の特定のインテグリティ/トラストレコードが、不使用になったり、他の理由でもはや必要でなくなる場合、当該レコードは、LSDB 720から削除され、将来において必要とされる時や、将来必要になる場合、当該レコードは後にGSDB 325から再取得される。例えば、企業のポリシーがその企業で用いられる最新のバージョンの仮想プライベートネットワーク(virtual private network、"VPN")のみが許可されると規定されている場合、旧式のVPNに関連するインテグリティ/トラストレコードは、LSDB 720から削除される。GSDB 325およびLSDB 720もまた、仮想化することができる。例えば、各データベースは、同一または異なる物理マシンにある異なる仮想マシンに設置することができる。仮想マシンは、クライアントプラットフォーム110に設置することもできる。   The integrity / trust record 725 in the LSDB 720 is periodically updated and synchronized with the integrity / trust record 320 in the GSDB 325. This is to ensure that the LSDB 720 can use the latest integrity / trust records. In one embodiment, only the integrity / trust record 320 associated with the evaluation operation in the enterprise network 710 is transferred to the LSDB 720. By storing a part of the GSDB 325, network traffic can be reduced, and the size of the LSDB 720 can be minimized. If a particular integrity / trust record in LSDB 720 becomes obsolete or no longer needed for other reasons, that record is deleted from LSDB 720 and will be needed in the future or in the future If so, the record is later retrieved from GSDB 325. For example, if a company policy stipulates that only the latest version of the virtual private network ("VPN") used by the company is allowed, the integrity / trust record associated with the old VPN is Deleted from LSDB 720. GSDB 325 and LSDB 720 can also be virtualized. For example, each database can be installed in a different virtual machine on the same or different physical machine. Virtual machines can also be installed on the client platform 110.

GSDB 325とLSDB 720との間での同期またはアップデートは、安全で認証された回線(channel)を通じて行うことができ、企業のポリシーの示す適正なタイミングで行うことができる。例えば、LSDB 720が常に最も新しい関連したレコードを含むべきであると企業のポリシーが示す場合、GSDB 325は、これらのレコードが利用可能になり次第、当該レコードを供給することができる(例えば、LSDB 720に新しいレコードがあり、回収待ちであることを伝えることにより、または、レコードをLSDB 720にプッシュすることにより供給される)。一方、十分な数のレコードがGSDB 325から回収できるときにLSDB 720はアップデートされるべきと企業のポリシーが指示する場合、または企業の雇用者への不都合をできるだけ少なくすべきと企業のポリシーが指示する場合、ネットワークまたはインフォメーションテクノロジー(information technology、"IT")の管理者が指示する適正なタイミングで、アップデート/同期が行われる。これらは、マニュアルであってもよく、スケジュール化されていてもよく、あるいは自動であってもよい。   Synchronization or update between the GSDB 325 and the LSDB 720 can be done through a secure and authenticated channel and at the right time as indicated by the company policy. For example, if company policy indicates that LSDB 720 should always contain the most recent relevant records, GSDB 325 can supply those records as they become available (eg, LSDB Supplied by telling 720 that there is a new record and is waiting for collection, or by pushing the record to LSDB 720). On the other hand, if the company policy dictates that the LSDB 720 should be updated when a sufficient number of records can be retrieved from the GSDB 325, or if the company policy dictates that there should be as little inconvenience to the company employer In this case, the update / synchronization is performed at an appropriate timing instructed by the administrator of the network or information technology (“IT”). These may be manuals, scheduled, or automatic.

LSDB 720のアップデートでは、LSDB 720に存在するインテグリティ/トラストレコードと入れ替えることなく、新しいインテグリティ/トラストレコードをLSDB 720に追加することができる。同様に、GSDB 325も、新しい情報が収集され、新しいインテグリティ/トラストレコード725が生成された際に、アップデートされるようにすることができる。GSDB 325の新しいインテグリティ/トラストレコード725は、必ずしも古いものを置き換える必要はなく、GSDB 325の既存のレコードに追加することができる。   With the LSDB 720 update, new integrity / trust records can be added to the LSDB 720 without replacing the integrity / trust records present in the LSDB 720. Similarly, the GSDB 325 can be updated as new information is collected and new integrity / trust records 725 are generated. The new integrity / trust record 725 in GSDB 325 does not necessarily need to replace the old one, and can be added to an existing record in GSDB 325.

他の実施例では、企業ネットワーク710に特有であり、ローカルにのみ関連するインテグリティ/トラストレコード725を、権限が与えられたネットワーク管理者が、LSDB 720に追加することができる。この場合、LSDB 720は、GSDB 325に類似するものがないレコードを含む。例えば、企業ネットワーク710内でのみ生成され、かつ、使用されるファイル(コンフィグレーションファイルやその他の企業システムデータ等)や、他の企業のシステムデータは、例えば、企業ネットワーク710のネットワーク管理者等のリーガルオペレータ(legal operator)によって認証されたインテグリティ/トラストレコード725を有することができる。これは、クライアントプラットフォーム110の評価を行うための、企業ネットワーク710に特有のものを含めたすべての必要なインテグリティ/トラストレコード725に対して、オーセンティケーターエンティティ145がアクセスすることを保証するものである。   In another embodiment, an authorized network administrator can add to the LSDB 720 an integrity / trust record 725 that is specific to the corporate network 710 and is only relevant locally. In this case, LSDB 720 contains records that have nothing similar to GSDB 325. For example, files that are generated and used only within the corporate network 710 (configuration files, other corporate system data, etc.) and other corporate system data are, for example, network administrators of the corporate network 710, etc. It may have an integrity / trust record 725 that has been authenticated by a legal operator. This ensures that the authenticator entity 145 has access to all necessary integrity / trust records 725, including those specific to the corporate network 710, to evaluate the client platform 110. is there.

LSDB 720については、企業ネットワーク710内でローカルに格納された一部のインテグリティ/トラストレコード725は、クライアントプラットフォーム110への図1のイメージファイル155のインストール後に、クライアントプラットフォーム110のインテグリティレポート170に格納されたハッシュを用いて、相関性をチェックすることができる。比較(相関性のチェック)において、クライアントプラットフォーム110にある1または複数のコンポーネントのハッシュがLSDB 720に格納されたハッシュと異なる場合、ユーザーは、クライアントプラットフォーム110をイメージファイル155を用いて再イメージ化することを要求されることができる。他のやり方として、ハッシュが異なるコンポーネントを再インストールするか削除することで修正してもよい。あるいは、クライアントプラットフォーム110は、リソース150へのアクセスを許可されるかもしれないが、クライアントプラットフォーム110が問題を解決するまでは、おそらく、低いレベルでのアクセスとなるであろう。当業者であれば、他の修正法が用いられることが可能であることを理解するであろう。もし、照合されないハッシュの数が重要でない場合、オーセンティケーターエンティティ145(図1)は、リソース150(図1)へのアクセスを許可することができる。ここで、“重要でない”とは、インテグリティレポート170のハッシュの十分な数が、インテグリティ/トラストレコード725に格納されたハッシュと対応して照合されることを意味する。イメージファイル155を伴った追加の使用例は、後に詳述する。   For LSDB 720, some integrity / trust records 725 stored locally within the corporate network 710 are stored in the integrity report 170 of the client platform 110 after installation of the image file 155 of FIG. The hash can be used to check the correlation. In comparison (correlation check), if the hash of one or more components in the client platform 110 is different from the hash stored in the LSDB 720, the user re-images the client platform 110 with the image file 155 Can be required. Alternatively, it may be corrected by reinstalling or removing components with different hashes. Alternatively, the client platform 110 may be allowed access to the resource 150, but will probably have a lower level of access until the client platform 110 solves the problem. One skilled in the art will appreciate that other modifications can be used. If the number of unmatched hashes is not important, the authenticator entity 145 (FIG. 1) can grant access to the resource 150 (FIG. 1). Here, “not important” means that a sufficient number of hashes in the integrity report 170 are matched corresponding to the hashes stored in the integrity / trust record 725. Additional use cases with image file 155 will be described in detail later.

他の実施例では、財務上のデータを保護するように特殊設計された企業ネットワーク710を含むことができる。例えば、サーベンス・オクスリー法(Sarbanes-Oxley Act)のような連邦法は、
コンピューターネットワーク(特に重要な金融データの保管に関して)の安全性、正確性、信頼性について、最高情報責任者(CIO)が責任を負うことを要求している。システム705を採用することにより、CIO達は、LSDB 720と連動するオーセンティケーターエンティティ145によって行われる評価に失敗した場合、クライアントプラットフォーム110の企業ネットワーク710へのアクセスを拒否することによって信頼でき安全なネットワークを維持できる。さらに、異なるクライアントプラットフォームに対して、異なるレベルのセキュリティを設定することができる。例えば、CIOのクライアントプラットフォームは、ハードドライブ上のすべてのデータを暗号化することが要求されるのに対し、通常の従業員のクライアントプラットフォームは、そのような特徴は要求されない。
Other embodiments may include an enterprise network 710 that is specially designed to protect financial data. For example, federal laws such as the Sarbanes-Oxley Act
Requires the Chief Information Officer (CIO) to be responsible for the safety, accuracy, and reliability of computer networks (especially for the storage of important financial data). By adopting system 705, CIOs can be trusted and secured by denying access to the corporate network 710 of the client platform 110 if the assessment performed by the authenticator entity 145 working with the LSDB 720 fails. You can maintain the network. In addition, different levels of security can be set for different client platforms. For example, the CIO client platform is required to encrypt all data on the hard drive, whereas the regular employee client platform does not require such features.

さらに、他の実施例では、インテグリティレポート170を生成し、クライアントプラットフォーム110によるリソースへのアクセスを制御するモジュールはクライアントプラットフォーム110に組み込まれておらず、クライアントプラットフォーム110の外部にある。図8は、図1のクライアントプラットフォーム110と、図2のオーセンティケーターエンティティ145とともに、ポータブルダイジェストコレクタードングル805を示している。図8に示された種々の構成要素は、マシン間で様々なデータを送受信するための種々の受信部と送信部を有しており、これらについては、他の実施例で説明されている。ドングル805は、特に限定されず、USBメモリードライブ810、スマートカード、トークン(token)、メモリスティック、外部ハードドライブや周辺機器等の任意の形式をとることができる。当業者であれば、他の使用可能な機器を理解できるであろう。ドングル805は、セキュリティを追加することで、改ざん耐性を持つことができる。ドングル805が改ざん耐性を有する場合、ドングル805をどのように逆アセンブル(disassemble)しようと試みても、結果として、ドングル805は操作不可能なものとなる。クライアントプラットフォーム上に当該クライアントプラットフォームを検証するのに使用される種々の構成要素を有する代わりにドングル805を使用する1つの利点としては、ドングル805は、人に優しく、しかも、ユーザーの物理的な存在とクライアントプラットフォーム110の認証とをより密接に結びつけることである。例えば、ユーザーは、1つのコンピュータに制限されるのではなく、公共の図書館にあるコンピュータのような任意のコンピュータに対してドングル805を適用することができる。クライアントが他のマシンやネットワークに帰属していない場合であっても、ドングル805は、クライアントプラットフォーム110に取り付けられることができ、自己の有するプラットフォームのインテグリティの検証を行うことができる。この実施例は、下記の図9において詳述する。   Further, in other embodiments, the modules that generate the integrity report 170 and control access to resources by the client platform 110 are not embedded in the client platform 110 and are external to the client platform 110. FIG. 8 shows a portable digest collector dongle 805 with the client platform 110 of FIG. 1 and the authenticator entity 145 of FIG. The various components shown in FIG. 8 have various receivers and transmitters for transmitting and receiving various data between machines, which are described in other embodiments. Dongle 805 is not particularly limited, and can take any form such as USB memory drive 810, smart card, token, memory stick, external hard drive, peripheral device, and the like. One skilled in the art will appreciate other available equipment. The dongle 805 can be tamper resistant by adding security. If the dongle 805 is tamper resistant, any attempt to disassemble the dongle 805 will result in the dongle 805 becoming inoperable. One advantage of using the dongle 805 instead of having the various components used to validate the client platform on the client platform is that the dongle 805 is human friendly and the physical presence of the user. And the authentication of the client platform 110 more closely. For example, the user is not limited to a single computer, but can apply the dongle 805 to any computer, such as a computer in a public library. Even if the client does not belong to another machine or network, the dongle 805 can be attached to the client platform 110 and can verify the integrity of its own platform. This embodiment is detailed in FIG. 9 below.

ドングル805は、ダイジェストコレクター815、トラストエンジン820、セキュアストレージ825、クレデンシャル(credential)830、セキュアインターフェース835を有することができる。ダイジェストコレクター815は、セキュアインターフェース835を介してクライアントプラットフォーム110にあるダイジェストコレクタープロキシ840とやり取りを行うことができる。ダイジェストコレクタープロキシ840は、Microsoft Corporationのシステム正常性エージェント(the System Health Agent 、"SHA")のような、クライアントプラットフォーム110にある標準の仮想マシン(virtual machine 、"VM")のコンポーネントとすることができる。また、ダイジェストコレクタープロキシ840は、プラットフォームのインテグリティの検証を開始する前に、ドングル805からクライアントプラットフォーム110へ転送された、標準品でなく専売品の(proprietary)VMコンポーネントであってもよい。トラストエンジン820は、ドングル805内のソフトウェアが信頼して実行されるようにすることを可能にするための、1または複数の実行ファイル(executable)またはルーチン(routine)を供給する。セキュアストレージ825は、限定されたコマンドや物理的な接触点のセットのみを公開することにより、プライベートキー845のような慎重に扱うべきデータを格納するための改ざん耐性のあるロケーション(location)を提供する。また、ドングル805は、セキュアストレージでないスペースを有していてもよい(図示せず)。ユーザークレデンシャル830は、1または複数の証明書850を含むことができる。証明書850は、X509フォーマットに従うことができる。X509フォーマットは、証明書内のフィールド(field)を示す取り決めである。証明書の例としては、セキュアIDやTPM証明書等を挙げることができ、その他ものもあるが、これらは、ユーザーをオーセンティケーターエンティティ145に対し認証することを補助するものである。証明書850は、プライベートキー845を含んでおり、これは、後に詳述する。   The dongle 805 can have a digest collector 815, a trust engine 820, a secure storage 825, a credential 830, and a secure interface 835. The digest collector 815 can interact with the digest collector proxy 840 in the client platform 110 via the secure interface 835. The digest collector proxy 840 may be a component of a standard virtual machine ("VM") on the client platform 110, such as Microsoft Corporation's System Health Agent ("SHA"). it can. Digest collector proxy 840 may also be a proprietary rather than a standard VM component transferred from dongle 805 to client platform 110 prior to initiating platform integrity verification. The trust engine 820 provides one or more executables or routines that allow the software in the dongle 805 to be executed reliably. Secure Storage 825 provides a tamper-resistant location for storing sensitive data such as private key 845 by exposing only a limited set of commands and physical contact points To do. Further, the dongle 805 may have a space that is not secure storage (not shown). User credential 830 may include one or more certificates 850. Certificate 850 can follow the X509 format. The X509 format is an agreement that indicates a field in a certificate. Examples of certificates include secure IDs and TPM certificates, and others, but these assist in authenticating the user to the authenticator entity 145. The certificate 850 includes a private key 845, which will be described in detail later.

ある実施例では、ダイジェストコレクター815は、クライアントプラットフォーム110のダイジェストコレクタープロキシ840を介して最終的にオーセンティケーターエンティティ145のダイジェストエバリュエータープラグイン855へインテグリティレポート170を送信する前に、プライベートキー845を用いてインテグリティレポート170を暗号化することにより、ユーザークレデンシャル830を用いることができる。ユーザークレデンシャル830の使用により、インテグリティレポート170の送信中におけるさらなる保護層(保護階層)を追加することができる。すなわち、ユーザークレデンシャル830が証明書850を含む場合、証明書850に対応するプライベートキー845が、インテグリティレポート170のデジタル署名に用いられる。当業者であれば、ダイジェストエバリュエータープラグイン855は、オペレーティングシステムの標準のソフトウェアコンポーネントであってもよいことが理解できるであろう。また、ダイジェストエバリュエータープラグイン855は、標準品でなく専売品のソフトウェアコンポーネントであってもよい。   In one embodiment, digest collector 815 uses private key 845 before sending integrity report 170 to digest evaluator plug-in 855 of authenticator entity 145 via digest collector proxy 840 of client platform 110. By encrypting the integrity report 170, the user credential 830 can be used. The use of user credentials 830 can add an additional layer of protection (protection hierarchy) during transmission of the integrity report 170. That is, when the user credential 830 includes the certificate 850, the private key 845 corresponding to the certificate 850 is used for the digital signature of the integrity report 170. One skilled in the art will appreciate that the digest evaluator plug-in 855 may be a standard software component of the operating system. In addition, the digest evaluator plug-in 855 may be a software component that is a proprietary product instead of a standard product.

他の実施例では、オーセンティケーターエンティティ145にある証明書865のパブリックキー860
にダイジェストコレクター815がアクセスした場合、ダイジェストコレクター815は、パブリックキー860を用いてインテグリティレポート170を暗号化することができる。これにより、インテグリティレポート170をオーセンティケーターエンティティ145のダイジェストエバリュエータープラグイン855へ送信する際に、より一層の機密性が付与される。さらに、他の実施例では、ユーザークレデンシャル830とオーセンティケーターエンティティ145とがプライベートキーを共有している場合、ダイジェストコレクター815は、インテグリティレポート170を、共有しているプライベートキーで暗号化することができる。
In another embodiment, the public key 860 of the certificate 865 in the authenticator entity 145
The digest collector 815 can encrypt the integrity report 170 using the public key 860. This provides more confidentiality when sending the integrity report 170 to the digest evaluator plug-in 855 of the authenticator entity 145. Further, in another embodiment, if user credential 830 and authenticator entity 145 share a private key, digest collector 815 may encrypt integrity report 170 with the shared private key. it can.

さらに、他の実施例では、ドングル805は、インテグリティレポート170(図1)をオーセンティケーターエンティティ145へ送信するために、セキュアトンネル(例えば、セキュアインナートンネル870、セキュアアウタートンネル875)を構築することができる。セキュアインナートンネル870およびセキュアアウタートンネル875は、ドングル805からオーセンティケーターエンティティ145までの端から端までのセキュアな回線を、基礎をなす物理的な通信手段(例えば、IEEE 802.3イーサネット、 IEEE 802.11 WiFi等)に関わりなく、構築することができる。セキュアアウタートンネル875は、クライアントプラットフォーム110とオーセンティケーターエンティティ145との間で、好ましくはインテグリティエージェント880とインテグリティサーバ/ブローカー885とを連結するように確立されることができる。インテグリティエージェント880およびインテグリティサーバ/ブローカー885は、標準のトラステッドネットワークコネクション(trusted network connection、"TNC")の端点とすることができる。TNCは、分離したパブリック/プライベートの暗号化鍵を用い、IPパケットを安全に信頼できる方法で送信することができる。   Furthermore, in other embodiments, the dongle 805 may construct a secure tunnel (eg, secure inner tunnel 870, secure outer tunnel 875) to send the integrity report 170 (FIG. 1) to the authenticator entity 145. Can do. The secure inner tunnel 870 and secure outer tunnel 875 are the physical communication means underlying the secure line from the dongle 805 to the authenticator entity 145 (eg IEEE 802.3 Ethernet, IEEE 802.11 WiFi, etc.) ) Can be constructed regardless of. A secure outer tunnel 875 may be established between the client platform 110 and the authenticator entity 145, preferably to connect the integrity agent 880 and the integrity server / broker 885. Integrity agent 880 and integrity server / broker 885 can be endpoints of standard trusted network connections ("TNC"). TNC can send IP packets in a secure and reliable manner using separate public / private encryption keys.

クライアントプラットフォーム110とオーセンティケーターエンティティ145との間の通信は、
クライアント側にあるネットワークアクセスリクエスター890およびサーバ側にあるネットワークアクセスオーソリティ895によって補助されることができる。ネットワークアクセスリクエスター890およびネットワークアクセスオーソリティ895は、ともに、IEEE 802.3(イーサネット)や、IEEE 802.11のような無線(wireless/radio)のような物理的なパケットレベルでの媒体を備え、これらの媒体を介して通信が行われる。セキュアアウタートンネル875は、拡張認証プロトコル(Extensible Authentication Protocol、"EAP")、ラディウス(Radius)、TLS(Transport Layer Security)のような標準プロトコルを用いることができる。当業者であれば、非標準プロトコルを含む他のプロトコルを用いることができることが理解できるであろう。セキュアアウタートンネル875が構築されたあと、セキュアインナートンネル870がドングル805とオーセンティケーターエンティティ145との間で構築される。セキュアインナートンネル870は、好ましくは、ダイジェストコレクター815とダイジェストエバリュエータープラグイン855とを連結するものである。セキュアインナートンネル870は、他のコンポーネント(潜在的に存在するセキュアアウタートンネル875を含む場合でも)にセキュリティを委ねる必要がないように、ドングル805とクライアントプラットフォーム110またはオーセンティケーターエンティティ145との間で、または任意のマシンの任意のソフトウェアコンポーネント間で、構築することができる。セキュアインナートンネル870の構築については、図9を参照しつつ、以下に詳述する。
Communication between the client platform 110 and the authenticator entity 145
It can be assisted by a network access requester 890 on the client side and a network access authority 895 on the server side. Network Access Requester 890 and Network Access Authority 895 both have physical packet-level media such as IEEE 802.3 (Ethernet) and wireless (wireless / radio) such as IEEE 802.11. Communication is performed via The secure outer tunnel 875 can use a standard protocol such as Extensible Authentication Protocol ("EAP"), Radius, or TLS (Transport Layer Security). One skilled in the art will appreciate that other protocols can be used, including non-standard protocols. After the secure outer tunnel 875 is constructed, a secure inner tunnel 870 is constructed between the dongle 805 and the authenticator entity 145. The secure inner tunnel 870 preferably connects the digest collector 815 and the digest evaluator plug-in 855. The secure inner tunnel 870 is between the dongle 805 and the client platform 110 or the authenticator entity 145 so that it does not have to delegate security to other components (even if it includes a potentially present secure outer tunnel 875). Or between any software components on any machine. The construction of the secure inner tunnel 870 will be described in detail below with reference to FIG.

図9は、ポータブルダイジェストコレクタードングル(ドングル)805にGSDB 325が含まれている図8のシステムを示す。本実施例では、ドングル805は、オーセンティケーターエンティティ145を参照することなく、クライアントプラットフォーム110のインテグリティを検証することができる。ドングル805は、クライアントが他のマシンやネットワークに接続されていなくても、クライアントプラットフォーム110に接続されることができる。そして、ドングル805は、自己完結したプラットフォームのインテグリティの検証を行うことができる。GSDB 325の情報の全部または一部は、セキュアストレージ825または、非セキュアストレージ(図示せず)のどちらかに格納されることができる。トンネル870は、実質的に、図8にて上述したセキュアインナートンネル870と同じように動作するものである。その一方で、図9の構成では、トンネル870は、アウタートンネルを通過せずに、クライアントプラットフォーム110にドングル805を接続している点で、図9の構成と、相違する(図8の構成では、ドングル805はオーセンティケーターエンティティ145に接続されていない)。したがって、ローカルのドングル805がアクセスしやすいGSDB 325のインテグリティ/トラストレコード320を有することによって、実質的に上述した他の実施例のようなプラットフォームのインテグリティの検証プロセスが、自己完結する方法で、読み込まれ、起動される。言いかえると、クライアントプラットフォーム110は、検証が行われるために、ネットワークや、他のマシンへ接続されることが要求されない。まだどのネットワークにも接続されていない多数のマシンを検証したいIT管理者にとっては、これは、特に便利で効率よいものである。   FIG. 9 shows the system of FIG. 8 in which a GSDB 325 is included in a portable digest collector dongle (dongle) 805. In this example, the dongle 805 can verify the integrity of the client platform 110 without reference to the authenticator entity 145. The dongle 805 can be connected to the client platform 110 even if the client is not connected to another machine or network. The dongle 805 can then verify the integrity of the self-contained platform. All or part of the information in GSDB 325 can be stored in either secure storage 825 or non-secure storage (not shown). The tunnel 870 operates substantially in the same manner as the secure inner tunnel 870 described above with reference to FIG. On the other hand, in the configuration of FIG. 9, the tunnel 870 is different from the configuration of FIG. 9 in that the dongle 805 is connected to the client platform 110 without passing through the outer tunnel (in the configuration of FIG. 8). , Dongle 805 is not connected to authenticator entity 145). Thus, having the GSDB 325 integrity / trust record 320 accessible by the local dongle 805 allows the platform integrity verification process to be read in a self-contained manner substantially like the other embodiments described above. Is activated. In other words, the client platform 110 is not required to be connected to a network or other machine for verification to take place. This is particularly convenient and efficient for IT administrators who want to verify a large number of machines that are not yet connected to any network.

図10は、クライアントプラットフォーム110(図1)を配備するプロセス中における、クライアントプラットフォーム110のコンポーネント160のインテグリティの検証を行うための手順のフローチャートを示す。IT管理者や他の適当な権限を有する人間は、企業のドメイン内に新しいプラットフォームを提供するという状況の中で、クライアントプラットフォーム110のコンポーネントおよび構成(configuration)を検証したがるかもしれない。ステップ1005では、IT管理者は、配備するクライアントプラットフォーム110を受け取る。すなわち、納入業者、製造業者、OEM(original equipment manufacturer)、あるいは他の供給源から、クライアントプラットフォーム110(例えば、PCクライアント、サーバ、ルータ、スイッチ、PDA、携帯電話等)を受け取る。   FIG. 10 shows a flow chart of a procedure for performing integrity verification of components 160 of the client platform 110 during the process of deploying the client platform 110 (FIG. 1). An IT administrator or other appropriately authorized person may wish to verify the components and configuration of the client platform 110 in the context of providing a new platform within the corporate domain. In step 1005, the IT administrator receives a client platform 110 to deploy. That is, a client platform 110 (eg, PC client, server, router, switch, PDA, mobile phone, etc.) is received from a supplier, manufacturer, original equipment manufacturer (OEM), or other source.

ステップ1010では、IT管理者は、イメージファイル155からクライアントプラットフォーム110へ少なくとも1つのコンポーネントをインストールする。当業者であれば、コンポーネントは、イメージファイル155を使用することなく、インストールされることが可能であることが理解できるであろう。例えば、IT管理者は、コンポーネントの製造業者から供給されたツールや、他の専売品の機器構成管理ツール(configuration management tool)を用いてコンポーネントをインストールすることができる。ステップ1015では、クライアントプラットフォーム110にコンポーネント160が(イメージファイル155からかもしれないが)インストールされた後に、クライアントプラットフォーム110上のインテグリティレポートジェネレータ165は、インテグリティレポート170(図1)を生成する。ステップ1020では、全体のインテグリティ/トラストスコア225(図2)を含むトラストレポート220が生成される。ステップ1025では、インテグリティレポート170が少なくとも1つの検証されるためのコンポーネント160を有しているか否かを判断する。最後に、ステップ1030では、少なくとも1つの検証されるコンポーネント160がある場合、コンポーネント160の検証が上述したようにして行われる。これは、図11に示すように、クライアントプラットフォーム110のコンポーネント160(ソフトウェアおよびハードウェア)に対応するインテグリティオーソリティ140(図3)の検索要求をGSDB 325へ送信することによって行われる。   In step 1010, the IT administrator installs at least one component from the image file 155 to the client platform 110. One skilled in the art will appreciate that a component can be installed without using the image file 155. For example, an IT administrator can install a component using a tool supplied by the component manufacturer or another proprietary configuration management tool. In step 1015, after the component 160 is installed on the client platform 110 (which may be from the image file 155), the integrity report generator 165 on the client platform 110 generates an integrity report 170 (FIG. 1). In step 1020, a trust report 220 is generated that includes the overall integrity / trust score 225 (FIG. 2). In step 1025, it is determined whether the integrity report 170 has at least one component 160 to be verified. Finally, in step 1030, if there is at least one component 160 to be verified, component 160 is verified as described above. This is done by sending a search request for integrity authority 140 (FIG. 3) corresponding to component 160 (software and hardware) of client platform 110 to GSDB 325, as shown in FIG.

図11は、図7のシグネチャデータベースへの検索要求を送信するのに用いられる手順のフローチャートを示す。ステップ1105では、オーセンティケーターエンティティ145(図1)は、クライアントプラットフォーム110(図1)からインテグリティレポート170(図1)を受信することができる。ステップ1110では、インテグリティレポート170にある各ダイジェストが、LSDB 720に対応するインテグリティ/トラストレコード725を有しているか否かをチェックする。対応するインテグリティ/トラストレコードが見つからない場合、ステップ1115において、GSDB 325(図3および図7)への参照が行われる。必要に応じて、ステップ1120では、LSDB 720のGSDB 325とのアップデート/同期を行うことができる。アップデート/同期の手順の他の実施例は、特に、図7との関連で説明できる。対応するインテグリティ/トラストレコード725が、LSDB 720またはGSDB 325のいずれかにおいて検出されたかに関わらず、ステップ1125では、対応するインテグリティ/トラストレコード725は、インテグリティレポート170(図1)のコンポーネント160(図1)を表わす各ダイジェストと比較される。ステップ1130では、クライアントプラットフォーム110の信頼性のレベルが、全体のインテグリティ/トラストスコア225(図2)を評価することによって決定される。   FIG. 11 shows a flowchart of the procedure used to send a search request to the signature database of FIG. In step 1105, the authenticator entity 145 (FIG. 1) may receive an integrity report 170 (FIG. 1) from the client platform 110 (FIG. 1). In step 1110, it is checked whether each digest in the integrity report 170 has an integrity / trust record 725 corresponding to the LSDB 720. If the corresponding integrity / trust record is not found, in step 1115 a reference to GSDB 325 (FIGS. 3 and 7) is made. If necessary, in step 1120, LSDB 720 can be updated / synchronized with GSDB 325. Other embodiments of the update / synchronization procedure can be described in particular in connection with FIG. Regardless of whether the corresponding integrity / trust record 725 was found in either the LSDB 720 or the GSDB 325, in step 1125, the corresponding integrity / trust record 725 is the component 160 (Figure 1) of the integrity report 170 (Figure 1). Compared with each digest representing 1). In step 1130, the level of trust of the client platform 110 is determined by evaluating the overall integrity / trust score 225 (FIG. 2).

図12は、ユーザープラットフォームが最初の使用のために配備される過程においてイメージファイルをインストールする前に、イメージファイル155のコンポーネントのインテグリティを検証するのに用いられる他の手順のフローチャートを示す。まず、ステップ1205において、クライアントプラットフォーム110(図1)が、供給、配備されるために、受け取られる。ステップ1210では、IT管理者または適当な権限を有する人間が、クライアントプラットフォーム110にイメージファイル155をインストールする前に、イメージファイル155(図1)の少なくとも1つのコンポーネントを検証することを決定することができる。本方法と、図10についての記載の処理との違いは、タイミングの相違である。IT管理者は、図10に記載されているようにイメージファイル155のインストールの後でコンポーネントの検証を行うか、図12に記載されているようにイメージファイル155のインストール(ステップ1215)の前にコンポーネントの検証を行うかを決定することができる。   FIG. 12 shows a flowchart of another procedure used to verify the integrity of the components of the image file 155 before installing the image file in the process where the user platform is deployed for initial use. First, in step 1205, the client platform 110 (FIG. 1) is received for provisioning and deployment. In step 1210, an IT administrator or a person with appropriate authority may decide to verify at least one component of the image file 155 (FIG. 1) before installing the image file 155 on the client platform 110. it can. The difference between this method and the processing described in FIG. 10 is the timing difference. The IT administrator can verify the components after the installation of the image file 155 as described in FIG. 10 or before the installation of the image file 155 (step 1215) as described in FIG. You can decide whether to validate the component.

図13は、図1のオーセンティケーターエンティティ145側の観点からの、クライアントプラットフォーム110にあるコンポーネント160のインテグリティを検証する手順のフローチャートを示す。ステップ1305では、クライアントプラットフォーム110が認証される。ステップ1310では、クライアントプラットフォーム110から、インテグリティレポート170を受信する。ステップ1315では、インテグリティレポート170中のコンポーネント160は、インテグリティオーソリティ140によって検証される。上述したように、検証は、検証サーバ205を用いて実行される。ステップ1320では、全体のインテグリティ/トラストスコア225を含むトラストレポート220がインテグリティオーソリティのGSDB 325(図3)にあるインテグリティ/トラストレコード320を用いて生成される。ステップ1325では、全体のインテグリティ/トラストスコア225が既定の閾値を超えたか否かを調べるために、チェックが行われることができる。   FIG. 13 shows a flowchart of the procedure for verifying the integrity of the component 160 on the client platform 110 from the perspective of the authenticator entity 145 of FIG. In step 1305, the client platform 110 is authenticated. In step 1310, an integrity report 170 is received from the client platform 110. In step 1315, the component 160 in the integrity report 170 is verified by the integrity authority 140. As described above, the verification is performed using the verification server 205. In step 1320, a trust report 220 containing the overall integrity / trust score 225 is generated using the integrity / trust record 320 in the integrity authority GSDB 325 (FIG. 3). In step 1325, a check can be made to see if the overall integrity / trust score 225 has exceeded a predetermined threshold.

全体のインテグリティ/トラストスコア225が既定の閾値を超えていた場合、クライアントプラットフォーム110は、ネットワーク135(図1)上のリソース150へのアクセスを許可される。全体のインテグリティ/トラストスコア225が既定の閾値を超えていない場合、クライアントプラットフォーム110は、ネットワーク135(図1)上のリソース150へのアクセスを拒否される。もしくは、クライアントプラットフォーム110は、修正が要求されることを通知される。例えば、クライアントプラットフォーム110のコンポーネント160が、クライアントプラットフォーム110がもはや全体的に信頼できないほど“ドリフトしている”場合、要求される修正は、クライアントプラットフォーム110がイメージファイル155を用いて再イメージ化されるようにするものか、さもなければ、やり直しをする。他のやり方として、リソース150へのアクセスを許可する前に、“ドリフトした”コンポーネントの再インストールまたは削除することで修正してもよい。あるいは、クライアントプラットフォーム110は、リソース150へのアクセスを許可されるかもしれないが、もしかすると、そのアクセスは、クライアントプラットフォーム110が“ドリフト”に対処するまで低いレベルでのアクセスとなるかもしれない。当業者であれば、コンポーネントの“ドリフト”を取り扱うための他の可能性のある方法を理解するであろう。   If the overall integrity / trust score 225 exceeds a predetermined threshold, the client platform 110 is allowed access to the resource 150 on the network 135 (FIG. 1). If the overall integrity / trust score 225 does not exceed the predetermined threshold, the client platform 110 is denied access to the resource 150 on the network 135 (FIG. 1). Alternatively, the client platform 110 is notified that a modification is required. For example, if the component 160 of the client platform 110 is “drifting” so that the client platform 110 is no longer entirely reliable, the required modifications are re-imaged using the image file 155 by the client platform 110. What to do, or try again. Alternatively, it may be modified by reinstalling or removing “drifted” components before allowing access to resource 150. Alternatively, the client platform 110 may be allowed access to the resource 150, but that access may be at a lower level until the client platform 110 addresses "drift". Those skilled in the art will appreciate other possible ways to handle component “drift”.

図14は、クライアントプラットフォーム110(図1)に、第1、第2、第3の閾値に従って複数のアクセスの段階を許可するのに用いられる手順のフローチャートを示す。図14では、3つのアクセスの段階が提案されているが、当業者であれば、いくつもの閾値および段階を用いることができることを理解するであろう。ステップ1405では、全体のインテグリティ/トラストスコア225(図2)が第1の閾値を超えているか否かのチェックが行われる。もし、第1の閾値を超えていたならば、高い段階でのアクセスがクライアントプラットフォーム110に対し許可される(ステップ1410)。例えば、前述した銀行のシナリオにおいては、これは、外部の口座への電子送金を行うことができ、他の第2、第3の閾値(下記に議論する)について後述するような他のタスクを行うことができること意味する。ステップ1415では、全体のインテグリティ/トラストスコア225が第2の閾値を超えているか否かの第2のチェックが行われる。もし、第2の閾値を超えていたならば、中くらいの段階でのアクセスがクライアントプラットフォーム110に対し許可される(ステップ1420)。例えば、これは、内部の口座間の資産の閲覧および移送はできるが、外部の口座への電子送金を行うことができないことを意味する。ステップ1425では、全体のインテグリティ/トラストスコア225が第3の閾値を超えているか否かの第3のチェックが行われる。もし、第3の閾値を超えていたならば、低い段階でのアクセスがクライアントプラットフォーム110に対し許可される(ステップ1430)。これは、例えば、口座の残高をみることができるが、資金を内部の口座、外部の口座へ移送できないことを意味する。図14では、高い段階でのアクセスを許可されたクライアントプラットフォームは、より低い段階のアクセスを許可されるように示されており、通常そのような状況になるが、当業者であれば、アクセスの段階はネスト化されてなくてもよいと理解するであろう。すわなち、異なる段階は異なるレベルのアクセスを供給するかもしれず、2つの異なるアクセスの段階が与えられた場合、どちらの段階も、もう一方の段階の一部とならないかもしれない。当業者であれば、全体のインテグリティ/トラストスコア225を基礎に階層化されたアクセスの許可は、上述した銀行の例以外の、他のケースに適用できることが理解できるであろう。例えば、企業ネットワーク、ファイル共有ネットワーク、オンラインデータベース等が挙げられる。   FIG. 14 shows a flow chart of the procedure used to allow the client platform 110 (FIG. 1) multiple access stages according to the first, second and third thresholds. In FIG. 14, three stages of access are proposed, but those skilled in the art will appreciate that any number of thresholds and stages can be used. In step 1405, a check is made as to whether the overall integrity / trust score 225 (FIG. 2) exceeds a first threshold. If the first threshold is exceeded, access at a higher level is granted to the client platform 110 (step 1410). For example, in the bank scenario described above, this can be an electronic transfer to an external account, and other tasks as described below for other second and third thresholds (discussed below). That means you can do it. In step 1415, a second check is made whether the overall integrity / trust score 225 exceeds a second threshold. If the second threshold is exceeded, access at a medium level is granted to the client platform 110 (step 1420). For example, this means that assets can be viewed and transferred between internal accounts, but electronic transfers cannot be made to external accounts. In step 1425, a third check is made whether the overall integrity / trust score 225 exceeds a third threshold. If the third threshold is exceeded, access at a lower stage is permitted to the client platform 110 (step 1430). This means, for example, that the balance of the account can be viewed, but the funds cannot be transferred to an internal account or an external account. In FIG. 14, client platforms that are granted higher-level access are shown to be allowed lower-level access, which is usually the case, but those skilled in the art will be able to access It will be understood that the stages need not be nested. That is, different stages may provide different levels of access, and if two different access stages are given, neither stage may be part of the other stage. One skilled in the art will appreciate that access authorization tiered based on the overall integrity / trust score 225 can be applied to other cases other than the bank example described above. For example, a corporate network, a file sharing network, an online database, etc. can be mentioned.

図15、図16は、クライアントプラットフォーム110(図1)におけるコンポーネント160のインテグリティを検証するのに用いられる手順のオペレーションフローを示すフローチャートである。ステップ1505では、クライアントプラットフォーム110は、リソース150へのアクセスを要求することにより、図2に示される認証サーバ210のオーセンティケーターエンティティ145と、ハンドシェイクを開始する。ステップ1510では、認証サーバ210は、クライアントプラットフォーム110に対してプラットフォームのインテグリティの検証を開始することにより、クライアントプラットフォーム110の要求に対して応答する。ステップ1515では、クライアントプラットフォーム110と認証サーバ210との間で、必要に応じて、セキュアチャンネルが構築される。これは、公知のフレームワーク(例えば、802.1X/EAP)を、適当なクレデンシャル(例えば、SSL認証)を用いる標準プロトコル(例えば、SSL、IKE)と一緒に用いることにより達成される。ある実施例では、クライアントプラットフォーム110と認証サーバ210の両方がトラステッドプラットフォームモジュール(TPM)チップを有しており、両方がTPM証明書(または、EK証明書、AIK証明書、SKAE証明書、または他の同様な証明書)を有している。これらの証明書は、セキュアチャンネルを構築するのに用いられる。他の実施例では、マシンの1つは、TPMチップを有しているが、他のマシンは、有していない。異なるプロトコルの共通点を利用することにより、クライアントプラットフォーム110と認証サーバ210との間のセキュアチャンネルを構築するも可能である。   FIGS. 15 and 16 are flowcharts showing the operational flow of the procedure used to verify the integrity of the component 160 on the client platform 110 (FIG. 1). In step 1505, the client platform 110 initiates a handshake with the authenticator entity 145 of the authentication server 210 shown in FIG. 2 by requesting access to the resource 150. In step 1510, the authentication server 210 responds to the client platform 110 request by initiating platform integrity verification for the client platform 110. In step 1515, a secure channel is established between the client platform 110 and the authentication server 210 as necessary. This is accomplished by using a known framework (eg, 802.1X / EAP) with a standard protocol (eg, SSL, IKE) that uses appropriate credentials (eg, SSL authentication). In one embodiment, both the client platform 110 and the authentication server 210 have a trusted platform module (TPM) chip, and both are TPM certificates (or EK certificates, AIK certificates, SKAE certificates, or other Similar certificate). These certificates are used to build a secure channel. In another embodiment, one of the machines has a TPM chip, but the other machine does not. It is also possible to establish a secure channel between the client platform 110 and the authentication server 210 by using common points of different protocols.

ステップ1520は、図15および図16の両方において示されており、これらの図におけるステップ1520は、インテグリティレポート170を認証サーバ210(図2)へ移送する同様のステップを示している。図16のステップ1605では、インテグリティレポート170は検証サーバ205へ転送され、クライアントプラットフォーム110(図1)から得られたインテグリティレポート170を用いたクライアントプラットフォーム110の評価が行われる。ある実施例では、検証サーバ205とクライアントプラットフォーム110との間での1往復の問答による対話が行われる。他の実施例では、問答による対話は、複数回の往復となる。問答による対話の間、認証サーバ210は、検証サーバ205(図2)のために仲介を行う。認証サーバ210は、クライアントプラットフォーム110と認証サーバ210との間でのメッセージング機能を供与する。   Step 1520 is shown in both FIG. 15 and FIG. 16, and step 1520 in these figures shows a similar step of transferring the integrity report 170 to the authentication server 210 (FIG. 2). In step 1605 of FIG. 16, the integrity report 170 is forwarded to the verification server 205 and the client platform 110 is evaluated using the integrity report 170 obtained from the client platform 110 (FIG. 1). In one embodiment, a one round trip question-and-answer interaction is performed between the verification server 205 and the client platform 110. In another embodiment, the question-and-answer dialogue is multiple round trips. During the question-and-answer dialogue, the authentication server 210 mediates for the verification server 205 (FIG. 2). The authentication server 210 provides a messaging function between the client platform 110 and the authentication server 210.

ステップ1525は、図15および図16の両方において示されており、これらの図におけるステップ1525は、インテグリティオーソリティ140(図3、図7)のGSDB 325(またはLSDB 720)へのクライアントプラットフォーム110のコンポーネント160についての検索オペレーションを行う、同様のステップを示している。検索オペレーションは、コンポーネント毎を単位とした連続で行われるものであってもよいし(例えば、複数回のメッセージ(multi-round messages)を用いる)、複数の検索オペレーションを含んだ1つのメッセージであってもよい。   Step 1525 is shown in both FIG. 15 and FIG. 16, and step 1525 in these figures is the component of client platform 110 to GSDB 325 (or LSDB 720) of integrity authority 140 (FIGS. 3 and 7). Similar steps are shown for performing a search operation for 160. The search operation may be performed continuously in units of components (for example, using multi-round messages) or a single message including a plurality of search operations. May be.

図15に示されるステップ1530は、GSDB 325(図3)からコンポーネントのインテグリティ/トラストレコード320を取得するオペレーションを説明するものである。検索した後にインテグリティ/トラストレコード320が見つかった場合、インテグリティオーソリティ140は、図15、図16の両方に示されるように、ステップ1535において、関連性のあるインテグリティ/トラストレコード320を検証サーバに返信する。   Step 1530 shown in FIG. 15 describes the operation of obtaining component integrity / trust records 320 from GSDB 325 (FIG. 3). If the integrity / trust record 320 is found after the search, the integrity authority 140 returns the relevant integrity / trust record 320 to the validation server in step 1535, as shown in both FIG. 15 and FIG. .

図16のステップ1610では、コンパレータ525(図5)は、インテグリティレポート170(図2)のダイジェストをGSDB 325から返信されたインテグリティ/トラストレコード320(図3)と比較する。インテグリティレポート170のダイジェストと、GSDB 325から返信されたインテグリティ/トラストレコード320とを比較することにより、検証サーバ205は、クライアントプラットフォーム110(図2)の信頼性のレベルを決定する。信頼性のレベルは、全体のインテグリティ/トラストスコア225(図2)を含むトラストレポート220として具体化される。ステップ1615では、検証サーバ205は、全体のインテグリティ/トラストスコア225を含むトラストレポート220を、認証サーバ210(図2)へ供給する。その後、検証サーバ205は、プロファイルデータベース235(図2)に、トラストレポート220を評価の日時のような情報とともに格納する。ステップ1620では、認証サーバ210は、全体のインテグリティ/トラストスコア225を受信した後に、それをポリシーサーバ215(図2)に転送する。ステップ1625では、ポリシーサーバ215は、全体のインテグリティ/トラストスコア225を既定のポリシーまたは閾値と比較し、クライアントプラットフォーム110のリソース150(図2)へのアクセスを許可するか拒否するかを決定する。クライアントプラットフォーム110が十分に高いインテグリティ/トラストスコアを有していない場合、クライアントプラットフォーム110は、アクセスが許可された後に、修正が必要であると通知される場合がある。ステップ1630では、ポリシーサーバ215は、認証サーバ210に許可/拒否の結果を転送する。それから、認証サーバ210は、図15および図16に記載されているステップ1540において、クライアントプラットフォーム110へ結果を転送する。最終的に、ステップ1545(図15および図16の両方に記載されている)では、クライアントプラットフォーム110は、許可/拒否の結果を受信したことについて応答(aknowledge)し、プラットフォームの認証セッションを終了させる。もしくは、認証サーバ210は、クライアントプラットフォーム110が一定期間経過後にセッションを終了することに失敗した場合に認証セッションを終了させるためのタイムアウト機構(time-out mechanism)のセッションを、実施していてもよい。   In step 1610 of FIG. 16, comparator 525 (FIG. 5) compares the digest of integrity report 170 (FIG. 2) with integrity / trust record 320 returned from GSDB 325 (FIG. 3). By comparing the digest of the integrity report 170 with the integrity / trust record 320 returned from the GSDB 325, the verification server 205 determines the level of reliability of the client platform 110 (FIG. 2). The level of reliability is embodied as a trust report 220 that includes the overall integrity / trust score 225 (FIG. 2). In step 1615, the verification server 205 provides a trust report 220 that includes the overall integrity / trust score 225 to the authentication server 210 (FIG. 2). Thereafter, the verification server 205 stores the trust report 220 together with information such as the date and time of evaluation in the profile database 235 (FIG. 2). In step 1620, after receiving the overall integrity / trust score 225, the authentication server 210 forwards it to the policy server 215 (FIG. 2). In step 1625, the policy server 215 compares the overall integrity / trust score 225 with a predetermined policy or threshold and determines whether to allow or deny access to the resource 150 (FIG. 2) of the client platform 110. If the client platform 110 does not have a sufficiently high integrity / trust score, the client platform 110 may be notified that modification is required after access is granted. In step 1630, the policy server 215 forwards the permit / deny result to the authentication server 210. The authentication server 210 then forwards the result to the client platform 110 in step 1540 described in FIGS. Finally, in step 1545 (described in both FIG. 15 and FIG. 16), the client platform 110 acknowledges receipt of the grant / deny result and terminates the platform authentication session. . Alternatively, the authentication server 210 may execute a session of a timeout mechanism (time-out mechanism) for terminating the authentication session when the client platform 110 fails to terminate the session after a certain period of time has elapsed. .

以下に、本発明の一定の態様を実施する適切なマシンの簡単な一般的な説明をする。通常、マシンは、例えばプロセッサ、メモリ(例えば、ランダムアクセスメモリ(RAM)やリードオンリーメモリ(ROM)や他の状態格納媒体)、記憶装置、映像インターフェースおよび出力/入力インターフェースポートなどが取り付けられるシステムバスを含む。マシンは、少なくとも一部分において、キーボード、マウスなどの従来の入力デバイスからの入力および別のマシンから受けた指示、バーチャルリアリティ(VR)環境、生体フィードバックまたは他の入力信号との情報交換によって制御することが可能である。本件明細書で使用されるマシン(machine)という語は、単一のマシン、仮想マシン、または、一緒に作動するマシン、仮想マシンやデバイスと結合するコミュニケーションシステムを広く包含することを意図する。典型的なマシンは、自動車、列車、タクシーなどの個人的または公共の交通機関といった移動手段と同様に、パーソナルコンピュータ、ワークステーション、サーバ、ポータブルコンピュータ、携帯端末、電話、タブレットなどのコンピュータデバイスを含む。   The following is a brief general description of a suitable machine that implements certain aspects of the invention. Typically, a machine is a system bus to which a processor, memory (eg, random access memory (RAM), read-only memory (ROM), or other state storage medium), storage device, video interface, output / input interface port, and the like are attached. including. The machine is controlled, at least in part, by input from a conventional input device such as a keyboard or mouse and instructions received from another machine, virtual reality (VR) environment, biofeedback or other information exchange with input signals Is possible. As used herein, the term machine is intended to broadly encompass a single machine, a virtual machine, or a machine operating together, a communication system coupled to a virtual machine or device. Typical machines include computer devices such as personal computers, workstations, servers, portable computers, mobile terminals, phones, tablets, as well as transportation means such as personal or public transportation such as cars, trains, taxis, etc. .

また、マシンは、プログラマブルまたは非プログラマブル理論デバイスやアレイのような内臓コントローラやASIC(Application Specific Integrated Circuits)や内蔵コンピュータやスマートカードなどを含んでもよい。また、マシンは、ネットワーク・インターフェース、モデムまたは他のコミュニケーションのカップリングを介して、1つまたは複数のリモートマシンへの1つまたは複数の接続を利用してもよい。さらに、マシンは、イントラネット、インターネット、ローカルエリアネットワーク、広域ネットワークなどのような物理的、および/または論理的なネットワークを通して相互接続され得る。当業者であれば、ネットワークコミュニケーションが、無線周波数(RF)、衛星、マイクロ波、電気電子技術学会(IEEE) 545.11、ブルートゥース、光学、赤外、ケーブル、レーザなどを含む様々な有線/およびまたは無線の短距離または長距離キャリアとプロトコルを利用できることがわかるであろう。   The machine may also include a built-in controller such as a programmable or non-programmable theoretical device or array, an application specific integrated circuit (ASIC), a built-in computer, a smart card, or the like. The machine may also utilize one or more connections to one or more remote machines via a network interface, modem or other communication coupling. Further, the machines may be interconnected through physical and / or logical networks such as an intranet, the Internet, a local area network, a wide area network, and so on. For those skilled in the art, network communication is available in a variety of wired / wireless and / or wireless, including radio frequency (RF), satellite, microwave, Institute of Electrical and Electronics Engineers (IEEE) 545.11, Bluetooth, optics, infrared, cable, laser, etc. It will be appreciated that a short range or long range carrier and protocol can be used.

本発明は、機能、手順、データ構造、アプリケーションプログラムなどを含む関連データを参照するか、あるいはそれらとの関連で説明することができる。これらの関連データは、マシンによりアクセスされたとき、当該マシンにタスクを実行させるか、あるいは抽象データ型か低レベルのハードウェアコンテキストを定義することになる。関連データは、例えば、RAM、ROM等の揮発性および/または不揮発性メモリ、またはハードドライブ、フロッピーディスク、光記憶装置、テープ、フラッシュメモリ、メモリスティック、デジタルビデオディスク、生物学的記憶装置などを含む他の記憶装置と、それらの関連記憶媒体に格納することができる。関連データは、物理的および/または論理的なネットワークを含む伝送環境で、パケット、シリアルデータ、並列データ、伝播された信号などの形で送信され、圧縮または暗号化された形式で使用できる。また、関連データは、分散環境で使用され、マシンのアクセスのために、局所的および/または遠隔的に格納されうる。   The present invention can be described with reference to or in conjunction with related data including functions, procedures, data structures, application programs, and the like. These related data, when accessed by a machine, will cause the machine to perform a task or define an abstract data type or low-level hardware context. Related data includes, for example, volatile and / or nonvolatile memory such as RAM, ROM, or hard drives, floppy disks, optical storage devices, tapes, flash memory, memory sticks, digital video disks, biological storage devices, etc. It can be stored in other storage devices, including their associated storage media. Related data is transmitted in the form of packets, serial data, parallel data, propagated signals, etc., in a transmission environment including physical and / or logical networks, and can be used in a compressed or encrypted form. Also, relevant data can be used in a distributed environment and stored locally and / or remotely for machine access.

図示された実施例に基づいて本発明の原理を記載しかつ説明したが、図示された実施例がかかる原理から逸脱することなくその構成と詳細において変更してもよく、かつどのような望ましいやり方で組み合わせてもよいことを理解されたい。そして、以上の説明は特定の実施例に焦点を合わせたが、他の構成も考えることができる。特に、「本発明のある実施例に係る」という表現、または同様の表現がここで使用されるが、これらの語句は、一般に参考実施例となりうることを意味し、本発明を特定の実施例の構成に限定することは意図していない。ここに使用されるように、これらの語句は、他の実施例と組み合わせることができる同一または異なる実施例を表わしてもよい。   Although the principles of the present invention have been described and illustrated based on the illustrated embodiments, the illustrated embodiments may be modified in configuration and detail without departing from such principles and in any desired manner. It should be understood that these may be combined. And while the above description has focused on specific embodiments, other configurations are possible. In particular, the expression “according to one embodiment of the invention” or similar expressions are used herein, but these terms generally mean that they can serve as reference examples, and the invention is not limited to specific examples. It is not intended to be limited to this configuration. As used herein, these terms may represent the same or different embodiments that can be combined with other embodiments.

結論として、ここに説明された実施例へ多種多様に置き換えることができることを鑑みると、この詳細な説明および添付図面は例示のみを意図しており、発明の範囲を限定するものとして解するべきではない。したがって、本発明により主張されることはすべて、請求項とその均等物の範囲および精神を逸脱しないようなすべての変更を含むものである。   In conclusion, the detailed description and the accompanying drawings are intended to be exemplary only and should not be construed as limiting the scope of the invention in light of the wide variety of possible substitutions to the embodiments described herein. Absent. Accordingly, all that is claimed by the present invention includes all modifications that do not depart from the scope and spirit of the claims and their equivalents.

本発明の実施例に基づいた、クライアントプラットフォームバリデーションを用いてインテグリティが検証された種々のクライアントプラットフォームを含むシステムを示している。FIG. 2 illustrates a system including various client platforms whose integrity has been verified using client platform validation according to an embodiment of the present invention. 図1のオーセンティケーターエンティティの詳細を示している。Fig. 2 shows details of the authenticator entity of Fig. 1; 図1のインテグリティオーソリティがコンポーネントから生情報を収集することを示している。FIG. 2 shows that the integrity authority of FIG. 1 collects raw information from components. 図3のインテグリティ/トラストレコードの詳細を示している。FIG. 4 shows details of the integrity / trust record of FIG. 図2の検証サーバの詳細を示している。3 shows details of the verification server of FIG. 図1のインテグリティレポートの詳細を示している。The details of the integrity report of FIG. 1 are shown. 本発明の実施例に基づいた、グローバルおよびローカルのシグネチャデータベースを含むシステムを示している。1 illustrates a system including global and local signature databases according to an embodiment of the present invention. 本発明の実施例に基づいた、ポータブルダイジェストコレクタードングルを含むシステムを示している。1 illustrates a system including a portable digest collector dongle according to an embodiment of the present invention. グローバルシグネチャデータベースがあるポータブルダイジェストコレクタードングルを含むが、オーセンティケーターエンティティを有さない図8のシステムを示している。FIG. 9 illustrates the system of FIG. 8 including a portable digest collector dongle with a global signature database, but without an authenticator entity. 図1のクライアントプラットフォームのコンポーネントのインテグリティを検証するのに用いられる手順のフローチャートを示す。FIG. 2 shows a flowchart of a procedure used to verify the integrity of the components of the client platform of FIG. 図7のシグネチャデータベースへ検索要求を送信するのに用いられる手順のフローチャートを示す。Fig. 8 shows a flow chart of the procedure used to send a search request to the signature database of Fig. 7; イメージファイルをインストールする前にイメージファイルのコンポーネントのインテグリティを検証するのに用いられる手順のフローチャートを示す。Fig. 5 shows a flowchart of the procedure used to verify the integrity of the components of the image file before installing the image file. 図2のオーセンティケーターエンティティの側から見たクライアントプラットフォームにあるコンポーネントのインテグリティを検証するのに用いられる手順のフローチャートを示す。FIG. 3 shows a flow chart of a procedure used to verify the integrity of a component on the client platform as seen from the authenticator entity side of FIG. 第1、第2、第3の閾値に従って複数の階層のアクセスを許可するのに用いられる手順のフローチャートを示す。Fig. 5 shows a flowchart of a procedure used to grant access to multiple hierarchies according to first, second and third thresholds. 図1のクライアントプラットフォームのコンポーネントのインテグリティを検証するのに用いられる手順のオペレーションフローのフローチャートを示す。2 shows a flowchart of the operational flow of a procedure used to verify the integrity of the components of the client platform of FIG. 図1のクライアントプラットフォームのコンポーネントのインテグリティを検証するのに用いられる手順のオペレーションンフローのフローチャートを示す。Fig. 2 shows a flowchart of the operational flow of the procedure used to verify the integrity of the components of the client platform of Fig. 1;

Claims (46)

ネットワークに接続可能であり、インテグリティレポートを生成するインテグリティレポートジェネレータを有するクライアントプラットフォームと、
前記ネットワークに接続可能であり、複数のインテグリティレコードを格納するデータベースを含むインテグリティオーソリティと、
前記ネットワークに接続可能であり、前記クライアントプラットフォームを認証する認証サーバと、
前記ネットワークに接続可能であり、前記インテグリティレポートを前記クライアントプラットフォームから受信し、前記インテグリティオーソリティから受信する複数の前記インテグリティレコードと前記インテグリティレポートとを比較し、前記認証サーバにトラストレポートを提供する検証サーバとを有することを特徴とするシステム。
A client platform having an integrity report generator that is connectable to the network and generates an integrity report;
An integrity authority that is connectable to the network and includes a database that stores a plurality of integrity records;
An authentication server that is connectable to the network and authenticates the client platform;
A verification server that is connectable to the network, receives the integrity report from the client platform, compares the integrity report with the plurality of integrity records received from the integrity authority, and provides a trust report to the authentication server The system characterized by having.
前記ネットワークで入手可能なリソースと、
前記ネットワークに接続可能であり、インテグリティ/トラストスコアに従って、前記クライアントプラットフォームによる前記リソースへのアクセスを制御するポリシーサーバとをさらに有する請求項1に記載のシステム。
Resources available on the network;
The system of claim 1, further comprising a policy server that is connectable to the network and controls access to the resource by the client platform according to an integrity / trust score.
前記検証サーバは、前記クライアントプラットフォームに関する情報を格納するプロファイルデータベースを有する請求項1に記載のシステム。   The system of claim 1, wherein the verification server comprises a profile database that stores information about the client platform. 前記インテグリティレポートは、デジタル署名がされている請求項1に記載のシステム。   The system of claim 1, wherein the integrity report is digitally signed. 前記インテグリティレポートは、トラステッドプラットフォームモジュール(TPM)証明書を用いてデジタル署名されている請求項4に記載のシステム。   The system of claim 4, wherein the integrity report is digitally signed using a Trusted Platform Module (TPM) certificate. 前記インテグリティレポートは、前記クライアントプラットフォームの少なくとも1つのコンポーネントのハッシュを含む請求項1に記載のシステム。   The system of claim 1, wherein the integrity report includes a hash of at least one component of the client platform. 前記検証サーバは、前記トラストレポートを生成するために、前記インテグリティレポートと複数の前記インテグリティレコードとを比較するコンパレータを有する請求項1に記載のシステム。   The system of claim 1, wherein the verification server comprises a comparator that compares the integrity report with a plurality of the integrity records to generate the trust report. 前記トラストレポートは、インテグリティ/トラストスコアを含む請求項1に記載のシステム。   The system of claim 1, wherein the trust report includes an integrity / trust score. 前記トラストレポートは、前記クライアントプラットフォームの識別を行うクライアントプラットフォームアイデンティティと、
前記検証サーバの識別を行う検証サーバアイデンティティとをさらに含む請求項8に記載のシステム。
The trust report includes a client platform identity that identifies the client platform;
The system of claim 8, further comprising: a verification server identity that identifies the verification server.
前記トラストレポートは、前記クライアントプラットフォームのTPM証明書へのリファレンスをさらに含む請求項9に記載のシステム。   The system of claim 9, wherein the trust report further includes a reference to a TPM certificate of the client platform. 前記インテグリティ/トラストスコアは、一部が前記TPM証明書によって決定される請求項10に記載のシステム。   The system of claim 10, wherein the integrity / trust score is determined in part by the TPM certificate. 前記インテグリティオーソリティは、前記コンポーネントの生情報を収集し、前記生情報の正確性を検証し、前記生情報を精製して精製情報とし、当該精製情報を格納するように動作する請求項1に記載のシステム。   The integrity authority operates to collect raw information of the component, verify the accuracy of the raw information, refine the raw information into purified information, and store the purified information. System. 前記複数のインテグリティレコードは、それぞれ、コンポーネントの少なくとも1つのハッシュを含む請求項1に記載のシステム。   The system of claim 1, wherein each of the plurality of integrity records includes at least one hash of a component. 前記複数のインテグリティレコードは、それぞれ、インテグリティオーソリティを識別する情報を含む請求項1に記載のシステム。   The system of claim 1, wherein each of the plurality of integrity records includes information identifying an integrity authority. 前記クライアントプラットフォームは、携帯電話、パーソナルデジタルアシスタント、ネットワークエレメント、ルータ、スイッチ、サーバ、およびパーソナルコンピュータから構成されるセットから選択される請求項1に記載のシステム。   The system of claim 1, wherein the client platform is selected from a set consisting of a mobile phone, a personal digital assistant, a network element, a router, a switch, a server, and a personal computer. クライアントプラットフォームの複数のコンポーネントのインテグリティを検証するコンピュータで実施される方法であって、
前記クライアントプラットフォームを配備のために受け取るステップと、
前記クライアントプラットフォームに少なくとも1つのコンポーネントをインストールするステップと、
前記少なくとも1つのコンポーネントに対するインテグリティレポートを生成するステップと、
前記インテグリティレポートから、前記少なくとも1つのコンポーネントを検証するためのインテグリティ/トラストスコアを生成するステップと、
を有することを特徴とするコンピュータで実施される方法。
A computer-implemented method for verifying the integrity of multiple components of a client platform, comprising:
Receiving the client platform for deployment;
Installing at least one component on the client platform;
Generating an integrity report for the at least one component;
Generating an integrity / trust score for verifying the at least one component from the integrity report;
A computer-implemented method, comprising:
前記少なくとも1つのコンポーネントをインストールするステップは、イメージファイルから前記クライアントプラットフォームに前記少なくとも1つのコンポーネントをインストールすることを含む請求項16に記載のコンピュータで実施される方法。   The computer-implemented method of claim 16, wherein installing the at least one component comprises installing the at least one component on the client platform from an image file. 前記イメージファイルにある複数のコンポーネントのセットを検証するステップを有する請求項17に記載のコンピュータで実施される方法。   The computer-implemented method of claim 17, comprising validating a set of components in the image file. クライアントプラットフォームの複数のコンポーネントのインテグリティを検証するコンピュータで実施される方法であって、
前記クライアントプラットフォームを認証するステップと、
前記クライアントプラットフォームからインテグリティレポートを受信するステップと、
インテグリティオーソリティによってインテグリティレポートに記載の複数のコンポーネントを検証するステップとを有することを特徴とするコンピュータで実施される方法。
A computer-implemented method for verifying the integrity of multiple components of a client platform, comprising:
Authenticating the client platform;
Receiving an integrity report from the client platform;
And verifying a plurality of components described in the integrity report by the integrity authority.
前記インテグリティオーソリティに格納されたインテグリティレコードを用いて、インテグリティ/トラストスコアを含むトラストレポートを生成するステップと、
前記インテグリティ/トラストスコアが閾値を超えた場合に、前記クライアントプラットフォームにリソースへのアクセスを許可するステップとをさらに有する請求項19に記載のコンピュータで実施される方法。
Generating a trust report including an integrity / trust score using the integrity record stored in the integrity authority;
20. The computer-implemented method of claim 19, further comprising allowing the client platform to access a resource when the integrity / trust score exceeds a threshold.
前記インテグリティオーソリティに格納されたインテグリティレコードを用いて、インテグリティ/トラストスコアを含むトラストレポートを生成するステップと、
前記インテグリティ/トラストスコアが閾値を超えない場合に、前記クライアントプラットフォームにリソースへのアクセスを拒否するステップとをさらに有する請求項19に記載のコンピュータで実施される方法。
Generating a trust report including an integrity / trust score using the integrity record stored in the integrity authority;
20. The computer-implemented method of claim 19, further comprising: denying the client platform access to a resource if the integrity / trust score does not exceed a threshold.
複数のコンポーネントのインテグリティを検証するコンピュータで実施される方法であって、
少なくとも1つのコンポーネントからインテグリティレポートを生成するステップと、
前記インテグリティレポートを用いて、インテグリティ/トラストスコアを含むトラストレポートを生成するステップとを有し、
前記インテグリティ/トラストスコアは、前記インテグリティレポートの署名に用いられたトラステッドプラットフォームモジュール(TPM)証明書によって、一部が決定されることを特徴とするコンピュータで実施される方法。
A computer-implemented method for verifying the integrity of multiple components, comprising:
Generating an integrity report from at least one component;
Using the integrity report to generate a trust report including an integrity / trust score;
The computer-implemented method, wherein the integrity / trust score is determined in part by a trusted platform module (TPM) certificate used to sign the integrity report.
クライアントプラットフォームの少なくとも1つのコンポーネントを検証するステップをさらに有し、前記検証するステップでは、前記インテグリティレポートおよび前記トラストレポートを生成する請求項22に記載のコンピュータで実施される方法。   23. The computer-implemented method of claim 22, further comprising verifying at least one component of a client platform, wherein the verifying step generates the integrity report and the trust report. 前記クライアントプラットフォームを認証するステップと、
前記クライアントプラットフォームから前記インテグリティレポートを受信するステップと、
前記インテグリティレポートに記載のコンポーネントをインテグリティオーソリティで検証するステップとを有する請求項23に記載のコンピュータで実施される方法。
Authenticating the client platform;
Receiving the integrity report from the client platform;
24. The computer-implemented method of claim 23, comprising: verifying a component described in the integrity report with an integrity authority.
前記インテグリティオーソリティに格納されているインテグリティレコードを用いて前記インテグリティ/トラストスコアを含む前記トラストレポートを生成するステップと、
前記インテグリティ/トラストスコアが閾値を超えている場合に、前記クライアントプラットフォームのリソースへのアクセスを許可するステップをさらに有する請求項24に記載のコンピュータで実施される方法。
Generating the trust report including the integrity / trust score using an integrity record stored in the integrity authority;
25. The computer-implemented method of claim 24, further comprising allowing access to the client platform resources if the integrity / trust score exceeds a threshold.
前記インテグリティオーソリティに格納されているインテグリティレコードを用いて前記インテグリティ/トラストスコアを含む前記トラストレポートを生成するステップと、
前記インテグリティ/トラストスコアが閾値を超えない場合に、前記クライアントプラットフォームのリソースへのアクセスを拒否するステップをさらに有する請求項24に記載のコンピュータで実施される方法。
Generating the trust report including the integrity / trust score using an integrity record stored in the integrity authority;
25. The computer-implemented method of claim 24, further comprising denying access to the client platform resources if the integrity / trust score does not exceed a threshold.
イメージファイルの少なくとも1つのコンポーネントを検証するステップをさらに有し、
前記検証するステップでは、前記インテグリティレポートおよび前記トラストレポートを生成する請求項22に記載のコンピュータで実施される方法。
Further comprising verifying at least one component of the image file;
23. The computer-implemented method of claim 22, wherein the verifying step generates the integrity report and the trust report.
配備するためのクライアントプラットフォームを受け取るステップと、
前記イメージファイルを検証する前に、前記クライアントプラットフォームに、前記イメージファイルの前記少なくとも1つのコンポーネントをインストールするステップとをさらに有する請求項27に記載のコンピュータで実施される方法。
Receiving a client platform for deployment;
28. The computer-implemented method of claim 27, further comprising installing the at least one component of the image file on the client platform prior to validating the image file.
配備するためのクライアントプラットフォームを受け取るステップと、
前記イメージファイルを検証した後に、前記クライアントプラットフォームに、前記イメージファイルの前記少なくとも1つのコンポーネントをインストールするステップとをさらに有する請求項27に記載のコンピュータで実施される方法。
Receiving a client platform for deployment;
28. The computer-implemented method of claim 27, further comprising: installing the at least one component of the image file on the client platform after validating the image file.
クライアントプラットフォームの複数のコンポーネントのインテグリティを検証するコンピュータで実施される方法であって、
前記クライアントプラットフォームを認証するステップと、
前記クライアントプラットフォームの少なくとも1つのコンポーネントについてインテグリティレポートを生成するステップと、
前記インテグリティレポートにデジタル署名を行うステップと、
前記インテグリティレポートに従ってリソースへのアクセスを得るステップとを有することを特徴とするコンピュータで実施される方法。
A computer-implemented method for verifying the integrity of multiple components of a client platform, comprising:
Authenticating the client platform;
Generating an integrity report for at least one component of the client platform;
Digitally signing the integrity report;
Obtaining access to a resource in accordance with the integrity report.
前記インテグリティレポートを生成するステップは、前記クライアントプラットフォームにある前記少なくとも1つのコンポーネントの少なくとも1つのハッシュを前記インテグリティレポートに追加するステップを含む請求項30に記載のコンピュータで実施される方法。   31. The computer-implemented method of claim 30, wherein generating the integrity report includes adding at least one hash of the at least one component in the client platform to the integrity report. マシンがアクセス可能な媒体を含む物品であって、前記媒体はアクセスされた際にマシンとして機能する関連づけされたデータを有しており、前記データは、
配備するためのクライアントプラットフォームを受け取り、
前記クライアントプラットフォームに少なくとも1つのコンポーネントをインストールし、
前記少なくとも1つのコンポーネントに対してインテグリティレポートを生成し、
前記少なくとも1つのコンポーネントを検証するために、前記インテグリティレポートからインテグリティ/トラストスコアを生成する手順を実行するデータを含むことを特徴とする前記物品。
An article comprising a machine accessible medium, the medium having associated data that functions as a machine when accessed, the data comprising:
Receives a client platform for deployment,
Installing at least one component on the client platform;
Generating an integrity report for the at least one component;
The article comprising data for performing a procedure for generating an integrity / trust score from the integrity report to verify the at least one component.
前記少なくとも1つのコンポーネントをインストールする手順を実行するデータは、イメージファイルから、前記クライアントプラットフォームに、前記少なくとも1つのコンポーネントをインストールする手順を含むデータである請求項32に記載の物品。   The article of claim 32, wherein the data for performing the procedure for installing the at least one component is data comprising a procedure for installing the at least one component from an image file on the client platform. 前記イメージファイルにある複数のコンポーネントのセットを検証する手順を実行するデータさらに含む請求項33に記載の物品。   34. The article of claim 33, further comprising data for performing a procedure for validating a set of components in the image file. ネットワークに接続可能であり、複数のインテグリティレコードを格納するデータベースを含むインテグリティオーソリティと、
前記ネットワークに接続可能であり、クライアントプラットフォームを認証する認証サーバと、
前記ネットワークに接続可能であり、前記クライアントプラットフォームからインテグリティレポートを受信し、前記インテグリティオーソリティから受信する複数の前記インテグリティレコードと前記インテグリティレポートとを比較し、前記認証サーバにトラストレポートを提供する検証サーバとを有することを特徴とするシステム。
An integrity authority that includes a database that can be connected to the network and stores multiple integrity records;
An authentication server that is connectable to the network and authenticates the client platform;
A verification server that is connectable to the network, receives an integrity report from the client platform, compares the integrity report with a plurality of the integrity records received from the integrity authority, and provides a trust report to the authentication server; The system characterized by having.
前記ネットワークで入手可能なリソースと、
前記ネットワークに接続可能であり、インテグリティ/トラストスコアに従って、前記クライアントプラットフォームによる前記リソースへのアクセスを制御するポリシーサーバとを有する請求項35に記載のシステム。
Resources available on the network;
36. A system according to claim 35, comprising a policy server connectable to the network and controlling access to the resource by the client platform according to an integrity / trust score.
ネットワークに接続可能なクライアントプラットフォームを有するシステムであって、
前記クライアントプラットフォームは、
前記クライアントプラットフォームの少なくとも1つのコンポーネントの少なくとも1つのハッシュを含む、当該少なくとも1つのコンポーネントのインテグリティレポートを生成するインテグリティレポートジェネレータと、
前記インテグリティレポートに署名するデジタルサイナー(digital signer)と、
前記インテグリティレポートに従って、前記ネットワークのリソースへのアクセスを受信する手段とを有することを特徴とするシステム。
A system having a client platform connectable to a network,
The client platform is
An integrity report generator that generates an integrity report of the at least one component, including at least one hash of at least one component of the client platform;
A digital signer to sign the integrity report;
Means for receiving access to resources of the network according to the integrity report.
前記インテグリティレポートは、トラステッドプラットフォームモジュール(TPM)証明書を用いて署名される請求項37に記載のシステム。   38. The system of claim 37, wherein the integrity report is signed using a Trusted Platform Module (TPM) certificate. マシンがアクセス可能な媒体を含む物品であって、前記媒体はアクセスされた際にマシンとして機能する関連づけされたデータを有しており、前記データは、
少なくとも1つのコンポーネントに対するインテグリティレポートを生成し、
前記インテグリティレポートを用いてインテグリティ/トラストスコアを含むトラストレポートを生成する手順を実行するデータを含み、
当該インテグリティ/トラストスコアは、前記インテグリティレポートの署名に用いられたトラステッドプラットフォームモジュール(TPM)証明書によって、一部が決定されるようになっている特徴とする前記物品。
An article comprising a machine accessible medium, the medium having associated data that functions as a machine when accessed, the data comprising:
Generate an integrity report for at least one component,
Including data for performing a procedure for generating a trust report including an integrity / trust score using the integrity report;
The article, wherein the integrity / trust score is determined in part by a trusted platform module (TPM) certificate used to sign the integrity report.
さらに、前記データは、クライアントプラットフォームの少なくとも一部を検証する手順を実行するデータを含み、
前記検証する手順では、前記インテグリティレポートおよび前記トラストレポートを生成することを含む請求項39に記載の物品。
Further, the data includes data for performing a procedure for verifying at least a portion of the client platform;
40. The article of claim 39, wherein the step of verifying includes generating the integrity report and the trust report.
前記データは、さらに、
クライアントプラットフォームを認証し、
前記クライアントプラットフォームから前記インテグリティレポートを受信し、
前記インテグリティレポートに記載のコンポーネントをインテグリティオーソリティで検証する手順を実行するデータを含む請求項40に記載の物品。
The data further includes:
Authenticate the client platform,
Receiving the integrity report from the client platform;
41. The article of claim 40, comprising data for performing a procedure for verifying a component described in the integrity report with an integrity authority.
前記データは、さらに、
前記インテグリティオーソリティに格納されている複数のインテグリティレコードを用いて前記インテグリティ/トラストスコアを含む前記トラストレポートを生成し、
前記インテグリティ/トラストスコアが閾値を超えている場合には、前記クライアントプラットフォームのリソースへのアクセスを許可する手順を実行するデータを含む請求項41に記載の物品。
The data further includes:
Generating the trust report including the integrity / trust score using a plurality of integrity records stored in the integrity authority;
42. The article of claim 41, comprising data for performing a procedure to allow access to the client platform resources if the integrity / trust score exceeds a threshold.
前記データは、さらに、
前記インテグリティオーソリティに格納されている複数のインテグリティレコードを用いて前記インテグリティ/トラストスコアを含む前記トラストレポートを生成し、
前記インテグリティ/トラストスコアが閾値を超えない場合には、前記クライアントプラットフォームのリソースへのアクセスを拒否する手順を実行するデータを含む請求項41に記載の物品。
The data further includes:
Generating the trust report including the integrity / trust score using a plurality of integrity records stored in the integrity authority;
42. The article of claim 41, comprising data for performing a procedure to deny access to resources of the client platform if the integrity / trust score does not exceed a threshold.
前記データは、さらに、
イメージファイルの少なくとも1つのコンポーネントを検証する手順を実行するデータを含み、
前記検証する手順では、生成した前記インテグリティレポートおよび前記トラストレポートを生成する請求項39に記載の物品。
The data further includes:
Including data for performing a procedure for validating at least one component of the image file;
40. The article of claim 39, wherein the verifying step generates the generated integrity report and the trust report.
前記データは、さらに、
配備するためのクライアントプラットフォームを受け取り、
前記イメージファイルを検証する前に、前記クライアントプラットフォームに、前記イメージファイルの前記少なくとも1つのコンポーネントをインストールする手順を実行するデータを含む請求項44に記載の前記物品。
The data further includes:
Receives a client platform for deployment,
45. The article of claim 44, comprising data for performing a procedure for installing the at least one component of the image file on the client platform prior to validating the image file.
前記データは、さらに、
配備するためのクライアントプラットフォームを受け取り、
前記イメージファイルを検証した後に、前記クライアントプラットフォームに、前記イメージファイルの前記少なくとも1つのコンポーネントをインストールする手順を実行するデータを含む請求項44に記載の前記物品。
The data further includes:
Receives a client platform for deployment,
45. The article of claim 44, comprising data for performing a procedure for installing the at least one component of the image file on the client platform after validating the image file.
JP2008544666A 2005-12-09 2006-12-08 A method for verifying the integrity of a component on a trusted platform using an integrity database service Pending JP2009518762A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US74936805P 2005-12-09 2005-12-09
US75974206P 2006-01-17 2006-01-17
PCT/US2006/061811 WO2008024135A2 (en) 2005-12-09 2006-12-08 Method to verify the integrity of components on a trusted platform using integrity database services

Publications (1)

Publication Number Publication Date
JP2009518762A true JP2009518762A (en) 2009-05-07

Family

ID=39107257

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008544666A Pending JP2009518762A (en) 2005-12-09 2006-12-08 A method for verifying the integrity of a component on a trusted platform using an integrity database service

Country Status (3)

Country Link
JP (1) JP2009518762A (en)
CA (1) CA2632590A1 (en)
WO (1) WO2008024135A2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012508931A (en) * 2008-11-14 2012-04-12 マイクロソフト コーポレーション Apparatus and method for generating a secure personal environment by combining a mobile device and a computer
JP2012513644A (en) * 2008-12-24 2012-06-14 ザ コモンウェルス オブ オーストラリア Digital video guard
JP2012529795A (en) * 2009-06-08 2012-11-22 西安西▲電▼捷通▲無▼▲線▼▲網▼▲絡▼通信股▲ふん▼有限公司 Access control method suitable for three-factor peer authentication trusted network access architecture
JP2013534335A (en) * 2010-07-30 2013-09-02 西安西▲電▼捷通▲無▼綫▲網▼絡通信股▲分▼有限公司 Platform authentication policy management method and equipment appropriate for high reliability combined architecture
JP2013541099A (en) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション Device claims you can trust as a service
JP2015503268A (en) * 2011-11-10 2015-01-29 ソニー株式会社 Copy protection system network-based revocation, compliance, and keying
JP2015043570A (en) * 2013-08-26 2015-03-05 ザ・ボーイング・カンパニーTheBoeing Company System and method for trusted mobile communications
US11170583B2 (en) 2018-01-15 2021-11-09 Kabushiki Kaisha Toshiba Electronic apparatus, method and server and method for verifying validity of log data of vehicle

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8327131B1 (en) 2004-11-29 2012-12-04 Harris Corporation Method and system to issue trust score certificates for networked devices using a trust scoring service
US8266676B2 (en) 2004-11-29 2012-09-11 Harris Corporation Method to verify the integrity of components on a trusted platform using integrity database services
US9450966B2 (en) 2004-11-29 2016-09-20 Kip Sign P1 Lp Method and apparatus for lifecycle integrity verification of virtual machines
US7487358B2 (en) 2004-11-29 2009-02-03 Signacert, Inc. Method to control access between network endpoints based on trust scores calculated from information system component analysis
US7733804B2 (en) 2004-11-29 2010-06-08 Signacert, Inc. Method and apparatus to establish routes based on the trust scores of routers within an IP routing domain
US20110179477A1 (en) * 2005-12-09 2011-07-21 Harris Corporation System including property-based weighted trust score application tokens for access control and related methods
EP2110766A1 (en) * 2008-04-16 2009-10-21 Robert Bosch Gmbh Electronic control unit, software and/or hardware component and method to reject wrong software and/or hardware components with respect to the electronic control unit
CN101729289B (en) * 2008-11-03 2012-04-04 华为技术有限公司 Platform integrity authentication method and system, wireless access device and network device
TWI580285B (en) * 2009-03-05 2017-04-21 內數位專利控股公司 Method and apparatus for h(e)nb integrity verification and validation
CN101588244A (en) * 2009-05-08 2009-11-25 中兴通讯股份有限公司 Method and system for authenticating network device
US9531695B2 (en) 2009-06-12 2016-12-27 Microsoft Technology Licensing, Llc Access control to secured application features using client trust levels
IT1398578B1 (en) * 2010-03-05 2013-03-01 Elsag Datamat Spa PORTABLE ELECTRONIC DEVICE INTERFACEABLE TO A CALCULATOR
US9208318B2 (en) * 2010-08-20 2015-12-08 Fujitsu Limited Method and system for device integrity authentication
FR2989197B1 (en) * 2012-04-05 2014-05-02 Toucan System METHOD FOR SECURING ACCESS TO A COMPUTER DEVICE
US9973481B1 (en) * 2015-06-16 2018-05-15 Amazon Technologies, Inc. Envelope-based encryption method
US10033703B1 (en) 2015-06-16 2018-07-24 Amazon Technologies, Inc. Pluggable cipher suite negotiation
CN109714185B (en) 2017-10-26 2022-03-04 阿里巴巴集团控股有限公司 Strategy deployment method, device and system of trusted server and computing system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050132122A1 (en) * 2003-12-16 2005-06-16 Rozas Carlos V. Method, apparatus and system for monitoring system integrity in a trusted computing environment
JP2006139747A (en) * 2004-08-30 2006-06-01 Kddi Corp Communication system, and security assurance device
US7733804B2 (en) * 2004-11-29 2010-06-08 Signacert, Inc. Method and apparatus to establish routes based on the trust scores of routers within an IP routing domain

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012508931A (en) * 2008-11-14 2012-04-12 マイクロソフト コーポレーション Apparatus and method for generating a secure personal environment by combining a mobile device and a computer
JP2012513644A (en) * 2008-12-24 2012-06-14 ザ コモンウェルス オブ オーストラリア Digital video guard
JP2012529795A (en) * 2009-06-08 2012-11-22 西安西▲電▼捷通▲無▼▲線▼▲網▼▲絡▼通信股▲ふん▼有限公司 Access control method suitable for three-factor peer authentication trusted network access architecture
US8719897B2 (en) 2009-06-08 2014-05-06 China Iwncomm Co., Ltd. Access control method for tri-element peer authentication credible network connection structure
JP2013534335A (en) * 2010-07-30 2013-09-02 西安西▲電▼捷通▲無▼綫▲網▼絡通信股▲分▼有限公司 Platform authentication policy management method and equipment appropriate for high reliability combined architecture
KR101488627B1 (en) 2010-07-30 2015-01-30 차이나 아이더블유엔콤 씨오., 엘티디 Platform authentication strategy management method and device for trusted connection architecture
JP2013541099A (en) * 2010-09-30 2013-11-07 マイクロソフト コーポレーション Device claims you can trust as a service
KR101832535B1 (en) * 2010-09-30 2018-02-26 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Trustworthy device claims as a service
JP2015503268A (en) * 2011-11-10 2015-01-29 ソニー株式会社 Copy protection system network-based revocation, compliance, and keying
JP2015043570A (en) * 2013-08-26 2015-03-05 ザ・ボーイング・カンパニーTheBoeing Company System and method for trusted mobile communications
US11170583B2 (en) 2018-01-15 2021-11-09 Kabushiki Kaisha Toshiba Electronic apparatus, method and server and method for verifying validity of log data of vehicle

Also Published As

Publication number Publication date
WO2008024135A2 (en) 2008-02-28
WO2008024135A3 (en) 2008-12-04
CA2632590A1 (en) 2008-02-28

Similar Documents

Publication Publication Date Title
JP2009518762A (en) A method for verifying the integrity of a component on a trusted platform using an integrity database service
US8266676B2 (en) Method to verify the integrity of components on a trusted platform using integrity database services
Lampson Computer security in the real world
Borky et al. Protecting information with cybersecurity
EP1349033B1 (en) A method of protecting the integrity of a computer program
US8474031B2 (en) Access control method and apparatus
US20210256113A1 (en) Blockchain Validation of Software
US9160545B2 (en) Systems and methods for A2A and A2DB security using program authentication factors
US20230412626A1 (en) Systems and methods for cyber security and quantum encapsulation for smart cities and the internet of things
Tracy et al. Guidelines on Securing Public Web Servers Web Servers
Ylonen et al. Security of interactive and automated access management using Secure Shell (SSH)
Gopalan et al. Policy driven remote attestation
Sheik et al. Considerations for secure mosip deployment
Trias et al. Enterprise level security
Ur Rahman et al. Practical security for rural internet kiosks
US20230053907A1 (en) Method and apparatus for flexible configuration managment using external identity management service
Bays et al. FIC Vulnerability Profile
Foltz et al. Enterprise Security with Endpoint Agents
Ali et al. Incorporating remote attestation for end-to-end protection in web communication paradigm
Okafor et al. DiVerify: Diversifying Identity Verification in Next-Generation Software Signing
ULANC et al. Deliverable D4. 2
Wyatt et al. Secure Messaging Scenarios with WebSphere MQ
Beier et al. Information system security best practices for UOCAVA-supporting systems
Ylonen et al. Security of Automated Access Management Using Secure Shell (SSH)
Jaeger et al. Security requirements for the deployment of the linux kernel in enterprise systems