説明

生体認証装置を備えるコンピュータ

【課題】コンピュータの電源の起動と生体認証を簡単な操作で行うことができる方法を提供する。
【解決手段】コンピュータは指紋認証装置41を備えており起動時に指紋認証を行う。軽負荷時に損失が少ないVCC1系統は、コンピュータが停止中にも指紋認証装置に電力を供給するが、指紋認証装置が認証動作をするときには容量が不足するので電力を供給することができない。指紋認証装置は、VCC2系統を停止させてVCC1系統から電力の供給を受けながら指が接近したことを検知しパワー・コントローラ31に電力要求信号を送る。電力要求信号を受け取ったパワー・コントローラは、指紋認証装置が認証動作をする前に、DC/DCコンバータ33と切換回路105を制御して指紋認証装置にVCC2系統から電力を供給する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータによる生体認証と電源の起動を行う方法に関する。
【背景技術】
【0002】
近年コンピュータは商取引やプライバシーに関するような多くの重要な情報を扱うようになってきている。コンピュータは、ネットワークに接続された状態で使用されたりモバイル環境で使用されたりするため、コンピュータ・ウイルスやスパイウエアなどのようなソフトウエアによる攻撃や盗難などの危険に晒される。セキュリティ・レベルの高い信頼できるコンピュータのプラットフォームを構築するために、TCG(Trusted Computing Group)という業界団体が仕様(非特許文献1〜非特許文献3)を作成し公開している。非特許文献1は、Web上でhttps://www.trustedcomputinggroup.org/specs/TPM/というURLから入手することができる。
【0003】
非特許文献1に定義されているTPM(Trusted Platform Module )は、「TPM chip」、「Fritz chip」、または「TPM Security Device」などとも呼ばれるセキュリティ・チップであり、コンピュータのマザー・ボードに容易に取り外せないように取り付けられる。TPMは、プラットフォームの正当性を検証する機能およびソフトウエアのインテグリティをチェックする機能などを備えている。
【0004】
そして非特許文献1は、各コンピュータに搭載されたTPMを別のコンピュータに移植することができないようにしたり、TPMをマザー・ボードから取り外すとコンピュータが起動しないようにしたりして、コンピュータに安全かつ信頼できる環境を構築する方法を規定している。TPMを操作するためには、TPMに対して、TPMオーナーシップを示す秘密文字列(Shared Secret)の入力が要求される。さらに、TPMオーナーシップに基づいて許可される操作の中でいくつかの特権的な操作に関しては、フィジカル・プリゼンス(Physical Presence)の認証を求められる。
【0005】
非特許文献1では、フィジカル・プリゼンスを証明するために2つの方法を定義している。1つはTPMに接続され、プラットフォームに形成された起動ボタンを押すことでTPM内部のフラグを設定するハードウエア手法(Hardware Method)である。ハードウエア手法では、そのプラットフォームを物理的に保有しているユーザが操作しているということを証明できる。他の1つはハードウエア手法と同等のレベルでユーザが操作していることを証明できる環境でソフトウエアが行うコマンド手法(Command Method)というものである。コマンド手法では、ネットワークに接続されたり信頼できないソフトウエアが動作したりする前のブート・ストラップの間にCRTM(Core Root of Trust for Measurement)といわれる保護されたプログラムが実行される。
【0006】
フィジカル・プリゼンスが肯定されてTPMオーナーシップが認証されるとユーザは、TPMに対して特権コマンドを使用することができる。特権コマンドの内容は非特許文献1に記載されている。また、非特許文献2および非特許文献3には、フィジカル・プリゼンスの詳細が記載されている。非特許文献2および非特許文献3は、Webサイトからhttps://www.trustedcomputinggroup.org/specs/PCClientというURLで入手することができ。
【0007】
また、コンピュータのセキュリティを確保するために、ユーザは起動ボタンを押下して電源を起動した後にパワー・オン・パスワード、スーパーバイザ・パスワード、およびハードディスク(HDD)パスワードなどのさまざまなパスワードの入力を要求される。通常これらのパスワードをその都度入力することはユーザによって煩雑な作業となるため、1つのパスワードを代用するいわゆるシングル・サイン・オンという手法も採用されている。シングル・サイン・オンでは、1つのパスワードによる認証の重要性が高まるため、認証作業の安全性を高める必要があるため、シングル・サイン・オンを行う条件に生体認証を利用することは有効である。
【0008】
特許文献1は、従来の情報処理装置はOSが立ち上がってから指紋照合が行われるように作られているため情報処理装置で使用する複数のデバイスへ電力を供給してから指紋照合を行わなければならず、無駄にバッテリの容量を消費していたという問題を解決する方法を開示する。同文献の方法では、指紋照合を行う際には指紋照合に必要なデバイスにのみ電力を供給し、更に指紋照合で一致したと判定した場合にのみメイン電源スイッチをオンにして情報処理装置が使用する複数のデバイスへ電力を供給することでバッテリの消費を抑えることができるようになっている。
【0009】
特許文献2は、読み取り面上に指が置かれるまでの時間に無駄な電力の消費を抑制できる指紋読み取り方法を開示する。同文献の方法では、指紋データ取得センサとその近傍に配置された指置き検知センサを備え、指置き検知センサが指を検知したときに指紋データ取得センサに指紋データ取得の開始信号を出力する。
【0010】
【特許文献1】特開2000−315120号公報
【特許文献2】特開2005−222472号公報
【非特許文献1】TCG TPM Specification Version 1.2 Revision 103
【非特許文献2】TCG Physical Presence Interface Specification Version 1.0
【非特許文献3】TCG PC Specific Implementation Specification Version 1.1
【発明の開示】
【発明が解決しようとする課題】
【0011】
コンピュータに装備された生体認証装置を利用すると、そのコンピュータの真正な所有者が現実にコンピュータの前に存在するというフィジカル・プリゼンスの認証を行うことができる。また、生体認証を条件にしてシングル・サイン・オンを実行することも有効である。ところで、コンピュータによるユーザ認証は、これからコンピュータがユーザにより使用されることを前提にして行われる。したがって、生体認証の成功を条件にしてコンピュータの電源を起動することができれば起動に際してユーザの負担を軽くすることができるので都合がよい。
【0012】
さらに、生体認証の成功によるフィジカル・プリゼンスの認証とシングル・サイン・オンの実行ができればコンピュータのセキュリティの向上とユーザの負担の軽減を同時に図ることができるのでさらに都合がよい。しかし、コンピュータの電源が起動される前に生体認証装置を動作可能な状態にしておくためには、コンピュータの停止中にも一部の電源から生体認証装置に電力を供給しておく必要がある。コンピュータが電池でも駆動可能なノートブック型パーソナル・コンピュータ(以下、ノートPCという。)の場合は、電源回路の動作により停止中の電池の消耗が激しくなるためその対策が重要になる。
【0013】
そこで、本発明の目的は、電池で動作するコンピュータに適した起動と生体認証を行う方法を提供することにある。さらに本発明の目的は、真正な所有者がプラットフォームを操作している場合に限りフィジカル・プリゼンスを肯定する方法を提供することにある。さらに、本発明の目的はシングル・サイン・オンを実行する方法を提供することにある。さらに本発明の目的は、そのような方法を実現するコンピュータを提供することにある。
【課題を解決するための手段】
【0014】
本発明にかかるコンピュータは、起動ボタンと生体認証装置と第1の電源系統と第1の電源系統よりも軽負荷時の電力損失が少ない第2の電源系統を備えている。コンピュータはまた、AC/DCアダプタまたは電池で動作することができるが、電池だけから電力を供給するときには、停止中であっても特に消費電力を低減する必要がある。起動ボタンおよび生体認証装置は、ユーザがコンピュータを物理的支配下においている場合に使用できる状態でコンピュータに関連付けられていれば、コンピュータの筐体に直接取り付けられているだけでなくシステムに配線で接続されていてもよい。生体認証装置としては指紋認証装置を採用することができる。コンピュータは停止している間に第2の電源系統の動作を停止して第1の電源系統から指紋認証装置に電力を供給する。したがって、生体認証装置がスワイプを待機している間は第2の電源系統の動作による電力損失をなくすことができる。生体認証装置は、第1の電源系統から電力の供給を受けている間に人体の接近を検知して、システムに第1の電源系統から第2の電源系統への切換要求をする。
【0015】
指紋認証装置は、待機中は消費電力が小さく認証動作の際には消費電力が大きい。第1の電源系統が認証動作をしている指紋認証装置に電力を供給することができない場合であっても、本発明では第2の電源系統から電力を供給して認証動作を行うことができる。したがって、負荷に応じて電力損失の異なる第1の電源系統と第2の電源系統を切り換えて使用することで指紋認証装置に対して効率のよい電源供給をすることができる。電池から電力供給が可能なパワー・オフ(DC)状態のときには、本発明を採用することで電池の消耗を避けることができる。第1の電源系統から第2の電源系統への切り換えを無停電で行うようにすれば、ユーザは電源の切り換えを意識することなく認証動作をすることができる。第1の電源系統はリニア・レギュレータで構成し、第2の電源系統はスイッチング・レギュレータで構成することができる。
【0016】
生体認証装置が認証を成功したときに、起動ボタンが押下されたときに生成される起動信号に相応する擬似起動信号を生成するようにしてもよい。その結果コンピュータを、起動ボタンが押下されたのと同じ条件で起動させることができる。そしてコンピュータが、TCGの仕様に適合する場合は、ハイバネーション状態、パワー・オフ(AC)状態、またはパワー・オフ(DC)状態のいずれかの状態において擬似起動信号が生成されたときセキュリティ・チップにフィジカル・プリゼンスを肯定するコマンドを送ることでフィジカル・プリゼンスの認証を行うことができる。
【0017】
また、擬似起動信号によりセキュリティ・チップにフィジカル・プリゼンスを肯定するコマンドが送られたときにパワー・オン・パスワード、スーパーバイザ・パスワード、およびハードディスク・パスワードに対するシングル・サイン・オンを実行することができる。シングル・サイン・オンは、ユーザにとって便利であるが、認証方法には特に高いセキュリティが要求される。本発明では、指紋認証の成功と擬似起動信号の生成を通じて真正なユーザによるフィジカル・プリゼンスの認証が成功したときに限りシングル・サイン・オンを認めることで、その要求を満たすことができる。
【発明の効果】
【0018】
本発明により、電池で動作するコンピュータに適した起動と生体認証を行う方法を提供することができた。さらに本発明により、真正な所有者がプラットフォームを操作している場合に限りフィジカル・プリゼンスを肯定する方法を提供することができた。さらに、本発明によりシングル・サイン・オンを実行する方法を提供することができた。さらに本発明により、そのような方法を実現するコンピュータを提供することができた。
【発明を実施するための最良の形態】
【0019】
[ハードウエアの全体構成]
図1は、ノートPC10の主要なハードウエアの構成を示す概略ブロック図である。CPU11は、ノートPC10の中枢機能を担う演算処理装置で、オペレーティング・システム(OS)、BIOS、デバイス・ドライバ、あるいはアプリケーション・プログラムなどを実行する。CPU11は、ノース・ブリッジ13およびノース・ブリッジ13にさまざまなバスを経由して接続された各デバイスを制御する。ノース・ブリッジ13は、メイン・メモリ15、ビデオ・コントローラ17およびサウス・ブリッジ21に接続され、メイン・メモリ15へのアクセス動作を制御するためのメモリ・コントローラ機能や、CPU11と他のデバイスとの間のデータ転送速度の差を吸収するためのデータ・バッファ機能などを含む。
【0020】
ビデオ・コントローラ17は、グラフィック・アクセラレータおよびVRAMを備えており、CPU11からの描画命令を受けて描画すべきイメージを生成してVRAMに書き込み、VRAMから読み出したイメージを描画データとしてLCD19に送る。メイン・メモリ15は、CPU11が実行するプログラムの読み込み領域、処理データを書き込む作業領域として利用されるランダム・アクセス・メモリである。サウス・ブリッジ21はさまざまな規格のインターフェース機能を備え、ハードディスク・ドライブ(HDD)23、イーサネット(登録商標)・コントローラ22、指紋認証装置41および無線モジュール24に接続されている。サウス・ブリッジ21は、図6に示すようにステータス・レジスタ111を備えている。
【0021】
ノートPC10のパワー・ステートを遷移させる場合には、電源制御用のソフトウエアが遷移先のパワー・ステートを示すビットと遷移を実行させることを示すビットをステータス・レジスタ111に設定する。ステータス・レジスタ111のビットはパワー・オン状態以外のときにも維持されているので、ノートPC10がパワー・オン状態に遷移するときには、ステータス・レジスタ111に遷移元のビットが設定されていることになる。
【0022】
HDD23には、OS、デバイス・ドライバ、アプリケーション・プログラムなどの周知のプログラムが格納される。イーサネット(登録商標)・コントローラ22は、イーサネット(登録商標)規格の有線LANに接続するための拡張カードで、サウス・ブリッジ21にはPCI Expressバスで接続され、さらにノートPC10の筐体に取り付けられたRJ45という規格のコネクタに接続されている。ノートPC10は、所定のパワー・ステートのときにイーサネット(登録商標)・コントローラ22を経由してネットワークからマジック・パケットを受け取り、いわゆるウエイク・オン・ラン(WOL:Wake On LAN)で起動することができる。無線モジュール24は、たとえばIEEE802.11nに準拠した多入力多出力(MIMO)の無線通信に適合しており、PCI Express X1バスやUSBを介してサウス・ブリッジ21に接続され、WANやLANなどの無線ネットワークとの間で行うデータ通信を制御する。
【0023】
さらにサウス・ブリッジ21は、PCIバスまたはLPCバス25を介して、従来からノートPC10に使用されているレガシー・デバイス、あるいは高速なデータ転送を要求しないデバイスに接続される。LPCバス25には、TCGが定めるセキュリティ・チップ(TPM:Trusted Platform Module)26、BIOS_ROM27、エンベデッド・コントローラ(EC)29、セキュアNVRAM43、キーボード/マウス・コントローラ45が接続されている。
【0024】
セキュリティ・チップ26、BIOS_ROM27、セキュアNVRAM43については図2、図4、図5を参照して後に説明する。EC29は、8〜16ビットのCPU、ROM、RAMなどで構成されたマイクロ・コンピュータであり、さらに複数チャネルのA/D入力端子、D/A出力端子、タイマー、およびディジタル入出力端子を備えている。EC29は、ノートPC10の内部の動作環境の管理にかかるプログラムをCPU11とは独立して実行することができる。
【0025】
パワー・コントローラ31は、EC29およびDC/DCコンバータ33に接続され、EC29からの指示に基づいてDC/DCコンバータ33を制御するワイヤード・ロジックのディジタル制御回路(ASIC)である。DC/DCコンバータ33は、AC/DCアダプタ39またはバッテリ35から供給される直流電圧を、ノートPC10を動作させるために必要な複数の電圧に変換し、さらにパワー・ステートに応じて定義された電力供給区分に基づいて各々のデバイスに電力を供給する。パワー・ステートと電力供給区分の関係は、後に図12を参照して説明する。AC/DCアダプタ39はノートPC10に接続されると、バッテリィ35を充電する充電器37とDC/DCコンバータ33に電力を供給する。
【0026】
ノートPC10は、ACPI(Advanced Configuration and Power Interface)の省電力機能およびプラグ・アンド・プレイ方式に対応している。ACPIでは、5つのスリーピング・ステートが定義されている。S1ステート〜S3ステートは、起動までの時間を短縮したステートである。S1ステートでは、システム・コンテキストが維持される。S2ステートは、CPU11およびシステム・キャッシュのコンテキストが消失する以外はS1ステートと同じである。S3ステートは、S2ステートに加えてノース・ブリッジ13およびサウス・ブリッジ21のコンテキストが消失するが、メイン・メモリ15の記憶は保持される。S3ステートはいわゆるサスペンド状態またはsuspend to RAMといわれ、ノートPC10は、メイン・メモリ15、サウス・ブリッジ21、EC29、およびイーサネット(登録商標)・コントローラ22以外のデバイスに対する電源をオフにする。
【0027】
S4ステートはACPIでサポートされるパワー・ステートの中で最も起動までの時間が長いステートでいわゆるsuspend to diskまたはハイバネーション状態といわれる。ノートPC10は、S0ステートからS4ステートに遷移する際には、OSがHDD23にノートPC10の直前のコンテキストを格納してからパワー・コントローラ31および電源の起動に最小限必要なデバイス以外のデバイスに対する電源をオフにする。S5ステートはいわゆるソフト・オフといわれるパワー・オフ状態で、OSがコンテキストをHDD23に格納しない点を除いては電力を供給するデバイスの範囲はS4ステートと同じである。WOLが設定されているときはS3ステートからだけでなく、S4ステートおよびS5ステートにおいてもイーサネット(登録商標)・コントローラ22およびサウス・ブリッジ21には電源が供給されて、マジック・パケットを受け取って起動できるようになっている。
【0028】
S0ステートはノートPCが動作するために必要なデバイスに電力が供給されたパワー・オン状態である。図12は、各パワー・ステートに対応するDC/DCコンバータ33の電源系統を説明する図である。ノートPC10では、S0ステート、S3ステート、S4ステート、S5(AC)ステート、およびS5(DC)ステートが定義されている。S5(AC)ステートは、AC/DCアダプタ39が接続されているパワー・オフ状態を意味し、S5(DC)ステートAC/DCアダプタ39が外されてバッテリィ35が装着されているパワー・オフ状態を意味する。なお、以下の説明においては特に注記しない限り単にS5ステートと記載した場合は、S5(AC)ステートとS5(DC)ステートの両方を含むものとする。S5(DC)ステートでは、パワー・オフ状態でのバッテリィの消耗を極力少なくするために、ノートPC10の電源を起動するために必要な最小限のデバイスにだけ電力が供給される。図12にはS1ステートおよびS2ステートが定義されていないが、それらは本発明においてS3ステートと同様に処理される。
【0029】
DC/DCコンバータ33は、VCC1系統からVCC4系統までの4つの電源系統で構成されている。VCC1系統は、いずれのパワー・ステートでも動作するパワー・コントローラ31、指紋認証装置41、サウス・ブリッジ21のステータス・レジスタ111およびLCD19が開かれた状態を検知するリッド・センサ(図示せず。)などの電源起動に関連して必要とされる最小限のデバイスにだけ電力を供給する。VCC2系統は、S5(DC)ステートを除いた各パワー・ステートのときに動作するEC29、サウス・ブリッジ21、無線モジュール24などに電力を供給する。VCC2系統はさらに指紋認証装置41が認証する間にVCC1系統から切り換えられることにより指紋認証装置41にも電力を供給するがその理由および切り換え方法については後に説明する。VCC3系統は、S0ステートおよびS3ステートのときに動作するメイン・メモリ15およびノース・ブリッジ13などに電力を供給する。VCC4系統は、S0ステートのときに動作するCPU11、LCD19、HDD23などに電力を供給する。
【0030】
VCC1系統は、構成が簡単で軽負荷時の電力損失が少ないリニア・レギュレータで構成されている。リニア・レギュレータは可変抵抗素子の抵抗値を制御して出力電圧を所定の範囲に維持するが、入力電圧と出力電圧の差は熱として放熱する必要があり、負荷が大きくなると電力損失が増大し、ヒート・シンクの放熱量も限界に達するので小さい負荷の電力源に適している。VCC2系統〜VCC4系統は、構成は複雑であるが高負荷時の効率に優れたスイッチング・レギュレータで構成されている。スイッチング・レギュレータは、スイッチング素子のデューティ比を制御して出力電圧を所定の範囲に維持する。スイッチング・レギュレータは、軽負荷時にもスイッチング損失が発生するので、VCC1系統のような小さい負荷に対してはリニア・レギュレータよりも電力損失が多い。
【0031】
図1に戻ってEC29は、パワー・コントローラ31を介してDC/DCコンバータ33を制御して、図12に定義されたパワー・ステートに応じて必要な電源系統を動作させる。パワー・コントローラ31には、図6に示すようにPP(Physical Presence)ビットおよびPOP(Physical Ownership Presence)ビットを設定するステータス・レジスタ113、115を備えている。PPビットおよびPOPビットの目的については後に説明する。
【0032】
キーボード/マウス・コントローラ45は、キーボード47やマウス(図示せず)などからの入力に関するユーザ・インターフェース機能を提供する。指紋認証装置41はUSBによりサウス・ブリッジ21に接続され、さらにパワー・コントローラ31に接続されている。指紋センサ42は、スワイプ式の指紋センサでユーザの指紋画像を生成する。指紋認証装置41および指紋センサ42はそれぞれ、ノートPC10の筐体と物理的に一体になるように取り付けられている。ただし、指紋認証装置41および指紋センサ42は、必ずしも筐体に固定されている必要はなく、ノートPC10を直接支配しているユーザが認証を行い得る範囲に配置されていてもよい。指紋認証装置41については、図3を参照して後に説明する。
【0033】
[セキュリティ・チップの構成]
図2は、セキュリティ・チップ26の構成を示すブロック図である。セキュリティ・チップ26の構成は周知である。セキュリティ・チップ26は、ノートPC10のマザー・ボードにハンダで接続され他のコンピュータに移設できないようになっている。また、たとえセキュリティ・チップ26を他のコンピュータに移設したとしても当該コンピュータは動作しないようになっている。
【0034】
セキュリティ・チップ26は、プラットフォームが真正なものでTCGに準拠しているかを検証する正当性検証機能、ハードウエアやソフトウエアが改ざんされていないことを確認するインテグリティの機能、内部に保存された暗号鍵は外部に出さないという暗号鍵の保護機能、および各種暗号処理機能を備える。なお、プラットフォームとは、コンピュータ・サービスを提供するためのハードウエア・リソースおよびソフトエア・リソースの集合をいう。インターフェース51は、LPCバス25と内部バスとの間でプロトコルを双方向に変換し、セキュリティ・チップ26の内部の各コンポーネントと外部との間でのデータ転送を制御する。暗号用コプロセッサ53は、セキュリティ・チップ26の内部で暗号処理を行う。HMACエンジン55は、HMAC(Keyed-Hashing for Message Authentication code)を計算する。SHA−1エンジン57は、与えられた値に対するハッシュ値を計算する。
【0035】
Opt−In59は、セキュリティ・チップ26をオン状態またはオフ状態にするための機構などを提供する。暗号鍵生成部63は、暗号化に使用する対称鍵および非対称鍵を生成する。乱数発生器65は、セキュリティ・チップ26の内部で使用する乱数を生成する。電源検出部67は、プラットフォームの電源状態に連携してセキュリティ・チップ26の電源状態を管理する。実行エンジン69は、インターフェース51から受け取ったコマンドを実行する。
【0036】
[指紋認証装置の構成]
図3は、指紋認証装置41の構成を示すブロック図である。特徴抽出部83は、指紋センサ42から受け取った指紋画像から特徴点を抽出し、さらに抽出した特徴点の相関関係を数値化して照合指紋データを作成する。指紋センサ42には、電界または静電容量などの変化によりスワイプ時に指が指紋センサ42に置かれたことを検出する接近センサ82が設けられている。テンプレート格納部87は、あらかじめ登録する真正なユーザの照合指紋データをテンプレートとして格納する。照合部85は、認証のために指紋センサ42および特徴抽出部83が生成した照合指紋データとテンプレートを比較し、一致点が所定のスコアを越えた場合に認証が成功したと判定する。
【0037】
データ格納部91は、指紋オーナーシップ・キー93、認証成功フラグ94、バインディング・データ95、パワー・オン・パスワード96、スーパーバイザ・パスワード97、およびHDDパスワード98を格納するセキュアな不揮発性のメモリである。データ格納部91に格納されたデータを書き換えるためには、ユーザはOSが動作を開始する前に指紋認証装置41による認証またはスーパーバイザ・パスワードの入力が必要となる。
【0038】
入出力制御部89は、サウス・ブリッジ21を通じて外部とのデータ転送を制御したり、データ格納部91にアクセスしたりする。入出力制御部89は、さらに、ステータス・レジスタ113、115を設定するためのハイ/ローの2値信号およびVCC2系統からの電力供給を要求する電力要求信号をパワー・コントローラ31に送る。入出力制御部89は、さらに起動ボタン101(図6参照)が押下されたときの起動信号に相応する擬似起動信号を起動信号ライン102(図6参照)に送る。発光ダイオード(LED)106は、指紋センサ42の近辺においてノートPC10の近辺に取り付けられ電源部84に接続される。入出力制御部89は、照合部85の判定により指紋認証が失敗した場合にその旨をユーザに知らせる表示をするためにLED106を点滅させる。電源部84は切換回路105から電力を受け取り、指紋認証装置41、指紋センサ42、接近センサ82、およびLED16に電力を供給する。切換回路105の構成については、図11を参照して後に説明する。
【0039】
指紋オーナーシップ・キー93は、ユーザごとに登録されたテンプレートに関連づけられたコードである。認証成功フラグ94は、照合部85がテンプレート87と照合指紋データと一致すると判断したときに入出力制御部89により設定される。バインディング・データ95は、登録されたユーザのテンプレートに関連づけられたデータである。パワー・オン・パスワード96はノートPC10を起動する際にBIOSにより要求されるパスワードである。スーパーバイザ・パスワード97は、BIOSの設定を変更する際にBISOにより要求されるパスワードである。HDDパスワード98は、HDD23にアクセスするためにBIOSにより要求されるパスワードである。
【0040】
[BIOS_ROM27の構成]
図4は、BIOS_ROM27の構成を示す図である。BIOS_ROM27は、不揮発性で記憶内容の電気的な書き替えが可能なメモリであり、書き換えに伴うリスクを軽減するためにブート・ブロック方式を採用している。ブート・ブロック27aは、書き込み保護がされている記憶領域でここに格納されたプログラム(コードまたはインストラクションともいう。)はTPMの仕様書に規定するCRTMとして扱われ特別な権限がないと書き換えができないようになっている。CRTMは、プラットフォームの初期化コードの中で一貫性のある部分として構成され、プラットフォームのリセット時には必ず最初に実行されなければならない。CRTMは、ノートPC10がS4ステートまたはS5ステートからS0ステートに遷移するコールド・ブートのときに最初に実行される。ノートPC10のプラットフォームに関するすべての一貫性の計測は、このCRTMに基づいて行われる。
【0041】
ブート・ブロック27aには、本実施の形態にかかるフィジカル・プリゼンスの認証を行うCRTM認証コード121および最小限のその他のコード123がCRTMとして格納される。その他のコード123は、フィジカル・プリゼンスの認証に必要な最低限のハードウエアであるCPU11、メイン・メモリ15、サウス・ブリッジ21、指紋認証装置41、およびセキュリティ・チップ26などの試験および初期化を行う機能を含む。さらにその他のコード123は、BIOS_ROM27の書き換えに必要な機能を含む。
【0042】
システム・ブロック27bは、その他のコード123では実行されないBIOSの機能を担うコードを格納する。システム・ブロック27bに格納されたコードの一貫性は、ブート・ブロック27aに格納されたCRTMに基づいて計算される。POST(Power-On Self Test)125は、ハードウエアの試験および初期化を行い、周辺機器制御コード127は、BIOSの制御下でLCD19、HDD23、およびキーボード47などにアクセスするための入出力を制御する。ユーティリティ129は、電源および筐体内の温度などを管理する。パスワード認証コード131は、パワー・オン・パスワード、スーパーバイザ・パスワード、およびHDDパスワードの認証を行う。パスワード認証コード131は、さらに、本発明にかかるフィジカル・オーナーシップ・プリゼンスの認証を有効にするか否かをユーザが設定するための処理やシングル・サイン・オンの認証を行う。
【0043】
BIOS_ROM27は、図4(B)に示すように全体を一括して書き込み保護することで、内部に格納されたプログラム全体をCRTMにすることも可能である。この場合はCRTMのサイズが大きくなってBIOS_ROM27の更新が煩雑になるが、本実施の形態においてフィジカル・プリゼンスの認証を行う際にLCD19を利用してユーザにダイオードよりも情報量の多いプロンプトを提供できるなどのメリットがある。CRTM認証コード121またはパスワード認証コード131は、パワー・コントローラ31、指紋認証装置41、サウス・ブリッジ21、およびセキュリティ・チップ26にアクセスしてフィジカル・プリゼンスの認証をするためにCPU11により実行される。
【0044】
[セキュアNVRAMの構成]
図5は、セキュアNVRAM43の構成を示す図である。セキュアNVRAM43は、OSの環境下ではアクセスが制約された不揮発性のメモリである。セキュアNVRAM43は、フィジカル・オーナーシップ・プリゼンスの認証をユーザが有効になるように設定したことを示すPOP認証有効フラグ151、パワー・オン・パスワード153、およびスーパーバイザ・パスワード155を格納する。POP認証有効フラグ151は、ノートPC10が起動された以降の初期段階でBIOS_ROM27のシステム・ブロック27bに格納されたパスワード認証コード131により、ユーザが本発明にかかるフィジカル・オーナーシップ・プリゼンスの認証をするか、あるいは従来どおりのフィジカル・プリゼンスの認証をするかの選択結果に基づいて設定される。
【0045】
[ノートPCの起動および認証に関する機能構成]
図6は、ノートPCの起動および認証に関連するハードウエアおよびソフトウエアの構成を示す機能ブロック図である。起動ボタン101は、ノートPC10の筐体に物理的に一体になるように取り付けられており、ノートPC10を物理的に支配しているユーザだけが押下することができる。ただし、起動ボタン101はノートPC10を物理的に支配しているユーザが押下できる位置に配置してノートPC10に接続するようにしてもよい。起動ボタン101は起動信号ライン102でパワー・コントローラ31に接続されている。ユーザは起動ボタン101を押下することで、起動信号ライン102を通じてパワー・コントローラ31に起動信号を送ることができる。パワー・コントローラ31は、S3ステート、S4ステートまたはS5ステートの状態にあるノートPC10が、起動ボタン101から起動信号ライン102を通じて起動信号を受け取ったときにDC/DCコンバータ33を制御して所定のシーケンスで各デバイスに電力を供給しS0ステートに移行させる。
【0046】
起動ボタン101はさらにスイッチ103の一方の端子に接続されている。スイッチ103の他方の端子はビット設定ライン104を通じてパワー・コントローラ31に接続されている。スイッチ103の制御端子はサウス・ブリッジ21に接続されている。スイッチ103は、サウス・ブリッジ21のステータス・レジスタ111の値に基づいてオン/オフが制御される。切換回路105はパワー・コントローラ31とDC/DCコンバータ33と指紋認証装置41に接続され、パワー・コントローラ31の制御信号によりDC/DCコンバータ33のVCC1系統とVCC2系統が切り換えられて、いずれかの電源系統から指紋認証装置41に電力が供給される。
【0047】
指紋認証装置41には、指紋認証が失敗したときに点滅してユーザに再度のスワイプを促すLED106が接続されている。指紋認証装置41は、サウス・ブリッジ21のUSBポートと起動ボタン101に接続されている。指紋認証装置41は、サウス・ブリッジ21を通じてシステムと通信し、起動信号ライン102を通じてパワー・コントローラ31に擬似起動信号を送る。擬似起動信号は、パワー・コントローラ31に対して起動信号と同等の役割を果たす信号である。指紋認証装置41は、パワー・コントローラ31に接続され、パワー・コントローラ31に電力要求信号およびステータス・レジスタ113、115を設定するためのハイ/ローの2値信号を送る。スイッチ107の一方の端子はDC/DCコンバータ33のVCC4系統に接続され、他方の端子は発光ダイオード109に接続されている。スイッチ107の制御端子は、パワー・コントローラ31に接続されている。LED109は、指紋センサ42の近辺においてノートPC10の筐体に取り付けられており、ユーザにスワイプを促す場合に発光する。
【0048】
[切換回路の構成]
図11は、図6に記載した切換回路105の構成を示している。切換回路11は、DC/DCコンバータ33から指紋認証装置41に電力を供給するために、VCC1系統とVCC2系統を切り換える回路である。切換回路105は、pチャネル型のFET151とnチャネル型のFET153とダイオード155で構成されている。FET151のソースは、DC/DCコンバータ33のVCC1系統に接続され、ドレインは指紋認証装置41に接続されている。ダイオード155のアノードはFET151のソースに接続されカソードは指紋認証装置41に接続される。FET153のドレインはDC/DCコンバータ33のVCC2系統に接続され、ソースは指紋認証装置41に接続される。
【0049】
FET151とFET153のゲートには、パワー・コントローラ31から制御信号が供給される。パワー・コントローラ31から制御信号が供給されると、FET151とFET153は反転動作をする。指紋認証装置41は、アイドル・モードおよび認証モードの2つの動作モードで動作する。このような動作モードを備える指紋認証装置としては、UPEK社の型番TCS5B/TCD50の製品やAuthenTec社の型番AES2810の周知の製品がある。アイドル・モードでは指の接近を検出するために必要な最低限の電力を消費しながら動作し、認証モードでは最大の電力を消費しながら照合指紋データとテンプレートを比較して認証を行う。
【0050】
本実施の形態ではノートPC10がS5(DC)ステートのときには、指紋認証装置41にVCC1系統から電力を供給する。VCC1系統は、負荷の消費電力が小さいためリニア・レギュレータで構成されている。指紋認証装置41は、アイドル・モードで動作するときには、リニア・レギュレータの容量の範囲で電力を供給することができるが、認証モードで動作するときにはノートPCの収納に適したサイズのヒート・シンクでは十分に放熱できなくなる。認証モードで動作する場合にもVCC1系統のリニア・レギュレータから電力供給ができるように容量を増大すると、使用頻度の低いデバイスのために容量およびサイズが大きくなり好ましくない。
【0051】
また、VCC1系統をスイッチング・レギュレータで構成すると、スイッチング損失により軽負荷時の効率が低く、素子も高価であるためこれも好ましくない。したがって、本実施の形態では、指紋認証装置41にVCC1系統とVCC2系統の2つの電源系統から電力を供給することで効率のよい電力供給をするようになっている。図11では、指紋認証装置41にVCC1系統から電力供給をする場合は、パワー・コントローラ31は、FET151とFET153のゲートに対する制御信号をオフにして、FET151をオンにし、FET153をオフにする。VCC1系統からVCC2系統に切り換えるときは、制御信号をオンにする。
【0052】
電源系統の切り換えの瞬間は、ダイオード155を経由して指紋認証装置41に対する電力供給は継続するので、指紋認証装置41の電源部84は電源系統が切りかわったことによる影響を受けない。VCC2系統に切りかわるとVCC1系統はダイオード155を通じて指紋認証装置41に電力供給できるようになるが、ダイオード155での電圧降下があるので、実際の電力はVCC2系統から供給される。ノートPC10がS5(DC)ステート以外のパワー・ステートのときは制御信号がオンになり、指紋認証装置41にはVCC2系統から電力が供給される。
【0053】
[パワー・ステート]
図7はノートPC10におけるパワー・オンに対する各パワー・ステートの遷移方法と関連動作を説明する図である。図7は、S1ステート〜S5ステートのいずれかからS0ステートに遷移する方法を示している。起動ボタン101の押下はいずれのパワー・ステートからも実行できる。WOLでは、S5ステートからの遷移以外の場合に実行できる。キーボート47のファンクション・キー(Fnキー)の押下では、S4ステートまたはS5ステートからの遷移以外の場合に実行できる。
【0054】
ブート・ブロック27aのCRTM認証コード121およびその他のコード123は、S4ステートまたはS5ステートからS0ステートに遷移するときにだけOSのブートが始まる前に実行される。S4ステートまたはS5ステートからS0ステートに遷移することをコールド・スタートまたはコールド・ブートといい、その他のパワー・ステートからS0ステートに遷移することをウォーム・スタートまたはウォーム・ブートという。後に説明するが、起動ボタン101が押下されてコールド・スタートする場合にだけ、ステータス・レジスタ113にフィジカル・プリゼンスを認証するためのPPビットが設定される。ただし、本実施の形態では、指紋認証装置41が起動信号ライン102からパワー・コントローラ31に擬似起動信号を送ったときも起動ボタン101が押下されてコールド・スタートしたものとして処理され、ステータス・レジスタ113にPPビットが設定される。
【0055】
[ノートPCの起動および認証方法]
つぎに図8〜図10を参照して、ノートPC10の起動および認証方法について説明する。図8〜10は、図1〜図7、図11、図12、に示したソフトウエアおよびハードウエアに基づくノートPC10の電源の起動に伴う認証の手順を示すフローチャートである。図8は、ハードウエア環境下での起動および指紋認証の手順を示し、図9は、CRTM認証コード121によるフィジカル・プリゼンスおよびフィジカル・オーナーシップ・プリゼンスの認証の手順を示し、図10は、パスワード認証コード131によるシングル・サイン・オンの認証の手順を示す。
【0056】
図8のブロック201では、ノートPC10が、S3ステート、S4ステート、S5(AC)ステート、またはS5(DC)ステートのいずれかのパワー・ステートに遷移しており、各パワー・ステートに応じて図12に示したDC/DCコンバータ33の4つの電源系統が動作している。いずれのパワー・ステートでも指紋認証装置41は認証を行うことができるが、本実施の形態では、S5(DC)ステートの状態では切換回路105がVCC1系統から指紋認証装置41に電力を供給しており、スワイプの開始に伴ってVCC2系統が動作して電源系統の切り換えが行われる。
【0057】
ブロック203では指紋認証装置203はユーザによる指のスワイプを待機している。ユーザがこの時点で指をスワイプしない場合は、ブロック205に移行して起動ボタン101の押下、WOLのためのマジック・パケットの受信、またはキーボード47のFnキーの押下により、ノートPC10はパワー・オン状態(S0ステート)に遷移する。ブロック207は、起動ボタン101の押下によるパワー・オンの場合はブロック209に移行し、その他の契機によるパワー・オンの場合は参照記号Aに移行して処理されることを示す。
【0058】
起動ボタン101が押下されたときは、ノートPC10はS3ステート〜S5ステートのいずれかのステートからS0ステートに遷移する。パワー・コントローラ31は、起動ボタン101が押下されて起動信号ライン102を通じて起動信号を受け取ったときに、DC/DCコンバータ33を制御してS0ステートに対応するすべてのデバイスに電力を供給する。サウス・ブリッジ21は、ステータス・レジスタ111を参照してコールド・スタートのときにだけ、スイッチ103をオンにする。スイッチ103がオンのときに起動ボタン101が押下されると、ビット設定ライン104を通じて起動信号がパワー・コントローラ31に送られる。
【0059】
サウス・ブリッジ21は、コールド・スタートの場合はブロック205以降で指紋認証が完了するまでCPU11をアイドル状態にする。ブロック209では、ビット設定ライン104を通じて起動信号を受け取った場合に、パワー・コントローラ31のハードウエア論理回路が、ノートPC10は起動ボタン101が押下されてコールド・スタートしたと判断してブロック211でステータス・レジスタ113にPPビットを設定し、さらにブロック213でスイッチ107をオン/オフして指紋センサ42の近くに設けられたLED109を点滅させユーザに指のスワイプを促すプロンプトを生成する。ブロック201でノートPC10のパワー・ステートがS5(DC)ステートの場合は、パワー・コントローラ31は、切換回路105に制御信号を送って指紋認証装置41にVCC2系統から電力を供給する。ブロック201でノートPC10のパワー・ステートがS5(DC)ステート以外の場合は、指紋認証装置41にはすでにVCC2系統から電力が供給されているので、切換回路105での電源の切り換えは行われない。
【0060】
この時点ではCPU11はアイドル状態であるため、プログラムを実行してLCD19に指紋入力のプロンプトを出すことはできない。また、たとえCPU11を動作させてCRTMを実行させたとしてもBIOS_ROM27は、ブート・ブロック方式を採用しているため、システム・ブロック27bのコードが実行されるまでLCD19は動作しない。したがって、ブロック213では、LCD19以外の手段でユーザに指のスワイプを促すためにLED109を点滅させている。
【0061】
ただし、図4(B)のように、BIOS_ROM27に格納されたすべてのコードをCRTMにすれば、この時点でLCD19に指のスワイプのためのプロンプトを表示することもできる。ブロック209でパワー・コントローラ31がビット設定ライン104を通じて起動信号を受け取らない場合には、ノートPC10は起動ボタン101が押下されてウォーム・スタートしたことになり、PPビットは設定されないで参照記号Bに移行して処理される。ウォーム・スタートのときにはCRTM認証コード27aは実行されないので、フィジカル・プリゼンスの認証は行われない。
【0062】
ブロック215でユーザは指紋センサ42に指をスワイプする。指紋認証装置41は、ブロック217でテンプレート格納部87にあらかじめ登録してあるユーザのテンプレートと入力された指紋から抽出した照合指紋データを比較して指紋認証を行う。入出力制御部89は、指紋認証が成功した場合にデータ格納部91に認証成功フラグ94を設定し、ブロック221で指紋認証を終了させてパワー・コントローラ31にハイ/ローの2値で構成された終了信号を送る。終了信号を受け取ったパワー・コントローラ31は、LED109の点滅を停止する。この終了信号は、ハードウエアだけで生成されソフトウエアが介在しないで送られるのでセキュリティのレベルを高く維持することができる。
【0063】
照合部85は、所定回数照合を行っても入力された指紋画像がテンプレートに一致しない場合およびタイムアウトの場合にブロック219に移行してLED106を点滅させ、その後ブロック221に移行してLED106の点滅を停止し、参照記号Aに移行する。入出力制御部89は、指紋認証が失敗した場合にデータ格納部91に認証成功フラグ94を設定しない。ブロック209からブロック221までの手順は、ハードウエア論理回路だけで指紋認証装置41を制御しており、改ざんされたソフトウエアやスパイウエアにより指紋認証装置41の動作が制御されることがないため安全である。
【0064】
つぎにブロック203でスワイプが行われた場合の手順を説明する。ブロック201におけるノートPC10のパワー・ステートが、S5(DC)ステートである場合は、指紋認証装置41にVCC2系統からは電力を供給しないため、VCC1系統では認証モードに必要な電力を供給することができない。そこで、スワイプに伴って指紋認証装置41に対する電源系統の切り換えが必要になる。図13は、ノートPC10に組み込まれた指紋認証装置41が認証動作をするときの消費電力を説明する図である。図13では、消費電力を電流に置き換えて説明する。なお、図13において電流a1mA〜a4mAは、a1<a2<a3<a4の関係にある。ちなみに一例では、a1は1〜1.3mA程度であり、a4は80〜100mA程度である。
【0065】
ブロック223でノートPC10が、S5(DC)ステートの状態の場合は、ブロック225に移行して電源系統の切り換えが行われる。ブロック223でS5(DC)ステート以外の状態の場合は、指紋認証装置41にはVCC2系統から電力が供給されているのでブロック227に移行する。ブロック225においては図13に示すように、時刻t0において、アイドル・モードで動作する指紋認証装置はa1mAの電流を消費しながら接近センサ82が動作しており、スワイプのためにユーザが接近センサ82に指を接近させたことを検出することができる。VCC1系統のリニア・レギュレータは定格容量の範囲でアイドル・モードで動作する指紋認証装置41に電力を供給することができる。
【0066】
ユーザは指紋センサ42に対して指をスワイプするときに、一旦指紋センサ42に指をセットしてからスワイプする。時刻t1で検出部に指が置かれたことを接近センサ82が検出すると指紋認証装置41は認証モードに移行する準備段階として電流がa2mAまで上昇するが、VCC1系統のリニア・レギュレータは定格容量の範囲でこの段階の指紋認証装置に電力を供給することができる。その後時刻t2で、入出力制御部89はパワー・コントローラ31にVCC1系統からVCC2系統に電源を切り換えるための電力要求信号を送る。電力要求信号を受け取ったパワー・コントローラ31は、これをハードウエア論理回路で処理するために、DC/DCコンバータ33に信号を送って、1ミリ秒以内にVCC2系統のスイッチング・レギュレータを動作させることができる。VCC2系統が動作してからパワー・コントローラ31は、切換回路105に制御信号を送って、指紋認証装置41に対する電力源をVCC2系統に切り換える。
【0067】
指紋認証装置41は、準備段階に入ってから約40ミリ秒で認証モードに移行するが、この時点で指紋認証装置41にはすでにVCC2系統から電力が供給されている。ブロック227に移行して、時刻t3で認証モードが実行されると指紋認証装置41はa4mAの電流を消費する。DC/DCコンバータ33は、VCC1系統では容量が不足するがVCC2系統からは認証モードで動作する指紋認証装置41に電力を供給することができる。時刻t3から時刻t4までスワイプの処理が行われ、照合指紋データの作成が終了すると、照合部85によりテンプレート格納部87の照合指紋データとの照合作業が行われ電流はa3mAまで下がる。
【0068】
認証が成功すると入出力制御部89はデータ格納部91に認証成功フラグ94を設定してブロック233に移行し、入出力制御部89は時刻t5で起動信号ライン102を通じてパワー・コントローラ31とスイッチ103に擬似起動信号を送る。擬似起動信号は、起動ボタン101の押下による起動信号と同じ役割を果たすので、入出力制御部89が擬似起動信号を生成することを擬似押下ということにする。擬似起動信号を受け取ったパワー・コントローラ31はDC/DCコンバータ33を制御して、すべての電源系統を動作させてS0ステートで動作するデバイスに電力を供給する。
【0069】
ブロック235では、ブロック201のパワー・ステートがS4ステートまたはS5ステートの場合は、サウス・ブリッジ21がスイッチ回路103をオンにしているので、擬似起動信号がビット設定ライン104を通じてパワー・コントローラ31に送られる。パワー・コントローラ31のハードウエア論理回路は、ノートPC10は起動ボタン101が押下されてコールド・スタートしたと判断してブロック237でステータス・レジスタ113にPPビットを設定する。
【0070】
ブロック229で指紋認証が失敗した場合はブロック231に移行し、指紋認証装置41は、LED106を点滅させてユーザに認証が失敗したことを知らせる。指紋認証によるノートPC10の起動ができないことを知ったユーザは、ノートPC10を使用するためにブロック205で図7に示した3つの起動方法のいずれかで電源を起動することになる。ブロック235では、ブロック201のパワー・ステートがS3ステートであった場合は、PPビットの設定は行われずに参照記号Bに移行する。
【0071】
つづいて図9の説明に移る。図9は図8の参照記号A、Bから開始する。ブロック250では、サウス・ブリッジ21は指紋認証装置41から信号を受け取って指紋認証が完了したことを認識する。そしてサウス・ブリッジ21は、アイドル状態で動作していたCPU11に対して信号を送って動作を開始させる。CPU11が実行する最初のポインタには、ブート・ブロック27aに格納されたCRTMの先頭アドレスが設定されており、CPU11、ノース・ブリッジ13、およびサウス・ブリッジ21などの主要なチップの試験および初期化が完了した後にCRTM認証コード121の実行を開始する。
【0072】
ブロック251では、CRTM認証コード121がサウス・ブリッジ21のステータス・レジスタ111を参照してノートPC10がコールド・スタートしたかウォーム・スタートしたかを判定する。TCGの仕様には、ユーザが現実にプラットフォームの前に存在することによるフィジカル・プリゼンスを認証するためには、物理的手法とコマンド手法およびそれらを組み合わせる手法が規定されている。物理的手法は、TPMに対してプラットフォームに設けられたスイッチまたはジャンパから直接信号を送る方法である。コマンド手法は、CRTMがPCの電源が投入されてOSに制御が移行する前にTPMに対して信号を送る方法である。
【0073】
本発明では、以下に説明するように起動ボタン101の押下により生成したPPビット、指紋認証装置41、パワー・コントローラ31、およびサウス・ブリッジ21をCRTM認証コード121が制御してフィジカル・プリゼンスの認証を行う。起動ボタン101の押下には、指紋認証装置41が擬似起動信号を生成したことによるいわゆる擬似押下も含む。ブロック251でCRTM認証コード121がノートPC10はウォーム・スタートしたと判断したときはブロック267に移行する。ブロック251でCRTM認証コード121がノートPC10はコールド・スタートしたと判断したときはブロック253に移行する。
【0074】
ブロック253では、フィジカル・オーナーシップ・プリゼンスの認証が有効に設定されているか否かをCRTM認証コード121がセキュアNVRAM43のPOP認証有効フラグ151を参照して判断する。ユーザがフィジカル・オーナーシップ・プリゼンスの認証を行わないようにNVRAM49にPOP認証有効フラグ151を設定していた場合は、従来からの方法でフィジカル・プリゼンスの認証を行うためにブロック259に移行する。
【0075】
ブロック259では、CRTM認証コード121がパワー・コントローラ31のステータス・レジスタ113を参照して、PPビットが設定されているか否かを判断する。起動ボタン101の押下または擬似押下によりコールド・スタートしたときは、ブロック211またはブロック237でステータス・レジスタ113にPPビットが設定されており、フィジカル・プリゼンスが肯定されてブロック265に移行する。WOLによりコールド・スタートしたときは、ステータス・レジスタ113にPPビットが設定されていないため、フィジカル・プリゼンスが否定されてブロック267に移行する。
【0076】
ブロック253に戻って、ユーザがフィジカル・オーナーシップ・プリゼンスの認証を行うようにNVRAM49にPOP認証有効フラグ151を設定していた場合は、ブロック255に移行してCRTM認証コード121は、ステータス・レジスタ113を参照して、PPビットが設定されているか否かを判断する。PPビットが設定されていない場合は、WOLによる起動なのでブロック267に移行する。PPビットが設定されている場合はブロック257に移行してセキュリティ・チップ26による指紋認証装置41の認証を行う。CRTM認証コード121は、指紋認証装置41にバインディング・データ95の要求をする。
【0077】
指紋認証装置41の入出力制御部89は、ブロック217またはブロック229における指紋認証が成功していることを示す認証成功フラグ94が設定されている場合は、データ格納部91からバインディング・データ95を取り出してCRTM認証コード121に渡す。CRTM認証コード121はバインディング・データ95をセキュリティ・チップ26に送出する。認証成功フラグ94が設定されていない場合は、入出力制御部89はバインディング・データ95をCRTM認証コード121に渡さないため、フィジカル・オーナーシップ・プリゼンスの認証が失敗したものとして処理するためにブロック267に移行する。セキュリティ・チップ26は、受け取ったバインディング・データ95をブロック261で内部のPCR(Platform Configuration Register)に格納する。
【0078】
バインディング・データ95を受け取ったセキュリティ・チップ26は、PCRに格納されたバインディング・データ95のハッシュ値を計算し、PCRにあらかじめハッシュされて登録された指紋認証装置41のバインディング・データと比較する。比較した結果両者が一致した場合は、セキュリティ・チップ26は内部に格納しておいた指紋オーナーシップ・キーをCRTM認証コード121に送出し、一致しない場合は指紋オーナーシップ・キーをCRTM認証コード121に送出しない。CRTM認証コード121はセキュリティ・チップ26から指紋オーナーシップ・キーを受け取った場合は指紋認証装置41の認証は成功したものと判断して、それを指紋認証装置41に送ってブロック261に移行し、受け取らない場合はフィジカル・オーナーシップ・プリゼンスの認証が失敗したものとして処理するためにブロック267に移行する。
【0079】
指紋オーナーシップ・キーは、登録のために指紋センサ42で生成された指紋画像のテンプレートに対応する値であり、同じ値は、指紋認証装置41のデータ格納部91にも格納されている。ブロック261では、指紋認証装置41において、CRTM認証コード121によりセキュリティ・チップ26から送られた指紋オーナーシップ・キーがデータ格納部91に格納された指紋オーナーシップ・キー93と一致するか否かを入出力制御部89が判断する。両者が一致する場合はシステムの認証が成功したものと判断してフィジカル・オーナーシップ・プリゼンスを肯定して、指紋認証装置41の入出力制御部89はブロック263で、パワー・コントローラ31のステータス・レジスタ115にハイ/ローの2値信号を送ってPOPビットを設定する。指紋認証装置41はPOPビットの設定を、ソフトウエアを介在させないで行うことにより、セキュリティ・レベルを向上させている。
【0080】
ブロック257とブロック261では、指紋認証装置41とセキュリティ・チップ26との間で双方向にそれぞれが真正であることを認証することにより、いずれか一方または両方が悪意でプラットフォームから付け替えられた場合には、確実にフィジカル・オーナーシップ・プリゼンスを否定できるようにしている。ブロック265では、セキュアNVRAM43にPOP認証有効フラグ151が設定され、かつ、ステータス・レジスタ115にPOPビットが設定されている場合と、セキュアNVRAM43にPOP認証有効フラグ151が設定されず、かつ、ステータス・レジスタ113にPPビットが設定されている場合のいずれかを検出したCRTM認証コード121は、セキュリティ・チップ26にTSC_PhysicalPresencePresentというコマンドを送る。コマンドを受け取ったセキュリティ・チップ26は、内部でTPM_PhysicalPresenceフラグを肯定(true)に設定する。
【0081】
この場合、TPM_PhysicalPresenceフラグは2つのケースで肯定(true)に設定される。ブロック263でPOPビットが設定されている場合は本発明にかかるフィジカル・オーナーシップ・プリゼンスが肯定されて、あらかじめオーナーとして指紋が登録されたユーザが起動ボタン101を押下したか擬似押下してノートPC10を起動したことになる。また、ブロック259でPPビットだけが設定されていると判断した場合は、従来の方法でフィジカル・プリゼンスが肯定されて、不特定のユーザが起動ボタンを押下してノートPC10を起動したことになる。
【0082】
ただし、いずれの経緯を経てTPM_PhysicalPresenceフラグが肯定に設定された場合であってもセキュリティ・チップ26は、その時点で同じレベルの特権コマンドの実行を許可する。特権コマンドは、現存のオーナーを示す情報をセキュリティ・チップ26からクリアすること、セキュリティ・チップ26を一時的にディアクティベイティング(deactivating)すること、およびセキュリティ・チップ26をディスエイブリング(disabling)することを含む。なお、特権コマンドの具体的な内容は、非特許文献1に記載されている。
【0083】
ブロック267では、セキュアNVRAM43にPOP認証有効フラグ151が設定され、かつ、ステータス・レジスタ115にPOPビットが設定されていない場合と、ステータス・レジスタ113にPPビットが設定されていない場合のいずれかを検出したCRTM認証コード121は、セキュリティ・チップ26にTSC_PhysicalPresenceNotPresentというコマンドを送り、TPM_PhysicalPresenceフラグを否定(false)に設定する。
【0084】
この場合、セキュリティ・チップ26は特権コマンドを許可しない。ブロック265または267でTPM_PhysicalPresenceフラグの設定が終了すると、ブロック269に移行し、システム・ブロック27bに格納されたPOST125が実行される。これ以降の手順は図10を参照して説明する。図10は図9の参照記号Cから開始する。ブロック281では、POST125の実行に続いてあるいはその途中にシステム・ブロック27bに格納されたパスワード認証コード131が実行される。この時点では、BIOSの画面を通じてLCD19およびキーボード47の利用ができるようになっている。ブロック283でパスワード認証コード131は、指紋認証装置41に今回の起動において指紋認証が成功したか否かを問い合わせる。入出力制御部89は、データ格納部91の認証成功フラグ94を参照して、パスワード認証コード131に結果を通知する。
【0085】
パスワード認証コード131は、今回の起動において指紋認証が成功したと判断したときは、ブロック285に移行し、指紋認証が失敗したと判断したときはブロック297に移行する。ブロック285では、パスワード認証コード131がステータス・レジスタ115にPOPビットが設定されているか否かを判断する。POPビットが設定されているときはブロック287に移行し、設定されていないときはブロック297に移行する。
【0086】
パスワード認証コード131はブロック287で、指紋認証装置41のデータ格納部91からパワー・オン・パスワード96、スーパーバイザ・パスワード97、およびHDDパスワード98を取得する。パスワード認証コード131はブロック289でNVRAM43に格納されたパワー・オン・パスワード153、スーパーバイザ・パスワード155およびHDD23から取得したHDDパスワードと比較して、それらの認証をユーザの介在なしで完了させる。このようにユーザが行う複数の個別認証を一度に行う方法をシングル・サイン・オン(SSO:Single Sign-On)という。個別認証は、セキュリティを強化する目的で別々の認証を要求するものであるが、ユーザにとっては煩わしさを否めない。
【0087】
したがって、シングル・サイン・オンによりユーザの利便性を高めることができるが、それを認めるときには、個別認証に比べてセキュリティ・レベルを低下させないようにする必要がある。ブロック289でのシングル・サイン・オンは、フィジカル・オーナーシップ・プリゼンスが肯定された条件のもとで行われるものであり、従来のシングル・サイン・オンに比べてセキュリティ・レベルは高くなっている。
【0088】
ブロック291では、パスワード認証コード131は、ステータス・レジスタ113、115のPPフラグおよびPOPフラグをリセットし、さらに指紋認証装置41に対してデータ格納部91の認証成功フラグ94をリセットするように要求する。この要求を受けた入出力制御部89は認証成功フラグ94をリセットする。ブロック293でパスワード認証コード131は、セキュリティ・チップ26にTSC_PhysicalPresenceNotPresentというコマンドを送って、TPM_PhysicalPresenceフラグを否定に設定し、さらに、TSC_PhysicalPresenceLockというコマンドを送ってTPM_PhysicalPresenceフラグが書き換えられないようにする。
【0089】
その後ブロック295でOSのブートが開始されるが、セキュリティ・チップ26はこれ以降において特権コマンドを許可せず、また、TSC_PhysicalPresencePresentというコマンドを受け付けない。なお、TPM_PhysicalPresenceフラグのロック状態は、ノートPC10がコールド・スタートされるたびに解除される。ブロック297〜301では、シングル・サイン・オンが認められないため、ユーザは個別認証でパワー・オン・パスワード、スーパーバイザ・パスワード、およびHDDパスワードをパスワード認証コード131の要求に応じてキーボード47から入力する。本発明におけるフィジカル・オーナーシップ・プリゼンスは指紋認証装置41に代えて掌形、網膜、虹彩、音声または静脈などの他の生体情報を用いた生体認証装置を利用することができる。
【0090】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。
【図面の簡単な説明】
【0091】
【図1】ノートPCの主要なハードウエアの構成を示す概略ブロック図である。
【図2】セキュリティ・チップの構成を示すブロック図である。
【図3】指紋認証装置の構成を示すブロック図である。
【図4】BIOS_ROMの構成を示す図である。
【図5】セキュアNVRAMの構成を示す図である。
【図6】ノートPCの起動および認証に関連するハードウエアおよびソフトウエアの構成を示す機能ブロック図である。
【図7】ノートPCのパワー・ステートの遷移方法と関連動作を説明する図である。
【図8】ノートPCの起動および認証の手順を示すフローチャートである。
【図9】ノートPCの起動および認証の手順を示すフローチャートである。
【図10】シングル・サイン・オンの認証手順を示すフローチャートである。
【図11】切換回路の構成を示す図である。
【図12】各パワー・ステートに対応するDC/DCコンバータの電源系統を説明する図である。
【図13】指紋認証装置が認証動作をするときの消費電力を説明する図である。
【符号の説明】
【0092】
26…セキュリティ・チップ
41…指紋認証装置
82…接近センサ
101…起動ボタン
105…切換回路
111、113、115…ステータス・レジスタ

