JP2011100329A - Computer - Google Patents

Computer Download PDF

Info

Publication number
JP2011100329A
JP2011100329A JP2009254921A JP2009254921A JP2011100329A JP 2011100329 A JP2011100329 A JP 2011100329A JP 2009254921 A JP2009254921 A JP 2009254921A JP 2009254921 A JP2009254921 A JP 2009254921A JP 2011100329 A JP2011100329 A JP 2011100329A
Authority
JP
Japan
Prior art keywords
program
hard disk
area
authentication
mbr
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
JP2009254921A
Other languages
Japanese (ja)
Other versions
JP5355351B2 (en
Inventor
Yoshiki Samejima
吉喜 鮫島
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.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions 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 Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2009254921A priority Critical patent/JP5355351B2/en
Publication of JP2011100329A publication Critical patent/JP2011100329A/en
Application granted granted Critical
Publication of JP5355351B2 publication Critical patent/JP5355351B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a computer for detecting any virus infecting a system area such as MBR (Master Boot Record) before an OS starts, and restricting (or prohibiting) the use of the computer in an environment that does not satisfy environmental conditions set in advance. <P>SOLUTION: In a PC with an encryption hardware module and an encryption hard disk which are defined by TCG (Trusted Computing Group), a BIOS (Basic Input/Output System) calculates a hash value of a program in an accessible area without authentication of the encryption hardware, stores the hash value in the encryption hardware module and supplies it to the program. The program performs an authentication process for the hard disk, and performs a virus check after the authentication. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、Trusted Computing Group (TCG)のStorage WGの標準に基づいたハードディスクを搭載したパーソナルコンピュータ(以下、PC)のウィルス検知と利用制限に関するものである。   The present invention relates to virus detection and use restriction of a personal computer (hereinafter referred to as a PC) equipped with a hard disk based on the Storage WG standard of the Trusted Computing Group (TCG).

コンピュータウィルスの一種にMaster Boot Recode (MBR)に感染するタイプがある。
MBRはコンピュータの起動時に処理されるプログラムであり、OSも既存のウィルス対策プログラムも起動しておらず、一般にウィルス検知が困難である。解決方法の1つとして、特許文献1にあるようなウィルス駆除方法がある。
一方、PCでのセキュリティを実現するためのハードウェアとして、セキュリティ関連の業界標準を定めるTrusted Computing Group (TCG)が定める非特許文献1に挙げるような暗号化を行うセキュリティチップTrusted Platform Module (TPM)の業界標準や非特許文献2にあげるような暗号化ディスクの業界標準がある。
One type of computer virus is infected with Master Boot Recode (MBR).
The MBR is a program that is processed when the computer is started, and neither the OS nor the existing anti-virus program is activated, and it is generally difficult to detect viruses. As one of the solutions, there is a virus removal method as disclosed in Patent Document 1.
On the other hand, as a hardware for realizing security on a PC, a security chip Trusted Platform Module (TPM) that performs encryption as listed in Non-Patent Document 1 defined by the Trusted Computing Group (TCG) that defines security-related industry standards There are industry standards for encryption disks and non-patent literature 2 for encryption disks.

特開平11-085503号公報Japanese Patent Laid-Open No. 11-085503

Trusted Computing Group, TCG Specification, Architecture Overview, Specification, Revision 1.4, 2nd August 2007,p6-p19Trusted Computing Group, TCG Specification, Architecture Overview, Specification, Revision 1.4, 2nd August 2007, p6-p19

Trusted Computing Group, TCG Storage Architecture, Core Specification, Specification Version 1.0, Revision 0.9, May 24, 2007, p71-p77Trusted Computing Group, TCG Storage Architecture, Core Specification, Specification Version 1.0, Revision 0.9, May 24, 2007, p71-p77

上記特許文献1に開示された技術にあってはゲートやROMなどを含む特別なハードウェアを用いる必要があり、導入やコストに課題が残る。またウィルス検知の方法として、ディスク装置にあるウィルスチェックプログラムを利用するとあるが、ウィルスの攻撃方法によっては、本プログラムを破壊したり起動を妨害したりすることも考えられるので、必ずしも有効とはいえない。
また、上記非特許文献1や2に開示された技術にあっては、暗号化ディスクを用いることや特別なハードウェアであるセキュリティチップを用いてプログラムの処理を引き継ぐことが記載されているが、MBRに感染したウィルスをどのようにして検出するかは具体的に記載されていない。
In the technique disclosed in Patent Document 1, it is necessary to use special hardware including a gate, a ROM, and the like, and problems remain in introduction and cost. As a virus detection method, a virus check program in the disk unit is used. However, depending on the virus attack method, this program may be destroyed or startup may be hindered. Absent.
Further, in the techniques disclosed in Non-Patent Documents 1 and 2 described above, it is described that the encryption disk is used or the processing of the program is taken over using a security chip that is special hardware. It is not specifically described how to detect a virus infected with MBR.

本発明の目的は、OS(オペレーティングシステム)が起動する前にMBRなどのシステム領域に感染しているウィルスを検出することができるコンピュータを提供することにある。
また、ウィルスの検出と共に予め設定した環境条件以外の環境でのコンピュータの使用を制限(あるいは禁止)することができるコンピュータを提供することにある。
An object of the present invention is to provide a computer that can detect a virus that infects a system area such as MBR before an OS (operating system) is started.
Another object of the present invention is to provide a computer capable of restricting (or prohibiting) use of a computer in an environment other than preset environmental conditions together with detection of a virus.

上記目的を達成するために、本発明に係るコンピュータは、TCGが標準化しているTPMと呼ばれるセキュリティチップや暗号化ハードディスクを利用し、特別なハードウェアなしにMBRやOS、メモリなどのシステム領域に感染するウィルスをPC起動時に検知する。
具体的には、暗号化データを内部にある鍵で復号し、その復号したデータに含まれる条件値と内部レジスタの値が一致したときに復号結果を出力する暗号ハードウェアモジュールと、アクセスするプログラムが正規のプログラムと認証した後にアクセス可能になる第1の領域と認証なしにアクセス可能な第2の領域とに分かれたハードディスクを搭載したコンピュータにおいて、
コンピュータ起動時のプログラムが、上記ハードディスクの認証なしにアクセス可能な第2の領域のハッシュ値を計算し、前記暗号ハードウェアモジュールの内部レジスタに格納し、第2の領域のプログラムをメモリにロードして処理を引き渡し、処理を引き渡された第2の領域にあったプログラムがハードディスクに対して認証処理を行い、正規プログラムであるという認証を得た後に前記第1の領域にアクセスし、当該第1の領域にあるプログラムをメモリにロードすることを特徴とする。
また、前記第2の領域にあったプログラムが、プログラム中に含まれるパスワードをハードディスクに送ることによってハードディスクに対する認証処理を行うことを特徴とする。
また、前記第2の領域にあったプログラムが、当該プログラム中に含まれる暗号データを前記暗号ハードウェアモジュールに送り、当該暗号ハードウェアモジュールが内部にある鍵で前記暗号データを復号し、復号した条件値と内部レジスタに格納されている第2の領域のハッシュ値と比較し、一致した場合に復号データを出力し、その復号データを前記第2の領域にあったプログラムが受取り、復号データ中に含まれているパスワードをハードディスクに送ることによってハードディスクに対する認証処理を行うことを特徴とする。
また、前記第2の領域にあったプログラムが、当該プログラム中に含まれる暗号データを前記暗号ハードウェアモジュールに送り、当該暗号ハードウェアモジュールが内部にある鍵で前記暗号データを復号し、復号した条件値と内部レジスタに格納されている第2の領域のハッシュ値とを比較し、一致した場合に復号データに含まれる鍵を内部に保管し、この鍵のハンドルを出力し、前記第2の領域にあったプログラムが前記ハンドルを受け取り、このハンドルを元に暗号ハードウェアモジュール内にある鍵を使ってハードディスクに対する認証処理を行うことを特徴とする。
また、前記第2の領域にあったプログラムが、ハードディスクに対する認証後に前記第1の領域にあるプログラムのハッシュ値を計算し、前記暗号ハードウェアモジュールの内部レジスタに格納した後、当該該プログラムをメモリにロードして処理を引き渡し、処理を引き渡されたプログラムが、引き続き処理を行うことを特徴とする。
また、前記処理を引き渡されたプログラムが、前記第1の領域のウィルス検査を行うことを特徴とする。
また、前記処理を引き渡されたプログラムが、起動監視サーバに起動可否を問い合わせ、サーバにアクセスできない場合やアクセスできても否認された場合には、エラーを表示し、その後の処理を停止させることを特徴とする。
In order to achieve the above object, the computer according to the present invention uses a security chip called TPM and an encrypted hard disk standardized by TCG and can be used in a system area such as an MBR, an OS, and a memory without special hardware. Infected virus is detected when the PC is started.
Specifically, a cryptographic hardware module that decrypts encrypted data with an internal key, and outputs a decryption result when a condition value included in the decrypted data matches an internal register value, and a program to access In a computer equipped with a hard disk divided into a first area that can be accessed after authenticating with a legitimate program and a second area that can be accessed without authentication,
The computer startup program calculates the hash value of the second area accessible without authentication of the hard disk, stores it in the internal register of the cryptographic hardware module, and loads the second area program into the memory. The program in the second area to which the process has been delivered performs authentication processing on the hard disk, obtains authentication that it is a regular program, accesses the first area, and The program in the area is loaded into the memory.
Further, the program in the second area performs authentication processing on the hard disk by sending a password included in the program to the hard disk.
In addition, the program in the second area sends the encrypted data included in the program to the cryptographic hardware module, and the cryptographic hardware module decrypts the decrypted data with the key inside. The condition value and the hash value of the second area stored in the internal register are compared, and if they match, the decoded data is output, and the decoded data is received by the program in the second area, The authentication process for the hard disk is performed by sending the password included in the hard disk to the hard disk.
In addition, the program in the second area sends the encrypted data included in the program to the cryptographic hardware module, and the cryptographic hardware module decrypts the decrypted data with the key inside. The condition value and the hash value of the second area stored in the internal register are compared, and if they match, the key included in the decrypted data is stored inside, the handle of this key is output, and the second A program in the area receives the handle, and performs authentication processing on the hard disk using the key in the cryptographic hardware module based on the handle.
In addition, after the program in the second area calculates the hash value of the program in the first area after authenticating the hard disk and stores the hash value in the internal register of the cryptographic hardware module, the program is stored in the memory. The program that has been loaded and handed over and the process handed over continues processing.
Further, the program to which the process has been delivered performs a virus inspection of the first area.
In addition, the program handed over the processing inquires the activation monitoring server whether the activation is possible, and when the server cannot be accessed or is denied even if it can be accessed, an error is displayed and the subsequent processing is stopped. Features.

PC起動後、OSが起動される前に、BIOSによってハードディスクに対する認証なしにアクセス可能な領域であるShadow MBRにあるプログラムが起動され、本プログラムが改ざんされていないと検査した後に、ハードディスクのウィルス検索を行うため、OS起動前にMBR等のシステム領域がウィルスに感染していたとしてもOS起動前に確実にこれを検出し対策を実行することができる。
また、ハードディスクに対する認証を行えば、特定のTPMでしか認証できないことになり、ハードディスクを別のPCに取り付けて起動しようとしても認証が失敗し、起動もできなくなり、ディスクにアクセスできない。
さらに、データを復号する際にTPMの内部レジスタに記録されたShadow MBRのハッシュ値が正しいか否か検査するために、改竄されたShadow MBRではハードディスクに対する認証ができず、PC起動ができない。
さらに、ウィルス検査とは別に、利用環境条件を設定し、予め設定された利用環境条件と一致しない場合には起動制限を加えることで、時刻や回数、位置などでPCの起動を制限することができる。
After booting the PC, before the OS is booted, the program in the Shadow MBR, which is an area that can be accessed without authentication to the hard disk by the BIOS, is started, and after checking that this program has not been tampered with, the virus scan of the hard disk Therefore, even if a system area such as MBR is infected with a virus before the OS is started, it can be detected reliably and the countermeasure can be executed before the OS is started.
Further, if authentication is performed on the hard disk, authentication can be performed only with a specific TPM, and even if the hard disk is attached to another PC for activation, the authentication fails, the activation cannot be performed, and the disk cannot be accessed.
Further, in order to check whether or not the Shadow MBR hash value recorded in the internal register of the TPM is correct when decrypting the data, the altered Shadow MBR cannot authenticate the hard disk and cannot start the PC.
Furthermore, apart from virus inspection, the usage environment conditions are set, and if they do not match the preset usage environment conditions, the activation of the PC may be limited by time, number of times, location, etc. it can.

本発明の実施の形態を示す全体構成図である。1 is an overall configuration diagram showing an embodiment of the present invention. 本発明によるPCの起動後の動作を説明する説明図である。It is explanatory drawing explaining operation | movement after starting of PC by this invention. PC起動時のBIOSからMBRまでの処理を示すフローチャートである。It is a flowchart which shows the process from BIOS at the time of PC starting to MBR. TPMでパスワードを復号してハードディスクへの認証する場合の処理を示すフローチャートである。It is a flowchart which shows the process in the case of decoding a password by TPM and authenticating to a hard disk. TPMの公開鍵暗号機能を利用してハードディスクへの認証する場合の処理を示すフローチャートである。It is a flowchart which shows the process in the case of authenticating to a hard disk using the public key encryption function of TPM. PC起動制限を示すフローチャートである。It is a flowchart which shows PC starting restrictions.

以下、図示する実施の形態に基づいて本発明を詳細に説明する。
図1は、本発明を適用したPCの実施の形態を示す全体構成図である。
図1において、101は、PCのCPUである。102は、TPMである。通常、CPUと同じマザーボード上にあり、CPUやPCと一体と看做される。103は、メモリである。CPU101で実行されるプログラムは、メモリ103にロードされて、実行される。104は、BIOSのプログラムである。実体はROM上に記録されており、RAM(メモリ)103にロードされることなく、直接実行される。105は、ハードディスクである。本ハードディスクは非特許文献2に準拠しており、起動時にはShadow MBRを読み込むことしかできない。認証に成功すれば、Shadow MBRにアクセス可能なモードに移行したり、MBRを含むハードディスクにアクセス可能なモードに移行できたりする。
108はハードディスク105上の認証後の0番地にあるMBRである。通常MBRにはブートストラップコードやパーティションテーブルが保存されている。
109はハードディスク105上の認証前、起動直後の0番地にあるShadow MBRである。ここに本発明の中心となる処理プログラムが含まれている。
Hereinafter, the present invention will be described in detail based on illustrated embodiments.
FIG. 1 is an overall configuration diagram showing an embodiment of a PC to which the present invention is applied.
In FIG. 1, reference numeral 101 denotes a PC CPU. Reference numeral 102 denotes a TPM. Usually, it is on the same motherboard as the CPU, and is considered to be integrated with the CPU and PC. Reference numeral 103 denotes a memory. A program executed by the CPU 101 is loaded into the memory 103 and executed. Reference numeral 104 denotes a BIOS program. The entity is recorded on the ROM and is directly executed without being loaded into the RAM (memory) 103. Reference numeral 105 denotes a hard disk. This hard disk complies with Non-Patent Document 2 and can only read the Shadow MBR at startup. If the authentication is successful, the mode can be shifted to a mode that can access the Shadow MBR, or the mode can be shifted to a mode that can access the hard disk including the MBR.
Reference numeral 108 denotes an MBR at address 0 after authentication on the hard disk 105. Normally, the MBR stores a bootstrap code and a partition table.
Reference numeral 109 denotes a Shadow MBR at address 0 immediately after the activation on the hard disk 105. Here, the processing program which is the center of the present invention is included.

まず、実施の形態の動作を説明する前に、PCの起動、TPGが標準化しているTPM、Shadow MBRの概要を説明する。
PC起動の手順は、おおよそ以下の通りである。
電源がONになると、BIOS(Basic I/O system)がハードウェアをテスト、初期化し、MBRにあるプログラムをメモリ(RAM)にロードし、処理を引き継ぐ。処理を引き継いだプログラムはパーティションテーブルを探し、指定されたパーティションにあるブートセクタをメモリにロードし、処理を引き継ぐ。このブートセクタにあるプログラムはOSローダをロードし、処理を引き継ぐ。OSローダがOSをメモリにロードし、OSを起動する。
First, before explaining the operation of the embodiment, an outline of PC activation, TPM standardized by TPG, and Shadow MBR will be explained.
The procedure for starting up the PC is roughly as follows.
When the power is turned on, BIOS (Basic I / O system) tests and initializes the hardware, loads the program in the MBR into the memory (RAM), and takes over the processing. The program that took over the process searches the partition table, loads the boot sector in the designated partition into the memory, and takes over the process. The program in this boot sector loads the OS loader and takes over the processing. The OS loader loads the OS into the memory and starts the OS.

以上のように、PC起動時には、BIOS、MBRのプログラム、パーティションにあるプログラム、OSローダ、OSと、次々にプログラムがメモリにロードされ、制御が渡されていく。PC上のプログラムの信頼を確保するため、プログラムが次に制御を渡すプログラムのハッシュ値を計算、この結果をTPMにあるレジスタに記録して、制御を渡すように、TCGは規定している。この方法によれば、最初のBIOSにあるプログラムが信頼できれば、OSやアプリケーションも改竄のない信頼できるプログラムであることを確認できる。   As described above, when the PC is started up, the BIOS, MBR program, the program in the partition, the OS loader, and the OS are successively loaded into the memory, and control is transferred. In order to ensure the reliability of the program on the PC, the TCG stipulates that the program calculates the hash value of the program to which control next passes, records the result in a register in the TPM, and passes control. According to this method, if the program in the first BIOS can be trusted, it can be confirmed that the OS and applications are also reliable programs without falsification.

非特許文献2に記載されているセキュアなハードディスクのShadow MBRについて説明する。
Shadow MBRでは、PC起動時の初期状態にあるハードディスクのMBRと従来の意味でのMBRが異なっている。従来までのセキュアなハードディスクないしは暗号化ハードディスクは、PC起動にパスワード入力が必要であった。すなわちPC起動時にハードディスクにアクセスする認証用のパスワードが必要であり、利用者が入力していた。ハードディスク自体は暗号化されており、ハードディスクドライブに対する認証に成功しなければ、MBRを含めてディスクにアクセスできなかった。
一方、利用者認証方法としては、パスワードのほかに指紋他の生体認証を使った方法や暗号トークンを用いた方法が普及し始めており、ハードディスクに対する認証にも同様の方法が求められるようになると予想される。しかしながら、パスワード認証と比較して、生体認証や暗号トークンを使った認証は、処理が複雑でプログラムサイズが大きい。PC起動概要に示したとおり、ハードディスクにアクセスする前の処理はBIOSが行っているが、BIOSは複雑で大きな処理を行うにはプログラムのサイズの制限がある。
TCGの新規格である非特許文献2では、PC起動時のハードディスクが初期状態にある場合には、従来のMBRの位置には、サイズの大きいShadow MBRがあり、ハードディスクへの認証に成功して初めて本来のMBRにアクセスできるようになる。Shadow MBRに生体認証や暗号トークンの認証プログラムを格納しておき、BIOSから呼び出されて認証処理を実行、認証に成功した後に、本来のMBRにアクセス可能になり、従来通りの起動が可能となる。
A secure hard disk Shadow MBR described in Non-Patent Document 2 will be described.
In the Shadow MBR, the MBR of the hard disk in the initial state when the PC is started is different from the MBR in the conventional sense. Until now, a secure hard disk or encrypted hard disk required a password to start the PC. In other words, an authentication password is required to access the hard disk when the PC is started, and the user has entered it. The hard disk itself was encrypted, and the disk including MBR could not be accessed unless the hard disk drive was successfully authenticated.
On the other hand, as user authentication methods, methods using biometrics such as fingerprints and methods using cryptographic tokens in addition to passwords are beginning to become widespread, and it is expected that similar methods will be required for authentication against hard disks. Is done. However, in comparison with password authentication, biometric authentication and authentication using a cryptographic token are complicated in processing and large in program size. As shown in the outline of PC startup, the BIOS performs the process before accessing the hard disk. However, the BIOS is complicated and has a program size limit to perform a large process.
In Non-Patent Document 2, which is a new standard for TCG, when the hard disk at the time of PC startup is in the initial state, there is a Shadow MBR with a large size at the position of the conventional MBR, and authentication to the hard disk has succeeded. The original MBR can be accessed for the first time. The authentication program for biometric authentication and cryptographic token is stored in the Shadow MBR, and is called from the BIOS to execute the authentication process. After successful authentication, the original MBR can be accessed and can be started as usual. .

本発明は、上記の二つのTCGの技術を用いて、PC起動時に安全にウィルス検知を行う。すなわち、BIOSがShadow MBRのハッシュ値を計算し、TPMに格納し、Shadow MBR上のプログラムをメモリにロードして処理を渡す。Shadow MBRのプログラムはハードディスクへの認証処理を行い、本来のMBRにアクセス可能となった時点で、MBRを含めてウィルスの検索を行い、ウィルスが検知できなければ、従来どおりにMBRにあるプログラムをメモリにロード、処理を引き継ぐ。   The present invention uses the above two TCG technologies to safely detect a virus when the PC is started. That is, the BIOS calculates the hash value of the Shadow MBR, stores it in the TPM, loads the program on the Shadow MBR into the memory, and passes the processing. The Shadow MBR program performs authentication processing on the hard disk, and when the original MBR becomes accessible, it searches for viruses including the MBR. If no virus is detected, the program in the MBR is Load to memory and take over processing.

Shadow MBRにあるプログラムがハードディスクに対して行う認証処理の方法は複数ある。
第1の認証方法は、単純にパスワードがプログラム中に含まれており、これをハードディスクに送って認証する方法である。ハードディスクは、パスワードが正しければ、正しいPCないしはPC上のプログラムがアクセスしていると判断、本来のMBRを含めハードディスクにアクセスできるモードに移行する。
There are a plurality of authentication processing methods performed on the hard disk by the program in the Shadow MBR.
The first authentication method is a method in which a password is simply included in a program, which is sent to a hard disk for authentication. If the password is correct, the hard disk determines that the correct PC or program on the PC is accessing, and shifts to a mode in which the hard disk including the original MBR can be accessed.

第2の認証方法は、TPMのTPM_Unsealコマンドを使って暗号化されているパスワードをTPMで復号して、このパスワードを用いる方法である。この復号の際には、BIOSが計算し、TPMに格納したShadow MBRのハッシュ値が正しいかどうかをTPMが検査するため、改竄されたShadow MBRでは復号できず、引いてはハードディスに対する認証もできない。ハッシュ値が正しいか否かは、TPM_Sealコマンドでパスワードを暗号化する際に復号の条件となるPCRの状態を定めることができる。   The second authentication method is a method in which a password encrypted by using the TPM_Unseal command of the TPM is decrypted by the TPM and this password is used. At the time of this decryption, the TPM checks whether the hash value of the Shadow MBR calculated by the BIOS and stored in the TPM is correct. Therefore, the decrypted Shadow MBR cannot be decrypted. Can not. Whether or not the hash value is correct can determine the state of the PCR that is a condition for decryption when the password is encrypted with the TPM_Seal command.

第3の認証方法は、TPMや認証トークンにある署名機能を利用した公開鍵暗号ベースの方法である。署名に利用する鍵はTPM_CreateWrapKeyコマンドを使って予め暗号化してある。Shadow MBRは、TPM_LoadKey2コマンドを使って本データをTPM内で復号し、この鍵を使ってTPMが生成した署名をハードディスクへの認証に利用する。本コマンドも先のTPM_Unsealと同様、TPMがShadow MBRのハッシュ値が正しいか否か、すなわちShadow MBRに改竄がないか確認したうえで復号する。   The third authentication method is a public key encryption based method using a signature function in a TPM or an authentication token. The key used for the signature is previously encrypted using the TPM_CreateWrapKey command. The Shadow MBR uses the TPM_LoadKey2 command to decrypt this data in the TPM, and uses the signature generated by the TPM using this key for authentication to the hard disk. This command is also decrypted after confirming whether the hash value of the Shadow MBR is correct, that is, whether the Shadow MBR has been tampered with, as in the previous TPM_Unseal.

ウィルス検索の方法にも複数ある。
第1にShadow MBRがネットワーク機能を持ち、PC外部にあるウィルスパターンを参照しつつ、ハードディスクにウィルスがないか検索する方法である。
第2にハードディスクのうちシステム部分に当たる部分のハッシュ値を計算、Shadow MBRがもつハッシュ値ないしはネットワーク経由でPC外部にあるハッシュ値と比較、同じであれば改竄がなくウィルスに感染していないと看做す方法である。
第3に最新のウィルスを含まないシステムのイメージをネットワークからダウンロードしてハードディスクにコピーする方法である。
There are also multiple virus scanning methods.
First, the Shadow MBR has a network function and searches for a virus in the hard disk while referring to a virus pattern outside the PC.
Secondly, the hash value of the hard disk corresponding to the system part is calculated and compared with the hash value of the Shadow MBR or the hash value outside the PC via the network. It is a trick.
A third method is to download an image of a system that does not contain the latest virus from a network and copy it to a hard disk.

Shadow MBRを使えば、ウィルスないしは改竄検知の他に、Shadow MBRが社内のネットワーク上の特定のサーバにアクセスできるか否かテストし、アクセスできない場合にはPCが社外に持ち出されていると判断し、PC起動処理を停止することで、社外でのPC利用を防止できる。他にも、Shadow MBRが特定サーバにPC起動の可否を問い合わせる、または時刻サーバに問い合わせて自身に記録されている起動許可時間とつき合わせて起動許可時間外ならPC起動を停止することもできる。他にPC起動回数をShadow MBRに記録しておき起動制限をかけることもできる。   Using Shadow MBR, in addition to detecting viruses or tampering, it tests whether Shadow MBR can access a specific server on the in-house network. If it is not accessible, it judges that the PC has been taken outside the company. By stopping the PC activation process, it is possible to prevent the use of the PC outside the company. In addition, the Shadow MBR can inquire whether the PC can be activated to the specific server, or can be stopped if the activation time is outside the permitted activation time inquired to the time server and recorded in the activation permitted time. In addition, the number of PC activations can be recorded in the Shadow MBR to limit activation.

図2は、本発明によるコンピュータの動作の概要を示す説明図である。
まず、ハードディスク105の認証後にアクセス可能に成る第1の領域にはOSのブート処理を行うMBR108が記憶されている。また、ハードディスク105の認証なしにアクセス可能な第2の領域にはハードディスクの認証処理およびウィルス検出を行うShadow MBR109が記憶されている。
Shadow MBR109は、OSの起動前で、かつハードディスクの認証前に、BIOS104によって、制御スイッチ111及び110を経由して起動される。起動されたShadow MBR109は、ハードディスク認証用のパスワードやShadow MBR109のハッシュ値などの条件値を含む暗号データ(TPM102のTPM_Sealコマンドを使って暗号化されている)をTPM102に送る。
TPM102の内部レジスタには、BIOS104によって計算されたShadow MBR109のハッシュ値が条件値として予め格納されている。
そこで、Shadow MBR109から暗号化データが送られてくると、TPM102はその暗号化データを内部鍵で復号する。そして、復号した条件値と内部レジスタに格納された条件値とを比較し、一致した場合には、復号したパスワードをShadow MBR109に返す。すなわち、Shadow MBR109が改ざんされていなければ、ハッシュ値は一致する筈であるから、復号したパスワードをShadow MBR109に返す。
FIG. 2 is an explanatory diagram showing an outline of the operation of the computer according to the present invention.
First, an MBR 108 that performs OS boot processing is stored in a first area that is accessible after authentication of the hard disk 105. Also, a Shadow MBR 109 for performing hard disk authentication processing and virus detection is stored in the second area accessible without authentication of the hard disk 105.
The Shadow MBR 109 is activated by the BIOS 104 via the control switches 111 and 110 before the OS is activated and before the hard disk is authenticated. The activated Shadow MBR 109 sends to the TPM 102 encrypted data (encrypted using the TPM_Seal command of the TPM 102) including condition values such as a password for hard disk authentication and a hash value of the Shadow MBR 109.
In the internal register of the TPM 102, the hash value of the Shadow MBR 109 calculated by the BIOS 104 is stored in advance as a condition value.
Therefore, when encrypted data is sent from the Shadow MBR 109, the TPM 102 decrypts the encrypted data with the internal key. Then, the decrypted condition value is compared with the condition value stored in the internal register, and if they match, the decrypted password is returned to the Shadow MBR 109. That is, if the Shadow MBR 109 has not been tampered with, the hash values should match, so the decrypted password is returned to the Shadow MBR 109.

復号したパスワードを受け取ったShadow MBR109は、そのパスワードをハードディスク105に送る。ハードディスク105は自身に設定されているパスワードと一致する場合には、正規のプログラムからのアクセスであると看做し、第1の領域に記憶されているMBR108へのアクセスが可能な状態になり、制御スイッチ110が切り替わる。
MBR108へ処理が移ると、OSのブート処理が実行され、更に制御スイッチ111が切り替わってOSがRAM103にロードされる。
The Shadow MBR 109 that has received the decrypted password sends the password to the hard disk 105. If the hard disk 105 matches the password set in itself, the hard disk 105 is regarded as an access from a legitimate program, and the MBR 108 stored in the first area becomes accessible. The control switch 110 is switched.
When the process moves to the MBR 108, the OS boot process is executed, and the control switch 111 is further switched to load the OS into the RAM 103.

図3は、PC起動後のウィルス検索処理の概要を示す。
ステップ310において、CPUテスト後に起動されるBIOS104のプログラムが起動される。起動されると、ハードウェアのテストや初期化を行い、問題なければ、ハードディスク105上にあるShadow MBR109全体のハッシュ値を計算、TPM102の内部レジスタに結果を格納し、Shadow MBR上のプログラムをメモリ103に格納し、制御を渡す。
この処理は起動直後の処理であり、ハードディスク105の0番地はShadow MBR109である。ハードディスク105への認証が成功すれば、0番地は従来のMBR108になる。
なお、TPM102はハッシュ値をTPMのPlatform Credential Register (PCR)というレジスタに格納する。本レジスタは複数あり、システムによって使い方は異なるが、本発明ではShadow MBRのハッシュ値のにのみ着目しているので、PCRは一つと仮定して説明するが、これは本発明の請求範囲を狭めるものではない。
FIG. 3 shows an outline of the virus detection process after the PC is started.
In step 310, the BIOS 104 program started after the CPU test is started. When activated, the hardware is tested and initialized. If there is no problem, the hash value of the entire Shadow MBR 109 on the hard disk 105 is calculated, the result is stored in the internal register of the TPM 102, and the program on the Shadow MBR is stored in the memory. 103 and pass control.
This process is a process immediately after startup, and the address 0 of the hard disk 105 is the Shadow MBR 109. If the authentication to the hard disk 105 is successful, the address 0 becomes the conventional MBR 108.
Note that the TPM 102 stores the hash value in a register called TPM's Platform Credential Register (PCR). There are a plurality of registers, and their usage differs depending on the system. However, in the present invention, since only the hash value of the Shadow MBR is focused on, it will be described assuming that there is only one PCR, but this narrows the scope of claims of the present invention. It is not a thing.

ステップ320において、ハードディスク105に対する認証処理を行う。認証処理の方法は複数あり、後述する。なお、認証処理に失敗すれば、その旨を利用者に通知、処理を止める。
ステップ330においては、ハードディスク105に対する認証処理は成功しており、Shadow MBR109を除き、MBR108を含めてハードディスク105全体にアクセスできる。RAM103上のShadow MBRにあったプログラムは、ハードディスクに対するウィルス検索を行う。ウィルスが見つかれば、その旨を利用者に通知、処理を止める。
ステップ340においては、ハードディスク105の0番地にあるMBR108のブートストラップコードをメモリ103にロード、制御を渡す。以降の処理は、通常のPC起動と同じであり、本発明の対象外である。
In step 320, authentication processing for the hard disk 105 is performed. There are a plurality of authentication processing methods, which will be described later. If the authentication process fails, the user is notified of the fact and the process is stopped.
In step 330, the authentication process for the hard disk 105 has been successful, and the entire hard disk 105 including the MBR 108 can be accessed except for the Shadow MBR 109. The program in the Shadow MBR on the RAM 103 performs a virus search on the hard disk. If a virus is found, it notifies the user and stops the process.
In step 340, the bootstrap code of the MBR 108 at address 0 of the hard disk 105 is loaded into the memory 103 and control is passed. The subsequent processing is the same as normal PC activation, and is out of the scope of the present invention.

ここで、ステップ320にて行うハードディスク105に対する認証処理を述べる。
第1の認証方法として、単純なパスワード認証がある。これは、Shadow MBR109中にあるパスワードをハードディスクに送信することで認証するものである。本方法には、ハードディスクをブートディスクとしないPCに接続すれば、Shadow MBR109を読み込むことができ、プログラムを解析すればパスワードが盗まれてしまう危険性があるので推奨できない。
以下の第2と第3の認証方法は、これを解決するものであり、特定のTPM102が搭載された特定のPCだけで可能な方法である。すなわち他のPCに接続したとしてもTPMが別のTPMなら動作しない、非常に安全性の高い認証方法である。
Here, the authentication process for the hard disk 105 performed in step 320 will be described.
As a first authentication method, there is simple password authentication. In this method, authentication is performed by transmitting the password in the Shadow MBR 109 to the hard disk. This method is not recommended because the Shadow MBR 109 can be read if the hard disk is connected to a PC that is not the boot disk, and the password may be stolen if the program is analyzed.
The following second and third authentication methods solve this problem and can be performed only by a specific PC on which a specific TPM 102 is mounted. That is, even if connected to another PC, this is a very secure authentication method that does not work if the TPM is another TPM.

第2の認証方法として、TPMとの組み合わせたパスワード認証があり、図4を使って説明する。
ステップ410において、Shadow MBR109はパスワードを含んだ暗号化データをTPM102に送る。具体的には、TPMの標準のTPM_Unsealコマンドを利用する。以下のステップ420から440まではTCG標準のTPMの動作の一部であり、本発明にかかわる部分だけを説明する。
ステップ420において、TPM102は受け取った暗号化データをTPM102内のみでアクセス可能な鍵を利用して復号する。
ステップ430において、TPM102は復号したデータ中のPCR情報に関わる部分を現在のPCRの状態と比較する。合致しなければ、エラーを返して処理を終了する。
本発明においては、現在のPCRはステップ310で説明したShadow MBR109のハッシュ値を含んでおり、合致するはずである。
ステップ440において、PCR情報が合致していれば、TPM102は復号したパスワードをShadow MBR109に送り返す。
ステップ450において、Shadow MBR109はTPM102から受け取ったパスワードをハードディスクに送信して認証を行う。
なお、ステップ410においてShadow MBR109がTPM102に送った暗号化データはTPM_Sealコマンドを使って作成したものである。すなわち、パスワードをTPM102にある鍵で暗号化するのであるが、TPM_Unsealを使った復号条件として、PCRがShadow MBRのハッシュ値を保持していることを指定してTPM_Sealを使って暗号化した結果である。このためステップ430において、TPM102はPCRの状態を検査している。
As a second authentication method, there is password authentication combined with TPM, which will be described with reference to FIG.
In step 410, the Shadow MBR 109 sends the encrypted data including the password to the TPM 102. Specifically, the TPM standard TPM_Unseal command is used. The following steps 420 to 440 are a part of the operation of the TCG standard TPM, and only the part related to the present invention will be described.
In step 420, the TPM 102 decrypts the received encrypted data using a key accessible only within the TPM 102.
In step 430, the TPM 102 compares the portion related to the PCR information in the decoded data with the current PCR state. If they do not match, an error is returned and the process is terminated.
In the present invention, the current PCR contains the hash value of Shadow MBR 109 described in step 310 and should match.
In step 440, if the PCR information matches, the TPM 102 sends the decrypted password back to the Shadow MBR 109.
In step 450, the Shadow MBR 109 transmits the password received from the TPM 102 to the hard disk for authentication.
Note that the encrypted data sent by the Shadow MBR 109 to the TPM 102 in step 410 is created using the TPM_Seal command. That is, the password is encrypted with the key in the TPM 102, but the decryption condition using the TPM_Unseal specifies that the PCR holds the hash value of the Shadow MBR and encrypts it using the TPM_Seal. is there. For this reason, in step 430, the TPM 102 checks the PCR status.

本方法は第一の方法に比べれば、格段に安全になった。というのも、復号できる条件は、対応するTPM102を搭載したPCに限定され、かつ特定のPCRの状態、すなわちMBRのハッシュ値が特定の場合にのみ復号されるからである。これにより、特定のPCと特定のハードディスクの組み合わせのみで起動することになり、ハードディスクを別のPCにつないでもハードディスクに対する認証に失敗するので、アクセスできない。
しかしながら、PCやメモリ、TPM、ハードディスク間をやり取りされるデータにアクセスできる装置を持つ攻撃者には、パスワードが盗まれてしまう可能性がある。次の第三の方法はこれを防ぐ方法であり、さらに安全性が向上している。
なお、本認証方法を利用する場合、Shadow MBRのハッシュ値の計算は単純に全体のハッシュ値を求めるのではなく、暗号化データの部分をマスクしてBIOS104がハッシュ値を計算する。
This method is much safer than the first method. This is because the conditions that can be decrypted are limited to the PC on which the corresponding TPM 102 is mounted, and the decryption is performed only when the specific PCR state, that is, the hash value of the MBR is specific. As a result, the computer is activated only by a combination of a specific PC and a specific hard disk, and even if the hard disk is connected to another PC, authentication to the hard disk fails and access is impossible.
However, an attacker who has a device that can access data exchanged between the PC, memory, TPM, and hard disk may have the password stolen. The next third method is to prevent this, and the safety is further improved.
When using this authentication method, the hash value of the Shadow MBR is not simply obtained as a whole hash value, but the BIOS 104 calculates the hash value by masking the encrypted data portion.

なお、本方法と類似の認証は、TPMの代わりに認証トークンでも可能である。すなわちパスワードを認証トークンの鍵で暗号化しておき、これをShadow MBR109のプログラムが保持、ハードディスク認証時に認証トークンを使って復号してパスワードを取り出してハードディスクに送るのである。しかし、この方法では別のPCにハードディスクを接続、Shadow MBR109上の暗号化データを取り出し、これを認証トークンに渡してしまえば、パスワードが盗まれてしまう危険性があるので推奨できない。
以上がステップ320における第2の認証方法である。
Note that authentication similar to this method can be performed using an authentication token instead of the TPM. In other words, the password is encrypted with the authentication token key, which is stored in the program of the Shadow MBR 109, decrypted using the authentication token at the time of hard disk authentication, and the password is extracted and sent to the hard disk. However, this method is not recommended because if the hard disk is connected to another PC, the encrypted data on the Shadow MBR 109 is taken out and passed to the authentication token, the password may be stolen.
The above is the second authentication method in step 320.

第3の認証方法として、TPM102との組み合わせた公開鍵暗号を利用した認証があり、図5を使って説明する。
ステップ510において、Shadow MBR109は秘密鍵を含んだ暗号化データをTPM102に送る。具体的には、TPM102の標準のTPM_LoadKey2コマンドを利用する。以下のステップ520から540までと580はTCG標準のTPMの動作の一部、ステップ560はTCG Storage準拠のハードディスクの動作の一部であり、本発明にかかわる部分だけを説明する。
ステップ520において、TPM102は受け取った暗号化データをTPM内で利用可能な鍵を利用して復号する。
ステップ530において、TPM102は復号してデータ中のPCR情報に関わる部分を現在のPCRの状態と比較する。合致しなければ、エラーを返して処理を終了する。本発明においては、現在のPCRはステップ310で説明したShadow MBR109のハッシュ値を含んでおり合致するはずである。
ステップ540において、PCR情報が合致していれば、TPM102は復号した秘密鍵を以下の処理で利用できるようにTPM102内に設定し、この鍵のハンドルをShadow MBR109に送り返す。
As a third authentication method, there is authentication using public key cryptography combined with the TPM 102, which will be described with reference to FIG.
In step 510, the Shadow MBR 109 sends the encrypted data including the secret key to the TPM 102. Specifically, the standard TPM_LoadKey2 command of the TPM 102 is used. The following steps 520 to 540 and 580 are a part of the operation of the TCG standard TPM, and step 560 is a part of the operation of the TCG Storage compliant hard disk. Only the part related to the present invention will be described.
In step 520, the TPM 102 decrypts the received encrypted data using a key available in the TPM.
In step 530, the TPM 102 decodes and compares the part related to the PCR information in the data with the current PCR state. If they do not match, an error is returned and the process is terminated. In the present invention, the current PCR contains the hash value of the Shadow MBR 109 described in step 310 and should match.
In step 540, if the PCR information matches, the TPM 102 sets the decrypted secret key in the TPM 102 so that it can be used in the following processing, and sends the handle of this key back to the Shadow MBR 109.

ステップ550において、Shadow MBR109はTPM102から秘密鍵のハンドルを受け取った後、認証を始めることをハードディスク105に通知する。具体的にはStartSessionメソッドを起動する。
ステップ560において、認証に必要な乱数を生成、Shadow MBR109に送り返す。
ステップ570において、Shadow MBR109は乱数を受け取り、これデータに対する署名を生成するようにTPM102に送信する。具体的にはTPM_Signコマンドを利用する。この際にステップ550で受け取ったハンドルを利用する。
ステップ580において、TPM102は署名を生成、Shadow MBR109に送り返す。
ステップ590において、Shadow MBR109はTPM102から受け取った署名を、ハードディスク105に送り認証を行う。
In step 550, the Shadow MBR 109 notifies the hard disk 105 to start authentication after receiving the handle of the secret key from the TPM 102. Specifically, the StartSession method is activated.
In step 560, a random number required for authentication is generated and sent back to the Shadow MBR 109.
In step 570, the Shadow MBR 109 receives the random number and sends it to the TPM 102 to generate a signature for this data. Specifically, a TPM_Sign command is used. At this time, the handle received in step 550 is used.
In step 580, the TPM 102 generates a signature and sends it back to the Shadow MBR 109.
In step 590, the Shadow MBR 109 sends the signature received from the TPM 102 to the hard disk 105 for authentication.

なお、ステップ510においてShadow MBR109がTPM102に送った暗号化データはTPM_CreateWrapKeyコマンドを使って作成したものである。すなわち、秘密鍵をTPM102にある鍵で暗号化するのであるが、TPM_LoadKey2を使った復号条件として、PCRがShadow MBRのハッシュ値を保持していることを指定してTPM_LoadKey2を使って暗号化した結果である。
なお本認証方法を利用する場合、Shadow MBR109のハッシュ値の計算は単純に全体のハッシュ値を求めるのではなく、暗号化データの部分をマスクしてBIOS104がハッシュ値を計算する。
Note that the encrypted data sent by the Shadow MBR 109 to the TPM 102 in step 510 is created using the TPM_CreateWrapKey command. That is, the private key is encrypted with the key in the TPM 102, but the decryption condition using the TPM_LoadKey2 specifies that the PCR holds the hash value of the Shadow MBR, and the result is encrypted using the TPM_LoadKey2. It is.
When using this authentication method, the hash value of the Shadow MBR 109 is not simply obtained as a whole hash value, but the BIOS 104 calculates the hash value by masking the encrypted data portion.

次にステップ330にて行うウィルス検索の概要を述べる。
第1のウィルス検索方法として、既存のウィルス検索方法と同様にウィルスのパターンを保持しておき、ハードディスク105上に本パターンが現れないか検索するものである。パターンは膨大な量がありShadow MBR109中には格納できないので、ネットワークを経由しパターンを提供するサーバにアクセスして、パターンをダウンロードし、メモリ104上に格納して検索するものである。
Next, an outline of virus search performed in step 330 will be described.
As a first virus search method, a virus pattern is held in the same manner as in the existing virus search method, and a search is made for the presence of this pattern on the hard disk 105. Since there are enormous amounts of patterns and cannot be stored in the Shadow MBR 109, a pattern is downloaded via the network, downloaded to the memory 104, stored in the memory 104, and searched.

第2のウィルス検索方法として、ハードディスク105全体を検索するのではなく、システムなど重要な部分のみを検索する方法である。重要な部分の例として、仮想化技術を用いたシステムにおけるゲストマシンではなく、ホストマシンないしはハイパーバイザにあたる部分のみをウィルス検索対象とする方法がある。他にOSのカーネル部分のみなどが考えられる。検索方法としては、第一の方法と同様に、ウィルスパターンが含まれていないか検索するのが一般的である。   As a second virus search method, the entire hard disk 105 is not searched, but only an important part such as a system is searched. As an example of an important part, there is a method in which only a part corresponding to a host machine or a hypervisor is searched for a virus instead of a guest machine in a system using a virtualization technology. In addition, only the kernel part of the OS can be considered. As a search method, it is common to search for a virus pattern as in the first method.

第3のウィルス検索方法として、検索を行うのではなく、ウィルスが含まれていないと保証されたディスクイメージをネットワーク経由でサーバからダウンロード、ハードディスクにコピーする方法がある。このコピーもハードディスク全体をコピーするのではなく、OSやハイパーバイザなどシステム部分だけをコピーする方法もある。   As a third virus detection method, there is a method in which a disk image guaranteed not to contain a virus is downloaded from a server via a network and copied to a hard disk instead of performing a search. There is also a method of copying only the system part such as the OS and the hypervisor instead of copying the entire hard disk.

図6を用いて、ウィルス検索と同時に実行可能なPC起動制限処理の詳細を説明する。
ウィルスによる攻撃は、PC利用者が気がつかないうちにウィルスに感染してしまう場合がほとんどであるが、起動制限はPC利用者本人の不正ないしは不注意によるPC起動を制限するものである。起動が制限される例として、本実施形態では社内ネットワーク外での起動と社外での起動許可数を超えた起動を制限する例を示す。なお、ここで起動許可回数がShadow MBR109の特定領域に保持されているとする。この特定領域は第二の認証方法と同様にBIOSプログラムによるハッシュ値の計算外となる。
Details of the PC activation restriction process that can be executed simultaneously with the virus search will be described with reference to FIG.
In most cases, the attack by a virus is infected by a virus before the PC user notices it, but the activation restriction limits the activation of the PC by the unauthorized or carelessness of the PC user himself / herself. As an example in which activation is limited, in the present embodiment, an example is shown in which activation outside the in-house network and activation exceeding the permitted number of activations outside the company are limited. Here, it is assumed that the activation permission count is held in a specific area of the Shadow MBR 109. This specific area is outside the hash value calculation by the BIOS program as in the second authentication method.

ステップ610において、ステップ320と同様にしてShadow MBR109にあるプログラムがハードディスク105に対して認証処理を行い、Shadow MBR109の書き換え可能モードに移行する。
ステップ620において、Shadow MBR109内に記録されている起動許可回数が1以上ならステップ630に飛ぶ。起動許可回数が0なら、原則起動禁止状態にあり、それでも起動可能かサーバに問い合わせ、起動OKならステップ640に、NGならステップ650に飛ぶ。
ステップ630において、Shadow MBR109の起動許可回数を1つ減じ、ステップ640に飛ぶ。
In step 610, as in step 320, the program in the Shadow MBR 109 performs authentication processing on the hard disk 105, and shifts to the rewritable mode of the Shadow MBR 109.
If it is determined in step 620 that the number of permitted activations recorded in the Shadow MBR 109 is 1 or more, the process jumps to step 630. If the activation permission count is 0, the activation is prohibited in principle and the server is inquired whether the activation is still possible.
In step 630, the number of times the Shadow MBR 109 is permitted to start is reduced by one, and the process jumps to step 640.

ステップ640において、Shadow MBR書き換え可能モードから書き換え禁止モードに移行して、MBR108のブートストラップコードをメモリ103にロードし、制御を渡して、通常のブート処理を行う。
ステップ650において、Shadow MBR書き換え可能モードから書き換え禁止モードに移行して、起動を停止する。この際、ディスプレイに起動許可がなく停止した旨をメッセージ表示する。
なお、本実施形態では、起動許可数がShadow MBRに記録されているが、Shadow MBRは改ざんされる可能性があるため、それを防止するために、Shadow MBRの起動回数は常に0としておいて、サーバに問い合わせるようにしても良い。また、Shadow MBRではなく、認証後にアクセス可能なMBRに記録するようにしても良い。さらに上記とは別の対策として、Shadow MBRが改ざんされていないことを確認した後に、TPM_SealコマンドやTPM_CreateWrapkeyコマンドでパスワードや鍵、PCR情報を含む暗号化データを暗号化しなおして、Shadow MBRを書き直すようにしても良い。
In step 640, the mode shifts from the Shadow MBR rewritable mode to the rewrite prohibit mode, loads the bootstrap code of the MBR 108 into the memory 103, passes control, and performs normal boot processing.
In step 650, the mode is shifted from the Shadow MBR rewritable mode to the rewrite prohibition mode, and the activation is stopped. At this time, a message is displayed on the display indicating that the operation has been stopped without permission.
In this embodiment, the activation permission number is recorded in the Shadow MBR. However, since the Shadow MBR may be falsified, the number of activations of the Shadow MBR is always set to 0 in order to prevent this. The server may be inquired. Further, instead of the Shadow MBR, it may be recorded in an MBR accessible after authentication. As another countermeasure, after confirming that the Shadow MBR has not been tampered with, re-encrypt the Shadow MBR by re-encrypting the encrypted data including the password, key, and PCR information with the TPM_Seal command and the TPM_CreateWrapkey command. Anyway.

101: CPU
102: TPM
103: メモリ
104: BIOS
105: ハードディスク
108: ハードディスクへの認証後にアクセス可能なMBR
109: ハードディスクへの認証前にアクセス可能なShadow MBR
101: CPU
102: TPM
103: Memory 104: BIOS
105: Hard disk 108: MBR accessible after authentication to the hard disk
109: Shadow MBR accessible before authentication to hard disk

Claims (7)

暗号化データを内部にある鍵で復号し、その復号したデータに含まれる条件値と内部レジスタの値が一致したときに復号結果を出力する暗号ハードウェアモジュールと、アクセスするプログラムが正規のプログラムと認証した後にアクセス可能になる第1の領域と認証なしにアクセス可能な第2の領域とに分かれたハードディスクを搭載したコンピュータにおいて、
コンピュータ起動時のプログラムが、上記ハードディスクの認証なしにアクセス可能な第2の領域のハッシュ値を計算し、前記暗号ハードウェアモジュールの内部レジスタに格納し、第2の領域のプログラムをメモリにロードして処理を引き渡し、処理を引き渡された第2の領域にあったプログラムがハードディスクに対して認証処理を行い、正規プログラムであるという認証を得た後に前記第1の領域にアクセスし、当該第1の領域にあるプログラムをメモリにロードすることを特徴とするコンピュータ。
A cryptographic hardware module that decrypts encrypted data with an internal key and outputs a decryption result when the condition value contained in the decrypted data matches the value of the internal register, and the program to be accessed is a regular program In a computer equipped with a hard disk divided into a first area that can be accessed after authentication and a second area that can be accessed without authentication,
The computer startup program calculates the hash value of the second area accessible without authentication of the hard disk, stores it in the internal register of the cryptographic hardware module, and loads the second area program into the memory. The program in the second area to which the process has been delivered performs authentication processing on the hard disk, obtains authentication that it is a regular program, accesses the first area, and A computer which loads a program in the area of the memory into a memory.
前記第2の領域にあったプログラムが、プログラム中に含まれるパスワードをハードディスクに送ることによってハードディスクに対する認証処理を行うことを特徴とする請求項1に記載のコンピュータ。   The computer according to claim 1, wherein the program in the second area performs authentication processing on the hard disk by sending a password included in the program to the hard disk. 前記第2の領域にあったプログラムが、当該プログラム中に含まれる暗号データを前記暗号ハードウェアモジュールに送り、当該暗号ハードウェアモジュールが内部にある鍵で前記暗号データを復号し、復号した条件値と内部レジスタに格納されている第2の領域のハッシュ値と比較し、一致した場合に復号データを出力し、その復号データを前記第2の領域にあったプログラムが受取り、復号データ中に含まれているパスワードをハードディスクに送ることによってハードディスクに対する認証処理を行うことを特徴とする請求項1に記載のコンピュータ。   The program in the second area sends the encrypted data contained in the program to the cryptographic hardware module, the cryptographic hardware module decrypts the encrypted data with the key inside, and the decrypted condition value Are compared with the hash value of the second area stored in the internal register, and if they match, the decoded data is output. The decoded data is received by the program in the second area and included in the decoded data. The computer according to claim 1, wherein authentication processing for the hard disk is performed by sending the stored password to the hard disk. 前記第2の領域にあったプログラムが、当該プログラム中に含まれる暗号データを前記暗号ハードウェアモジュールに送り、当該暗号ハードウェアモジュールが内部にある鍵で前記暗号データを復号し、復号した条件値と内部レジスタに格納されている第2の領域のハッシュ値とを比較し、一致した場合に復号データに含まれる鍵を内部に保管し、この鍵のハンドルを出力し、前記第2の領域にあったプログラムが前記ハンドルを受け取り、このハンドルを元に暗号ハードウェアモジュール内にある鍵を使ってハードディスクに対する認証処理を行うことを特徴とする請求項1に記載のコンピュータ。   The program in the second area sends the encrypted data contained in the program to the cryptographic hardware module, the cryptographic hardware module decrypts the encrypted data with the key inside, and the decrypted condition value Is compared with the hash value of the second area stored in the internal register, and if they match, the key included in the decrypted data is stored inside, the handle of this key is output, and the second area is stored. The computer according to claim 1, wherein a given program receives the handle and performs authentication processing on the hard disk using a key in the cryptographic hardware module based on the handle. 前記第2の領域にあったプログラムが、ハードディスクに対する認証後に前記第1の領域にあるプログラムのハッシュ値を計算し、前記暗号ハードウェアモジュールの内部レジスタに格納した後、当該該プログラムをメモリにロードして処理を引き渡し、処理を引き渡されたプログラムが、引き続き処理を行うことを特徴とする請求項1に記載のコンピュータ。   The program in the second area calculates the hash value of the program in the first area after authenticating the hard disk, stores it in the internal register of the cryptographic hardware module, and then loads the program into the memory The computer according to claim 1, wherein the program is handed over, and the program handed over the process continues processing. 前記処理を引き渡されたプログラムが、前記第1の領域のウィルス検査を行うことを特徴とする請求項5に記載のコンピュータ。   The computer according to claim 5, wherein the program to which the process has been delivered performs a virus inspection of the first area. 前記処理を引き渡されたプログラムが、起動監視サーバに起動可否を問い合わせ、サーバにアクセスできない場合やアクセスできても予め設定された利用環境条件と一致しない場合には、エラーを表示し、その後の処理を停止させることを特徴とする請求項5に記載のコンピュータ。   The program handed over the processing inquires the activation monitoring server whether or not activation is possible, and if the server cannot be accessed or can be accessed but does not match the preset usage environment conditions, an error is displayed and the subsequent processing is performed. The computer according to claim 5, wherein the computer is stopped.
JP2009254921A 2009-11-06 2009-11-06 Computer Expired - Fee Related JP5355351B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009254921A JP5355351B2 (en) 2009-11-06 2009-11-06 Computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009254921A JP5355351B2 (en) 2009-11-06 2009-11-06 Computer

Publications (2)

Publication Number Publication Date
JP2011100329A true JP2011100329A (en) 2011-05-19
JP5355351B2 JP5355351B2 (en) 2013-11-27

Family

ID=44191447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009254921A Expired - Fee Related JP5355351B2 (en) 2009-11-06 2009-11-06 Computer

Country Status (1)

Country Link
JP (1) JP5355351B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6463435B1 (en) * 2017-10-04 2019-02-06 三菱電機株式会社 Control device and control method

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10333902A (en) * 1997-05-27 1998-12-18 N Ii C Joho Syst:Kk Computer system with alteration detecting function
JP2000181963A (en) * 1998-12-18 2000-06-30 Digital Derivative Technology Kk Data communication system and removable information recording medium recording program for obtaining charged service
JP2004072330A (en) * 2002-08-05 2004-03-04 Casio Comput Co Ltd Communication apparatus, communication management device, communication program and communication management program
JP2004078539A (en) * 2002-08-16 2004-03-11 Phoenix Technologies Kk Privacy protecting system for hard disk
JP2006065686A (en) * 2004-08-27 2006-03-09 Internatl Business Mach Corp <Ibm> Information processing system, information processor, registration server, control program, and control method
JP2006236193A (en) * 2005-02-28 2006-09-07 Fujitsu Ltd Starting program execution method, device, storage medium and program
JP2006268861A (en) * 2005-03-24 2006-10-05 Utimaco Safeware Ag Method and control device for controlling access of computer to user data
JP2007219802A (en) * 2006-02-16 2007-08-30 Hitachi Global Storage Technologies Netherlands Bv Storage, its controller, and its control method
WO2008081801A1 (en) * 2006-12-27 2008-07-10 Panasonic Corporation Information terminal, security device, data protection method, and data protection program
JP2008165758A (en) * 2006-12-07 2008-07-17 Matsushita Electric Ind Co Ltd Recording device, integrated circuit, access control method and program record medium
JP2008226191A (en) * 2007-03-15 2008-09-25 Nec Corp System, method, and program for authenticating information processing terminal
JP2009129061A (en) * 2007-11-21 2009-06-11 Ricoh Co Ltd Information processor, authenticity verification method and authenticity verification program

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10333902A (en) * 1997-05-27 1998-12-18 N Ii C Joho Syst:Kk Computer system with alteration detecting function
JP2000181963A (en) * 1998-12-18 2000-06-30 Digital Derivative Technology Kk Data communication system and removable information recording medium recording program for obtaining charged service
JP2004072330A (en) * 2002-08-05 2004-03-04 Casio Comput Co Ltd Communication apparatus, communication management device, communication program and communication management program
JP2004078539A (en) * 2002-08-16 2004-03-11 Phoenix Technologies Kk Privacy protecting system for hard disk
JP2006065686A (en) * 2004-08-27 2006-03-09 Internatl Business Mach Corp <Ibm> Information processing system, information processor, registration server, control program, and control method
JP2006236193A (en) * 2005-02-28 2006-09-07 Fujitsu Ltd Starting program execution method, device, storage medium and program
JP2006268861A (en) * 2005-03-24 2006-10-05 Utimaco Safeware Ag Method and control device for controlling access of computer to user data
JP2007219802A (en) * 2006-02-16 2007-08-30 Hitachi Global Storage Technologies Netherlands Bv Storage, its controller, and its control method
JP2008165758A (en) * 2006-12-07 2008-07-17 Matsushita Electric Ind Co Ltd Recording device, integrated circuit, access control method and program record medium
WO2008081801A1 (en) * 2006-12-27 2008-07-10 Panasonic Corporation Information terminal, security device, data protection method, and data protection program
JP2008226191A (en) * 2007-03-15 2008-09-25 Nec Corp System, method, and program for authenticating information processing terminal
JP2009129061A (en) * 2007-11-21 2009-06-11 Ricoh Co Ltd Information processor, authenticity verification method and authenticity verification program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6463435B1 (en) * 2017-10-04 2019-02-06 三菱電機株式会社 Control device and control method
JP2019068341A (en) * 2017-10-04 2019-04-25 三菱電機株式会社 Control arrangement and control method

Also Published As

Publication number Publication date
JP5355351B2 (en) 2013-11-27

Similar Documents

Publication Publication Date Title
US10516533B2 (en) Password triggered trusted encryption key deletion
KR101176646B1 (en) System and method for protected operating system boot using state validation
JP3689431B2 (en) Method and apparatus for secure processing of encryption keys
EP2207121B1 (en) Protecting content on virtualized client platforms
US8677482B2 (en) Hardware security for software processes
TWI567580B (en) Method and system for preventing execution of malware
JP4116024B2 (en) Peripheral usage management method, electronic system and component device thereof
JP2008052704A (en) Computer and shared password management method
US9015454B2 (en) Binding data to computers using cryptographic co-processor and machine-specific and platform-specific keys
GB2404537A (en) Controlling access to data using software wrappers
TW200405963A (en) Sleep protection
US20080178257A1 (en) Method for integrity metrics management
JP4754299B2 (en) Information processing device
Götzfried et al. Mutual authentication and trust bootstrapping towards secure disk encryption
JP4724107B2 (en) User authentication method using removable device and computer
Zhao et al. Hypnoguard: Protecting secrets across sleep-wake cycles
JP5355351B2 (en) Computer
CN116415313A (en) Safety all-in-one machine, protection method and device of safety all-in-one machine
CN114091027A (en) Information configuration method, data access method, related device and equipment
Tanaka et al. Secure Generation of Digital Signature on Compromised Computer
CN102915419A (en) Virus scanning method and scanning system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120802

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130731

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130827

R150 Certificate of patent or registration of utility model

Ref document number: 5355351

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees