JP2010128818A - Platform integrity verification system and method - Google Patents

Platform integrity verification system and method Download PDF

Info

Publication number
JP2010128818A
JP2010128818A JP2008303189A JP2008303189A JP2010128818A JP 2010128818 A JP2010128818 A JP 2010128818A JP 2008303189 A JP2008303189 A JP 2008303189A JP 2008303189 A JP2008303189 A JP 2008303189A JP 2010128818 A JP2010128818 A JP 2010128818A
Authority
JP
Japan
Prior art keywords
computer
thin client
integrity verification
server
digital signature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008303189A
Other languages
Japanese (ja)
Other versions
JP5288173B2 (en
Inventor
Junichi Matsui
純一 松井
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2008303189A priority Critical patent/JP5288173B2/en
Publication of JP2010128818A publication Critical patent/JP2010128818A/en
Application granted granted Critical
Publication of JP5288173B2 publication Critical patent/JP5288173B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a system for reducing the time required for platform integrity verification. <P>SOLUTION: A thin client OS stored in a USB token 10 to be used for the platform integrity verification system 1 is provided with only functions necessary for platform integrity verification. When the platform integrity verification succeeds, an additional program (e.g. a remote access client) necessary for utilizing a thin client server 13 or a thin client server 14 is transmitted from an integrity verification server 12 to a computer 1 and the additional program is applied to the thin client OS developed on the computer 1. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、シンクライアント端末として利用されるコンピュータのプラットフォーム完全性を検証するための技術に関する。   The present invention relates to a technique for verifying platform integrity of a computer used as a thin client terminal.

近年、企業などにおいて、ネットワーク通信機能など必要最小限の機能のみを持たせたシンクライアント端末と、機密情報などの情報資源の管理や、アプリケーションの処理などの機能を集約させたシンクライアントサーバとから構成されるシンクライアントシステム(Thin Client System)を導入するケースが増えている。   In recent years, in companies, etc., from thin client terminals that have only the minimum necessary functions such as network communication functions, and thin client servers that consolidate functions such as management of information resources such as confidential information and application processing More and more cases are being introduced for thin client systems.

企業がシンクライアントシステムを導入する背景には、(1)日本版SOX法への対応を目的とした内部統制の強化、(2)個人情報流出防止などを目的としたセキュリティの強化、(3)システムの運用管理コスト(パッチ情報、ライセンス管理など)の削減、(4)テレワーク(Telework)の実現等などがある。   The reasons behind the introduction of a thin client system are (1) Strengthening of internal controls for the purpose of complying with the Japanese version of the SOX Act, (2) Strengthening of security for the purpose of preventing leakage of personal information, etc. (3) There are reductions in system operation management costs (patch information, license management, etc.) and (4) realization of telework.

とりわけ、在宅勤務が可能となるテレワークは、地域活性化や少子高齢化問題などの解決手段として期待されており、テレワークを実現するためには、企業内と同じセキュアな環境で、企業内のLAN(Local Area Network)に設置されたシンクライアントサーバにリモートアクセスを行えることが必要となる。   In particular, teleworking that enables working from home is expected as a means of solving regional revitalization and the declining birthrate and aging problems. To achieve teleworking, LAN in the company is used in the same secure environment as in the company. It is necessary to be able to remotely access a thin client server installed in (Local Area Network).

シンクライアントシステムを実現するために、シンクライアント端末として専用に機能するコンピュータを導入してもよいが、該コンピュータの導入は、コスト・利便性両方の面から望ましとは言えない。   In order to realize a thin client system, a computer that functions exclusively as a thin client terminal may be introduced. However, the introduction of the computer is not desirable in terms of both cost and convenience.

そこで、特許文献1にも記述されているように、シンクライアント端末として機能させるオペレーティングシステム(以下,「シンクライアントOS」と記す。OSは「Operating System」の略。)を,USBメモリ、CD−ROMなどの携帯型記憶デバイスに記憶させ、汎用のコンピュータをシンクライアント端末として利用するときに、シンクライアントOSを汎用のコンピュータ上で起動させる手法が用いられる。   Therefore, as described in Patent Document 1, an operating system that functions as a thin client terminal (hereinafter referred to as “thin client OS”; OS is an abbreviation of “Operating System”) is connected to a USB memory, a CD-ROM. A method of starting a thin client OS on a general-purpose computer when a general-purpose computer is used as a thin client terminal is stored in a portable storage device such as a ROM.

しかし、故意的或いは偶発的にしても、USBメモリなどの携帯型記憶デバイスに記憶されたシンクライアントOSが改竄されてしまうと、個人データなどの機密データが漏洩してしまう可能性があるため、汎用コンピュータのメモリに展開されるシンクライアントOSの改竄を発見するプラットフォーム完全性検証が必要とされる。   However, even if intentionally or accidentally, if the thin client OS stored in a portable storage device such as a USB memory is falsified, confidential data such as personal data may be leaked. There is a need for platform integrity verification to discover falsification of thin client OS deployed in the memory of a general purpose computer.

シンクライアントOSに係らず、一般的なソフトウェアの改竄の脅威に対して、コンピュータ業界団体の一つであるTCG(TCG: Trusted Computing Group)では、TPM(TPM: Trusted Platform Module)と呼ばれるセキュリティチップをコンピュータのコンピュータ基板上に設け、ソフトウェアの信頼性を高める業界標準仕様の策定を進めている。   Regardless of the thin client OS, TCG (TCG: Trusted Computing Group), one of the computer industry groups, has a security chip called TPM (TPM: Trusted Platform Module) against the threat of general software tampering. The company is working on the establishment of industry standard specifications that are installed on the computer board of computers to increase the reliability of software.

しかし、現状では、この提案に沿ってTPMを実装したコンピュータは少なく、TCGが提案しているプラットフォーム完全性検証を行うのは難しい。   However, at present, there are few computers that implement TPM according to this proposal, and it is difficult to perform platform integrity verification proposed by TCG.

そこで,本出願人は,既に,特許文献2において,TCGが策定しているTPMのような特定なセキュリティチップをコンピュータ基板上に設けることなくても、シンクライアント端末として利用されるコンピュータのプラットフォーム完全性を検証できる発明を開示している。   Therefore, the present applicant has already completed the computer platform used as a thin client terminal in Patent Document 2 without providing a specific security chip such as TPM formulated by TCG on the computer board. The invention which can verify the property is disclosed.

特許文献2で本出願人が開示している発明では,シンクライアントOSをUSBメモリなどの携帯型記憶デバイスに記憶させ,該USBメモリに記憶されたシンクライアントOSを起動させたコンピュータに,該シンクライアントOSのイメージのハッシュ値を演算させ,該コンピュータからアクセスのあった完全性検証サーバが該ハッシュ値を検証することで,プラットフォーム完全性検証として,シンクライアント端末として利用されるコンピュータのメモリに展開されたシンクライアントOSの正当性を検証する。   In the invention disclosed by the present applicant in Patent Document 2, the thin client OS is stored in a portable storage device such as a USB memory, and the thin client OS stored in the USB memory is started up on the computer. The hash value of the image of the client OS is calculated, and the integrity verification server accessed from the computer verifies the hash value, so that it is expanded in the memory of the computer used as a thin client terminal as platform integrity verification The validity of the thin client OS that has been verified is verified.

しかし,本出願人が特許文献2で開示している発明では,シンクライアント端末として利用されるコンピュータのメモリに展開されたシンクライアントOSのイメージのハッシュ値を演算するため,該コンピュータを操作するユーザが利用しない機能までもシンクライアントOSに含まれていると,必要以上にプラットフォーム完全性検証時に時間がかかりすぎてしまう問題がある。   However, in the invention disclosed in Patent Document 2 by the present applicant, the user operating the computer is operated to calculate the hash value of the image of the thin client OS developed in the memory of the computer used as the thin client terminal. If a thin client OS includes functions that are not used, there is a problem that it takes too much time to verify platform integrity.

例えば,ユーザがリモートアクセスするシンクライアントサーバによってリモートアクセスクライアントが変わる場合,該ユーザが所持する携帯型記憶デバイスに記憶するシンクライアントOSには,ユーザが利用する/しないに係わらず,すべてのシンクライアントサーバにアクセス可能なように複数のリモートアクセスクライアントを実装しなければならならず,ユーザが利用しないシンクライアントサーバに対応したリモートアクセスクライアントまでも,ハッシュ値演算の対象になってしまっていた。   For example, when the remote access client changes depending on the thin client server that the user remotely accesses, the thin client OS stored in the portable storage device possessed by the user includes all thin clients regardless of whether or not the user uses them. Multiple remote access clients must be implemented so that the server can be accessed, and even remote access clients that support thin client servers that are not used by users have been subject to hash value calculation.

また,USBメモリなどの携帯型記憶デバイスに記憶されたシンクライアントOSを何らかの理由(例えば,セキュリティ用パッチの適用)で更新しなければならないとき,シンクライアントOSの更新の有無によって,シンクライアントOSのイメージのハッシュ値も変わってしまう問題がある。   In addition, when the thin client OS stored in a portable storage device such as a USB memory has to be updated for some reason (for example, application of a security patch), the thin client OS is updated depending on whether the thin client OS is updated. There is a problem that the hash value of the image also changes.

特開2007−299136号公報JP 2007-299136 A 特願2008−012402号公報Japanese Patent Application No. 2008-012402

そこで,本発明は,特許文献2で本出願人が開示している発明のように,USBメモリなどの携帯型記憶デバイスに記憶されたシンクライアントOSのイメージのハッシュ値を利用して,プラットフォーム完全性検証する際に,プラットフォーム完全性検証に要する時間を短縮でき,更に,シンクライアントOSの更新にも容易に対応が図れるプラットフォーム完全性検証システム及び方法を提供することを目的とする。   Therefore, the present invention uses a hash value of a thin client OS image stored in a portable storage device such as a USB memory, as in the invention disclosed by the present applicant in Patent Document 2, and completes the platform. It is an object of the present invention to provide a platform integrity verification system and method that can shorten the time required for platform integrity verification and can easily cope with a thin client OS update.

上述した課題を解決する第1の発明は,シンクライアント端末として利用されるコンピュータと、シンクライアントOS(OS: Operating System)のイメージが記憶された携帯型記憶デバイスと,外部から送信されたメッセージのデジタル署名を生成する手段を備えたセキュリティトークンと、インターネットを介して前記コンピュータと接続された完全性検証サーバとから、少なくとも構成されたプラットフォーム完全性検証システムであって、 前記携帯型記憶デバイスに記憶する前記シンクライアントOSは,前記コンピュータのメモリに展開された前記シンクライアントOSのイメージのハッシュ値を演算した後,前記ハッシュ値を含む構成証明メッセージのデジタル署名を前記セキュリティトークンに生成させ、前記構成証明メッセージと前記構成証明メッセージのデジタル署名を前記完全性検証サーバに送信する計測ソフトウェアと、前記コンピュータのメモリに展開された前記シンクライアントOSに前記完全性検証サーバから送信された追加プログラムを適用する追加プログラム用ソフトウェアを含み,前記完全性検証サーバは、前記シンクライアントOSが起動した前記コンピュータから送信された前記構成証明メッセージのデジタル署名と、前記構成証明メッセージの本体を検証するプラットフォーム完全性検証手段と,前記プラットフォーム完全性検証手段が前記構成証明メッセージの本体とデジタル署名の検証に成功した後,該コンピュータ上で起動している前記シンクライアントOSに適用する前記追加プログラムを該コンピュータに送信する追加プログラム送信手段を備え,前記携帯型記憶デバイスが前記コンピュータにマウントされたとき,前記シンクライアントOSを該コンピュータ上で起動させるように構成されていることを特徴とするプラットフォーム完全性検証システムである。   A first invention for solving the above-described problem is a computer used as a thin client terminal, a portable storage device in which an image of a thin client OS (OS: Operating System) is stored, and a message transmitted from the outside. A platform integrity verification system comprising at least a security token having means for generating a digital signature and an integrity verification server connected to the computer via the Internet, the system being stored in the portable storage device The thin client OS calculates a hash value of the image of the thin client OS expanded in the memory of the computer, and then generates a digital signature of a configuration proof message including the hash value in the security token. Proof message and Measurement software for transmitting a digital signature of the configuration certification message to the integrity verification server, and an additional program for applying the additional program transmitted from the integrity verification server to the thin client OS deployed in the memory of the computer And the integrity verification server includes a digital signature of the configuration certification message transmitted from the computer started by the thin client OS, platform integrity verification means for verifying a body of the configuration certification message, After the platform integrity verification means has successfully verified the main body of the configuration certification message and the digital signature, the additional program transmission for transmitting the additional program applied to the thin client OS running on the computer to the computer Comprising a stage, when the portable storage device is mounted to the computer, the thin client OS is a platform integrity verification system characterized in that it is configured to start on the computer.

更に,第2の発明は,第1の発明に記載のプラットフォーム完全性検証システムにおいて、前記完全性検証サーバから前記コンピュータに送信される前記追加プログラムは,シンクライアントサーバにリモートアクセスするために必要なアプリケーションであって,前記シンクライアントOSに含まれる前記追加プログラム用ソフトウェアは,アクセス要求する前記シンクライアントサーバの識別情報を送信するプログラムで,前記完全性検証サーバの前記追加プログラム送信手段は,前記コンピュータから送信された前記識別情報で特定される前記追加プログラムを前記コンピュータに送信することを特徴とするプラットフォーム完全性検証システムである。   Furthermore, the second invention is the platform integrity verification system according to the first invention, wherein the additional program transmitted from the integrity verification server to the computer is necessary for remote access to the thin client server. The additional program software included in the thin client OS is a program that transmits identification information of the thin client server that requests access, and the additional program transmission means of the integrity verification server is the computer. A platform integrity verification system, characterized in that the additional program specified by the identification information transmitted from is transmitted to the computer.

更に,第3の発明は,シンクライアント端末として利用されるコンピュータと、シンクライアントOS(OS: Operating System)のイメージが記憶された携帯型記憶デバイスと,外部から送信されたメッセージのデジタル署名を生成する手段を備えたセキュリティトークンと、インターネットワークを介して前記コンピュータと接続された完全性検証サーバとから、少なくとも構成されたプラットフォーム完全性検証方法であって、前記コンピュータを用いて,前記コンピュータにマウントされた前記携帯型記憶デバイスに記憶された前記シンクライアントOSを該コンピュータ上で起動させるステップ,前記シンクライアントOSが起動した前記コンピュータを用いて,前記コンピュータのメモリに展開された前記シンクライアントOSのイメージのハッシュ値を演算した後,前記ハッシュ値を含む構成証明メッセージのデジタル署名を前記セキュリティトークンに生成させ、前記構成証明メッセージと前記構成証明メッセージのデジタル署名を前記完全性検証サーバに送信するステップ,前記完全性検証サーバを用いて、前記シンクライアントOSが起動した前記コンピュータから送信された前記構成証明メッセージのデジタル署名と、前記構成証明メッセージの本体を検証するステップ,前記完全性検証サーバを用いて,該コンピュータ上で起動している前記シンクライアントOSに適用する前記追加プログラムを該コンピュータに送信するステップ,前記シンクライアントOSが起動した前記コンピュータを用いて,前記コンピュータのメモリに展開された前記シンクライアントOSに前記完全性検証サーバから送信された追加プログラムを適用するステップ,が実行されることを特徴とするプラットフォーム完全性検証方法である。   Furthermore, the third invention generates a computer used as a thin client terminal, a portable storage device storing an image of a thin client OS (OS: Operating System), and a digital signature of a message transmitted from the outside A platform integrity verification method comprising at least a platform integrity verification method comprising: a security token having means for performing communication; and an integrity verification server connected to the computer via an internetwork, wherein the method is mounted on the computer using the computer. Activating the thin client OS stored in the portable storage device on the computer, and using the computer on which the thin client OS is activated, the thin client OS expanded in the memory of the computer image After calculating the hash value, causing the security token to generate a digital signature of the configuration certification message including the hash value, and transmitting the configuration certification message and the digital signature of the configuration certification message to the integrity verification server, Using the integrity verification server to verify the digital signature of the configuration certification message transmitted from the computer on which the thin client OS is started and the body of the configuration certification message; using the integrity verification server, Transmitting the additional program applied to the thin client OS running on the computer to the computer; using the computer started by the thin client OS, the thin client expanded in the memory of the computer OS Applying the additional program transmitted from the integrity verification server; and executing the platform integrity verification method.

上述した本発明によれば,プラットフォーム完全性検証に成功した後,前記コンピュータ上で起動している前記シンクライアントOSに適用する前記追加プログラムが前記完全性検証サーバから送信されるため,前記セキュリティトークンには,ユーザがシンクライアントサーバを利用するために必要な機能全てではなく,該機能の一部の機能を提供するシンクライアントOSのみを記憶すればよいため,該シンクライアントOSのサイズは小さく,該シンクライアントOSのハッシュ値を演算する時間が短くなり,プラットフォーム完全性検証に要する時間を短縮できる。   According to the present invention described above, since the additional program applied to the thin client OS running on the computer is transmitted from the integrity verification server after successful platform integrity verification, the security token Since only the thin client OS that provides a part of the functions need to be stored instead of all the functions necessary for the user to use the thin client server, the size of the thin client OS is small. The time for calculating the hash value of the thin client OS is shortened, and the time required for platform integrity verification can be shortened.

更に,前記セキュリティトークンに格納されたシンクライアントOSで提供される機能以外で,前記シンクライアントサーバを利用するために必要な機能を実現するコンピュータプログラム(例えば,リモートアクセスクライアント)は,プラットフォーム完全性検証が成功した後に,前記セキュリティトークンが装着された前記コンピュータに前記追加プログラムとして前記完全性検証サーバから送信されるため,前記コンピュータプログラムを更新しなければならない場合(例えば,セキュリティパッチの適用)でも,容易に対応が図れるようになる。   Furthermore, in addition to the functions provided by the thin client OS stored in the security token, a computer program (for example, a remote access client) that implements functions necessary for using the thin client server is provided for platform integrity verification. Even if the computer program has to be updated (for example, application of a security patch) because the integrity verification server sends the additional program to the computer with the security token attached after the It is possible to easily cope with it.

なお,本発明において,セキュリティトークンとは,ICカードのように,デジタル署名などに利用する暗号鍵などを耐タンパー性高く記憶し,外部装置からの要求に応じて,該暗号鍵を利用した演算を行う機能を備えた物理デバイスを意味する。更に,携帯型記憶デバイスとは,USBメモリのように,比較的大きな記憶容量を持ち,コンピュータに装着されたときに,補助記憶装置として認識される物理デバイスを意味する。   In the present invention, a security token is an arithmetic operation using an encryption key, which stores an encryption key used for a digital signature or the like with high tamper resistance, such as an IC card, and uses the encryption key in response to a request from an external device. It means a physical device with a function to perform. Further, the portable storage device means a physical device such as a USB memory that has a relatively large storage capacity and is recognized as an auxiliary storage device when attached to a computer.

このように,上述した本発明によれば,USBメモリなどの携帯型記憶デバイスに記憶されたシンクライアントOSのイメージのハッシュ値を利用して,プラットフォーム完全性検証する際に,プラットフォーム完全性検証に要する時間を短縮でき,更に,シンクライアントOSの更新にも容易に対応が図れるプラットフォーム完全性検証システム及び方法を提供できる。   As described above, according to the present invention described above, the platform integrity verification is performed when the platform integrity verification is performed using the hash value of the image of the thin client OS stored in the portable storage device such as the USB memory. It is possible to provide a platform integrity verification system and method that can shorten the time required and can easily cope with the update of the thin client OS.

ここから,本発明に係わる発明の好適な実施形態について,図を参照しながら詳細に説明する。図1は,本実施形態に係わるプラットフォーム完全性検証システム1を説明する図である。   Now, preferred embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a diagram for explaining a platform integrity verification system 1 according to the present embodiment.

図1で図示したプラットフォーム完全性検証システム1は、シンクライアント端末として利用されるコンピュータ11と、セキュリティ管理されたLAN21(LAN: Loacal Area Network)に接続され、コンピュータ11からLAN21内のリソースへのリモートアクセスを管理する完全性検証サーバ12とから少なくとも構成されている。   The platform integrity verification system 1 illustrated in FIG. 1 is connected to a computer 11 used as a thin client terminal and a security-managed LAN 21 (LAN: Local Area Network), and remotely communicates from the computer 11 to resources in the LAN 21. It comprises at least an integrity verification server 12 that manages access.

図1では、LAN21及びインターネット2の双方から隔離されたDMZ20(DMZ: DeMilitarized Zone)に,ファイヤーウォール機器20aやVPN機器20b(VPN: Virtual Private Network)が配置され,更に、LAN21内には、機密情報や営業情報など情報とこれらの情報を利用するためのアプリケーションなどが記憶されている2台のシンクライアントサーバ13およびシンクライアントサーバ14がルータ21aに接続されている。   In FIG. 1, a firewall device 20 a and a VPN device 20 b (VPN: Virtual Private Network) are arranged in a DMZ 20 (DMZ: DeMilitarized Zone) that is isolated from both the LAN 21 and the Internet 2. Two thin client servers 13 and 14 that store information such as information and sales information and applications for using these information are connected to the router 21a.

ユーザが所持するUSBトークン10は,Aladdin社製のeToken(登録商標)のように,セキュリティトークンの役割を果たすスマートカード用ICチップと,携帯型記憶デバイスの役割を果たすフラッシュメモリが組み合わされたデバイスで,該スマートカード用ICチップには,特許文献2の内容に従い,プラットフォーム完全性検証するために必要な機能(ここでは,デジタル署名の生成機能)が備えられている。   A USB token 10 possessed by a user is a device in which an IC chip for a smart card serving as a security token and a flash memory serving as a portable storage device are combined, such as eToken (registered trademark) manufactured by Aladdin. The smart card IC chip is provided with a function (here, a digital signature generation function) necessary for verifying platform integrity in accordance with the contents of Patent Document 2.

また,ユーザが所持するUSBトークン10のフラッシュメモリには,ユーザがシンクライアントサーバ13或いはシンクライアントサーバ14を利用するために必要な機能全てではなく,該機能の一部の機能,例えば,プラットフォーム完全性検証を実行する機能のみを実現するためのシンクライアントオペレーティングシステム(OS: Operating System)が記憶されている。   Further, the flash memory of the USB token 10 possessed by the user does not include all functions necessary for the user to use the thin client server 13 or the thin client server 14, but a part of the functions, for example, the platform complete A thin client operating system (OS) for realizing only the function of executing the verification is stored.

図1のプラットフォーム完全性検証システム1を構成する完全性検証サーバ12は、汎用的なウェブサーバで実現され、特許文献2で開示されている内容に従い,LAN21内に配置されたシンクライアントサーバ13或いはシンクライアントサーバ14にアクセスするコンピュータ11のプラットフォーム完全性検証を実行する機能に加え,プラットフォーム完全性検証に成功したコンピュータ11に対して,USBトークン10に記憶されているシンクライアントOSには備えられていないが,シンクライアントサーバ13或いはシンクライアントサーバ14にアクセスするために必要な追加プログラムを送信する機能を備えている。   The integrity verification server 12 constituting the platform integrity verification system 1 of FIG. 1 is realized by a general-purpose web server, and in accordance with the contents disclosed in Patent Document 2, the thin client server 13 or the In addition to the function of executing the platform integrity verification of the computer 11 accessing the thin client server 14, the thin client OS stored in the USB token 10 is provided for the computer 11 that has successfully verified the platform integrity. Although not provided, it has a function of transmitting an additional program necessary for accessing the thin client server 13 or the thin client server 14.

例えば,シンクライアントサーバ13に接続するためのリモートアクセスクライアント(Remote Access Client)がシンクライアントサーバ14と異なる場合,シンクライアントOSにはリモートアクセスクライアントを記憶させず,完全性検証サーバ12は,プラットフォーム完全性検証に成功したコンピュータ11がアクセス要求したシンクライアントサーバ13用或いはシンクライアントサーバ14用のリモートアクセスクライアントを追加プログラムとして,該コンピュータ11に送信する。   For example, when the remote access client (Remote Access Client) for connecting to the thin client server 13 is different from the thin client server 14, the remote access client is not stored in the thin client OS, and the integrity verification server 12 is not The remote access client for the thin client server 13 or for the thin client server 14 requested by the computer 11 that has succeeded in the verification is transmitted to the computer 11 as an additional program.

このように,本実施形態におけるプラットフォーム完全性検証システム1においては,USBトークン10には,ユーザがシンクライアントサーバ13及びシンクライアントサーバ14を利用するために必要な機能全てではなく,該機能の一部の機能を提供するシンクライアントOSのみを記憶すればよいため,該シンクライアントOSのサイズは小さく,該シンクライアントOSのハッシュ値を演算する時間が短くなり,プラットフォーム完全性検証に要する時間を短縮できる。   As described above, in the platform integrity verification system 1 according to the present embodiment, the USB token 10 includes not all functions necessary for the user to use the thin client server 13 and the thin client server 14, but one of the functions. Since only the thin client OS that provides the functions of this part needs to be stored, the size of the thin client OS is small, the time for calculating the hash value of the thin client OS is shortened, and the time required for platform integrity verification is shortened it can.

更に,USBトークン10に格納されたシンクライアントOSで提供される機能以外で,シンクライアントサーバ13或いはシンクライアントサーバ14を利用するために必要な機能を実現するコンピュータプログラム(例えば,リモートアクセスクライアント)は,プラットフォーム完全性検証が成功した後に,USBトークン10が装着されたコンピュータ11に追加プログラムとして完全性検証サーバ12から送信されるため,コンピュータプログラムを更新しなければならない場合(例えば,セキュリティパッチの適用)でも,容易に対応が図れるようになる。   In addition to the functions provided by the thin client OS stored in the USB token 10, a computer program (for example, a remote access client) that implements functions necessary for using the thin client server 13 or the thin client server 14 is provided. After the platform integrity verification is successful, the computer program must be updated because it is transmitted from the integrity verification server 12 as an additional program to the computer 11 to which the USB token 10 is attached (for example, application of a security patch) However, it can be easily handled.

ここから,図1で図示したプラットフォーム完全性検証システム1で実行される手順について説明する。図2は,プラットフォーム完全性検証システム1で実行される手順を示したフロー図である。   From here, the procedure executed by the platform integrity verification system 1 shown in FIG. 1 will be described. FIG. 2 is a flowchart showing a procedure executed by the platform integrity verification system 1.

ユーザは、LAN21外のコンピュータ11を操作してLAN21内に設置されたシンクライアントサーバ13或いはシンクライアントサーバ14にリモートアクセスするとき、ユーザは、USBポートにUSBトークン10を接続させた状態でコンピュータ11を起動させると(図2のS1)、USBトークン10になどに備えられたブート機能によって、USBトークン10に記憶されたシンクライアントOSのイメージ(バイトコード)がコンピュータ11のメモリに展開され、コンピュータ11上でシンクライアントOSが起動する(図2のS2)。   When the user operates the computer 11 outside the LAN 21 to remotely access the thin client server 13 or the thin client server 14 installed in the LAN 21, the user connects the computer 11 with the USB token 10 connected to the USB port. (S1 in FIG. 2), the image (byte code) of the thin client OS stored in the USB token 10 is expanded in the memory of the computer 11 by the boot function provided in the USB token 10 and the like. 11 starts a thin client OS (S2 in FIG. 2).

図3は,図2のS2でコンピュータ11のメモリに展開されるシンクライアントOSを説明する図である。   FIG. 3 is a diagram for explaining the thin client OS developed in the memory of the computer 11 in S2 of FIG.

図3に図示したように,図2のS2でコンピュータ11のメモリに展開されるシンクライアントOSには,シンクライアントサーバ13或いはシンクライアントサーバ14を利用するために必要な機能の一部として,プラットフォーム完全性検証を実行するために必要なプログラムである計測ソフトウェアが含まれ,シンクライアントサーバ13或いはシンクライアントサーバ14の利用に必要なリモートアクセスクライアントは含まれていない。   As shown in FIG. 3, the thin client OS developed in the memory of the computer 11 in S2 of FIG. 2 includes a platform as a part of functions necessary for using the thin client server 13 or the thin client server 14. Measurement software, which is a program necessary for executing integrity verification, is included, and a remote access client required for using the thin client server 13 or the thin client server 14 is not included.

シンクライアントOSが起動することで,コンピュータ11はシンクライアント端末として機能し,シンクライアント端末として機能するコンピュータ11は,まず,VPN機器20bに接続し,コンピュータ11とVPN機器20b間の通信を暗号化した後,完全性検証サーバ12にアクセスする(図2のS3)。   When the thin client OS is activated, the computer 11 functions as a thin client terminal. The computer 11 functioning as a thin client terminal first connects to the VPN device 20b and encrypts communication between the computer 11 and the VPN device 20b. After that, the integrity verification server 12 is accessed (S3 in FIG. 2).

完全性検証サーバ12は、コンピュータ11からアクセスを受けると、アクセスしたコンピュータ11に対してプラットフォーム完全性検証を要求し,特許文献2で開示されている発明に従い,完全性検証サーバ12とコンピュータ11間でプラットフォーム完全性検証処理が実行される(図2のS4)。   Upon receiving access from the computer 11, the integrity verification server 12 requests platform integrity verification from the accessed computer 11, and in accordance with the invention disclosed in Patent Document 2, between the integrity verification server 12 and the computer 11. The platform integrity verification process is executed (S4 in FIG. 2).

プラットフォーム完全性検証処理が終了すると,完全性検証サーバ12は,プラットフォーム完全性検証の検証結果によって処理を分岐させる(図2のS5)。   When the platform integrity verification process ends, the integrity verification server 12 branches the process depending on the verification result of the platform integrity verification (S5 in FIG. 2).

完全性検証サーバ12は,プラットフォーム完全性検証が成功したとき,プラットフォーム完全性検証の検証結果(成功)をコンピュータ11に送信した後,この手順を続行する(図2のS6)。また,完全性検証サーバ12は,プラットフォーム完全性検証が失敗したとき,プラットフォーム完全性検証の検証結果(失敗)をコンピュータ11に送信した後,この手順を終了する(図2のS6a)。   When the platform integrity verification is successful, the integrity verification server 12 transmits the verification result (success) of the platform integrity verification to the computer 11 and then continues this procedure (S6 in FIG. 2). Further, when the platform integrity verification fails, the integrity verification server 12 transmits the verification result (failure) of the platform integrity verification to the computer 11 and then ends this procedure (S6a in FIG. 2).

プラットフォーム完全性検証に成功し,プラットフォーム完全性検証の検証結果(成功)をコンピュータ11が完全性検証サーバ12から受信すると,コンピュータ11は,シンクライアントサーバ13或いはシンクライアントサーバ14を利用するために必要な追加プログラムを特定する特定情報を完全性検証サーバ12に通知する(図2のS7)。   When the platform integrity verification succeeds and the computer 11 receives the verification result (success) of the platform integrity verification from the integrity verification server 12, the computer 11 is necessary to use the thin client server 13 or the thin client server 14. Specific information for specifying a particular additional program is notified to the integrity verification server 12 (S7 in FIG. 2).

コンピュータ11から完全性検証サーバ12に通知される特定情報は,完全性検証サーバ12が,該特定情報から追加プログラムを特定できる内容であれば任意でよい。例えば,アクセス要求するシンクライアントサーバ13或いはシンクライアントサーバ14のいずれかをユーザに選択させるための画面を,コンピュータ11に表示させ,ユーザがアクセス要求したシンクライアントサーバ13或いはシンクライアントサーバ14の識別情報(例えば,サーバ名やLAN21内のIPアドレス)を該特定情報とすることができる。   The specific information notified from the computer 11 to the integrity verification server 12 may be arbitrary as long as the integrity verification server 12 can specify the additional program from the specific information. For example, a screen for causing the user to select either the thin client server 13 or the thin client server 14 that requests access is displayed on the computer 11, and the identification information of the thin client server 13 or the thin client server 14 that the user requested to access (For example, a server name or an IP address in the LAN 21) can be used as the specific information.

完全性検証サーバ12は,追加プログラムの特定情報がコンピュータ11から通知されると,該特定情報で特定される追加プログラムを該コンピュータ11に送信する(図2のS8)。   When the specific information of the additional program is notified from the computer 11, the integrity verification server 12 transmits the additional program specified by the specific information to the computer 11 (S8 in FIG. 2).

例えば,追加プログラムがリモートアクセスクライアントである場合,ユーザがアクセス要求したシンクライアントサーバ13或いはシンクライアントサーバ14の識別情報が通知されると,完全性検証サーバ12は,該識別情報で特定されるシンクライアントサーバ13或いはシンクライアントサーバ14に対応したリモートアクセスクライアントをコンピュータ11に追加プログラムとして送信する。   For example, when the additional program is a remote access client, when the identification information of the thin client server 13 or the thin client server 14 requested by the user is notified, the integrity verification server 12 identifies the thin client specified by the identification information. A remote access client corresponding to the client server 13 or the thin client server 14 is transmitted to the computer 11 as an additional program.

コンピュータ11は,完全性検証サーバ12から追加プログラムを受信すると,コンピュータ11のメモリに該追加プログラムをインストールし,シンクライアントOSに該追加プログラムを追加する(図2のS9)。   When the computer 11 receives the additional program from the integrity verification server 12, the computer 11 installs the additional program in the memory of the computer 11 and adds the additional program to the thin client OS (S9 in FIG. 2).

図4は,図2のS9で,追加プログラムが追加された後のシンクライアントOSを説明する図である。図4に図示したように,追加プログラムが追加された後のシンクライアントOSには,追加プログラムとして,ユーザが利用するシンクライアントサーバ13に対応したリモートアクセスクライアントが含まれ,ユーザがシンクライアントサーバ13を利用できるが,シンクライアントサーバ14のリモートアクセスクライアントは含まれていないため,ユーザはシンクライアントサーバ14を利用できない。   FIG. 4 is a diagram for explaining the thin client OS after the additional program is added in S9 of FIG. As shown in FIG. 4, the thin client OS after the addition program is added includes a remote access client corresponding to the thin client server 13 used by the user as the additional program. However, since the remote access client of the thin client server 14 is not included, the user cannot use the thin client server 14.

コンピュータ11は,完全性検証サーバ12から送信された追加プログラムをメモリに展開されたシンクライアントOSに追加すると,該追加プログラムを利用して,シンクライアントサーバ13或いはシンクライアントサーバ14にアクセスし(図2のS10),この手順は終了する。   When the computer 11 adds the additional program transmitted from the integrity verification server 12 to the thin client OS expanded in the memory, the computer 11 accesses the thin client server 13 or the thin client server 14 using the additional program (see FIG. 2 S10), this procedure ends.

ここから,図2で図示した手順のS4で実行されるプラットフォーム完全性検証処理について説明しておく。図5は,プラットフォーム完全性検証処理の手順を示したフロー図である。なお,図5で図示した手順の内容は,特許文献2で開示している内容と同じである。   From here, the platform integrity verification process executed in S4 of the procedure illustrated in FIG. 2 will be described. FIG. 5 is a flowchart showing the procedure of the platform integrity verification process. The contents of the procedure illustrated in FIG. 5 are the same as the contents disclosed in Patent Document 2.

プラットフォーム完全性検証処理が開始されると、コンピュータ11は,プラットフォーム完全性検証に利用する乱数Rcを生成し、インターネット2を介して、乱数Rcを含む乱数生成要求メッセージを完全性検証サーバ12に送信する(図5のS20)。なお、コンピュータ11は、プラットフォーム完全性検証が終了するまで生成した乱数Rcをコンピュータ11のメモリに保持しておく。   When the platform integrity verification process is started, the computer 11 generates a random number Rc used for platform integrity verification, and transmits a random number generation request message including the random number Rc to the integrity verification server 12 via the Internet 2. (S20 in FIG. 5). The computer 11 holds the generated random number Rc in the memory of the computer 11 until the platform integrity verification is completed.

完全性検証サーバ12は、コンピュータ11から乱数Rcを受信すると、プラットフォーム完全性検証で利用する乱数Rsを生成し、乱数Rsをコンピュータ11に送信すると共に(図5のS21)、プラットフォーム完全性検証が終了するまで乱数Rc及び乱数Rsを完全性検証サーバ12のメモリに保持する。   When receiving the random number Rc from the computer 11, the integrity verification server 12 generates a random number Rs to be used in the platform integrity verification, transmits the random number Rs to the computer 11 (S21 in FIG. 5), and the platform integrity verification is performed. The random number Rc and the random number Rs are held in the memory of the integrity verification server 12 until the end.

コンピュータ11は、完全性検証サーバ12から乱数Rsを受信すると、完全性検証サーバ12から送信された乱数Rsをコンピュータ11のメモリに保持した後、コンピュータ11のメモリに展開されたシンクライアントOSのイメージすべてから、定められたアルゴリズム(例えば、SHA1)に従いハッシュ値を演算し(図5のS22)、ハッシュ値、乱数Rc及び乱数Rsを結合した構成証明メッセージを生成する(図5のS23)。   When the computer 11 receives the random number Rs from the integrity verification server 12, the computer 11 holds the random number Rs transmitted from the integrity verification server 12 in the memory of the computer 11, and then the image of the thin client OS developed in the memory of the computer 11. From all, a hash value is calculated according to a predetermined algorithm (for example, SHA1) (S22 in FIG. 5), and a configuration certification message is generated by combining the hash value, the random number Rc, and the random number Rs (S23 in FIG. 5).

コンピュータ11は構成証明メッセージを生成すると、シンクライアントOSにハードコードされているMAC鍵を用い、定められた手順(例えば、ISO/IEC 9797-1に準じた手順)に従い、構成証明メッセージのMACを演算する。   When the computer 11 generates the configuration proof message, it uses the MAC key hard-coded in the thin client OS and uses the MAC key of the configuration proof message according to a predetermined procedure (for example, a procedure according to ISO / IEC 9797-1). Calculate.

コンピュータ11は構成証明メッセージのMACを演算すると、構成証明メッセージ及びMACを含ませたコマンドメッセージをUSBトークン10に送信することで、構成証明メッセージのデジタル署名の生成をUSBトークン10に要求する(図5のS24)。   When the computer 11 calculates the MAC of the configuration certification message, the computer 11 sends the configuration certification message and a command message including the MAC to the USB token 10 to request the USB token 10 to generate a digital signature of the configuration certification message (see FIG. 5 S24).

USBトークン10は、構成証明メッセージ及びMACを含んだコマンドメッセージを受信すると、USBトークン10のスマートカード用ICチップがコマンドメッセージを解釈し、該スマートカード用ICチップは,MAC鍵を用い、コンピュータ11と同じアルゴリズムで構成証明メッセージからMACを演算し、コンピュータ11から送信されたMACと自身が演算したMACとが同一であるか検証することで、コンピュータ11で起動しているシンクライアントOSを検証する(図5のS25)。   When the USB token 10 receives the command message including the configuration proof message and the MAC, the smart card IC chip of the USB token 10 interprets the command message, and the smart card IC chip uses the MAC key, and the computer 11 The thin client OS running on the computer 11 is verified by calculating the MAC from the configuration proof message using the same algorithm as above and verifying whether the MAC transmitted from the computer 11 is the same as the MAC calculated by itself. (S25 in FIG. 5).

USBトークン10のスマートカード用ICチップは,構成証明メッセージのMACの検証に成功/失敗で処理を分岐させ(図5のS26)、構成証明メッセージのMACの検証に成功したときは、構成証明メッセージのデジタル署名を生成する処理を実行し、構成証明メッセージのMACの検証に失敗したときは、MACの検証に失敗したことを示すエラーメッセージをコンピュータ11に返信して、この手順を終了する。   The smart card IC chip of the USB token 10 branches the process according to the success / failure of the verification of the MAC of the configuration certification message (S26 in FIG. 5). When the verification of the MAC of the configuration proof message fails, an error message indicating that the verification of the MAC has failed is returned to the computer 11 and the procedure is terminated.

USBトークン10のスマートカード用ICチップは、構成証明メッセージのMACの検証に成功すると、デジタル署名秘密鍵を用い、定められたデジタル署名生成アルゴリズム(例えば、PKCS#1など)に従い、構成証明メッセージのデジタル署名を生成し、生成したデタル署名をコンピュータ11に返信する(図5のS27)。   When the smart card IC chip of the USB token 10 succeeds in verifying the MAC of the configuration certification message, the smart token IC chip uses the digital signature private key and follows the predetermined digital signature generation algorithm (for example, PKCS # 1). A digital signature is generated, and the generated digital signature is returned to the computer 11 (S27 in FIG. 5).

コンピュータ11は、USBトークン10のスマートカード用ICチップから、構成証明メッセージのデジタル署名を受信すると、インターネット2を介して、構成証明メッセージとデジタル署名を完全性検証サーバ12に送信する(図5のS28)。   When receiving the digital signature of the configuration certification message from the smart card IC chip of the USB token 10, the computer 11 transmits the configuration certification message and the digital signature to the integrity verification server 12 via the Internet 2 (FIG. 5). S28).

構成証明メッセージとデジタル署名を完全性検証サーバ12が受信すると、完全性検証サーバ12は、完全性検証サーバ12が記憶しているデジタル署名公開鍵を用いて、定められたアルゴリズムに従い、構成証明メッセージのデジタル署名を検証することで、デジタル署名を生成したUSBトークン10の正当性を検証する(図5のS29)。   When the integrity verification server 12 receives the configuration certification message and the digital signature, the integrity verification server 12 uses the digital signature public key stored in the integrity verification server 12 in accordance with a predetermined algorithm. By verifying the digital signature, the validity of the USB token 10 that generated the digital signature is verified (S29 in FIG. 5).

完全性検証サーバ12は、構成証明メッセージのデジタル署名の検証に成功すると、完全性検証サーバ12は、完全性検証サーバ12のメモリに保持されている乱数Rc及び乱数Rs、並びに、ハードディスクなどに記憶しているハッシュ値の期待値を参照し、構成証明メッセージに含まれる乱数Rc、乱数Rs及びハッシュ値が正しい値であるか確認することで、構成証明メッセージの正当性を検証し,プラットフォーム完全性検証を終了する(図5のS30)。   When the integrity verification server 12 succeeds in verifying the digital signature of the configuration certification message, the integrity verification server 12 stores the random number Rc and the random number Rs held in the memory of the integrity verification server 12 and the hard disk or the like. The validity of the configuration proof message is verified by referring to the expected value of the hash value being checked, and confirming whether the random number Rc, the random number Rs, and the hash value included in the configuration proof message are correct, and the platform integrity The verification ends (S30 in FIG. 5).

ここから,図1で図示したプラットフォーム完全性検証システム1を構成するコンピュータ11、USBトークン10及び完全性検証サーバ12について説明する。   From here, the computer 11, the USB token 10, and the integrity verification server 12 which comprise the platform integrity verification system 1 shown in FIG. 1 are demonstrated.

図6は、携帯型記憶デバイスであるUSBトークン10のブロック図である。上述したように,図1で図示したUSBトークン10は、スマートカード用ICチップ10aとフラッシュメモリ10bが統合されたデバイスで,USBトークン10のスマートカード用ICチップ10aには,図5のS25からS27を実行するデジタル署名コマンド100と,デジタル署名コマンド100が利用する暗号鍵としてMAC鍵102とデジタル署名秘密鍵101が記憶されている。   FIG. 6 is a block diagram of the USB token 10 which is a portable storage device. As described above, the USB token 10 illustrated in FIG. 1 is a device in which the smart card IC chip 10a and the flash memory 10b are integrated, and the smart card IC chip 10a of the USB token 10 includes the S25 of FIG. The digital signature command 100 for executing S27, and the MAC key 102 and the digital signature private key 101 are stored as encryption keys used by the digital signature command 100.

また,USBトークン10のフラッシュメモリ10bには,図2及び図5で図示した手順をコンピュータ11に実行させるためのシンクライアントOS104のイメージ(バイトコード)が記憶されている。   Also, the flash memory 10b of the USB token 10 stores an image (byte code) of the thin client OS 104 for causing the computer 11 to execute the procedure illustrated in FIGS.

このシンクライアントOS104には、図5のS20,S22,S23,S24及びS28を実行し,シンクライアントOS104のイメージのハッシュ値を演算する機能を備えたコンピュータプログラムである計測ソフトウェア105と,図2のS7及びS9を実行し,完全性検証サーバ12から送信される追加プログラムをシンクライアントOSに適用する追加プログラム用ソフトウェア107が含まれ、更に、計測ソフトウェアにはMAC鍵106がハードコードされている。   The thin client OS 104 executes S20, S22, S23, S24, and S28 in FIG. 5 to execute measurement software 105, which is a computer program having a function of calculating the hash value of the image of the thin client OS 104, and FIG. Additional program software 107 that executes S7 and S9 and applies the additional program transmitted from the integrity verification server 12 to the thin client OS is included, and the MAC key 106 is hard-coded in the measurement software.

図7は、シンクライアント端末として利用されるコンピュータ11のブロック図で、図7(a)は機能ブロック図、図7(b)はハードウェアブロック図である。   7 is a block diagram of the computer 11 used as a thin client terminal. FIG. 7A is a functional block diagram and FIG. 7B is a hardware block diagram.

図7(a)に図示しているように、プラットフォーム完全性検証をするために、コンピュータ11には、シンクライアントOSを起動させるためのブート手段110が備えられている。   As shown in FIG. 7A, in order to verify the platform integrity, the computer 11 is provided with a boot unit 110 for starting the thin client OS.

図7(b)に図示したようにコンピュータ11は、ハードウェア資源として、中央演算装置11a(CPU: Central Processing Unit)と、コンピュータ11のメインメモリであるRAM11b(RAM: Random Access Memory)と、BIOSが実装されるROM11c(ROM: Read-Only Memory)と、USB機器と通信するためのUSBインターフェース11dと、ネットワーク通信するためのネットワークインターフェース11eと、補助記憶装置として大容量のデータ記憶装置であるハードディスク11fを備え、ハードディスク11fには、シンクライアントシステムで利用されないときにブートされるOS、例えば、マイクロソフト社のWINDOWS(登録商標)が記憶されている。   As shown in FIG. 7B, the computer 11 includes, as hardware resources, a central processing unit 11a (CPU: Central Processing Unit), a RAM 11b (RAM: Random Access Memory) that is a main memory of the computer 11, and a BIOS. ROM 11c (ROM: Read-Only Memory), a USB interface 11d for communicating with a USB device, a network interface 11e for network communication, and a hard disk that is a large-capacity data storage device as an auxiliary storage device The hard disk 11f stores an OS that is booted when not used in the thin client system, for example, WINDOWS (registered trademark) of Microsoft Corporation.

コンピュータ11のブート手段110は、コンピュータ11にUSBトークン10が装着されたことを検知すると、USBトークン10に記憶されたシンクライアントOSのイメージをRAM11bに展開し、シンクライアントOSを起動させる手段で、ブート手段110は,コンピュータ11のハードディスク11fに記憶されているOSの一つの機能や、ROM11cに実装されるBIOSの機能などで実現される。   When the boot means 110 of the computer 11 detects that the USB token 10 is attached to the computer 11, the boot means 110 expands the image of the thin client OS stored in the USB token 10 on the RAM 11b, and starts the thin client OS. The boot means 110 is realized by one function of the OS stored in the hard disk 11f of the computer 11 or a BIOS function mounted on the ROM 11c.

コンピュータ11のブート手段110によって,シンクライアントOSの計測ソフトウェアがコンピュータ11上で起動すると,コンピュータ11は,図5のS20,S22,S23,S24及びS28を実行する。すなわち,コンピュータ11は,コンピュータ11のRAM11bに展開されたシンクライアントOSのイメージのハッシュ値を演算した後、ハッシュ値を含む構成証明メッセージを生成する。   When the measurement software of the thin client OS is activated on the computer 11 by the boot means 110 of the computer 11, the computer 11 executes S20, S22, S23, S24 and S28 of FIG. That is, the computer 11 calculates a hash value of the image of the thin client OS developed in the RAM 11b of the computer 11, and then generates a configuration proof message including the hash value.

そして、コンピュータ11は、シンクライアントOSにハードコートされたMAC鍵を用いて、構成証明メッセージの認証コードとしてMAC(MAC: Message Authentication Code)を演算し、構成証明メッセージと認証コードをUSBトークン10に送信することで、構成証明メッセージのデジタル署名の生成をUSBトークン10に要求し、構成証明メッセージのデジタル署名がUSBトークン10から送信されると、構成証明メッセージとデジタル署名を完全性検証サーバ12に送信する。   Then, the computer 11 calculates a MAC (MAC: Message Authentication Code) as an authentication code of the configuration certification message using the MAC key hard-coated on the thin client OS, and sends the configuration certification message and the authentication code to the USB token 10. By transmitting the request, the USB token 10 is requested to generate a digital signature of the configuration certification message. When the digital signature of the configuration certification message is transmitted from the USB token 10, the configuration verification message and the digital signature are sent to the integrity verification server 12. Send.

なお、コンピュータ11が,完全性検証サーバ12が生成した乱数Rsを構成証明メッセージに含ませると、構成証明メッセージが毎回変わることになるため、同じ構成証明メッセージを不正に再利用することを防止できる。   If the computer 11 includes the random number Rs generated by the integrity verification server 12 in the configuration proof message, the configuration proof message changes every time, so that the same configuration proof message can be prevented from being reused illegally. .

また、コンピュータ11が構成メッセージを生成する前に乱数Rcを生成し、生成した乱数Rcを完全性検証サーバ12に送信しておき、構成証明メッセージに乱数Rcを含ませることで、完全性検証サーバ12は、構成証明メッセージをコンピュータ11から受信したときに、間違いなく、プラットフォーム完全性を検証するコンピュータ11から送信された構成証明メッセージであることが判断できるようになる。   In addition, the computer 11 generates a random number Rc before generating the configuration message, transmits the generated random number Rc to the integrity verification server 12, and includes the random number Rc in the configuration proof message, so that the integrity verification server When the configuration proof message 12 is received from the computer 11, it is possible to determine that the proof message 12 is a configuration proof message transmitted from the computer 11 that verifies the platform integrity.

更に,シンクライアントOSの追加プログラム用ソフトウェアが起動すると,コンピュータ11は,図2のS7及びS9を実行する。すなわち,コンピュータ11は,コンピュータ11では標準的なOS(例えば,Windows(登録商標))などのパッチコマンドと同様に,完全性検証サーバ12から追加プログラムを受信すると,該追加プログラムをシンクライアントOSに組み込む形式で,コンピュータ11のメモリにロードする。   Furthermore, when the additional program software of the thin client OS is activated, the computer 11 executes S7 and S9 in FIG. That is, when the computer 11 receives an additional program from the integrity verification server 12 in the same way as a patch command of a standard OS (for example, Windows (registered trademark)) in the computer 11, the additional program is transferred to the thin client OS. It is loaded into the memory of the computer 11 in the form of incorporation.

図8は、インターネット2を介してコンピュータ11と接続されている完全性検証サーバ12のブロック図である。図8(a)は機能ブロック図、図8(b)はハードウェアブロック図である。   FIG. 8 is a block diagram of the integrity verification server 12 connected to the computer 11 via the Internet 2. FIG. 8A is a functional block diagram, and FIG. 8B is a hardware block diagram.

図8(a)に図示しているように、完全性検証サーバ12は,デジタル署名公開鍵121を利用して,構成メッセージのデジタル署名の検証する機能と,ハッシュ値の期待値122を利用して,構成証明メッセージの本体を検証する機能を備えたプラットフォーム完全性検証手段120と、プラットフォーム完全性検証に成功したコンピュータ11に対し、追加プログラムを送信する追加プログラム追加手段123を備え、これらの手段は,完全性検証サーバ12を各手段として機能させるためのコンピュータプログラムで実現される。   As shown in FIG. 8A, the integrity verification server 12 uses the digital signature public key 121 to verify the digital signature of the configuration message and the expected value 122 of the hash value. The platform integrity verification means 120 having the function of verifying the body of the configuration proof message, and the additional program addition means 123 that transmits the additional program to the computer 11 that has succeeded in the platform integrity verification. Is realized by a computer program for causing the integrity verification server 12 to function as each means.

図8(b)に図示しているように、完全性検証サーバ12は、ハードウェア資源として、CPU12aと、完全性検証サーバ12のメインメモリであるRAM12bと、BIOSが実装されるROM12cと、ネットワーク通信するためのネットワークインターフェース12dと、補助記憶装置として大容量のデータ記憶装置であるハードディスクを備え、ハードディスク12eには、コンピュータ11に送信する可能性のある様々な追加プログラムが記憶されている。   As shown in FIG. 8B, the integrity verification server 12 includes, as hardware resources, a CPU 12a, a RAM 12b that is a main memory of the integrity verification server 12, a ROM 12c on which a BIOS is mounted, a network A network interface 12d for communication and a hard disk which is a large-capacity data storage device as an auxiliary storage device are provided, and various additional programs that may be transmitted to the computer 11 are stored in the hard disk 12e.

完全性検証サーバ12のプラットフォーム完全性検証手段120は、図5のS21,S29及びS30を実行する手段で,コンピュータ11から、構成証明メッセージとデジタル署名を受信すると作動し、デジタル署名公開鍵121を用いて、定められたデジタル署名検証アルゴリズムに従い、構成証明メッセージのデジタル署名を検証することで、デジタル署名を生成したUSBトークン10の正当性を検証する。   The platform integrity verification means 120 of the integrity verification server 12 is a means for executing S21, S29, and S30 of FIG. 5 and operates upon receiving a configuration certification message and a digital signature from the computer 11, and obtains the digital signature public key 121. The validity of the USB token 10 that has generated the digital signature is verified by verifying the digital signature of the configuration certification message according to the predetermined digital signature verification algorithm.

そして,プラットフォーム完全性検証手段120は、シンクライアントOSのハッシュ値の期待値122を参照し、構成証明メッセージに含まれるハッシュ値が正しい内容であるか確認することで、構成証明メッセージの正当性を検証する。   Then, the platform integrity verification unit 120 refers to the expected value 122 of the hash value of the thin client OS and confirms whether the hash value included in the configuration certification message is correct, thereby verifying the validity of the configuration certification message. Validate.

なお、構成証明メッセージが乱数Rc及び乱数Rsを含んでいるとき、プラットフォーム完全性検証手段120は、シンクライアントOSのハッシュ値の期待値122に加え、RAMに記憶している乱数Rc及び乱数Rsを参照して、構成証明メッセージの正当性を検証する。   When the configuration certification message includes the random number Rc and the random number Rs, the platform integrity verification unit 120 uses the random number Rc and the random number Rs stored in the RAM in addition to the expected value 122 of the hash value of the thin client OS. The validity of the configuration certification message is verified by referring to it.

完全性検証サーバ12の追加プログラム追加手段123は,図2のS8を実行する手段で,プラットフォーム完全性検証手段120がプラットフォーム完全性検証に成功し,シンクライアントサーバ13或いはシンクライアントサーバ14を利用するために必要な追加プログラムの特定情報をコンピュータ11から受信すると作動し,ハードディスク12eに記憶されている追加プログラムの中から,該特定情報で特定される追加プログラムを特定し,該追加プログラムを該コンピュータ11に送信する手段である。   The additional program adding means 123 of the integrity verification server 12 is a means for executing S8 in FIG. 2. The platform integrity verification means 120 succeeds in the platform integrity verification and uses the thin client server 13 or the thin client server 14. It operates when it receives the specific information of the additional program necessary for this purpose from the computer 11, identifies the additional program specified by the specific information from the additional programs stored in the hard disk 12e, 11 is a means for transmitting to the terminal 11.

なお、本発明は、これまで説明した実施の形態に限定されることなく、種々の変形や変更が可能である。例えば,図1で図示したプラットフォーム完全性検証システム1においては,セキュリティトークンの機能と携帯型記憶デバイスの機能を兼ね備えたUSBトークン10を利用していたが,セキュリティトークンと携帯型記憶デバイスを個別の装置とすることもできる。   The present invention is not limited to the embodiments described so far, and various modifications and changes can be made. For example, in the platform integrity verification system 1 illustrated in FIG. 1, the USB token 10 having both the security token function and the portable storage device function is used. However, the security token and the portable storage device are separately used. It can also be a device.

このとき,ユーザは,セキュリティトークンとして,USBトークン10のスマートカード用ICチップ10aに備えられたデジタル署名コマンド100,MAC鍵102及びデジタル署名秘密鍵101を記憶したICカードを所持し,更に,携帯型記憶デバイスとして,USBトークン10のフラッシュメモリ10bに記憶していたシンクライアントOSを記憶したUSBメモリを所持し,シンクライアント端末として利用するコンピュータ11に該ICカードと通信するためのICカードリーダを備えさせる。   At this time, the user possesses an IC card storing the digital signature command 100, the MAC key 102, and the digital signature private key 101 provided in the smart card IC chip 10a of the USB token 10 as a security token. As a type storage device, a USB memory storing a thin client OS stored in the flash memory 10b of the USB token 10 is possessed, and an IC card reader for communicating with the IC card is provided to a computer 11 used as a thin client terminal. Prepare.

プラットフォーム完全性検証システムを説明する図。The figure explaining a platform integrity verification system. プラットフォーム完全性検証システムで実行される手順を示したフロー図。The flowchart which showed the procedure performed with a platform integrity verification system. コンピュータのメモリに展開されるシンクライアントOSを説明する図。The figure explaining thin client OS expand | deployed to the memory of a computer. 追加プログラムが適用された後のシンクライアントOSを説明する図。The figure explaining thin client OS after an additional program is applied. プラットフォーム完全性検証処理の手順を示したフロー図。The flowchart which showed the procedure of the platform integrity verification process. USBトークンのブロック図。The block diagram of a USB token. コンピュータのブロック図。The block diagram of a computer. 完全性検証サーバのブロック図。The block diagram of an integrity verification server.

符号の説明Explanation of symbols

1 プラットフォーム完全性検証システム
10 USBトークン
11 コンピュータ
12 完全性検証サーバ
13,14 シンクライアントサーバ
DESCRIPTION OF SYMBOLS 1 Platform integrity verification system 10 USB token 11 Computer 12 Integrity verification server 13, 14 Thin client server

Claims (3)

シンクライアント端末として利用されるコンピュータと、シンクライアントOS(OS: Operating System)のイメージが記憶された携帯型記憶デバイスと,外部から送信されたメッセージのデジタル署名を生成する手段を備えたセキュリティトークンと、インターネットを介して前記コンピュータと接続された完全性検証サーバとから、少なくとも構成されたプラットフォーム完全性検証システムであって、
前記携帯型記憶デバイスに記憶する前記シンクライアントOSは,前記コンピュータのメモリに展開された前記シンクライアントOSのイメージのハッシュ値を演算した後,前記ハッシュ値を含む構成証明メッセージのデジタル署名を前記セキュリティトークンに生成させ、前記構成証明メッセージと前記構成証明メッセージのデジタル署名を前記完全性検証サーバに送信する計測ソフトウェアと、前記コンピュータのメモリに展開された前記シンクライアントOSに前記完全性検証サーバから送信された追加プログラムを適用する追加プログラム用ソフトウェアを含み,
前記完全性検証サーバは、前記シンクライアントOSが起動した前記コンピュータから送信された前記構成証明メッセージのデジタル署名と、前記構成証明メッセージの本体を検証するプラットフォーム完全性検証手段と,前記プラットフォーム完全性検証手段が前記構成証明メッセージの本体とデジタル署名の検証に成功した後,該コンピュータ上で起動している前記シンクライアントOSに適用する前記追加プログラムを該コンピュータに送信する追加プログラム送信手段を備え,
前記携帯型記憶デバイスが前記コンピュータにマウントされたとき,前記シンクライアントOSを該コンピュータ上で起動させるように構成されていることを特徴とするプラットフォーム完全性検証システム。
A computer used as a thin client terminal; a portable storage device in which an image of a thin client OS (OS: Operating System) is stored; and a security token having means for generating a digital signature of a message transmitted from outside A platform integrity verification system configured at least from an integrity verification server connected to the computer via the Internet,
The thin client OS stored in the portable storage device calculates a hash value of the image of the thin client OS expanded in the memory of the computer, and thereafter, a digital signature of a configuration certification message including the hash value is added to the security message. Measurement software for generating a token and transmitting the configuration certification message and the digital signature of the configuration certification message to the integrity verification server, and transmission from the integrity verification server to the thin client OS deployed in the memory of the computer Including additional program software that applies the specified additional program,
The integrity verification server includes a digital signature of the configuration certification message transmitted from the computer activated by the thin client OS, platform integrity verification means for verifying a body of the configuration certification message, and the platform integrity verification. An additional program transmitting means for transmitting the additional program to be applied to the thin client OS running on the computer after the means has successfully verified the main body of the configuration certification message and the digital signature;
A platform integrity verification system configured to activate the thin client OS on the computer when the portable storage device is mounted on the computer.
請求項1に記載のプラットフォーム完全性検証システムにおいて、前記完全性検証サーバから前記コンピュータに送信される前記追加プログラムは,シンクライアントサーバにリモートアクセスするために必要なアプリケーションであって,前記シンクライアントOSに含まれる前記追加プログラム用ソフトウェアは,アクセス要求する前記シンクライアントサーバの識別情報を送信するプログラムで,前記完全性検証サーバの前記追加プログラム送信手段は,前記コンピュータから送信された前記識別情報で特定される前記追加プログラムを前記コンピュータに送信することを特徴とするプラットフォーム完全性検証システム。   The platform integrity verification system according to claim 1, wherein the additional program transmitted from the integrity verification server to the computer is an application necessary for remote access to a thin client server, and the thin client OS The additional program software included in the program is a program for transmitting identification information of the thin client server that requests access, and the additional program transmission means of the integrity verification server is specified by the identification information transmitted from the computer. A platform integrity verification system, wherein the additional program to be transmitted is transmitted to the computer. シンクライアント端末として利用されるコンピュータと、シンクライアントOS(OS: Operating System)のイメージが記憶された携帯型記憶デバイスと,外部から送信されたメッセージのデジタル署名を生成する手段を備えたセキュリティトークンと、インターネットワークを介して前記コンピュータと接続された完全性検証サーバとから、少なくとも構成されたプラットフォーム完全性検証方法であって、
前記コンピュータを用いて,前記コンピュータにマウントされた前記携帯型記憶デバイスに記憶された前記シンクライアントOSを該コンピュータ上で起動させるステップ,
前記シンクライアントOSが起動した前記コンピュータを用いて,前記コンピュータのメモリに展開された前記シンクライアントOSのイメージのハッシュ値を演算した後,前記ハッシュ値を含む構成証明メッセージのデジタル署名を前記セキュリティトークンに生成させ、前記構成証明メッセージと前記構成証明メッセージのデジタル署名を前記完全性検証サーバに送信するステップ,
前記完全性検証サーバを用いて、前記シンクライアントOSが起動した前記コンピュータから送信された前記構成証明メッセージのデジタル署名と、前記構成証明メッセージの本体を検証するステップ,
前記完全性検証サーバを用いて,該コンピュータ上で起動している前記シンクライアントOSに適用する前記追加プログラムを該コンピュータに送信するステップ,
前記シンクライアントOSが起動した前記コンピュータを用いて,前記コンピュータのメモリに展開された前記シンクライアントOSに前記完全性検証サーバから送信された追加プログラムを適用するステップ,
が実行されることを特徴とするプラットフォーム完全性検証方法。
A computer used as a thin client terminal; a portable storage device in which an image of a thin client OS (OS: Operating System) is stored; and a security token having means for generating a digital signature of a message transmitted from outside A platform integrity verification method configured at least from an integrity verification server connected to the computer via an internetwork,
Starting the thin client OS stored in the portable storage device mounted on the computer using the computer on the computer;
After calculating the hash value of the image of the thin client OS developed in the memory of the computer using the computer on which the thin client OS is started, the digital signature of the configuration certification message including the hash value is used as the security token. Generating the configuration certification message and the digital signature of the configuration certification message to the integrity verification server;
Using the integrity verification server to verify the digital signature of the configuration certification message transmitted from the computer on which the thin client OS is started and the body of the configuration certification message;
Sending the additional program to be applied to the thin client OS running on the computer using the integrity verification server;
Applying the additional program transmitted from the integrity verification server to the thin client OS deployed in the memory of the computer using the computer on which the thin client OS is started;
A platform integrity verification method characterized by:
JP2008303189A 2008-11-27 2008-11-27 Platform integrity verification system and method Expired - Fee Related JP5288173B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008303189A JP5288173B2 (en) 2008-11-27 2008-11-27 Platform integrity verification system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008303189A JP5288173B2 (en) 2008-11-27 2008-11-27 Platform integrity verification system and method

Publications (2)

Publication Number Publication Date
JP2010128818A true JP2010128818A (en) 2010-06-10
JP5288173B2 JP5288173B2 (en) 2013-09-11

Family

ID=42329161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008303189A Expired - Fee Related JP5288173B2 (en) 2008-11-27 2008-11-27 Platform integrity verification system and method

Country Status (1)

Country Link
JP (1) JP5288173B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021002204A (en) * 2019-06-21 2021-01-07 ファナック株式会社 Validity confirming apparatus

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001175467A (en) * 1999-12-07 2001-06-29 Kizna.Com Inc Method for ensuring security of computer and medium for recording program thereof
JP2006221566A (en) * 2005-02-14 2006-08-24 Dainippon Printing Co Ltd Caring service support system using network
JP2007299136A (en) * 2006-04-28 2007-11-15 Ntt Data Corp Network access control system, terminal, address application device, terminal system authentication device, network access control method and computer program
JP2007310509A (en) * 2006-05-16 2007-11-29 Nippon Telegraph & Telephone East Corp Remote access system and program
WO2008129773A1 (en) * 2007-03-30 2008-10-30 Access Co., Ltd. Portable communication terminal and program executed by portable communication terminal
JP2008276690A (en) * 2007-05-07 2008-11-13 Ize:Kk Development system, server for development system, and development method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001175467A (en) * 1999-12-07 2001-06-29 Kizna.Com Inc Method for ensuring security of computer and medium for recording program thereof
JP2006221566A (en) * 2005-02-14 2006-08-24 Dainippon Printing Co Ltd Caring service support system using network
JP2007299136A (en) * 2006-04-28 2007-11-15 Ntt Data Corp Network access control system, terminal, address application device, terminal system authentication device, network access control method and computer program
JP2007310509A (en) * 2006-05-16 2007-11-29 Nippon Telegraph & Telephone East Corp Remote access system and program
WO2008129773A1 (en) * 2007-03-30 2008-10-30 Access Co., Ltd. Portable communication terminal and program executed by portable communication terminal
JP2008276690A (en) * 2007-05-07 2008-11-13 Ize:Kk Development system, server for development system, and development method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021002204A (en) * 2019-06-21 2021-01-07 ファナック株式会社 Validity confirming apparatus
JP7227086B2 (en) 2019-06-21 2023-02-21 ファナック株式会社 Validation equipment

Also Published As

Publication number Publication date
JP5288173B2 (en) 2013-09-11

Similar Documents

Publication Publication Date Title
JP4993122B2 (en) Platform integrity verification system and method
US9871821B2 (en) Securely operating a process using user-specific and device-specific security constraints
EP1491983B1 (en) Three Way Validation and Authentication of Boot Files Transmitted from Server to Client
JP5802337B2 (en) Out-of-band remote authentication
US8549592B2 (en) Establishing virtual endorsement credentials for dynamically generated endorsement keys in a trusted computing platform
US8560857B2 (en) Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable program
EP2550769B1 (en) System and method for remote maintenance of multiple clients in an electronic network using virtual machines
JP4410821B2 (en) Verifying the binding of the initial trusted device to the protected processing system
US8789037B2 (en) Compatible trust in a computing device
Kim et al. Predictability of android openssl's pseudo random number generator
US20090319793A1 (en) Portable device for use in establishing trust
US20080022380A1 (en) Method of patching applications on small resource-constrained secure devices
US20150215313A1 (en) Authentication system and method
CN111460410A (en) Server login method, device and system and computer readable storage medium
KR20190062797A (en) User terminal for using cloud service, integrated security management server of user terminal and method thereof
JP5288173B2 (en) Platform integrity verification system and method
JP6343928B2 (en) Portable terminal, authentication system, authentication method, and authentication program
CN111953477A (en) Terminal equipment, generation method of identification token of terminal equipment and interaction method of client
US9633207B2 (en) Method for downloading at least one software component onto a computing device, and associated computer program product, computing device and computer system
JP5212718B2 (en) Platform integrity verification system and method
JP5212721B2 (en) Remote access management system and method
CN117453343A (en) Virtual machine measurement and secret calculation authentication method, device, system and storage medium
JP6398308B2 (en) Information processing system, information processing method, and program
CN114817909A (en) Security defense method, device, equipment and storage medium
JP2010198139A (en) Platform integrity verification system and method, and security token

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110920

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130417

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130509

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130522

R150 Certificate of patent or registration of utility model

Ref document number: 5288173

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees