JP5569440B2 - 通信装置およびコンピュータプログラム - Google Patents

通信装置およびコンピュータプログラム Download PDF

Info

Publication number
JP5569440B2
JP5569440B2 JP2011054069A JP2011054069A JP5569440B2 JP 5569440 B2 JP5569440 B2 JP 5569440B2 JP 2011054069 A JP2011054069 A JP 2011054069A JP 2011054069 A JP2011054069 A JP 2011054069A JP 5569440 B2 JP5569440 B2 JP 5569440B2
Authority
JP
Japan
Prior art keywords
certificate
data request
unit
communication
specific data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011054069A
Other languages
English (en)
Other versions
JP2012190320A (ja
Inventor
宗久 松田
陽平 前川
猛 三宅
裕紀 矢田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2011054069A priority Critical patent/JP5569440B2/ja
Priority to US13/410,055 priority patent/US9038190B2/en
Publication of JP2012190320A publication Critical patent/JP2012190320A/ja
Application granted granted Critical
Publication of JP5569440B2 publication Critical patent/JP5569440B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • G06F21/608Secure printing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)
  • Facsimile Transmission Control (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、セキュリティレベルが異なる複数種類の通信によってデータ要求を受信可能な通信技術に関する。
複数の通信装置の間の通信として、セキュリティレベルが異なる複数種類の通信が用いられている。例えば、特許文献1には、WEBサーバからクライアントにWEBページデータを送信する際の通信として、HTTP通信と、HTTP通信よりセキュリティレベルが高いHTTPS通信とが開示されている。ここで、HTTP通信とは、電子証明書を用いて暗号化通信を行うプロトコルであるSSL(Secure Socket Layer)を用いることなく、WEBサーバと端末装置との通信に用いられる標準プロトコルであるHTTP(HyperText Transfer Protocol)を用いて行う通信を指す。また、HTTPS通信とは、SSLを、HTTPの下位レイヤーとして実装したプロトコルであるHTTPS(HyperText Transfer Protocol Secure)を用いた通信を指す。
特開2007−94510号公報
しかしながら、上記技術では、HTTP通信によるWEBページデータの要求と、HTTPS通信によるWEBページデータの要求と、の両方をクライアントに許容するように、WEBサーバを構成することについては、考慮されていなかった。このように構成すると、HTTPS通信とHTTP通信のどちらを用いるかはクライアントに委ねられるので、クライアントの処理の自由度は向上するものの、不都合を生じる場合があった。例えば、クライアントが要求するデータがセキュリティを確保すべき特定データ(例えば、個人情報を含み得るWEBページデータ)が含まれる場合に、その特定データの通信のセキュリティが確保されない可能性があった。このような問題は、上記WEBサーバに限らず、セキュリティレベルが異なる複数種類の通信によってデータ要求を受信可能な通信装置において共通する問題であった。
本発明の主な利点は、セキュリティレベルが異なる複数種類の通信によってデータ要求を受信可能な通信装置において、特定データに対するセキュリティを向上することである。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の態様または適用例として実現することが可能である。
[態様]通信装置であって、
電子証明書を格納する証明書格納部と、
ユーザの格納指示に応じて前記電子証明書を前記証明書格納部に格納する証明書格納処理部と、
第1のセキュリティレベルの通信にて送信されるデータ要求である第1のデータ要求と、前記第1のセキュリティレベルの通信より高いレベルのセキュリティが確保された第2のセキュリティレベルの通信であって、前記電子証明書を用いた接続処理を経て通信を確立するプロトコルを用いた前記第2のセキュリティレベルの通信にて送信されるデータ要求である第2のデータ要求とを受信する受信部と、
特定データを要求するデータ要求である特定データ要求が前記受信部によって受信された場合に、前記特定データ要求が前記第1のデータ要求であるか前記第2のデータ要求であるかを判断する判断部と、
前記特定データ要求が前記第2のデータ要求である場合には、前記特定データ要求の送信元である装置に対して前記特定データを送信し、前記特定データ要求が前記第1のデータ要求である場合には、前記送信元である装置に対して前記特定データとは異なる別データであって、前記送信元である装置に、前記特定データ要求を前記第2のセキュリティレベルの通信にて再送させるための表示情報を含む前記別データを送信する送信部と、 を備え、
前記証明書格納部は、前記証明書格納処理部によって格納される前記電子証明書である第1の電子証明書を格納するための第1証明書格納部と、前記証明書格納処理部を介さずに格納される前記電子証明書である第2の電子証明書を格納するための第2証明書格納部と、を有し、
前記通信装置は、さらに、
前記第1証明書格納部に前記第1の電子証明書が格納されている場合には、前記第1の電子証明書を選択し、前記第1証明書格納部に前記第1の電子証明書が格納されていない場合には、前記第2の電子証明書を選択する証明書選択部を備え、
前記送信部は、前記証明書選択部によって選択された前記電子証明書を用いた接続処理を経て確立された通信にて、前記特定データの送信を行う、通信装置。
[適用例1]通信装置であって、
第1のセキュリティレベルの通信にて送信されるデータ要求である第1のデータ要求と、前記第1のセキュリティレベルの通信より高いレベルのセキュリティが確保された第2のセキュリティレベルの通信にて送信されるデータ要求である第2のデータ要求とを受信する受信部と、
特定データを要求するデータ要求である特定データ要求が前記受信部によって受信された場合に、前記特定データ要求が前記第1のデータ要求であるか前記第2のデータ要求であるかを判断する判断部と、
前記特定データ要求が前記第2のデータ要求である場合には、前記特定データ要求の送信元である装置に対して前記特定データを送信し、前記特定データ要求が前記第1のデータ要求である場合には、前記送信元である装置に対して前記特定データとは異なる別データであって、前記送信元である装置に、前記特定データ要求を前記第2のセキュリティレベルの通信にて再送させるための表示情報を含む前記別データを送信する送信部と、
を備える通信装置。
上記構成によれば、第1のセキュリティレベルの通信にて特定データ要求を通信装置に対して送信した装置は、特定データとは異なる別データを取得し、別データを取得した後に、容易に第2のセキュリティレベルの通信にて特定データ要求を再送することができる。この結果、第1のセキュリティレベルの通信にて特定データを要求する特定データ要求が通信装置に対して行われた場合であっても、特定データは、第2のセキュリティレベルの通信にて送信される。したがって、セキュリティレベルが低い通信にて特定データが送信されることを抑制して特定データに対するセキュリティを向上することができる。
なお、本発明は、種々の形態で実現可能であり、例えば、画像処理装置、印刷装置、通信方法、これらの装置の機能または方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
第1実施例におけるネットワークシステムの概略構成を示す図。 クライアントとプリンタとの通信処理について説明するシーケンス図。 第1実施例における証明書選択処理の処理ステップを示すフローチャート。 通知ページの一例を示す図。 送信ページデータ選択処理の処理ステップを示すフローチャート。 特定情報登録ページの一例を示す図。 警告ページの一例を示す図。 特定WEBページとは異なるWEBページの一例を示す図。 第2実施例における証明書選択処理の処理ステップを示すフローチャート。 証明書更新処理の処理ステップを示すフローチャート。
A.第1実施例:
A−1.ネットワークシステムの構成:
次に、本発明の実施の形態を実施例に基づき説明する。図1は、第1実施例におけるネットワークシステムの概略構成を示す図である。ネットワークシステム1000は、プリンタ100と、クライアントとしての計算機(以下、単にクライアントという。)200と、サーバとしての計算機(以下、単にサーバという。)300とを備えている。プリンタ100と、クライアント200は、第1のローカルエリアネットワーク400に接続されている。サーバ300は、第2のローカルエリアネットワーク500に接続されている。第1のローカルエリアネットワーク400は、ファイアウォール600を介して、インターネット700に接続されている。第2のローカルエリアネットワーク500は、インターネット700に接続されている。ファイアウォール600は、ファイアウォールとしての機能を有する周知のスイッチまたは計算機である。
クライアント200は、インストールされたプログラムを実行することにより、WEBブラウザ201の機能と、文書作成、画像作成などのアプリケーション202の機能と、印刷ジョブ生成部203の機能と、を実現する。印刷ジョブ生成部203は、アプリケーション202から印刷データと印刷指示を受け取り、印刷データを印刷するための印刷ジョブを生成する。印刷ジョブ生成部203は、具体的には、プリンタ100に対応したプリンタドライバ、または、後述する外部プリントサービスに対応したドライバである。
サーバ300は、サーバプログラムを実行することにより、クライアント200に対して外部プリントサービスを提供するプリントサーバ部302の機能を実現する。
外部プリントサービスを用いない場合には、クライアント200には、印刷ジョブ生成部203としてプリンタ100に対応したプリンタドライバがインストールされる。印刷ジョブ生成部203は、プリンタ100が解釈可能な印刷ジョブを生成して、プリンタ100に送信する。プリンタ100は、受信した印刷ジョブに基づいて印刷を実行する。
外部プリントサービスを用いる場合には、クライアント200には、印刷ジョブ生成部203として外部プリントサービスに対応したドライバがインストールされる。クライアント200のユーザは、サーバ300に、特定情報(例えば、アカウント名およびパスワード)を登録するとともに、プリンタ100を登録する。印刷ジョブ生成部203は、サーバ300が解釈可能な印刷ジョブを生成して、サーバ300に送信する。この印刷ジョブには、上述した特定情報と、プリンタ100を特定する情報が含まれる。プリンタ100は、サーバ300からの通知、または、サーバ300に対する定期的な問い合わせにより、クライアント200からの印刷要求を認識すると、サーバ300に対して印刷ジョブを要求する。サーバ300は、クライアント200の印刷ジョブ生成部203から受信した印刷ジョブに基づいて、プリンタ100が解釈可能な印刷ジョブを生成して、プリンタ100に送信する。プリンタ100は、受信した印刷ジョブに基づいて印刷を実行する。
外部プリントサービスを利用すれば、例えば、クライアント200のユーザが、複数種類のプリンタを利用する場合に、プリンタ毎に異なるプリンタドライバを印刷ジョブ生成部203としてインストールする必要がない利点がある。
ここで、サーバ300に対して印刷ジョブを要求する際には、プリンタ100は、クライアント200のユーザがサーバ300に登録した上述した特定情報を必要とする。このために、クライアント200のユーザは、外部プリントサービスを利用する前に、プリンタ100に、上述した特定情報を登録する。この特定情報の登録は、後述するプリンタ100のWEBサーバ部M10がWEBページの形式で提供するユーザインタフェースに、ユーザがクライアント200のWEBブラウザ201を用いてアクセスすることによって行われる。
また、クライアント200とサーバ300との通信、および、サーバ300とプリンタ100との通信は、SSLを用いた暗号化通信(以下、SSL通信とも呼ぶ。)を用いて行われる。SSL通信は、SSLを用いない非暗号化通信(以下、単に、非暗号化通信とも呼ぶ。)より高いセキュリティレベルが確保されている。
プリンタ100は、CPU(Central processing unit)110と、揮発性メモリであるRAM(Random Access Memory)120と、書き換え不可能な不揮発性メモリであるマスクROM(Mask Read Only Memory)130と、書き換え可能な不揮発性メモリであるEEPROM(Electrically Erasable Programmable Read-Only Memory)140と、ユーザの操作を受け付ける各種のボタンを含む操作部150と、周知の方式(例えば、レーザー、インクジェット)で印刷媒体に画像を形成する印刷部160と、ネットワークに接続するためのインタフェース部(I/F部)170と、を備えている。
CPU110は、マスクROM130に格納されたコンピュータプログラムを実行することにより、WEBサーバ部M10、証明書管理部M20、印刷制御部M30として機能する。
WEBサーバ部M10は、プリンタ100に関する種々の設定を行うためのユーザインタフェースをWEBページの形式でクライアント200に提供するHTTPサーバとして機能する。WEBサーバ部M10は、受信部M11と、送信部M12と、受信プロトコル判断部M13とを備えている。
受信部M11は、クライアント200からHTTPリクエストを受信する。送信部M12は、HTTPリクエストに応じて、クライアント200に対してHTTPレスポンスを送信する。受信部M11および送信部M12は、HTTPの下位レイヤーのプロトコルとしてSSLを実装している。すなわち、受信部M11は、SSL通信にてHTTPリクエストを受信することが可能である。また、受信部M11は、非暗号化通信にてHTTPリクエストを受信することが可能である。送信部M12は、SSL通信にて受信されたHTTPリクエストに対する応答として、SSL通信にてHTTPレスポンスを送信することが可能である。送信部M12は、非暗号化通信にて受信されたHTTPリクエストに対する応答として、非暗号化通信にてHTTPレスポンスを送信することが可能である。
受信プロトコル判断部M13は、受信部M11がHTTPリクエストを受信した場合に、そのHTTPリクエストが、クライアント200からSSL通信にて送信されたリクエストであるか、非暗号化通信に送信されたリクエストであるかを判断する。
ここで、SSL通信の接続処理(SSLハンドシェイク)では、サーバ証明書を用いる。このサーバ証明書は、公開鍵と、その公開鍵に関連付けられた所有者情報および署名者情報と、有効期限を表す情報を含む電子証明書である。所有者情報は、公開鍵の所有者を特定する情報である。署名者情報は、公開鍵の所有者が所有者情報にて特定される者であると宣言する者(署名者)を特定する情報である。サーバ証明書は、サーバ証明書と関連付けられた秘密鍵とセットでサーバ(例えば、本実施例では、WEBサーバとして機能するプリンタ100)に格納される。
プリンタ100が扱うサーバ証明書には、プリンタ100への格納方法による分類で以下のような種類がある。
1)ユーザの格納指示に応じてプリンタ100に格納されたサーバ証明書(以下、ユーザインストール証明書とも呼ぶ。)
2)プリンタ100の製造時にプリンタ100に格納されたサーバ証明書(以下、プリインストール証明書とも呼ぶ。)
証明書管理部M20は、サーバ証明書を管理する機能部である。証明書管理部M20は、証明書選択部M21と、証明書格納処理部M22と、を備えている。証明書管理部M20は、さらに、証明書生成部M23と、証明書更新部M24とを備えても良い。証明書生成部M23および証明書更新部M24を備える構成については、第2実施例として後述する。
証明書選択部M21は、クライアント200とSSL通信を行う際に使用するサーバ証明書を、SSL通信の接続処理が行われる前(本実施例では、プリンタ100の起動時)に予め選択する証明書選択処理を実行する。
証明書格納処理部M22は、ユーザの格納指示に応じてサーバ証明書を所定の格納領域に格納する証明書格納処理を実行する。証明書格納処理部M22により格納されるサーバ証明書は、上述したユーザインストール証明書となる。
印刷制御部M30は、印刷ジョブを受信して、印刷部160に受信した印刷ジョブに基づいた印刷を実行させる。印刷制御部M30は、クライアント200から印刷ジョブを受信することが可能である。また、印刷制御部M30は、上述した外部プリントサービスが実行される場合に、サーバ300から印刷ジョブを受信することが可能である。
RAM120は、CPU110が処理を行う際に一時的にデータを格納するバッファ領域として用いられる。また、RAM120は、上述した証明書選択部M21が証明書選択処理を行った際に、サーバ証明書の選択結果を示す情報を格納する選択結果格納領域121を有している。RAM120は、さらに、自動生成証明書格納領域122を有しても良い。自動生成証明書格納領域122を有する構成については、第2実施例として後述する。
マスクROM130には、CPU110が用いる種々のプログラムおよびデータが格納されている。また、マスクROM130は、プリインストール証明書格納領域131を有し、上述したプリインストール証明書が格納されている。プリインストール証明書格納領域131がマスクROM130に備えられることにより、プリインストール証明書格納領域131がEEPROM140に備えられる場合と比較して、マスクROM130よりコストの高いEEPROM140の必要容量を抑制することができる。
EEPROM140は、プリンタ100に関する設定情報などの格納に用いられる。また、EEPROM140は、ユーザインストール証明書格納領域142を有している。ユーザインストール証明書格納領域142には、上述した証明書格納処理部M22により、ユーザインストール証明書が格納される。ユーザインストール証明書格納領域142は、複数のユーザインストール証明書を格納可能である。なお、本実施例では、プリインストール証明書格納領域131は、マスクROM130に設けられているが、これに代えて、EEPROM140においてユーザインストール証明書格納領域142とは異なる領域に設けてもよい。
A−2.クライアント200とプリンタ100との通信処理
図2は、クライアント200とプリンタ100との通信処理について説明するシーケンス図である。図2(a)には、証明書格納処理の処理ステップを示すシーケンス図が示されている。図2(b)には、WEBブラウザ201とWEBサーバ部M10との通信処理の処理ステップを示すシーケンス図が示されている。
A−2−1.証明書格納処理
まず、プリンタ100の証明書格納処理部M22が実行する証明書格納処理について説明する。証明書格納処理部M22は、サーバ証明書を上述したユーザインストール証明書格納領域142に格納することをプリンタ100に対して要求するユーザインストール証明書格納要求に応じて、証明書格納処理を実行する。図2(a)に示すように、プリンタ100のユーザ(例えば、第1のローカルエリアネットワーク400の管理者)は、クライアント200を操作して、クライアント200からプリンタ100に対してユーザインストール証明書格納要求を送信することができる(ステップS10)。
証明書格納処理において格納されるユーザインストール証明書には、署名者による分類で以下の2種類がある。
1)パブリック認証局(Public CA(Certification Authority))が署名者であるサーバ証明書(以下、パブリックCA署名証明書と呼ぶ。)
2)ユーザが署名者であるサーバ証明書(以下、ユーザ署名証明書と呼ぶ。)。この場合、ユーザによる署名は、プライベート認証局(private CA)による署名とも呼ばれる。
また、証明書格納処理において、格納対象であるユーザインストール証明書を証明書格納処理部M22が取得する取得処理には、以下の3種類がある。
取得処理A)証明書格納処理部M22は、秘密鍵とCSR(Certificate Signing Request)とを生成する。ユーザは、CSRをパブリック認証局に送信して、パブリックCA署名証明書の暗号化データをパブリック認証局から取得する。証明書格納処理部M22は、秘密鍵と暗号化データを用いてパブリックCA署名証明書を復号して取得する。
取得処理B)証明書格納処理部M22は、秘密鍵とCSRとを生成する。証明書格納処理部M22は、ユーザからの指示に応じてCSRに署名する処理を行い、ユーザ署名証明書を生成する。なお、ユーザ署名証明書を生成する場合には、クライアント200のWEBブラウザ201にインポートするためのプライベートCA証明書を生成して、クライアント200に提供しても良い。
取得処理C)証明書格納処理部M22は、外部(例えば、クライアント200)にエクスポートされているサーバ証明書と秘密鍵を、インポートする。
証明書格納処理部M22は、クライアント200との通信を介して、ユーザと必要な情報の遣り取りを行いながら、上記取得処理を実行する(ステップS20)。ここで、ユーザと遣り取りされる情報には、例えば、上述したCSRの生成に必要なディスティングイッシュネームなどが含まれる。証明書格納処理部M22は、ユーザインストール証明書を取得すると、取得したユーザインストール証明書を秘密鍵と関連付けて、EEPROM140のユーザインストール証明書格納領域142に格納する(ステップS30)。
また、証明書格納処理部M22は、ユーザインストール証明書の格納とともに、ユーザインストール証明書に関連する種々の関連情報をEEPROM140に格納する(ステップS30)。例えば、ユーザインストール証明書の取得処理の種類(上記取得処理A〜Cのいずれかの処理)を特定する情報を、ユーザインストール証明書と関連付けてEEPROM140に格納する。また、証明書格納処理部M22は、複数のユーザインストール証明書がユーザインストール証明書格納領域142に格納されている場合に、使用するユーザインストール証明書を指定する指定指示をユーザから受け付けることができる。証明書格納処理部M22は、ユーザから指定指示を受け付けた場合には、ユーザが指定するユーザインストール証明書を特定するためのユーザ指定情報をEEPROM140に格納する。
ステップS30に続いて、証明書格納処理部M22は、プリンタ100を再起動する処理を実行し(ステップS40)、証明書格納処理を終了する。
なお、証明書格納処理において、証明書格納処理部M22とユーザとの情報の遣り取りは、プリンタ100のWEBサーバ部M10がWEBページの形式で提供するユーザインタフェースに、ユーザがクライアント200のWEBブラウザ201を用いてアクセスすることによって行われる。
A−2−2.証明書選択処理
上述したように、クライアント200のユーザに対して、種々のユーザインタフェースをWEBページの形式で提供するプリンタ100のWEBサーバ部M10と、クライアント200のWEBブラウザ201との通信処理について説明する。
図2(b)に示すように、WEBブラウザ201とWEBサーバ部M10との通信処理の前(本実施例では、プリンタ100の起動時)に、証明書選択部M21は、証明書選択処理を実行する(ステップS50)。「プリンタ100の起動時」には、電源投入時、および、再起動時が含まれる。上述した証明書格納処理の終了時には、プリンタ100の再起動が行われるので、再起動後に直ぐに証明書選択処理が行われる。
図3は、証明書選択処理の処理ステップを示すフローチャートである。証明書選択処理が開始されると、証明書選択部M21は、ユーザインストール証明書は利用可能であるか否かを判断する(ステップS502)。証明書選択部M21は、ユーザインストール証明書格納領域142に、有効期限が切れていない少なくとも1つのユーザインストール証明書が格納されている場合には、ユーザインストール証明書は利用可能であると判断する。証明書選択部M21は、ユーザインストール証明書格納領域142に、有効期限が切れていないユーザインストール証明書が格納されていない場合には、ユーザインストール証明書は利用可能でないと判断する。
証明書選択部M21は、ユーザインストール証明書は利用可能であると判断すると(ステップS502:YES)、優先順位に従って、利用可能なユーザインストール証明書の中から、使用するサーバ証明書を選択する(ステップS504)。
ユーザインストール証明書の優先順位を以下に示す。若い番号ほど優先順位が高い。
1.ユーザ指定情報により特定されるユーザインストール証明書
2.上述した取得処理Aによって取得されたユーザインストール証明書
3.上述した取得処理Cによって取得されたユーザインストール証明書
4.上述した取得処理Bによって取得されたユーザインストール証明書
パブリックCA署名証明書は、ユーザ署名証明書より信頼性が高いと考えられる。ここで、取得処理Aによって取得されたユーザインストール証明書は、パブリックCA署名証明書である。取得処理Bによって取得されたユーザインストール証明書は、ユーザ署名証明書である。取得処理Cによって取得されたユーザインストール証明書は、パブリックCA署名証明書である場合と、ユーザ署名証明書である場合とがある。以上を考慮して、ユーザによる指定指示があった場合には、ユーザによる指定指示を優先し、ユーザによる指定指示がない場合には、パブリックCA署名証明書がユーザ署名証明書より優先して選択されるように、上記の優先順位が規定されている。利用可能なユーザインストール証明書が1つしかない場合には、そのユーザインストール証明書が選択される。
証明書選択部M21は、ユーザインストール証明書は利用可能でないと判断すると(ステップS502:NO)、プリインストール証明書を、使用するサーバ証明書として選択する(ステップS506)。すなわち、ユーザインストール証明書が利用可能である場合には、ユーザインストール証明書を優先して使用し、ユーザインストール証明書が利用不可能である場合に限って、プリインストール証明書を使用するように、使用するサーバ証明書が選択される。
使用するサーバ証明書が選択されると、証明書選択部M21は、選択結果を示す情報をRAM120の選択結果格納領域121に格納し(ステップS508)、証明書選択処理を終了する。選択結果を示す情報は、例えば、選択されたサーバ証明書と、WEBサーバ部M10に実装されたSSLプロトコルと、を対応付けるバインド情報として選択結果格納領域121に格納される。
A−2−3.WEBブラウザ201と、WEBサーバ部M10との通信処理
上述したようにクライアント200のユーザに対して、種々のユーザインタフェースをWEBページの形式で提供するプリンタ100のWEBサーバ部M10と、クライアント200のWEBブラウザ201との通信処理(図2(b))について説明する。
WEBページは、URL(Uniform Resource Locator)によって特定される。URLの基本な形式は、以下のように表される。
<scheme>://<host>/<path>
<scheme>は、リソースの取得方法を規定する部分であり、例えば、プロトコル名が記述される。<host>は、WEBサーバを指定する部分であり、例えば、WEBサーバに割り当てられたIPアドレスまたはドメインネームが記述される。<path>は、WEBサーバ上のリソース名(位置)が記述される。
ユーザは、クライアント200のWEBブラウザ201の表示画面(ブラウザ画面)において、URLを指定することにより、URLによって特定されるWEBページのデータ(以下、単に、ページデータと呼ぶ)を要求するWEBページ要求(HTTPリクエスト)を送信する。ユーザによるURLの指定は、例えば、1)ブラウザ画面におけるURL入力欄にURLを入力する、2)ブラウザ画面に表示されたWEBページにおけるURLと対応付けられた項目(例えば、文字列や画像:以下では、リンク項目とも呼ぶ)を選択する、3)予め登録されたURLを選択する、ことによって行われる。
プリンタ100のWEBサーバ部M10は、上述したように、SSL通信と、非暗号化通信の両方に対応している。いずれの通信を用いるかは、ユーザの裁量に委ねられている。ユーザは、非暗号化通信を用いる場合には、<scheme>を「http」としたURLを指定すれば良く、SSL通信を用いる場合には、<scheme>を「https」としたURLを指定すれば良い。
例えば、プリンタ100に「192.168.11.16」というIPアドレスが割り当てられている場合には、WEBサーバ部M10が提供するWEBページのトップページのページデータを要求するためのURLとして、「http://192.168.11.16/」、または、「https://192.168.11.16/」を指定することができる。
WEBサーバ部M10が提供するトップページ以外のWEBページのページデータのURLの指定は、例えば、トップページを始めとするWEBサーバ部M10によって提供されるWEBページに表示されたリンク項目を選択することによって行われる。本実施例のWEBサーバ部M10が提供するWEBページでは、リンク項目に対応付けられたURLは、相対パス形式、すなわち、<scheme>と<host>を省略した形式で記述されている。ユーザが、相対パス形式のURLを指定した場合、対応するリンク項目を含むWEBページのページデータを取得したときと同じ<scheme>および<host>を指定したとみなされる。
ユーザが<scheme>を「https」としたURLを指定した場合には、図2(b)に示すように、クライアント200のWEBブラウザ201は、HTTPリクエストの送信の前に、プリンタ100のWEBサーバ部M10に対して、SSL通信を要求するSSL通信要求を送信する(ステップS60)。SSL通信要求に続いて、WEBブラウザ201とWEBサーバ部M10との間で、SSLハンドシェイクが行われる(ステップS70)。以下では、ステップS60とステップS70の処理を、SSL通信確立処理とも呼ぶ。
SSLハンドシェイクは、WEBサーバ部M10からWEBブラウザ201へのサーバ証明書の送信、暗号化鍵(共通鍵)の交換を行い、SSL通信を確立する手続処理である。WEBサーバ部M10は、SSLハンドシェイクにおいてWEBブラウザ201に送信するサーバ証明書として、上述した証明書選択処理(図3)にて選択したサーバ証明書を用いる。WEBブラウザ201は、SSLハンドシェイクにおいて、WEBサーバ部M10から送信されたサーバ証明書を検証し、サーバ証明書が信頼できるか否かを判断する。
WEBブラウザ201には、パブリックCA署名証明書の信頼性を検証するためのパブリックCA証明書が予めインストールされている。WEBブラウザ201には、ユーザ署名証明書の信頼性を検証するためのプライベートCA証明書をユーザがインポートすることができる。WEBブラウザ201は、これらのCA証明書を用いた検証により、サーバ証明書が信頼できるか否かを判断する。パブリックCA署名証明書およびユーザ署名証明書は、対応するCA証明書をWEBブラウザ201が有していれば、信頼できると判断されるが、プリインストール証明書は、基本的には、信頼できないと判断される。
WEBブラウザ201は、WEBサーバ部M10から送信されたサーバ証明書を信頼できないと判断すると、その旨を通知する通知ページをブラウザ画面に表示する。
図4は、通知ページの一例を示す図である。通知ページP1は、サーバ証明書が信頼できない旨のメッセージMS1と、2つの指示受付ボタンB1およびB2とを含んでいる。指示受付ボタンB1は、ユーザからSSLハンドシェイクの継続指示を受け付けるためのボタンである。指示受付ボタンB2は、ユーザからSSLハンドシェイクの中断指示を受け付けるためのボタンである。ユーザが指示受付ボタンB1を操作すると、WEBブラウザ201は、WEBサーバ部M10から送信されたサーバ証明書を用いてSSLハンドシェイクを継続する。一方、ユーザが指示受付ボタンB2を操作すると、WEBブラウザ201は、SSLハンドシェイクを中断し、ブラウザ画面に、SSLハンドシェイクの開始前に表示されていたWEBページを表示する。
SSLハンドシェイクが終了して、SSL通信が確立されると、WEBブラウザ201は、ユーザが指定したURLによって特定されるページデータを要求するHTTPリクエストをSSL通信にてWEBサーバ部M10に送信する(ステップS80)。HTTPリクエストには、URLの<path>部分が記述される。
WEBサーバ部M10の受信部M11がHTTPリクエストを受信すると、WEBサーバ部M10は、HTTPレスポンスに格納して送信すべきページデータ(以下では、送信ページデータとも呼ぶ)を選択する送信ページデータ選択処理を実行する(ステップS90)。送信ページデータ選択処理の詳細については後述する。
送信ページデータが選択されると、WEBサーバ部M10の送信部M12は、選択されたページデータが格納されたHTTPレスポンスをSSL通信にてWEBブラウザ201に対して送信する(ステップS100)。WEBブラウザ201は、受信したHTTPレスポンスに格納されたページデータを用いて、WEBページをブラウザ画面に表示する(ステップS110)。
一方、ユーザが<scheme>を「http」としたURLを指定した場合には、SSL通信確立処理(図2(b))を行うことなく、図2(b)に示すステップS80〜S100の処理が行われる。すなわち、WEBブラウザ201は、ユーザが指定したURLによって特定されるページデータを要求するHTTPリクエストを非暗号化通信にてWEBサーバ部M10に送信する(ステップS80)。そして、HTTPリクエストを受信したWEBサーバ部M10は、送信ページデータ選択処理を実行する(ステップS90)。そして、WEBサーバ部M10の送信部M12は、選択されたページデータが格納されたHTTPレスポンスを非暗号化通信にてWEBブラウザ201に対して送信する(ステップS100)。WEBブラウザ201は、受信したHTTPレスポンスに格納されたページデータを用いて、WEBページをブラウザ画面に表示する(ステップS110)。
次に、上述した送信ページデータ選択処理(ステップS90)について説明する。図5は、送信ページデータ選択処理の処理ステップを示すフローチャートである。送信ページデータ選択処理は、WEBサーバ部M10の受信部M11がHTTPリクエストを受信すると開始される。まず、図5に示すように、WEBサーバ部M10は、受信されたHTTPリクエストが要求するページデータ(以下では、要求ページデータとも呼ぶ)を認識し(ステップS904)、要求ページデータが特定WEBページのページデータ(以下では、特定ページデータとも呼ぶ)であるか否かを判断する(ステップS906)。
特定ページデータは、個人情報などのセキュリティの確保が求められる特定情報を含み得るWEBページである。本実施例における特定WEBページは、上述した外部プリントサービスに用いる特定情報をプリンタ100に登録するためのユーザインターフェースを提供するページ(以下では、特定情報登録ページとも呼ぶ)である。
図6は、特定情報登録ページの一例を示す図である。特定情報登録ページP2は、特定情報(具体的には、アカウント名、メールアドレス、パスワード)を入力するための入力ボックスIB1〜IB3を含んでいる。特定情報が既に登録されている場合には、特定情報登録ページP2のページデータは特定情報を含む。
要求ページデータが特定ページデータである場合には(図5:ステップS906:YES)、WEBサーバ部M10の受信プロトコル判断部M13は、受信されたHTTPリクエストがSSL通信にて受信されたか否かを判断する(ステップS908)。具体的には、受信プロトコル判断部M13は、HTTPリクエストの宛先ポート番号を取得する。宛先ポート番号は、HTTPリクエストを格納したTCPパケットのヘッダに記述されている。受信プロトコル判断部M13は、取得した宛先ポート番号が例えば「443」である場合には、HTTPリクエストはSSL通信にて受信されたと判断する。受信プロトコル判断部M13は、取得した宛先ポート番号が「443」でない場合(例えば、「80」である場合)には、HTTPリクエストはSSL通信にて受信されていない(非暗号化通信にて受信された)と判断する。
HTTPリクエストはSSL通信にて受信された場合には(ステップS908:YES)、WEBサーバ部M10は、要求ページデータである特定ページデータを送信ページデータとして選択する(ステップS912)。HTTPリクエストはSSL通信にて受信されていない場合には(ステップS908:NO)、WEBサーバ部M10は、要求ページデータである特定ページデータに代えて、警告ページのページデータを送信ページデータとして選択する(ステップS910)。
図7は、警告ページの一例を示す図である。警告ページP3は、リクエスト再送用リンク項目LT1と、メッセージMS2とを有している。リクエスト再送用リンク項目LT1は、WEBブラウザ201に、SSL通信を用いて、特定ページデータを要求するHTTPリクエストを再送させるためのURL(以下では、再送URLとも呼ぶ)に対応付けられている。具体的には、URLの<scheme>は、「https」である。このURLの<host>は、プリンタ100のIPアドレスである。このURLの<path>は、特定ページデータを特定するリソース名である。WEBサーバ部M10は、プリンタ100に設定されているIPアドレスを取得し、再送URLを生成して、リクエスト再送用リンク項目LT1およびメッセージMS2とを含む警告ページデータを予め作成しておく。メッセージMS2は、リクエスト再送用リンク項目LT1を操作することにより、セキュリティが確保されたSSL通信を用いて、特定ページデータを要求するHTTPリクエストを再送することを、ユーザに促すメッセージである。警告ページP3のページデータに含まれる、リクエスト再送用リンク項目LT1のデータは、WEBブラウザ201(クライアント200)に、特定ページデータを要求するHTTPリクエストをSSL通信にて再送させる表示情報であると言える。
一方、要求ページデータが特定ページデータでない場合には(図5:ステップS906:NO)、HTTPリクエストがSSL通信にて受信されたか否かに拘わらず、WEBサーバ部M10は、要求ページデータを送信ページデータとして選択する(ステップS912)。ステップS910またはステップS912の後、送信ページデータ選択処理は終了される。
以上説明したプリンタ100のWEBサーバ部M10に対して、クライアント200のWEBブラウザ201を用いてアクセスした場合におけるブラウザ画面の表示内容について説明する。
図8は、特定WEBページとは異なるWEBページの一例を示す図である。このWEBページP4のページデータは、セキュリティを確保するべき特定情報を含み得ないページデータである。WEBページP4は、特定ページデータ(特定WEBページである特定情報登録ページP2(図6)のページデータ)を特定する相対パス形式のURLと対応付けられたリンク項目LT2を有している。WEBページP4は、特定WEBページではないので、WEBブラウザ201は、WEBページP4のページデータを、SSL通信を用いているか否かに拘わらず、取得することができる。
WEBブラウザ201が、WEBページP4のページデータをSSL通信にて取得してWEBページP4をブラウザ画面に表示している場合に、ユーザがWEBページP4のリンク項目LT2を選択すると、WEBブラウザ201は、特定ページデータを要求するHTTPリクエストをSSL通信にてWEBサーバ部M10に送信する。この場合には、WEBブラウザ201は、SSL通信にて特定ページデータを取得して、特定情報登録ページP2(図6)をブラウザ画面に表示することができる。
一方、WEBブラウザ201が、WEBページP4のページデータを非暗号化通信にて取得してWEBページP4をブラウザ画面に表示している場合に、ユーザがWEBページP4のリンク項目LT2を選択すると、WEBブラウザ201は、特定ページデータを要求するHTTPリクエストを非暗号化通信にてWEBサーバ部M10に送信する。この場合には、WEBブラウザ201は、非暗号化通信にて、警告ページP3(図7)のページデータを取得して、警告ページP3をブラウザ画面に表示することになる。ユーザは、警告ページP3のリクエスト再送用リンク項目LT1を選択することにより、WEBブラウザ201に、セキュリティが確保されたSSL通信にて特定ページデータを取得させることができる。すなわち、非暗号化通信にて特定ページデータを要求するHTTPリクエストがWEBサーバ部M10に送信された場合であっても、最終的には、特定ページデータは、SSL通信にて送信される。
以上の説明から解るように本実施例におけるプリンタ100によれば、WEBブラウザ201が、非暗号化通信にて、特定ページデータを要求した場合には、特定ページデータとは異なるデータである警告ページP3のページデータを送信する。すなわち、プリンタ100は、非暗号化通信でのデータ要求とSSL通信でのデータ要求との両方を受け付けるにも拘わらず、非暗号化通信にて特定ページデータを送信することないので、特定ページデータに含まれ得る特定情報(例えば、個人情報)に対するセキュリティを向上することができる。
上記プリンタ100は、プリインストール証明書格納領域131に格納されたプリインストール証明書を用いてSSL通信確立処理を行って通信を確立し得る。従って、ユーザインストール証明書格納領域142にユーザインストール証明書が格納されていなくても、特定ページデータ(特定情報)を送信することが可能となる。この結果、ユーザの負担を軽減することができる。また、ユーザインストール証明書格納領域142にユーザインストール証明書が格納されている場合には、これを優先して選択するので、ユーザの意図に沿った電子証明書を用いて、特定ページデータ(特定情報)を送信することが可能となる。
上記プリンタ100は、SSL通信確立処理(図2(b))よりも前(具体的には、プリンタ100の起動時)に、サーバ証明書の選択を実行し、その選択結果を示す情報を、選択結果格納領域121に格納する。従って、SSL通信確立処理を、選択結果を示す情報に基づくサーバ証明書を用いて速やかに実行できる。
上記プリンタ100は、上述した証明書選択処理を行うので、サーバ証明書の信頼性の違いや、ユーザの意図を考慮して適切なサーバ証明書を自動的に選択することができる。この結果、ユーザの負担を軽減することができる。
プリンタ100は、受信したHTTPリクエストの宛先ポート番号を用いて、HTTPリクエストがSSL通信にて受信されたか否かを容易に判断することができる。
上記実施例において、プリンタ100は、特許請求の範囲における通信装置の一例である。ユーザインストール証明書格納領域142は、特許請求の範囲における証明書格納部、第1証明書格納部の一例である。プリインストール証明書格納領域131は、特許請求の範囲における証明書格納部、第2証明書格納の一例である。選択結果格納領域121は、特許請求の範囲における選択結果格納部の一例である。
B.第2実施例:
第2実施例におけるプリンタの構成および動作について、第1実施例と異なる点について説明する。第2実施例におけるプリンタの、以下に説明する点以外の構成および動作は、第1実施例におけるプリンタ100と同一である。
B−1.第2実施例におけるプリンタの構成
図1において破線で示すように、第2実施例におけるプリンタの証明書管理部M20は、第1実施例におけるプリンタ100の証明書管理部M20の構成に加えて、証明書生成部M23と証明書更新部M24とを備えている。また、第2実施例におけるプリンタのRAM120は、第1実施例におけるプリンタ100のRAM120の構成に加えて、自動生成証明書格納領域122を有している。第2実施例におけるプリンタのマスクROM130は、プリインストール証明書格納領域131を有していない。すなわち、第2実施例におけるプリンタには、プリインストール証明書が格納されていない。
B−2.第2実施例における証明書選択処理
図9は、第2実施例における証明書選択処理の処理ステップを示すフローチャートである。第2実施例における証明書選択処理が、第1実施例における証明書選択処理(図3)と異なる点は、第1実施例における証明書選択処理のステップS506に代えて、ステップS506aとステップS507a(図9)を備える点である。他のステップの内容は、第1実施例における証明書選択処理(図3)における同名のステップと同一である。
ステップS506aでは、証明書生成部M23は、サーバ証明書を自動生成して、RAM120の自動生成証明書格納領域122に格納する。以下では、自動生成されたサーバ証明書を自動生成サーバ証明書とも呼ぶ。証明書生成部M23が自動生成するサーバ証明書は、第1実施例におけるプリインストール証明書と同等のサーバ証明書である。ただし、証明書生成部M23が自動生成するサーバ証明書は、有効期限がプリインストール証明書と比較して短い(例えば、10日)。
ステップS507aでは、証明書選択部M21は、ステップS506aにて自動生成されたサーバ証明書を使用するサーバ証明書として選択する。
B−3.証明書更新処理
図10は、証明書更新処理の処理ステップを示すフローチャートである。証明書更新処理は、上述した証明書生成部M23によって自動生成サーバ証明書を更新する処理である。証明書更新処理は、証明書更新部M24によって、所定間隔(例えば、12時間)で定期的に実行される。
証明書更新処理が開始されると、証明書更新部M24は、自動生成サーバ証明書の有効期限を取得する(ステップS1010)。証明書更新部M24は、取得した有効期限の残期間、すなわち、現在から有効期限までの期間が、所定期間(例えば、1日)以下であるか否かを判断する(ステップS1020)。証明書更新部M24は、残期間が所定期間以下であると判断すると(ステップS1020:YES)、ステップS560a(図9)の処理のごとくサーバ証明書を新たに自動生成し、これを自動生成証明書格納領域122(RAM120)に格納された既存の自動生成サーバ証明書に上書きすることで、自動生成サーバ証明書を更新する(ステップS30)。その後、証明書更新処理を終了する。このとき、サーバ証明書と関連付けられる秘密鍵も同時に更新される。証明書更新部M24は、残期間が所定期間よりも長いと判断すると(ステップS1020:NO)、証明書更新処理を終了する。
上記実施例において、自動生成証明書格納領域122は、特許請求の範囲における証明書格納部、第2証明書格納部の一例である。
第2実施例におけるプリンタによれば、ユーザインストール証明書がユーザインストール証明書格納領域142に格納されていない場合に、サーバ証明書を自動的に生成するので、サーバ証明書がないために、SSL通信が行えない事態を避けることができる。
さらに、自動生成されたサーバ証明書の自動更新を行うので、自動生成された電子証明書の有効期限が切れたために、SSL通信が行えない事態を避けることができる。例えば、長時間に亘ってプリンタ100の電源が投入されている場合などに有効である。
さらに、プリインストール証明書が格納されないので、プリンタ100の不揮発性の記憶領域の必要容量、例えば、マスクROM130の必要容量を抑制することができる。
C.変形例:
なお、上記実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
(1)上記実施例におけるプリンタ100のWEBサーバ部M10は、いわゆるHTTP通信とHTTPS通信とに対応しているが、これに限らず、セキュリティレベルの異なる他の2種類のプロトコルによりデータ要求を受け付けることができる場合であれば、本発明を適用することができる。例えば、セキュリティレベルの異なる2種類のプロトコルの組み合わせとしては、ftp(File Transfer Protocol)とftps(File Transfer Protocol over SSL)の組み合わせ、SNMPv1(Simple Network Management Protocol version 1)とSNMPv3の組み合わせ、telnetと、telnet/SSH(Secure SHell)の組み合わせなどがある。
(2)上記実施例におけるSSL通信は、電子証明書を用いて接続処理を経て確立される暗号化通信であるが、これに代えて、電子証明書を用いることなく、通信を行う双方の装置に共通鍵を予め格納させておき、その共通鍵を用いて行う暗号化通信が採用されても良い。
(3)上記実施例のプリンタ100では、信頼性の異なる複数種類のサーバ証明書を格納可能であるが、1種類のサーバ証明書のみが格納可能であっても良い。
(4)上記実施例のプリンタ100では、証明書選択処理をプリンタ100の起動時に実行しているが、SSL通信要求を受信してから証明書選択処理を実行しても良い。
(5)上記実施例のプリンタ100では、受信プロトコル判断部M13は、HTTPリクエストとともに送信される情報である、HTTPリクエストを格納するTCPパケットのヘッダに記述された宛先ポート番号を用いて、HTTPリクエストがSSL通信にて受信されたか否かを判断している。これに代えて、HTTPリクエストに含まれる情報、例えば、HTTPリクエストのリファラ(referrer)欄に記述されたURLの<scheme>を用いて判断しても良い。
(6)上記実施例では、WEBサーバ部M10の機能を有する通信装置としてプリンタが採用されているが、これに代えて、他の通信装置が採用されても良い。他の通信装置としては、スキャナ、ファクシミリ、複数の機能(印刷、スキャナ等)を有する複合機などの画像処理装置を採用可能である。あるいは、他の通信装置としては、パーソナルコンピュータ、ルータ、スイッチなどを採用可能である。
(7)上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
100...プリンタ、110...CPU、120...RAM、130...マスクROM、150...操作部、160...印刷部、200...クライアント、201...WEBブラウザ、202...アプリケーション、203...印刷ジョブ生成部、300...サーバ、M10...WEBサーバ部、M20...証明書管理部、M30...印刷制御部

Claims (6)

  1. 通信装置であって、
    電子証明書を格納する証明書格納部と、
    ユーザの格納指示に応じて前記電子証明書を前記証明書格納部に格納する証明書格納処理部と、
    第1のセキュリティレベルの通信にて送信されるデータ要求である第1のデータ要求と、前記第1のセキュリティレベルの通信より高いレベルのセキュリティが確保された第2のセキュリティレベルの通信であって、前記電子証明書を用いた接続処理を経て通信を確立するプロトコルを用いた前記第2のセキュリティレベルの通信にて送信されるデータ要求である第2のデータ要求とを受信する受信部と、
    特定データを要求するデータ要求である特定データ要求が前記受信部によって受信された場合に、前記特定データ要求が前記第1のデータ要求であるか前記第2のデータ要求であるかを判断する判断部と、
    前記特定データ要求が前記第2のデータ要求である場合には、前記特定データ要求の送信元である装置に対して前記特定データを送信し、前記特定データ要求が前記第1のデータ要求である場合には、前記送信元である装置に対して前記特定データとは異なる別データであって、前記送信元である装置に、前記特定データ要求を前記第2のセキュリティレベルの通信にて再送させるための表示情報を含む前記別データを送信する送信部と、
    を備え
    前記証明書格納部は、前記証明書格納処理部によって格納される前記電子証明書である第1の電子証明書を格納するための第1証明書格納部と、前記証明書格納処理部を介さずに格納される前記電子証明書である第2の電子証明書を格納するための第2証明書格納部と、を有し、
    前記通信装置は、さらに、
    前記第1証明書格納部に前記第1の電子証明書が格納されている場合には、前記第1の電子証明書を選択し、前記第1証明書格納部に前記第1の電子証明書が格納されていない場合には、前記第2の電子証明書を選択する証明書選択部を備え、
    前記送信部は、前記証明書選択部によって選択された前記電子証明書を用いた接続処理を経て確立された通信にて、前記特定データの送信を行う、通信装置。
  2. 請求項に記載の通信装置であって、さらに、
    前記証明書選択部による選択結果を示す情報を格納する選択結果格納部を備え、
    前記証明書選択部は、前記第2のデータ要求を受信するための前記接続処理の前に、前記電子証明書の選択を行い、前記選択結果を示す情報を前記選択結果格納部に格納する、通信装置。
  3. 請求項1または請求項のいずれかに記載の通信装置であって、さらに、
    前記判断部は、前記特定データ要求とともに送信される情報、または、前記特定データ要求に含まれる情報を用いて、前記特定データ要求が前記第1のデータ要求であるか前記第2のデータ要求であるかを判断する、通信装置。
  4. 請求項1ないし請求項3のいずれかに記載の通信装置であって、さらに、
    前記証明書格納部に前記電子証明書が格納されていない場合に、前記電子証明書を生成する証明書生成部を備える、通信装置。
  5. 請求項に記載の通信装置であって、さらに、
    前記証明書生成部によって生成された前記電子証明書の有効期限までの期間が、特定期間より短い場合に、前記証明書生成部によって生成された前記電子証明書を更新する証明書更新部を備える、通信装置。
  6. 電子証明書を格納する証明書格納部を備える通信装置の制御プログラムであって、
    ユーザの格納指示に応じて前記電子証明書を前記証明書格納部に格納する証明書格納処理機能と、
    第1のセキュリティレベルの通信にて送信されるデータ要求である第1のデータ要求と、前記第1のセキュリティレベルの通信より高いレベルのセキュリティが確保された第2のセキュリティレベルの通信であって、前記電子証明書を用いた接続処理を経て通信を確立するプロトコルを用いた前記第2のセキュリティレベルの通信にて送信されるデータ要求である第2のデータ要求とを受信する受信機能と、
    特定データを要求するデータ要求である特定データ要求が前記受信機能によって受信された場合に、前記特定データ要求が前記第1のデータ要求であるか前記第2のデータ要求であるかを判断する判断機能と、
    前記特定データ要求が前記第2のデータ要求である場合には、前記特定データ要求の送信元である装置に対して前記特定データを送信し、前記特定データ要求が前記第1のデータ要求である場合には、前記送信元である装置に対して前記特定データとは異なる別データであって、前記送信元である装置に、前記特定データ要求を前記第2のセキュリティレベルの通信にて再送させるための表示情報を含む前記別データを送信する送信機能と、
    を前記通信装置のコンピュータに実現させ
    前記証明書格納部は、前記証明書格納処理機能によって格納される前記電子証明書である第1の電子証明書を格納するための第1証明書格納部と、前記証明書格納処理機能を介さずに格納される前記電子証明書である第2の電子証明書を格納するための第2証明書格納部と、を有し、
    前記制御プログラムは、さらに、
    前記第1証明書格納部に前記第1の電子証明書が格納されている場合には、前記第1の電子証明書を選択し、前記第1証明書格納部に前記第1の電子証明書が格納されていない場合には、前記第2の電子証明書を選択する証明書選択機能を前記通信装置のコンピュータに実現させ、
    前記送信機能は、前記証明書選択機能によって選択された前記電子証明書を用いた接続処理を経て確立された通信にて、前記特定データの送信を行う、制御プログラム。
JP2011054069A 2011-03-11 2011-03-11 通信装置およびコンピュータプログラム Active JP5569440B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011054069A JP5569440B2 (ja) 2011-03-11 2011-03-11 通信装置およびコンピュータプログラム
US13/410,055 US9038190B2 (en) 2011-03-11 2012-03-01 Communication apparatus that communicate in different security levels and computer-readable media for controlling such apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011054069A JP5569440B2 (ja) 2011-03-11 2011-03-11 通信装置およびコンピュータプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014129980A Division JP5835415B2 (ja) 2014-06-25 2014-06-25 プリンタ

Publications (2)

Publication Number Publication Date
JP2012190320A JP2012190320A (ja) 2012-10-04
JP5569440B2 true JP5569440B2 (ja) 2014-08-13

Family

ID=46797276

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011054069A Active JP5569440B2 (ja) 2011-03-11 2011-03-11 通信装置およびコンピュータプログラム

Country Status (2)

Country Link
US (1) US9038190B2 (ja)
JP (1) JP5569440B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5569440B2 (ja) * 2011-03-11 2014-08-13 ブラザー工業株式会社 通信装置およびコンピュータプログラム
JP6155702B2 (ja) * 2013-03-01 2017-07-05 セイコーエプソン株式会社 印刷装置、印刷装置の制御方法、制御装置
JP6354336B2 (ja) * 2014-05-29 2018-07-11 ブラザー工業株式会社 クライアント装置、サービス実行システム、及びプログラム
JP6471537B2 (ja) 2015-02-27 2019-02-20 ブラザー工業株式会社 通信機器
JP2017151859A (ja) * 2016-02-26 2017-08-31 沖電気工業株式会社 情報処理装置およびプログラム
US10904069B2 (en) * 2016-11-29 2021-01-26 Brother Kogyo Kabushiki Kaisha Communication apparatus executing specific process related to security
JP6508188B2 (ja) * 2016-12-26 2019-05-08 トヨタ自動車株式会社 暗号通信システム
JP7134710B2 (ja) * 2018-05-24 2022-09-12 キヤノン株式会社 印刷装置、方法、およびプログラム
JP7134711B2 (ja) * 2018-05-24 2022-09-12 キヤノン株式会社 印刷装置、方法およびプログラム
JP7331500B2 (ja) * 2019-06-28 2023-08-23 コニカミノルタ株式会社 画像形成装置及びデータ転送方法
JP7337601B2 (ja) * 2019-08-28 2023-09-04 キヤノン株式会社 印刷装置、制御方法およびプログラム
JP7365175B2 (ja) * 2019-09-27 2023-10-19 キヤノン株式会社 情報処理装置、方法、プログラム
JP7459629B2 (ja) 2020-04-06 2024-04-02 株式会社リコー 表示装置、表示方法およびプログラム
CZ2020271A3 (cs) * 2020-05-14 2021-11-24 Aducid S.R.O. Programový systém a způsob autentizace
JP2022021379A (ja) 2020-07-22 2022-02-03 株式会社リコー 情報機器、方法およびプログラム

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001237820A (ja) 2000-02-25 2001-08-31 Nec Corp 認証用証明書書き換えシステム
US6842772B1 (en) * 2000-03-14 2005-01-11 Envoy World Wide, Inc Application program interface for message routing and management system
JP2002207636A (ja) * 2001-01-11 2002-07-26 Fuji Xerox Co Ltd ネットワーク装置
JP2002215826A (ja) * 2001-01-19 2002-08-02 Hitachi Ltd 証明書自動更新装置および方法
US8396926B1 (en) * 2002-07-16 2013-03-12 Sonicwall, Inc. Message challenge response
US7349951B2 (en) * 2003-05-12 2008-03-25 Hewlett-Packard Development Company, L.P. Systems and methods for accessing a printing service
US7395424B2 (en) * 2003-07-17 2008-07-01 International Business Machines Corporation Method and system for stepping up to certificate-based authentication without breaking an existing SSL session
JP4671638B2 (ja) * 2003-09-12 2011-04-20 株式会社リコー 通信装置、通信システム、通信方法及びプログラム
JP4712325B2 (ja) 2003-09-12 2011-06-29 株式会社リコー 通信装置、通信システム、通信方法及びプログラム
JP4509678B2 (ja) 2003-09-12 2010-07-21 株式会社リコー 証明書設定方法
JP4712330B2 (ja) * 2003-09-12 2011-06-29 株式会社リコー 通信装置、通信システム、通信方法及びプログラム
US8015393B2 (en) 2004-04-12 2011-09-06 Canon Kabushiki Kaisha Data processing device, encryption communication method, key generation method, and computer program
JP4789432B2 (ja) * 2004-06-29 2011-10-12 キヤノン株式会社 データ処理装置、データ処理装置の制御方法、コンピュータプログラム及び記憶媒体
JP2005311811A (ja) 2004-04-23 2005-11-04 Fuji Xerox Co Ltd 画像形成装置または機密通信装置
JP4520840B2 (ja) * 2004-12-02 2010-08-11 株式会社日立製作所 暗号化通信の中継方法、ゲートウェイサーバ装置、暗号化通信のプログラムおよび暗号化通信のプログラム記憶媒体
US7457417B1 (en) * 2005-01-31 2008-11-25 Ricoh Company, Ltd. Approach for configuring wireless devices
US20060279772A1 (en) * 2005-06-14 2006-12-14 Bottomline Technologies (De) Inc. Secure web based system for generating a printed document at a remote printer
US20060279771A1 (en) * 2005-06-14 2006-12-14 Bottomline Technologies (De) Inc. Server for generating a print object and making the pint object available for secure printing at a remote location
US8166525B2 (en) * 2005-09-08 2012-04-24 Xerox Corporation Document management system with public key infrastructure
JP2007094510A (ja) 2005-09-27 2007-04-12 Fujifilm Corp アプリケーションプログラムの終了処理モード設定方法、アプリケーションプログラムの終了処理モード設定プログラム
JP4449899B2 (ja) * 2005-12-28 2010-04-14 ブラザー工業株式会社 管理装置及びプログラム
JP2007213397A (ja) * 2006-02-10 2007-08-23 Fuji Xerox Co Ltd データ管理プログラム、データ管理装置およびプロトコルの切り替え方法
JP4345796B2 (ja) 2006-09-29 2009-10-14 ブラザー工業株式会社 通信方法、通信システムならびに通信システムを構成するサーバ、クライアントおよびコンピュータプログラム
JP2008135882A (ja) 2006-11-27 2008-06-12 Oki Electric Ind Co Ltd 接続支援装置、接続支援方法およびプログラム
US20090089811A1 (en) * 2007-09-27 2009-04-02 Andrew Rodney Ferlitsch Persistent per URL print settings
JP2009200565A (ja) * 2008-02-19 2009-09-03 Murata Mach Ltd デジタル複合機
US20100309510A1 (en) * 2009-06-09 2010-12-09 Accipiter Innovations, Llc Systems, methods and devices for printing from a mobile device
US8195818B2 (en) * 2009-06-22 2012-06-05 Oracle International Corporation Enforcing communication security for selected resources
JP5569440B2 (ja) * 2011-03-11 2014-08-13 ブラザー工業株式会社 通信装置およびコンピュータプログラム