【特許請求の範囲】
【請求項1】
起動ボタンと生体認証装置と第1の電源系統と該第1の電源系統よりも軽負荷時の電力損失が少ない第2の電源系統を備えAC/DCアダプタまたは電池で動作することができるコンピュータが起動時に生体認証をする方法であって、
前記第2の電源系統の動作を停止し前記第1の電源系統から前記生体認証装置に電力を供給しながら前記コンピュータが動作を停止する停止ステップと、
前記コンピュータが動作を停止している間に前記生体認証装置が人体の接近を検知したことに応答してシステムが前記第2の電源系統を動作させ前記生体認証装置に前記第2の電源系統から電力を供給する電源切換ステップと、
前記第2の電源系統から電力の供給を受けながら前記生体認証装置が認証動作を行う認証ステップと、
前記認証が成功したことに応答してシステムが前記コンピュータをパワー・オン状態に移行させる起動ステップと
を有する方法。
【請求項2】
前記起動ステップは、前記生体認証装置が認証を成功したときに前記起動ボタンの押下により生成される起動信号に相応する擬似起動信号を生成するステップを含む請求項1に記載の方法。
【請求項3】
前記停止ステップにおいて前記コンピュータは前記電池だけから電力供給が可能なパワー・オフ(DC)状態に移行している請求項1または請求項2に記載の方法。
【請求項4】
前記電源切換ステップを、前記第1の電源系統から前記第2の電源系統に切り換える際に前記第1の電源系統と前記第2の電源系統のいずれかから常に電力を供給しながら無停電で行う請求項1から請求項3のいずれかに記載の方法。
【請求項5】
前記コンピュータはTCGの仕様に適合したセキュリティ・チップを供え、前記停止ステップにおいてハイバネーション状態、AC/DCアダプタから電力供給が可能なパワー・オフ(AC)状態、または前記電池からだけ電力供給が可能なパワー・オフ(DC)状態のいずれかの状態のときに前記擬似起動信号が生成されたことに応答して前記セキュリティ・チップにフィジカル・プリゼンスを肯定するコマンドを送るステップを有する請求項2から請求項4のいずれかに記載の方法。
【請求項6】
前記停止ステップにおいてサスペンド状態のときに前記擬似起動信号が生成されたことに応答して前記セキュリティ・チップにフィジカル・プリゼンスを否定するコマンドを送るステップを有する請求項5に記載の方法。
【請求項7】
前記セキュリティ・チップに前記フィジカル・プリゼンスを肯定するコマンドが送られたことに応答してパワー・オン・パスワード、スーパーバイザ・パスワード、およびハードディスク・パスワードに対するシングル・サイン・オンを実行するステップを有する請求項5または請求項6に記載の方法。
【請求項8】
前記認証ステップにおいて前記生体認証装置が認証を失敗したことに応答してユーザに対して認証の失敗を表示するステップを有する請求項1から請求項7のいずれかに記載の方法。
【請求項9】
AC/DCアダプタまたは電池で動作することが可能で電源起動時に生体認証を要求するコンピュータであって、
プロセッサと、
第1の電源系統と該第1の電源系統よりも軽負荷時の電力損失が少ない第2の電源系統を含む電源装置と、
前記電源装置を制御する電源制御回路と、
前記コンピュータを起動するために起動信号を生成する起動ボタンと、
前記第2の電源系統を停止させて前記第1の電源系統から電力の供給を受けながら人体の接近を検出したときに前記電源制御回路に電力要求信号を生成して前記第2の電源系統を動作させ、前記第2の電源系統から電力の供給を受けながら認証動作をする生体認証装置とを有し、
前記電源制御回路は前記生体認証装置が認証を成功したことに応答して前記コンピュータをパワー・オン状態に移行させるコンピュータ。
【請求項10】
前記生体認証装置は認証を成功したときに前記電源制御回路に前記起動信号と同等の擬似起動信号を送る請求項9に記載のコンピュータ。
【請求項11】
前記生体認証装置が前記第1の電源系統から電力の供給を受けて人体の接近を検出するとき前記コンピュータは前記電池だけから電力の供給を受けているパワー・オフ(DC)状態に移行している請求項9または請求項10に記載のコンピュータ。
【請求項12】
前記第1の電源系統がリニア・レギュレータで構成され前記第2の電源系統がスイッチング・レギュレータで構成されている請求項9から請求項11のいずれかに記載のコンピュータ。
【請求項13】
前記第1の電源系統から前記第2の電源系統へ前記生体認証装置に対する電力源を切り換える切換回路を有する請求項9から請求項12のいずれかに記載のコンピュータ。
【請求項14】
前記切換回路は、前記第1の電源系統と前記生体認証装置に接続された第1のFETと前記第1のFETに並列に接続されたダイオードと前記第2の電源系統と前記生体認証装置に接続された第2のFETで構成されている請求項13に記載のコンピュータ。
【請求項15】
前記生体認証装置が認証に失敗したことを表示する表示器を有する請求項9から請求項14のいずれかに記載のコンピュータ。
【請求項16】
前記コンピュータがTCGの仕様に適合し、
セキュリティ・チップと、
CRTM認証コードを格納する不揮発性メモリとを有し、
前記プロセッサは前記擬似起動信号が生成されてオペレーティング・システムが実行される前に前記CRTM認証コードを実行して、前記コンピュータがコールド・スタートしたときに前記セキュリティ・チップにフィジカル・プリゼンスを肯定するコマンドを送る請求項10から請求項15のいずれかに記載のコンピュータ。
【請求項17】
前記プロセッサは前記セキュリティ・チップに前記フィジカル・プリゼンスを肯定するコマンドを送ったときにパワー・オン・パスワード、スーパーバイザ・パスワード、およびハードディスク・パスワードに対するシングル・サイン・オンを許可する請求項16に記載のコンピュータ。
【請求項18】
前記生体認証装置が指紋認証装置である請求項9から請求項17のいずれかに記載のコンピュータ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2010−146048(P2010−146048A)
【公開日】平成22年7月1日(2010.7.1)
【国際特許分類】
【出願番号】特願2008−319250(P2008−319250)
【出願日】平成20年12月16日(2008.12.16)
【出願人】(505205731)レノボ・シンガポール・プライベート・リミテッド (292)
【復代理人】
【識別番号】100106699
【弁理士】
【氏名又は名称】渡部 弘道
【復代理人】
【識別番号】100077584
【弁理士】
【氏名又は名称】守谷 一雄
【Fターム(参考)】