(57)【特許請求の範囲】
【請求項１】
ネットワークを介して、通信相手先装置から送信された前記通信相手先装置を認証するための電子証明書であって有効期間が設定された前記電子証明書を受信する電子証明書受信手段と、
現在時刻を計時する計時手段と、
前記計時手段による現在時刻を調整する調整手段と、
前記調整手段により調整された前記計時手段が計時する現在時刻に係る誤差時間を推定する誤差推定手段と、
前記計時手段による現在時刻と、前記誤差推定手段による誤差時間と、により定められる調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるか、を判断する受信証明書判断手段と、
前記受信証明書判断手段によって前記電子証明書が確実に有効期間内であると判断される場合に、前記通信相手先装置を認証し、前記受信証明書判断手段によって前記電子証明書が確実に有効期間外であると判断される場合に、前記通信相手先装置を認証せずにエラー表示を実行し、前記電子証明書が有効期間外である可能性があると判断される場合に、前記通信相手先装置を認証するか否かをユーザに決定させる認証手段と、
前記通信相手先装置が認証される場合に、前記通信相手先装置とデータ通信を行う通信手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
請求項１記載の情報処理装置であって、
前記調整手段は、一の調整手段と他の調整手段とを含んでおり、
前記情報処理装置は、さらに、
前記計時手段が計時する現在時刻が、前記一の調整手段によるか、前記他の調整手段によるかを識別する識別手段を備え、
前記誤差推定手段は、前記一の調整手段と前記他の調整手段について、調整手段別に異なる誤差時間を推定し、
前記受信証明書判断手段は、
前記一の調整手段による調整である場合、前記計時手段による現在時刻と、前記誤差推定手段による一の誤差時間と、により定められる一の調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるかを判断し、
前記他の調整手段による調整である場合、前記計時手段による現在時刻と、前記誤差推定手段による他の誤差時間と、により定められる他の調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるか、を判断する、
ことを特徴とする情報処理装置。
【請求項３】
現在時刻を計時する計時手段を備えるコンピュータに、情報処理を実行させるためのコンピュータプログラムであって、
ネットワークを介して、通信相手先装置から送信された前記通信相手先装置を認証するための電子証明書であって有効期間が設定された前記電子証明書を受信する電子証明書受信機能と、
前記計時手段による現在時刻を調整する調整機能と、
前記調整手段により調整された前記計時手段が計時する現在時刻に係る誤差時間を推定する誤差推定機能と、
前記計時手段による現在時刻と、前記誤差推定手段による誤差時間と、により定められる調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるか、を判断する受信証明書判断機能と、
前記受信証明書判断手段によって前記電子証明書が確実に有効期間内であると判断される場合に、前記通信相手先装置を認証し、前記受信証明書判断手段によって前記電子証明書が確実に有効期間外であると判断される場合に、前記通信相手先装置を認証せずにエラー表示を実行し、前記電子証明書が有効期間外である可能性があると判断される場合に、前記通信相手先装置を認証するか否かをユーザに決定させる認証機能と、
前記通信相手先装置が認証される場合に、前記通信相手先装置とデータ通信を行う通信機能と、
を前記コンピュータに実現させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子証明書を用いた暗号通信可能な情報処理装置に係るものである。
【背景技術】
【０００２】
インターネットの普及ととともに、このインターネット利用におけるセキュリティー性の確保の観点から電子証明書を用いた暗号通信技術が実用化されている。
【０００３】
ここで、この電子証明書には、上記観点に基づき、有効期間が設定されていることが一般的であり、この有効期間を正確に管理する技術も提案されている。
【０００４】
例えば、正確な現在時刻を計時しているゲートウェイサーバと、ゲートウェイサーバを介して通信する携帯電話機およびＩＰサーバとを有し、携帯電話機は、ＩＰサーバとの間でＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）通信を行う場合、ゲートウェイサーバから正確な現在時刻に基づいた時刻情報を取得し、この時刻情報に基づいた時刻を自機における現在時刻として設定し、通信相手のＩＰサーバから送信されてくる公開鍵証明書（公正な認証局がＩＰサーバの公開鍵に対して発行した電子証明書）を認証局の公開鍵を用いて復号化し、この公開鍵証明書の有効期間を自機の現在時刻（ゲートウェイサーバにおける正確な現在時刻に準じた時刻）を用いてチェックする、という技術が提案されている（例えば、特許文献１参照。）。
【０００５】
なお、インターネットの利用に用いられる情報処理装置は、内蔵時計を有しているが、これらにおいては、計時誤差が大きい内蔵時計を持つ装置も存在し、期間管理を正確に行うことができないときもある。また、この種の装置に設けられている内蔵時計には、手動操作による時刻調整機能が備えられており、ユーザが自由に時刻を調整できるようになっている。このため、ユーザが意図的に内蔵時計の時刻を変えてしまうと、不正使用を防止することができない、とされている（例えば、特許文献２参照。）。
【０００６】
【特許文献１】特開２００２−１８６０３７号公報
【特許文献２】特開２００４−２１８８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記従来の技術では、暗号通信の都度、外部の装置に対して現在時刻を問い合せる必要が生じる。一方、内蔵時計に基づき、電子証明書の有効期間を判断する構成によっては、実際には有効期間外の電子証明書が、適正なものとして取り扱われる可能性がある。
【０００８】
本発明は、情報処理装置が計時する現在時刻の正確な精度が確保困難な状況において、データ通信のセキュリティーを確保可能な情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記従来の課題に鑑みなされた本発明は、有効期間が設定された電子証明書を用いた通信を行う情報処理装置が、この情報処理装置が有する計時手段の現在時刻に係る誤差を考慮して、電子証明書の有効期間の判断を行うようにしたものである。
【発明の効果】
【００１０】
本願の請求項１に係る発明によれば、情報処理装置が計時する現在時刻の正確な精度が確保困難な状況において、データ通信のセキュリティーを確保可能な情報処理装置を得ることができる。
【００１１】
請求項２に係る発明によれば、情報処理装置が計時する現在時刻の精度に応じて、データ通信のセキュリティーを適切に確保可能な情報処理装置を得ることができる。
【００１２】
請求項３に係る発明によれば、請求項１に係る情報処理装置を実現可能なプログラムを得ることができる。
【発明を実施するための最良の形態】
【００１３】
本願の請求項１に係る発明は、ネットワークを介して、通信相手先装置から送信された前記通信相手先装置を認証するための電子証明書であって有効期間が設定された前記電子証明書を受信する電子証明書受信手段と、現在時刻を計時する計時手段と、前記計時手段による現在時刻を調整する調整手段と、前記調整手段により調整された前記計時手段が計時する現在時刻に係る誤差時間を推定する誤差推定手段と、前記計時手段による現在時刻と、前記誤差推定手段による誤差時間と、により定められる調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるか、を判断する受信証明書判断手段と、前記受信証明書判断手段によって前記電子証明書が確実に有効期間内であると判断される場合に、前記通信相手先装置を認証し、前記受信証明書判断手段によって前記電子証明書が確実に有効期間外であると判断される場合に、前記通信相手先装置を認証せずにエラー表示を実行し、前記電子証明書が有効期間外である可能性があると判断される場合に、前記通信相手先装置を認証するか否かをユーザに決定させる認証手段と、前記通信相手先装置が認証される場合に、前記通信相手先装置とデータ通信を行う通信手段と、を備えたことを特徴とする。
【００１４】
これにより、電子証明書の有効期間の判断において、判断主体となる情報処理装置が備える計時手段の精度を考慮した判断を行うことができる。
【００１５】
請求項２に係る発明は、請求項１記載の情報処理装置であって、前記調整手段は、一の調整手段と他の調整手段とを含んでおり、前記情報処理装置は、さらに、前記計時手段が計時する現在時刻が、前記一の調整手段によるか、前記他の調整手段によるかを識別する識別手段を備え、前記誤差推定手段は、前記一の調整手段と前記他の調整手段について、調整手段別に異なる誤差時間を推定し、前記受信証明書判断手段は、前記一の調整手段による調整である場合、前記計時手段による現在時刻と、前記誤差推定手段による一の誤差時間と、により定められる一の調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるかを判断し、前記他の調整手段による調整である場合、前記計時手段による現在時刻と、前記誤差推定手段による他の誤差時間と、により定められる他の調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるか、を判断する、ことを特徴とする。
【００１６】
これにより、この情報処理装置が有する計時手段の現在時刻の調整手法に基づき、電子証明書の有効期間の判断基準を異ならせることができる。
【００１７】
請求項３に係る発明は、現在時刻を計時する計時手段を備えるコンピュータに、情報処理を実行させるためのコンピュータプログラムであって、ネットワークを介して、通信相手先装置から送信された前記通信相手先装置を認証するための電子証明書であって有効期間が設定された前記電子証明書を受信する電子証明書受信機能と、前記計時手段による現在時刻を調整する調整機能と、前記調整手段により調整された前記計時手段が計時する現在時刻に係る誤差時間を推定する誤差推定機能と、前記計時手段による現在時刻と、前記誤差推定手段による誤差時間と、により定められる調整時間を用いて、前記電子証明書が確実に有効期間内であるか、前記電子証明書が確実に有効期間外であるか、前記電子証明書が有効期間外である可能性があるか、を判断する受信証明書判断機能と、前記受信証明書判断手段によって前記電子証明書が確実に有効期間内であると判断される場合に、前記通信相手先装置を認証し、前記受信証明書判断手段によって前記電子証明書が確実に有効期間外であると判断される場合に、前記通信相手先装置を認証せずにエラー表示を実行し、前記電子証明書が有効期間外である可能性があると判断される場合に、前記通信相手先装置を認証するか否かをユーザに決定させる認証機能と、前記通信相手先装置が認証される場合に、前記通信相手先装置とデータ通信を行う通信機能と、を前記コンピュータに実現させることを特徴とする。
【００１８】
これにより、電子証明書の有効期間の判断において、判断主体となるコンピュータが備える計時手段の精度を考慮した判断を行うように、情報処理装置を制御することができる。
【実施例】
【００１９】
以下、本発明の具体的な実施例について図面を用いて説明する。なお、本発明は、以下に記載の具体的構成に限定されるものではなく、同一の技術的思想において種々の構成を採用することができる。
【００２０】
図１は、プリンタ１０と、このプリンタ１０に対して印刷データを送信し、印刷指示を行うパーソナルコンピュータ（以下、「ＰＣ」という。）３０等から構成されるネットワークシステムを示すものである。
【００２１】
ここで、プリンタ１０は、ＣＰＵ、ＲＡＭ及びＲＯＭにより構成され、このプリンタ１０の制御を司る制御部１０２と、後述する電子証明書等を含む各種データを記憶する、例えば、ハードディスク又はフラッシュメモリからなる記憶部１０４と、ＰＣ３０からの印刷データを印刷する印刷部１０６と、現在時刻を計時する内蔵時計１０８と、プリンタ１０に対して所定の指示を入力し、プリンタ１０に係る所定の情報を表示する操作表示部１１０と、ローカルエリアネットワーク（以下、「ＬＡＮ」という。）５０に直接接続される通信インターフェース（図１において「通信部」と記載。以下、「通信部」という。）１１２と、により構成されている。
【００２２】
ＰＣ３０は、ＣＰＵ、ＲＡＭ及びＲＯＭにより構成され、このＰＣ３０の制御を司る制御部３０２と、後述する電子証明書等を含む各種データを記憶する、例えば、ハードディスクからなる記憶部３０４と、現在時刻を計時する内蔵時計３０６と、各種情報を入力する操作部３０８と、各種情報を表示する表示部３１０と、ＬＡＮ５０に直接接続される通信部３１２と、により構成されている。
【００２３】
また、プリンタ１０及びＰＣ３０は、ＬＡＮ５０により通信可能に接続されるとともに、ルータ９０を介して、外部のいわゆるインターネット７０に接続することができる。ここで、インターネット７０には、これと通信可能な各種装置に対して、現在時刻情報を提供可能な、いわゆるタイムサーバ（図１において描画せず。）が存在している。
【００２４】
なお、プリンタ１０及びＰＣ３０において実行される各処理（以下、図３及び図５の処理を含む。）は、制御部１０２及び３０２のＣＰＵが、ＲＯＭに記憶されている各種処理に係るプログラム、及び、記憶部１０４及び３０４に記憶されている各種データ等に基づきなされるものである。
【００２５】
図２は、プリンタ１０及びＰＣ３０が各々備える内蔵時計１０８及び３０６の設定に際し、実行される処理を示したものであり、プリンタ１０及びＰＣ３０において、その他処理と並行して行われるものである。
【００２６】
なお、プリンタ１０及びＰＣ３０において、制御部１０２及び３０２が行うこの処理は、両者において同様のものであり、以下では、プリンタ１０を例に説明する。
【００２７】
先ず、制御部１０２は、内蔵時計１０８の設定（調整）に用いるタイムサーバが既に設定されており、かつ、タイムサーバを利用した時刻設定の実行に係る所定時期であるか否かを判断する（Ｓ２００）。
【００２８】
なお、上記Ｓ２０４からＳ２０８による内蔵時計１０８の現在時刻設定等の処理は、タイムサーバ設定が行われた後においては、所定の時刻、又は、所定の間隔で自動的に行うよう構成している。
【００２９】
そして、Ｓ２００の判断が肯定された場合、すなわち、タイムサーバが設定済みで、かつ、所定時期である場合（Ｓ２００：Ｙｅｓ）、Ｓ２０２〜Ｓ２０６の処理を実行する一方、タイムサーバが設定されていない場合（Ｓ２００：Ｎｏ）、又は、特にユーザにより現在時刻に係る手動設定の指示がなされた場合（Ｓ２１０：Ｙｅｓ）、Ｓ２１０に移行する。
【００３０】
なお、タイムサーバの設定は、プリンタ１０に出荷時にデフォルト値として記憶させておく、又は、ユーザがプリンタ１０の設置の際、初期値として設定することで行われる。
【００３１】
Ｓ２０２において、制御部１０２は、タイムサーバにアクセスし、これにより現在時刻（ｔ）を取得し、内蔵時計１０８が、計時する現在時刻を、取得した時刻に設定し、Ｓ２０４に移行する。
【００３２】
Ｓ２０４では、Ｓ２０２においてタイムサーバにより取得した現在時刻（ｔ）の精度（取得時刻の誤差：ｅs）を、例えば、ネットワークの遅延に基づき推定する。そして、これを初期値として設定されている、又は、前回の設定において記憶されている値に代えて記憶し、Ｓ２０６に移行する。
【００３３】
なお、後述する図５の処理において、タイムサーバによる現在時刻設定でなされた現在時刻であれば、その設定によって生じる誤差は僅かであり、これを考慮する必要がないとの運用方針を採用すれば、このＳ２０４におけ誤差（ｅs）を、「０」とすることもできる。
【００３４】
Ｓ２０６では、Ｓ２０２において、現在時刻（ｔ）を取得した時刻（取得した現在時刻そのもの。）を、この処理の開始時刻（ｔs／以下、「設定時刻」という。）として、前回の設定において記憶されている値に代えて記憶する。
【００３５】
また、制御部１０２は、操作表示部１１０を介して内蔵時計１０８の手動設定の指示がなされたか否かを判断する（Ｓ２１０）。
【００３６】
そして、Ｓ２１０の判断が肯定された場合、すなわち、手動設定の指示が、操作表示部１１０を介してユーザによりなされた場合（Ｓ２１０：Ｙｅｓ）、Ｓ２１２〜Ｓ２１８の処理を実行する一方、指示がなされていない場合（Ｓ２１０：Ｎｏ）、タイムサーバに基づく時刻設定時期（所定時期）の到来、又は、手動設定の指示を受けるまで待機する。
【００３７】
Ｓ２１２では、操作表示部１１０に、内部時計１０８が計時していた時刻を表示した上で、操作表示部１１０を介した、新たな現在時刻の入力を受け付け、入力後、Ｓ２１４に移行する。
【００３８】
Ｓ２１４では、Ｓ２１２における時刻の入力にともないユーザによってなされる操作表示部１１０を介した確定動作によって、この入力された時刻を内部時計１０８が計時する現在時刻に設定し、Ｓ２１６に移行する。
【００３９】
Ｓ２１６では、手動設定による取得時刻の誤差（ｅs）として、予め定められた値を、前回の設定において記憶されている値に代えて記憶し、Ｓ２１８に移行する。
【００４０】
Ｓ２１８では、手動設定の指示がなされた時点において、内蔵時計１０８が計時していた時刻（Ｓ２１２において、初期値として表示された時刻。）を、設定時刻（ｔs）として、前回の設定において記憶されている値に代えて記憶し、手動設定処理を終了し、上述のとおり、所定の時期、又は、再度の手動設定指示がなされるまで待機する。
【００４１】
なお、上記において、例えば、内蔵時計１０８に対する設定が未実施である場合、又は、記憶内容が初期化された場合、現在時刻（ｔ）及び設定時刻（ｔs）は、「２００６年００月００日００時００分００秒」又は「＊＊＊＊年＊＊月＊＊日＊＊時＊＊分＊＊秒（「＊」は未設定状態を示す。）」に初期設定されるとともに、取得時刻誤差（ｅs）は、無限大に初期値として設定される。
【００４２】
図３は、ＰＣ３０からプリンタ１０に対して印刷処理の実行開始に際し、両者間で、事前になされる相互認証のための暗号化通信（いわゆる、ＳＳＬハンドシェイクに則した通信。）の概略を示したものである。
【００４３】
ここで、この暗号化通信は、ＰＣ３０側で、例えば、表示部３１０に表示されている情報に基づき、操作部３０８を介してユーザがプリンタ１０に対して印刷を指示した際に、記憶部３０４に記憶されているこのプリンタ３０を制御するためのプリンタドライバにより自動的に開始されるものであって、プリンタドライバに関連付けられた、認証局による証明書（以下、「ＣＡ証明書」という。なおＣＡは、Ｃｅｒｔｉｆｉｃａｔｉｏｎ  Ａｕｔｈｏｒｉｔｙの略。）、サーバ証明書、及び、クライアント証明書（これら証明書については、各々、記憶部１０４又は記憶部３０４に記憶されるものであって、図４参照。）を用いて行われる。
【００４４】
なお、以下の図３に係る説明において記載の「（）」内の数字は、図３中「（）」に記載された数字（例えば、「接続要求（１）」）に対応している。
【００４５】
先ず、この暗号化通信は、上記ユーザによる印刷指示にともない、ＰＣ３０からなされるプリンタ１０への接続要求（１）、及び、この接続要求に応じ、プリンタ１０からＰＣ３０への接続可能である旨の通知（２）により開始される。
【００４６】
なお、この接続要求（１）では、ＰＣ３０が利用可能な暗号化通信方法をプリンタ１０に通知する一方、プリンタ１０からの通知（２）では、採用する暗号化通信方法が通知される。
【００４７】
つづけて、所定の認証局による署名とプリンタ１０の公開鍵を含むサーバ証明書が、プリンタ１０からＰＣ３０に送信される（３）。なお、この認証局による署名は、認証局の秘密鍵により暗号化されたものである。
【００４８】
そして、これを受信したＰＣ３０は、事前に記憶部３０４にインストールされているＣＡ証明書（公開鍵（上記「所定の認証局」と同一の認証局の証明書（公開鍵）。））を用いて、このサーバ証明書に含まれる署名を復号等することによって、プリンタ１０により送信されたサーバ証明書をチェックする（４）。
【００４９】
また、ＰＣ３０は、このチェックの結果、プリンタ１０は、自らが印刷指示を出したプリンタ１０であることが確認できた場合、ＰＣ３０は、印刷データの通信に際し利用する共通鍵（乱数）を生成し（５）、これを、先に受信したプリンタ１０の公開鍵（上記（３）参照。）を用いて暗号化して、プリンタ１０に送信する（６）。
【００５０】
プリンタ１０は、この送信（６）による共通鍵を、送信（３）による公開鍵に対応し、記憶部１０４に記憶する秘密鍵を用いて復号化する（７）。
【００５１】
さらに、プリンタ１０は、以降の通信において自らに印刷データを送信してくるＰＣ３０の認証を行うべく、ＰＣ３０に対して、クライアント証明書の送信を要求するとともに（８）、これを受信したＰＣ３０は、事前に記憶部３０４にインストールされているクライアント証明書（ＰＣ３０の公開鍵を含む。）を、プリンタ１０に送信する。
【００５２】
そして、クライアント証明書を受信したプリンタ１０は、クライアント証明書に署名している認証局の証明書であって、自らが記憶部１０４に記憶するＣＡ証明書（公開鍵）を用いて、このクライアント証明書に含まれる署名を復号等することによって、ＰＣ３０により送信されたクライアント証明書をチェックする（１０）。
【００５３】
すなわち、ここまでの処理により、ＰＣ３０が、プリンタ１０を認証し（上記（３）及び（４）参照。）、また、プリンタ１０が、ＰＣ３０を認証するとともに（上記（９）及び（１０）参照。）、印刷データの通信に用いる共通鍵を相互に共有することができる。
【００５４】
その後、ＰＣ３０は、印刷データを共通鍵で暗号化し、これをプリンタ１０に送信し、印刷処理が実行される。なお、この印刷処理については、省略する。
【００５５】
図５は、上記図３において実行される処理（４）及び（１０）において、なされる処理であって、相互に送信されるサーバ証明書及びクライアント証明書の受入れ（チェック）に係る処理を示したものである。なお、プリンタ１０及びＰＣ３０において、制御部１０２及び３０２が行うこの処理は、両者において同様のものであり、以下では、プリンタ１０を例に説明する（すなわち、上記において（１０）でなされる処理に基づき説明する。）。
【００５６】
先ず、制御部１０２は、クライアント証明書に記載の、この証明書の有効期間の開始（Ｔ１）及び終了（Ｔ２）を、検出した後（Ｓ５００）、内蔵時計１０８が計時する現在時刻（ｔ）を取得し（Ｓ５０２）、Ｓ５０４に移行する。
【００５７】
Ｓ５０４では、内蔵時計１０８が計時する現在時刻（ｔ）の誤差を算出し、Ｓ５０６に移行する。
【００５８】
ここで、Ｓ５０４において誤差（ｅ）は、記憶部１０４に記憶されている誤差算出規則（例えば、図５のＳ５０４に例として記載の式）にしたがい算出される。
【００５９】
具体的に誤差（ｅ）の算出について説明すると、今、内蔵時計１０８の現在時刻がタイムサーバを利用して設定されていた場合（タイムサーバを利用したものか、手動設定によるかは、所得時刻の誤差（ｅs）により識別。）、図２のＳ２０４及びＳ２０６により記憶された各値、内装時計１０８が計時する現在時刻、及び、内蔵時計１０８の精度に基づき算出される。すなわち、取得時刻の誤差（ｅs）を０秒、内蔵時計１０８の制度を±３０秒／３０日、現在時刻（ｔ）を２００６年０３月１４日１２時００分００秒、設定時刻（ｔs）を２００６年０２月１２日１２時００分００秒と仮定すると、誤差（ｅ）は３０秒となる。
【００６０】
また、手動設定により設定されていた場合、図２のＳ２１６及びＳ２１８により記憶された各値、内装時計１０８が計時する現在時刻、及び、内蔵時計１０８の精度に基づき算出される。すなわち、取得時刻の誤差（ｅs）を１２時間（４３，２００秒）、内蔵時計１０８の制度を±３０秒／３０日、現在時刻（ｔ）を２００６年０３月１４日１２時００分００秒、設定時刻（ｔs）を２００６年０２月１２日１２時００分００秒と仮定すると、誤差（ｅ）は４３，２３０秒（１２時間３０秒）となる。
【００６１】
なお、上記算出規則によれば、内蔵時計１０８の精度及び前回の設定からの経過を考慮して、誤差（ｅ）を算出するものであるから、内蔵時計１０８が計時する現在時刻に係る誤差をより正確に算出することが可能となる。
【００６２】
これに対し、この誤差（ｅ）を、内蔵時計１０８の精度及び前回の設定からの経過を考慮せずに、現在時刻の調整手法に基づく取得時刻の誤差（ｅs）にのみ基づき（この場合、誤差（ｅ）は、取得時刻の誤差（ｅs）に等しくなる。なお、上記のとおり、タイムサーバによる調整に際し、取得時刻の誤差（ｅs）を「０」とすれば、誤差（ｅ）を考慮する必要なし。）、又は、内蔵時計１０８の精度及び前回の設定からの経過をのみを考慮して決定する構成とすることもできる。かかる場合、構成（処理）を簡素化することができる。
【００６３】
そして、Ｓ５０６では、Ｓ５０２による現在時刻（ｔ）と、Ｓ５０４による誤差（ｅ）に基づき、クライアント証明書が有効期間内にあるか否かが判断される。すなわち、Ｓ５０２で取得した現在時刻（ｔ）に対して、Ｓ５０４で算出した誤差（ｅ）を減じた時刻（ｔ−ｅ）、及び、加算した時刻（ｔ＋ｅ）が、クライアント証明書に記載の有効期間（開始（Ｔ１）〜終了（Ｔ２））の範囲内にあるか否かが判断される。
【００６４】
具体的には、Ｓ５０６における判断が肯定される場合（Ｓ５０６：Ｙｅｓ）、クライアント証明書は、有効期間内であるとして、プリンタ１０は、ＰＣ３０から送信されたクライアント証明書を受け入れ、その後の処理（図２において（１１）以降の処理。）を実行する（Ｓ５０８）。
【００６５】
これに対して、Ｓ５０６における判断が否定される場合（Ｓ５０６：Ｎｏ）、クライアント証明書は、有効期間外であるとして、プリンタ１０は、ＰＣ３０から送信されたクライアント証明書を受け入れることなく、操作表示部１１０に、エラー表示を行う処理を実行する（Ｓ５１０）。なお、かかる場合、プリンタ１０からＰＣ３０に対して、クライアント証明書が有効期間外である旨を通知し、これを受信したＰＣ３０の表示部３１０に、その旨を表示させると、ＰＣ３０のユーザにクライアント証明書の更新を促すことが可能で、好適である。
【００６６】
このように、本実施例のプリンタ１０（ＰＣ３０においても同様）は、タイムサーバから精度の高い現在時刻を得られる状況においては、内蔵時計１０８（ＰＣ３０の場合、内蔵時計３０６。）の誤差（ｅ）に対する考慮を小さくして、クライアント証明書（ＰＣ３０の場合であれば、サーバ証明書。）の有効期間を精度良く判断する一方、手動設定のように現在時刻の精度を確保困難な状況においては、誤差（ｅ）を大きく設定し、プリンタ１０（送信された電子証明書をチェックする側の装置。）にとって、より安全サイドで、有効期間の判断を行うものであり、これによって、セキュリティーの高いデータ通信を確保しようとするものである。
【００６７】
ここで、Ｓ５０６の判断の結果に基づけば、ＰＣ３０から送信されたクライアント証明書は、有効期間外であるものの、その差は、Ｓ５０４の誤差（ｅ）の算出規則に基づき生じるものであると判断可能な場合、一律に、有効期間外であると判断（Ｓ５０６：Ｎｏ）しない構成とすることも可能で、かかる場合、Ｓ５０６実行後、Ｓ５０８に移行する。
【００６８】
先ず、Ｓ５０８では、ＰＣ３０より送信されたクライアント証明書は、有効期間外の可能性がある旨を、操作表示部１１０に表示する処理を実行し（Ｓ５１２）、この表示を一定期間表示した後、又は、この表示とともに、このクライアント証明書を受け入れるか否かの判断をユーザに委ねるべく、その旨を操作表示部１１０に表示する処理を実行する（Ｓ５１４）。
【００６９】
そして、Ｓ５１４による表示にしたがい、プリンタ１０のユーザ（原則、ＰＣ３０から印刷指示を行ったユーザとは異なるユーザ。）が、操作表示部１１０を介して、クライアント証明書を受け入れるとの指示をした場合（Ｓ５１６：Ｙｅｓ）、Ｓ５０８に移行する一方、受け入れないと指示した場合は（Ｓ５１６：Ｎｏ）、Ｓ５１０に移行する。
【００７０】
なお、Ｓ５０６において、本人性の確認が適式に行うことが可能なクライアント証明書であるものの、現時点ではその効力を発揮できない、すなわち、有効期間の開始（Ｔ１）前、又は、終了後（Ｔ２）である場合を、通信を確立可能と判断するにあたっての方針（開始と終了について、一方のみの条件を満たすクライアント証明書を送信してきた相手側装置との通信は確立するという方針。）とした、クライアント証明書の有効性を判断する構成を採用することも可能である。かかる場合、プリンタ１０が備える機能の全てを利用することについては、制限されるが、その一部の機能については、利用できるといった利用形態を提供することができる。例えば、カラー及びモノクロ印刷が可能なプリンタ１０である場合、モノクロ印刷のみ可能な構成とすることができる。
【００７１】
具体的には、このような、制限付きの通信を確立するという方針を満足すると判断し（Ｓ５０６において「Ｙｅｓ」でも「Ｎｏ」でもないと判断した場合。）、Ｓ５１２に移行する。
【００７２】
Ｓ５１２では、有効期間の開始又は終了に係る条件の一方のみが満たされている旨を操作表示部１１０に表示し、このクライアント証明書を受け入れ、制限付きの通信を確立するか否かの判断をユーザに委ねるべく、その旨を操作表示部１１０に表示する処理を実行する（Ｓ５１４）。
【００７３】
そして、上記同様、Ｓ５１６においてなされるユーザの指示が、クライアント証明書を受け入れるとの指示をした場合（Ｓ５１６：Ｙｅｓ）、Ｓ５０８に移行し、制限付きの通信を確立する一方、受け入れないと指示した場合は（Ｓ５１６：Ｎｏ）、Ｓ５１０に移行する。
【００７４】
以上、上記実施例では、通信相手側装置から送信されるクライアント証明書に基づき、プリンタ１０が行う具体的処理について説明したが、クライアント証明書を送信するＰＣ３０が、この送信に際し（図２の（９）参照。）、上記同様の技術的思想を適用し、クライアント証明書の有効性を判断することもできる。
【００７５】
かかる場合、ＰＣ３０の制御部３０２は、内蔵時計３０６の設定に際し、図２の処理を実行した上で、クライアント証明書の送信に際し、図５に記載の処理を実行し、Ｓ５０６又はＳ５１６の判断が否定された場合、クライアント証明書の送信を禁止する構成となる。そしてこのような構成を採用すると、この判断以降にプリンタ１０とＰＣ３０との間でなされる暗号通信を抑制することができる。
【００７６】
なお、プリンタ１０が、サーバ証明書の送信に際し（図２の（３）参照。）、上記ＰＣ３０と同様の処理を行うことも、同様な構成により可能である。
【図面の簡単な説明】
【００７７】
【図１】本発明の一実施例におけるネットワークシステムを示す図
【図２】本発明の一実施例における内蔵時計の時刻設定処理を示す図
【図３】本発明の一実施例における暗号化通信の概略を示す図
【図４】本発明の一実施例における電子証明書を示す図
【図５】本発明の一実施例における電子証明書の受信時処理を示す図
【符号の説明】
【００７８】
１０  プリンタ
１０２  制御部
１０４  記憶部
１０６  印刷部
１０８  内蔵時計
１１０  操作表示部
１１２  通信部
３０  ＰＣ
３０２  制御部
３０４  記憶部
３０６  内蔵時計
３０８  操作部
３１０  表示部
３１２  通信部
５０  ＬＡＮ
７０  インターネット（タイムサーバ）
【図１】
0004434169.tif 000002
【図２】
0004434169.tif 000003
【図３】
0004434169.tif 000004
【図４】
0004434169.tif 000005
【図５】
0004434169.tif 000006