Also Published As

Publication number Publication date
US9038190B2 (en) 2015-05-19
US20120233702A1 (en) 2012-09-13
JP2012190320A (ja) 2012-10-04

Similar Documents

Publication Publication Date Title
JP5569440B2 (ja) 通信装置およびコンピュータプログラム
JP4345796B2 (ja) 通信方法、通信システムならびに通信システムを構成するサーバ、クライアントおよびコンピュータプログラム
US7584351B2 (en) Method of transferring digital certificate,apparatus for transferring digital certificate, and system, program, and recording medium for transferring digital certificate
US7489783B2 (en) Digital certificate management system, digital certificate management apparatus, digital certificate management method, update procedure determination method and program
US7734910B2 (en) Managed device, management system, method for controlling a managed device and medium
JP4576210B2 (ja) 証明書転送装置、証明書転送システム、証明書転送方法、プログラム及び記録媒体
JP4449933B2 (ja) 電子証明書発行システム、電子証明書発行装置、通信装置、及び、プログラム
US8375214B2 (en) Information processing apparatus, information processing method, and program therefor
JP2007181139A (ja) 管理装置及びプログラム
JP4449931B2 (ja) 管理装置、および管理システム
JP2007274060A (ja) 通信装置および通信プログラム
JP4522771B2 (ja) 通信装置、通信システム、通信装置の制御方法及びプログラム
JP2011004385A (ja) 情報処理装置、相互認証方法、相互認証プログラム、情報処理システム、情報処理方法、情報処理プログラム及び記録媒体
US20220345319A1 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
US20200007347A1 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
JP5835415B2 (ja) プリンタ
JP4337853B2 (ja) アプリケーションプログラム配布装置、画像処理装置、及びプログラム
JP6108246B2 (ja) プリンタ
JP2007214979A (ja) 画像処理装置、転送装置、データ送信方法、プログラム、および記録媒体
JP2006251996A (ja) クライアント装置、画像処理システム、クライアント装置の制御方法、プログラム及び記録媒体
JP2004213067A (ja) サービス提供装置,画像形成装置、サービス提供方法および不正利用防止方法
JP4537797B2 (ja) 通信装置、通信システム、通信装置の制御方法及びプログラム
JP5729057B2 (ja) 通信装置、通信システムおよびプログラム
JP4542848B2 (ja) 通信装置、通信システム、通信装置の制御方法及びプログラム
JP4570919B2 (ja) 通信装置、通信システム、通信装置の制御方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130325

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140418

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140527

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140609

R150 Certificate of patent or registration of utility model

Ref document number: 5569440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150