(57)【要約】様々なセキュリティレベルを有する情報処理装置を取引状況に応じて柔軟、かつ、高いセキュリティレベルで認証することが可能な認証方法等を提供する。Ｗｅｂサーバ１は、コンピュータ２に係る生体認証に関する情報を受信し、コンピュータ２を特定するための識別情報に関する情報を受信し、コンピュータ２の環境に関する情報を受信する。またコンピュータ２から送信される電子署名を受信する。レベル決定手段は、受信した生体認証に関する情報に基づく生体レベル、識別情報に関する情報に基づく機器レベル、及び、環境に関する情報に基づく環境レベルを決定する。補正手段は、本人の電子証明書とペアになる秘密鍵による電子署名の有効性により決定したレベルを補正する。補正後の生体レベル、機器レベル及び環境レベルの全てにより決定されるレベルが予め記憶した基準レベル以上の場合に、判断手段は正と判断する。
2009122530.tif 000002
【特許請求の範囲】
【請求項１】
通信網を介して接続された情報処理装置を認証装置が認証する認証方法において、
情報処理装置に係る生体認証に関する情報を受信する生体受信ステップと、
情報処理装置を特定するための識別情報に関する情報を受信する装置受信ステップと、
情報処理装置の環境に関する情報を受信する環境受信ステップと、
情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信ステップと、
前記生体受信ステップにより受信した生体認証に関する情報に基づく生体レベル、前記装置受信ステップにより受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信ステップにより受信した環境に関する情報に基づく環境レベルを決定するレベル決定ステップと、
前記電子署名受信ステップにより受信した電子署名の有効性により前記レベル決定ステップにより決定したレベルを補正する補正ステップと、
該補正ステップにより補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断ステップと
を備えることを特徴とする認証方法。
【請求項２】
通信網を介して接続された情報処理装置の認証を行う認証装置において、
情報処理装置に係る生体認証に関する情報を受信する生体受信手段と、
情報処理装置を特定するための識別情報に関する情報を受信する装置受信手段と、
情報処理装置の環境に関する情報を受信する環境受信手段と、
情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信手段と、
前記生体受信手段により受信した生体認証に関する情報に基づく生体レベル、前記装置受信手段により受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信手段により受信した環境に関する情報に基づく環境レベルを決定するレベル決定手段と、
前記電子署名受信手段により受信した電子署名の有効性により前記レベル決定手段により決定したレベルを補正する補正手段と、
該補正手段により補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断手段と
を備えることを特徴とする認証装置。
【請求項３】
前記生体受信手段は、
前記情報処理装置で実行された生体認証の種類または生体認証に必要とされる生体情報の前記情報処理装置における記憶状態に関する情報を含む生体認証に関する情報を受信するよう構成してあり、
前記レベル決定手段は、
生体認証の種類または生体情報の記憶状態に対応づけて生体レベルが記憶されたポリシーテーブルを参照して、前記生体受信手段により受信した生体認証に関する情報に基づく生体レベルを決定するよう構成してある
ことを特徴とする請求項２に記載の認証装置。
【請求項４】
前記装置受信手段は、
前記情報処理装置を特定するための識別情報の該情報処理装置における記憶状態に関する情報を含む識別情報に関する情報を受信するよう構成してあり、
前記レベル決定手段は、
記憶状態に関する情報に応じて装置レベルが記憶されたポリシーテーブルを参照して、前記装置受信手段により受信した識別情報に関する情報に基づく装置レベルを決定するよう構成してある
ことを特徴とする請求項２または３に記載の認証装置。
【請求項５】
前記環境受信手段は、
前記情報処理装置を動作させるソフトウェアの種類に関する情報を含む環境に関する情報を受信するよう構成してあり、
前記レベル決定手段は、
ソフトウェアの種類に応じて、前記環境受信手段により受信した環境に関する情報に基づく環境レベルを決定するよう構成してある
ことを特徴とする請求項２乃至４のいずれか一つに記載の認証装置。
【請求項６】
前記補正手段は、
前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、
該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された生体認証に関する情報を前記生体受信手段により受信したか否かを判断する手段と、
該手段により電子署名と共に前記暗号化された生体認証に関する情報を受信したと判断した場合に、前記暗号化された生体認証に関する情報を、前記暗号化鍵を用いて復号する手段と、
該手段により復号した生体認証に関する情報が改竄されているか否かを検査する手段と、
該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した生体レベルを高いレベルへ補正する手段と
を含むことを特徴とする請求項２乃至５のいずれか一つに記載の認証装置。
【請求項７】
前記補正手段は、
前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、
該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された識別情報に関する情報を前記装置受信手段により受信したか否かを判断する手段と、
該手段により電子署名と共に前記暗号化された識別情報に関する情報を受信したと判断した場合に、前記暗号化された識別情報に関する情報を、前記暗号化鍵を用いて復号する手段と、
該手段により復号した識別情報に関する情報が改竄されているか否かを検査する手段と、
該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した装置レベルを高いレベルへ補正する手段と
を含むことを特徴とする請求項２乃至５のいずれか一つに記載の認証装置。
【請求項８】
前記補正手段は、
前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、
該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された環境に関する情報を前記環境受信手段により受信したか否かを判断する手段と、
該手段により電子署名と共に前記暗号化された環境に関する情報を受信したと判断した場合に、前記暗号化された環境に関する情報を、前記暗号化鍵を用いて復号する手段と、
該手段により復号した環境に関する情報が改竄されているか否かを検査する手段と、
該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した環境レベルを高いレベルへ補正する手段と
を含むことを特徴とする請求項２乃至５のいずれか一つに記載の認証装置。
【請求項９】
前記補正手段は、
前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、
該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を前記生体受信手段、前記装置受信手段及び前記環境受信手段により受信したか否かを判断する手段と、
該手段により電子署名と共に前記暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を受信したと判断した場合に、前記暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を、前記暗号化鍵を用いて復号する手段と、
該手段により復号した生体認証に関する情報、識別情報に関する情報及び環境に関する情報が改竄されているか否かを検査する手段と、
該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した生体レベル、装置レベル及び環境レベルを高いレベルへ補正する手段と
を含むことを特徴とする請求項２乃至５のいずれか一つに記載の認証装置。
【請求項１０】
前記判断手段は、
生体レベル、装置レベル及び環境レベルの各レベル全ての組み合わせに対して基準レベルに係る正否を記憶したポリシーテーブルを参照し、前記補正手段により補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルが正であると判断するよう構成してある
ことを特徴とする請求項２乃至９のいずれか一つに記載の認証装置。
【請求項１１】
前記情報処理装置の要求に応じて複数の処理を実行する実行手段と、
該実行手段により実行される各処理の重要度を決定する決定手段と、
該決定手段により決定した処理の重要度に応じて、記憶される生体レベル、装置レベル及び環境レベルの各レベル全ての組み合わせに対する正否の情報が異なる複数のポリシーテーブルの中から一のポリシーテーブルを選択する選択手段とを備え、
前記判断手段は、
前記選択手段により選択されたポリシーテーブルを参照し、前記補正手段により補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルが正であると判断するよう構成してある
ことを特徴とする請求項１０に記載の認証装置。
【請求項１２】
前記レベル決定手段は、
前記環境受信手段で受信したソフトウェアの種類に関する情報を外部へ送信する手段と、
該手段に対応して外部から送信されたソフトウェアの種類に基づき決定される環境レベルを受信する手段と、
該手段により受信した環境レベルを、前記環境受信手段により受信した環境に関する情報に基づく環境レベルとして決定する手段と
を含むことを特徴とする請求項５に記載の認証装置。
【請求項１３】
通信網を介して接続された情報処理装置をコンピュータにより認証するためのプログラムにおいて、
コンピュータに、
情報処理装置に係る生体認証に関する情報を受信する生体受信ステップと、
情報処理装置を特定するための識別情報に関する情報を受信する装置受信ステップと、
情報処理装置の環境に関する情報を受信する環境受信ステップと、
情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信ステップと、
前記生体受信ステップにより受信した生体認証に関する情報に基づく生体レベル、前記装置受信ステップにより受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信ステップにより受信した環境に関する情報に基づく環境レベルを決定するレベル決定ステップと、
前記電子証明書受信ステップにより受信した電子署名の有効性により前記レベル決定ステップにより決定したレベルを補正する補正ステップと、
該補正ステップにより補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断ステップと
を実行させるためのプログラム。
【請求項１４】
通信網を介して接続された情報処理装置をコンピュータにより認証するためのプログラムが記録されたコンピュータでの読み取りが可能な記録媒体において、
コンピュータに、
情報処理装置に係る生体認証に関する情報を受信する生体受信ステップと、
情報処理装置を特定するための識別情報に関する情報を受信する装置受信ステップと、
情報処理装置の環境に関する情報を受信する環境受信ステップと、
情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信ステップと、
前記生体受信ステップにより受信した生体認証に関する情報に基づく生体レベル、前記装置受信ステップにより受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信ステップにより受信した環境に関する情報に基づく環境レベルを決定するレベル決定ステップと、
前記電子署名受信ステップにより受信した電子署名の有効性により前記レベル決定ステップにより決定したレベルを補正する補正ステップと、
該補正ステップにより補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断ステップと
を実行させるためのプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信網を介して接続された情報処理装置の認証を行う認証方法、認証装置、該認証装置をコンピュータとして機能させるためのプログラム及び記録媒体に関する。
【背景技術】
【０００２】
近年、インターネット等を通じたオンライン取引が増加している。このようなオンライン取引においてはセキュリティを十分に確保する必要がある。従来はセキュリティを確保すべく生体認証による本人確認の他、ＰＫＩ（Public Key Infrastructure）認証等も実施されている。本願出願人は例えば特許文献１に生体認証、ＰＫＩ認証及び機器（装置）の環境情報に基づく認証を組み合わせた安全性判断方法を提案している。
【特許文献１】特開２００４−１５７７９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、認証を行う対象である情報処理装置の種類は様々であり、全ての情報処理装置に対し同レベルでの認証を行うことは実情に沿わない。例えば最新の情報処理装置ではセキュリティレベルの高い生体認証が実行され、またデータは高いセキュリティレベルで格納され、さらにはセキュリティレベルの高いソフトウェアがインストールされている。その一方で、これに達しないセキュリティレベルしか実装しない情報処理装置も存在する。さらには、オンライン銀行における送金処理及びオンライン証券における株式取引処理等においては高度のセキュリティレベルが要求される。反対に、オンラインミュージックストアからの音楽データの購入等、低額商品の購入において、高度のセキュリティレベルを課しては却って円滑な取引を阻害する。なお、特許文献１にはこのような問題を解決する手段は何ら記載されていない。【０００４】
本発明は斯かる事情に鑑みてなされたものであり、複数の認証処理の内容を認証装置のセキュリティポリシーに基づき総合的に判断することにより、様々なセキュリティレベルを有する情報処理装置を取引状況に応じて柔軟、かつ、高いセキュリティレベルで認証することが可能な認証方法、認証装置、該認証装置をコンピュータとして機能させるためのプログラム及び記録媒体を提供することにある。
【課題を解決するための手段】
【０００５】
本発明に係る認証方法は、通信網を介して接続された情報処理装置を認証装置が認証する認証方法において、情報処理装置に係る生体認証に関する情報を受信する生体受信ステップと、情報処理装置を特定するための識別情報に関する情報を受信する装置受信ステップと、情報処理装置の環境に関する情報を受信する環境受信ステップと、情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信ステップと、前記生体受信ステップにより受信した生体認証に関する情報に基づく生体レベル、前記装置受信ステップにより受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信ステップにより受信した環境に関する情報に基づく環境レベルを決定するレベル決定ステップと、前記電子署名受信ステップにより受信した電子署名の有効性により前記レベル決定ステップにより決定したレベルを補正する補正ステップと、該補正ステップにより補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断ステップとを備えることを特徴とする。【０００６】
本発明に係る認証装置は、通信網を介して接続された情報処理装置の認証を行う認証装置において、情報処理装置に係る生体認証に関する情報を受信する生体受信手段と、情報処理装置を特定するための識別情報に関する情報を受信する装置受信手段と、情報処理装置の環境に関する情報を受信する環境受信手段と、情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信手段と、前記生体受信手段により受信した生体認証に関する情報に基づく生体レベル、前記装置受信手段により受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信手段により受信した環境に関する情報に基づく環境レベルを決定するレベル決定手段と、前記電子署名受信手段により受信した電子署名の有効性により前記レベル決定手段により決定したレベルを補正する補正手段と、該補正手段により補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断手段とを備えることを特徴とする。【０００７】
本発明に係る認証装置は、前記生体受信手段は、前記情報処理装置で実行された生体認証の種類または生体認証に必要とされる生体情報の前記情報処理装置における記憶状態に関する情報を含む生体認証に関する情報を受信するよう構成してあり、前記レベル決定手段は、生体認証の種類または生体情報の記憶状態に対応づけて生体レベルが記憶されたポリシーテーブルを参照して、前記生体受信手段により受信した生体認証に関する情報に基づく生体レベルを決定するよう構成してあることを特徴とする。【０００８】
本発明に係る認証装置は、前記装置受信手段は、前記情報処理装置を特定するための識別情報の該情報処理装置における記憶状態に関する情報を含む識別情報に関する情報を受信するよう構成してあり、前記レベル決定手段は、記憶状態に関する情報に応じて装置レベルが記憶されたポリシーテーブルを参照して、前記装置受信手段により受信した識別情報に関する情報に基づく装置レベルを決定するよう構成してあることを特徴とする。【０００９】
本発明に係る認証装置は、前記環境受信手段は、前記情報処理装置を動作させるソフトウェアの種類に関する情報を含む環境に関する情報を受信するよう構成してあり、前記レベル決定手段は、ソフトウェアの種類に応じて、前記環境受信手段により受信した環境に関する情報に基づく環境レベルを決定するよう構成してあることを特徴とする。【００１０】
本発明に係る認証装置は、前記補正手段は、前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された生体認証に関する情報を前記生体受信手段により受信したか否かを判断する手段と、該手段により電子署名と共に前記暗号化された生体認証に関する情報を受信したと判断した場合に、前記暗号化された生体認証に関する情報を、前記暗号化鍵を用いて復号する手段と、該手段により復号した生体認証に関する情報が改竄されているか否かを検査する手段と、該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した生体レベルを高いレベルへ補正する手段とを含むことを特徴とする。【００１１】
本発明に係る認証装置は、前記補正手段は、前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された識別情報に関する情報を前記装置受信手段により受信したか否かを判断する手段と、該手段により電子署名と共に前記暗号化された識別情報に関する情報を受信したと判断した場合に、前記暗号化された識別情報に関する情報を、前記暗号化鍵を用いて復号する手段と、該手段により復号した識別情報に関する情報が改竄されているか否かを検査する手段と、該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した装置レベルを高いレベルへ補正する手段とを含むことを特徴とする。【００１２】
本発明に係る認証装置は、前記補正手段は、前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された環境に関する情報を前記環境受信手段により受信したか否かを判断する手段と、該手段により電子署名と共に前記暗号化された環境に関する情報を受信したと判断した場合に、前記暗号化された環境に関する情報を、前記暗号化鍵を用いて復号する手段と、該手段により復号した環境に関する情報が改竄されているか否かを検査する手段と、該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した環境レベルを高いレベルへ補正する手段とを含むことを特徴とする。【００１３】
本発明に係る認証装置は、前記補正手段は、前記電子署名受信手段により電子署名を受信したか否かを判断する手段と、該手段により電子署名を受信したと判断した場合に、電子署名の受信と共に、あらかじめ前記情報処理装置と認証装置との間で取り交わされた暗号化鍵で暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を前記生体受信手段、前記装置受信手段及び前記環境受信手段により受信したか否かを判断する手段と、該手段により電子署名と共に前記暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を受信したと判断した場合に、前記暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を、前記暗号化鍵を用いて復号する手段と、該手段により復号した生体認証に関する情報、識別情報に関する情報及び環境に関する情報が改竄されているか否かを検査する手段と、該手段により改竄されていないと判断した場合に、前記レベル決定手段により決定した生体レベル、装置レベル及び環境レベルを高いレベルへ補正する手段とを含むことを特徴とする。【００１４】
本発明に係る認証装置は、前記判断手段は、生体レベル、装置レベル及び環境レベルの各レベル全ての組み合わせに対して基準レベルに係る正否を記憶したポリシーテーブルを参照し、前記補正手段により補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルが正であると判断するよう構成してあることを特徴とする。【００１５】
本発明に係る認証装置は、前記情報処理装置の要求に応じて複数の処理を実行する実行手段と、該実行手段により実行される各処理の重要度を決定する決定手段と、該決定手段により決定した処理の重要度に応じて、記憶される生体レベル、装置レベル及び環境レベルの各レベル全ての組み合わせに対する正否の情報が異なる複数のポリシーテーブルの中から一のポリシーテーブルを選択する選択手段とを備え、前記判断手段は、前記選択手段により選択されたポリシーテーブルを参照し、前記補正手段により補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルが正であると判断するよう構成してあることを特徴とする。【００１６】
本発明に係る認証装置は、前記レベル決定手段は、前記環境受信手段で受信したソフトウェアの種類に関する情報を外部へ送信する手段と、該手段に対応して外部から送信されたソフトウェアの種類に基づき決定される環境レベルを受信する手段と、該手段により受信した環境レベルを、前記環境受信手段により受信した環境に関する情報に基づく環境レベルとして決定する手段とを含むことを特徴とする。【００１７】
本発明に係るプログラムは、通信網を介して接続された情報処理装置をコンピュータにより認証するためのプログラムにおいて、コンピュータに、情報処理装置に係る生体認証に関する情報を受信する生体受信ステップと、情報処理装置を特定するための識別情報に関する情報を受信する装置受信ステップと、情報処理装置の環境に関する情報を受信する環境受信ステップと、情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信ステップと、前記生体受信ステップにより受信した生体認証に関する情報に基づく生体レベル、前記装置受信ステップにより受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信ステップにより受信した環境に関する情報に基づく環境レベルを決定するレベル決定ステップと、前記電子証明書受信ステップにより受信した電子署名の有効性により前記レベル決定ステップにより決定したレベルを補正する補正ステップと、該補正ステップにより補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断ステップとを実行させることを特徴とする。【００１８】
本発明に係る記録媒体は、通信網を介して接続された情報処理装置をコンピュータにより認証するためのプログラムが記録されたコンピュータでの読み取りが可能な記録媒体において、コンピュータに、情報処理装置に係る生体認証に関する情報を受信する生体受信ステップと、情報処理装置を特定するための識別情報に関する情報を受信する装置受信ステップと、情報処理装置の環境に関する情報を受信する環境受信ステップと、情報処理装置から送信される電子証明書とペアになる秘密鍵による電子署名を受信する電子署名受信ステップと、前記生体受信ステップにより受信した生体認証に関する情報に基づく生体レベル、前記装置受信ステップにより受信した識別情報に関する情報に基づく装置レベル、及び、前記環境受信ステップにより受信した環境に関する情報に基づく環境レベルを決定するレベル決定ステップと、前記電子署名受信ステップにより受信した電子署名の有効性により前記レベル決定ステップにより決定したレベルを補正する補正ステップと、該補正ステップにより補正した生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、正と判断する判断ステップとを実行させることを特徴とする。【００１９】
本発明にあっては、認証装置は、生体受信手段により情報処理装置に係る生体認証に関する情報を受信し、装置受信手段により情報処理装置を特定するための識別情報に関する情報を受信し、及び、環境受信手段により情報処理装置の環境に関する情報を受信する。これらは具体的には、生体認証の種類または生体認証に必要とされる生体情報の情報処理装置における記憶状態に関する情報、識別情報の情報処理装置における記憶状態に関する情報または情報処理装置を動作させるソフトウェアの種類に関する情報を含む。また電子署名受信手段により情報処理装置から送信される電子署名を受信する。【００２０】
レベル決定手段は、受信した生体認証に関する情報に基づく生体レベル、識別情報に関する情報に基づく装置レベル、及び、環境に関する情報に基づく環境レベルを決定する。補正手段は、電子署名受信手段により受信した電子証明書の有効性により決定したレベルを補正する。補正後の生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、判断手段は正と判断する。【００２１】
本発明にあっては、補正手段は、電子署名を受信したか否かを判断し、受信したと判断した場合に、電子署名の受信と共に、暗号化鍵で暗号化された生体認証に関する情報を生体受信手段により受信したか否かを判断する。そして、電子署名と共に前記暗号化された生体認証に関する情報を受信したと判断した場合に、暗号化された生体認証に関する情報を、暗号化鍵を用いて復号する。次いでハッシュ関数等を用いることにより復号した生体認証に関する情報が改竄されているか否かを検査し、改竄されていないと判断した場合に、レベル決定手段により決定した生体レベルを高いレベルへ補正する。【００２２】
本発明にあっては、補正手段は、電子署名受信手段により電子署名を受信したか否かを判断し、受信したと判断した場合に、電子署名の受信と共に、暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を受信したか否かを判断する。これらの情報を受信したと判断した場合、暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を、暗号化鍵を用いて復号する。次いで、復号した生体認証に関する情報、識別情報に関する情報及び環境に関する情報が改竄されているか否かを検査し、改竄されていないと判断した場合に、レベル決定手段により決定した生体レベル、装置レベル及び環境レベルを高いレベルへ補正する。 
【発明の効果】
【００２３】
本発明にあっては、認証装置は、生体認証に関する情報、識別情報に関する情報、及び、情報処理装置の環境に関する情報、並びに、電子署名を受信する。レベル決定手段は、受信した生体認証に関する情報に基づく生体レベル、識別情報に関する情報に基づく装置レベル、及び、環境に関する情報に基づく環境レベルを決定し、補正手段は、電子署名受信手段により受信した電子署名の有効性に基づき決定したレベルを補正する。補正後の生体レベル、装置レベル及び環境レベルの全てにより決定されるレベルと予め記憶した基準レベルとに基づいて、判断手段は正と判断する。これにより、様々なセキュリティレベルを有する情報処理装置の認証を実行することが可能となる。【００２４】
本発明にあっては、補正手段は、電子署名と共に前記暗号化された生体認証に関する情報を受信したと判断した場合に、暗号化された生体認証に関する情報を、暗号化鍵を用いて復号する。復号した生体認証に関する情報が改竄されているか否かを検査し、改竄されていないと判断した場合に、レベル決定手段により決定した生体レベルを高いレベルへ補正する。これにより、ＰＫＩ認証を経た情報処理装置をより優遇して取り扱うことが可能となる。【００２５】
本発明にあっては、補正手段は、電子署名の受信と共に、暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を受信したか否かを判断する。これらの情報を受信したと判断した場合、暗号化された生体認証に関する情報、識別情報に関する情報及び環境に関する情報を、暗号化鍵を用いて復号する。次いで、復号した生体認証に関する情報、識別情報に関する情報及び環境に関する情報が改竄されているか否かを検査し、改竄されていないと判断した場合に、レベル決定手段により決定した生体レベル、装置レベル及び環境レベルを高いレベルへ補正する。これにより、情報処理装置を用いるユーザが本人であること、情報処理装置が正当なものであること、情報処理装置自身のセキュリティレベルが高く、かつこれらの情報に改竄がないことを保証できることから、当該情報処理装置は高いセキュリティレベルであると判断することが可能となる。また、電子証明書とともに、これらの情報が同時に送信されるため、各認証の同時性が保証され、認証途中でのなりすまし等の不正行為も回避することが可能となる等、本発明は優れた効果を奏する。
【図面の簡単な説明】
【００２６】
【図１】本実施の形態に係る認証システムの概要を示す模式図である。
【図２】コンピュータのハードウェア構成を示すブロック図である。
【図３】コンピュータのハードウェア構成を示すブロック図である。
【図４】コンピュータのハードウェア構成を示すブロック図である。
【図５】ＤＢサーバのハードウェア構成を示すブロック図である。
【図６】ソフトウェアＤＢのレコードレイアウトを示す説明図である。
【図７】Ｗｅｂサーバのハードウェア構成を示すブロック図である。
【図８】ユーザＤＢのレコードレイアウトを示す説明図である。
【図９】ソフトウェア評価テーブルのレコードレイアウトを示す説明図である。
【図１０】本実施の形態に係る、コンピュータの正否を判断する処理を説明するためのグラフである。
【図１１】ポリシーテーブルの記憶内容を示す説明図である。
【図１２】ポリシーテーブルの記憶内容を示す説明図である。
【図１３】ポリシーテーブルの記憶内容を示す説明図である。
【図１４】ポリシーテーブルの記憶内容を示す説明図である。
【図１５】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図１６】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図１７】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図１８】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図１９】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図２０】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図２１】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図２２】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図２３】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図２４】コンピュータにおけるレベル決定処理の手順を示すフローチャートである。
【図２５】コンピュータにおけるレベル決定処理の他の手順を示すフローチャートである。
【図２６】コンピュータにおけるレベル決定処理の他の手順を示すフローチャートである。
【図２７】コンピュータにおけるレベル決定処理の他の手順を示すフローチャートである。
【図２８】コンピュータにおけるレベル決定処理の他の手順を示すフローチャートである。
【図２９】コンピュータにおけるレベル決定処理の他の手順を示すフローチャートである。
【図３０】コンピュータにおけるレベル決定処理の他の手順を示すフローチャートである。
【図３１】統合ＰＫＩ認証処理の手順を示すフローチャートである。
【図３２】統合ＰＫＩ認証処理の手順を示すフローチャートである。
【図３３】統合ＰＫＩ認証処理の手順を示すフローチャートである。
【図３４】統合ＰＫＩ認証処理の手順を示すフローチャートである。
【図３５】統合ＰＫＩ認証処理の手順を示すフローチャートである。
【図３６】実施の形態２に係るＷｅｂサーバのハードウェア構成を示すブロック図である。
【図３７】重要度ファイルのレコードレイアウトを示す説明図である。
【図３８】中レベルポリシーテーブルの記憶内容を示す説明図である。
【図３９】中レベルポリシーテーブルの記憶内容を示す説明図である。
【図４０】中レベルポリシーテーブルの記憶内容を示す説明図である。
【図４１】中レベルポリシーテーブルの記憶内容を示す説明図である。
【図４２】実施の形態２に係る重要度決定処理の手順を示すフローチャートである。
【図４３】実施の形態３に係るＷｅｂサーバの構成を示すブロック図である。
【図４４】コンピュータのハードウェア構成を示すブロック図である。
【図４５】ポリシーテーブルの記憶内容を示す説明図である。
【図４６】レベル決定処理の手順を示すフローチャートである。
【図４７】レベル決定処理の手順を示すフローチャートである。
【図４８】レベル決定処理の手順を示すフローチャートである。
【図４９】レベル決定処理の手順を示すフローチャートである。
【図５０】レベル決定処理の手順を示すフローチャートである。
【図５１】レベル決定処理の手順を示すフローチャートである。
【図５２】実施の形態５に係るＤＢサーバのハードウェア構成を示すブロック図である。
【図５３】ソフトウェアレベル決定処理の手順を示すフローチャートである。
【符号の説明】
【００２７】
１      Ｗｅｂサーバ
１Ａ    可搬型記録媒体
２      コンピュータ
３      ＣＡサーバ
４      ＤＢサーバ
５      セキュリティチップ
１１    ＣＰＵ
１３    入力部
１４    表示部
１５    記憶部
１５Ｐ  制御プログラム
１６    通信部
１８    時計部
１５３  ソフトウェア評価テーブル
１５４  ポリシーテーブル
１５５  ユーザＤＢ
１５６  ＣＧＩプログラム
１５７  重要度ファイル
４５１  ソフトウェアＤＢ
５１    主制御部
Ｎ      通信網
【発明を実施するための最良の形態】
【００２８】
実施の形態１
以下本発明の実施の形態を、図面を参照して説明する。図１は本実施の形態に係る認証システムの概要を示す模式図である。認証システムは、認証装置１、情報処理装置２Ａ、２Ｂ、２Ｃ（以下、場合により２で代表する）、・・・、通信網Ｎ、認証機関サーバコンピュータ３、及び、データベース（以下、ＤＢ）サーバコンピュータ４等を含んで構成される。本実施の形態においては、情報処理装置２、２、２、・・・の要求に応じて金融機関の認証装置１が振り込み、海外送金、外貨預金、投資信託申し込み、及び残高照会等の各種処理を実行する例を用いて説明するが、このオンラインバンクの例に限るものではない。以下では金融機関の認証装置１をＷｅｂサーバ１と読み替えて説明する。またＷｅｂサーバ１に接続される他のＷｅｂサーバに振り込み、海外送金、外貨預金、投資信託申し込み、及び残高照会等の各種処理を実行させ、Ｗｅｂサーバ１において以下に述べる認証処理を実行させる形態であっても良い。【００２９】
情報処理装置２は例えば、パーソナルコンピュータ、携帯電話機、ＰＤＡ（Personal Digital Assistance）、通信機能を有する携帯型ゲーム機、または通信機能を有するミュージックプレーヤ等の機器である。以下では情報処理装置２をデスクトップ型パーソナルコンピュータまたはノート型パーソナルコンピュータ等の機器に適用した例を説明し、装置を機器と読み替え、また、情報処理装置２をコンピュータ２と読み替えて説明する。認証機関サーバコンピュータ３は例えばベリサイン（登録商標）社またはグローバルサイン社等が運営する認証局のサーバコンピュータであり、以下ではＣＡ（Certificate Authority）サーバ３という。ＤＢサーバコンピュータ４はコンピュータ２の環境に関する情報を管理する。この環境に関する情報は、コンピュータ２のＯＳ（Operating System）のバージョン、ＯＳに対するパッチのバージョン、ブラウザのバージョン、ブラウザのパッチのバージョン、ワードプロセッサのバージョン、電子メールソフトウェアのバージョン、または、ウィルス対策ソフトウェアのバージョン等の情報である。本実施の形態においては、説明を容易にするために、コンピュータ２のＯＳのバージョン及びブラウザのバージョンを用いる形態につき説明し、以下ではＤＢサーバコンピュータ４をＤＢサーバ４として説明する。【００３０】
コンピュータ２、ＣＡサーバ３、Ｗｅｂサーバ１及びＤＢサーバ４は、インターネット及び携帯電話網等を含む通信網Ｎを介して相互に接続されており、例えばＨＴＴＰ（Hyper Text Transfer Protocol）等によりＨＴＭＬ（HyperText Markup Language）ファイル及びその他の情報を送受信する。コンピュータ２Ａ、２Ｂ、２Ｃ、・・・は相互に異なるセキュリティレベルを有する。例えば、コンピュータ２によっては指紋による生体認証を行うもの、顔による生体認証を行うものが存在し、さらに生体認証の判断材料となる指紋及び顔情報のコンピュータ２内での記憶状態等も相違する。また、コンピュータ２には、例えばＭＡＣ（Media Access Control）アドレス等のコンピュータ２を特定するための固有の識別情報（以下、機器ＩＤという）を記憶しているが、この機器ＩＤのコンピュータ２における記憶状態もコンピュータ２によって相違する。さらに、コンピュータ２のＯＳのバージョン及びブラウザのバージョンによってもセキュリティレベルが大きく相違する。このことから、金融機関のＷｅｂサーバ１はオンラインバンクにおける各種処理を所定のセキュリティレベルを有するコンピュータ２に対し許可する。以下に詳細を説明する。【００３１】
図２はコンピュータ２Ａのハードウェア構成を示すブロック図である。コンピュータ２Ａは、制御部としてのＣＰＵ(Central Processing Unit)２１Ａ、ＲＡＭ(Random Access Memory)２２Ａ、入力部２３Ａ、表示部２４Ａ、記憶部２５Ａ、通信部２６Ａ、時計部２８Ａ、及び、カメラ２９Ａ等を含んで構成される。ＣＰＵ２１Ａは、バス２７Ａを介してコンピュータ２Ａのハードウェア各部と接続されていて、それらを制御すると共に、記憶部２５Ａに格納された制御プログラム２５ＰＡに従って、種々のソフトウェア的機能を実行する。【００３２】
ＲＡＭ２２Ａは半導体素子により構成され、ＣＰＵ２１Ａの指示に従い必要な情報の書き込み及び読み出しを行う。表示部２４Ａは例えば液晶ディスプレイ等であり、入力部２３Ａはキーボード及びマウス等により構成される。なお、タッチパネルのように表示部２４Ａと入力部２３Ａとを一体的に構成するようにしても良い。通信部２６Ａは例えば有線または無線のＬＡＮ（Local Area Network）カード等であり、Ｗｅｂサーバ１との間で情報の送受信を行う。時計部２８Ａは現在の日時情報をＣＰＵ２１Ａへ出力する。カメラ２９ＡはＣＣＤ（Charge Coupled Device）等により構成され取り込んだ画像データをＣＰＵ２１Ａへ出力する。【００３３】
記憶部２５Ａはハードディスクまたは大容量フラッシュメモリであり、制御プログラム２５ＰＡ、ウィンドウズ（登録商標）等のＯＳ２５１Ａ（以下、場合によりＯＳ２５１で代表する）、及び、インターネットエクスプローラ（登録商標）等のブラウザ２５２Ａ（以下、場合によりブラウザ２５２で代表する）等が記憶されている。以下では、記憶部２５Ａはハードディスクであるものとして説明する。ブラウザ２５２Ａは、Ｗｅｂサーバ１から送信されたＨＴＭＬファイルを解析し、ＣＰＵ２１Ａの指示により表示部２４Ａに表示する。その他、記憶部２５Ａには顔情報ファイル２５３Ａ、機器ＩＤファイル２５４Ａ、顔認識プログラム２５５Ａ、ソフトウェア情報取得プログラム２５６Ａ、及びソフトウェア情報ファイル２５７Ａが記憶されている。【００３４】
カメラ２９Ａ、顔情報ファイル２５３Ａ及び顔認識プログラム２５５Ａは、ユーザの顔を用いた生体認証を行う。なお、本実施の形態においては生体認証として顔認証及び指紋認証を用いる形態につき説明するが、虹彩、静脈または音声等を用いても良い。なお、以下では顔認証よりも指紋認証の方が、セキュリティレベルが高いものとして説明する。その他、指紋認証のみを用いる形態であっても良い。顔情報ファイル２５３Ａには、ユーザの顔に係る画像データが予め記憶されている。初期登録の際、ＣＰＵ２１Ａはカメラ２９Ａからユーザの顔の画像データを取り込み、顔情報ファイル２５３Ａに記憶する。なお、顔情報ファイル２５３Ａへ顔情報を記憶する場合、ＣＰＵ２１Ａは入力部２３Ａから入力されたＩＤ及びパスワードが、記憶部２５Ａに記憶されたＩＤ及びパスワードと一致するか否かを判断する。ＣＰＵ２１Ａは一致すると判断した場合にのみ、顔情報の記憶を行う。【００３５】
顔認証を行う場合は、ＣＰＵ２１Ａはカメラ２９Ａから顔の画像データを受け付ける。そして、ＣＰＵ２１Ａは、顔認識プログラム２５５Ａを起動し、顔情報ファイル２５３Ａに記憶した顔の画像データと受け付けた顔の画像データとが一致するか否かを判断する。ＣＰＵ２１Ａは一致すると判断した場合、制御プログラム２５ＰＡの指示に従い、Ｗｅｂサーバ１へ、顔認証の結果、及び、顔情報のコンピュータ２Ａにおける記憶状態に関する情報を、通信部２６Ａを介して送信する。この記憶状態に関する情報は、「ハードディスク内に顔情報が記憶されている」ことを示す情報である。【００３６】
機器ＩＤファイル２５４Ａにはコンピュータ２を特定するための機器ＩＤが記憶されている。この機器ＩＤは例えばコンピュータ２のシリアル番号、ハードディスクたる記憶部２５Ａのシリアル番号、または通信部２６Ａのシリアル番号等である。本実施の形態においてはコンピュータ２Ａに予め付与された機器ＩＤが記憶部２５Ａ内の機器ＩＤファイル２５４Ａに記憶されているものとして説明する。ＣＰＵ２１Ａは必要に応じて、機器ＩＤファイル２５４Ａに記憶された機器ＩＤを読み出し、通信部２６Ａを介して、Ｗｅｂサーバ１へ読み出した機器ＩＤを送信する。さらにＣＰＵ２１Ａは、機器ＩＤの記憶状態に関する情報として、「ハードディスク内に機器ＩＤが記憶されている」ことを示す情報をＷｅｂサーバ１へ送信する。【００３７】
ソフトウェア情報取得プログラム２５６Ａを起動した場合、ＣＰＵ２１ＡはＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンを取得し、ソフトウェア情報ファイル２５７Ａに記憶する。ＣＰＵ２１Ａは、コンピュータ２Ａの起動時、終了前、本実施の形態に係る認証処理を行う度、または、定期的（例えば１週間毎または１時間毎等）に、ＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンを取得する。また新たなＯＳ２５１Ａまたはブラウザ２５２Ａがインストールまたはダウンロードされた場合、及び、ＯＳ２５１Ａまたはブラウザ２５２Ａに係るパッチファイルまたはアップデートプログラム等がインストールまたはダウンロードされた場合等、コンピュータ２Ａの環境が変化した場合も、ＣＰＵ２１Ａは、ＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンを取得する。【００３８】
ＣＰＵ２１Ａはユーザの指示に伴い入力部２３ＡからＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンの取得要求を受け付けた場合も、ソフトウェア情報取得プログラム２５６Ａを実行し、ＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンを取得する。さらに、ＣＰＵ２１ＡはＷｅｂサーバ１から、ＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンの取得要求を受け付けた場合も、ソフトウェア情報取得プログラム２５６Ａを実行し、ＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンを取得する。ＣＰＵ２１Ａは必要に応じてソフトウェア情報ファイル２５７Ａから、ＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンを読み出し、通信部２６Ａを介して、Ｗｅｂサーバ１へ読み出したＯＳ２５１Ａのバージョン及びブラウザ２５２Ａのバージョンをソフトウェアに関する情報として送信する。【００３９】
図３はコンピュータ２Ｂのハードウェア構成を示すブロック図である。コンピュータ２Ｂは、制御部としてのＣＰＵ２１Ｂ、ＲＡＭ２１０Ｂ、フラッシュメモリ２２Ｂ、入力部２３Ｂ、表示部２４Ｂ、記憶部２５Ｂ、通信部２６Ｂ、時計部２８Ｂ、及び、指紋入力部２９Ｂ等を含んで構成される。ＣＰＵ２１Ｂは、バス２７Ｂを介してコンピュータ２Ｂのハードウェア各部と接続されていて、それらを制御すると共に、記憶部２５Ｂに格納された制御プログラム２５ＰＢに従って、種々のソフトウェア的機能を実行する。【００４０】
フラッシュメモリ２２ＢはＣＰＵ２１Ｂと共にマザーボード２Ｍに装着されており、内部に入力部２３Ｂ及び記憶部２５Ｂ等の周辺機器を制御するためのプログラム群（以下、ＢＩＯＳという）及び機器ＩＤファイル２２３Ｂを記憶している。機器ＩＤファイル２２３Ｂは上述した如くコンピュータ２Ｂの出荷時に、予めコンピュータ２Ｂのシリアル番号が機器ＩＤとして記憶されている。この機器ＩＤファイル２２３Ｂは機器ＩＤの書き換えができないよう保護されている。ＣＰＵ２１Ｂは必要に応じて機器ＩＤファイル２２３Ｂに記憶した機器ＩＤを読み出しＷｅｂサーバ１へ送信する。またＣＰＵ２１Ｂは機器ＩＤの記憶状態に関する情報として、「機器ＩＤはＢＩＯＳ内部に記憶されている」ことを示す情報を送信する。なお、コンピュータ２Ｂは機器ＩＤをＢＩＯＳ内部に記憶しており、安易な書き換えはできないため、機器ＩＤをハードディスク内に記憶するコンピュータ２Ａと比較してセキュリティレベルは高い。【００４１】
ＲＡＭ２１０Ｂは半導体素子により構成され、ＣＰＵ２１Ｂの指示に従い必要な情報の書き込み及び読み出しを行う。表示部２４Ｂは例えば液晶ディスプレイ等であり、入力部２３Ｂはキーボード及びマウス等により構成される。通信部２６Ｂは例えば有線または無線のＬＡＮカード等であり、Ｗｅｂサーバ１との間で情報の送受信を行う。時計部２８Ｂは現在の日時情報をＣＰＵ２１Ｂへ出力する。指紋入力部２９Ｂはコンピュータ２Ｂの入力部２３Ｂ近傍に設けられる。指紋入力部２９Ｂで読み取られた指紋情報はＣＰＵ２１Ｂへ出力される。【００４２】
記憶部２５Ｂはハードディスクまたは大容量フラッシュメモリであり、制御プログラム２５ＰＢ、ＯＳ２５１Ｂ、及び、ブラウザ２５２Ｂ等が記憶されている。以下では、記憶部２５Ｂはハードディスクであるものとして説明する。ブラウザ２５２Ｂは、Ｗｅｂサーバ１から送信されたＨＴＭＬファイルを解析し、ＣＰＵ２１Ｂの指示により表示部２４Ｂに表示する。その他、記憶部２５Ｂには指紋認識プログラム２５５Ｂ、指紋情報ファイル２５３Ｂ、ソフトウェア情報取得プログラム２５６Ｂ、及びソフトウェア情報ファイル２５７Ｂが記憶されている。【００４３】
指紋入力部２９Ｂ、指紋情報ファイル２５３Ｂ及び指紋認識プログラム２５５Ｂにより指紋認証を行う。指紋情報ファイル２５３Ｂには、ユーザの指紋情報が予め記憶されている。初期登録の際、ＣＰＵ２１Ｂは指紋入力部２９Ｂからユーザの指紋情報を取り込み、指紋情報ファイル２５３Ｂに記憶する。なお、指紋情報ファイル２５３Ｂへ指紋情報を記憶する場合、ＣＰＵ２１Ｂは入力部２３Ｂから入力されたＩＤ及びパスワードが、記憶部２５Ｂに記憶されたＩＤ及びパスワードと一致するか否かを判断する。ＣＰＵ２１Ｂは一致すると判断した場合にのみ、指紋情報の記憶を行う。【００４４】
指紋認証を行う場合は、ＣＰＵ２１Ｂは指紋入力部２９Ｂから指紋情報を受け付ける。そして、ＣＰＵ２１Ｂは、指紋認識プログラム２５５Ｂを起動し、指紋情報ファイル２５３Ｂに予め記憶した指紋情報と受け付けた指紋情報とが一致するか否かを判断する。ＣＰＵ２１Ｂは一致すると判断した場合、制御プログラム２５ＰＢの指示に従い、Ｗｅｂサーバ１へ、指紋認証の結果、及び、指紋情報のコンピュータ２Ｂにおける記憶状態に関する情報を生体認証に関する情報として、通信部２６Ｂを介して送信する。この記憶状態に関する情報は、「ハードディスク内に指紋情報が記憶されている」ことを示す情報である。【００４５】
ソフトウェア情報取得プログラム２５６Ｂを起動した場合、ＣＰＵ２１ＢはＯＳ２５１Ｂのバージョン及びブラウザ２５２Ｂのバージョンを取得し、ソフトウェア情報ファイル２５７Ｂに記憶する。このバージョンの取得は例えば１週間毎等、定期的に行うほか、ＯＳ２５１Ｂまたはブラウザ２５２Ｂのバージョンが更新される度に、行うようにしても良い。ＣＰＵ２１Ｂは必要に応じてソフトウェア情報ファイル２５７Ｂから、ＯＳ２５１Ｂのバージョン及びブラウザ２５２Ｂのバージョンを読み出し、通信部２６Ｂを介して、Ｗｅｂサーバ１へ読み出したＯＳ２５１Ｂのバージョン及びブラウザ２５２Ｂのバージョンを、ソフトウェアに関する情報として送信する。【００４６】
図４はコンピュータ２Ｃのハードウェア構成を示すブロック図である。コンピュータ２Ｃは、セキュリティチップ５、制御部としてのＣＰＵ２１Ｃ、ＲＡＭ２２Ｃ、入力部２３Ｃ、表示部２４Ｃ、記憶部２５Ｃ、通信部２６Ｃ、及び、時計部２８Ｃ等を含んで構成される。コンピュータ２Ｃはセキュリティをより強固にすべく、セキュリティチップ５を実装している点で、これを有さないコンピュータ２Ａ及び２Ｂと相違する。【００４７】
ＣＰＵ２１Ｃは、バス２７Ｃを介してコンピュータ２Ｃのハードウェア各部と接続されていて、それらを制御すると共に、記憶部２５Ｃに格納された制御プログラムに従って、種々のソフトウェア的機能を実行する。ＲＡＭ２２Ｃは半導体素子により構成され、ＣＰＵ２１Ｃの指示に従い必要な情報の書き込み及び読み出しを行う。表示部２４Ｃは例えば液晶ディスプレイ等であり、入力部２３Ｃはキーボード及びマウス等により構成される。通信部２６Ｃは例えば有線または無線のＬＡＮカード等であり、Ｗｅｂサーバ１との間で情報の送受信を行う。時計部２８Ｃは現在の日時情報をＣＰＵ２１Ｃへ出力する。【００４８】
記憶部２５Ｃはハードディスクまたは大容量フラッシュメモリであり、制御プログラム、ＯＳ２５１Ｃ、及び、ブラウザ２５２Ｃ等が記憶されている。以下では、記憶部２５Ｃはハードディスクであるものとして説明する。セキュリティチップ５は、ＴＣＧ（Trusted Computing Group）の仕様に基づいたＴＰＭ（Trusted Platform Module）と称されるＩＣ（Integrated Circuit）チップであり、ＴＣＧにより策定されたセキュリティの基本機能を備える。このセキュリティチップ５をコンピュータ２Ｃに実装することにより、ソフトウェアによる攻撃及び物理的な攻撃からデータを保護し、コンピュータ２Ａ及び２Ｂと比較して、より強固なセキュリティを実現する。【００４９】
セキュリティチップ５について説明する。セキュリティチップ５は主制御回路（以下、回路を部と省略する。）５１、指紋入力部５２、指紋認証部５３、指紋情報記憶部５４、ユーザ電子証明書記憶部５５、ユーザ個人鍵記憶部５６、機器電子証明書記憶部５７、機器個人鍵記憶部５８、機器ＩＤ記憶部５９、暗号化処理部５１０、ソフトウェア情報取得部５１１、ソフトウェア情報記憶部５１２、ＩＤ記憶部５１５、制御プログラム記憶部５１３、及び、入出力部５１４等を含んで構成される。主制御部５１は各部と接続されており、制御プログラム記憶部５１３に記憶された制御プログラムに従い、各種処理を実行する。セキュリティチップ５はＩ／Ｆである入出力部５１４及びバス２７Ｃを介してコンピュータ２ＣのメインのＣＰＵ２１Ｃに接続されている。主制御部５１は入出力部５１４を介してＣＰＵ２１Ｃと情報の送受信を行う。【００５０】
指紋認証は、ユーザの指紋情報を受け付ける指紋入力部５２、指紋認証のためのプログラムが記憶され、指紋認証処理を実行する指紋認証部５３、及び、指紋認証の基礎となる指紋情報を記憶する指紋情報記憶部５４により実行される。なお、指紋認証はコンピュータ２Ｃの起動時に行うほか、Ｗｅｂサーバ１との間の情報の送受信時（取引時）に実行するようにしても良い。指紋情報記憶部５４はユーザの指紋情報が予め記憶されている。初期登録の際、主制御部５１は指紋入力部５２からユーザの指紋情報を取り込み、指紋情報記憶部５４に記憶する。なお、指紋情報記憶部５４へ指紋情報を記憶する場合、主制御部５１は入力部２３Ｃから入力されたＩＤ及びパスワードが、ＩＤ記憶部５１５に記憶されたＩＤ及びパスワードと一致するか否かを判断する。主制御部５１は一致すると判断した場合にのみ、指紋情報の記憶を行う。なおＩＤ記憶部５１５にはコンピュータ２Ｃの購入時等に入力部２３Ｃを介して入力されたＩＤ及びパスワードが記憶されている。【００５１】
指紋認証を行う場合は、主制御部５１は指紋入力部５２から指紋情報を受け付ける。そして、主制御部５１は、指紋認証部５３内の指紋認証プログラムを起動し、指紋情報記憶部５４に予め記憶した指紋情報と受け付けた指紋情報とが一致するか否かを判断する。主制御部５１は、一致すると判断した場合、制御プログラムの指示に従い、入出力部５１４を介して、ＣＰＵ２１Ｃへ指紋認証の結果、及び、指紋情報のコンピュータ２Ｃにおける記憶状態に関する情報を含む生体認証に関する情報を送信する。この記憶状態に関する情報は、「セキュリティチップ５内に指紋情報が記憶されている」ことを示す情報である。ＣＰＵ２１Ｃはこの情報を受けて、通信部２６Ｃを介して、生体認証に関する情報をＷｅｂサーバ１へ送信する。【００５２】
さらにセキュリティを強化する場合は、ユーザ電子証明書記憶部５５にＣＡサーバ３から発行されたユーザ電子証明書を記憶するようにしても良い。ユーザ電子証明書記憶部５５にはユーザの白抜き鍵印で示す公開鍵及びＣＡサーバ３から送信された電子証明書が記憶されている。またユーザ個人鍵（秘密鍵）記憶部５６には、ユーザの公開鍵とペアのハッチングを施した鍵印で示すユーザ個人鍵が記憶されている。なお、セキュリティチップ５の出荷時または初期設定時に、ユーザ電子証明書記憶部５５に公開鍵が記憶され、またユーザ個人鍵記憶部５６にユーザ個人鍵が記憶されるものとする。ユーザ電子証明書の発行手順について説明する。ユーザは入力部２３Ｃからユーザ名、電子メールアドレス及びユーザ電子証明書の用途等を含む所有者情報を入力する。ＣＰＵ２１Ｃはブラウザ２５２Ｃを起動し、ＣＡサーバ３へアクセスする。ＣＰＵ２１Ｃは、ユーザ電子証明書記憶部５５に記憶されたユーザの公開鍵を読み出し、読み出した公開鍵と共に、入力部２３Ｃから入力された所有者情報をＣＡサーバ３へ送信する。【００５３】
ＣＡサーバ３は認証を行い問題がない場合、所有者情報及び公開鍵に電子署名を付加する。ＣＡサーバ３はユーザの公開鍵、所有者情報及び電子署名の３つをＸ．５０９の仕様に従いユーザ電子証明書を生成する。ＣＡサーバ３は生成したユーザ電子証明書をコンピュータ２Ｃへ送信する。コンピュータ２ＣのＣＰＵ２１Ｃはユーザ電子証明書を入出力部５１４へ送信する。主制御部５１は入出力部５１４から出力されるユーザ電子証明書をユーザ電子証明書記憶部５５に記憶する。なお、このユーザ電子証明書には有効期限が設定される場合もある。以上をまとめると、コンピュータ２Ｃはセキュリティチップ５内の指紋情報記憶部５４に指紋情報が記憶されている場合（第１の場合）、指紋情報記憶部５４に指紋情報が記憶されており、有効期限が有効なユーザ電子証明書がユーザ電子証明書記憶部５５に記憶され、かつ、ユーザ電子証明書とペアになるユーザ個人鍵がユーザ個人鍵記憶部５６に記憶されており、有効な電子署名が付与可能な場合（第２の場合）、指紋情報記憶部５４に指紋情報が記憶されており、有効期限が有効なユーザ電子証明書がユーザ電子証明書記憶部５５に記憶され、ユーザ電子証明書とペアになるユーザ個人鍵がユーザ個人鍵記憶部５６に記憶されており、有効な電子署名が付与可能、かつ、指紋認証の結果及び指紋情報の記憶状態を含む生体情報に関する情報が暗号化される場合（第３の場合）の順にセキュリティ強度が高くなる。なお以下では、第２の場合において、ユーザ電子証明書を併せて送信する例を説明する。【００５４】
上述した第１の場合、主制御部５１は生体認証に関する情報として指紋認証の結果及び指紋情報がセキュリティチップ５内に記憶されていることを示す情報を、入出力部５１４を介してＣＰＵ２１Ｃへ送信する。ＣＰＵ２１Ｃは、この生体情報に関する情報を、通信部２６Ｃを介してＷｅｂサーバ１へ送信する。上述した第２の場合、主制御部５１は生体情報に関する情報として、指紋認証の結果、指紋情報がセキュリティチップ５内に記憶されていることを示す情報を、ユーザ電子証明書及びユーザ個人鍵による電子署名と共に、入出力部５１４を介してＣＰＵ２１Ｃへ送信する。ＣＰＵ２１Ｃは、この生体認証に関する情報、ユーザ電子証明書及びユーザ個人鍵による生体認証に関する情報に対する電子署名を、通信部２６Ｃを介してＷｅｂサーバ１へ送信する。なお、電子署名とは電磁的記録に記録された情報について作成者を示す目的で行われる暗号化等の措置で、改変が行われていないかどうかを確認することができるものをいう。本実施の形態において述べる電子署名の方式はあくまで一例であり、これに限るものではない。すなわち、コンピュータ２からＷｅｂサーバ１へ送信される情報に電子署名を行い、Ｗｅｂサーバ１が、当該電子署名が有効であると判断できる形態であればよく本実施の形態に記載の具体例に限定するものではない。【００５５】
第３の場合、主制御部５１は以下の処理を行う。主制御部５１は指紋入力部５２から入力された指紋情報が、指紋情報記憶部５４に記憶した指紋情報に一致する場合、指紋認証の結果または指紋情報がセキュリティチップ５内に記憶されていることを示す情報を含む生体認証に関する情報を、暗号化処理部５１０に記憶されたハッシュ関数を用いて、メッセージダイジェストを生成する。暗号化処理部５１０には暗号化処理プログラム及びハッシュ関数等が記憶されている。主制御部５１は暗号化鍵記憶部５１８より暗号化鍵を読み出し、暗号化処理部５１０へ出力する。なお暗号化鍵記憶部５１８に記憶された暗号化鍵は、Ｗｅｂサーバ１との間で予め秘密裏に取り交わされたものである。この暗号化鍵は例えばコンピュータ２Ｃの出荷時に予め暗号化鍵記憶部５１８に記憶される。そして暗号化処理部５１０は暗号化処理プログラムにより、生体認証に関する情報の暗号化を行う。主制御部５１はユーザ個人鍵記憶部５６に記憶したユーザ個人鍵を読み出し、暗号化処理部５１０へ出力する。そして暗号化処理部５１０は暗号化処理プログラムによりメッセージダイジェストを、ユーザ個人鍵を用いて電子署名する。主制御部５１はユーザ電子証明書記憶部５５からユーザ電子証明書を読み出す。【００５６】
主制御部５１は、読み出したユーザ電子証明書と共に、暗号化処理部５１０にて暗号化された生体認証に関する情報及びメッセージダイジェストの電子署名を、入出力部５１４を介してＣＰＵ２１Ｃへ送信する。ＣＰＵ２１Ｃはユーザ電子証明書、暗号化された生体認証に関する情報及びメッセージダイジェストの電子署名を、通信部２６Ｃを介してＷｅｂサーバ１へ送信する。後述するようにＷｅｂサーバ１においてＰＫＩ認証が行われる。このように第３の場合は、間違いなくユーザが送信した改竄のないデータであることが証明される。なお、本実施の形態においては、生体認証に関するデータをユーザ電子証明書記憶部５５に記憶したユーザ電子証明書を用いてＰＫＩ認証することとしたが、後述する機器電子証明書記憶部５７に記憶した機器電子証明書を用いても良い。【００５７】
続いて識別情報に関する情報の送信について説明する。機器ＩＤ記憶部５９にはセキュリティチップ５またはコンピュータ２Ｃ等を特定するための機器ＩＤが記憶されている。この機器ＩＤはセキュリティチップ５のシリアル番号、コンピュータ２Ｃのシリアル番号、または通信部２６Ｃのシリアル番号等である。以下では、機器ＩＤをセキュリティチップ５に付与されたシリアル番号であるものとして説明する。この機器ＩＤはセキュリティチップ５の出荷時に主制御部５１の指示により機器ＩＤ記憶部５９に記憶される。機器ＩＤ記憶部５９に記憶した機器ＩＤは書き換えが不可能な状態で記憶されている。【００５８】
機器電子証明書記憶部５７には、ＣＡサーバ３により発行された機器電子証明書が記憶されている。機器電子証明書には白抜き鍵印で示すセキュリティチップ５の公開鍵、機器ＩＤ、機器電子証明書の有効期限及びＣＡサーバ３の電子署名が含まれる。なお、機器電子証明書に含まれる機器ＩＤには、コンピュータ２Ｃのシリアル番号だけでなく、セキュリティチップ５のシリアル番号をもセットとして含めておいても良い。この機器電子証明書はコンピュータ２Ｃの出荷時にメーカがＣＡ認証局に対し発行を受けておくようにすればよい。機器個人鍵記憶部５８には機器電子証明書記憶部５７に記憶した公開鍵に対応する機器個人鍵（ハッチングを施した鍵印で示す）が記憶されている。この機器個人鍵もコンピュータ２Ｃの出荷時に予め機器個人鍵記憶部５８に記憶される。【００５９】
識別情報に関する情報の送信は例えば以下の３つの方法により行われる。第１の方法は、機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を識別情報に関する情報として送信するものである。なお、機器ＩＤ自体は必ずしも送信する必要はない。第２の方法は、機器ＩＤ、及び、機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報、機器電子証明書及び機器電子証明書とペアである機器個人鍵記憶部５８に記憶した機器個人鍵で電子署名を付与し送信するものである。なお以下では、第２の方法において、機器電子証明書を併せて送信する例を説明する。第３の方法は暗号化した識別情報、機器電子証明書及び当該機器電子証明書とペアになる機器個人鍵により付与した電子署名を送信する。【００６０】
この場合、第１の方法、第２の方法及び第３の方法の順にセキュリティ強度が高くなる。第１の方法の場合、主制御部５１は機器ＩＤ記憶部５９から予め記憶された機器ＩＤを読み出し、入出力部５１４を介してＣＰＵ２１Ｃへ送信する。これにあわせて、主制御部５１は、機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を、制御プログラム記憶部５１３に記憶した制御プログラムに従い、入出力部５１４を介して、ＣＰＵ２１Ｃへ出力する。ＣＰＵ２１Ｃは通信部２６Ｃを介して、機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を識別情報に関する情報としてＷｅｂサーバ１へ送信する。この場合においても、機器ＩＤはセキュリティチップ５内に記憶されていることから、ハードディスク内またはＢＩＯＳ内に機器ＩＤを記憶するコンピュータ２Ａ及び２Ｂよりもセキュリティレベルは高い。【００６１】
第２の方法による場合、主制御部５１は機器ＩＤ記憶部５９から予め記憶された機器ＩＤを読み出し、入出力部５１４を介してＣＰＵ２１Ｃへ送信する。これにあわせて、主制御部５１は、機器ＩＤ、及び、機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報、並びに、機器個人鍵を、制御プログラム記憶部５１３に記憶した制御プログラムに従い、入出力部５１４を介して、ＣＰＵ２１Ｃへ出力する。ＣＰＵ２１Ｃは通信部２６Ｃを介して、機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報、機器電子証明書並びに、機器電子証明書とペアになる機器個人鍵による識別情報に関する情報に対する電子署名をＷｅｂサーバ１へ送信する。【００６２】
第３の方法による場合、主制御部５１は制御プログラム記憶部５１３に記憶した制御プログラムに従い、以下の処理を行う。主制御部５１は、機器ＩＤ記憶部５９から予め記憶された機器ＩＤを読み出し、また、機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を、制御プログラム記憶部５１３から読み出す。主制御部５１は、読み出した機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報を、暗号化処理部５１０に記憶されたハッシュ関数を用いて、メッセージダイジェストを算出する。【００６３】
暗号化処理部５１０には暗号化処理プログラム及びハッシュ関数等が記憶されている。主制御部５１はメッセージダイジェスト及び識別情報に関する情報を暗号化処理部５１０へ出力する。主制御部５１は暗号化鍵記憶部５１８より暗号化鍵を読み出し、暗号化処理部５１０へ出力する。そして暗号化処理部５１０は暗号化処理プログラムにより、識別情報に関する情報の暗号化を行う。主制御部５１は機器個人鍵記憶部５８に記憶した機器個人鍵を読み出し、暗号化処理部５１０へ出力する。そして暗号化処理部５１０は暗号化処理プログラムにより、メッセージダイジェストを、機器個人鍵を用いて電子署名する。主制御部５１は機器電子証明書記憶部５７から機器電子証明書を読み出す。【００６４】
主制御部５１は、読み出した機器電子証明書と共に、暗号化処理部５１０にて暗号化された識別情報に関する情報及びメッセージダイジェストの電子署名を、入出力部５１４を介してＣＰＵ２１Ｃへ送信する。ＣＰＵ２１Ｃは機器電子証明書、並びに、暗号化された識別情報に関する情報及びメッセージダイジェストの電子署名を、通信部２６Ｃを介してＷｅｂサーバ１へ送信する。後述するようにＷｅｂサーバ１においてＰＫＩ認証が行われる。このように第３の場合は、間違いなくユーザが送信した改竄のないデータであることが証明される。なお、本実施の形態においては識別情報に関する情報を機器電子証明書記憶部５７に記憶した機器電子証明書を用いてＰＫＩ認証することとしたが、上述したユーザ電子証明書を用いて行うようにしても良い。【００６５】
最後にソフトウェア（環境）に関する情報の送信について説明する。ソフトウェア情報取得部５１１は、コンピュータ２Ｃが起動する度、または、所定時間毎に、記憶部２５Ｃ内部に記憶されたＯＳ２５１Ｃのバージョン及びブラウザ２５２Ｃのバージョンを取得する。取得したＯＳ２５１Ｃのバージョン及びブラウザ２５２Ｃのバージョンの情報はソフトウェアに関する情報としてソフトウェア情報記憶部５１２に記憶される。主制御部５１は制御プログラム記憶部５１３に記憶した制御プログラムを実行し下記の送信処理を行う。【００６６】
一つの方法は、主制御部５１がソフトウェアに関する情報を、ユーザ電子証明書または機器電子証明書とペアになる個人鍵による電子署名を付加せず、Ｗｅｂサーバ１へ送信するものである。もう一つの方法は以下に述べるように、ＰＫＩ認証のためユーザ電子証明書または機器電子証明書とペアになる個人鍵による電子署名と共に、Ｗｅｂサーバ１へ送信するものである。主制御部５１はソフトウェアに関する情報をユーザ電子証明書記憶部５５に記憶したユーザ電子証明書とペアになる個人鍵（ユーザ個人鍵）による電子署名、または、機器電子証明書記憶部５７に記憶した機器電子証明書とペアになる個人鍵（機器個人鍵）による電子署名と共に、暗号化したソフトウェアに関する情報をＷｅｂサーバ１へ送信する。以下では、機器電子証明書を用いた例を説明する。具体的には、主制御部５１はソフトウェア情報記憶部５１２からソフトウェアに関する情報を読み出し、暗号化処理部５１０へ出力する。主制御部５１は暗号化鍵記憶部５１８より暗号化鍵を読み出し、暗号化処理部５１０へ出力する。そして暗号化処理部５１０は暗号化処理プログラムにより、ソフトウェアに関する情報の暗号化を行う。暗号化処理部５１０は記憶したハッシュ関数に基づきソフトウェアに関する情報のメッセージダイジェストを算出する。暗号化処理部５１０は算出したメッセージダイジェストを主制御部５１へ出力する。【００６７】
主制御部５１は機器個人鍵記憶部５８に記憶した機器個人鍵を読み出し、読み出した機器個人鍵によりメッセージダイジェストを電子署名する。そして主制御部５１は暗号化したソフトウェアに関する情報、メッセージダイジェストの電子署名、及び機器電子証明書記憶部５７から読み出した機器電子証明書を、入出力部５１４を介してＣＰＵ２１Ｃへ出力する。ＣＰＵ２１Ｃは、機器電子証明書、暗号化されたソフトウェアに関する情報及びメッセージダイジェストの電子署名をＷｅｂサーバ１へ送信する。【００６８】
この他、生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報の全てを、ユーザ電子証明書記憶部５５に記憶したユーザ電子証明書、または、機器電子証明書記憶部５７に記憶した機器電子証明書を統一的に用いて、ＰＫＩ認証のため電子署名して送信するようにしても良い。この場合、各種情報が同時にＰＫＩ認証を経て送信されることから、セキュリティレベルをより高めることが可能となる。以下では、機器電子証明書を統一的に用いてＰＫＩ認証を行う例を説明する。【００６９】
主制御部５１は上述した生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報を暗号化処理部５１０へ出力する。主制御部５１は暗号化鍵記憶部５１８より暗号化鍵を読み出し、暗号化処理部５１０へ出力する。そして暗号化処理部５１０は暗号化処理プログラムにより、情報の暗号化を行う。暗号化処理部５１０は、記憶したハッシュ関数に基づき、生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報のメッセージダイジェストを算出する。暗号化処理部５１０は算出したメッセージダイジェストを主制御部５１へ出力する。【００７０】
主制御部５１は機器個人鍵記憶部５８に記憶した機器個人鍵を読み出し、読み出した機器個人鍵により、メッセージダイジェストを電子署名する。そして主制御部５１は暗号化した生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報、並びに、メッセージダイジェストの電子署名と、機器電子証明書記憶部５７から読み出した機器電子証明書とを、入出力部５１４を介してＣＰＵ２１Ｃへ出力する。ＣＰＵ２１Ｃは、機器電子証明書、暗号化された生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報、並びにメッセージダイジェストの電子署名をＷｅｂサーバ１へ送信する。なお、本実施の形態においてはコンピュータ２Ａ乃至２Ｃの３つの例を示したが、あくまで一例であって、これに限るものではない。コンピュータ２Ａ、２Ｂ及び２Ｃのハードウェアそれぞれを適宜融合させる形態であっても良い。例えばコンピュータ２Ａの顔情報ファイル２５３Ａはハードディスクたる記憶部２５Ａに記憶されているが、コンピュータ２Ｂの如くフラッシュメモリ２２ＢのＢＩＯＳ内部に記憶するようにしても良い。またコンピュータ２Ｃの生体認証はセキュリティチップ５内で実行されるが、コンピュータ２Ｂの如く、セキュリティチップ５外で実行するようにしても良い。【００７１】
図５はＤＢサーバ４のハードウェア構成を示すブロック図である。ＤＢサーバ４はＣＰＵ４１、ＲＡＭ４２、通信部４６及び記憶部４５を含んで構成される。ＣＰＵ４１は、バス４７を介してＤＢサーバ４のハードウェア各部と接続されていて、それらを制御すると共に、記憶部４５に格納された制御プログラムに従って、種々のソフトウェア的機能を実行する。ＲＡＭ４２は半導体素子により構成され、ＣＰＵ４１の指示に従い必要な情報の書き込み及び読み出しを行う。通信部４６はファイアウォールとしての機能を果たすゲートウェイ等である。【００７２】
記憶部４５内部にはソフトウェアＤＢ４５１が格納されている。ＣＰＵ４１はソフトウェアＤＢ４５１のフィールドのキーを関連づけたスキーマにおいてＳＱＬ(Structured Query Language)等のデータベースの形式に応じたアクセスインターフェースを用いて対話することにより、必要な情報の記憶、検索等の処理を実行する。ソフトウェアＤＢ４５１にはＯＳの各種バージョン及びブラウザの各種バージョンに関する情報が記憶されている。ＣＰＵ４１はＷｅｂサーバ１のリクエストに応じ、ＯＳ及びブラウザのバージョンに関する情報を送信する。【００７３】
図６はソフトウェアＤＢ４５１のレコードレイアウトを示す説明図である。ソフトウェアＤＢ４５１は種類フィールド、バージョンフィールド、更新日時フィールド及び内容フィールドを含んで構成される。種類フィールドには、ＯＳ及びブラウザの名称が記憶されている。バージョンフィールドには、ＯＳまたはブラウザのバージョンが記憶されている。更新日時フィールドには、ＯＳ及びバージョン、または、ブラウザ及びバージョンに対応させて、各ソフトウェアが更新された日時情報が記憶されている。例えばＯＳのバージョン「Ｗ０６」は、バージョン「Ｗ０１」〜「Ｗ０５」を経た最新のバージョンであり、更新日時は２００７年９月２５日１２時１分と記憶されている。また、ブラウザのバージョン「Ｉ０５」は、バージョン「Ｉ０１」〜「Ｉ０４」を経た最新のバージョンであり、更新日時は２００７年１０月５日２１時０分２０秒と記憶されている。内容フィールドには各バージョンの説明が記憶されている。ＣＰＵ４１はＯＳ及びソフトウェアのバージョンが更新される度に、バージョン、更新日時及び内容をソフトウェアＤＢ４５１に記憶する。【００７４】
図７はＷｅｂサーバ１のハードウェア構成を示すブロック図である。Ｗｅｂサーバ１は制御部としてのＣＰＵ１１、ＲＡＭ１２、入力部１３、表示部１４、記憶部１５、通信部１６、及び、時計部１８等を含んで構成される。ＣＰＵ１１は、バス１７を介してコンピュータ１のハードウェア各部と接続されていて、それらを制御すると共に、記憶部１５に格納された制御プログラム１５Ｐに従って、種々のソフトウェア的機能を実行する。【００７５】
ＲＡＭ１２は半導体素子により構成され、ＣＰＵ１１の指示に従い必要な情報の書き込み及び読み出しを行う。表示部１４は例えば液晶ディスプレイ等であり、入力部１３はキーボード及びマウス等により構成される。通信部１６はファイアウォールとしての機能を果たすゲートウェイ等であり、コンピュータ２、ＣＡサーバ３及びＤＢサーバ４との間で情報の送受信を行う。時計部１８は現在の日時情報をＣＰＵ１１へ出力する。記憶部１５は例えばハードディスクであり、制御プログラム１５Ｐ、ＨＴＭＬファイル１５１、復号プログラム１５２、ソフトウェア評価テーブル１５３、ポリシーテーブル１５４、暗号化鍵記憶部１５８、及び、ユーザＤＢ１５５等が記憶されている。なお、ソフトウェア評価テーブル１５３、ユーザＤＢ１５５及びポリシーテーブル１５４は必ずしもＷｅｂサーバ１内の記憶部１５に記憶しておく必要はなく、図示しないＤＢサーバ内部に記憶し、必要に応じて読み書きするようにすれば良い。【００７６】
ＨＴＭＬファイル１５１はオンラインバンキングのトップページ、登録画面、振り込み画面及び残高確認画面等の各種処理を実行するための画面がＨＴＭＬ形式で記憶されている。Ｗｅｂサーバ１のＣＰＵ１１は、コンピュータ２からのリクエストに応じて、対応するＨＴＭＬファイル１５１を適宜読み出して、通信部１６を介してコンピュータ２へ送信する。復号プログラム１５２はコンピュータ２から送信される暗号化された情報を復号するためのプログラムである。なおハッシュ関数は記憶部１５に記憶されている。ユーザＤＢ１５５は取引を行うユーザの情報及びコンピュータ２の情報を記憶している。暗号化鍵記憶部１５８はコンピュータ２Ｃの暗号化鍵記憶部５１８に記憶した暗号化鍵に対応する暗号化鍵を記憶している。【００７７】
図８はユーザＤＢ１５５のレコードレイアウトを示す説明図である。ユーザＤＢ１５５はＩＤフィールド、パスワードフィールド、氏名フィールド、機器ＩＤフィールド、口座番号フィールド及び残高フィールド等を含んで構成される。ＩＤフィールドには取引対象であるユーザを特定するための固有のＩＤが記憶されている。またパスワードフィールドにはＩＤに対応づけられてパスワードが記憶されている。氏名フィールドにはＩＤに対応づけてユーザの氏名が記憶されており、機器ＩＤフィールドにはコンピュータ２を特定するための機器ＩＤが記憶されている。この機器ＩＤは上述のとおり、コンピュータ２の種類によって異なる。口座番号フィールドにはユーザの口座番号が記憶され、残高フィールドには口座番号に対応する残高が記憶される。氏名、口座番号及び残高は、図示しない銀行のサーバから送信されたデータが、ＣＰＵ１１の指示により、ユーザＤＢ１５５に記憶される。【００７８】
ユーザはオンラインバンキングの初期登録に際し、ＩＤ、パスワード及び機器ＩＤをユーザＤＢ１５５に記憶する。コンピュータ２はユーザが入力したＩＤ及びパスワードを送信する。Ｗｅｂサーバ１のＣＰＵ１１は送信されたＩＤ及びパスワードを口座番号に対応づけてユーザＤＢ１５５に記憶する。コンピュータ２はこれらＩＤ及びパスワードの送信と共に、機器ＩＤをＷｅｂサーバ１へ送信する。Ｗｅｂサーバ１のＣＰＵ１１は受信した機器ＩＤを口座番号に対応づけてユーザＤＢ１５５に記憶する。【００７９】
ソフトウェア評価テーブル１５３は、ソフトウェアのバージョンに対応するレベルを記憶している。図９はソフトウェア評価テーブル１５３のレコードレイアウトを示す説明図である。ソフトウェア評価テーブル１５３はＯＳのバージョン及びブラウザのバージョンそれぞれに対応させてソフトウェアレベルを記憶している。なお、ソフトウェア評価テーブル１５３はＯＳのバージョンが新しいほど、またブラウザのバージョンが新しいほどソフトウェアレベルが高くなるよう値が記憶されている。例えば、ＯＳ及びブラウザのバージョンが共に最新の場合は、ソフトウェアレベルが最高の３と記憶されている。またＯＳのバージョンが最新であるが、ブラウザのバージョンが１バージョン前の場合はこれよりも低いソフトウェアレベル２が記憶されている。また例えば、ＯＳのバージョンが２〜４バージョン前であり、かつ、ブラウザのバージョンが３バージョン前の場合は最低のソフトウェアレベル１が記憶されている。なお、ソフトウェア評価テーブル１５３の数値例はあくまで一例で有り、これに限るものでない。【００８０】
ＣＰＵ１１は、コンピュータ２からソフトウェアに関する情報としてＯＳのバージョン及びブラウザのバージョンを受信した場合、ＯＳのバージョン及びブラウザのバージョンをＤＢサーバ４へ送信する。ＤＢサーバ４のＣＰＵ４１はＯＳのバージョン及びブラウザのバージョンを受信し、ソフトウェアＤＢ４５１を検索する。そして、ＣＰＵ４１は受信したＯＳのバージョンが最新のものか、何バージョン前かの情報を、更新日時を参照してＲＡＭ４２に格納する。またＣＰＵ４１は受信したブラウザのバージョンが最新のものか、何バージョン前かの情報を、更新日時を参照してＲＡＭ４２に格納する。【００８１】
ＣＰＵ４１はＲＡＭ４２に格納したＯＳ及びブラウザのバージョンに関する情報（最新のものか、何バージョン前のものかの情報）をＷｅｂサーバ１へ送信する。Ｗｅｂサーバ１のＣＰＵ１１はソフトウェア評価テーブル１５３を参照し、ＤＢサーバ４から送信されたＯＳ及びブラウザのバージョンに関する情報に基づき、ソフトウェアレベルを読み出す。なお、本実施の形態においては、バージョンの情報を外部のＤＢサーバ４に問い合わせる形態につき説明したが、随時更新されるソフトウェアＤＢ４５１をＷｅｂサーバ１内の記憶部１５に用意しておいても良い。【００８２】
上述したソフトウェアに関する情報に基づくレベル（ソフトウェアレベル）と同様に、ＣＰＵ１１は送信された生体認証に関する情報に基づくレベル（以下、生体レベル）、及び、識別情報に関する情報に基づくレベル（装置レベル、以下、機器レベルと称する）を決定する。ＣＰＵ１１はセキュリティが強固なほど、生体レベル及び機器レベルを高くなるよう決定する。そして、ソフトウェアレベル、生体認証レベル、及び、機器レベルを総合的に検討して、コンピュータ２との今後の処理を許可するか否か、換言すればコンピュータ２が正か否かを判断する。【００８３】
図１０は本実施の形態に係る、コンピュータ２の正否を判断する処理を説明するためのグラフである。Ｘ軸は生体レベルを示し、Ｙ軸は機器レベルを示し、Ｚ軸はソフトウェアレベルを示す。Ｘ軸は原点から正方向に向かうに従いセキュリティレベルが高まる。同様にＹ軸及びＺ軸も原点から正方向に向かうに従いセキュリティレベルが高まる。コンピュータ２から送信された生体認証に関する情報、識別情報に関する情報、及び、ソフトウェアに関する情報により決定される生体レベル、機器レベル及び生体レベルにより座標軸上の点が決定される。斜線で囲む基準レベルは予め生体レベルの基準レベル、機器レベルの基準レベル及びソフトウェアレベルの基準レベルにより決定されるものであり、オンラインバンキングの処理を実行する場合、この基準レベルの外の領域に座標軸上の点が存在することが必要とされる。斜線で示す基準レベルよりも内の領域の座標軸上に点が存在する場合、セキュリティポリシーを満たさないものとして処理は終了する。【００８４】
図７に示す記憶部１５に、セキュリティポリシーに応じて、生体レベルの基準レベル、機器レベルの基準レベル及びソフトウェアレベルの基準レベルにより決定される基準レベルを予め記憶しておく。具体的には、３次元座標値に対応づけて、正を示す「１」、否を示す「０」を記憶しておく。ＣＰＵ１１は後述するように補正を行った後、レベルに基づき、座標軸上の点を決定する。そしてＣＰＵ１１はこの点が基準レベル以上であるか、すなわち当該点に正を示す「１」が記憶部１５に記憶されているか否かを判断する。ＣＰＵ１１は正が記憶されていると判断した場合、コンピュータ２はセキュリティポリシーに合致するとして、振り込み等の処理を継続する。一方、基準レベルに満たない場合は、セキュリティポリシーに合致しないものとして処理を終了する。【００８５】
このように３次元座標軸上において、正否を判断するほか、レベルに応じたテーブルを設けて判断するようにしても良い。図１１乃至図１４はポリシーテーブル１５４の記憶内容を示す説明図である。なおＨＤＤはハードディスクドライブの略であり、ＳＣはセキュリティチップの略である。ポリシーテーブル１５４は生体レベル、機器レベル及びソフトウェアレベルの全ての組み合わせに対応させて正否を記憶している。図において正は○印、否は×印で示している。この○印で示すフラグが基準レベルに相当するものである。ポリシーテーブル１５４は、コンピュータ２における生体認証に関する情報等に応じて複数の生体レベルを記憶しており、識別情報に関する情報等に応じて複数の機器レベルを記憶している。またコンピュータ２のソフトウェアに関する情報等に応じて複数のソフトウェアレベルを記憶している。まず生体レベルの決定処理及び補正処理について、具体例を挙げて説明する。【００８６】
生体レベルはレベル１乃至３のいずれかに決定され、電子署名が有効であり、また期限が有効なユーザ電子証明書の存在によりレベル３＋（レベル４）へ補正される。さらに、また期限が有効なユーザ電子証明書が存在し、生体認証に関する情報が暗号化されて送信され、かつ改竄がなく電子署名が有効であると判断された場合、レベル３＋＋（レベル５）へ補正される。レベル１は生体認証の種類が顔認証であり、顔認証の結果が正であり、かつ、ハードディスクに顔認証用の顔情報が記憶されている場合に決定されるレベルである。レベル２はレベル１よりも高く、生体認証の種類が指紋認証であり、指紋認証の結果が正であり、かつ、ハードディスクに指紋認証用の指紋情報が記憶されている場合に決定されるレベルである。レベル３はレベル２よりも高く、生体認証の種類が指紋認証であり、指紋認証の結果が正であり、かつ、セキュリティチップ５内に指紋認証用の指紋情報が記憶されている場合に決定されるレベルである。【００８７】
補正されるレベル３＋はレベル３よりも高く、生体認証の種類が指紋認証であり、指紋認証の結果が正であり、セキュリティチップ５内に指紋認証用の指紋情報が記憶されており、かつ、生体認証に関する情報と共に、期限が有効なユーザ電子証明書及びユーザ電子証明書とペアになる個人鍵で施された有効な電子署名が同時に送信されてきた場合に、レベル３からレベル３＋へと補正されものである。補正されるレベル３＋＋はレベル３＋よりもさらに高く、生体認証の種類が指紋認証であり、指紋認証の結果が正であり、セキュリティチップ５内に指紋認証用の指紋情報が記憶されており、生体認証に関する情報と共に、期限が有効なユーザ電子証明書及びユーザ電子証明書とペアになる個人鍵で施された有効な電子署名が同時に送信され、かつ、生体認証に関する情報が暗号化され改竄されていない場合にレベル３＋をさらに補正して３＋＋とするものである。ＣＰＵ１１はコンピュータ２から、顔認証の結果及び顔認証用の顔情報がハードディスクたる記憶部２５Ａ等に記憶されていることを示す情報を含む生体認証に関する情報を受信した場合、顔認証の結果が正の場合に限り、ポリシーテーブル１５４を参照して、当該コンピュータ２をレベル１と決定する。【００８８】
また、ＣＰＵ１１はコンピュータ２から指紋認証の結果及び指紋認証用の指紋情報がハードディスクたる記憶部２５Ｂ等に記憶されていることを示す情報を含む生体認証に関する情報を受信した場合、指紋認証の結果が正の場合に限り、ポリシーテーブル１５４を参照して、当該コンピュータ２をレベル２と決定する。ＣＰＵ１１は、コンピュータ２から指紋認証の結果、及び、指紋認証用の指紋情報がセキュリティチップ５内に記憶されていることを示す情報を含む生体認証に関する情報を受信した場合、指紋認証の結果が正の場合に限り、ポリシーテーブル１５４を参照して、当該コンピュータ２をレベル３と決定する。【００８９】
さらに、ＣＰＵ１１は、ポリシーテーブル１５４を参照して、コンピュータ２から指紋認証の結果、及び、指紋認証用の指紋情報がセキュリティチップ５内に記憶されていることを示す情報を含む生体認証に関する情報に加えて、期限が有効なユーザ電子証明書及びユーザ電子証明書とペアになる個人鍵で施された有効な電子署名を受信した場合、指紋認証の結果が正の場合に限り、当該コンピュータ２をレベル３＋と補正した上で、決定する。なお、期限が有効か否かは時計部１８から出力される日時情報を参照して判断する。また、有効期限を徒過している場合は、レベル３となる。最後にＣＰＵ１１は、ポリシーテーブル１５４を参照して、コンピュータ２から暗号化された指紋認証の結果、及び、指紋認証用の指紋情報がセキュリティチップ５内に記憶されていることを示す情報を含む生体認証に関する情報が暗号化され、並びに、期限が有効なユーザ電子証明書及びユーザ電子証明書とペアになる個人鍵で施された有効な電子署名を受信した場合、改竄されておらず、かつ、指紋認証の結果が正の場合に限り、当該コンピュータ２をレベル３＋＋と補正した上で、決定する。【００９０】
次いで機器レベルについて説明する。レベル１は機器ＩＤがハードディスクに記憶されている場合に、決定されるレベルである。レベル２はレベル１よりも高く、機器ＩＤがＢＩＯＳ内部に記憶されている場合に決定されるレベルである。レベル３はレベル２よりも高く、機器ＩＤがセキュリティチップ５内に記憶されている場合に決定されるレベルである。レベル３＋はレベル３よりも高く、機器ＩＤがセキュリティチップ５内に記憶されており、かつ、識別情報に関する情報と共に、期限が有効な機器電子証明書及び機器電子証明書とペアになる個人鍵で施された有効な電子署名が同時に送信されてきた場合にレベル３を補正して３＋とするものである。補正されるレベル３＋＋はレベル３＋よりもさらに高く、セキュリティチップ５内に機器ＩＤが記憶されており、識別情報に関する情報が暗号化されていると共に、期限が有効なユーザ電子証明書及び機器電子証明書とペアになる個人鍵で施された有効な電子署名が同時に送信され、かつ、識別情報に関する情報が改竄されていない場合にレベル３＋＋へと補正されるものである。【００９１】
コンピュータ２から機器ＩＤ及び機器ＩＤがハードディスクたる記憶部２５Ａに記憶されていることを示す情報を含む識別情報に関する情報を受信した場合、ポリシーテーブル１５４を参照して、送信された機器ＩＤがユーザＤＢ１５５に記憶された機器ＩＤに一致することを条件に、ＣＰＵ１１は、当該コンピュータ２をレベル１と決定する。コンピュータ２から機器ＩＤ及び機器ＩＤがＢＩＯＳに記憶されていることを示す情報を含む識別情報に関する情報を受信した場合、ポリシーテーブル１５４を参照して、送信された機器ＩＤがユーザＤＢ１５５に記憶された機器ＩＤに一致することを条件に、ＣＰＵ１１は、当該コンピュータ２をレベル２と決定する。【００９２】
コンピュータ２から機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報を受信した場合、送信された機器ＩＤがユーザＤＢ１５５に記憶された機器ＩＤに一致することを条件に、ポリシーテーブル１５４を参照して、ＣＰＵ１１は、当該コンピュータ２をレベル３と決定する。コンピュータ２から機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報を、期限が有効な機器電子証明書及び機器電子証明書とペアになる個人鍵で施された有効な電子署名と共に受信した場合、送信された機器ＩＤがユーザＤＢ１５５に記憶された機器ＩＤに一致することを条件に、ポリシーテーブル１５４を参照して、ＣＰＵ１１は、当該コンピュータ２のレベルを補正した上で、レベル３＋と決定する。さらに、コンピュータ２から、暗号化された機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報を、期限が有効な機器電子証明書及び機器電子証明書とペアになる個人鍵で施された有効な電子署名と共に受信した場合、送信された機器ＩＤがユーザＤＢ１５５に記憶された機器ＩＤに一致し、かつ、改竄がないこと条件に、ポリシーテーブル１５４を参照して、ＣＰＵ１１は、当該コンピュータ２のレベルを補正した上で、レベル３＋＋と決定する。【００９３】
ソフトウェアレベルは上述したソフトウェア評価テーブル１５３により決定されるレベルでありソフトウェアレベル１乃至３が存在する。さらに、以下の場合には補正処理を行う。コンピュータ２からソフトウェアに関する情報と共に期限が有効な機器電子証明書またはユーザ電子証明書及び当該電子証明書とペアになる個人鍵で施された有効な電子署名が送信され、かつ、ソフトウェアに関する情報が改竄されていない場合は、ＣＰＵ１１はレベルを補正する。レベル１乃至３を、レベル２、レベル３、レベル３＋へそれぞれ補正する。さらに、後述するように、生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報が暗号化され、所定時間内に有効な機器電子証明書及び機器電子証明書とペアになる個人鍵で施された有効な電子署名と共に改竄なく送信された場合、または、機器電子証明書及び機器電子証明書とペアになる個人鍵で施された有効な電子署名と共に、生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報の全てが、同時に改竄なく送信されてきた場合も、補正処理を行う。この場合、図示しないが、レベル２、レベル３、レベル３＋を、レベル３、レベル３＋、レベル３＋＋へそれぞれ高く補正する。以上述べた処理により決定された生体レベル、機器レベル及びソフトウェアレベルに基づき、ＣＰＵ１１はポリシーテーブル１５４を参照して、正否を判断する。【００９４】
図１１はソフトウェアレベルが１の場合を示す。ソフトウェアレベルが１の場合、セキュリティレベルが低いことから、生体レベル及び機器レベルの如何に関わらず、全て否と記憶されている。図１２はソフトウェアレベルが２の場合を示す。ソフトウェアレベル１と比較してある程度セキュリティが向上しているため、生体レベル及び機器レベルが共に３＋＋の場合はコンピュータ２を正と判断するよう情報が記憶されている。図１３はソフトウェアレベルが３の場合を示す。ソフトウェアのバージョンが高く安全性も期待できることから、生体レベル及び機器レベルが共に３＋＋の場合、生体レベルが３＋＋であり機器レベルが３＋の場合、及び、生体レベルが３＋であり機器レベルが３＋＋の場合に、コンピュータ２を正と判断する情報が記憶されている。【００９５】
図１４はソフトウェアレベルが３＋の場合を示す。ソフトウェアレベルが高くかつ改竄されていないことから、生体レベル及び機器レベルが共に３＋＋の場合、生体レベルが３＋＋であり機器レベルが３＋の場合、生体レベルが３＋であり機器レベルが３＋＋の場合、生体レベルが３＋＋であり機器レベルが３の場合、生体レベルが３＋であり機器レベルが３＋の場合、及び、生体レベルが３であり機器レベルが３＋＋の場合、コンピュータ２を正と判断する情報が記憶されている。【００９６】
ＣＰＵ１１は、コンピュータ２から、暗号化された指紋認証の結果、指紋情報がセキュリティチップ５内に記憶されていることを示す情報を含む生体認証に関する情報、機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを含む識別情報に関する情報、及び、ソフトウェアに関する情報、と共に、期限が有効な機器電子証明書（またはユーザ電子証明書）及びこれとペアになる個人鍵で施された有効な電子署名を受信する。ＣＰＵ１１はこのように、全ての情報が同時に送信され、また全ての情報に改竄がなく、かつ、ソフトウェアレベルが３＋、生体レベルが３＋＋、機器レベルが３＋＋と判断できる場合は、最高のレベルを決定する。ＣＰＵ１１はこの最高レベルを決定したコンピュータ２に関しては、セキュリティが高いと判断し、より多くの処理を認めるようにすればよい。【００９７】
なお、ポリシーテーブル１５４の記憶内容はオペレータが入力部１３から適宜の値を入力するようにすればよい。また、本実施の形態においてはポリシーテーブル１５４を用いた例を説明したが、これに限るものではなく、ポイント制により判断するようにしても良い。例えば、ＣＰＵ１１は、生体レベルの高さに応じて順に１〜５のポイントを付与し、機器レベルの高さに応じて１〜５のポイントを付与し、さらに、ソフトウェアレベルの高さに応じて順に１〜４のポイントを付与する。そしてＣＰＵ１１は基準レベルに対応する基準ポイント１０を閾値として記憶部１５に記憶しておき、コンピュータ２の各レベルに基づく合計ポイントが１０以上の場合に正と判断するようにしても良い。さらに、条件としてＣＰＵ１１は少なくとも生体レベルは３以上、機器レベルは３以上、かつ、ソフトウェアレベルは２以上との条件を付与するようにしても良い。【００９８】
以上のハードウェア構成において、本実施の形態に係る各種ソフトウェア処理の手順を、フローチャートを用いて説明する。以下では、説明を容易にするために、オンラインバンキングにおいてコンピュータ２Ａ、２Ｂ、２Ｃのそれぞれが振り込み処理を実行する場合の手順を説明する。まずコンピュータ２Ａについて説明する。【００９９】
図１５乃至図１７はコンピュータ２Ａにおけるレベル決定処理の手順を示すフローチャートである。ユーザはコンピュータ２Ａのブラウザ２５２Ａを起動し、Ｗｅｂサーバ１へアクセスするためのＵＲＬ（Uniform Resource Locator）を入力部２３Ａから入力する。Ｗｅｂサーバ１はコンピュータ２に、オンラインバンキングへログインするためのＩＤ及びパスワード入力画面をコンピュータ２Ａへ送信する。コンピュータ２Ａのブラウザ２５２Ａ（表示部２４Ａ）にはＩＤ及びパスワードの入力画面が表示される。ユーザは入力部２３ＡからＩＤ及びパスワードを入力する。【０１００】
コンピュータ２ＡのＣＰＵ２１Ａは入力部２３Ａから入力されたＩＤ及びパスワードを受け付け、Ｗｅｂサーバ１へ送信する（ステップＳ１５１）。Ｗｅｂサーバ１のＣＰＵ１１は通信部１６を介して、ＩＤ及びパスワードを受信する（ステップＳ１５２）。ＣＰＵ１１はユーザＤＢ１５５を参照し、受信したＩＤ及びパスワードが、ユーザＤＢ１５５に記憶したＩＤ及びパスワードに一致するか否かを判断する（ステップＳ１５３）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ１５３でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は、一致すると判断した場合（ステップＳ１５３でＹＥＳ）、ログインを認めるべく、ＨＴＭＬファイル１５１から生体認証の開始画面を送信する（ステップＳ１５４）。【０１０１】
コンピュータ２ＡのＣＰＵ２１Ａは生体認証の開始画面を受信し、ブラウザ２５２Ａに生体認証の開始画面を表示する（ステップＳ１５５）。ＣＰＵ２１Ａは、制御プログラム２５ＰＡを起動し以下の処理を行う。ＣＰＵ２１Ａは、この画面の受信をトリガに顔認識プログラム２５５Ａを起動し（ステップＳ１５６）、カメラからユーザの顔情報を取り込む（ステップＳ１５７）。ＣＰＵ２１Ａは顔情報ファイル２５３Ａから予め記憶された顔情報を読み出す（ステップＳ１５８）。ＣＰＵ２１Ａは読み出した顔情報と取り込んだ顔情報とが一致するか否かを判断する（ステップＳ１５９）。ＣＰＵ２１Ａは一致しないと判断した場合（ステップＳ１５９でＮＯ）、不正なアクセスであるとして処理を終了する。【０１０２】
一方ＣＰＵ２１Ａは顔情報が一致すると判断した場合（ステップＳ１５９でＹＥＳ）、顔認証の結果、顔情報がハードディスクに記憶されていることを示す情報を含む生体認証に関する情報を生成し、Ｗｅｂサーバ１へ送信する（ステップＳ１６１）。なお、送信される顔認証の結果には、コンピュータ２Ａで実行された生体認証の種類が顔認証であること及び顔認証の結果正であると判断されたことを示す情報が含まれる。続いてＣＰＵ２１Ａは機器ＩＤファイル２５４Ａから機器ＩＤを読み出す（ステップＳ１６２）。ＣＰＵ２１Ａは機器ＩＤ及び機器ＩＤがハードディスクに記憶されていることを示す情報を含む識別情報に関する情報を生成し、Ｗｅｂサーバ１へ送信する（ステップＳ１６３）。【０１０３】
続いてＣＰＵ２１Ａはソフトウェア情報ファイル２５７ＡからＯＳ２５１Ａ及びブラウザ２５２Ａのバージョンを読み出す（ステップＳ１６４）。なお、ソフトウェア情報取得プログラム２５６Ａは定期的に実行され、取得したＯＳ２５１Ａ及びブラウザ２５２Ａのバージョンをソフトウェア情報ファイル２５７Ａに記憶している。ＣＰＵ２１Ａは取得したＯＳ２５１Ａ及びブラウザ２５２Ａのバージョンを含むソフトウェアに関する情報をＷｅｂサーバ１へ送信する（ステップＳ１６５）。【０１０４】
Ｗｅｂサーバ１のＣＰＵ１１は、ステップＳ１６１で送信された生体認証に関する情報、ステップＳ１６３で送信された識別情報に関する情報、及び、ステップＳ１６５で送信されたソフトウェアに関する情報を受信する（ステップＳ１６７）。ＣＰＵ２１Ａは受信した生体認証に関する情報の顔認証の結果を参照し、顔認証の結果が正であるか否かを判断する（ステップＳ１６８）。ＣＰＵ１１は顔認証の結果が正でないと判断した場合（ステップＳ１６８でＮＯ）、不正な処理であるとして処理を終了する。一方、ＣＰＵ１１は顔認証の結果が正であると判断した場合（ステップＳ１６８でＹＥＳ）、生体認証に関する情報の内、顔情報がハードディスクに記憶されていることを示す情報、及び、ポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ１６９）。本例では生体レベルは１である。【０１０５】
ＣＰＵ１１は、ステップＳ１５２で受信したＩＤに対応する機器ＩＤをユーザＤＢ１５５から読み出す。ＣＰＵ１１はステップＳ１６７で受信した機器ＩＤが、ユーザＤＢ１５５から読み出した機器ＩＤに一致するか否かを判断する（ステップＳ１６１０）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ１６１０でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は一致すると判断した場合（ステップＳ１６１０でＹＥＳ）、識別情報に関する情報の内、機器ＩＤがハードディスクに記憶されていることを示す情報及びポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ１７１）。本例では機器レベルは１となる。【０１０６】
ＣＰＵ１１はソフトウェアに関する情報の内、ＯＳ２５１Ａ及びブラウザ２５２ＡのバージョンをＤＢサーバ４へ、通信部１６を介して送信する（ステップＳ１７２）。ＤＢサーバ４のＣＰＵ４１は、ソフトウェアＤＢ４５１を参照し、送信されたＯＳ２５１Ａ及びブラウザ２５２Ａのバージョンが最新か、１つ前のものか、２つ前のものか等のバージョンに関する情報をＷｅｂサーバ１へ送信する。ＣＰＵ１１は、ＤＢサーバ４から送信されたＯＳ２５１Ａ及びブラウザ２５２Ａのバージョンに関する情報を受信する（ステップＳ１７３）。【０１０７】
ＣＰＵ１１はＯＳ２５１Ａ及びブラウザ２５２Ａのバージョンに関する情報及びソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを決定する（ステップＳ１７４）。ＣＰＵ１１はステップＳ１７４で決定したソフトウェアレベル、ステップＳ１６９で決定した生体レベル、及びステップＳ１７１で決定した機器レベルに基づき、ポリシーテーブル１５４から正否の読み出しを行う（ステップＳ１７５）。ＣＰＵ１１はポリシーテーブル１５４に正と記憶されているか否かを判断する（ステップＳ１７６）。ＣＰＵ１１は正と記憶されていないと判断した場合（ステップＳ１７６でＮＯ）、コンピュータ２Ａが基準レベルに満たないものとして以降の処理を終了する。なお本例の場合、ソフトウェアレベルの如何に関わらず否と判断される。【０１０８】
一方、ＣＰＵ１１は正と記憶されている場合は（ステップＳ１７６でＹＥＳ）、コンピュータ２Ａのレベルは基準レベル以上であると判断し、ＨＴＭＬファイル１５１から振り込み処理の画面を読み出す（ステップＳ１７７）。ＣＰＵ１１は振り込み処理の画面をコンピュータ２Ａへ送信する（ステップＳ１７８）。コンピュータ２ＡのＣＰＵ２１Ａは、振り込み処理の画面を受信し、ブラウザ２５２Ａに表示する（ステップＳ１７９）。【０１０９】
図１８乃至図２０はコンピュータ２Ｂにおけるレベル決定処理の手順を示すフローチャートである。コンピュータ２ＢのＣＰＵ２１Ｂは入力部２３Ｂから入力されたＩＤ及びパスワードを受け付け、Ｗｅｂサーバ１へ送信する（ステップＳ１８１）。Ｗｅｂサーバ１のＣＰＵ１１は通信部１６を介して、ＩＤ及びパスワードを受信する（ステップＳ１８２）。ＣＰＵ１１はユーザＤＢ１５５を参照し、受信したＩＤ及びパスワードが、ユーザＤＢ１５５に記憶したＩＤ及びパスワードに一致するか否かを判断する（ステップＳ１８３）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ１８３でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は、一致すると判断した場合（ステップＳ１８３でＹＥＳ）、ログインを認めるべく、ＨＴＭＬファイル１５１から生体認証の開始画面を送信する（ステップＳ１８４）。【０１１０】
コンピュータ２ＢのＣＰＵ２１Ｂは生体認証の開始画面を受信し、ブラウザ２５２Ｂに生体認証の開始画面を表示する（ステップＳ１８５）。ＣＰＵ２１Ｂは、制御プログラム２５ＰＢを起動し以下の処理を行う。ＣＰＵ２１Ｂは、この画面の受信をトリガに指紋認識プログラム２５５Ｂを起動し（ステップＳ１８６）、指紋入力部２９Ｂからユーザの指紋情報を取り込む（ステップＳ１８７）。ＣＰＵ２１Ｂは指紋情報ファイル２５３Ｂから予め記憶された指紋情報を読み出す（ステップＳ１８８）。ＣＰＵ２１Ｂは読み出した指紋情報と取り込んだ指紋情報とが一致するか否かを判断する（ステップＳ１８９）。ＣＰＵ２１Ｂは一致しないと判断した場合（ステップＳ１８９でＮＯ）、不正なアクセスであるとして処理を終了する。【０１１１】
一方ＣＰＵ２１Ｂは指紋情報が一致すると判断した場合（ステップＳ１８９でＹＥＳ）、指紋認証の結果、指紋情報がハードディスクに記憶されていることを示す情報を含む生体認証に関する情報を生成し、Ｗｅｂサーバ１へ送信する（ステップＳ１９１）。なお、送信される指紋認証の結果には、コンピュータ２Ｂで実行された生体認証の種類が指紋認証であること及び指紋認証の結果正であると判断されたことを示す情報が含まれる。続いてＣＰＵ２１ＢはＢＩＯＳ上の機器ＩＤファイル２２３Ｂから機器ＩＤを読み出す（ステップＳ１９２）。ＣＰＵ２１Ｂは機器ＩＤ及び機器ＩＤがＢＩＯＳに記憶されていることを示す情報を含む識別情報に関する情報を生成し、Ｗｅｂサーバ１へ送信する（ステップＳ１９３）。【０１１２】
続いてＣＰＵ２１Ｂはソフトウェア情報ファイル２５７ＢからＯＳ２５１Ｂ及びブラウザ２５２Ｂのバージョンを読み出す（ステップＳ１９４）。なお、ソフトウェア情報取得プログラム２５６Ｂは定期的に実行され、取得したＯＳ２５１Ｂ及びブラウザ２５２Ｂのバージョンをソフトウェア情報ファイル２５７Ｂに記憶している。ＣＰＵ２１Ｂは取得したＯＳ２５１Ｂ及びブラウザ２５２Ｂのバージョンを含むソフトウェアに関する情報をＷｅｂサーバ１へ送信する（ステップＳ１９５）。【０１１３】
Ｗｅｂサーバ１のＣＰＵ１１は、ステップＳ１９１で送信された生体認証に関する情報、ステップＳ１９３で送信された識別情報に関する情報、及び、ステップＳ１９５で送信されたソフトウェアに関する情報を受信する（ステップＳ１９６）。ＣＰＵ１１は受信した生体認証に関する情報の指紋認証の結果を参照し、指紋認証の結果が正であるか否かを判断する（ステップＳ１９７）。ＣＰＵ１１は指紋認証の結果が正でないと判断した場合（ステップＳ１９７でＮＯ）、不正な処理であるとして処理を終了する。一方、ＣＰＵ１１は指紋認証の結果が正であると判断した場合（ステップＳ１９７でＹＥＳ）、生体認証に関する情報の内、指紋情報がハードディスクに記憶されていることを示す情報、及び、ポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ１９８）。本例の場合、生体レベルは２と決定される。【０１１４】
ＣＰＵ１１は、ステップＳ１８２で受信したＩＤに対応する機器ＩＤをユーザＤＢ１５５から読み出す。ＣＰＵ１１はステップＳ１９６で受信した機器ＩＤが、ユーザＤＢ１５５から読み出した機器ＩＤに一致するか否かを判断する（ステップＳ１９９）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ１９９でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は一致すると判断した場合（ステップＳ１９９でＹＥＳ）、識別情報に関する情報の内、機器ＩＤがＢＩＯＳに記憶されていることを示す情報及びポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ２０１）。本例の場合機器レベルは２と決定される。【０１１５】
ＣＰＵ１１はソフトウェアに関する情報の内、ＯＳ２５１Ｂ及びブラウザ２５２ＢのバージョンをＤＢサーバ４へ、通信部１６を介して送信する（ステップＳ２０２）。ＤＢサーバ４のＣＰＵ４１は、ソフトウェアＤＢ４５１を参照し、送信されたＯＳ２５１Ｂ及びブラウザ２５２Ｂのバージョンが最新か、１つ前のものか、２つ前のものか等のバージョンに関する情報をＷｅｂサーバ１へ送信する。ＣＰＵ１１は、ＤＢサーバ４から送信されたＯＳ２５１Ｂ及びブラウザ２５２Ｂのバージョンに関する情報を受信する（ステップＳ２０３）。【０１１６】
ＣＰＵ１１はＯＳ２５１Ｂ及びブラウザ２５２Ｂのバージョンに関する情報及びソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを決定する（ステップＳ２０４）。ＣＰＵ１１はステップＳ２０４で決定したソフトウェアレベル、ステップＳ１９８で決定した生体レベル、及びステップＳ２０１で決定した機器レベルに基づき、ポリシーテーブル１５４から正否の読み出しを行う（ステップＳ２０５）。ＣＰＵ１１はポリシーテーブル１５４に正と記憶されているか否かを判断する（ステップＳ２０６）。ＣＰＵ１１は正と記憶されていないと判断した場合（ステップＳ２０６でＮＯ）、コンピュータ２Ｂが基準レベルに満たないものとして以降の処理を終了する。【０１１７】
一方、ＣＰＵ１１は正と記憶されている場合は（ステップＳ２０６でＹＥＳ）、コンピュータ２Ｂのレベルは基準レベル以上であると判断し、ＨＴＭＬファイル１５１から振り込み処理の画面を読み出す（ステップＳ２０７）。ＣＰＵ１１は振り込み処理の画面をコンピュータ２Ｂへ送信する（ステップＳ２０８）。コンピュータ２ＢのＣＰＵ２１Ｂは、振り込み処理の画面を受信し、ブラウザ２５２Ｂに表示する（ステップＳ２０９）。【０１１８】
図２１乃至図２４はコンピュータ２Ｃにおけるレベル決定処理の手順を示すフローチャートである。本フローチャートでは、暗号化処理を行わない例を示す。コンピュータ２ＣのＣＰＵ２１Ｃは入力部２３Ｃから入力されたＩＤ及びパスワードを受け付け、Ｗｅｂサーバ１へ送信する（ステップＳ２１１）。Ｗｅｂサーバ１のＣＰＵ１１は通信部１６を介して、ＩＤ及びパスワードを受信する（ステップＳ２１２）。ＣＰＵ１１はユーザＤＢ１５５を参照し、受信したＩＤ及びパスワードが、ユーザＤＢ１５５に記憶したＩＤ及びパスワードに一致するか否かを判断する（ステップＳ２１３）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ２１３でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は、一致すると判断した場合（ステップＳ２１３でＹＥＳ）、ログインを認めるべく、ＨＴＭＬファイル１５１から生体認証の開始画面を送信する（ステップＳ２１４）。【０１１９】
コンピュータ２ＣのＣＰＵ２１Ｃは生体認証の開始画面を受信し、ブラウザ２５２Ｃに生体認証の開始画面を表示する（ステップＳ２１５）。主制御部５１は、生体認証の開始画面の表示コマンドを、ＣＰＵ２１Ｃから受信したことをトリガに、制御プログラム記憶部５１３に記憶された制御プログラムを起動し（ステップＳ２１６）、以下の処理を行う。主制御部５１は、指紋認証部５３の指紋認識プログラムを起動し（ステップＳ２１７）、指紋入力部５２からユーザの指紋情報を取り込む（ステップＳ２１８）。主制御部５１は指紋情報記憶部５４から予め記憶された指紋情報を読み出す（ステップＳ２１９）。主制御部５１は読み出した指紋情報と取り込んだ指紋情報とが一致するか否かを判断する（ステップＳ２２１）。主制御部５１は一致しないと判断した場合（ステップＳ２２１でＮＯ）、不正なアクセスであるとして処理を終了する。【０１２０】
主制御部５１は一致すると判断した場合（ステップＳ２２１でＹＥＳ）、ユーザ電子証明書記憶部５５からユーザ電子証明書を読み出す（ステップＳ２２２）。主制御部５１は指紋認証の結果、指紋情報がセキュリティチップ５内に記憶されていることを示す情報を含む生体認証に関する情報、ユーザ電子証明書とペアになっているユーザ個人鍵記憶部５６に記憶した個人鍵による電子署名、及び、ユーザ電子証明書を併せてＷｅｂサーバ１へ送信する（ステップＳ２２３）。この場合、主制御部５１はユーザ個人鍵記憶部５６に記憶したユーザ個人鍵により生体認証に関する情報を電子署名（暗号化）する。なお、上述したとおり、セキュリティチップ５からＷｅｂサーバ１への情報の送受信は、ＣＰＵ２１Ｃの指示に従い入出力部５１４及び通信部２６Ｃを経由して行われるが、以下では説明を簡潔にするために当該記載を省略して説明する。Ｗｅｂサーバ１のＣＰＵ１１は生体認証に関する情報、電子署名及びユーザ電子証明書を受信する（ステップＳ２２４）。次いで、主制御部５１は機器ＩＤを機器ＩＤ記憶部５９から読み出す（ステップＳ２２５）。主制御部５１は機器電子証明書記憶部５７から機器電子証明書を読み出す。（ステップＳ２２６）。主制御部５１は機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報、主制御部５１が機器個人鍵記憶部５８から取り出した機器電子証明書とペアの機器個人鍵による電子署名、及び、読み出した機器電子証明書を併せてＷｅｂサーバ１へ送信する（ステップＳ２２７）。この場合、主制御部５１は機器個人鍵記憶部５８に記憶した機器個人鍵により識別情報に関する情報を電子署名する。【０１２１】
Ｗｅｂサーバ１は識別情報に関する情報、電子署名及び機器電子証明書を受信する（ステップＳ２２８）。ソフトウェア情報取得部５１１は定期的に内部のソフトウェア情報取得プログラムを実行し、記憶部２５Ｃ内部のＯＳ２５１Ｃのバージョン及びブラウザ２５２Ｃのバージョンを取得する。ソフトウェア情報取得部５１１は取得したＯＳ２５１Ｃのバージョン及びブラウザ２５２Ｃのバージョンをソフトウェア情報記憶部５１２に記憶する。主制御部５１はソフトウェア情報記憶部５１２からＯＳ２５１Ｃのバージョン及びブラウザ２５２Ｃのバージョンを読み出す（ステップＳ２２９）。【０１２２】
主制御部５１は読み出したソフトウェアに関する情報をＷｅｂサーバ１へ送信する（ステップＳ２３１）。Ｗｅｂサーバ１のＣＰＵ１１はソフトウェアに関する情報を受信する（ステップＳ２３２）。ＣＰＵ１１はステップＳ２２４で受信した生体認証に関する情報の内、指紋認証の結果を参照し、指紋認証の結果が正であるか否かを判断する（ステップＳ２３３）。ＣＰＵ１１は指紋認証の結果が正でないと判断した場合（ステップＳ２３３でＮＯ）、不正なアクセスであるとして処理を終了する。一方ＣＰＵ１１は指紋認証の結果が正であると判断した場合（ステップＳ２３３でＹＥＳ）、時計部１８から出力される日時情報を参照し、ステップＳ２２４で受信したユーザ電子証明書が有効期限内であるか否かを判断する（ステップＳ２３４）。【０１２３】
ＣＰＵ１１は有効期限内でないと判断した場合（ステップＳ２３４でＮＯ）、ユーザ電子証明書が存在しないものと同等に取り扱い、生体認証に関する情報の内、指紋情報がセキュリティチップ５内に記憶されている情報、及び、ポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ２３６）。本例の場合、レベル３となる。一方、ＣＰＵ１１は有効期限内であると判断した場合（ステップＳ２３４でＹＥＳ）、通常決定されるレベルよりも高く補正すべく、生体認証に関する情報の内、指紋情報がセキュリティチップ５内に記憶されている情報、電子署名、ユーザ電子証明書、及び、ポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ２３５）。電子署名が有効か否か判断すべくＣＰＵ１１はユーザ電子証明書内の公開鍵により電子署名を複合し、複合した情報が生体認証に関する情報に一致する場合、有効と判断する。ＣＰＵ１１は電子署名が有効であると判断した場合、レベルを高く補正する。ＣＰＵ１１は一致せず有効でないと判断した場合、レベルを補正しない。本例の場合、レベル３に加えてさらに有効な電子署名が存在することからレベルは３＋となる。【０１２４】
ＣＰＵ１１は、ステップＳ２１２で受信したＩＤに対応する機器ＩＤをユーザＤＢ１５５から読み出す。ＣＰＵ１１はステップＳ２２８で受信した機器ＩＤが、ユーザＤＢ１５５から読み出した機器ＩＤに一致するか否かを判断する（ステップＳ２３７）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ２３７でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は一致すると判断した場合（ステップＳ２３７でＹＥＳ）、ステップＳ２２８で受信した機器電子証明書が有効期限内であるか否かを判断する（ステップＳ２３８）。【０１２５】
ＣＰＵ１１は有効期限内でないと判断した場合（ステップＳ２３８でＮＯ）、機器電子証明書が存在しないものと同等に取り扱い、識別情報に関する情報の内、機器ＩＤがセキュリティチップ５内に記憶されている情報、電子署名及び、ポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ２４０）。本例の場合、レベル３となる。一方、ＣＰＵ１１は有効期限内であると判断した場合（ステップＳ２３８でＹＥＳ）、通常決定されるレベルよりも高く補正すべく、識別情報に関する情報の内、機器ＩＤがセキュリティチップ５内に記憶されている情報、電子署名、機器電子証明書、及び、ポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ２３９）。電子署名が有効か否か判断すべくＣＰＵ１１は機器電子証明書内の公開鍵により電子署名を複合し、複合した情報が識別情報に関する情報に一致する場合、有効と判断する。ＣＰＵ１１は電子署名が有効であると判断した場合、レベルを高く補正する。ＣＰＵ１１は一致せず有効でないと判断した場合、レベルを補正しない。本例の場合、レベル３に加えてさらに有効な電子署名が存在することからレベルは３＋となる。【０１２６】
ＣＰＵ１１はソフトウェアに関する情報の内、ＯＳ２５１Ｃ及びブラウザ２５２ＣのバージョンをＤＢサーバ４へ、通信部１６を介して送信する（ステップＳ２４１）。ＤＢサーバ４のＣＰＵ４１は、ソフトウェアＤＢ４５１を参照し、送信されたＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンが最新か、１つ前のものか、２つ前のものか等のバージョンに関する情報をＷｅｂサーバ１へ送信する。ＣＰＵ１１は、ＤＢサーバ４から送信されたＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンに関する情報を受信する（ステップＳ２４２）。【０１２７】
ＣＰＵ１１はＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンに関する情報及びソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを決定する（ステップＳ２４３）。ＣＰＵ１１はステップＳ２４３で決定したソフトウェアレベル、ステップＳ２３５またはＳ２３６で決定した生体レベル、及びステップＳ２３９またはＳ２４０で決定した機器レベルに基づき、ポリシーテーブル１５４から正否の読み出しを行う（ステップＳ２４４）。ＣＰＵ１１はポリシーテーブル１５４に正と記憶されているか否かを判断する（ステップＳ２４５）。ＣＰＵ１１は正と記憶されていないと判断した場合（ステップＳ２４５でＮＯ）、コンピュータ２Ｃが基準レベルに満たないものとして以降の処理を終了する。【０１２８】
一方、ＣＰＵ１１は正と記憶されている場合は（ステップＳ２４５でＹＥＳ）、コンピュータ２Ｃのレベルは基準レベル以上であると判断し、ＨＴＭＬファイル１５１から振り込み処理の画面を読み出す（ステップＳ２４６）。ＣＰＵ１１は振り込み処理の画面をコンピュータ２Ｃへ送信する（ステップＳ２４７）。コンピュータ２ＣのＣＰＵ２１Ｃは、振り込み処理の画面を受信し、ブラウザ２５２Ｃに表示する（ステップＳ２４８）。【０１２９】
図２５乃至図３０はコンピュータ２Ｃにおけるレベル決定処理の他の手順を示すフローチャートである。本フローチャートは各情報が暗号化されて送信された場合を示す。コンピュータ２ＣのＣＰＵ２１Ｃは入力部２３Ｃから入力されたＩＤ及びパスワードを受け付け、Ｗｅｂサーバ１へ送信する（ステップＳ２５１）。Ｗｅｂサーバ１のＣＰＵ１１は通信部１６を介して、ＩＤ及びパスワードを受信する（ステップＳ２５２）。ＣＰＵ１１はユーザＤＢ１５５を参照し、受信したＩＤ及びパスワードが、ユーザＤＢ１５５に記憶したＩＤ及びパスワードに一致するか否かを判断する（ステップＳ２５３）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ２５３でＮＯ）、不正なアクセスであるとして処理を終了する。一方ＣＰＵ１１は、一致すると判断した場合（ステップＳ２５３でＹＥＳ）、ログインを認めるべく、ＨＴＭＬファイル１５１から生体認証の開始画面を送信する（ステップＳ２５４）。【０１３０】
コンピュータ２ＣのＣＰＵ２１Ｃは生体認証の開始画面を受信し、ブラウザ２５２Ｃに生体認証の開始画面を表示する（ステップＳ２５５）。主制御部５１は、生体認証の開始画面の表示コマンドを、ＣＰＵ２１Ｃから受信したことをトリガに、制御プログラム記憶部５１３に記憶された制御プログラムを起動し（ステップＳ２５６）、以下の処理を行う。主制御部５１は、指紋認証部５３の指紋認識プログラムを起動し（ステップＳ２５７）、指紋入力部５２からユーザの指紋情報を取り込む（ステップＳ２５８）。主制御部５１は指紋情報記憶部５４から予め記憶された指紋情報を読み出す（ステップＳ２５９）。主制御部５１は読み出した指紋情報と取り込んだ指紋情報とが一致するか否かを判断する（ステップＳ２６１）。主制御部５１は一致しないと判断した場合（ステップＳ２６１でＮＯ）、不正なアクセスであるとして処理を終了する。【０１３１】
主制御部５１は一致すると判断した場合（ステップＳ２６１でＹＥＳ）、ユーザ電子証明書記憶部５５からユーザ電子証明書を読み出す（ステップＳ２６２）。主制御部５１は指紋認証の結果、指紋情報がセキュリティチップ５内に記憶されていることを示す情報を含む生体認証に関する情報を生成する（ステップＳ２６３）。主制御部５１は暗号化処理部５１０に記憶したハッシュ関数に基づき生体認証に関する情報のメッセージダイジェストを算出し、また、主制御部５１は暗号化鍵記憶部５１８から暗号処理のための暗号化鍵を読み出す（ステップＳ２６４）。主制御部５１はユーザ個人鍵記憶部５６からユーザ個人鍵を読み出す（ステップＳ２６５）。【０１３２】
主制御部５１は生体認証に関する情報を暗号化鍵で暗号化し、メッセージダイジェストをユーザ個人鍵記憶部５６に記憶したユーザ個人鍵で電子署名する（ステップＳ２６６）。主制御部５１は暗号化した生体認証に関する情報、メッセージダイジェストの電子署名及びユーザ電子証明書をＷｅｂサーバ１へ送信する（ステップＳ２６７）。Ｗｅｂサーバ１のＣＰＵ１１は暗号化された生体認証に関する情報、メッセージダイジェストの電子署名及びユーザ電子証明書を受信する（ステップＳ２６８）。Ｗｅｂサーバ１のＣＰＵ１１は、これらの情報を受信した日時情報を時計部１８からの出力を参照して記憶部１５に記憶する。なお、以下ではＷｅｂサーバ１内部の時計部１８の日時情報を記憶する形態について説明するが、通信網Ｎを介して接続される図示しないタイムスタンプサーバから認証を得ると共に、タイムスタンプ時刻を取得するようにしても良い。主制御部５１は機器ＩＤを機器ＩＤ記憶部５９から読み出す（ステップＳ２６９）。主制御部５１は機器電子証明書記憶部５７から機器電子証明書を読み出す（ステップＳ２７１）。主制御部５１は機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報を生成する（ステップＳ２７２）。【０１３３】
主制御部５１は暗号化処理部５１０に記憶したハッシュ関数に基づき識別情報に関する情報のメッセージダイジェストを算出する（ステップＳ２７３）。主制御部５１は機器個人鍵を機器個人鍵記憶部５８から読み出す（ステップＳ２７４）。主制御部５１は識別情報に関する情報を暗号化鍵で暗号化し、メッセージダイジェストを機器個人鍵で電子署名する（ステップＳ２７５）。主制御部５１は暗号化された識別情報に関する情報、メッセージダイジェストの電子署名及び機器電子証明書をＷｅｂサーバ１へ送信する（ステップＳ２７６）。【０１３４】
Ｗｅｂサーバ１のＣＰＵ１１は、暗号化された識別情報に関する情報、メッセージダイジェストの電子署名及び機器電子証明書を受信する（ステップＳ２７７）。Ｗｅｂサーバ１のＣＰＵ１１は、これらの情報を受信した日時情報を時計部１８からの出力を参照して記憶部１５に記憶する。主制御部５１はソフトウェア情報記憶部５１２からＯＳ２５１Ｃのバージョン及びブラウザ２５２Ｃのバージョンを読み出し、これらの情報を含むソフトウェアに関する情報を生成する（ステップＳ２７８）。主制御部５１は暗号化処理部５１０に記憶したハッシュ関数に基づき、ソフトウェアに関する情報のメッセージダイジェストを算出する（ステップＳ２７９）。主制御部５１はソフトウェアに関する情報を暗号化鍵で暗号化し、メッセージダイジェストをステップＳ２７４で読み出した機器個人鍵で電子署名する（ステップＳ２８１）。【０１３５】
そして主制御部５１は暗号化されたソフトウェアに関する情報、メッセージダイジェストの電子署名、及び、機器電子証明書をＷｅｂサーバ１へ送信する（ステップＳ２８２）。なお、ステップＳ２８１においては機器個人鍵に代えて、ユーザ個人鍵を用いても良い。またステップＳ２８２においても、機器電子証明書鍵ペアに代えてユーザ電子証明書鍵ペアを用いてもよい。Ｗｅｂサーバ１のＣＰＵ１１は暗号化されたソフトウェアに関する情報、メッセージダイジェストの電子署名、及び、機器電子証明書を受信する（ステップＳ２８３）。Ｗｅｂサーバ１のＣＰＵ１１は、これらの情報を受信した日時情報を時計部１８からの出力を参照して記憶部１５に記憶する。【０１３６】
Ｗｅｂサーバ１のＣＰＵ１１はユーザ電子証明書及び機器電子証明書に係るＣＡサーバ３へＣＡサーバ３の公開鍵の取得要求を行う。ＣＰＵ１１はＣＡサーバ３から送信されたＣＡサーバ３の公開鍵を受信する（ステップＳ２８４）。ＣＰＵ１１は復号プログラム１５２を起動する。ＣＰＵ１１はＣＡサーバ３の公開鍵を用いてステップＳ２６８で受信したユーザ電子証明書、並びに、ステップＳ２７７及びＳ２８３で受信した機器電子証明書を署名検証し、検証結果が正しい場合、これらに含まれるユーザ公開鍵及び機器公開鍵が正しいユーザ公開鍵及び機器公開鍵であると認識し、暗号化鍵記憶部１５８から暗号化鍵を読み出す（ステップＳ２８５）。【０１３７】
ＣＰＵ１１はユーザ公開鍵により、ステップＳ２６８で受信した生体認証に関する情報に対するメッセージダイジェストの署名検証を行う（ステップＳ２８６）。具体的にはＣＰＵ１１は生体認証に関する情報は、予め秘密裏に取り交わされた暗号化鍵で暗号化されているため、読み出した暗号化鍵で生体認証に関する情報を復号する。ＣＰＵ１１は記憶部１５に記憶したハッシュ関数に基づき、受信した復号済みの生体認証に関する情報のメッセージダイジェストを算出する（ステップＳ２８７）。さらに、ＣＰＵ１１はユーザ電子証明書内のユーザ公開鍵により、電子署名されたメッセージダイジェストを復号する。ＣＰＵ１１はこの復号したメッセージダイジェストと、算出したメッセージダイジェストとが一致するか否かにより署名検証を行う。一致する場合は改竄がなく電子署名は有効であると判断し、一致しない場合は改竄があり電子署名は有効でないと判断する。同様にＣＰＵ１１は機器公開鍵により識別情報に関する情報に対するメッセージダイジェストの署名検証、並びに、ソフトウェアに関する情報に対するメッセージダイジェストの署名検証を行う（ステップＳ２８８）。ＣＰＵ１１は識別情報に関する情報及びソフトウェアに関する情報のメッセージダイジェストを算出する（ステップＳ２８９）。識別情報に係る署名検証手順は以下のとおりである。ＣＰＵ１１は、識別情報に関する情報は、予め秘密裏に取り交わされた暗号化鍵で暗号化されているため、読み出した暗号化鍵で識別情報に関する情報を復号する。ＣＰＵ１１は記憶部１５に記憶したハッシュ関数に基づき、受信した復号済みの識別情報に関する情報のメッセージダイジェストを算出する。さらに、ＣＰＵ１１は受信した機器電子証明書内の機器公開鍵により、電子署名されたメッセージダイジェストを復号する。ＣＰＵ１１はこの復号したメッセージダイジェストと、算出したメッセージダイジェストとが一致するか否かにより署名検証を行う。ソフトウェアに関する情報の署名検証も同様に以下の手順で行う。ＣＰＵ１１は、ソフトウェアに関する情報は、予め秘密裏に取り交わされた暗号化鍵で暗号化されているため、読み出した暗号化鍵でソフトウェアに関する情報を復号する。ＣＰＵ１１は記憶部１５に記憶したハッシュ関数に基づき、受信した復号済みのソフトウェアに関する情報のメッセージダイジェストを算出する。さらに、ＣＰＵ１１は受信した機器電子証明書内の機器公開鍵により、電子署名されたメッセージダイジェストを復号する。ＣＰＵ１１はこの復号したメッセージダイジェストと、算出したメッセージダイジェストとが一致するか否かにより署名検証を行う。ＣＰＵ１１はステップＳ２８７で算出した生体認証に関する情報に係るメッセージダイジェストとステップＳ２８６で署名検証したメッセージダイジェストが一致し、ステップＳ２８９で算出した識別情報に関する情報に係るメッセージダイジェストとステップＳ２８８で署名検証したメッセージダイジェストとが一致し、かつ、ステップＳ２８９で算出したソフトウェアに関する情報に係るメッセージダイジェストとステップＳ２８８で署名検証したメッセージダイジェストとが一致するか否かを判断する（ステップＳ２９１）。【０１３８】
主制御部５１はメッセージダイジェストが一致しないと判断した場合（ステップＳ２９１でＮＯ）、改竄があり電子署名は有効でないため処理を終了する。一方、主制御部５１はメッセージダイジェストが全て一致すると判断した場合（ステップＳ２９１でＹＥＳ）、ＣＰＵ１１はステップＳ２６８で受信した復号済みの生体認証に関する情報の内、指紋認証の結果を参照し、指紋認証の結果が正であるか否かを判断する（ステップＳ２９２）。ＣＰＵ１１は指紋認証の結果が正でないと判断した場合（ステップＳ２９２でＮＯ）、不正なアクセスであるとして処理を終了する。一方ＣＰＵ１１は指紋認証の結果が正であると判断した場合（ステップＳ２９２でＹＥＳ）、時計部１８から出力される日時情報を参照し、ステップＳ２６８で受信したユーザ電子証明書が有効期限内であるか否かを判断する（ステップＳ２９３）。【０１３９】
ＣＰＵ１１は有効期限内でないと判断した場合（ステップＳ２９３でＮＯ）、ユーザ電子証明書が存在しないものと同等に取り扱い、生体認証に関する情報の内、指紋情報がセキュリティチップ５内に記憶されている情報、及び、ポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ２９４１）。本例の場合、レベル３となる。一方、ＣＰＵ１１は有効期限内であると判断した場合（ステップＳ２９３でＹＥＳ）、通常決定されるレベルよりも高く補正すべく、生体認証に関する情報の内、指紋情報がセキュリティチップ５内に記憶されている情報、ユーザ電子証明書、及び、ポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ２９４）。本例の場合、さらに有効なユーザ電子証明書が存在し、また有効性ある電子署名により改竄がないことが担保されたことからレベルは３＋となる。【０１４０】
ＣＰＵ１１は、ステップＳ２５２で受信したＩＤに対応する機器ＩＤをユーザＤＢ１５５から読み出す。ＣＰＵ１１はステップＳ２７７で受信した復号済みの識別情報に関する情報の内、機器ＩＤが、ユーザＤＢ１５５から読み出した機器ＩＤに一致するか否かを判断する（ステップＳ２９５）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ２９５でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は一致すると判断した場合（ステップＳ２９５でＹＥＳ）、ステップＳ２７７で受信した機器電子証明書が有効期限内であるか否かを判断する（ステップＳ２９６）。【０１４１】
ＣＰＵ１１は有効期限内でないと判断した場合（ステップＳ２９６でＮＯ）、機器電子証明書が存在しないものと同等に取り扱い、識別情報に関する情報の内、機器ＩＤがセキュリティチップ５内に記憶されている情報、及び、ポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ２９８）。本例の場合、レベル３となる。一方、ＣＰＵ１１は有効期限内であると判断した場合（ステップＳ２９６でＹＥＳ）、通常決定されるレベルよりも高く補正すべく、識別情報に関する情報の内、機器ＩＤがセキュリティチップ５内に記憶されている情報、機器電子証明書、及び、ポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ２９７）。本例の場合、レベル３に加えてさらに有効な機器電子証明書が存在し、また有効性ある電子署名により改竄がないことが担保されたことからレベルは３＋となる。【０１４２】
ＣＰＵ１１はステップＳ２８３で受信した復号済みのソフトウェアに関する情報の内、ＯＳ２５１Ｃ及びブラウザ２５２ＣのバージョンをＤＢサーバ４へ、通信部１６を介して送信する（ステップＳ２９９）。ＤＢサーバ４のＣＰＵ４１は、ソフトウェアＤＢ４５１を参照し、送信されたＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンが最新か、１つ前のものか、２つ前のものか等のバージョンに関する情報をＷｅｂサーバ１へ送信する。ＣＰＵ１１は、ＤＢサーバ４から送信されたＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンに関する情報を受信する（ステップＳ３０１）。【０１４３】
ＣＰＵ１１は機器電子証明書が有効期限内であるか否かを判断する（ステップＳ３０１１）。ＣＰＵ１１は機器電子証明書が有効期限内でないと判断した場合（ステップＳ３０１１でＮＯ）、ＣＰＵ１１はＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンに関する情報、並びに、ソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを決定する（ステップＳ３０２）。例えばＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンが１バージョン前の場合、ソフトウェア評価テーブル１５３によりソフトウェアレベルは２と判断される（図１２参照）。一方、ＣＰＵ１１は機器電子証明書が有効期限内であると判断した場合（ステップＳ３０１１でＹＥＳ）、ＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンに関する情報、機器電子証明書、並びに、ソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを補正する（ステップＳ３０２１）。上述の例の場合、有効な機器電子証明書が存在し、また有効性ある電子署名により改竄がないことが担保されたことからソフトウェアレベルは１向上し、レベル３となる（図１３参照）。【０１４４】
ＣＰＵ１１はユーザ電子証明書及び機器電子証明書が有効範囲内であり、かつ、ステップＳ２６８、Ｓ２７７及びＳ２８３で受信した生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報が一定期間内に受信されたか否かを、記憶部１５に記憶した受信日時を参照して判断する（ステップＳ３０３）。なお、この一定期間は例えば１０秒と記憶部１５に記憶されている。【０１４５】
ＣＰＵ１１は有効期限内であり、かつ、一定期間内に受信したと判断した場合（ステップＳ３０３でＹＥＳ）、補正処理を行うべく、既に決定した生体レベル、機器レベル及びソフトウェアレベルを高くする（ステップＳ３０４）。例えば各レベルを１上昇させればよい。上述の例では、生体レベルは３＋＋、機器レベルは３＋＋、ソフトウェアレベルは図１４に示す３＋へ補正される。一方、ＣＰＵ１１は有効期限内であり、かつ、一定期間内に受信したと判断できない場合（ステップＳ３０３でＮＯ）、ステップＳ３０４における補正処理をスキップする。ＣＰＵ１１は最終的に決定したソフトウェアレベル、生体レベル、及び機器レベルに基づき、ポリシーテーブル１５４から正否の読み出しを行う（ステップＳ３０５）。ＣＰＵ１１はポリシーテーブル１５４に正と記憶されているか否かを判断する（ステップＳ３０６）。ＣＰＵ１１は正と記憶されていないと判断した場合（ステップＳ３０６でＮＯ）、コンピュータ２Ｃが基準レベルに満たないものとして以降の処理を終了する。【０１４６】
一方、ＣＰＵ１１は正と記憶されている場合は（ステップＳ３０６でＹＥＳ）、コンピュータ２Ｃのレベルは基準レベル以上であると判断し、ＨＴＭＬファイル１５１から振り込み処理の画面を読み出す（ステップＳ３０７）。ＣＰＵ１１は振り込み処理の画面をコンピュータ２Ｃへ送信する（ステップＳ３０８）。コンピュータ２ＣのＣＰＵ２１Ｃは、振り込み処理の画面を受信し、ブラウザ２５２Ｃに表示する（ステップＳ３０９）。なお、図２５乃至図３０に示した例においては、ユーザ電子証明書により生体認証に関する情報を送信してＰＫＩ認証を行い、その後機器電子証明書により、識別情報に関する情報を送信してＰＫＩ認証を行い、さらにその後機器電子証明書により、ソフトウェアに関する情報を送信してＰＫＩ認証を行ったが、これに限るものではない。例えば、機器電子証明書により、識別情報に関する情報及びソフトウェアに関する情報を併せて送信しＰＫＩ認証を行っても良い。【０１４７】
最後に、生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報の全てが、機器電子証明書またはユーザ電子証明書とペアになる個人鍵により電子署名されて送信され、かつ各情報が全て暗号化される例を、フローチャートを用いて説明する。なお、以下では機器電子証明書を用いた例を説明する。【０１４８】
図３１乃至図３５は統合ＰＫＩ認証処理の手順を示すフローチャートである。コンピュータ２ＣのＣＰＵ２１Ｃは入力部２３Ｃから入力されたＩＤ及びパスワードを受け付け、Ｗｅｂサーバ１へ送信する（ステップＳ３１１）。Ｗｅｂサーバ１のＣＰＵ１１は通信部１６を介して、ＩＤ及びパスワードを受信する（ステップＳ３１２）。ＣＰＵ１１はユーザＤＢ１５５を参照し、受信したＩＤ及びパスワードが、ユーザＤＢ１５５に記憶したＩＤ及びパスワードに一致するか否かを判断する（ステップＳ３１３）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ３１３でＮＯ）、不正なアクセスであるとして処理を終了する。一方ＣＰＵ１１は、一致すると判断した場合（ステップＳ３１３でＹＥＳ）、ログインを認めるべく、ＨＴＭＬファイル１５１から生体認証の開始画面を送信する（ステップＳ３１４）。【０１４９】
コンピュータ２ＣのＣＰＵ２１Ｃは生体認証の開始画面を受信し、ブラウザ２５２Ｃに生体認証の開始画面を表示する（ステップＳ３１５）。主制御部５１は、生体認証の開始画面の表示コマンドを、ＣＰＵ２１Ｃから受信したことをトリガに、制御プログラム記憶部５１３に記憶された制御プログラムを起動し（ステップＳ３１６）、以下の処理を行う。主制御部５１は時計部２８Ｃの出力を参照し、計時を開始する（ステップＳ３１７）。
主制御部５１は、指紋認証部５３の指紋認識プログラムを起動し（ステップＳ３１８）、指紋入力部５２からユーザの指紋情報を取り込む（ステップＳ３１９）。主制御部５１は指紋情報記憶部５４から予め記憶された指紋情報を読み出す（ステップＳ３２１）。主制御部５１は読み出した指紋情報と取り込んだ指紋情報とが一致するか否かを判断する（ステップＳ３２２）。主制御部５１は一致しないと判断した場合（ステップＳ３２２でＮＯ）、不正なアクセスであるとして処理を終了する。【０１５０】
主制御部５１は一致すると判断した場合（ステップＳ３２２でＹＥＳ）、指紋認識の結果、指紋情報がセキュリティチップ５内に記憶されていることを示す生体認証に関する情報を生成する（ステップＳ３２３）。主制御部５１は機器ＩＤ記憶部５９から機器ＩＤを読み出す（ステップＳ３２４）。主制御部５１は機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報を生成する（ステップＳ３２５）。主制御部５１はソフトウェア情報記憶部５１２からＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンを読み出し、これらの情報を含むソフトウェアに関する情報を生成する（ステップＳ３２６）。【０１５１】
主制御部５１は暗号化処理部５１０に記憶したハッシュ関数に基づき、ステップＳ３２３で生成した生体認証に関する情報、ステップＳ３２５で生成した識別情報に関する情報及びステップＳ３２６で生成したソフトウェアに関する情報についてのメッセージダイジェストを算出する（ステップＳ３２７）。主制御部５１は暗号化鍵記憶部５１８に記憶した暗号化鍵を読み出す。主制御部５１は読み出した暗号化鍵により生体認証に関する情報、識別情報に関する情報、及びソフトウェアに関する情報を暗号化する。主制御部５１は機器個人鍵記憶部５８から機器個人鍵を読み出す（ステップＳ３２８）。主制御部５１はステップＳ３２７で算出したメッセージダイジェストを機器個人鍵で電子署名（暗号化）する（ステップＳ３２９）。主制御部５１はステップＳ３１７で開始した計時を終了する（ステップＳ３３１）。【０１５２】
主制御部５１は計時時間が記憶部１５に予め記憶した一定時間内であるか否かを判断する（ステップＳ３３２）。この一定時間は例えば５秒と記憶しておけばよい。すなわち、生体認証、識別情報及びソフトウェアに関する３つの情報の取得及び暗号化並びにメッセージダイジェストに対する電子署名の時間を一定時間内に制限する。このようにすることで、生体認証、機器ＩＤの取得、環境情報の取得の３つがほぼ同時に行え、かつこれらの紐付けができたことがコンピュータ２側でも保証でき、安易なりすましを防止することが可能となる。【０１５３】
主制御部５１は計時時間が一定時間内でないと判断した場合（ステップＳ３３２でＮＯ）、同時性が確保できないため、処理を終了する。一方主制御部５１は計時時間が一定時間内であると判断した場合（ステップＳ３３２でＹＥＳ）、機器電子証明書記憶部５７から機器電子証明書を読み出す（ステップＳ３３３）。主制御部５１は暗号化された生体認証に関する情報、識別情報に関する情報、ソフトウェアに関する情報、メッセージダイジェストの電子署名、及び、機器電子証明書をＷｅｂサーバ１へ送信する（ステップＳ３３４）。これにより、機器電子証明書とペアである機器個人鍵により電子署名されたメッセージダイジェスト、並びに、暗号化された生体認証に関する情報、識別情報に関する情報、及び、ソフトウェアに関する情報をエンベーロープ化することができる。【０１５４】
Ｗｅｂサーバ１のＣＰＵ１１は暗号化された生体認証に関する情報、識別情報に関する情報、ソフトウェアに関する情報、メッセージダイジェストの電子署名、及び、機器電子証明書を受信する（ステップＳ３３５）。ＣＰＵ１１は機器電子証明書を発行したＣＡサーバ３に対し、当該機器電子証明書に係るＣＡサーバ３の公開鍵の取得要求を行う。ＣＰＵ１１はこの取得要求に対応するＣＡサーバ３の公開鍵を受信する（ステップＳ３３６）。ＣＰＵ１１はＣＡサーバ３の公開鍵により機器電子証明書を検証し、検証結果が正しい場合、機器電子証明書内の機器公開鍵を読み出す（ステップＳ３３７）。【０１５５】
ＣＰＵ１１は暗号化鍵記憶部１５８に記憶した暗号化鍵を読み出す。ＣＰＵ１１は読み出した暗号化鍵により、生体認証に関する情報、識別情報に関する情報、ソフトウェアに関する情報を復号し、メッセージダイジェストの電子署名を受信した機器電子証明書内に含まれる機器公開鍵により検証（復号）する（ステップＳ３３８）。ＣＰＵ１１は、復号プログラム１５２を起動する。ＣＰＵ１１は記憶部１５に予め記憶したハッシュ関数を読み出し、復号した生体認証に関する情報、識別情報に関する情報、及び、ソフトウェアに関する情報についてのメッセージダイジェストを算出する（ステップＳ３３９）。ＣＰＵ１１は算出したメッセージダイジェストと、ステップＳ３３８で復号したメッセージダイジェストとが一致するか否かを判断する（ステップＳ３４１）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ３４１でＮＯ）、改竄があり電子署名は有効でないと判断し処理を終了する。【０１５６】
ＣＰＵ１１はメッセージダイジェストが一致すると判断した場合（ステップＳ３４１でＹＥＳ）、改竄がなく電子署名は有効であるとして、生体認証に関する情報の内、指紋認証の結果を参照して、指紋認証の結果が正であるか否かを判断する（ステップＳ３４２）。ＣＰＵ１１は指紋認証の結果が正でないと判断した場合（ステップＳ３４２でＮＯ）、処理を終了する。一方、ＣＰＵ１１は指紋認証の結果が正であると判断した場合（ステップＳ３４２でＹＥＳ）、受信した識別情報に関する情報の内、機器ＩＤを参照し、ステップＳ３１２で受信したＩＤに対応する機器ＩＤをユーザＤＢ１５５から読み出し、これらを比較することで、一致するか否かを判断する（ステップＳ３４３）。【０１５７】
ＣＰＵ１１は受信した機器ＩＤがユーザＤＢ１５５に記憶した機器ＩＤに一致しないと判断した場合（ステップＳ３４３でＮＯ）、処理を終了する。一方ＣＰＵ１１は受信した機器ＩＤがユーザＤＢ１５５に記憶した機器ＩＤに一致すると判断した場合（ステップＳ３４３でＹＥＳ）、ソフトウェアに関する情報の内、ＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンを抽出し、抽出した当該情報をＤＢサーバ４へ送信する（ステップＳ３４４）。ＣＰＵ１１はＤＢサーバ４からＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンに関する情報を受信する（ステップＳ３４５）。【０１５８】
ＣＰＵ１１は受信したＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンに関する情報及びソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを決定する（ステップＳ３４６）。続いてＣＰＵ１１は生体認証に関する情報の内、指紋情報がセキュリティチップ５内に記憶されていることを示す情報及びポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ３４７）。本例では生体レベルは３となる。ＣＰＵ１１は識別情報に関する情報の内、機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報、及びポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ３４８）。本例では機器レベルは３となる。これにより生体、機器及びソフトウェアレベルの全てが決定するが、下記条件を満たす場合補正処理を行う。【０１５９】
ＣＰＵ１１は復号した機器電子証明書が有効期限内であり、かつ、生体認証に関する情報、識別情報に関する情報及びソフトウェアに関する情報を、ステップＳ３３５の如く、機器電子証明書とペアである機器個人鍵によってなされた電子署名と同時に受信したか否かを判断する（ステップＳ３４９）。ＣＰＵ１１は有効期限内であり、かつ、同時に受信したと判断した場合（ステップＳ３４９でＹＥＳ）、ポリシーテーブル１５４を参照し、生体レベル、機器レベル及びソフトウェアレベルの補正を行う。具体的には、既に決定したレベルよりも高いレベルに補正する（ステップＳ３５１）。例えば、生体レベルは、機器電子証明書とペアである機器個人鍵によってなされた電子署名及び暗号化共に条件を満たしていることから、２段階レベルが上がって３＋＋となる。また機器レベルも機器電子証明書とペアである機器個人鍵によってなされた電子署名及び暗号化共に条件を満たしていることから、２段階レベルが上がって３＋＋となる。またソフトウェアレベルに関してはステップＳ３４６においてレベル３（図１３参照）の場合は、１段階あがってレベル３＋（図１４参照）となる。なお、ステップＳ３４６において、ＯＳ２５１Ｃ及びブラウザ２５２Ｃのバージョンが共に最新でありレベルが３＋（図１４）の場合は、１段階あがって、図示しないレベル３＋＋とすればよい。【０１６０】
ＣＰＵ１１はステップＳ３４９において有効期限が有効であり、かつ、同時に受信したと判断できない場合（ステップＳ３４９でＮＯ）、ステップＳ３５１の処理をスキップする。ＣＰＵ１１は最終的に決定した生体レベル、機器レベル及びソフトウェアレベルに基づき、ポリシーテーブル１５４から正否の読み出しを行う（ステップＳ３５２）。ＣＰＵ１１はポリシーテーブル１５４に正と記憶されているか否かを判断する（ステップＳ３５３）。ＣＰＵ１１は正と記憶されていないと判断した場合（ステップＳ３５３でＮＯ）、コンピュータ２Ｃが基準レベルに満たないものとして以降の処理を終了する。【０１６１】
一方、ＣＰＵ１１は正と記憶されている場合は（ステップＳ３５３でＹＥＳ）、コンピュータ２Ｃのレベルは基準レベル以上であると判断し、ＨＴＭＬファイル１５１から振り込み処理の画面を読み出す（ステップＳ３５４）。ＣＰＵ１１は振り込み処理の画面をコンピュータ２Ｃへ送信する（ステップＳ３５５）。コンピュータ２ＣのＣＰＵ２１Ｃは、振り込み処理の画面を受信し、ブラウザ２５２Ｃに表示する（ステップＳ３５６）。【０１６２】
実施の形態２
実施の形態２はオンラインバンキングにおける取引処理の重要度に応じてポリシーレベルを変更する形態に関する。残高確認、振り込み、または海外送金等、取引内容により要求されるセキュリティレベルは変化する。本実施の形態においては処理を進めるかの正否を判断する際の基準レベルを変化させる。例えば、要求されるセキュリティレベルは残高照会、振り込み、海外送金の順に高くなる。そのため基準レベルも順に高くなるよう設定する。図１０の３次元座標では斜線で示す基準レベル体積が、処理の重要度（要求されるセキュリティレベル）が高まれば高まるほど大きくなる。以下では、実施の形態１で述べたセキュリティポリシーテーブル１５４を重要度に応じて複数設けた形態を例に挙げて説明する。【０１６３】
図３６は実施の形態２に係るＷｅｂサーバ１のハードウェア構成を示すブロック図である。実施の形態１の構成に加え、重要度ファイル１５７、高レベルポリシーテーブル１５４１、中レベルポリシーテーブル１５４２、低レベルポリシーテーブル１５４３（場合によりポリシーテーブル１５４で代表する）、及び、ＣＧＩ（Common Gateway Interface）プログラム１５６が新たに記憶部１５に記憶されている。図３７は重要度ファイル１５７のレコードレイアウトを示す説明図である。重要度ファイル１５７はオンラインバンキングにおける処理内容に応じた重要度を記憶しており、処理内容フィールド、重要度フィールド及び対応ポリシーテーブルフィールド等を含んで構成される。【０１６４】
処理内容フィールドにはオンラインバンキングにおいて実行される各種処理が記憶されている。本実施の形態においては例として、残高確認、振り込み及び海外送金の各処理が記憶されている。重要度フィールドには各処理に対応づけて、各処理の重要度を記憶している。例えば、残高確認はそれほど高いセキュリティが必要とされないため、重要度は低と記憶されている。また振り込みに関してはある程度のセキュリティが必要とされるため、重要度は中と記憶されている。さらに、海外送金に関しては最も高いセキュリティが要求されることから、重要度は高と記憶されている。対応ポリシーテーブルフィールドには、処理内容及び重要度に応じて使用するポリシーテーブル１５４の種類が記憶されている。ＣＰＵ１１は処理内容が残高照会の場合は、重要度ファイル１５７を参照し、重要度「低」に対応する低レベルポリシーテーブル１５４３へアクセスする。一方、処理内容が海外送金の場合は、重要度ファイル１５７を参照し、重要度「高」に対応する高レベルポリシーテーブル１５４１へアクセスする。【０１６５】
高レベルポリシーテーブル１５４１、中レベルポリシーテーブル１５４２、及び、低レベルポリシーテーブル１５４３は、生体レベル、機器レベル及びソフトウェアレベルの全ての組み合わせに対し、処理を進めるか否かの正否の情報を異ならせて記憶している。重要度、すなわち要求されるセキュリティレベルが上昇するに従い、生体レベル、機器レベル及びソフトウェアレベルの各レベルに対応して記憶される正の情報が少なくなる。本実施の形態においては高レベルポリシーテーブル１５４１には、実施の形態１で用いたポリシーテーブル１５４と同一のものを用いる。【０１６６】
図３８乃至図４１は中レベルポリシーテーブル１５４２の記憶内容を示す説明図である。中レベルポリシーテーブル１５４２も同様に生体レベル、機器レベル及びソフトウェアレベルの全ての組み合わせについて正否の情報が記憶されている。高レベルポリシーテーブル１５４１と比較した場合、中レベルポリシーテーブル１５４２は、各レベルが低い場合でも否の情報に代えて正の情報が多く記憶されている。例えばソフトウェアレベル３の図４０と図１３とを比較した場合、機器レベルが３、生体レベルが３＋＋の場合、機器レベルが３＋、生体レベルが３＋の場合、及び、機器レベルが３＋＋、生体レベルが３＋の場合も否の情報に代えて正の情報が多く記憶されている。【０１６７】
低レベルポリシーテーブル１５４３の詳細は図示しないが、低レベルポリシーテーブル１５４３は、中レベルポリシーテーブル１５４２と比較した場合、各レベルが低い場合においても、否の情報に代えてより多く正の情報が記憶されている。このようにＣＰＵ１１は重要度に応じて予め用意されたポリシーテーブル１５４を柔軟に使い分け、円滑な処理を遂行する。ＣＧＩプログラム１５６としては、残高確認プログラム１５６１、振り込みプログラム１５６２及び海外送金プログラム１５６３の３つが用意されている。ＣＰＵ１１はコンピュータ２のリクエストにより、残高確認を行う場合、低レベルポリシーテーブル１５４３による正の判断を得た後、残高確認プログラム１５６１を実行する。【０１６８】
そしてＣＰＵ１１は対応するＨＴＭＬファイル１５１を読み出し、処理結果を記述した上で、ユーザに処理結果に係るＨＴＭＬファイル１５１を送信する。ＣＰＵ１１はコンピュータ２のリクエストにより振り込みを行う場合、中レベルポリシーテーブル１５４２による正の判断を得た後、振り込みプログラム１５６２を実行する。そしてＣＰＵ１１は対応するＨＴＭＬファイル１５１を読み出し、処理結果を記述した上で、ユーザに処理結果に係るＨＴＭＬファイル１５１を送信する。同様に、ＣＰＵ１１はコンピュータ２のリクエストにより海外送金を行う場合、高レベルポリシーテーブル１５４１による正の判断を得た後、海外送金プログラム１５６３を実行する。そしてＣＰＵ１１は対応するＨＴＭＬファイル１５１を読み出し、処理結果を記述した上で、ユーザに処理結果に係るＨＴＭＬファイル１５１を送信する。【０１６９】
以上のハードウェア構成において、各種処理の実行手順を、フローチャートを用いて説明する。図４２は実施の形態２に係る重要度決定処理の手順を示すフローチャートである。Ｗｅｂサーバ１のＣＰＵ１１はコンピュータ２のユーザによるログイン後、コンピュータ２から送信される処理内容を受信する（ステップＳ４２１）。これは上述の例では、残高照会、振り込み、または海外送金のいずれかである。ＣＰＵ１１は重要度ファイル１５７を参照し、処理内容に対応する重要度を決定する（ステップＳ４２２）。ＣＰＵ１１は処理内容及び重要度に対応する高レベルポリシーテーブル１５４１、中レベルポリシーテーブル１５４２、または低レベルポリシーテーブル１５４３のいずれかのポリシーテーブル１５４を選択する（ステップＳ４２３）。ＣＰＵ１１は実施の形態１で述べた処理を実行し、生体レベル、機器レベル及びソフトウェアレベルに基づきポリシーテーブル１５４から正否の情報を読み出す（ステップＳ４２４）。【０１７０】
ＣＰＵ１１はステップＳ４２３で選択したポリシーテーブル１５４に正と記憶されているか否かを判断する（ステップＳ４２５）。ＣＰＵ１１は記憶されていないと判断された場合は（ステップＳ４２５でＮＯ）、当該コンピュータ２は基準レベルに満たないものとして、一連の処理を終了する。一方ＣＰＵ１１は正と記憶されていると判断した場合（ステップＳ４２５でＹＥＳ）、当該コンピュータ２は基準レベルを満たすと判断し、重要度に対応する残高確認プログラム１５６１、振り込みプログラム１５６２、または海外送金プログラム１５６３のいずれかのＣＧＩプログラム１５６を起動する（ステップＳ４２６）。【０１７１】
ＣＰＵ１１はその後コンピュータ２から送信される各種要求、金額、または振込先等の情報に基づき、処理を実行する（ステップＳ４２７）。ＣＰＵ１１は処理結果をＨＴＭＬファイル１５１に記述し（ステップＳ４２８）、記述後のＨＴＭＬファイル１５１をコンピュータ２へ送信する（ステップＳ４２９）。これにより、取引に必要とされるセキュリティレベルに応じて最適なセキュリティポリシーに基づくコンピュータ２の検証が行え、処理の安全性及び円滑性を共に高めることが可能となる。【０１７２】
本実施の形態２は以上の如き構成としてあり、その他の構成及び作用は実施の形態１と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。【０１７３】
実施の形態３
図４３は実施の形態３に係るＷｅｂサーバ１の構成を示すブロック図である。実施の形態３に係るＷｅｂサーバ１を動作させるためのプログラムは、本実施の形態３のように、ＣＤ−ＲＯＭ等の可搬型記録媒体１Ａで提供することも可能である。さらに、プログラムを、通信網Ｎを介して図示しない他のサーバコンピュータからダウンロードすることも可能である。以下に、その内容を説明する。【０１７４】
図４３に示すＷｅｂサーバ１の図示しない記録媒体読み取り装置に、生体認証に関する情報を受信させ、識別情報に関する情報を受信させ、環境に関する情報を受信させ、電子署名を受信させ、レベルを決定させ、レベルを補正させ、正と判断させるプログラムが記録された可搬型記録媒体１Ａを、挿入して記憶部１５の制御プログラム１５Ｐ内にこのプログラムをインストールする。または、かかるプログラムを、通信部１６を介して外部の図示しない他のサーバコンピュータからダウンロードし、記憶部１５にインストールするようにしても良い。かかるプログラムはＲＡＭ１２にロードして実行される。これにより、上述のようなＷｅｂサーバ１として機能する。【０１７５】
本実施の形態３は以上の如き構成としてあり、その他の構成及び作用は実施の形態１及び２と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。【０１７６】
実施の形態４
図４４はコンピュータ２Ｄのハードウェア構成を示すブロック図である。Ｗｅｂサーバ１に接続されるコンピュータ２は本実施の形態で述べる構成であっても良い。コンピュータ２Ｄは、制御部としてのＣＰＵ２１Ｄ、ＲＡＭ２２Ｄ、入力部２３Ｄ、表示部２４Ｄ、記憶部２５Ｄ、通信部２６Ｄ、時計部２８Ｄ、及び、指紋入力部２９Ｄ、並びにセキュリティチップ５等を含んで構成される。ＣＰＵ２１Ｄは、バス２７Ｄを介してコンピュータ２Ｄのハードウェア各部と接続されていて、それらを制御すると共に、記憶部２５Ｄに格納された制御プログラム２５ＰＤに従って、種々のソフトウェア的機能を実行する。【０１７７】
セキュリティチップ５は主制御部５１、機器ＩＤ記憶部５９、鍵記憶部５１７、暗号化処理部５１０、復号処理部５１６、ＩＤ記憶部５１５、暗号化鍵記憶部５１８及び、入出力部５１４等を含んで構成される。セキュリティチップ５はＩ／Ｆである入出力部５１４及びバス２７Ｄを介してコンピュータ２ＤのメインのＣＰＵ２１Ｄに接続されている。主制御部５１は入出力部５１４を介してＣＰＵ２１Ｄと情報の送受信を行う。主制御部５１は各部と接続されており、制御プログラム２５ＰＤに記憶された制御プログラム及びセキュリティチップ５内に設けられる図示しない制御プログラムに従い、各種処理を実行する。記憶部２５Ｄには、ＯＳ２５１Ｄ、ブラウザ２５２Ｄ、制御プログラム２５ＰＤ、指紋情報ファイル２５３Ｄ、指紋認識プログラム２５５Ｄ、ソフトウェア情報取得プログラム２５６Ｄ、及びソフトウェア情報ファイル２５７Ｄ等が記憶されている。なお、指紋入力部２９Ｄ及び入力部２３Ｄ等、並びに、記憶部２５Ｄに記憶された各種プログラム等は実施の形態１等で上述したとおりであるので、詳細な説明は省略する。【０１７８】
セキュリティチップ５内の機器ＩＤ記憶部５９は実施の形態１と同じく機器ＩＤを記憶しており、主制御部５１の指示に従って記憶した機器ＩＤを出力する。なお、機器ＩＤは工場出荷時等に予め記憶させるようにすればよい。鍵記憶部５１７は、記憶部２５Ｄに記憶した各種情報を暗号化及び復号するための暗号鍵及び復号鍵を記憶している。暗号鍵及び復号鍵は工場出荷時等に鍵記憶部５１７にそれぞれ記憶される。暗号化処理部５１０は鍵記憶部５１７に記憶した暗号鍵を用いて各種情報を暗号化するための暗号化プログラムを記憶している。復号処理部５１６は暗号化処理部５１０により暗号化された情報を鍵記憶部５１７に記憶された復号鍵を用いて復号するための復号プログラムが記憶されている。ＩＤ記憶部５１５は復号処理部５１６による情報の復号のために必要とされるＩＤ及びパスワードを記憶している。【０１７９】
暗号化処理について以下に説明する。主制御部５１は、記憶部２５Ｄに記憶した制御プログラム２５ＰＤ、指紋情報ファイル２５３Ｄ、指紋認識プログラム２５５Ｄ、ソフトウェア情報取得プログラム２５６Ｄ、及び、ソフトウェア情報ファイル２５７Ｄを、暗号化処理部５１０に記憶した暗号化プログラムより暗号化する。例えば、工場出荷時において、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄをインストールする場合、主制御部５１は、鍵記憶部５１７に記憶した暗号鍵を読み出し、暗号化処理部５１０に記憶した暗号化プログラム及び暗号鍵に基づき、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄの暗号化処理を実行する。主制御部５１は暗号化された制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄを、入出力部５１４を介してＣＰＵ２１Ｄへ出力する。【０１８０】
ＣＰＵ１１は暗号化された制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄを記憶部２５Ｄに記憶する。なお、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄの暗号化処理はこれらのプログラムがアップデートされた際にも実行するようにしても良い。また主制御部５１は指紋情報ファイル２５３Ｄに記憶された指紋情報及びソフトウェア情報ファイル２５７Ｄに記憶されたソフトウェア情報ファイルも、暗号化処理部５１０に記憶した暗号化プログラムを実行することにより暗号化する。主制御部５１は指紋入力部２９Ｄから登録対象の指紋情報を受け付け、当該受け付けた指紋情報を指紋情報ファイル２５３Ｄに記憶する場合、暗号化処理部５１０に記憶した暗号化プログラム及び暗号鍵に基づき、暗号化した上で記憶する。【０１８１】
また主制御部５１は、ソフトウェア情報取得プログラム２５６Ｄが実行され、ソフトウェア情報が取得される度に、この取得したソフトウェア情報ファイルを暗号化処理部５１０に記憶した暗号化プログラムより暗号化した上で、ソフトウェア情報ファイル２５７Ｄに記憶する。ＩＤ記憶部５１５には工場出荷時等に復号の際に必要とされるＩＤ及びパスワードが記憶されている。このＩＤ及びパスワードは、入力部２３Ｄから入力されたＩＤ及びパスワードが一致することを条件に、新たなＩＤ及びパスワードへ変更することが可能である。主制御部５１は入力部２３Ｄから入力されたＩＤ及びパスワードを受け付け、受け付けたＩＤ及びパスワードをＩＤ記憶部５１５に記憶する。【０１８２】
続いて復号処理について説明する。主制御部５１は、入力部２３ＤからＩＤ及びパスワードを受け付け、ＩＤ記憶部５１５に記憶したＩＤ及びパスワードに一致するか否かを判断する。そして、主制御部５１は一致すると判断した場合、鍵記憶部５１７に記憶した復号鍵を読み出し、復号処理部５１６に記憶した復号プログラムを実行することにより、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ、ソフトウェア情報取得プログラム２５６Ｄ、指紋情報ファイル２５３Ｄ及びソフトウェア情報ファイル２５７Ｄを復号する。なお、ＩＤ記憶部５１５に記憶したＩＤ及びパスワードはＯＳ２５１Ｄの起動の際に要求されるＩＤ及びパスワードと共通させても良い。【０１８３】
主制御部５１は、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄの起動時またはコンピュータ２Ｄの起動時に、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ、ソフトウェア情報取得プログラム２５６Ｄ、指紋情報ファイル２５３Ｄ及びソフトウェア情報ファイル２５７Ｄの復号処理を行う。なお、後述するように指紋情報ファイル２５３Ｄに関しては、指紋認識プログラム２５５Ｄが実行された際に復号処理を行っても良い。同様に、ソフトウェア情報ファイル２５７Ｄに関しては、ソフトウェア情報取得プログラム２５６Ｄが実行された際に復号処理を行っても良い。そして、主制御部５１は入力部２３Ｄからコンピュータ２Ｄの終了命令を受け付けた場合、再び暗号化処理部５１０に記憶された暗号化プログラムを実行し、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ、ソフトウェア情報取得プログラム２５６Ｄ、指紋情報ファイル２５３Ｄ及びソフトウェア情報ファイル２５７Ｄを暗号化した上で、コンピュータ２Ｄを終了する。【０１８４】
図４５はポリシーテーブル１５４の記憶内容を示す説明図である。実施の形態４に係るポリシーテーブル１５４は生体レベル２．５のものが新たに設けられている。コンピュータ２Ｄは指紋情報がハードディスクに記憶されているが、暗号化されているため、ハードディスクに指紋情報が記憶されている際に決定されるレベル２よりも高く、セキュリティチップ５内に指紋情報が記憶されている際に決定されるレベル３よりも低いレベルが付与されている。なお、機器レベル及びソフトウェアレベルについては同様であるため詳細な説明は省略する。【０１８５】
以上のハードウェア構成において実施の形態４に係る処理手順を、フローチャートを用いて説明する。図４６乃至図５１はレベル決定処理の手順を示すフローチャートである。工場出荷時等においてはセキュリティチップ５内にＩＤ及びパスワード、暗号鍵及び復号鍵、並びに、機器ＩＤが記憶される。主制御部５１は入力部２３Ｄから入力されたＩＤ及びパスワードをＩＤ記憶部５１５に記憶する（ステップＳ４６１）。また主制御部５１は通信部２６Ｄを介して、図示しない認証機関のサーバコンピュータ等からダウンロードした暗号鍵及び復号鍵を鍵記憶部５１７に記憶する（ステップＳ４６２）。さらに、主制御部５１は入力部２３Ｄから入力されたセキュリティチップ５自身またはコンピュータ２自身を特定するための固有の機器ＩＤを機器ＩＤ記憶部５９に記憶する（ステップＳ４６３）。これら記憶された情報はＩＤ記憶部５１５に記憶されたＩＤ及びパスワードと、入力部２３Ｄから入力されたＩＤ及びパスワードと一致しない限り容易に変更できないよう構成されている。【０１８６】
ＣＰＵ２１Ｄは初期登録の際に指紋入力部２９Ｄからユーザの指紋情報を受け付ける。ＣＰＵ２１Ｄは指紋情報ファイル２５３Ｄに指紋情報を記憶する。さらにＣＰＵ２１Ｄは入力部２３Ｄからの指示に従い、ソフトウェア情報取得プログラム２５６Ｄを実行し、ＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンを取得する。ＣＰＵ２１Ｄは取得したＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンをソフトウェア情報ファイル２５７Ｄに記憶する。主制御部５１は記憶部２５Ｄにインストールされた制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ、及び、ソフトウェア情報取得プログラム２５６Ｄ、並びに、指紋情報ファイル２５３Ｄ及びソフトウェア情報ファイル２５７Ｄを、暗号化処理部５１０に記憶した暗号化プログラム及び暗号鍵により暗号化する。以上により初期登録処理が終了する。【０１８７】
ユーザはコンピュータ２Ｄを起動する（ステップＳ４６４）。主制御部５１は内部の図示しないメモリに記憶したプログラムを実行し、ＩＤ及びパスワードの入力画面を表示部２４Ｄに表示する。ユーザは入力部２３ＤからＩＤ及びパスワードを入力する。主制御部５１は入力部２３Ｄから入力されたＩＤ及びパスワードを受け付ける（ステップＳ４６５）。主制御部５１はＩＤ記憶部５１５に記憶したＩＤ及びパスワードを読み出し、受け付けたＩＤ及びパスワードに一致するか否かを判断する（ステップＳ４６６）。【０１８８】
主制御部５１は一致しないと判断した場合（ステップＳ４６６でＮＯ）、不正なアクセスであるとして処理を終了する。一方、主制御部５１は一致すると判断した場合（ステップＳ４６６でＹＥＳ）、鍵記憶部５１７に記憶した復号鍵を読み出す（ステップＳ４６７）。主制御部５１は、復号処理部５１６に記憶した復号プログラムを実行し、記憶部２５Ｄに記憶した暗号化された制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄを復号する（ステップＳ４６８）。【０１８９】
主制御部５１は復号された制御プログラム２５ＰＤを実行する（ステップＳ４６９）。ＣＰＵ２１Ｄはブラウザ２５２Ｄを起動し（ステップＳ４７１）、Ｗｅｂサーバ１へアクセスする。ＣＰＵ２１Ｄは入力部２３Ｄから入力されたオンラインバンキング用のＩＤ及びパスワードを受け付け、Ｗｅｂサーバ１へ送信する（ステップＳ４７２）。Ｗｅｂサーバ１のＣＰＵ１１は通信部１６を介して、ＩＤ及びパスワードを受信する（ステップＳ４７３）。ＣＰＵ１１はユーザＤＢ１５５を参照し、受信したＩＤ及びパスワードが、ユーザＤＢ１５５に記憶したＩＤ及びパスワードに一致するか否かを判断する（ステップＳ４７４）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ４７４でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は、一致すると判断した場合（ステップＳ４７４でＹＥＳ）、ログインを認めるべく、ＨＴＭＬファイル１５１から生体認証の開始画面を送信する（ステップＳ４７５）。【０１９０】
コンピュータ２ＤのＣＰＵ２１Ｄは生体認証の開始画面を受信し、ブラウザ２５２Ｄに生体認証の開始画面を表示する（ステップＳ４７６）。ＣＰＵ２１Ｄは、この画面の受信をトリガに復号された指紋認識プログラム２５５Ｄを起動し（ステップＳ４７７）、指紋入力部２９Ｄからユーザの指紋情報を取り込む（ステップＳ４７８）。主制御部５１は復号処理部５１６に記憶した復号プログラムを実行し、指紋情報ファイル２５３Ｄを復号する（ステップＳ４７９）。ＣＰＵ２１Ｄは復号された指紋情報ファイル２５３Ｄから、予め記憶された指紋情報を読み出す（ステップＳ４８１）。ＣＰＵ２１Ｄは読み出した指紋情報と取り込んだ指紋情報とが一致するか否かを判断する（ステップＳ４８２）。ＣＰＵ２１Ｄは一致しないと判断した場合（ステップＳ４８２でＮＯ）、不正なアクセスであるとして処理を終了する。【０１９１】
一方ＣＰＵ２１Ｄは指紋情報が一致すると判断した場合（ステップＳ４８２でＹＥＳ）、暗号鍵を鍵記憶部５１７から読み出す（ステップＳ４８３）。主制御部５１は、暗号化処理部５１０に記憶した暗号化プログラムを読み出し、暗号鍵を用いて指紋情報ファイル２５３Ｄを暗号化する（ステップＳ４８４）。ＣＰＵ２１Ｄは指紋認証の結果、指紋情報がハードディスクに暗号化されて記憶されていることを示す情報を含む生体認証に関する情報を生成し、Ｗｅｂサーバ１へ送信する（ステップＳ４８５）。なお、送信される指紋認証の結果には、コンピュータ２Ｄで実行された生体認証の種類が指紋認証であること及び指紋認証の結果正であると判断されたことを示す情報が含まれる。【０１９２】
次に、主制御部５１は機器ＩＤ記憶部５９から機器ＩＤを読み出す（ステップＳ４８６）。読み出した機器ＩＤは入出力部５１４を介してＣＰＵ２１Ｄへ出力される。ＣＰＵ２１Ｄは機器ＩＤ及び機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報を含む識別情報に関する情報をＷｅｂサーバ１へ送信する（ステップＳ４８７）。ＣＰＵ２１Ｄは復号されたソフトウェア情報取得プログラム２５６Ｄを実行し（ステップＳ４８８）、ＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンを取得する。主制御部５１は復号処理部５１６に記憶した復号プログラムを実行し、復号鍵を用いてソフトウェア情報ファイル２５７Ｄを復号する（ステップＳ４８９）。【０１９３】
ＣＰＵ２１Ｄは復号したソフトウェア情報ファイル２５７Ｄ内のＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンと、ステップＳ４８８によるソフトウェア情報取得プログラム２５６Ｄの実行に伴い取得した最新のＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンとが一致するか否かを判断する（ステップＳ４９１）。ＣＰＵ２１Ｄは一致しないと判断した場合（ステップＳ４９１でＮＯ）、最新の情報にアップデートすべく、取得したＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンをソフトウェア情報ファイル２５７Ｄに記憶する（ステップＳ４９２）。一方、ＣＰＵ２１Ｄは一致すると判断した場合（ステップＳ４９１でＹＥＳ）、アップデートの必要はないので、ステップ４９２の処理をスキップする。【０１９４】
ＣＰＵ２１Ｄはソフトウェア情報ファイル２５７ＤからＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンを読み出し（ステップＳ４９３）、ソフトウェアに関する情報としてＷｅｂサーバ１へ送信する（ステップＳ４９４）。次いで、主制御部５１は、暗号化処理部５１０に記憶した暗号化プログラムを読み出し、暗号鍵を用いて、ソフトウェア情報ファイル２５７Ｄを暗号化する（ステップＳ４９５）。【０１９５】
Ｗｅｂサーバ１のＣＰＵ１１は、ステップＳ４８５で送信された生体認証に関する情報、ステップＳ４８７で送信された識別情報に関する情報、及び、ステップＳ４９４で送信されたソフトウェアに関する情報を受信する（ステップＳ５０１）。ＣＰＵ１１は受信した生体認証に関する情報の指紋認証の結果を参照し、指紋認証の結果が正であるか否かを判断する（ステップＳ５０２）。ＣＰＵ１１は指紋認証の結果が正でないと判断した場合（ステップＳ５０２でＮＯ）、不正な処理であるとして処理を終了する。一方、ＣＰＵ１１は指紋認証の結果が正であると判断した場合（ステップＳ５０２でＹＥＳ）、生体認証に関する情報の内、指紋情報が暗号化されてハードディスクに記憶されていることを示す情報、及び、図４５に示すポリシーテーブル１５４を参照し、生体レベルを決定する（ステップＳ５０３）。本例の場合、生体レベルは２．５と決定される。【０１９６】
ＣＰＵ１１は、ステップＳ４７３で受信したＩＤに対応する機器ＩＤをユーザＤＢ１５５から読み出す。ＣＰＵ１１はステップＳ４８７で受信した機器ＩＤが、ユーザＤＢ１５５から読み出した機器ＩＤに一致するか否かを判断する（ステップＳ５０４）。ＣＰＵ１１は一致しないと判断した場合（ステップＳ５０４でＮＯ）、機器ＩＤが一致しない場合においても、処理を継続する旨の情報が記憶部１５に記憶されているか否かを判断する（ステップＳ５０５）。これは大企業等において複数のユーザが機器ＩＤの異なる別々のコンピュータ２を用いてアクセスする場合もあり、機器ＩＤが一致しない場合においても、取引を可能とするためである。この場合、オペレータが入力部１３を通じて、記憶部１５に機器ＩＤが一致しない場合にも処理を継続する旨の情報を予め記憶しておく。一方、機器ＩＤの一致を要件とする場合は、機器ＩＤが一致しない場合にも処理を継続する旨の情報を記憶部１５から消去しておく。【０１９７】
ＣＰＵ１１は機器ＩＤが一致しない場合にも処理を継続する旨の情報が記憶部１５に記憶されていないと判断した場合（ステップＳ５０５でＮＯ）、不正なアクセスであるとして処理を終了する。一方、ＣＰＵ１１は機器ＩＤが一致しない場合にも処理を継続する旨の情報が記憶部１５に記憶されていると判断した場合（ステップＳ５０５でＹＥＳ）、当該コンピュータ２による処理をも許容すべく、ステップＳ５０６へ処理を移行させる。ステップＳ５０４においてＣＰＵ１１は受信した機器ＩＤが一致すると判断した場合（ステップＳ５０４でＹＥＳ）、同様に処理をステップＳ５０６へ移行させる。なお、ステップＳ５０４、Ｓ５０５及びＳ５０６で述べた処理は実施の形態１乃至３においても同様に適用しても良いことはもちろんである。【０１９８】
ＣＰＵ１１は、識別情報に関する情報の内、機器ＩＤがセキュリティチップ５内に記憶されていることを示す情報及びポリシーテーブル１５４を参照し、機器レベルを決定する（ステップＳ５０６）。本例の場合機器レベルは３と決定される。なお、ＣＰＵ１１はステップＳ５０５でＹＥＳの処理を経た場合は、機器レベルを低下させる補正処理を実行するようにしても良い。本例では機器レベル３に記憶部１５に予め記憶した係数０．９が乗じられ、補正後の機器レベル２．７が決定される。ＣＰＵ１１はソフトウェアに関する情報の内、ＯＳ２５１Ｄ及びブラウザ２５２ＤのバージョンをＤＢサーバ４へ、通信部１６を介して送信する（ステップＳ５０７）。ＤＢサーバ４のＣＰＵ４１は、ソフトウェアＤＢ４５１を参照し、送信されたＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンが最新か、１つ前のものか、２つ前のものか等のバージョンに関する情報をＷｅｂサーバ１へ送信する。ＣＰＵ１１は、ＤＢサーバ４から送信されたＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンに関する情報を受信する（ステップＳ５０８）。【０１９９】
ＣＰＵ１１はＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンに関する情報及びソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを決定する（ステップＳ５０９）。ＣＰＵ１１はステップＳ５０９で決定したソフトウェアレベル、ステップＳ５０３で決定した生体レベル、及びステップＳ５０６で決定した機器レベルに基づき、ポリシーテーブル１５４から正否の読み出しを行う（ステップＳ５１１）。ＣＰＵ１１はポリシーテーブル１５４に正と記憶されているか否かを判断する（ステップＳ５１２）。ＣＰＵ１１は正と記憶されていないと判断した場合（ステップＳ５１２でＮＯ）、コンピュータ２Ｄが基準レベルに満たないものとして以降の処理を終了する。【０２００】
一方、ＣＰＵ１１は正と記憶されている場合は（ステップＳ５１２でＹＥＳ）、コンピュータ２Ｄのレベルは基準レベル以上であると判断し、ＨＴＭＬファイル１５１から振り込み処理の画面を読み出す（ステップＳ５１３）。ＣＰＵ１１は振り込み処理の画面をコンピュータ２Ｄへ送信する（ステップＳ５１４）。コンピュータ２ＤのＣＰＵ２１Ｄは、振り込み処理の画面を受信し、ブラウザ２５２Ｄに表示する（ステップＳ５１５）。その後ＣＰＵ２１ＤはＯＳ２５１Ｄのログアウトまたはコンピュータ２Ｄの終了等の終了命令を入力部２３Ｄから受け付けたか否かを判断する（ステップＳ５１６）。ＣＰＵ２１Ｄは終了命令を受け付けていないと判断した場合（ステップＳ５１６でＮＯ）、当該処理を受け付けるまで処理を繰り返す。一方、ＣＰＵ２１Ｄは終了命令を受け付けたと判断した場合（ステップＳ５１６でＹＥＳ）、暗号化処理部５１０に記憶した暗号化プログラムを読み出し、暗号鍵を用いて、制御プログラム２５ＰＤ、指紋認識プログラム２５５Ｄ及びソフトウェア情報取得プログラム２５６Ｄを暗号化する（ステップＳ５１７）。その後ＣＰＵ２１Ｄは終了命令に従い電源をオフするまたはログアウト等の処理を行う。【０２０１】
本実施の形態４は以上の如き構成としてあり、その他の構成及び作用は実施の形態１乃至３と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。【０２０２】
実施の形態５
実施の形態５はソフトウェア会社のＤＢサーバ４がソフトウェアレベルを決定してＷｅｂサーバ１へ送信する形態に関する。図５２は実施の形態５に係るＤＢサーバ４のハードウェア構成を示すブロック図である。記憶部４５には、実施の形態１乃至４において述べたソフトウェア評価テーブル１５３が記憶されている。なお、Ｗｅｂサーバ１にはこのソフトウェア評価テーブル１５３は記憶されていない。ＤＢサーバ４のＣＰＵ４１はＷｅｂサーバ１からＯＳ２５１及びブラウザ２５２のバージョンを受信した場合、ソフトウェアＤＢ４５１及びソフトウェア評価テーブル１５３を参照し、ソフトウェアレベルを決定する。このソフトウェアレベルはソフトウェアが新しいほど高いレベルとなる。そしてＤＢサーバ４のＣＰＵ４１は決定したソフトウェアレベルをＷｅｂサーバ１へ送信する。Ｗｅｂサーバ１のＣＰＵ１１は当該送信されたソフトウェアレベルをポリシーテーブル１５４において判断する際に用いるソフトウェアレベルとして決定する。【０２０３】
図５３はソフトウェアレベル決定処理の手順を示すフローチャートである。Ｗｅｂサーバ１のＣＰＵ１１はコンピュータ２から送信されたＯＳ２５１及びブラウザ２５２のバージョンを、通信部１６を介してＤＢサーバ４へ送信する（ステップＳ５２１）。ＤＢサーバ４のＣＰＵ４１は通信部４６を介して、ＯＳ２５１及びブラウザ２５２のバージョンを受信する（ステップＳ５２２）。ＣＰＵ４１は図６に示すソフトウェアＤＢ４５１を参照し、送信されたＯＳ２５１及びブラウザの２５２のバージョンが最新のバージョンであるか、または何バージョン前のものであるかの情報を抽出する（ステップＳ５２３）。例えばＯＳ２５１のバージョンがＷ０６の場合、ＣＰＵ４１は、更新日時フィールドを参照することにより最新のバージョンを示す情報を抽出し、バージョンがＷ０４の場合、２つ前のバージョンであることを示す情報を抽出する。【０２０４】
ＣＰＵ４１はソフトウェア評価テーブル１５３を参照し、ステップＳ５２３で抽出したＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンが最新のバージョンか、何バージョン前であるかの情報に基づき、ソフトウェアレベルを決定する（ステップＳ５２４）。ＣＰＵ４１は決定したソフトウェアレベルをＷｅｂサーバ１へ送信する（ステップＳ５２５）。Ｗｅｂサーバ１のＣＰＵ１１は送信されたソフトウェアレベルを受信する（ステップＳ５２６）。ＣＰＵ１１は、受信したソフトウェアレベルを、ＯＳ２５１Ｄ及びブラウザ２５２Ｄのバージョンを送信したコンピュータ２のソフトウェアレベルとして決定する（ステップＳ５２７）。最後にＣＰＵ１１は決定したソフトウェアレベルをコンピュータ２に対応づけて記憶部１５に記憶する（ステップＳ５２８）。ＣＰＵ１１はこの記憶したソフトウェアレベル、実施の形態１で述べた生体レベル及び機器レベル、並びに、ポリシーテーブル１５４を参照し、コンピュータ２の正否を判断する。【０２０５】
本実施の形態５は以上の如き構成としてあり、その他の構成及び作用は実施の形態１乃至４と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【図１】
2009122530.tif 000003
【図２】
2009122530.tif 000004
【図３】
2009122530.tif 000005
【図４】
2009122530.tif 000006
【図５】
2009122530.tif 000007
【図６】
2009122530.tif 000008
【図７】
2009122530.tif 000009
【図８】
2009122530.tif 000010
【図９】
2009122530.tif 000011
【図１０】
2009122530.tif 000012
【図１１】
2009122530.tif 000013
【図１２】
2009122530.tif 000014
【図１３】
2009122530.tif 000015
【図１４】
2009122530.tif 000016
【図１５】
2009122530.tif 000017
【図１６】
2009122530.tif 000018
【図１７】
2009122530.tif 000019
【図１８】
2009122530.tif 000020
【図１９】
2009122530.tif 000021
【図２０】
2009122530.tif 000022
【図２１】
2009122530.tif 000023
【図２２】
2009122530.tif 000024
【図２３】
2009122530.tif 000025
【図２４】
2009122530.tif 000026
【図２５】
2009122530.tif 000027
【図２６】
2009122530.tif 000028
【図２７】
2009122530.tif 000029
【図２８】
2009122530.tif 000030
【図２９】
2009122530.tif 000031
【図３０】
2009122530.tif 000032
【図３１】
2009122530.tif 000033
【図３２】
2009122530.tif 000034
【図３３】
2009122530.tif 000035
【図３４】
2009122530.tif 000036
【図３５】
2009122530.tif 000037
【図３６】
2009122530.tif 000038
【図３７】
2009122530.tif 000039
【図３８】
2009122530.tif 000040
【図３９】
2009122530.tif 000041
【図４０】
2009122530.tif 000042
【図４１】
2009122530.tif 000043
【図４２】
2009122530.tif 000044
【図４３】
2009122530.tif 000045
【図４４】
2009122530.tif 000046
【図４５】
2009122530.tif 000047
【図４６】
2009122530.tif 000048
【図４７】
2009122530.tif 000049
【図４８】
2009122530.tif 000050
【図４９】
2009122530.tif 000051
【図５０】
2009122530.tif 000052
【図５１】
2009122530.tif 000053
【図５２】
2009122530.tif 000054
【図５３】
2009122530.tif 000055
【国際調査報告】
2009122530.tif 000056
2009122530.tif 000057