JP2014146256A - Method for protecting data stored in nonvolatile memory and computer - Google Patents

Method for protecting data stored in nonvolatile memory and computer Download PDF

Info

Publication number
JP2014146256A
JP2014146256A JP2013015598A JP2013015598A JP2014146256A JP 2014146256 A JP2014146256 A JP 2014146256A JP 2013015598 A JP2013015598 A JP 2013015598A JP 2013015598 A JP2013015598 A JP 2013015598A JP 2014146256 A JP2014146256 A JP 2014146256A
Authority
JP
Japan
Prior art keywords
memory module
power
memory
bit
data
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
JP2013015598A
Other languages
Japanese (ja)
Other versions
JP5767657B2 (en
Inventor
Yasumichi Tsukamoto
泰通 塚本
Takenobu Yonemochi
健信 米持
Yasuhiro Miyaguchi
康宏 宮口
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.)
Lenovo Singapore Pte Ltd
Original Assignee
Lenovo Singapore Pte 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 Lenovo Singapore Pte Ltd filed Critical Lenovo Singapore Pte Ltd
Priority to JP2013015598A priority Critical patent/JP5767657B2/en
Publication of JP2014146256A publication Critical patent/JP2014146256A/en
Application granted granted Critical
Publication of JP5767657B2 publication Critical patent/JP5767657B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Power Sources (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a method for protecting data in a nonvolatile memory which is removed from a system.SOLUTION: A cache module 21 including a flash memory 81 and a controller 86 is housed in a housing of a computer. When a cover of the housing is opened during a period when a system is in a power off state, a cover sensor 33 operates, so that an EC 25 supplies power to the cache module. Also, the EC 25 transmits an erasure signal for erasing data in the flash memory to a memory module through a line 93. When the EC transmits through the line 95 a tamper signal showing that the housing is opened, the controller sets a tamper bit 85. When detecting the tamper bit upon booting, a BIOS and the cache module erase data in the flash memory.

Description

本発明は、不揮発性メモリが記憶するデータの盗聴を防止する技術に関し、さらに詳細にはコンピュータから取り外された不揮発性メモリのデータに対する盗聴を確実に防止する技術に関する。   The present invention relates to a technique for preventing eavesdropping of data stored in a nonvolatile memory, and more particularly, to a technique for reliably preventing eavesdropping on data in a nonvolatile memory removed from a computer.

コンピュータの大容量記憶装置として、ハードディスク・ドライブ(HDD)とそのキャッシュとして機能する不揮発性半導体メモリ(以下、不揮発性メモリ)を組み合わせたシステムを採用する場合がある。このようなシステムは、ビット単価の安いHDDとビット単価は高いが高速アクセスが可能な不揮発性メモリのそれぞれの利点を兼ね備えた記憶装置として機能する。この不揮発性メモリには、ハイバネーション・データおよびHDDの磁気ディスクと同期したデータが記憶される。   A system that combines a hard disk drive (HDD) and a nonvolatile semiconductor memory (hereinafter referred to as a nonvolatile memory) that functions as a cache may be employed as a mass storage device of a computer. Such a system functions as a storage device that combines the advantages of a low-cost HDD and a non-volatile memory that has a high bit-rate but allows high-speed access. The nonvolatile memory stores hibernation data and data synchronized with the magnetic disk of the HDD.

不揮発性メモリは比較的寿命が短いことから消耗品と考えられており、ユーザが交換できるようにコネクタでマザーボードに接続する。その結果、使用済みの不揮発性メモリがシステムから取り外されて不適切な方法で廃棄処分がされると重要なデータが漏洩する危険性がある。あるいは、第3者がコンピュータから不揮発性メモリを不正に抜き取ってデータを盗聴する可能性もある。   Non-volatile memories are considered consumables because they have a relatively short life, and are connected to the motherboard with a connector so that the user can replace them. As a result, there is a risk that important data may be leaked if the used non-volatile memory is removed from the system and disposed of in an inappropriate manner. Alternatively, there is a possibility that a third party illegally removes the non-volatile memory from the computer and eavesdrops on the data.

特許文献1は、取引処理装置本体のカバー・オープンを検知すると秘密情報を記憶したRAMをアクセス不能にする発明を開示する。この発明は、カバー・オープンを検知してRAMの電力供給を停止する方法ではRAMのデータが消失する問題を改善することを目的としている。特許文献2は、コンピュータからHDDが不正に取り外されたことを検出してHDDに記憶されたデータを消去する発明を開示する。HDDはコンピュータから取り外されたときに電源を供給する電池を搭載し、不正な取り外しであると判断したときにデータを消去する。特許文献3は、システムとHDDが秘密鍵を共有して相互認証を行う発明を開示する。   Patent Document 1 discloses an invention in which a RAM storing secret information is made inaccessible when a cover / open of the transaction processing apparatus main body is detected. An object of the present invention is to improve the problem of RAM data loss in a method of detecting the cover open and stopping the power supply of the RAM. Patent Document 2 discloses an invention in which it is detected that an HDD has been illegally removed from a computer and data stored in the HDD is erased. The HDD is equipped with a battery that supplies power when it is removed from the computer, and erases data when it is determined that the battery is illegally removed. Patent Document 3 discloses an invention in which a system and an HDD share a secret key and perform mutual authentication.

特開2001−184567号公報JP 2001-184567 A 特開平11−175406号公報Japanese Patent Laid-Open No. 11-175406 特開2003−18151号公報JP 2003-18151 A

キャッシュに利用する不揮発性メモリは、NAND素子とコントローラが回路基板に実装された状態でキャッシュ・モジュールとして構成されている。そしてキャッシュ・モジュールに、HDDやSSDと同様にパスワードを設定することは可能である。しかし、パスワードが設定されたキャッシュ・モジュールを第3者が完全に支配できるときは、総当たり攻撃や辞書攻撃などのさまざまな攻撃を繰り返すことができるため、パスワードが解読される危険がある。また、パスワードを設定すると、キャッシュ・モジュール取り外さないで継続的に使用するときにブートごとに認証のための時間を費やすためブート時間の遅延をもたらす。   A nonvolatile memory used for a cache is configured as a cache module with a NAND element and a controller mounted on a circuit board. A password can be set in the cache module in the same way as with the HDD or SSD. However, when a third party can completely control the cache module in which the password is set, various attacks such as a brute force attack and a dictionary attack can be repeated. In addition, setting a password causes a delay in boot time because authentication time is spent for each boot when the cache module is continuously used without removing the cache module.

最も確実に盗聴を防止する方法は、コンピュータに装着されているキャッシュ・モジュールが取り外されたときに、記憶されているデータを消去することである。取り外された後にデータを消去するためには電源を必要とするが、特許文献2に記載する発明では、HDDが搭載する電池を電源としてデータの消去をしている。しかし、電池を搭載しないキャッシュ・モジュールでは、取り外された後にデータを消去することができない。また、通常キャッシュ・モジュールの取り外しは、コンピュータがキャッシュ・モジュールに電源を供給しないパワー・オフ状態や、コンピュータから完全に電源を取り除いた状態で行われるため、システムからの電源を確保することも簡単にはできない。たとえ電源が確保できるとしても、キャッシュ・モジュールが取り外される前にデータを消去する必要がある。   The most reliable way to prevent eavesdropping is to erase stored data when a cache module attached to the computer is removed. In order to erase the data after being removed, a power source is required. However, in the invention described in Patent Document 2, data is erased using a battery mounted on the HDD as a power source. However, in a cache module without a battery, data cannot be erased after being removed. In addition, the removal of the cache module is usually performed in a power-off state where the computer does not supply power to the cache module, or when the power is completely removed from the computer, so it is easy to secure power from the system. I can't. Even if power can be secured, data must be erased before the cache module is removed.

そこで本発明の目的は、システムから取り外された不揮発性メモリのデータの盗聴を防止する方法を提供することにある。さらに本発明の目的は、ブート時間の遅延をもたらさないようにしながら盗聴を防止する方法を提供することにある。さらに本発明の目的は、総当たり攻撃や辞書攻撃などに対して確実に盗聴を防止する方法を提供することにある。さらに本発明の目的はそのような方法を実現するコンピュータおよびメモリ・モジュールを提供することにある。   Accordingly, an object of the present invention is to provide a method for preventing eavesdropping of data in a nonvolatile memory removed from a system. It is a further object of the present invention to provide a method for preventing eavesdropping while preventing delays in boot time. A further object of the present invention is to provide a method for reliably preventing eavesdropping against brute force attacks and dictionary attacks. It is a further object of the present invention to provide a computer and memory module that implements such a method.

本発明は、コンピュータの筐体に収納されたメモリ・モジュールに含まれる不揮発性メモリが記憶するデータの盗聴を防止する方法を提供する。本発明の一の態様では主としてシステムがデータの保護を実行する。システムがパワー・オフ状態の間にメモリ・モジュールが取り外された可能性を示すアクセス信号を生成する。アクセス信号に応答してメモリ・モジュールと信号を送るために必要な少なくともシステムの一部に電源を投入する。アクセス信号に応答してシステムが不揮発性メモリのデータを消去するための消去信号をメモリ・モジュールに送る。電源が投入されたメモリ・モジュールは不揮発性メモリが記憶するデータを消去する。   The present invention provides a method for preventing wiretapping of data stored in a nonvolatile memory included in a memory module housed in a computer casing. In one aspect of the invention, the system primarily performs data protection. An access signal is generated indicating that the memory module may have been removed while the system was powered off. Power on at least a portion of the system needed to signal the memory module in response to the access signal. In response to the access signal, the system sends an erase signal to the memory module for erasing the data in the nonvolatile memory. When the power is turned on, the memory module erases data stored in the nonvolatile memory.

上記手順によればシステムがパワー・オフ状態であってもメモリ・モジュールが取り外される前に不揮発性メモリのデータを消去できるため盗聴を確実に防止できる。メモリ・モジュールは磁気ディスク装置のキャッシュとして機能するキャッシュ・モジュールとすることができる。データの消去に代えてメモリ・モジュールが一切のアクセスを禁止するようにロックしてもよい。消去信号に代えて、BIOSを実行するプロセッサがコマンドを送ってデータを消去してもよいが、消去信号をブート中にハードウェア・レベルで送ると短時間で消去できるため、アクセス信号が生成されてからメモリ・モジュールが取り外されるまでの間に確実にデータを消去できる。   According to the above procedure, even if the system is in a power-off state, data in the nonvolatile memory can be erased before the memory module is removed, so that wiretapping can be reliably prevented. The memory module can be a cache module that functions as a cache of the magnetic disk device. Instead of erasing data, the memory module may be locked to prohibit any access. Instead of the erase signal, the processor executing the BIOS may send a command to erase the data. However, if the erase signal is sent at the hardware level during booting, it can be erased in a short time, so an access signal is generated. Data can be securely erased after the memory module is removed.

アクセス信号は、筐体が開放されたことを示す信号であってよい。この場合、筐体の開放からメモリ・モジュールの取り外しまでは比較的長い時間を必要とするので、データを消去するための時間を確保することができる。アクセス信号に応答してメモリ・モジュールが搭載する不揮発性メモリにタンパー・ビットを設定し、ブート時にシステムがタンパー・ビットを検査し、タンパー・ビットの設定を検出したときにメモリ・モジュールに不揮発性メモリのデータを消去するコマンドを送ることができる。   The access signal may be a signal indicating that the housing has been opened. In this case, since a relatively long time is required from the opening of the housing to the removal of the memory module, a time for erasing data can be secured. In response to an access signal, the tamper bit is set in the nonvolatile memory installed in the memory module, the system checks the tamper bit at boot time, and the memory module is non-volatile when the tamper bit setting is detected. A command can be sent to erase the data in the memory.

初期化時にシステムがメモリ・モジュールと識別情報を共有し、ブート時にタンパー・ビットの設定を検出したときにシステムが識別情報でメモリ・モジュールを認証し、認証が失敗したときにメモリ・モジュールにデータを消去するコマンドを送り、認証が成功したときに不揮発性メモリに対するアクセスを可能にすることができる。認証が失敗したときは、他のコンピュータで使用されていたメモリ・モジュールが装着されたと想定できるため、データを消去して当該コンピュータでメモリ・モジュールを利用できるようにする。   The system shares identification information with the memory module at initialization, the system authenticates the memory module with the identification information when it detects the tamper bit setting at boot time, and data to the memory module when authentication fails Can be sent to allow access to the non-volatile memory when authentication is successful. If the authentication fails, it can be assumed that a memory module used by another computer has been installed. Therefore, the data is erased so that the computer can use the memory module.

また認証が成功したときは、識別情報でバインディングされていたメモリ・モジュールが一旦取り外されたあとに再度装着されたりメモリ・モジュールを取り外すことなくアクセス信号が消滅したりしたと想定できるため、盗聴ではないとして扱って不揮発性メモリのデータを確保することができる。タンパー・ビットを検出しないときは、認証をしないで不揮発性メモリにアクセスできるようにすれば、キャッシュ・モジュールが取り外されない多くのブートにおいてブート時間が遅延することを防ぐことができる。   Also, when authentication is successful, it can be assumed that the memory module that was bound with the identification information was once removed and then reattached or the access signal disappeared without removing the memory module. The data of the non-volatile memory can be secured by treating it as not. When the tamper bit is not detected, if the nonvolatile memory can be accessed without authentication, it is possible to prevent the boot time from being delayed in many boots in which the cache module is not removed.

アクセス信号は、メモリ・モジュールにシステムが供給する電力が停止したことを示す信号とすることができる。通常筐体を開放してメモリ・モジュールを取り外すときはすべての電源を取り除くようになっているので、この信号をアクセス信号に利用することができる。携帯式コンピュータではこのアクセス信号が、AC/DCアダプタが取り外されかつ電池が取り外されたときに生成される。   The access signal may be a signal indicating that the power supplied by the system to the memory module has been stopped. Normally, when removing the memory module by opening the housing, all the power is removed, so that this signal can be used as an access signal. In a portable computer, this access signal is generated when the AC / DC adapter is removed and the battery is removed.

初期化時にメモリ・モジュールが搭載する揮発性メモリにシステムから電力が供給されていることを示すパワー・ビットを設定し、ブート時にシステムがパワー・ビットを検査し、パワー・ビットの解除を検出したときにメモリ・モジュールに不揮発性メモリのデータを消去するコマンドを送ることができる。パワー・ビットはメモリ・モジュールが取り外されたときには必ず解除されるので、確実にデータを消去できるようになる。初期化時にシステムがメモリ・モジュールと識別情報を共有し、パワー・ビットの解除を検出したときにシステムが識別情報でメモリ・モジュールを認証し、認証が失敗したときにメモリ・モジュールにデータを消去するコマンドを送り、認証が成功したときに不揮発性メモリに対するアクセスを可能にすることができる。   Set a power bit indicating that power is supplied from the system to the volatile memory installed in the memory module at initialization, and the system checked the power bit at boot and detected the release of the power bit Sometimes a command can be sent to the memory module to erase data in the non-volatile memory. Since the power bit is always released when the memory module is removed, the data can be securely erased. During initialization, the system shares identification information with the memory module, the system authenticates the memory module with the identification information when power bit release is detected, and erases data to the memory module when authentication fails Command can be sent to enable access to the non-volatile memory when authentication is successful.

本発明の他の態様は、主としてメモリ・モジュールがデータの保護を実行する。メモリ・モジュールはパワー・オフ状態でメモリ・モジュールが取り外された可能性を示すアクセス信号をシステムから受け取る。アクセス信号に応答して不揮発性メモリにタンパー・ビットを設定する。ブート時にメモリ・モジュールがタンパー・ビットを検査する。タンパー・ビットの設定を検出したときにメモリ・モジュールが不揮発性メモリのデータを消去する。   In another aspect of the invention, the memory module primarily performs data protection. The memory module receives an access signal from the system indicating that the memory module may have been removed in a power off state. A tamper bit is set in the nonvolatile memory in response to the access signal. The memory module checks the tamper bit at boot time. When the tamper bit setting is detected, the memory module erases the data in the nonvolatile memory.

上記の構成によれば、あるコンピュータで使用されていたメモリ・モジュールが他のコンピュータに装着された場合に、メモリ・モジュールが自律的にデータを消去するため、再取り付け先のシステムの環境にかかわらずデータを保護することができる。初期化時にメモリ・モジュールがシステムと識別情報を共有し、タンパー・ビットの設定を検出したときにメモリ・モジュールが識別情報でシステムを認証し、認証が失敗したときにメモリ・モジュールが不揮発性メモリのデータを消去し、認証が成功したときにシステムのアクセスを許可することができる。   According to the above configuration, when a memory module used in one computer is installed in another computer, the memory module autonomously erases the data. The data can be protected. The memory module shares identification information with the system at initialization, the memory module authenticates the system with the identification information when it detects the tamper bit setting, and the memory module is non-volatile memory when authentication fails Data can be erased and access to the system can be allowed when authentication is successful.

この構成により、データの保護を図りながら消去後のメモリ・モジュールの再利用を可能にすることができる。初期化時に、メモリ・モジュールにシステムから電力が供給されていることを示すパワー・ビットを揮発性メモリに設定し、ブート時にメモリ・モジュールがパワー・ビットを検査し、パワー・ビットの解除を検出したときにメモリ・モジュールが不揮発性メモリのデータを消去することができる。   With this configuration, it is possible to reuse the memory module after erasing while protecting the data. During initialization, set a power bit in volatile memory to indicate that the memory module is receiving power from the system, and at boot time the memory module checks the power bit and detects the release of the power bit The memory module can erase the data in the non-volatile memory.

本発明により、システムから取り外された不揮発性メモリのデータの盗聴を防止する方法を提供することができた。さらに本発明により、ブート時間の遅延をもたらさないようにしながら盗聴を防止する方法を提供することができた。さらに本発明により、総当たり攻撃や辞書攻撃などに対する盗聴を確実に防止する方法を提供することができた。さらに本発明によりそのような方法を実現するコンピュータおよびメモリ・モジュールを提供することができた。   According to the present invention, a method for preventing eavesdropping on data in a nonvolatile memory removed from a system can be provided. Furthermore, the present invention can provide a method for preventing eavesdropping while preventing a delay in boot time. Furthermore, the present invention can provide a method for reliably preventing eavesdropping against brute force attacks and dictionary attacks. Furthermore, the present invention has been able to provide a computer and a memory module that realize such a method.

本実施の形態にかかるノートPC10の主要な構成を示す機能ブロック図である。It is a functional block diagram which shows the main structures of the notebook PC10 concerning this Embodiment. ノートPC10のボトム・カバー57を開けたときの状態を説明する図である。It is a figure explaining a state when the bottom cover 57 of notebook PC10 is opened. キャッシュ・モジュール21に対するタンパーを検出するハードウェアの構成を説明する図である。2 is a diagram illustrating a hardware configuration for detecting tampering with respect to a cache module 21. FIG. BIOS_ROM23のデータ構造を示す図である。3 is a diagram illustrating a data structure of a BIOS_ROM 23. FIG. BIOSコード107がキャッシュ・モジュール21を初期化する手順を示すフローチャートである。5 is a flowchart showing a procedure for initializing a cache module 21 by a BIOS code 107; ノートPC10がタンパーを検出してデータを消去する手順を説明するフローチャートである。It is a flowchart explaining the procedure which notebook PC10 detects a tamper and erases data. キャッシュ・モジュール21の抜き取りがない場合のブートの手順を説明する図である。It is a figure explaining the procedure of boot when there is no extraction of the cache module. キャッシュ・モジュール21が抜き取られた場合のブートの手順を説明する図である。It is a figure explaining the procedure of a boot when the cache module 21 is extracted.

[ノートPCの構成とパワー・ステート]
図1は、ノートPC10のハードウェア構成の一例を説明するための機能ブロック図で、図2はボトム・カバー57を開けたときの状態を説明する図で、図3はキャッシュ・モジュール21に対するタンパーを検出する構成を説明する図である。多くのハードウェアの構成は周知であるため、ここでは本発明の理解に必要な範囲で説明する。最初にノートPC10のパワー・ステートについて説明する。ノートPC10は、ACPI(Advanced Configuration and Power Interface)の省電力機能に対応している。ACPIでは、S1ステートからS4ステートまでの4つのスリーピング・ステート(スリープ状態)、S0ステート(パワー・オン状態)、およびS5ステート(パワー・オフ状態またはソフト・オフ状態)を定義している。
[Note PC configuration and power state]
FIG. 1 is a functional block diagram for explaining an example of the hardware configuration of the notebook PC 10, FIG. 2 is a diagram for explaining a state when the bottom cover 57 is opened, and FIG. 3 is a tamper for the cache module 21. It is a figure explaining the structure which detects this. Since many hardware configurations are well known, they will be described here within the scope necessary for understanding the present invention. First, the power state of the notebook PC 10 will be described. The notebook PC 10 corresponds to a power saving function of ACPI (Advanced Configuration and Power Interface). ACPI defines four sleeping states (sleep state), S0 state (power-on state), and S5 state (power-off state or soft-off state) from the S1 state to the S4 state.

ACPIのスリーピング・ステートのなかでノートPC10は、一例としてS3ステートとS4ステートだけを定義しているが他のスリーピング・ステートを定義してもよい。また、S5ステートは独立して定義しないでS4ステートの中に含めるようにしてもよい。S3ステート(サスペンド状態)では、メイン・メモリ13の記憶保持とノートPC10の電源を投入するのに必要なデバイス以外のデバイスに対する電力を停止する。   Of the ACPI sleeping states, the notebook PC 10 defines only the S3 state and the S4 state as an example, but other sleeping states may be defined. Further, the S5 state may be included in the S4 state without being defined independently. In the S3 state (suspended state), power to devices other than those necessary for storing and storing the main memory 13 and turning on the power of the notebook PC 10 is stopped.

S4ステート(ハイバネーション状態)は、ACPIでサポートされるスリーピング・ステートの中で最もレイテンシィが長く、かつ消費電力が少ないパワー・ステートである。ノートPC10がパワー・オン状態からハイバネーション状態に遷移する際には、OSがHDD19またはキャッシュ・モジュール21のハイバネーション領域などにメイン・メモリ13が記憶するハイバネーション・データを格納してからパワー・コントローラ29などの電源の投入に必要なデバイス以外のデバイスに対する電力を停止する。   The S4 state (hibernation state) is a power state having the longest latency and the low power consumption among the sleeping states supported by ACPI. When the notebook PC 10 transitions from the power-on state to the hibernation state, the OS stores the hibernation data stored in the main memory 13 in the hibernation area of the HDD 19 or the cache module 21, and then the power controller 29, etc. Stop power to devices other than those required to power on.

S5ステートは、OSがハイバネーション・データをHDD23などに格納しない点を除いては基本的に電力を供給するデバイスの範囲はS4ステートと同じである。さらに、AC/DCアダプタ39および電池ユニット35が外されてボタン電池を除く電力源がない状態をG3ステート(メカニカル・オフ状態)という。G3ステートは、ボトム・カバー57を外してシステム筐体53の内部に物理的にアクセスしても安全な状態に相当する。   The S5 state is basically the same as the S4 state except that the OS does not store hibernation data in the HDD 23 or the like, in the range of devices that supply power. Furthermore, a state in which the AC / DC adapter 39 and the battery unit 35 are removed and there is no power source except for the button battery is referred to as a G3 state (mechanical off state). The G3 state corresponds to a safe state even if the bottom cover 57 is removed and the system housing 53 is physically accessed.

図2(A)は、ノートPC10の外形を示す斜視図で、図2(B)はボトム・カバー57を外した状態のシステム筐体53の内部を示す底面図である。ノートPC10は、ディスプレイ15を実装するディスプレイ筐体51と表面にキーボード27を実装し内部に多くのデバイスを収納するシステム筐体53がヒンジ機構55a、55bで開閉できるように結合されている。   FIG. 2A is a perspective view showing the outer shape of the notebook PC 10, and FIG. 2B is a bottom view showing the inside of the system housing 53 with the bottom cover 57 removed. In the notebook PC 10, a display housing 51 on which the display 15 is mounted and a system housing 53 in which a keyboard 27 is mounted on the surface and a large number of devices are housed are connected to each other by hinge mechanisms 55 a and 55 b.

システム筐体53の底面には、ネジでボトム・カバー57が取り付けられている。ボトム・カバー57を取り外すとマザーボード61、HDD19などが露出する。マザーボード61には、CPU11、チップ・セット17、エンベデッド・コントローラ(EC)25、キャッシュ・モジュール21、および電池ユニット35などが実装されている。   A bottom cover 57 is attached to the bottom surface of the system casing 53 with screws. When the bottom cover 57 is removed, the motherboard 61, the HDD 19 and the like are exposed. On the mother board 61, the CPU 11, the chip set 17, the embedded controller (EC) 25, the cache module 21, the battery unit 35, and the like are mounted.

キャッシュ・モジュール21はユーザが容易に交換できるようにコネクタでマザーボード61に実装されている。したがって、耐用年数が経過したような場合にユーザはボトム・カバー57を開放してキャッシュ・モジュール21を交換することができる。システム筐体53には、ボトム・カバー57が開放されたときに信号を出力するカバー・センサ33が取り付けられている。カバー・センサ33は特に種類を限定する必要はなく、ボトム・カバー57とシステム筐体53が密着および離間している状態を検出できるものであれば、磁気センサ、静電容量センサ、または機械式スイッチなどを採用することができる。   The cache module 21 is mounted on the mother board 61 with a connector so that the user can easily replace it. Therefore, the user can open the bottom cover 57 and replace the cache module 21 when the useful life has elapsed. A cover sensor 33 that outputs a signal when the bottom cover 57 is opened is attached to the system casing 53. The type of the cover sensor 33 is not particularly limited, and a magnetic sensor, a capacitance sensor, or a mechanical type can be used as long as it can detect a state in which the bottom cover 57 and the system casing 53 are in close contact with and separated from each other. A switch or the like can be employed.

図1において、チップ・セットとして構成されるプラットフォーム・コントロール・ハブ(PCH)17にはCPU11、HDD19、キャッシュ・モジュール21、BIOS_ROM23およびEC25が接続されている。CPU11にはメイン・メモリ13およびLCD15が接続されている。PCH17は、さまざまな規格のインターフェース機能を備えており、図1では代表的にSATAコントローラにHDD19およびキャッシュ・モジュール21が接続され、SPIにBIOS_ROM23が接続され、LPCにEC25が接続されている。キャッシュ・モジュール21は、HDD19に対するキャッシュとして機能する不揮発性メモリを含む。   In FIG. 1, a CPU 11, an HDD 19, a cache module 21, a BIOS_ROM 23, and an EC 25 are connected to a platform control hub (PCH) 17 configured as a chip set. A main memory 13 and an LCD 15 are connected to the CPU 11. The PCH 17 has various standard interface functions. In FIG. 1, the HDD 19 and the cache module 21 are typically connected to the SATA controller, the BIOS_ROM 23 is connected to the SPI, and the EC 25 is connected to the LPC. The cache module 21 includes a nonvolatile memory that functions as a cache for the HDD 19.

EC25には、キーボード27およびパワー・コントローラ29が接続されている。EC25は、CPU、ROM、RAMなどで構成されたマイクロ・コンピュータである。EC25は、ノートPC10の内部の動作環境の管理にかかるプログラムをCPU11とは独立して実行することができる。EC25は、パワー・コントローラ33を通じてDC/DCコンバータ37の動作を制御する。   A keyboard 27 and a power controller 29 are connected to the EC 25. The EC 25 is a microcomputer composed of a CPU, ROM, RAM, and the like. The EC 25 can execute a program related to management of the operating environment inside the notebook PC 10 independently of the CPU 11. The EC 25 controls the operation of the DC / DC converter 37 through the power controller 33.

パワー・コントローラ29には、パワー・ボタン31、カバー・センサ33およびDC/DCコンバータ37の制御回路が接続されている。パワー・コントローラ29は、EC25からの指示に基づいてDC/DCコンバータ37を制御するワイヤード・ロジックのディジタル制御回路(ASIC)である。パワー・コントローラ29は、ノートPC10をレジュームさせるためにスリープ状態およびパワー・オフ状態でも電力が維持される。   The power controller 29 is connected to control circuits for a power button 31, a cover sensor 33, and a DC / DC converter 37. The power controller 29 is a wired logic digital control circuit (ASIC) that controls the DC / DC converter 37 based on an instruction from the EC 25. The power controller 29 maintains power even in the sleep state and the power-off state in order to resume the notebook PC 10.

スリープ状態またはパワー・オフ状態のときにパワー・ボタン31の押下またはカバー・センサ33の動作があると、パワー・コントローラ29は、システムをパワー・オン状態にするために必要な各デバイスに電力を供給する。AC/DCアダプタ39および電池ユニット35は、ノートPC10の電力源である。DC/DCコンバータ37は、AC/DCアダプタ39または電池パック35から供給される直流電圧を、ノートPC10を動作させるために必要な複数の電圧に変換し、さらにパワー・ステートに応じて定義された電力供給区分に基づいて各々のデバイスに電力を供給する。   When the power button 31 is pressed or the cover sensor 33 is operated in the sleep state or the power off state, the power controller 29 supplies power to each device necessary for putting the system in the power on state. Supply. The AC / DC adapter 39 and the battery unit 35 are power sources for the notebook PC 10. The DC / DC converter 37 converts the DC voltage supplied from the AC / DC adapter 39 or the battery pack 35 into a plurality of voltages necessary for operating the notebook PC 10, and is further defined according to the power state. Power is supplied to each device based on the power supply category.

図3は、タンパー検出に関連するデバイスを詳細に示している。キャッシュ・モジュール21は、基板にNAND型フラッシュ・メモリ(以下、フラッシュ・メモリ)81、mSATAのインターフェースを含むコントローラ86、および揮発性メモリ88が実装されている。ただし、本発明はタンパー・ビット85でタンパーを検知できるため、揮発性メモリ88を実装しないキャッシュ・モジュールに適用することもできる。フラッシュ・メモリ81はデータ領域83とシステム領域に区分されている。データ領域83は一例として、HDD19のキャッシュとして利用するキャッシュ領域とS4ステートに遷移させるときのハイバネーション・データ記憶するハイバネーション領域の2つのパーティションで区切られている。   FIG. 3 shows in detail the devices associated with tamper detection. The cache module 21 has a NAND flash memory (hereinafter referred to as “flash memory”) 81, a controller 86 including an mSATA interface, and a volatile memory 88 mounted on a substrate. However, since the tamper can be detected by the tamper bit 85, the present invention can be applied to a cache module in which the volatile memory 88 is not mounted. The flash memory 81 is divided into a data area 83 and a system area. For example, the data area 83 is divided into two partitions: a cache area used as a cache of the HDD 19 and a hibernation area for storing hibernation data when transitioning to the S4 state.

PCH17は、RTC(Real Time Clock)とキャッシュ・モードでの動作を制御するキャッシュ・コントローラを含む。RTCとPCH17の一部の機能には、ボタン電池で構成されたRTC電源系統16から電力が供給される。RTC電源系統16の電力は、ノートPC10がG3ステートのときにも確保される。キャッシュ・コントローラの基本的な動作では、キャッシュ領域をライト・スルー方式に設定し、ハイバネーション領域をライト・バック方式に設定する。いずれのキャッシュ・モードに設定されても、フラッシュ・メモリ81にはシステムが処理したデータが残る。フラッシュ・メモリ81のシステム領域は、CPU11がアクセスできないセキュアな領域である。システム領域には、識別情報109b、共通鍵111b、およびタンパー・ビット85が格納されている。   The PCH 17 includes a cache controller that controls the operation in the RTC (Real Time Clock) and the cache mode. Power is supplied to a part of the functions of the RTC and the PCH 17 from the RTC power supply system 16 composed of a button battery. The power of the RTC power supply system 16 is secured even when the notebook PC 10 is in the G3 state. In the basic operation of the cache controller, the cache area is set to the write-through method, and the hibernation area is set to the write-back method. Regardless of which cache mode is set, data processed by the system remains in the flash memory 81. The system area of the flash memory 81 is a secure area that cannot be accessed by the CPU 11. In the system area, identification information 109b, a common key 111b, and a tamper bit 85 are stored.

識別情報109bは、BIOSコード107(図4参照)とキャッシュ・モジュール21が相互認証をするためのデータである。共通鍵111bは識別情報109bを暗号化したり、BIOSコード107から受け取った暗号化された識別情報109a(図4参照)を復号したりする際にコントローラ86が使用する。タンパー・ビット85は、カバー・センサ33の動作に応じてEC25からライン95を通じてタンパー信号を受け取ったときにコントローラ86が設定する。他の例として、RTC電源系統16からカバー・センサ33に電力を供給することで、G3ステートでボトム・カバー57が開放されたときにPCH17のセキュアな記憶領域にタンパー・ビットを設定してもよい。なお、識別情報109b、共通鍵111b、タンパー・ビット85はフラッシュ・メモリ81とは異なるものとして用意したセキュアな不揮発性メモリに格納するようにしてもよい。   The identification information 109b is data for mutual authentication between the BIOS code 107 (see FIG. 4) and the cache module 21. The common key 111b is used by the controller 86 when encrypting the identification information 109b or decrypting the encrypted identification information 109a (see FIG. 4) received from the BIOS code 107. The tamper bit 85 is set by the controller 86 when a tamper signal is received from the EC 25 through the line 95 in accordance with the operation of the cover sensor 33. As another example, by supplying power from the RTC power supply system 16 to the cover sensor 33, when the bottom cover 57 is opened in the G3 state, the tamper bit is set in the secure storage area of the PCH 17. Good. The identification information 109b, the common key 111b, and the tamper bit 85 may be stored in a secure non-volatile memory prepared differently from the flash memory 81.

コントローラ86は、CPU、RAM、ROM、および暗号エンジンを含み、フラッシュ・メモリ81に対するシステムからのリード/ライト・アクセスを制御したり、盗聴を防止するためのさまざまな処理をしたりする。コントローラ86は、BIOSコード107から取得した識別情報109aとフラッシュ・メモリ81が格納する識別情報109bでBIOSコード107の認証を行う。   The controller 86 includes a CPU, a RAM, a ROM, and a cryptographic engine, and controls read / write access from the system to the flash memory 81 and performs various processes for preventing eavesdropping. The controller 86 authenticates the BIOS code 107 using the identification information 109 a acquired from the BIOS code 107 and the identification information 109 b stored in the flash memory 81.

コントローラ86は、共通鍵111bで識別情報109bを暗号化してBIOSコード107に送ったり、BIOSコード107により共通鍵111aで暗号化された識別情報109aを共通鍵111bで復号したりする。識別情報109bは、BIOS_ROM23に格納された識別情報109aと同じデータである。揮発性メモリ88のパワー・ビット87は、DC/DCコンバータ37のS5/S4系統からライン99を通じて電力が供給されているときにシステムの正当性を認証したコントローラ86により設定され、電力が停止すると自動的に解除される。   The controller 86 encrypts the identification information 109b with the common key 111b and sends it to the BIOS code 107, or decrypts the identification information 109a encrypted with the common key 111a with the BIOS code 107 using the common key 111b. The identification information 109b is the same data as the identification information 109a stored in the BIOS_ROM 23. The power bit 87 of the volatile memory 88 is set by the controller 86 that authenticates the correctness of the system when power is supplied from the S5 / S4 system of the DC / DC converter 37 through the line 99, and the power is stopped. It is automatically canceled.

コントローラ86は、PCH17とSATAの信号ライン91で接続され、EC25およびDC/DCコンバータ37のS0系統とSATAの電力ライン93、97で接続される。EC25は、タンパーを検出したときにタンパー信号を送るために、SATAのラインに追加したライン95でキャッシュ・コントローラ86に接続されている。EC25はSATAの電力ライン93を通じてコントローラ86に1ワイヤ方式のプロトコルで消去信号を送る。   The controller 86 is connected to the PCH 17 through a SATA signal line 91, and is connected to the EC 25 and the S0 system of the DC / DC converter 37 through SATA power lines 93 and 97. The EC 25 is connected to the cache controller 86 by a line 95 added to the SATA line in order to send a tamper signal when a tamper is detected. The EC 25 sends an erasure signal to the controller 86 through the SATA power line 93 using a one-wire protocol.

DC/DCコンバータ37は、システムのパワー・ステートに対応して、S5/S4系統、S3系統、およびS0系統に区分されている。S5/S4系統は、S5ステートまたはS4ステートのときに電力を供給する系統である。S3系統はS3ステートのときにS5/S4系統に加えて電力を供給する系統である。S0系統はS0ステートのときに、S5/S4系統、S3系統に加えて電力を供給する系統である。   The DC / DC converter 37 is divided into S5 / S4 system, S3 system, and S0 system corresponding to the power state of the system. The S5 / S4 system is a system that supplies power in the S5 state or the S4 state. The S3 system is a system that supplies power in addition to the S5 / S4 system in the S3 state. The S0 system is a system that supplies power in addition to the S5 / S4 system and the S3 system in the S0 state.

システムがS5ステートまたはS4ステートのときは、パワー・コントローラ29、PCH17の一部および揮発性メモリ88に電力が供給される。S3ステートのときはEC25、PCH17の一部などに電力が供給される。S0ステートのときはすべてのデバイスに電力が供給される。AC/DCアダプタ39および電池ユニット35が取り外されてシステムがG3ステートに遷移したときは、すべての系統が停止する。   When the system is in the S5 state or the S4 state, power is supplied to the power controller 29, a part of the PCH 17, and the volatile memory 88. In the S3 state, power is supplied to a part of the EC 25, the PCH 17, and the like. In the S0 state, power is supplied to all devices. When the AC / DC adapter 39 and the battery unit 35 are removed and the system transitions to the G3 state, all systems are stopped.

〔BIOS_ROMの構成〕
図4は、BIOS_ROM23のデータ構造を説明する図である。BIOS_ROM23は、BIOSコードを格納するBIOS領域101とBIOSコードだけが利用するデータ領域103を含む。BIOS領域101にはBIOSコードが格納され、データ領域103には、識別情報109a、共通鍵111aが格納される。BIOS_ROM23はBIOSコードの書き換えに伴うリスクを軽減するためにブート・ブロック方式を採用している。BIOS領域101はブート・ブロックとシステム・ブロックに分かれている。
[Configuration of BIOS_ROM]
FIG. 4 is a diagram for explaining the data structure of the BIOS_ROM 23. The BIOS_ROM 23 includes a BIOS area 101 that stores the BIOS code and a data area 103 that is used only by the BIOS code. A BIOS code is stored in the BIOS area 101, and identification information 109a and a common key 111a are stored in the data area 103. The BIOS_ROM 23 employs a boot block method in order to reduce the risk associated with rewriting the BIOS code. The BIOS area 101 is divided into a boot block and a system block.

ブート・ブロックは書き込み保護がされている記憶領域でここに格納されたBIOSコードはTPM(Trusted Platform Module )の仕様書に規定するCRTM(Core Root of Trust for Measurement)105として扱われ特別な権限がないと書き換えができないようになっている。CRTM105は基本デバイスの初期化コードおよび一貫性認証コードなどを含む。CRTM105は、BIOSコードの中で一貫性のある部分として構成され、ノートPC10がブートするときに必ず最初に実行される。ノートPC10のプラットフォームに関するすべての一貫性の計測はCRTMの一貫性認証コードにより行われる。   The boot block is a storage area that is write-protected, and the BIOS code stored here is treated as a CRTM (Core Root of Trust for Measurement) 105 defined in the TPM (Trusted Platform Module) specifications and has a special authority. Otherwise, rewriting is impossible. The CRTM 105 includes a basic device initialization code, a consistency authentication code, and the like. The CRTM 105 is configured as a consistent part in the BIOS code and is always executed first when the notebook PC 10 boots. All consistency measurements for the laptop 10 platform are performed by CRTM consistency authentication codes.

CRTM105以外のBIOSコード107は、POSTコード、認証コード、暗号モジュール、セットアップ・コードおよびI/Oコードなどを含む。POSTコードは、スリープ状態またはパワー・オフ状態からブートをする際に、デバイスのPOST処理を行う。認証コードは、パワー・オン・パスワード、HDDパスワード、および管理者パスワードなどのBIOSパスワードの設定のためのプロンプトをLCD15に表示したり、入力されたパスワードを認証しまたはHDD19に送ってロックを解除したりする。   The BIOS code 107 other than the CRTM 105 includes a POST code, an authentication code, a cryptographic module, a setup code, an I / O code, and the like. The POST code performs POST processing of the device when booting from the sleep state or the power-off state. The authentication code displays a prompt for setting a BIOS password such as a power-on password, HDD password, and administrator password on the LCD 15 or authenticates the input password or sends it to the HDD 19 to release the lock. Or

認証コードはさらに、キャッシュ・モジュール21から取得した識別情報109bでキャッシュ・モジュール21の認証を行う。暗号モジュールは、共通鍵暗号方式に使用する共通鍵111a、111bを生成したり、共通鍵111aで識別情報109aを暗号化してコントローラ86に送ったり、コントローラ86により共通鍵111bで暗号化された識別情報109bを共通鍵111aで復号したりする。セットアップ・コードは、ブートの途中でユーザがファンクション・キーを押下したときに実行されユーザがデバイスの設定をする。I/Oコードは、CPU11がリアル・モードで動作する際に周辺デバイスにアクセスするための入出力のインターフェースを提供する。   The authentication code further authenticates the cache module 21 with the identification information 109b acquired from the cache module 21. The cryptographic module generates the common keys 111a and 111b used for the common key encryption method, encrypts the identification information 109a with the common key 111a and sends it to the controller 86, or the identification encrypted with the common key 111b by the controller 86 The information 109b is decrypted with the common key 111a. The setup code is executed when the user presses a function key during booting, and the user sets the device. The I / O code provides an input / output interface for accessing peripheral devices when the CPU 11 operates in the real mode.

[初期化の手順]
図5は、BIOSコード107がキャッシュ・モジュール21を初期化する手順を示すフローチャートである。ブロック201から215まではBIOSコード107の処理を示し、ブロック301から311まではコントローラ86の処理を示している。ここではマザーボード61に新しいキャッシュ・モジュール21が取り付けられたと想定する。S5/S4ステートのときにパワー・ボタン31が押下されると、ブロック201でS0ステートに遷移するためのデバイスに電力が供給されてシステムはブートを開始する。
[Initialization procedure]
FIG. 5 is a flowchart showing a procedure for initializing the cache module 21 by the BIOS code 107. Blocks 201 to 215 indicate processing of the BIOS code 107, and blocks 301 to 311 indicate processing of the controller 86. Here, it is assumed that a new cache module 21 is attached to the mother board 61. When the power button 31 is pressed in the S5 / S4 state, power is supplied to the device for transitioning to the S0 state in block 201, and the system starts booting.

ブロック301でフラッシュ・メモリ81には、識別情報109bおよび共通鍵111bは格納されておらず、タンパー・ビット85およびパワー・ビット87は不定である。ブートを開始するとCPU11がCRTM105およびBIOSコード107を実行してPOSTを開始する。ブロック203でユーザはブートの初期の段階でファンクション・キーを押してセットアップ・コードを実行しキャッシュ・モジュール21の初期化を行う。   In block 301, the flash memory 81 does not store the identification information 109b and the common key 111b, and the tamper bit 85 and the power bit 87 are indefinite. When booting is started, the CPU 11 executes the CRTM 105 and the BIOS code 107 to start POST. In block 203, the user presses the function key at the initial stage of booting to execute the setup code and initialize the cache module 21.

すでにバインディングが終わっているため初期化が必要ないと判断した場合は、ファンクション・キーを押さないで図7のブロック603に移行する。ユーザによってキャッシュ・モジュール21の初期化が選択されると、BIOSコード107はブロック205でキャッシュ・モジュール21とPCH17のインターフェースを初期化してからキャッシュ・モジュール21に識別情報を要求して確認する。新しいキャッシュ・モジュール2はバインディングされていないことが明らかなのでこの手順は省略してもよい。   If it is determined that initialization is not necessary because the binding has already been completed, the process proceeds to block 603 in FIG. 7 without pressing the function key. When initialization of the cache module 21 is selected by the user, the BIOS code 107 initializes the interface between the cache module 21 and the PCH 17 in block 205 and then requests and confirms identification information from the cache module 21. Since it is clear that the new cache module 2 is not bound, this procedure may be omitted.

識別情報109bを受け取ることができないためキャッシュ・モジュール21を認証できないことを確認したBIOSコード107はブロック207でコントローラ86にリセット・コマンドを送る。ブロック303でリセット・コマンドを受け取ったコントローラ86はデータ領域83を初期化してデータを消去する。データの消去は、データ領域83にランダムなデータを書き込むことで元のデータを再現できないようにする行為も含む。   The BIOS code 107 confirming that the cache module 21 cannot be authenticated because it cannot receive the identification information 109 b sends a reset command to the controller 86 at block 207. The controller 86 that received the reset command in block 303 initializes the data area 83 and erases the data. Deletion of data includes an act of making it impossible to reproduce the original data by writing random data in the data area 83.

ブロック209でBIOSコード107は、キャッシュ・モジュール21とバインディングするために、識別情報109aと共通鍵暗号方式に使用する共通鍵111a、111bを生成する。共通鍵111aはBIOSコード107が使用し共通鍵111bはコントローラ86が使用する。なお、BIOSコード107は共通鍵111a、111bに代えて公開鍵暗号方式に使用する秘密鍵と公開鍵のペアを生成してもよい。この場合、共通鍵111aに秘密鍵を対応させ、共通鍵111bに公開鍵を対応させて公開鍵はコントローラ86がセキュアに保持する。   In block 209, the BIOS code 107 generates the identification information 109a and common keys 111a and 111b used for the common key cryptosystem for binding with the cache module 21. The common key 111a is used by the BIOS code 107, and the common key 111b is used by the controller 86. Note that the BIOS code 107 may generate a pair of a secret key and a public key used in the public key cryptosystem instead of the common keys 111a and 111b. In this case, the controller 86 securely holds the public key by associating the secret key with the common key 111a and the public key with the common key 111b.

識別情報109aは、BIOSコード107が生成した乱数や現在の時刻などの第3者が容易に想像できない秘密情報とすることが望ましい。BIOSコード107は、識別情報109aと共通鍵111aをデータ領域103に格納する。ブロック211でBIOSコード107は、識別情報109aと共通鍵111bをキャッシュ・モジュール21に送る。ブロック305でコントローラ86は受け取った識別情報109aと共通鍵111bをフラッシュ・メモリ81に格納する。なお、格納された状態の識別情報109aは説明の便宜上識別情報109bと表記する。すなわち、識別情報109aと識別情報109bは同じデータである。   The identification information 109a is desirably secret information that cannot be easily imagined by a third party, such as a random number generated by the BIOS code 107 and the current time. The BIOS code 107 stores the identification information 109 a and the common key 111 a in the data area 103. In block 211, the BIOS code 107 sends the identification information 109a and the common key 111b to the cache module 21. In block 305, the controller 86 stores the received identification information 109 a and common key 111 b in the flash memory 81. The stored identification information 109a is referred to as identification information 109b for convenience of explanation. That is, the identification information 109a and the identification information 109b are the same data.

ブロック307でコントローラ86はフラッシュ・メモリ81のタンパー・ビット85を解除し、揮発性メモリ88にパワー・ビット87を設定する。パワー・ビット87はS5/S4系統の電源が停止したときに自動的に解除されるが、コントローラ86は識別情報109aをBIOSコード107から受け取って認証しない限り再設定しない。したがって不正なシステムがパワー・ビット87を設定することはできず、パワー・ビット87が解除されていることは、バインディングのあとにシステムがG3ステートに遷移したか、またはキャッシュ・モジュール21がマザーボード61から取り外されたことを示す。   In block 307, the controller 86 releases the tamper bit 85 of the flash memory 81 and sets the power bit 87 in the volatile memory 88. The power bit 87 is automatically released when the power supply of the S5 / S4 system is stopped, but the controller 86 does not reset unless the identification information 109a is received from the BIOS code 107 and authenticated. Therefore, an unauthorized system cannot set the power bit 87, and the fact that the power bit 87 is released indicates that the system has transitioned to the G3 state after binding, or that the cache module 21 has the motherboard 61. Indicates that it has been removed from.

ブロック309でコントローラ86はキャッシュ・モジュール21の自主検査が終了するとブロック311でBIOSコード107にレディ信号を送る。レディ信号を受け取ったBIOSコード107はブロック213でキャッシュ・モジュール21を認識する。以後、システムはキャッシュ・モジュール21を利用できるようになる。その後、ブートはOSの処理に引き継がれてブロック215で終了しシステムはS0ステートに遷移する。   In block 309, the controller 86 sends a ready signal to the BIOS code 107 in block 311 when the self-check of the cache module 21 is completed. The BIOS code 107 that has received the ready signal recognizes the cache module 21 in block 213. Thereafter, the system can use the cache module 21. Thereafter, the boot is taken over by the processing of the OS and ends at block 215, and the system transitions to the S0 state.

[タンパーの検出手順]
図6は、パワー・オフ状態のシステムがタンパーを検出してデータを消去する手順を説明するフローチャートである。本明細書においてタンパーは、マザーボード61からキャッシュ・モジュール86を実際に抜き取った行為またはその可能性を示す行為をいう。ブロック401からブロック413まではEC25の処理を示し、ブロック501からブロック509まではキャッシュ・モジュール21のコントローラ86の処理を示している。ブロック401でシステムはAC/DCアダプタ39が外され、電池ユニット35が装着されてS5/S4ステートに遷移している。このタイミングにおいてブロック501でキャッシュ・モジュール21はS0系統、S3系統の電源が停止しS5/S4系統の電源がキャッシュ・モジュール21の揮発性メモリ88に電力を供給してパワー・ビット87の設定を維持している。
[Tamper detection procedure]
FIG. 6 is a flowchart for explaining a procedure in which the system in the power off state detects tampering and erases data. In this specification, the tamper refers to an action of actually removing the cache module 86 from the mother board 61 or an action indicating the possibility. Blocks 401 to 413 indicate processing of the EC 25, and blocks 501 to 509 indicate processing of the controller 86 of the cache module 21. In block 401, the system is switched to the S5 / S4 state with the AC / DC adapter 39 removed and the battery unit 35 attached. At this timing, in block 501, the power of the S0 system and the S3 system of the cache module 21 is stopped, and the power of the S5 / S4 system supplies power to the volatile memory 88 of the cache module 21 to set the power bit 87. Is maintained.

また、フラッシュ・メモリ81のタンパー・ビット85は解除されている。このとき、真正なユーザが交換のためまたは不正な第3者がデータの盗聴のためにキャッシュ・モジュール21を取り外そうとする。行為者はボトム・カバー57のネジを外してマザーボード61を露出させ最初に電池ユニット35を取り外すと予想される。あるいは、電池ユニット35を装着したままキャッシュ・モジュール21を取り外すことも想定する必要がある。   Further, the tamper bit 85 of the flash memory 81 is released. At this time, a genuine user tries to remove the cache module 21 for exchange or an unauthorized third party for eavesdropping on data. The actor is expected to remove the battery unit 35 first by unscrewing the bottom cover 57 to expose the mother board 61. Alternatively, it is necessary to assume that the cache module 21 is removed while the battery unit 35 is attached.

電池ユニット35を取り外すとシステムはG3ステートに遷移する。カバー・センサ33が動作してからG3ステートに遷移する場合はブロック405に移行する。本発明はシステム筐体53のベイに装着された電池パックを搭載するノートPCにも適用することができる。電池パックは、ボトム・カバー57を開放する前に取りはずせるため、この場合はカバー・センサ33が動作しないでブロック411に移行してシステムはG3ステートに遷移する。ただし、RTC電源系統16を利用してPCH17にタンパー・ビットを設定する方法を採用すれば、G3ステートでカバー・センサ33が動作したときにタンパーを検知して、ブート時に図7の手順で処理することができる。   When the battery unit 35 is removed, the system transitions to the G3 state. If the cover sensor 33 is operated and then the state transits to the G3 state, the process proceeds to block 405. The present invention can also be applied to a notebook PC on which a battery pack mounted in the bay of the system housing 53 is mounted. Since the battery pack can be removed before the bottom cover 57 is opened, in this case, the cover sensor 33 does not operate and the process moves to block 411 and the system changes to the G3 state. However, if the method of setting the tamper bit in the PCH 17 using the RTC power supply system 16 is adopted, the tamper is detected when the cover sensor 33 is operated in the G3 state, and the procedure shown in FIG. can do.

ブロック405から409までの手順は主として、システム筐体53の内部に電池ユニット35が収納されているようなシステムで実行される。ブロック405でカバー・センサ33の動作を検知したパワー・コントローラ29は、EC25に起動原因とともに通知する。EC25は、S0系統で動作するデバイスに電力を供給する。この時の起動原因に対して動作するデバイスは、パワー・コントローラ29、EC25およびキャッシュ・モジュール21だけなので、EC25はその範囲のデバイスにだけ電力を供給できるようにDC/DCコンバータ37を構成してもよい。   The procedure from blocks 405 to 409 is mainly executed in a system in which the battery unit 35 is housed inside the system housing 53. The power controller 29 that has detected the operation of the cover sensor 33 in block 405 notifies the EC 25 together with the activation cause. The EC 25 supplies power to devices operating in the S0 system. Since only the power controller 29, the EC 25, and the cache module 21 operate for the activation cause at this time, the EC 25 configures the DC / DC converter 37 so that power can be supplied only to the devices in the range. Also good.

ブロック503でキャッシュ・モジュール21にもS0系統の電力が供給される。BIOSコード107はブートを開始するがブートが進んでコマンドを送れるようになるまでは所定の時間を費やす。したがってブロック407でEC25はライン95を通じてコントローラ86にカバー・センサ33の動作を示すタンパー信号を送る。ブロック505でタンパー信号を受け取ったコントローラ86は、フラッシュ・メモリ81にタンパー・ビット85を設定する。   In block 503, the S0 system power is also supplied to the cache module 21. The BIOS code 107 starts booting, but it takes a predetermined time until the boot progresses and commands can be sent. Accordingly, at block 407, the EC 25 sends a tamper signal indicating the operation of the cover sensor 33 to the controller 86 via line 95. The controller 86 that has received the tamper signal in block 505 sets the tamper bit 85 in the flash memory 81.

つづいて、ブロック409でEC25はライン93を1ワイヤ方式のプロトコルでオン/オフ制御して、コントローラ86に消去信号を送る。ブロック507で消去信号を受け取ったコントローラ86は、データ領域86のすべてのデータを消去する。コントローラ86がデータを消去するためには電源が必要となるため、ブロック407、505、409、507の手順は電池ユニット35またはキャッシュ・モジュール21がマザーボード61から取り外される前に行う必要がある。   Subsequently, in block 409, the EC 25 controls the line 93 to be turned on / off with a one-wire protocol, and sends an erase signal to the controller 86. The controller 86 that has received the erase signal in block 507 erases all data in the data area 86. Since the controller 86 needs to be powered to erase data, the blocks 407, 505, 409, and 507 need to be performed before the battery unit 35 or the cache module 21 is removed from the motherboard 61.

本実施の形態ではブロック407、409の手順を、CPU11がBIOSコード107を実行して行うのではなく、EC25によるハードウェア・レベルまたはファームウェア・レベルで行うため短時間で終了することができる。ブロック507のタイミングまで電池ユニット35が取り外されないでかつキャッシュ・モジュール21が取り外されない場合は、カバー・センサ33の動作でタンパー・ビット505が設定されかつフラッシュ・メモリ81のデータが消去される。本実施の携帯ではタンパー・ビット505の設定はキャッシュ・モジュール21に対するタンパーが発生したものとして扱う。   In the present embodiment, the procedure of blocks 407 and 409 is not performed by the CPU 11 executing the BIOS code 107, but can be completed in a short time because it is performed at the hardware level or firmware level by the EC 25. If the battery unit 35 is not removed until the timing of the block 507 and the cache module 21 is not removed, the tamper bit 505 is set by the operation of the cover sensor 33 and the data in the flash memory 81 is erased. . In the portable device of this embodiment, the setting of the tamper bit 505 is handled as a tampering with respect to the cache module 21.

カバー・センサ33が動作してから電池ユニット35またはキャッシュ・モジュール21の取り外しまでの時間がブロック407、409の手順を終了するまでの時間より短い場合は、タンパー・ビット85の設定およびデータの消去またはいずれか一方の処理が行われない場合がある。本発明ではBIOSコード107を実行するCPU11がライン91を通じてデータを消去するコマンドを送る方法を採用することも可能であるが、EC25による方法より一層長い時間を費やすことになりデータ消去の実現性は低下する。   When the time from the operation of the cover sensor 33 to the removal of the battery unit 35 or the cache module 21 is shorter than the time until the procedures of the blocks 407 and 409 are completed, the tamper bit 85 is set and the data is erased. Alternatively, either one of the processes may not be performed. In the present invention, it is possible to adopt a method in which the CPU 11 executing the BIOS code 107 sends a command for erasing data through the line 91. However, it takes a longer time than the method using the EC 25, and the possibility of erasing data is descend.

ブロック411で電池ユニット35が取り外されるかまたはキャッシュ・モジュール21がマザーボード61から取り外される。その場合、キャッシュ・モジュール21の揮発性メモリに対するS5/S4系統の電源が停止して、ブロック509で揮発性メモリ88のパワー・ビット87が解除される。電池ユニット35が取り外されないでキャッシュ・モジュール21が取り外された場合でもその時点でパワー・ビット87は必ず解除される。本実施の形態ではパワー・ビット87の解除はキャッシュ・モジュール21に対するタンパーが発生したものとして扱う。カバー・センサ33が動作してもタンパー・ビット85は設定されない可能性が残るが、パワー・ビット87はキャッシュ・モジュール21が取り外されると必ず解除される。   At block 411, the battery unit 35 is removed or the cache module 21 is removed from the motherboard 61. In this case, the power supply of the S5 / S4 system for the volatile memory of the cache module 21 is stopped, and the power bit 87 of the volatile memory 88 is released at block 509. Even when the battery module 35 is not removed and the cache module 21 is removed, the power bit 87 is always released at that time. In the present embodiment, the release of the power bit 87 is treated as if tampering with the cache module 21 has occurred. Although the tamper bit 85 may not be set even when the cover sensor 33 is operated, the power bit 87 is always released when the cache module 21 is removed.

カバー・センサ33が動作せず、電池ユニット35およびキャッシュ・モジュール21が取り外されない場合は、パワー・ビットが設定されタンパー・ビットが解除された状態でブロック413に移行しタンパーの検出処理は終了する。ここではブートを完了する必要がないため、BIOSコード107はブロック409でコントローラからデータを消去した通知を受けたあとはシステムをパワー・オフ状態に遷移させることができる。ブロック511ではキャッシュ・モジュール21に関して以下の4つのシナリオを想定する。第1のシナリオは、タンパー・ビットが解除されかつパワー・ビット87が設定されている状態である。第1のシナリオは、ボトム・カバー57、電池ユニット35およびキャッシュ・モジュール21が取り外されない通常の状態に相当する。   If the cover sensor 33 does not operate and the battery unit 35 and the cache module 21 are not removed, the process proceeds to block 413 with the power bit set and the tamper bit released, and the tamper detection process ends. To do. Since the boot need not be completed here, the BIOS code 107 can transition the system to the power-off state after receiving a notification that the data has been erased from the controller in block 409. Block 511 assumes the following four scenarios for cache module 21: The first scenario is a state where the tamper bit is released and the power bit 87 is set. The first scenario corresponds to a normal state in which the bottom cover 57, the battery unit 35, and the cache module 21 are not removed.

第2のシナリオから第4のシナリオは、パワー・ビット87が解除されタンパー・ビット85が不定の状態でキャッシュ・モジュール21が何らかのコンピュータに装着された場合である。タンパー・ビット85が不定であるのは、ブロック407の手順が実行される前に電池ユニット35またはキャッシュ・モジュール21が取り外された場合を想定しているからである。   The second to fourth scenarios are cases where the cache module 21 is installed in some computer with the power bit 87 released and the tamper bit 85 undefined. The tamper bit 85 is indefinite because it is assumed that the battery unit 35 or the cache module 21 is removed before the procedure of the block 407 is executed.

第2のシナリオは、初期化がされてバインディングされたノートPC10に再装着された状態に相当する。第3のシナリオは、図5のブロック207から211までの機能を備えているがバインディングされていないBIOSコードを実装するノートPCに装着された状態に相当する。第4のシナリオは図5のブロック207から211までの機能を備えていないコンピュータに装着された状態に相当する。データが消去されないで第3のシナリオまたは第4のシナリオを迎えると、フラッシュ・メモリ81のデータが盗聴される可能性がでてくる。   The second scenario corresponds to a state where the notebook PC 10 is initialized and bound again. The third scenario corresponds to a state in which the notebook PC is mounted with a BIOS code that has the functions of blocks 207 to 211 in FIG. The fourth scenario corresponds to a state where the computer is mounted on a computer that does not have the functions of blocks 207 to 211 in FIG. If the third scenario or the fourth scenario is reached without data being erased, there is a possibility that the data in the flash memory 81 is wiretapped.

[装着後の盗聴の防止手順]
図7、図8は、第1のシナリオから第4のシナリオのいずれかでキャッシュ・モジュールがコンピュータに装着されたときのデータの盗聴を防止する方法を説明するフローチャートである。ブロック601からブロック657まではBIOSコード107の処理を示し、ブロック701からブロック757まではキャッシュ・モジュール21のコントローラ86の処理を示している。ブロック601でS5/S4ステートにおいてパワー・ボタン31が押下されるとS0ステートで動作するデバイスに電力が供給されてシステムはブートを開始する。
[Procedure to prevent eavesdropping after wearing]
FIGS. 7 and 8 are flowcharts for explaining a method for preventing data eavesdropping when the cache module is mounted on the computer in any of the first to fourth scenarios. Blocks 601 to 657 indicate processing of the BIOS code 107, and blocks 701 to 757 indicate processing of the controller 86 of the cache module 21. When the power button 31 is pressed in the S5 / S4 state in block 601, power is supplied to the device operating in the S0 state and the system starts to boot.

ブロック701におけるキャッシュ・モジュール21の状態は、揮発性メモリ88のパワー・ビット87の状態、フラッシュ・メモリ81のタンパー・ビット85の状態およびデータ領域83の消去状態が不定になっている。パワー・ビット87の状態が不定であるのは、第1のシナリオを想定しているからである。ブートを開始するとBIOSコード107はCRTM105およびBIOSコード107を実行してPOSTを開始する。ブロック603でBIOSコード107は、キャッシュ・モジュール21が装着されていることを認識するとキャッシュ・モジュール21とPCH17のインターフェースを初期化してからブロック603で、キャッシュ・モジュール21にタンパー・ビット85の状態を問い合わせる。   As for the state of the cache module 21 in the block 701, the state of the power bit 87 of the volatile memory 88, the state of the tamper bit 85 of the flash memory 81, and the erase state of the data area 83 are undefined. The state of the power bit 87 is indefinite because the first scenario is assumed. When booting is started, the BIOS code 107 executes the CRTM 105 and the BIOS code 107 to start POST. In block 603, when the BIOS code 107 recognizes that the cache module 21 is installed, the interface between the cache module 21 and the PCH 17 is initialized, and in block 603, the tamper bit 85 is set in the cache module 21. Inquire.

コントローラ86は、BIOS107によるタンパー・ビット85の照会に対しては、BIOSコード107の認証をしないで即時に応答する。RTC電源系統16の電力でPCH17にタンパー・ビットを設定した場合もBIOS107はこの時点で確認する。ブロック605でBIOSコード107はタンパー・ビット85が解除されていると判断したときはブロック607に移行し設定されていると判断したときは図8のブロック651に移行する。ブロック607でBIOSコード107は、キャッシュ・モジュール21にパワー・ビット87の状態を問い合わせる。   The controller 86 responds immediately to the inquiry of the tamper bit 85 by the BIOS 107 without authenticating the BIOS code 107. Even when the tamper bit is set in the PCH 17 with the power of the RTC power supply system 16, the BIOS 107 confirms at this time. If it is determined in block 605 that the tamper bit 85 is released, the process proceeds to block 607. If it is determined that the tamper bit 85 is set, the process proceeds to block 651 in FIG. In block 607, the BIOS code 107 inquires the state of the power bit 87 to the cache module 21.

コントローラ86は、BIOS107によるパワー・ビット87の照会に対しては、BIOSコード107の認証をしないで即時に応答する。ブロック609でBIOSコード107はパワー・ビット85が設定されていると判断したときはブロック611に移行し解除されていると判断したときは図8のブロック651に移行する。ブロック703でコントローラ86は、自主検査のなかでタンパー・ビット85の状態をシステムとは独立して独自に確認する。タンパー・ビット85が設定されていると判断したときは図8のブロック751に移行し、解除されていると判断したときはブロック705に移行する。   The controller 86 responds immediately to the inquiry of the power bit 87 by the BIOS 107 without authenticating the BIOS code 107. In block 609, the BIOS code 107 proceeds to block 611 when it is determined that the power bit 85 is set, and to block 651 in FIG. 8 when it is determined that the power bit 85 is released. In block 703, the controller 86 independently checks the state of the tamper bit 85 independently of the system during the self-inspection. When it is determined that the tamper bit 85 is set, the process proceeds to block 751 in FIG. 8, and when it is determined that the tamper bit 85 is released, the process proceeds to block 705.

ブロック705でコントローラ86は、パワー・ビット87の設定状態を独自に確認する。パワー・ビット87が設定されていると判断したときはブロック707に移行し、解除されていると判断したときは図8のブロック751に移行する。ブロック707でコントローラ86はキャッシュ・モジュール21の自主検査が終了するとブロック709でBIOSコード107にレディ信号を送る。レディ信号を受け取ったBIOSコード107はブロック611でキャッシュ・モジュール21を認識する。以後、システムはキャッシュ・モジュール21を利用できるようになる。   In block 705, the controller 86 independently checks the setting state of the power bit 87. When it is determined that the power bit 87 is set, the process proceeds to block 707, and when it is determined that the power bit 87 is released, the process proceeds to block 751 in FIG. In block 707, the controller 86 sends a ready signal to the BIOS code 107 in block 709 when the self-inspection of the cache module 21 is completed. The BIOS code 107 that has received the ready signal recognizes the cache module 21 in block 611. Thereafter, the system can use the cache module 21.

その後、ブートはOSの処理に引き継がれてブロック613で終了してシステムはS0ステートに遷移する。ブートを開始したときにシステムがブロック613に到達するのは、初期化のあとに第1のシナリオの経緯をたどった場合である。システムはブロック601からブロック613までの手順で動作するが、タンパー・ビット85とパワー・ビット87の確認だけで処理できるため、本発明の導入でブート時間が遅延することはない。   Thereafter, the boot is taken over by the processing of the OS and ends at block 613, and the system transitions to the S0 state. The system arrives at block 613 when it starts booting if it follows the course of the first scenario after initialization. Although the system operates in the procedure from block 601 to block 613, since the processing can be performed only by checking the tamper bit 85 and the power bit 87, the boot time is not delayed by the introduction of the present invention.

図8のブロック651、751では、BIOSコード107とコントローラ86がチャレンジ・レスポンス方式で相互認証を行う。BIOSコード107は、チャレンジとして一時的に利用する乱数(ワンタイム・パスワード)を生成してコントローラ86に送る。チャレンジは認証のたびに異なる乱数とする。コントローラ86は、BIOS107からのチャレンジに対しては、BIOSコード107の認証をする前であっても応答する。コントローラ86は、受け取ったチャレンジと識別情報109bを結合した結合データを共通鍵111bで暗号化してからBIOSコード107に送る。   In blocks 651 and 751 in FIG. 8, the BIOS code 107 and the controller 86 perform mutual authentication by a challenge-response method. The BIOS code 107 generates a random number (one-time password) temporarily used as a challenge and sends it to the controller 86. The challenge is a different random number for each authentication. The controller 86 responds to the challenge from the BIOS 107 even before the BIOS code 107 is authenticated. The controller 86 encrypts the combined data obtained by combining the received challenge and the identification information 109b with the common key 111b, and sends the encrypted data to the BIOS code 107.

コントローラ86は、暗号化された結合データを送る際にBIOSコード107に識別情報109bを要求する。BIOSコード107は、チャレンジと識別情報109aを結合したデータを共通鍵111aで暗号化した結合データをコントローラ86に送る。ブロック653でBIOSコード107は、コントローラ86から受け取った暗号化された結合データを共通鍵111aで復号して抽出した識別情報109bを識別情報109aと比較する。   The controller 86 requests the identification information 109b from the BIOS code 107 when sending the encrypted combined data. The BIOS code 107 sends, to the controller 86, combined data obtained by encrypting data obtained by combining the challenge and the identification information 109a with the common key 111a. In block 653, the BIOS code 107 compares the identification information 109b extracted by decrypting the encrypted combined data received from the controller 86 with the common key 111a with the identification information 109a.

もし、両者が一致しない場合またはいずれの識別情報も受け取ることができない場合は、再使用のためにキャッシュ・モジュール21を初期化する必要があるので図5のブロック207に戻る。ブロック207に戻るのは、キャッシュ・モジュール21が、図5の手順でタンパーからデータ領域83を保護する機能を備えているがバインディングされていないBIOSコードを実装するノートPCに装着された第3のシナリオの場合である。   If they do not match or cannot receive any identification information, the cache module 21 needs to be initialized for reuse, and the flow returns to block 207 in FIG. Returning to block 207, the cache module 21 has a function of protecting the data area 83 from tampering in the procedure of FIG. 5, but the third is attached to the notebook PC that is mounted with the unbound BIOS code. This is a scenario.

このとき、BIOSコード107は、キャッシュ・モジュール21のデータ領域83にアクセスすることを停止して、データの消去とバインディングを含む初期化を行って、キャッシュ・モジュール21を再利用する。第4のシナリオの場合は、装着先で動作するBIOSの処理にしたがうことになるため、当該BIOSはデータを消去しないでデータ領域83にアクセスできるかも知れない。ただし、以下のブロック753、303におけるコントローラ86の処理でデータ領域83のデータは消去されるので盗聴を防止することはできる。   At this time, the BIOS code 107 stops accessing the data area 83 of the cache module 21, performs initialization including data erasure and binding, and reuses the cache module 21. In the case of the fourth scenario, it follows the process of the BIOS that operates at the mounting destination, so that the BIOS may be able to access the data area 83 without deleting the data. However, since the data in the data area 83 is erased by the processing of the controller 86 in the following blocks 753 and 303, wiretapping can be prevented.

コントローラ86は、BIOSコード107から受け取った暗号化されたチャレンジと識別情報109aの結合データを共通鍵111bで復号して抽出した識別情報109aを識別情報109bと比較する。もし、両者が一致しない場合またはいずれの識別情報も受け取ることができない場合は、初期化が行われたコンピュータとは異なるコンピュータに接続されて不正にアクセスされている可能性があるため、図5のブロック303に戻る。   The controller 86 compares the identification information 109a extracted by decrypting the combined data of the encrypted challenge received from the BIOS code 107 and the identification information 109a with the common key 111b, and the identification information 109b. If they do not match or cannot receive any identification information, there is a possibility that the computer is connected to a computer different from the one that has been initialized and accessed illegally. Return to block 303.

ブロック303に戻るのは第3のシナリオ3および第4のシナリオの場合である。このとき、キャッシュ・モジュール21は、BIOSコード107を認証できないと判断するとBIOSコード107からリセット・コマンドを受け取らない場合でも自律的にデータ領域83のデータを消去して盗聴を防止する。したがってキャッシュ・モジュール21を、バインディングされていないコンピュータに接続して不正なアクセスをしようとすれば、キャッシュ・モジュールはただちにデータを消去して盗聴を防止する。   Returning to block 303 is the case of the third scenario 3 and the fourth scenario. At this time, if the cache module 21 determines that the BIOS code 107 cannot be authenticated, the cache module 21 autonomously erases the data in the data area 83 to prevent eavesdropping even when no reset command is received from the BIOS code 107. Therefore, if the cache module 21 is connected to a computer that is not bound to attempt unauthorized access, the cache module immediately erases data to prevent eavesdropping.

ブロック653で両者が一致してBIOSコード107がキャッシュ・モジュール21を認証すると、ブロック655に移行する。またブロック753で両者が一致してキャッシュ・モジュール21がBIOSコード107を認証すると、ブロック755に移行する。ブロック655でBIOSコード107は必要に応じて、コントローラ86にタンパー・ビット85の解除要求をすると、ブロック755でコントローラ86はタンパー・ビット85を解除する。なお、コントローラ86は、自らが認証したBIOSコード107からの要求がない限りタンパー・ビット85の解除はしない。   If the two match in block 653 and the BIOS code 107 authenticates the cache module 21, the process moves to block 655. If both match in block 753 and the cache module 21 authenticates the BIOS code 107, the process moves to block 755. When the BIOS code 107 requests the controller 86 to release the tamper bit 85 as necessary in block 655, the controller 86 releases the tamper bit 85 in block 755. The controller 86 does not release the tamper bit 85 unless there is a request from the BIOS code 107 authenticated by the controller 86.

ブロック657でBIOSコード107は必要に応じて、コントローラ86にパワー・ビット87の設定要求をすると、ブロック757でコントローラ86はパワー・ビット87を設定する。なお、コントローラ86は、自らが認証したBIOSコード107からの要求がない限りパワー・ビット87の設定はしない。ブロック657から図7のブロック611に移行し、ブロック757から図7のブロック707に移行する。   When the BIOS code 107 requests the controller 86 to set the power bit 87 as necessary in block 657, the controller 86 sets the power bit 87 in block 757. The controller 86 does not set the power bit 87 unless there is a request from the BIOS code 107 authenticated by itself. Transition from block 657 to block 611 in FIG. 7 and from block 757 to block 707 in FIG.

ブロック611、707へ移行するのは、第2のシナリオの場合である。すなわち、キャッシュ・モジュール21がノートPC10から取り外され、再度ノートPC10に装着されたときは、みかけ上はタンパーが発生した状態であるが、すでにバインディングがされているので盗聴の可能性はないと判断してデータを消去することなくキャッシュ・モジュール21を利用できるようにしている。   Transition to blocks 611 and 707 is for the second scenario. That is, when the cache module 21 is removed from the notebook PC 10 and attached to the notebook PC 10 again, it appears that tampering has occurred, but since it has already been bound, there is no possibility of eavesdropping. Thus, the cache module 21 can be used without erasing data.

キャッシュ・モジュール21のタンパーを、カバー・センサ33によるボトム・カバー57の開放で検出する方法を説明したが、本発明はキャッシュ・モジュール21を取り外す際に避けることができない他の物理的な行為を検出する方法も採用することができる。たとえば、キャッシュ・モジュール21を取り外すために必ず外さなければならない部品や基板などの取り外しを検出してタンパーの発生としてもよい。データ領域83の盗聴を防止するために、データを消去する例を説明したがキャッシュ・モジュール21の再利用をする必要がない場合は、キャッシュ・モジュール21がシステムからのすべてのアクセスに対して応答しないようにロックしたりアドレステーブルを破壊したりすることで盗聴を防止するようにしてもよい。   Although the method of detecting the tamper of the cache module 21 by detecting the opening of the bottom cover 57 by the cover sensor 33 has been described, the present invention provides other physical actions that cannot be avoided when removing the cache module 21. A detection method can also be employed. For example, tampering may be generated by detecting the removal of a component or a board that must be removed in order to remove the cache module 21. Although an example of deleting data in order to prevent eavesdropping of the data area 83 has been described, if the cache module 21 does not need to be reused, the cache module 21 responds to all accesses from the system. It may be possible to prevent eavesdropping by locking the terminal table or destroying the address table.

10 ノートPC
21 キャッシュ・モジュール
33 カバー・センサ
53 システム筐体
57 ボトム・カバー
107 BIOSコード
109a、109b 識別情報
10 Notebook PC
21 Cache module 33 Cover sensor 53 System casing 57 Bottom cover 107 BIOS code 109a, 109b Identification information

Claims (21)

コンピュータの筐体に収納されたメモリ・モジュールに含まれる不揮発性メモリが記憶するデータを前記コンピュータのシステムが保護する方法であって、
前記システムがパワー・オフ状態の間に前記メモリ・モジュールが取り外された可能性を示すアクセス信号を生成するステップと、
前記アクセス信号に応答して前記メモリ・モジュールに電源を投入するステップと、
前記アクセス信号に応答して前記不揮発性メモリのデータを消去するための消去信号を前記メモリ・モジュールに送るステップと、
を有する方法。
A method in which the computer system protects data stored in a nonvolatile memory included in a memory module housed in a computer casing,
Generating an access signal indicating that the memory module may have been removed while the system is powered off;
Powering on the memory module in response to the access signal;
Sending an erase signal to the memory module to erase data in the non-volatile memory in response to the access signal;
Having a method.
前記消去信号を前記メモリ・モジュールに送るステップを、ブート中にハードウェア・レベルで実行する請求項1に記載の方法。   The method of claim 1, wherein the step of sending the erase signal to the memory module is performed at a hardware level during boot. 前記メモリ・モジュールが磁気ディスク装置のキャッシュとして機能するキャッシュ・モジュールである請求項1または請求項2に記載の方法。   3. The method according to claim 1, wherein the memory module is a cache module that functions as a cache of a magnetic disk device. 前記アクセス信号が、前記筐体が開放されたことを示す信号である請求項1から請求項3のいずれかに記載の方法。   The method according to claim 1, wherein the access signal is a signal indicating that the housing is opened. 前記アクセス信号に応答して前記メモリ・モジュールが搭載する不揮発性メモリにタンパー・ビットを設定するステップと、
ブート時に前記システムが前記タンパー・ビットを検査するステップと、
前記タンパー・ビットの設定を検出したときに前記メモリ・モジュールに前記不揮発性メモリのデータを消去するコマンドを送るステップと
を有する請求項1から請求項4のいずれかに記載の方法。
Setting a tamper bit in a non-volatile memory mounted on the memory module in response to the access signal;
The system inspects the tamper bit at boot time;
5. The method according to claim 1, further comprising a step of sending a command to erase data in the nonvolatile memory to the memory module when the setting of the tamper bit is detected.
初期化時に前記システムが前記メモリ・モジュールと識別情報を共有するステップと、
前記タンパー・ビットの設定を検出したときに前記システムが前記識別情報で前記メモリ・モジュールを認証するステップと、
前記認証が失敗したときに前記メモリ・モジュールに前記コマンドを送り、前記認証が成功したときに前記不揮発性メモリに対するアクセスを可能にするステップと
を有する請求項5に記載の方法。
The system sharing identification information with the memory module at initialization;
Authenticating the memory module with the identification information when the system detects a setting of the tamper bit;
6. The method of claim 5, comprising sending the command to the memory module when the authentication fails and allowing access to the non-volatile memory when the authentication is successful.
前記アクセス信号が、前記メモリ・モジュールにシステムが供給する電力が停止したことを示す信号である請求項1から請求項3のいずれかに記載の方法。   4. The method according to claim 1, wherein the access signal is a signal indicating that power supplied by a system to the memory module is stopped. 初期化時に前記メモリ・モジュールが搭載する揮発性メモリに前記システムから電力が供給されていることを示すパワー・ビットを設定するステップと、
ブート時に前記システムが前記パワー・ビットを検査するステップと、
前記パワー・ビットの解除を検出したときに前記メモリ・モジュールに前記不揮発性メモリのデータを消去するコマンドを送るステップと
を有する請求項7に記載の方法。
Setting a power bit indicating that power is supplied from the system to volatile memory mounted on the memory module at initialization; and
The system checks the power bit at boot time;
The method of claim 7, further comprising: sending a command to the memory module to erase data in the non-volatile memory when detecting the release of the power bit.
初期化時に前記システムが前記メモリ・モジュールと識別情報を共有するステップと、
前記パワー・ビットの解除を検出したときに前記システムが前記識別情報で前記メモリ・モジュールを認証するステップと、
前記認証が失敗したときに前記メモリ・モジュールに前記コマンドを送り、前記認証が成功したときに前記不揮発性メモリに対するアクセスを可能にするステップと
を有する請求項8に記載の方法。
The system sharing identification information with the memory module at initialization;
Authenticating the memory module with the identification information when the system detects release of the power bit;
9. The method of claim 8, comprising: sending the command to the memory module when the authentication fails and allowing access to the non-volatile memory when the authentication is successful.
コンピュータの筐体に収納されたメモリ・モジュールに含まれる不揮発性メモリが記憶するデータを前記メモリ・モジュールが保護する方法であって、
パワー・オフ状態で前記メモリ・モジュールが取り外された可能性を示すアクセス信号をシステムから受け取るステップと、
前記アクセス信号に応答して不揮発性メモリにタンパー・ビットを設定するステップと、
ブート時に前記メモリ・モジュールが前記タンパー・ビットを検査するステップと、
前記タンパー・ビットの設定を検出したときに前記メモリ・モジュールが前記不揮発性メモリのデータを消去するステップと
を有する方法。
A method for the memory module to protect data stored in a non-volatile memory included in a memory module housed in a housing of a computer,
Receiving an access signal from the system indicating that the memory module may have been removed in a power off state;
Setting a tamper bit in a non-volatile memory in response to the access signal;
The memory module inspects the tamper bit at boot time;
The memory module erasing data in the non-volatile memory when detecting the setting of the tamper bit.
初期化時に前記メモリ・モジュールが前記システムと識別情報を共有するステップと、
前記タンパー・ビットの設定を検出したときに前記メモリ・モジュールが前記識別情報で前記システムを認証するステップと、
前記認証が失敗したときに前記メモリ・モジュールが前記不揮発性メモリのデータを消去し、前記認証が成功したときに前記システムのアクセスを許可するステップと
を有する請求項10に記載の方法。
The memory module sharing identification information with the system at initialization;
The memory module authenticating the system with the identification information when detecting the tamper bit setting;
11. The method of claim 10, comprising: the memory module erasing data in the non-volatile memory when the authentication fails and allowing the system access when the authentication is successful.
初期化時に、前記メモリ・モジュールに前記システムから電力が供給されていることを示すパワー・ビットを揮発性メモリに設定するステップと、
ブート時に前記メモリ・モジュールが前記パワー・ビットを検査するステップと、
前記パワー・ビットの解除を検出したときに前記メモリ・モジュールが前記不揮発性メモリのデータを消去するステップと
を有する請求項10または請求項11に記載の方法。
At initialization, setting a power bit in volatile memory indicating that the memory module is powered by the system;
The memory module checks the power bit at boot time; and
12. The method according to claim 10 or 11, further comprising the step of erasing data in the non-volatile memory when the memory module detects release of the power bit.
デバイスを収納するシステム筐体と、
オペレーティング・システムを実行するプロセッサと、
不揮発性メモリを含むメモリ・モジュールと、
前記メモリ・モジュールが取り外された可能性を示すアクセス信号を生成するセンサと、
パワー・オフ状態で生成された前記アクセス信号に応答して前記メモリ・モジュールに電力を供給し前記不揮発性メモリのデータを消去するコントローラと
を有するコンピュータ。
A system housing that houses the device;
A processor running an operating system;
A memory module including non-volatile memory;
A sensor for generating an access signal indicating that the memory module may have been removed;
And a controller for supplying power to the memory module in response to the access signal generated in a power-off state and erasing data in the nonvolatile memory.
前記コントローラは前記アクセス信号に応答して前記メモリ・モジュールにタンパー・ビットを設定し、ブート時に前記タンパー・ビットの設定を検出したときに前記不揮発性メモリのデータを消去する請求項13に記載のコンピュータ。   14. The controller according to claim 13, wherein the controller sets a tamper bit in the memory module in response to the access signal, and erases data in the nonvolatile memory when the tamper bit setting is detected at boot time. Computer. 前記コントローラはブート時に前記タンパー・ビットの設定を検出したときに前記メモリ・モジュールを認証し、該認証が成功したときに前記メモリ・モジュールにアクセスし、前記認証が失敗したときに前記不揮発性メモリのデータを消去する請求項14に記載のコンピュータ。   The controller authenticates the memory module when detecting the tamper bit setting at boot time, accesses the memory module when the authentication is successful, and the nonvolatile memory when the authentication fails 15. The computer according to claim 14, wherein the data is erased. 前記コントローラはブート時に前記タンパー・ビットの解除を検出したときに前記認証をしないで前記メモリ・モジュールにアクセスする請求項15に記載のコンピュータ。   The computer according to claim 15, wherein the controller accesses the memory module without performing the authentication when detecting the release of the tamper bit at boot time. 前記メモリ・モジュールは前記コンピュータから電力が供給されていることを示すパワー・ビットを設定する揮発性メモリを有し、
前記コントローラはブート時に前記パワー・ビットの解除を検出したときに前記メモリ・モジュールを認証し、該認証が成功したときに前記メモリ・モジュールにアクセスし、前記認証が失敗したときに前記不揮発性メモリのデータを消去する請求項13から請求項16のいずれかに記載のコンピュータ。
The memory module has a volatile memory that sets a power bit indicating that power is being supplied from the computer;
The controller authenticates the memory module when detecting the release of the power bit at boot time, accesses the memory module when the authentication is successful, and accesses the memory module when the authentication fails The computer according to any one of claims 13 to 16, wherein the data is erased.
前記コントローラはブート時に前記パワー・ビットの設定を検出したときに前記認証をしないで前記メモリ・モジュールにアクセスする請求項17に記載のコンピュータ。   18. The computer according to claim 17, wherein the controller accesses the memory module without the authentication when detecting the setting of the power bit at boot time. 前記コントローラは、RTC(Real Time Clock)の電力源を利用してシステムに前記タンパー・ビットを設定する請求項14に記載のコンピュータ。   The computer according to claim 14, wherein the controller sets the tamper bit in a system using an RTC (Real Time Clock) power source. コンピュータの筐体に収納されるメモリ・モジュールであって、
不揮発性メモリと、
前記コンピュータのシステムに対するインターフェースと、
前記コンピュータがパワー・オフ状態の間に前記メモリ・モジュールが取り外された可能性を示すアクセス信号を前記システムから受け取ってタンパー・ビットを設定し、ブート時に前記タンパー・ビットの設定を検出したときに前記不揮発性メモリのデータを消去するコントローラと
を有する
メモリ・モジュール。
A memory module housed in a computer housing,
Non-volatile memory;
An interface to the computer system;
When the computer receives an access signal from the system indicating that the memory module may have been removed while the computer is powered off, sets the tamper bit, and detects the setting of the tamper bit at boot time A memory module having a controller for erasing data in the nonvolatile memory.
コンピュータの筐体に収納されたメモリ・モジュールに含まれる不揮発性メモリが記憶するデータを前記コンピュータのシステムが保護する方法であって、
前記システムがパワー・オフ状態の間に前記メモリ・モジュールが取り外された可能性を示すアクセス信号を生成するステップと、
前記アクセス信号に応答して前記コンピュータに電源を投入するステップと、
前記アクセス信号に応答して前記不揮発性メモリのデータに対するアクセスを禁止するためのロック信号を前記メモリ・モジュールに送るステップと、
前記ロック信号を受け取った前記不揮発性メモリが前記システムからのアクセスを停止するステップと
を有する方法。
A method in which the computer system protects data stored in a nonvolatile memory included in a memory module housed in a computer casing,
Generating an access signal indicating that the memory module may have been removed while the system is powered off;
Turning on the computer in response to the access signal;
Sending a lock signal to the memory module for prohibiting access to data in the nonvolatile memory in response to the access signal;
The nonvolatile memory receiving the lock signal stops accessing from the system.
JP2013015598A 2013-01-30 2013-01-30 Method and computer for protecting data stored in non-volatile memory Active JP5767657B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013015598A JP5767657B2 (en) 2013-01-30 2013-01-30 Method and computer for protecting data stored in non-volatile memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013015598A JP5767657B2 (en) 2013-01-30 2013-01-30 Method and computer for protecting data stored in non-volatile memory

Publications (2)

Publication Number Publication Date
JP2014146256A true JP2014146256A (en) 2014-08-14
JP5767657B2 JP5767657B2 (en) 2015-08-19

Family

ID=51426447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013015598A Active JP5767657B2 (en) 2013-01-30 2013-01-30 Method and computer for protecting data stored in non-volatile memory

Country Status (1)

Country Link
JP (1) JP5767657B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021077041A (en) * 2019-11-07 2021-05-20 日本電気株式会社 Memory device management system, memory device management method and program
JP2023039513A (en) * 2021-09-09 2023-03-22 レノボ・シンガポール・プライベート・リミテッド Information processing device and control method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09311822A (en) * 1996-05-21 1997-12-02 Oki Electric Ind Co Ltd Information processing terminal
JPH11175406A (en) * 1997-12-16 1999-07-02 Fujitsu Ltd Auxiliary storage device for information equipment
JP2005222383A (en) * 2004-02-06 2005-08-18 Hitachi Ltd Storage control device and control method for the device
JP2006127648A (en) * 2004-10-29 2006-05-18 Sharp Corp Nonvolatile storage device and electronic device
JP2007074090A (en) * 2005-09-05 2007-03-22 Sharp Corp Image data processor
JP2011048861A (en) * 2010-12-06 2011-03-10 Nec Corp Nonvolatile memory device, nonvolatile memory system, method for erasing data, program and recording medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09311822A (en) * 1996-05-21 1997-12-02 Oki Electric Ind Co Ltd Information processing terminal
JPH11175406A (en) * 1997-12-16 1999-07-02 Fujitsu Ltd Auxiliary storage device for information equipment
JP2005222383A (en) * 2004-02-06 2005-08-18 Hitachi Ltd Storage control device and control method for the device
JP2006127648A (en) * 2004-10-29 2006-05-18 Sharp Corp Nonvolatile storage device and electronic device
JP2007074090A (en) * 2005-09-05 2007-03-22 Sharp Corp Image data processor
JP2011048861A (en) * 2010-12-06 2011-03-10 Nec Corp Nonvolatile memory device, nonvolatile memory system, method for erasing data, program and recording medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021077041A (en) * 2019-11-07 2021-05-20 日本電気株式会社 Memory device management system, memory device management method and program
US11573912B2 (en) 2019-11-07 2023-02-07 Nec Corporation Memory device management system, memory device management method, and non-transitory computer-readable recording medium erasing data stored in memory device if a value of a first key and second key are different
JP2023039513A (en) * 2021-09-09 2023-03-22 レノボ・シンガポール・プライベート・リミテッド Information processing device and control method
JP7270009B2 (en) 2021-09-09 2023-05-09 レノボ・シンガポール・プライベート・リミテッド Information processing device and control method

Also Published As

Publication number Publication date
JP5767657B2 (en) 2015-08-19

Similar Documents

Publication Publication Date Title
US9735960B2 (en) Method for protecting data stored within a disk drive of a portable computer
US10839079B2 (en) Systems and methods for tamper-resistant verification of firmware with a trusted platform module
JP5711160B2 (en) Method and computer for protecting passwords
US10516533B2 (en) Password triggered trusted encryption key deletion
CN102955921B (en) Electronic device and safe starting method
JP4982825B2 (en) Computer and shared password management methods
US5937063A (en) Secure boot
KR100871181B1 (en) Protection against memory attacks following reset
US20160012233A1 (en) Verifying integrity of backup file in a multiple operating system environment
US20080168545A1 (en) Method for Performing Domain Logons to a Secure Computer Network
US11222144B2 (en) Self-encrypting storage device and protection method
KR20080072452A (en) Booting method and boot authentication method for electronic device
TW201926110A (en) Root secret key processing method and related devices of the same
JP2008236089A (en) Encryption key recovery method, information processor, and encryption key restoration program
EP3757838B1 (en) Warm boot attack mitigations for non-volatile memory modules
CN116049825A (en) Managing storage of secrets in memory of baseboard management controller
JP4724107B2 (en) User authentication method using removable device and computer
JP5767657B2 (en) Method and computer for protecting data stored in non-volatile memory
US20240012889A1 (en) Secure processor performing user authentication, and electronic device including the same
KR101266411B1 (en) Method of copy protect for digital device and apparatus thereof
JP2022047564A (en) Information processing device
JP5126530B2 (en) External storage device with function to measure computer environment
Du et al. Trusted firmware services based on TPM
KR20050119283A (en) Computer for restoring security keylock and control method thereof
CN103119553A (en) Platform firmware armoring technology

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150122

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150330

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20150410

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20150416

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150619

R150 Certificate of patent or registration of utility model

Ref document number: 5767657

Country of ref document: JP

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

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250