JP6658221B2 - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
JP6658221B2
JP6658221B2 JP2016071818A JP2016071818A JP6658221B2 JP 6658221 B2 JP6658221 B2 JP 6658221B2 JP 2016071818 A JP2016071818 A JP 2016071818A JP 2016071818 A JP2016071818 A JP 2016071818A JP 6658221 B2 JP6658221 B2 JP 6658221B2
Authority
JP
Japan
Prior art keywords
target device
information
signal
authentication
communication
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
JP2016071818A
Other languages
English (en)
Other versions
JP2017184134A (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 JP2016071818A priority Critical patent/JP6658221B2/ja
Priority to US15/471,363 priority patent/US10051155B2/en
Priority to CN201710201001.6A priority patent/CN107425975B/zh
Publication of JP2017184134A publication Critical patent/JP2017184134A/ja
Application granted granted Critical
Publication of JP6658221B2 publication Critical patent/JP6658221B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4406Restricting access, e.g. according to user identity
    • H04N1/4433Restricting access, e.g. according to user identity to an apparatus, part of an apparatus or an apparatus function
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0037Topological details of the connection
    • H04N2201/0041Point to point
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Facsimiles In General (AREA)
  • Telephone Function (AREA)

Description

本明細書では、対象装置の認証を実行可能な通信装置を開示する。
特許文献1には、端末とサービス提供装置と認証装置とを備えるシステムが開示されている。端末は、非接触ICカードリーダを用いて、非接触ICカード又は携帯電話機からチップIDを読取り、当該チップIDをサービス提供装置に送信する。サービス提供装置は、チップIDを含む資格認証要求を認証装置に送信する。認証装置は、チップIDの認証を実行して、顧客の資格の有無を示す資格認証情報をサービス提供装置に送信する。サービス提供装置は、資格認証情報に応じて端末を動作させる。
特開2010−198505号公報 特開2015−069458号公報 米国特許出願公開2014/0168687号公報 米国特許出願公開2015/0029532号公報
上述したように、特許文献1には、端末が、複数種類のデバイス(即ち非接触ICカード及び携帯電話機)から送信される信号内のIDを読取って認証を実行することが開示されている。各デバイスは、通常、異なるベンダによって製造される。このために、各デバイスから送信される信号内にIDを記述するためのルールは、通常、各デバイスの間で異なる。例えば、非接触ICカードについては、ある信号内の第1の位置に第1のデータサイズを有するIDが記述される第1のルールが決められており、携帯電話機については、ある信号内の第1の位置とは異なる第2の位置に第1のデータサイズとは異なる第2のデータサイズを有するIDが記述される第2のルールが決められている。そして、端末は、非接触ICカードが近づけられる場合には、第1のルールに従ってIDを読取り、携帯電話機が近づけられる場合には、第2のルールに従ってIDを読取る。従って、端末は、複数のルールに対応する複数のプログラムを有していなければならない。
本明細書では、複数種類のデバイスから共通のルールに従った識別情報を取得して認証を実行し得る通信装置を開示する。
本明細書によって開示される通信装置は、所定規格に従った無線通信を実行するための無線インターフェースと、対象装置から、無線インターフェースを介して、所定規格で定められている2種以上の変調方式に対応する2種以上の信号のうちのいずれかの信号を受信する第1の受信部と、対象装置から2種以上の信号のうちのいずれかの信号が受信されても、対象装置から、無線インターフェースを介して、フォーマット情報を受信する第2の受信部であって、フォーマット情報は、対象装置が、所定規格で定められている所定のフォーマットであって、信号内に情報を記述するための所定のフォーマットをサポートしているのか否かを示す情報を含む、第2の受信部と、フォーマット情報が、対象装置が所定のフォーマットをサポートしていることを示す場合に、対象装置から、無線インターフェースを介して、所定のフォーマットで記述されている情報を含む特定の信号を受信する第3の受信部であって、フォーマット情報が、対象装置が所定のフォーマットをサポートしていないことを示す場合に、特定の信号は受信されない、第3の受信部と、所定のアプリケーションソフトウェアに関連する関連情報が特定の信号に含まれるのか否かを判断する第1の判断部と、関連情報が特定の信号に含まれると判断される場合に、特定の信号に含まれる第1の識別情報を利用して、対象装置の認証を実行する第1の認証部であって、関連情報が特定の信号に含まれないと判断される場合に、特定の信号に含まれる情報を利用した認証は実行されない、第1の認証部と、を備える。
上記の構成によると、通信装置は、複数種類のデバイスのいずれかである対象装置から、2種以上の変調方式に対応する2種以上の信号のうち、当該対象装置によってサポートされている変調方式に対応する信号を受信する。そして、通信装置は、2種以上の信号のいずれかの信号が受信されても、即ち、対象装置の種類に関わらず、対象装置が所定のフォーマットをサポートしている場合には、対象装置から、所定のフォーマットで記述されている情報を含む特定の信号を受信する。当該特定の信号は、所定のアプリケーションソフトウェアに関連する関連情報を含む場合に、さらに、第1の識別情報を含む。このために、通信装置は、複数種類のデバイスから共通のルールに従った第1の識別情報を取得することができ、第1の識別情報を利用して対象装置の認証を適切に実行し得る。
上記の通信装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。また、上記の通信装置と対象装置とを備える通信システムも、新規で有用である。
通信システムの構成を示す。 認証フラグOFF時処理のフローチャートを示す。 認証フラグON時処理のフローチャートを示す。 ID抽出処理のフローチャートを示す。 通信プロトコルのサポートの有無を示すテーブルである。 認証が実行されるケースのシーケンス図を示す。 認証が実行されないケースのシーケンス図を示す。 第2実施例において装置IDを認証に利用可能か否かを判断するためのテーブルである。 各通信タイプに対応する各応答信号を示す。 第2実施例及び第3実施例のシーケンス図を示す。
(通信システム2の構成;図1)
図1に示すように、通信システム2は、多機能機10(以下では「MFP(Multi-Function Peripheralの略)」と呼ぶ)と、認証カード50と、携帯端末70と、を備える。各装置10、50、70は、NFC(Near Field Communicationの略)方式に従った無線通信(以下では「NFC通信」と呼ぶ)を実行可能である。
(MFP10の構成)
MFP10は、操作部12と、表示部14と、印刷実行部16と、スキャン実行部18と、Wi−Fiインターフェース(以下ではインターフェースを「I/F」と記載する)20と、NFCI/F22と、制御部30と、を備える。
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をMFP10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。表示部14は、いわゆるタッチパネルとしても機能する。即ち、表示部14は、操作部としても機能する。印刷実行部16は、インクジェット方式、レーザ方式等の印刷機構である。スキャン実行部18は、CCD、CIS等のスキャン機構である。
Wi−FiI/F20は、Wi−Fi方式に従った無線通信(以下では「Wi−Fi通信」と呼ぶ)を実行するためのI/Fである。Wi−Fi方式は、例えば、IEEE(The Institute of Electrical and Electronics Engineers、 Inc.の略)の802.11の規格、及び、それに準ずる規格(例えば、802.11a、11b、11g、11n等)に基づく無線通信方式である。より具体的に言うと、Wi−FiI/F20は、Wi−Fi Allianceによって策定されたWFD(Wi-Fi Direct(登録商標)の略)方式をサポートしている。WFD方式は、Wi−Fi Allianceによって作成された規格書「Wi-Fi Peer-to-Peer (P2P) Technical Specification Version1.1」に記述されている無線通信方式である。
NFCI/F22は、NFC通信を実行するためのI/Fである。NFC方式は、例えば、ISO/IEC14443、15693、18092などの国際標準規格に基づく無線通信方式である。なお、NFC通信を実行するためのI/Fの種類として、NFCフォーラムデバイス(NFC Forum Device)と呼ばれるI/Fと、NFCタグ(NFC Tag)と呼ばれるI/Fと、が知られている。NFCフォーラムデバイスは、P2P(Peer To Peerの略)モード、R/W(Reader/Writerの略)モード、及び、CE(Card Emulationの略)モードのいずれかで選択的に動作可能なI/Fである。NFCタグは、これらのモードのいずれかで選択的に動作可能なI/Fではなく、NFC方式のIC(Integrated Circuitの略)タグとして機能する。
P2Pモードは、P2Pモードで動作する一方のNFC機器とP2Pモードで動作する他方のNFC機器との間で双方向通信を実行するためのモードである。R/Wモード及びCEモードは、R/Wモードで動作する一方のNFC機器とCEモードで動作する他方のNFC機器との間で単方向通信を実行するためのモードである。なお、CEモードは、セキュア・エレメントを必要とする通常のCEモードと、セキュア・エレメントを必要としないHCE(Host Card Emulationの略)モードと、を含む。R/WモードのうちのReaderモードは、CEモードで動作するNFC機器からデータを読み出すためのモードである。R/WモードのうちのWriterモードは、CEモードで動作するNFC機器にデータを書き込むためのモードである。なお、R/Wモードで動作するNFC機器は、NFCタグからデータを読み出したり、NFCタグにデータを書き込んだりすることもできる。
NFCI/F22は、NFCフォーラムデバイスである。NFCI/F22は、例えば、Polling信号を送信して、相手機器から当該信号に対する応答信号を受信する場合に、相手機器とのNFC通信リンクを確立する。また、NFCI/F22は、例えば、相手機器からPolling信号を受信して、当該信号に対する応答信号を相手機器に送信する場合に、相手機器とのNFC通信リンクを確立する。
ここで、NFC通信について詳しく説明する。NFC通信は、4種類の通信タイプ(即ち、タイプA、タイプB、タイプF、及び、タイプV)に分類される。各通信タイプでは、同じ周波数(即ち13.56MHz)が利用される。ただし、各通信タイプでは、通信規格、変調方式、及び、符号化方式の組合せが異なる。タイプAは、通信規格「ISO/IEC14443及び18092」、変調方式「ASK(Amplitude Shift Keyingの略)100%」、及び、符号化方式「Manchester」に従った通信である。タイプBは、通信規格「ISO/IEC14443」、変調方式「ASK10%」、符号化方式「NRZ(Non Return to Zeroの略)」に従った通信である。タイプFは、通信規格「ISO/IEC18092」、変調方式「ASK10%」、及び、符号化方式「Manchester」に従った通信である。タイプVは、通信規格「ISO/IEC15693」、変調方式「ASK10%又は100%」、符号化方式「Manchester」に従った通信である。
次いで、Wi−FiI/F20とNFCI/F22との間の相違点を説明しておく。Wi−FiI/F20を介したWi−Fi通信の通信速度(例えば最大の通信速度が11〜600Mbps)は、NFCI/F22を介したNFC通信の通信速度(例えば最大の通信速度が100〜424Kbps)よりも速い。また、Wi−FiI/F20を介したWi−Fi通信における搬送波の周波数(例えば2.4GHz帯又は5.0GHz帯)は、NFCI/F22を介したNFC通信における搬送波の周波数(例えば13.56MHz帯)とは異なる。また、Wi−FiI/F20を介したWi−Fi通信を実行可能な最大の距離(例えば最大で約100m)は、NFCI/F22を介したNFC通信を実行可能な最大の距離(例えば最大で約10cm)よりも大きい。
制御部30は、CPU32と、メモリ34と、を備える。CPU32は、メモリ34に格納されているプログラム36に従って、様々な処理を実行する。メモリ34は、揮発性メモリ、不揮発性メモリ等によって構成される。また、メモリ34は、認証フラグ38及びユーザテーブル40を格納する。認証フラグ38は、ユーザ情報を利用した認証を実行することを意味する「ON」と、当該認証を実行しないことを意味する「OFF」と、のどちらかの値を示す。認証フラグ38は、MFP10の管理者によって「ON」又は「OFF」に設定される。
ユーザテーブル40では、ユーザ名と、パスワードと、認証IDと、印刷許可情報と、スキャン許可情報と、が対応付けられる。ユーザ名、パスワード、印刷許可情報、及び、スキャン許可情報は、例えば、MFP10の管理者が、操作部12を操作することによって、又は、端末装置からMFP10にアクセスすることによって、ユーザテーブル40に登録される。印刷許可情報、スキャン許可情報は、それぞれ、印刷機能、スキャン機能をユーザに許可するのか否かを示す。各許可情報の「OK」は、機能の利用を許可することを示し、「NG」は、機能の利用を許可しないことを示す。認証IDは、認証カード50又は携帯端末70を識別するための識別情報であり、後述する処理によって認証カード50又は携帯端末70から抽出されて登録される。ここで、認証IDを一例として含む「識別情報」という用語は、1個の装置に固有(即ちユニーク)な情報であってもよいし、装置内の構成要素(例えばソフトウェア)を識別する情報であってもよいし、装置のモデルを示す情報であってもよい。即ち、識別情報は、1個の装置そのものを識別する情報に限定されず、ある概念を識別する情報も含む。なお、変形例では、ユーザテーブル40は、MFP10とは異なる外部装置のメモリ内に格納されてもよい。この場合、MFP10は、当該外部装置と通信して、ユーザテーブル40内の情報を利用することができる。
(認証カード50の構成)
認証カード50は、NFCタグであるNFCI/F52を備える。認証カード50は、通常、OSソフトウェア及びアプリケーションを有さない。NFCI/F52は、タイプA、B、F、及び、Vのいずれか1つのタイプに対応する(換言すると、1つのタイプのみをサポートしている)。タイプAに対応するNFCI/F52は、通信規格「ISO/IEC14443」に従ったI/F(即ちカード)であり、さらに、通信規格「ISO/IEC14443」に準拠した特定規格「ISO/IEC14443-4」に従ったI/Fと、特定規格「ISO/IEC14443-4」に従っていないI/Fと、に分類される。前者のI/Fは、非接触カード用の特定の通信プロトコル「T−CL」に準拠しているMifare Desfire系のカードであり、例えば、Mifare ProX、Mifare SmartMX、Mifare Desfire等を含む。また、後者のI/Fは、通信プロトコル「T−CL」に準拠していないMifare(登録商標)系のカードであり、例えば、Mifare Ultralight、Mifare Mini等を含む。タイプFに対応するNFCI/F52は、通信規格「ISO/IEC18092」に従ったカードであり、例えば、FeliCa Standard、FeliCa Liteなどのカードである。また、タイプVに対応するNFCI/F52は、通信規格「ISO/IEC15693」に従ったカードである。
(携帯端末70の構成)
携帯端末70は、例えば、携帯電話、スマートフォン、PDA、ノートPC、タブレットPC、携帯型音楽再生装置、携帯型動画再生装置等の可搬型の端末装置である。携帯端末70は、NFCI/F72と、OSソフトウェア74と、を備える。NFCI/F72は、NFCフォーラムデバイスである。OSソフトウェア74は、携帯端末70の種々の基本的な動作を制御するためのソフトウェアである。また、図示省略しているが、携帯端末70は、さらに、Wi−Fi通信を実行するためのWi−FiI/Fも備える。
携帯端末70は、さらに、印刷アプリケーション76と、認証アプリケーション78と、を有し得る。印刷アプリケーション76は、MFP10に印刷機能を実行させるためのアプリケーションである。認証アプリケーション78は、携帯端末70を利用して、MFP10に認証を実行させるためのアプリケーションである。各アプリケーション76、78は、MFP10のベンダによって提供されるアプリケーションであり、例えば、インターネット上のサーバから携帯端末70にインストールされる。
(認証フラグOFF時処理;図2)
続いて、図2を参照して、認証フラグ38が「OFF」に設定されている場合に、CPU32によって実行される処理について説明する。MFP10の電源がONされた際、又は、認証フラグ38を「ON」から「OFF」に変更するための操作が操作部12に実行された際に、図2の処理が開始される。
S10において、CPU32は、NFCI/F22のモード状態を、P2Pモード、R/Wモード、及び、CEモードの全てがONされているモード状態に設定する。この場合、NFCI/F22は、上記の3つのモードのいずれでも動作可能である。なお、変形例では、S10において、CPU32は、P2PモードのみがONされているモード状態に設定してもよいし、P2PモードとR/Wモード又はCEモードとがONされているモード状態に設定してもよい。即ち、CPU32は、少なくともP2PモードがONされているモード状態に設定すればよい。
S10において、CPU32は、さらに、タイプA、B、F、及び、Vに対応する4種類のPolling信号の送信をNFCI/F22に指示する。この結果、NFCI/F22は、各タイプに対応する各Polling信号を順次送信することを繰り返す。
S12において、CPU32は、携帯端末70とのP2P通信リンクが確立されることを監視する。ユーザが、P2PモードがONされているNFCI/F72を備える携帯端末70をMFP10に近づける。この場合、携帯端末70とMFP10との間の距離が、NFC通信を実行可能な最大の距離(例えば10cm)よりも小さくなり、この結果、P2P通信リンクが確立される。CPU32は、NFCI/F22からP2P通信リンクが確立されたことを示す情報を取得する場合に、S12でYESと判断して、S14に進む。
S14において、CPU32は、MFP10の動作状態を、WFD方式のデバイス状態から、WFD方式のGroup Owner状態(以下では「G/O状態」と呼ぶ)に移行させる。デバイス状態は、WFD方式に従った無線ネットワークの親局及び子局のどちらでも動作しない状態である。G/O状態は、当該無線ネットワークの親局として動作する状態である。なお、変形例では、CPU32は、WFD方式のG/O状態に移行する代わりに、いわゆるSoftAP(Access Pointの略)を起動して、無線ネットワークの親局として動作してもよい。S14において、CPU32は、さらに、当該無線ネットワークで利用されるべき無線設定(即ちSSID及びパスワード)を決定する。SSIDは、当該無線ネットワークを識別するための識別子である。パスワードは、当該無線ネットワークにおいて認証及び暗号化に利用される文字列である。CPU32は、例えば、予め決められている文字列を取得することによって、又は、ランダムに文字列を抽出することによって、無線設定を決定する。
S16において、CPU32は、S14で決定された無線設定をNFCI/F22に供給する。この結果、NFCI/F22は、P2P通信リンクを介して、無線設定を携帯端末70に送信する。これにより、携帯端末70が無線設定を受信し、携帯端末70が印刷アプリケーション76を備えている場合には、携帯端末70において無線設定が利用される。そして、Wi−Fi方式に従ったWi−Fi接続を確立するための様々な信号が、携帯端末70からMFP10に送信される。
S18において、CPU32は、Wi−FiI/F20を介して、携帯端末70とのWi−Fi接続を確立する。具体的には、CPU32は、上記のSSIDを含む信号、パスワードを含む信号等を受信し、パスワードの認証が成功すると、Wi−Fi接続を確立する。
S20において、CPU32は、S18で確立されたWi−Fi接続を利用して、Wi−FiI/F20を介して、携帯端末70から印刷対象の画像を表わす印刷データを受信する。上述のように、Wi−Fi通信の通信速度は、NFC通信の通信速度よりも速い。このために、NFC通信を利用して印刷データを通信する構成と比べると、MFP10は、携帯端末70から印刷データを迅速に受信することができる。
S22において、CPU32は、S20で受信された印刷データを印刷実行部16に供給して、印刷実行部16に印刷を実行させる。なお、変形例では、CPU32は、S20及びS22に代えて、スキャン実行部18に原稿のスキャンを実行させ、Wi−Fi接続を利用して、Wi−FiI/F20を介して、スキャンデータを携帯端末70に送信してもよい。このように、認証フラグ38が「OFF」に設定されている状況では、MFP10は、ユーザ情報の認証を実行することなく、いずれのユーザから指示を受けても、印刷機能及びスキャン機能を実行する(S20、S22)。
S24において、CPU32は、S18で確立されたWi−Fi接続を切断し、さらに、MFP10の動作状態をG/O状態からデバイス状態に移行させる。S24が終了すると、S12に戻る。
(認証フラグON時処理;図3)
続いて、図3を参照して、認証フラグ38が「ON」に設定されている場合に、CPU32によって実行される処理について説明する。認証フラグ38を「OFF」から「ON」に変更するための操作が操作部12に実行された際に、図3の処理が開始される。なお、以下では、認証カード50及び携帯端末70を総称して、「対象装置」と呼ぶ場合がある。
S100において、CPU32は、NFCI/F22のモード状態を、P2Pモード及びCEモードがOFFされていると共にR/WモードがONされているモード状態に設定する。この場合、NFCI/F22は、上記の3つのモードのうちのR/Wモードのみで動作可能である。認証フラグ38が「ON」に設定されている状況では、対象装置のIDの登録又は認証が実行される。ここで、対象装置が認証カード50である場合には、認証カード50(即ちNFCタグであるNFCI/F52)からIDを受信するためには、NFCI/F22がR/Wモード(より詳しくはReaderモード)で動作する必要がある。また、携帯端末70は、認証アプリケーション78に従って、NFC通信を利用して、IDを送信可能である。ここで、認証アプリケーション78は、NFCI/F72がCEモードで動作する状態でIDを送信するようにプログラムされている。従って、対象装置が携帯端末70である場合にも、携帯端末70(即ちNFCフォーラムデバイスであるNFCI/F72)からIDを受信するためには、NFCI/F22がR/Wモード(より詳しくはReaderモード)で動作する必要がある。このように、対象装置からIDを受信するためには、NFCI/F22がR/Wモードで動作する必要があるので、S100において、NFCI/F22がR/Wモードのみで動作可能なモード状態に設定される。
S100において、CPU32は、さらに、タイプA、B、F、及び、Vに対応する4種類のPolling信号の送信をNFCI/F22に指示する。この結果、NFCI/F22は、各タイプに対応する各Polling信号を順次送信することを繰り返す。
S110において、CPU32は、ユーザによってログイン操作が操作部12に実行されることを監視する。CPU32は、ユーザテーブル40に登録されているユーザ名及びパスワードの組合せが操作部12に入力される場合に、S110でYESと判断して、S120に進む。
S120において、CPU32は、認証IDをユーザテーブル40に登録するための登録ボタンが操作されたのか否かを判断する。CPU32は、登録ボタンが操作されたと判断する場合(S120でYES)に、S130に進む。一方、CPU32は、登録ボタンとは異なるボタンが操作されたと判断する場合(S120でNO)に、S122において、当該ボタンに対応する処理を実行する。例えば、CPU32は、外部サーバから印刷データを受信して印刷を実行するためのボタンが操作される場合には、S110で入力されたユーザ情報(即ちユーザ名及びパスワード)に対応する印刷許可情報が「OK」であるのか否かを判断する。そして、CPU32は、「OK」であると判断する場合には、印刷データを受信して、当該印刷データを印刷実行部16に供給する。また、例えば、CPU32は、スキャンを実行するためのボタンが操作される場合には、S110で入力されたユーザ情報に対応するスキャン許可情報が「OK」であるのか否かを判断する。そして、CPU32は、「OK」であると判断する場合には、スキャン実行部18にスキャンを実行させる。S122が終了すると、S110に戻る。なお、変形例では、CPU32は、S122が終了した後に、ログイン操作が再び実行されなくても、S122の処理を実行するための操作を受け付けてもよい。この状態は、ユーザによってログアウト操作が実行されるまで継続されてもよい。
S130において、CPU32は、対象装置から、NFCI/F22を介して、Polling信号に対する応答信号を受信することを監視する。上述のように、NFCI/F22は、各タイプに対応する各Polling信号を順次送信することを繰り返す。NFCI/F22は、例えば、タイプAに対応するPolling信号を送信した際に、当該信号に対する応答信号を受信する場合に、タイプAを示す情報を制御部30に供給する。同様に、NFCI/F22は、他の通信タイプに対応する応答信号を受信する場合に、当該タイプを示す情報を制御部30に供給する。CPU32は、NFCI/F22から上記の情報を取得する場合に、S130でYESと判断して、S132に進む。上述したように、タイプAでは変調方式「ASK100%」が利用され、タイプB又はFでは変調方式「ASK10%」が利用される。従って、4種類のPolling信号のうちの少なくとも2種類のPolling信号では、変調方式が異なる。従って、S130(又は後述のS150)で受信される応答信号は、2種以上の変調方式に対応する2種以上の応答信号のうちのいずれかの応答信号である。
S132において、CPU32は、S130で取得された情報に基づいて、応答信号を受信するための通信タイプを特定する。そして、S134において、CPU32は、ID抽出処理(図4参照)を実行する。NFCI/F22がR/Wモードのみで動作しているので、CPU32は、Readerとして機能することができ、この結果、対象装置から信号を受信して、当該信号内のIDを読み出す(即ち抽出する)ことができる。
S140において、CPU32は、IDの抽出が成功したのか否かを判断する。CPU32は、IDの抽出が成功した場合(例えば図4の「正常END」参照)には、S140でYESと判断し、S142において、S110で入力されたユーザ情報に対応する認証IDとして、S134で抽出されたIDをユーザテーブル40に登録する。S110で入力されたユーザ情報に対応する認証IDが既に登録されている場合には、S142において、CPU32は、ユーザ情報に対応する認証IDとして、対象装置のIDを上書きして登録する。なお、変形例では、CPU32は、S110で入力されたユーザ情報に対応する認証IDが既に登録されている場合には、当該ユーザ情報と、対象装置のIDと、が対応付けられている新たな情報をユーザテーブル40に新たに登録してもよい。即ち、この場合、1つのユーザ情報に対して複数の認証IDが登録される。
一方、CPU32は、IDの抽出が失敗した場合(例えば図4の「エラーEND」参照)には、S140でNOと判断し、S144において、認証IDの登録を実行不可能であることを示すエラー画面を表示部14に表示させる。これにより、ユーザは、認証IDの登録が失敗したことを知ることができる。S142又はS144が終了すると、S110に戻る。
また、S150において、CPU32は、対象装置から、NFCI/F22を介して、Polling信号に対する応答信号を受信することを監視する。S150は、S130と同様である。また、S150でYESの場合に実行されるS152、S154、及び、S160は、S132、S134、及び、S140と同様である。
S162において、CPU32は、S154で抽出されたIDの認証、即ち、対象装置の認証を実行する。CPU32は、抽出済みのIDに一致する認証IDがユーザテーブル40に登録されている場合に、認証が成功したと判断する。この場合、CPU32は、S122で説明した処理と同様に、ユーザからの指示に応じて、ユーザに許可されている機能を実行する。ここで、CPU32は、例えば、ユーザに許可されている機能のリストを示す画面を表示部14に表示させて、当該リストから機能を選択するための指示を受け付けてもよい。ユーザは、対象装置の認証をMFP10に実行させることにより、ログイン操作を実行しなくても、MFP10に機能を実行させることができる。なお、CPU32は、対象装置のIDに一致する認証IDがユーザテーブル40に登録されていない場合には、認証が失敗したと判断し、例えばエラー画面を表示部14に表示させて、S110に戻る。S136が終了すると、S102に戻る。なお、変形例では、CPU32は、S162が終了した後に、認証が再び実行されなくても、ユーザからの指示に応じた処理を実行するための操作を受け付けてもよい。この状態は、ユーザによってログアウト操作が実行されるまで継続されてもよい。
一方、CPU32は、IDの抽出が失敗した場合には、S160でNOと判断し、S164において、IDの認証(即ち対象装置の認証)を実行不可能であることを示すエラー画面を表示部14に表示させる。これにより、ユーザは、認証が失敗したことを知ることができる。この場合、CPU32は、印刷機能及びスキャン機能を実行しない。S162又はS164が終了すると、S110に戻る。なお、変形例では、エラー画面の表示(即ちS144及びS164)に代えて、エラーを示す音声が出力されてもよいし、エラーを示す画像が印刷されてもよい。
(ID抽出処理;図4)
続いて、図4を参照して、図3のS134又はS154で実行される処理の内容を説明する。処理の内容を説明する前に、NFC通信の通信レイヤについて説明しておく。NFC通信の通信レイヤは、最下層であるアナログ層と、アナログ層の上位層であるデジタルプロトコル層と、デジタルプロトコル層の上位層であるアクティビティ層と、アクティビティ層の上位層であるT1T〜T5T層と、を含む。図3のS130、S150の応答信号は、T1T〜T5T層以上の通信レイヤが利用されずに、アクティビティ層以下の通信レイヤが利用されて通信される。一方、後述の図4のS210及びS220の各信号は、T1T〜T5T層の通信レイヤが利用されて通信される。
S200において、CPU32は、図3のS130又はS150で受信済みの応答信号を利用して、対象装置が、T1T〜T5T層の通信を実行可能であるのか否か、即ち、NFC規格で定められているT1T〜T5Tの通信プロトコルのいずれかをサポートしているのか否かを判断する。具体的には、CPU32は、S132で特定された通信タイプと図5のテーブルとに基づいて、判断を実行する。
図5に示されるように、特定済みの通信タイプがタイプAである場合には、CPU32は、応答信号に含まれるSEL(SEL_RES Responseの略)信号内の第3ビット及び第6ビットの情報に基づいて、判断を実行する。具体的には、CPU32は、SEL信号内の第3ビットがONを示す場合には、SEL信号内の第6ビットの情報に関わらず、対象装置がT1T〜T5Tのいずれの通信プロトコルもサポートしていないと判断する。なお、応答信号に含まれるSENS(SENS_RES Responseの略)信号は、対象装置がT1Tをサポートしているのか否かを示すT1Tサポート情報を含み得る。CPU32は、SEL信号内の第3ビットがONを示し、かつ、SENS信号内のT1Tサポート情報がOFFを示す場合に、対象装置がT1T〜T5Tのいずれの通信プロトコルもサポートしていないと判断してもよい。また、CPU32は、SEL信号内の第3ビットがOFFを示す場合には、SEL信号内の第6ビットがONを示していれば、対象装置がT4Tをサポートしていると判断し、SEL信号内の第6ビットがOFFを示していれば、対象装置がT2Tをサポートしていると判断する。
特定済みの通信タイプがタイプBである場合には、CPU32は、応答信号に含まれるSENSB(SENSB_RES Responseの略)信号が、T4Tをサポートしていることを示すサポート情報を含むのか否かを判断する。CPU32は、SENSB信号がサポート情報を含む場合には、対象装置がT4Tをサポートしていると判断し、SENSB信号がサポート情報を含まない場合には、対象装置がT1T〜T5Tのいずれの通信プロトコルもサポートしていないと判断する。特定済みの通信タイプがタイプFである場合には、SENSB信号に代えて、応答信号に含まれるSENSF(SENSF_RES Responseの略)信号が利用される点と、T4Tをサポートしていることを示すサポート情報に代えて、T3Tをサポートしていることを示すサポート情報が利用される点を、を除くと、タイプBの場合と同様である。
また、特定済みの通信タイプがタイプVである場合には、CPU32は、応答信号に含まれるInventory信号を解釈可能であるのか否かを判断する。CPU32は、Inventory信号を解釈可能である場合には、対象装置がT5Tをサポートしていると判断し、Inventory信号を解釈不可能である場合には、対象装置がT1T〜T5Tのいずれの通信プロトコルもサポートしていないと判断する。
図4のS200では、CPU32は、対象装置がT1T〜T5Tのいずれかの通信プロトコルをサポートしていると判断する場合(S200でYES)には、S210に進む。一方、CPU32は、対象装置がT1T〜T5Tのいずれの通信プロトコルもサポートしていないと判断する場合(S200でNO)には、S210及びS220の各信号を受信不可能であるので、エラーENDとして図4の処理を終了する。この結果、図3のS140又はS160でNOと判断される。
S210において、CPU32は、NFCI/F22を介して、S200で特定された通信プロトコルを利用した通信、即ち、T1T〜T5T層のいずれかの通信レイヤを利用した通信(以下では「上位層通信」と呼ぶ)を、対象装置と実行する。CPU32は、上位層通信において、要求信号を対象装置に送信して、対象装置から応答信号を受信する。当該応答信号は、Format情報を含むFormat信号を含む。Format情報は、対象装置がNDEF(NFC Data Exchange Formatの略)をサポートしているのか否かを示す。対象装置は、NDEFをサポートしている場合には、NDEF領域を含むNDEF信号の通信を実行可能であり、NDEFをサポートしていない場合には、NDEF信号の通信を実行不可能である。NDEF領域は、自由に情報を記述可能な領域である。例えば、対象装置が携帯端末70である場合には、NDEF領域には、認証アプリケーション78によって生成されるID(以下では「生成ID」と呼ぶ)が記述される。
生成IDは、認証アプリケーション78の初回起動時に生成される。認証アプリケーション78は、携帯端末70のMACアドレスから所定バイト(例えば32バイト)を有する生成IDを生成する。生成IDは、2個以上の携帯端末の間で重複しないユニークなMACアドレスから生成されるために、ユニークなIDである。また、同じ携帯端末70では、認証アプリケーション78の初回起動時に生成された生成ID(即ち固定的なID)が継続して利用される。そして、認証アプリケーション78は、認証アプリケーション78のベンダ(即ちMFP10のベンダ)を示すベンダ情報と、生成IDと、をNDEF領域に記述する。なお、変形例では、認証アプリケーション78には、2個以上の認証アプリケーションの間で重複しないユニークなIDが予め割り当てられていてもよい。この場合、認証アプリケーション78は、当該IDをNDEF領域に記述してもよい。また、別の変形例では、認証アプリケーション78が、生成ID又は予め割り当てられているIDをOSソフトウェア74に供給し、OSソフトウェア74が、当該IDをNDEF領域に記述してもよい。即ち、IDを含むNDEF信号は、認証アプリケーション78に従って送信される信号であればよい。
S212において、CPU32は、Format信号に含まれるFormat情報に基づいて、対象装置がNDEFをサポートしているのか否かを判断する。CPU32は、対象装置がNDEFをサポートしていると判断する場合(S212でYES)に、SS220に進む。一方、CPU32は、対象装置がNDEFをサポートしていないと判断する場合(S212でNO)に、認証アプリケーション78がIDを記述可能なNDEF領域を含むNDEF信号の通信を実行することができないので、さらなる通信を実行することなく、エラーENDとして図4の処理を終了する。この結果、図3のS140又はS160でNOと判断される。
S220において、CPU32は、NFCI/F22を介して、さらなる上位層通信を対象装置と実行する。CPU32は、上位層通信において、要求信号を対象装置に送信し、対象装置から応答信号を受信する。当該応答信号は、NDEF領域を含むNDEF信号を含む。
S222において、CPU32は、NDEF信号に含まれるNDEF領域内の記述内容に基づいて、対象装置が認証アプリケーション78を有するのか否かを判断する。具体的には、CPU32は、MFP10のベンダを示すベンダ情報、即ち、認証アプリケーション78のベンダを示すベンダ情報が、NDEF領域に記述されている場合に、携帯端末70が認証アプリケーション78を有すると判断し(S222でYES)、S224に進む。一方、CPU32は、ベンダ情報がNDEF領域に記述されていない場合に、対象装置が認証アプリケーション78を有さないと判断し(S222でNO)、エラーENDとして図4の処理を終了する。なお、S212でYESと判断され、かつ、S222でNOと判断される場合には、対象装置は、NDEFを利用する何らかのアプリケーションを有しているが、当該アプリケーションが認証アプリケーション78ではないことを意味する。
S224において、CPU32は、NDEF領域内の生成IDを抽出する。この場合、CPU32は、正常ENDとして図4の処理を終了する。この結果、図3のS140又はS160でYESと判断され、S142又はS162では抽出済みの生成IDが利用される。
(具体的なケース;図6及び図7)
続いて、図6及び7を参照して、図3及び4の各処理によって実現される具体的なケースA〜Dについて説明する。各ケースA〜Dの初期状態では、認証フラグ38が「ON」に設定されており、この結果、NFCI/F22ではR/WモードのみがONされている(図3のS100)。
T10では、MFP10は、4つのタイプに対応する4種類のPolling信号を順次送信することを繰り返す(図3のS100)。
ケースAでは、対象装置は、通信タイプがタイプAに対応する携帯端末70Aである。携帯端末70Aには、認証アプリケーション78の初回起動時に生成された生成ID「A1」が割り当てられている。
MFP10は、T20において、ユーザ名「U3」及びパスワード「P3」の組合せを含むユーザ情報の入力(即ちログイン操作)を受け付け(図3のS110)、T22において、登録ボタンの操作を受け付ける(S120でYES)。
T30において、MFP10は、タイプAのPolling信号の送信に応じて、携帯端末70Aから、SEL信号を含むタイプAの応答信号を受信する(S130でYES)。MFP10は、SEL信号内の第3ビットがOFFを示し、かつ、第6ビットがONを示すので、対象装置がT4Tをサポートしていると判断し(図4のS200でYES)、T40において、対象装置とのT4T通信を実行して、携帯端末70Aから、Format情報を含むFormat信号と、NDEF領域を含むNDEF信号と、を受信する。具体的には、MFP10は、まず、Format信号を受信し(S210)、Format情報が、携帯端末70AがNDEFをサポートしていることを示すので(S212でYES)、さらに、NDEF信号を受信する(S220)。MFP10は、NDEF領域にベンダ情報「XXX」が含まれるので(S222でYES)、T50において、NDEF領域から生成ID「A1」を抽出する(S224)。T52では、MFP10は、ユーザ情報に対応付けて生成ID「A1」を認証IDとしてユーザテーブル40に登録する(図3のS142)。
なお、T52が完了すると、MFP10は、T20でログインしたユーザをログオフさせ、ユーザのログイン操作を監視(S110)、及び、Polling信号に対する応答信号を受信することを監視する(S150)。この状態において、ユーザが携帯端末70AをMFP10に再び近づけると、T60において、MFP10は、T30と同様に、タイプAの応答信号を受信する(S150でYES)。この場合、MFP10は、タイプAを特定する(S152)とともに、対象装置がT4Tをサポートしていると判断する(図4のS200でYES)。その後のT70、T80は、それぞれ、T40、T50と同様である。
T82において、MFP10は、携帯端末70Aの認証を実行する(S162)。MFP10は、T80で抽出された生成ID「A1」に一致する認証ID「A1」がユーザテーブル40に登録されているので、認証が成功したと判断する。この場合、MFP10は、ユーザ名「U3」に対応するユーザに許可されている機能を実行する。
(ケースB:図7)
ケースBでは、対象装置は、通信タイプがタイプAに対応する携帯端末70Bである。携帯端末70Bには、認証アプリケーション78がインストールされていないが、NDEFを利用する認証アプリケーション78とは異なるアプリケーションがインストールされている。
T130、T140は、それぞれ、図6のケースAのT60、T70と同様である。ただし、MFP10は、NDEF信号にベンダ情報が含まれないので、対象装置に認証アプリケーション78がインストールされていないと判断する(S222でNO)。この場合、MFP10は、IDを抽出することができないので(図3のS160でNO)、T150において、エラー画面を表示する(S164)。
(ケースC:図7)
ケースCでは、対象装置は、通信タイプがタイプAに対応する認証カード50Aであって、NDEFをサポートしていないMifare Mini(即ちMifare系)の認証カード50Aである。
T230は、ケースAのT60と同様である。MFP10は、T240において、対象装置とのT4T通信を実行して、認証カード50AからT4Tの応答信号を受信する。具体的には、MFP10は、Format信号を受信し(S210)、Format情報が、認証カード50AがNDEFをサポートしていないと判断する(S212でNO)。この場合、ケースBのT150と同様にT250が実行される。
(ケースD:図7)
ケースDでは、対象装置は、通信タイプがタイプAに対応する認証カード50Bであって、T1T〜T5Tのいずれの通信プロトコルをサポートしていないMifare Mini(即ちMifare系)の認証カード50Bである。
T330において、MFP10は、タイプAのPolling信号の送信に応じて、認証カード50Bから、SENS信号と、SEL信号と、を含むタイプAの応答信号を受信する(S130でYES)。MFP10は、SENS信号内のT1Tサポート情報がOFFを示し、かつ、SEL信号内の第3ビットがONを示すので、対象装置がT1T〜T5Tのいずれの通信プロトコルもサポートしていないと判断する(図4のS200でNO)。この場合、ケースBのT150と同様にT332が実行される。
(第1実施例の効果)
例えば、タイプAに対応する携帯端末(以下では「携帯端末(A)」と呼び)とタイプFに対応する携帯端末(以下では「携帯端末(F)」と呼ぶ)とが存在し、これらの携帯端末のそれぞれにIDが割り当てられている状況を想定する。携帯端末(A)と携帯端末(F)とは、異なる変調方式に対応するものであり、異なる種類の装置である。従って、これらの携帯端末がIDを信号内に記述するためのルールは、通常、各携帯端末を製造するベンダによって異なる。例えば、携帯端末(A)については、ある信号内の第1の位置に第1のデータサイズを有するIDが記述される第1のルールが決められており、携帯端末(F)については、ある信号内の第1の位置とは異なる第2の位置に第1のデータサイズとは異なる第2のデータサイズを有するIDが記述される第2のルールが決められる。従って、携帯端末(A)及び携帯端末(F)のそれぞれからIDを抽出するためには、複数のルールに対応する複数のプログラムが必要である。
これに対し、本実施例では、MFP10は、対象装置から2種以上の変調方式に対応する2種以上の応答信号のいずれが受信されても(図3のS150でYES)、即ち、携帯端末(A)及び携帯端末(F)のいずれから応答信号が受信されても、対象装置がNDEFをサポートしており(図4のS212でYES)、かつ、NDEF信号にベンダ情報が含まれている場合(S222でYES)に、認証アプリケーション78によってNDEF信号内に記述される生成IDを利用して、対象装置の認証を実行する。ここで、生成IDは、MFP10のベンダによって提供される認証アプリケーション78が生成してNDEF信号内に記述するIDである。このために、MFP10は、複数のルールに対応する複数のプログラムを備えていなくても、携帯端末(A)及び携帯端末(F)を含む対象装置から共通のルール(即ち認証アプリケーション78)に従った生成IDを取得することができ、生成IDを利用して対象装置の認証を適切に認証することができる。なお、タイプBに対応する携帯端末がさらに存在する状況でも、上記の効果は同様に得られる。
(対応関係)
MFP10が、「通信装置」の一例である。認証カード50及び携帯端末70が、「対象装置」の一例である。NFCI/F22が、「無線インターフェース」の一例である。
認証アプリケーション78が、「所定のアプリケーションソフトウェア」の一例である。ベンダ情報が、「関連情報」の一例である。生成IDが、「第1の識別情報」の一例である。各タイプに対応するPolling信号に対する各タイプの応答信号が、「所定規格で定められている2種以上の変調方式に対応する2種以上の信号」の一例である。Format信号及びNDEF信号が、「特定の信号」の一例である。T1T〜T5Tの通信プロトコルが、「所定の通信プロトコル」の一例である。アクティビティ層が「第1の通信レイヤ」の一例であり、T1T〜T5T層が「第2の通信レイヤ」の一例である。認証フラグ38が「OFF」である状態、「ON」である状態が、それぞれ、「第1の動作状態」、「第2の動作状態」の一例である。
図3のS150が、「第1の受信部」が実行する処理の一例である。図4のS210が、S220が、それぞれ、「第2の受信部」、「第3の受信部」が実行する処理の一例である。図4のS224を経た図3のS162が、「第1の認証部」が実行する処理の一例である。
(第2実施例)
本実施例では、図4のID抽出処理が第1実施例とは異なる。具体的には、S212でNOの場合及びS222でNOの場合に、S230に進む。S230において、CPU32は、図3のS130又はS150で受信済みの応答信号を利用して、受信済みの応答信号に含まれる装置IDが認証に利用可能であるのか否かを判断する。具体的には、CPU32は、図8のテーブルに基づいて、判断を実行する。
図8のテーブルを説明する前に、図9を参照して、各通信タイプに応じた各応答信号(図3のS130又はS150参照)と、装置IDと、について説明しておく。タイプAの応答信号は、SENS(SENS_RES Responseの略)信号と、SDD(SDD_RES Responseの略)信号と、SEL信号と、を含む。SDD信号は、タイプAの装置IDであるNFCID1を含み、SENS信号は、当該NFCIDのデータサイズを示す情報を含む。SEL信号は、図5を参照して説明した第3ビット及び第6ビットの情報と、他の情報(例えば第7ビットの情報)と、を含む。
タイプBの応答信号は、SENSB信号を含み、SENSB信号は、タイプBの装置IDであるNFCID0を含む。タイプFの応答信号は、SENSF信号を含み、SENSF信号は、PAD0と、タイプFの装置IDであるNFCID2と、を含む。PAD0は、対象装置のNFCI/FのICタイプを示す情報を含み、PMm(Manufacture Parameterの略)と言い換えることもできる。タイプVの応答信号は、Inventory信号を含み、Inventory信号は、タイプVの装置IDであるUID(Universal IDの略)を含む。
上述したように、装置IDは、通信タイプ毎に異なる名称を有するIDである。即ち、通信タイプA、B、F、Vに対応する装置IDは、それぞれ、「NFCID1」、「NFCID0」、「NFCID2」、「UID」である。NFCID0〜2は、NFCフォーラムで規定されており、UIDは、NFCフォーラムで規定されていない。
対象装置が認証カード50である場合には、装置IDは、各カードに予め割り当てられている。対象装置がタイプA、F、又は、Vに対応する認証カード50では、装置IDは認証カード毎にユニークなIDであり、2枚以上の認証カードの間で装置IDが重複しない。従って、タイプA、F、又は、Vに対応する認証カード50の装置IDは、認証に適している。一方、タイプBに対応する認証カード50では、複数枚の認証カードに同じ装置IDが割り当てられ得る。このために、タイプBに対応する認証カード50の装置IDは、認証に適していない。
また、対象装置が携帯端末70である場合には、装置IDは、OSソフトウェア74によって準備される。例えば、OSソフトウェア74は、SDD信号を送信すべき際に、ランダムに文字列を決定して、当該文字列を装置IDとして決定する。従って、仮に、携帯端末70から受信される装置IDがユーザテーブル40に登録されると(図3のS142)、その後に携帯端末70から受信される装置IDは、通常、登録済みの装置IDとは異なる。従って、携帯端末70から受信される装置IDは、認証に適していない。
図8のテーブルは、図3のS132又はS152で特定される通信タイプと、図4のS200で特定される通信プロトコルと、当該通信タイプ及び当該通信プロトコルに基づいて特定される対象装置の種類と、装置IDが認証に利用可能であるのか否かを判断するための方法と、判断結果と、を示す。特定済みの通信タイプがタイプAであり、かつ、特定済みの通信プロトコルがT2Tである場合には、CPU32は、対象装置がMifare系の認証カード50であると特定する。上述したように、タイプAに対応する認証カード(即ちMifare系の認証カード)の装置ID(即ちNFCID1)は、認証に適している。この場合、CPU32は、SEL信号に含まれる図示省略のカードタイプ(例えばMifare Mini)を特定し、特定済みのカードタイプについてNFC規格の仕様書で定義されているNFCID1のデータサイズを特定する。そして、CPU32は、SENS信号内に記述されているデータサイズが、特定済みのデータサイズに一致するのか否かを判断する。CPU32は、一致すると判断する場合には、NFCID1を認証に利用可能であると判断し、一致しないと判断する場合には、NFCID1を認証に利用不可能であると判断する。
特定済みの通信タイプがタイプAであり、かつ、特定済みの通信プロトコルがT4Tである場合には、CPU32は、対象装置がMifare Desfire系の認証カード50又は携帯端末70であると特定する。この場合、CPU32は、まず、SEL信号内の第7ビットがONを示すのかOFFを示すのかを判断する。SEL信号内の第7ビットは、対象装置がNFC_DEP(ISO/IEC18092で定義されたData Exchange Protocolの略)をサポートしているのか否かを示す。NFC_DEPをサポートしているとは、対象装置がP2P通信リンクを確立可能であること、即ち、対象装置が双方向通信を実行可能な携帯端末70であること、を意味する。従って、CPU32は、SEL信号内の第7ビットがONを示すと判断する場合には、対象装置が携帯端末70であると特定する。この場合、CPU32は、NFCID1を認証に利用不可能であると判断する。CPU32は、SEL信号内の第7ビットがOFFを示すと判断する場合には、さらに、SENS信号内のデータサイズが4バイトを示すのか7バイトを示すのかを判断する。Mifare Desfire系の認証カード50、携帯端末70は、それぞれ、NFCID1として、通常、7バイト、4バイトのデータサイズを採用する。従って、CPU32は、データサイズが4バイトを示すと判断する場合には、対象装置が携帯端末70であると特定し、NFCID1を認証に利用不可能であると判断する。また、CPU32は、データサイズが7バイトを示すと判断する場合には、対象装置がMifare Desfire系の認証カード50であると特定し、NFCID1を認証に利用可能であると判断する。なお、Mifare Desfire系の認証カード50であると判断するデータサイズ(本実施例では7バイト)は、Mifareの仕様書に記載されているデータサイズに基づいて設定される。
特定済みの通信タイプがタイプBであり、かつ、特定済みの通信プロトコルがT4Tである場合には、CPU32は、NFCID0を認証に利用不可能であると判断する。上述したように、通信タイプがタイプBである場合には、対象装置が携帯端末70及び認証カード50のいずれでも、NFCID0が認証に適していないためである。
特定済みの通信タイプがタイプFであり、かつ、特定済みの通信プロトコルがT3Tである場合には、CPU32は、SENSF信号内のPAD0が所定タイプ(例えば、06h、07h、10h〜13h、及び、14h〜1Fh)を示すのか否かを判断する。携帯端末70は、通常、PAD0として上記の所定タイプを採用し、認証カード50は、通常、PAD0として上記の所定タイプとは異なるタイプを採用する。従って、CPU32は、PAD0が所定タイプを示す場合には、対象装置が携帯端末70であると特定し、NFCID2を認証に利用不可能であると判断する。また、CPU32は、PAD0が所定タイプを示さない場合には、対象装置が認証カード50であると特定し、NFCID2を認証に利用可能であると判断する。なお、PAD0は、2byteの情報であり、本明細書及び図面に記載されているICタイプを示す情報(06h等)は、PAD0に含まれる情報の一部を示す
また、タイプVに対応する対象装置は、携帯端末70ではなく、認証カード50である。このために、特定済みの通信タイプがタイプVであり、かつ、特定済みの通信プロトコルがT5Tである場合には、CPU32は、対象装置が認証カード50であると特定し、UIDを認証に利用可能であると判断する。
図4のS230において、CPU32は、対象装置の装置IDを認証に利用可能であると判断する場合(S230でYES)には、S232において、通信タイプに応じた装置IDを抽出する。具体的には、タイプAの応答信号を受信済みである場合には、CPU32は、SDD信号からNFCID1を抽出する。また、CPU32は、タイプFのSENSF信号、又は、タイプVのInventory信号から、NFCID2又はUIDを抽出する。この場合、CPU32は、正常ENDとして図4の処理を終了する。一方、CPU32は、対象装置の装置IDを認証に利用不可能であると判断する場合(S230でNO)には、エラーENDとして図4の処理を終了する。
(具体的なケースE;図10)
続いて、図10を参照して、第2実施例で実現されるケースEについて説明する。ケースEでは、対象装置は、通信タイプがタイプAに対応するMifare Mini(即ちMifare系)の認証カード50Cである。認証カード50Cには、NFCID1「A5」が予め割り当てられている。なお、仕様書で定義されているMifare MiniのNFCID1のデータサイズは、4バイトである。
MFP10は、T430において、タイプAのPolling信号の送信に応じて、認証カード50Cから、SENS信号と、NFCID1「A5」を含むSDD信号と、SEL信号と、を含むタイプAの各応答信号を順次受信する(図3のS150でYES)。この場合、MFP10は、タイプAを特定する(S152)。
MFP10は、SEL信号内の第3ビットがOFFを示し、かつ、第6ビットがOFFを示すので、対象装置がT2Tをサポートしていると判断し(図5参照、図4のS200でYES)、T440において、対象装置とT2T通信を実行して、認証カード50Cから、Format信号を受信する。MFP10は、Format情報が、認証カード50CがNDEFをサポートしていないことを示すので(S212でNO)、受信済みのSDD信号に含まれるNFCID1を認証に利用可能であるのか否を判断する(S230)。具体的には、MFP10は、特定済みの通信タイプがタイプAであり、かつ、特定済みの通信プロトコルがT2Tであるので、対象装置がMifare系の認証カードであると特定する。特に、MFP10は、SEL信号内のカードタイプを示す情報に基づいて、対象装置がMifare Miniの認証カード50Cであると判断する。そして、MFP10は、SENS信号内のデータサイズ情報が4バイトを示すので、SENS信号内のデータサイズが、仕様書で定義されるMifare Miniのデータサイズに一致すると判断し、SDD信号に含まれるNFCID1を認証に利用可能であると判断する(S230でYES)。
T450において、MFP10は、SDD信号からNFCID1「A5」を抽出する(S232)。T452において、MFP10は、NFCID1「A5」を利用して、認証カード50Cの認証を実行する(図3のS162)。
(第2実施例の効果)
本実施例によると、MFP10は、対象装置がNDEFをサポートしていない場合(図4のS212でNO)、又は、対象装置に認証アプリケーション78がインストールされていない場合(S222でNO)に、生成IDとは異なる装置IDを利用して、対象装置の認証を実行することができる(S232、図3のS162)。特に、MFP10は、装置IDを認証に利用可能であるのか否かを判断し(S230)、利用可能であると判断された装置IDを利用して、対象装置の認証を実行する。このために、MFP10は、装置IDを利用して、対象装置の認証を適切に実行することができる。即ち、MFP10は、生成ID又は装置IDを利用して、対象装置の認証を適切に実行することができる。
(対応関係)
装置IDが、「第1の識別情報とは異なる識別情報」及び「第2の識別情報」の一例である。図4のS230が、「第2の判断部」によって実行される処理の一例である。図4のS232を経た図3のS162が、「第2の認証部」が実行する処理の一例である。
(第3実施例)
本実施例では、図4のID抽出処理が第2実施例とは異なる。具体的には、S212でNOの場合又はS222でNOの場合に、S240に進む。S240において、CPU32は、S200で特定された通信プロトコルを利用した上位層通信(例えばT4T通信)を実行して、要求信号を対象装置に送信し、対象装置からNDEFに依存しない非依存信号を受信する。非依存信号は、対象装置のNFCI/F内のメモリに書き込まれているデータを含む。
S242において、CPU32は、非依存信号に識別IDが含まれているのか否かを判断する。本実施例では、プログラム36は、タイプBの認証カード50に識別IDを記述するためのルールに対応するプログラムを含む。当該ルールは、タイプBの認証カード50のベンダによって決められているルールであり、非依存信号の所定位置に所定サイズの識別IDを記述することを定義している。また、識別IDは、タイプBの認証カード50のベンダが、個々の認証カード50に割り当てるユニークなIDである。このために、識別IDは、認証に適している。S242では、CPU32は、非依存信号の所定位置に所定サイズの識別IDが記述されているのか否かを判断することによって、非依存信号に識別IDが含まれているのか否かを判断する。
CPU32は、非依存信号に識別IDが含まれていると判断する場合(S242でYES)には、S244において、非依存信号内の識別IDを抽出する。この場合、CPU32は、正常ENDとして図4の処理を終了する。この結果、図3のS140又はS160でYESと判断され、S142又はS162では抽出済みの識別IDが利用される。一方、CPU32は、非依存信号に識別IDが含まれていないと判断する場合(S242でNO)には、S230に進む。なお、変形例では、S242でNOの場合に、S230に進まずに、エラーENDとして処理を終了してもよく、この場合、S212又はS222でNOの場合にも、S230に進まずに、エラーENDとして処理を終了してもよい。
なお、変形例では、プログラム36は、タイプBの認証カード50のためのルールに代えて又は当該ルールに加えて、他のタイプの認証カード50又は携帯端末70のためのルールに対応するプログラムを含んでいてもよい。この場合、CPU32は、プログラム36に応じたルールを利用して、S242の判断を実行する。
(具体的なケースF;図10)
続いて、図10を参照して、第3実施例で実現されるケースFについて説明する。ケースFでは、対象装置は、通信タイプがタイプBに対応する認証カード50Dである。認証カード50Dには、NFCID0「A6」と、NFCID0とは異なる識別ID「A7」と、が予め割り当てられている。
T530において、MFP10は、タイプBのPolling信号の送信に応じて、認証カード50Dから、SENSB信号を含むタイプBの応答信号を受信する(S130でYES)。次いで、T540において、MFP10は、対象装置とのT4T通信を実行して、認証カード50Dから、Format情報を含むFormat信号を受信する。MFP10は、Format情報が、認証カード50DがNDEFをサポートしていないことを示すので(S212でNO)、さらに、認証カード50Dから非依存信号を受信する(S240)。非依存信号に識別ID「A7」が含まれるので(S242でNO)、MFP10は、T550において、識別ID「A7」を抽出し(S244)、T552において、抽出済みの識別ID「A7」を利用して、認証カード50Dの認証を実行する。ここで、MFP10は、SENSB信号に含まれるNFDID0を利用して、認証を実行しない。上述したように、タイプBに対応するNFDID0は、認証に適していないからである。
(第3実施例の効果)
本実施例によると、MFP10は、対象装置がNDEFをサポートしていない場合(図4のS212でNO)に、生成IDとは異なる識別ID、即ち、NDEFに依存しない非依存信号に含まれる識別IDを利用して、対象装置の認証を実行することができる(S244、図3のS162)。即ち、MFP10は、生成ID、装置ID、又は、識別IDを利用して、対象装置の認証を適切に実行することができる。
(対応関係)
識別IDが、「第1の識別情報とは異なる識別情報」及び「第3の識別情報」の一例である。図4のS232又はS244を経た図3のS162が、「第2の認証部」が実行する処理の一例である。
(変形例1)CPU32は、図3のS110でYESと判断する場合に、NFCI/F22のモード状態を、P2Pモード、R/Wモード、及び、CEモードの全てがONされているモード状態に変更してもよい。この状態では、CPU32は、図2と同様に、印刷機能を実行し得る。また、CPU32は、S120でYESと判断する場合に、NFCI/F22のモード状態を、P2Pモード及びCEモードがOFFされており、かつ、R/WモードがONされているモード状態に変更してもよい。この場合、CPU32は、対象装置からIDを抽出して登録するための処理(S130〜S142)を適切に実行することができる。本変形例でも、認証フラグ38が「OFF」である状態、「ON」である状態が、それぞれ、「第1の動作状態」、「第2の動作状態」の一例である。別の観点では、ログイン操作後に登録ボタンが操作されていない状態、登録ボタンが操作された後の状態が、それぞれ、「第1の動作状態」、「第2の動作状態」の一例である。また、別の変形例では、NFCI/F22のモード状態は、少なくともR/WモードがONされているモード状態に固定されてもよい。即ち、「インターフェース制御部」を省略可能である。
(変形例2)
MFP10は、認証フラグ38を有していなくてもよい。この場合、CPU32は、図2の処理を実行しない。即ち、「送信部」を省略可能である。
(変形例3)いずれの対象装置もT1T〜T5Tの通信プロトコルのいずれかをサポートしている環境下では、図4のS200を省略して、S210以降の処理が実行されてもよい。即ち、「第3の判断部」を省略可能である。
(変形例4)携帯端末70は、認証アプリケーション78を利用して、ベンダ情報と生成IDとを認証カード50に書き込んでもよい。この場合、ユーザが、認証カード50をMFP10に近づけると、CPU32は、図4のS200〜S224の処理を実行して、認証カード50に書き込まれている生成IDを抽出する。このように、生成IDが抽出される対象装置は、携帯端末70に限られず、認証カード50であってもよい。
(変形例5)CPU32は、図4のS220において、生成IDに代えて、ユーザ情報(ユーザ名及びパスワード)を受信してもよい。例えば、ユーザが認証アプリケーション78を起動すると、ユーザ情報を入力可能な画面が携帯端末70に表示される。ユーザがユーザテーブル40に登録されているユーザ情報を入力する場合に、携帯端末70は入力されたユーザ情報を記憶する。ユーザが携帯端末70をMFP10に近づけて、MFP10と携帯端末70とのNFC通信が確立されると、S220において、CPU32は、携帯端末70からユーザ情報を含むNDEF信号を受信する。この場合、S224において、CPU32は、NDEF信号からユーザ情報を抽出し、当該ユーザ情報とユーザテーブル40に登録されているユーザ情報とが一致する場合に、認証が成功したと判断する。本変形例では、CPU32は、認証IDの登録を実行する必要が無い。従って、図3のS120、S130〜S144の処理を省略することができる。
(変形例6)ユーザテーブル40への認証IDの登録は、管理者が操作部12を操作することによって実行されてもよい。この場合、図3のS120、S130〜S144を省略可能である。
(変形例7)図2のS10において、CPU32は、NFCI/F22のモード状態を、CEモードのみがONされているモード状態に設定してもよい。この場合、S12において、CPU32は、NFCI/F22がCEモードで動作すると共にNFCI/F72がR/Wモードで動作するCE−R/W通信リンクが確立されることを監視する。S14〜S24の処理は、上記の実施例と同様である。ただし、S16の結果として、NFCI/F22は、CE−R/W通信リンクを介して、無線設定を携帯端末70に送信する。一般的に言うと、「第1のモード状態」は、P2Pモード及びCEモードのうちの少なくとも一方のモードが有効化されている状態であればよい。
(変形例8)ユーザテーブル40は、ショートカット機能を示すショートカット情報を格納していてもよい。ショートカット情報は、例えば、スキャン設定、スキャンデータの宛先等を示す情報であってもよい。この場合、CPU32は、対象装置の認証が成功した場合(S162)に、認証が成功した認証IDに対応するショートカット情報に含まれるスキャン設定に従ったスキャンを実行し、その後、ショートカット情報に含まれる宛先にスキャンデータを送信する。
(変形例9)「無線インターフェース」は、NFC通信を実行するためのI/Fでなくてもよく、例えば、BlueTooth(登録商標)、TransferJet(登録商標)等の他の通信方式に従った無線通信を実行するためのI/Fであってもよい。
(変形例10)「通信装置」は、複数の機能を実行可能なMFP10でなくてもよく、印刷機能のみを実行可能な印刷装置、スキャン機能のみを実行可能なスキャナ装置等であってもよい。
(変形例11)上記の実施例では、MFP10のCPU32がプログラム36(即ちソフトウェア)を実行することによって、図2〜図4の各処理が実現される。これに代えて、図2〜図4の各処理のうちの少なくとも1つの処理は、論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
以下は、出願時の特許請求の範囲に対応する記載である。
(項目1)
通信装置であって、
所定規格に従った無線通信を実行するための無線インターフェースと、
対象装置から、前記無線インターフェースを介して、前記所定規格で定められている2種以上の変調方式に対応する2種以上の信号のうちのいずれかの信号を受信する第1の受信部と、
前記対象装置から前記2種以上の信号のうちのいずれかの信号が受信されても、前記対象装置から、前記無線インターフェースを介して、フォーマット情報を受信する第2の受信部であって、前記フォーマット情報は、前記対象装置が、前記所定規格で定められている所定のフォーマットであって、信号内に情報を記述するための前記所定のフォーマットをサポートしているのか否かを示す情報を含む、前記第2の受信部と、
前記フォーマット情報が、前記対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記対象装置から、前記無線インターフェースを介して、前記所定のフォーマットで記述されている情報を含む特定の信号を受信する第3の受信部であって、前記フォーマット情報が、前記対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記特定の信号は受信されない、前記第3の受信部と、
所定のアプリケーションソフトウェアに関連する関連情報が前記特定の信号に含まれるのか否かを判断する第1の判断部と、
前記関連情報が前記特定の信号に含まれると判断される場合に、前記特定の信号に含まれる第1の識別情報を利用して、前記対象装置の認証を実行する第1の認証部であって、前記関連情報が前記特定の信号に含まれないと判断される場合に、前記特定の信号に含まれる情報を利用した前記認証は実行されない、前記第1の認証部と、
を備える通信装置。
(項目2)
前記フォーマット情報が、前記対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記第1の識別情報とは異なる識別情報を利用して、前記対象装置の認証を実行する第2の認証部を備える、項目1に記載の通信装置。
(項目3)
前記第2の認証部は、前記2種以上の信号のうちの受信済みの信号に含まれる第2の識別情報であって、前記第1の識別情報とは異なる前記第2の識別情報を利用して、前記対象装置の認証を実行する、項目2に記載の通信装置。
(項目4)
前記通信装置は、さらに、
前記2種以上の信号のうちの前記受信済みの信号を利用して、前記第2の識別情報を認証に利用可能であるのか否かを判断する第2の判断部を備え、
前記第2の認証部は、前記第2の識別情報を認証に利用可能であると判断される場合に、前記第2の識別情報を利用して、前記対象装置の認証を実行し、
前記第2の識別情報を認証に利用可能でないと判断される場合に、前記第2の識別情報を利用した前記対象装置の認証は実行されない、項目3に記載の通信装置。
(項目5)
前記通信装置は、さらに、
前記フォーマット情報が、前記対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記対象装置から、前記無線インターフェースを介して、前記所定のフォーマットに依存しない非依存信号を受信する第4の受信部を備え、
前記第2の認証部は、前記非依存信号が、前記第1の識別情報とは異なる第3の識別情報を含む場合に、前記第3の識別情報を利用して、前記対象装置の認証を実行する、項目2から4のいずれか一項に記載の通信装置。
(項目6)
前記通信装置は、さらに、
前記2種以上の信号のうちの前記受信済みの信号を利用して、前記対象装置が前記所定規格で定められている所定の通信プロトコルをサポートしているのか否かを判断する第3の判断部を備え、
前記第2の受信部は、前記対象装置が前記所定の通信プロトコルをサポートしていると判断される場合に、前記対象装置から前記フォーマット情報を受信し、
前記対象装置が前記所定の通信プロトコルをサポートしていないと判断される場合に、前記フォーマット情報は受信されない、項目1から5のいずれか一項に記載の通信装置。
(項目7)
前記所定規格は、NFC(Near Field Communicationの略)規格である、項目1から6のいずれか一項に記載の通信装置。
(項目8)
前記所定のフォーマットは、NDEF(NFC Data Exchange Formatの略)である、項目7に記載の通信装置。
(項目9)
前記第1の受信部は、前記所定規格で定められている第1の通信レイヤを利用して、前記所定規格で定められている第2の通信レイヤであって、前記第1の通信レイヤよりも上位である前記第2の通信レイヤを利用せずに、前記2種以上の信号のうちのいずれかの信号を受信し、
前記第2の受信部は、前記第2の通信レイヤを利用して、前記フォーマット情報を受信し、
前記第3の受信部は、前記第2の通信レイヤを利用して、前記特定の信号を受信する、項目1から8のいずれか一項に記載の通信装置。
(項目10)
前記通信装置が第1の動作状態に設定されている間に、前記対象装置から前記2種以上の信号のうちのいずれかの信号が受信される場合に、
前記第2の受信部は、前記フォーマット情報を受信し、
前記第3の受信部は、前記フォーマット情報が、前記対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記対象装置から前記特定の信号を受信し、
前記第1の判断部は、前記関連情報が前記特定の信号に含まれるか否かを判断し、
前記第1の認証部は、前記関連情報が前記特定の信号に含まれると判断される場合に、前記第1の識別情報を利用して、前記対象装置の認証を実行し、
前記通信装置は、さらに、
前記通信装置が前記第1の動作状態とは異なる第2の動作状態に設定されている間に、前記対象装置から前記2種以上の信号のうちのいずれかの信号が受信される場合に、前記無線インターフェースを介して、無線設定情報を前記対象装置に送信する送信部を備え、
前記無線設定情報は、前記通信装置と前記対象装置との間に、前記無線インターフェースとは異なるインターフェースを介した無線接続を確立するための情報である、項目1から9のいずれか一項に記載の通信装置。
(項目11)
前記所定規格は、NFC(Near Field Communicationの略)規格であり、
前記通信装置は、さらに、
前記無線インターフェースのモード状態を制御するインターフェース制御部を備え、
前記インターフェース制御部は、
前記通信装置の動作状態が前記第1の動作状態から前記第2の動作状態に変更される場合に、前記無線インターフェースのモード状態を、前記NFC規格のP2P(Peer to Peerの略)モード及びCE(Card Emulationの略)モードのうちの少なくとも一方のモードが有効化されている第1のモード状態に設定し、
前記通信装置の動作状態が前記第2の動作状態から前記第1の動作状態に変更される場合に、前記無線インターフェースのモード状態を、前記NFC規格の前記P2Pモード及びCEモードが無効化されていると共に、前記NFC規格のR/W(Reader/Writerの略)モードが有効化されている第2のモード状態に設定する、項目10に記載の通信装置。
(項目12)
通信装置のためのコンピュータプログラムであって、
前記通信装置に搭載されるコンピュータに、以下の処理、即ち、
対象装置から、無線インターフェースを介して、所定規格で定められている2種以上の変調方式に対応する2種以上の信号のうちのいずれかの信号を受信する第1の受信処理であって、前記無線インターフェースは、前記所定規格に従った無線通信を実行するためのインターフェースである、前記第1の受信処理と、
前記対象装置から前記2種以上の信号のうちのいずれかの信号が受信されても、前記対象装置から、前記無線インターフェースを介して、フォーマット情報を受信する第2の受信処理であって、前記フォーマット情報は、前記対象装置が、前記所定規格で定められている所定のフォーマットであって、信号内に情報を記述するための前記所定のフォーマットをサポートしているのか否かを示す情報を含む、前記第2の受信処理と、
前記フォーマット情報が、前記対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記対象装置から、前記無線インターフェースを介して、前記所定のフォーマットで記述されている情報を含む特定の信号を受信する第3の受信処理であって、前記フォーマット情報が、前記対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記特定の信号は受信されない、前記第3の受信処理と、
所定のアプリケーションソフトウェアに関連する関連情報が前記特定の信号に含まれるのか否かを判断する第1の判断処理と、
前記関連情報が前記特定の信号に含まれると判断される場合に、前記特定の信号に含まれる第1の識別情報を利用して、前記対象装置の認証を実行する第1の認証処理であって、前記関連情報が前記特定の信号に含まれないと判断される場合に、前記特定の信号に含まれる情報を利用した前記認証は実行されない、前記第1の認証処理と、
を実行させるコンピュータプログラム。
2:通信システム、10:多機能機(MFP)12:操作部、14:表示部、16:印刷実行部、18:スキャン実行部、20:Wi−FiI/F、22:NFCI/F、30:制御部、32:CPU、34:メモリ、36:プログラム、38:認証フラグ、40:ユーザテーブル、50,50A〜50D:認証カード、52:NFCI/F、70,70A,70B:携帯端末、72:NFCI/F、74:OSソフトウェア、76:印刷アプリケーション、78:認証アプリケーション

Claims (12)

  1. 通信装置であって、
    所定規格に従った無線通信を実行するための無線インターフェースと、
    前記無線インターフェースを介して、前記所定規格で定められている2種以上の変調方式であって、第1の変調方式と、前記第1の変調方式とは異なる第2の変調方式と、を含む前記2種以上の変調方式に対応するポーリング信号を順次送信する第1の送信部と、
    前記第1の変調方式に対応する第1のポーリング信号の送信に応じて、第1の対象装置から、前記無線インターフェースを介して、前記第1のポーリング信号に対する第1の応答信号を受信する第1の受信部と、
    前記第1の対象装置から前記第1の応答信号が受信される場合に、前記第1の対象装置から、前記無線インターフェースを介して、第1のフォーマット情報を受信する第2の受信部であって、前記第1のフォーマット情報は、前記第1の対象装置が、前記所定規格で定められている所定のフォーマットであって、前記第1の対象装置から前記通信装置に送信される第1の特定の信号内に情報を記述するための前記所定のフォーマットをサポートしているのか否かを示所定のアプリケーションソフトウェアが前記第1の対象装置にインストールされている場合に、当該情報は、前記所定のアプリケーションソフトウェアによって生成される第1の識別情報であって、前記第1の対象装置の認証に利用される前記第1の識別情報を含む、前記第2の受信部と、
    前記第1のフォーマット情報が、前記第1の対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記第1の対象装置から、前記無線インターフェースを介して、前記第1の特定の信号を受信する第3の受信部であって、前記第1のフォーマット情報が、前記第1の対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記第1の特定の信号は受信されない、前記第3の受信部と、
    前記所定のアプリケーションソフトウェアに関連する関連情報が前記第1の特定の信号に含まれるのか否かを判断する第1の判断部と、
    前記関連情報が前記第1の特定の信号に含まれると判断される場合に、前記第1の特定の信号に含まれる前記第1の識別情報を抽出する抽出部と、前記関連情報が前記第1の特定の信号に含まれないと判断される場合に、前記第1の特定の信号に含まれる情報は抽出されない、前記抽出部と、
    前記第1の特定の信号から前記第1の識別情報が抽出される場合に、抽出済みの前記第1の識別情報を利用して、前記第1の対象装置の認証を実行する第1の認証部であって、前記関連情報が前記第1の特定の信号に含まれないと判断される場合に、前記第1の特定の信号に含まれる情報を利用した認証は実行されない、前記第1の認証部と、
    を備え、
    前記第1の受信部は、さらに、前記第2の変調方式に対応する第2のポーリング信号の送信に応じて、第2の対象装置から、前記無線インターフェースを介して、前記第2のポーリング信号に対する第2の応答信号を受信し、
    前記第2の受信部は、さらに、前記第2の対象装置から前記第2の応答信号が受信される場合に、前記第2の対象装置から、前記無線インターフェースを介して、第2のフォーマット情報を受信し、
    前記第2のフォーマット情報は、前記第2の対象装置が、前記第2の対象装置から前記通信装置に送信される第2の特定の信号内に情報を記述するための前記所定のフォーマットをサポートしているのか否かを示し、
    前記所定のアプリケーションソフトウェアが前記第2の対象装置にインストールされている場合に、当該情報は、前記所定のアプリケーションソフトウェアによって生成される特定の識別情報であって、前記第2の対象装置の認証に利用される前記特定の識別情報を含み、
    前記第3の受信部は、さらに、前記第2のフォーマット情報が、前記第2の対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記第2の対象装置から、前記無線インターフェースを介して、前記第2の特定の信号を受信し、
    前記第2のフォーマット情報が、前記第2の対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記第2の特定の信号は受信されず、
    前記第1の判断部は、さらに、前記関連情報が前記第2の特定の信号に含まれるのか否かを判断し、
    前記抽出部は、さらに、前記関連情報が前記第2の特定の信号に含まれると判断される場合に、前記第2の特定の信号に含まれる前記特定の識別情報を抽出し、
    前記関連情報が前記第2の特定の信号に含まれないと判断される場合に、前記第2の特定の信号に含まれる情報は抽出されず、
    前記第1の認証部は、さらに、前記第2の特定の信号から前記特定の識別情報が抽出される場合に、抽出済みの前記特定の識別情報を利用して、前記第2の対象装置の認証を実行し、
    前記関連情報が前記第2の特定の信号に含まれないと判断される場合に、前記第2の特定の信号に含まれる情報を利用した認証は実行されない、通信装置。
  2. 前記通信装置は、さらに、
    前記第1のフォーマット情報が、前記第1の対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記第1の識別情報とは異なる識別情報を利用して、前記第1の対象装置の認証を実行する第2の認証部を備える、請求項1に記載の通信装置。
  3. 前記第2の認証部は、前記第1の応答信号に含まれる第2の識別情報であって、前記第1の識別情報とは異なる前記第2の識別情報を利用して、前記第1の対象装置の認証を実行する、請求項2に記載の通信装置。
  4. 前記通信装置は、さらに、
    前記第1の応答信号が受信される場合に、前記第1の応答信号を利用して、前記第2の識別情報を認証に利用可能であるのか否かを判断する第2の判断部を備え、
    前記第2の認証部は、前記第2の識別情報を認証に利用可能であると判断される場合に、前記第2の識別情報を利用して、前記第1の対象装置の認証を実行し、
    前記第2の識別情報を認証に利用可能でないと判断される場合に、前記第2の識別情報を利用した前記第1の対象装置の認証は実行されない、請求項3に記載の通信装置。
  5. 前記通信装置は、さらに、
    前記第1のフォーマット情報が、前記第1の対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記第1の対象装置から、前記無線インターフェースを介して、前記所定のフォーマットに依存しない非依存信号を受信する第4の受信部を備え、
    前記第2の認証部は、前記非依存信号が、前記第1の識別情報とは異なる第3の識別情報を含む場合に、前記第3の識別情報を利用して、前記第1の対象装置の認証を実行する、請求項2から4のいずれか一項に記載の通信装置。
  6. 前記通信装置は、さらに、
    前記第1の対象装置から前記第1の応答信号が受信される場合に、前記第1の応答信号を利用して、前記第1の対象装置が前記所定規格で定められている所定の通信プロトコルをサポートしているのか否かを判断する第3の判断部を備え、
    前記第2の受信部は、前記第1の対象装置が前記所定の通信プロトコルをサポートしていると判断される場合に、前記第1の対象装置から前記第1のフォーマット情報を受信し、
    前記第1の対象装置が前記所定の通信プロトコルをサポートしていないと判断される場合に、前記第1のフォーマット情報は受信されない、請求項1から5のいずれか一項に記載の通信装置。
  7. 前記所定規格は、NFC(Near Field Communicationの略)規格である、請求項1から6のいずれか一項に記載の通信装置。
  8. 前記所定のフォーマットは、NDEF(NFC Data Exchange Formatの略)である、請求項7に記載の通信装置。
  9. 前記第1の受信部は、前記所定規格で定められている第1の通信レイヤを利用して、前記所定規格で定められている第2の通信レイヤであって、前記第1の通信レイヤよりも上位である前記第2の通信レイヤを利用せずに、前記第1の応答信号を受信し、
    前記第2の受信部は、前記第2の通信レイヤを利用して、前記第1のフォーマット情報を受信し、
    前記第3の受信部は、前記第2の通信レイヤを利用して、前記第1の特定の信号を受信する、請求項1から8のいずれか一項に記載の通信装置。
  10. 前記通信装置が第1の動作状態に設定されている間に、前記第1の対象装置から前記第1の応答信号が受信される場合に、
    前記第2の受信部は、前記第1のフォーマット情報を受信し、
    前記第3の受信部は、前記第1のフォーマット情報が、前記第1の対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記第1の対象装置から前記第1の特定の信号を受信し、
    前記第1の判断部は、前記関連情報が前記第1の特定の信号に含まれるか否かを判断し、
    前記抽出部は、前記関連情報が前記第1の特定の信号に含まれると判断される場合に、前記第1の識別情報を抽出し、
    前記第1の認証部は、前記第1の特定の信号から前記第1の識別情報が抽出される場合に、前記第1の識別情報を利用して、前記第1の対象装置の認証を実行し、
    前記通信装置は、さらに、
    前記通信装置が前記第1の動作状態とは異なる第2の動作状態に設定されている間に、前記第1の対象装置から前記第1の応答信号が受信される場合に、前記無線インターフェースを介して、無線設定情報を前記第1の対象装置に送信する第2の送信部を備え、
    前記無線設定情報は、前記通信装置と前記第1の対象装置との間に、前記無線インターフェースとは異なるインターフェースを介した無線接続を確立するための情報である、請求項1から9のいずれか一項に記載の通信装置。
  11. 前記所定規格は、NFC(Near Field Communicationの略)規格であり、
    前記通信装置は、さらに、
    前記無線インターフェースのモード状態を制御するインターフェース制御部を備え、
    前記インターフェース制御部は、
    前記通信装置の動作状態が前記第1の動作状態から前記第2の動作状態に変更される場合に、前記無線インターフェースのモード状態を、前記NFC規格のP2P(Peer to Peerの略)モード及びCE(Card Emulationの略)モードのうちの少なくとも一方のモードが有効化されている第1のモード状態に設定し、
    前記通信装置の動作状態が前記第2の動作状態から前記第1の動作状態に変更される場合に、前記無線インターフェースのモード状態を、前記NFC規格の前記P2Pモード及びCEモードが無効化されていると共に、前記NFC規格のR/W(Reader/Writerの略)モードが有効化されている第2のモード状態に設定する、請求項10に記載の通信装置。
  12. 通信装置のためのコンピュータプログラムであって、
    前記通信装置に搭載されるコンピュータに、以下の処理、即ち、
    無線インターフェースを介して、所定規格で定められている2種以上の変調方式であって、第1の変調方式と、前記第1の変調方式とは異なる第2の変調方式と、を含む前記2種以上の変調方式に対応するポーリング信号を順次送信する第1の送信処理であって、前記無線インターフェースは、前記所定規格に従った無線通信を実行するためのインターフェースである、前記第1の送信処理と、
    前記第1の変調方式に対応する第1のポーリング信号の送信に応じて、第1の対象装置から、前記無線インターフェースを介して、前記第1のポーリング信号に対する第1の応答信号を受信する第1の受信処理と
    前記第1の対象装置から前記第1の応答信号が受信される場合に、前記第1の対象装置から、前記無線インターフェースを介して、第1のフォーマット情報を受信する第2の受信処理であって、前記第1のフォーマット情報は、前記第1の対象装置が、前記所定規格で定められている所定のフォーマットであって、前記第1の対象装置から前記通信装置に送信される第1の特定の信号内に情報を記述するための前記所定のフォーマットをサポートしているのか否かを示所定のアプリケーションソフトウェアが前記第1の対象装置にインストールされている場合に、当該情報は、前記所定のアプリケーションソフトウェアによって生成される第1の識別情報であって、前記第1の対象装置の認証に利用される前記第1の識別情報を含む、前記第2の受信処理と、
    前記第1のフォーマット情報が、前記第1の対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記第1の対象装置から、前記無線インターフェースを介して、前記第1の特定の信号を受信する第3の受信処理であって、前記第1のフォーマット情報が、前記第1の対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記第1の特定の信号は受信されない、前記第3の受信処理と、
    前記所定のアプリケーションソフトウェアに関連する関連情報が前記第1の特定の信号に含まれるのか否かを判断する第1の判断処理と、
    前記関連情報が前記第1の特定の信号に含まれると判断される場合に、前記第1の特定の信号に含まれる前記第1の識別情報を抽出する抽出処理と、前記関連情報が前記第1の特定の信号に含まれないと判断される場合に、前記第1の特定の信号に含まれる情報は抽出されない、前記抽出処理と、
    前記第1の特定の信号から前記第1の識別情報が抽出される場合に、抽出済みの前記第1の識別情報を利用して、前記第1の対象装置の認証を実行する第1の認証処理であって、前記関連情報が前記第1の特定の信号に含まれないと判断される場合に、前記第1の特定の信号に含まれる情報を利用した認証は実行されない、前記第1の認証処理と、
    を実行させ
    前記第1の受信処理は、さらに、前記第2の変調方式に対応する第2のポーリング信号の送信に応じて、第2の対象装置から、前記無線インターフェースを介して、前記第2のポーリング信号に対する第2の応答信号を受信し、
    前記第2の受信処理は、さらに、前記第2の対象装置から前記第2の応答信号が受信される場合に、前記第2の対象装置から、前記無線インターフェースを介して、第2のフォーマット情報を受信し、
    前記第2のフォーマット情報は、前記第2の対象装置が、前記第2の対象装置から前記通信装置に送信される第2の特定の信号内に情報を記述するための前記所定のフォーマットをサポートしているのか否かを示し、
    前記所定のアプリケーションソフトウェアが前記第2の対象装置にインストールされている場合に、当該情報は、前記所定のアプリケーションソフトウェアによって生成される特定の識別情報であって、前記第2の対象装置の認証に利用される前記特定の識別情報を含み、
    前記第3の受信処理は、さらに、前記第2のフォーマット情報が、前記第2の対象装置が前記所定のフォーマットをサポートしていることを示す場合に、前記第2の対象装置から、前記無線インターフェースを介して、前記第2の特定の信号を受信し、
    前記第2のフォーマット情報が、前記第2の対象装置が前記所定のフォーマットをサポートしていないことを示す場合に、前記第2の特定の信号は受信されず、
    前記第1の判断処理は、さらに、前記関連情報が前記第2の特定の信号に含まれるのか否かを判断し、
    前記抽出処理は、さらに、前記関連情報が前記第2の特定の信号に含まれると判断される場合に、前記第2の特定の信号に含まれる前記特定の識別情報を抽出し、
    前記関連情報が前記第2の特定の信号に含まれないと判断される場合に、前記第2の特定の信号に含まれる情報は抽出されず、
    前記第1の認証処理は、さらに、前記第2の特定の信号から前記特定の識別情報が抽出される場合に、抽出済みの前記特定の識別情報を利用して、前記第2の対象装置の認証を実行し、
    前記関連情報が前記第2の特定の信号に含まれないと判断される場合に、前記第2の特定の信号に含まれる情報を利用した認証は実行されない、コンピュータプログラム。
JP2016071818A 2016-03-31 2016-03-31 通信装置 Active JP6658221B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016071818A JP6658221B2 (ja) 2016-03-31 2016-03-31 通信装置
US15/471,363 US10051155B2 (en) 2016-03-31 2017-03-28 Communication device capable of executing authentication of target device
CN201710201001.6A CN107425975B (zh) 2016-03-31 2017-03-30 通信装置以及由通信装置执行的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016071818A JP6658221B2 (ja) 2016-03-31 2016-03-31 通信装置

Publications (2)

Publication Number Publication Date
JP2017184134A JP2017184134A (ja) 2017-10-05
JP6658221B2 true JP6658221B2 (ja) 2020-03-04

Family

ID=59962106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016071818A Active JP6658221B2 (ja) 2016-03-31 2016-03-31 通信装置

Country Status (3)

Country Link
US (1) US10051155B2 (ja)
JP (1) JP6658221B2 (ja)
CN (1) CN107425975B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110958562B (zh) * 2019-11-28 2021-07-16 Oppo广东移动通信有限公司 一种调制方式选择方法及近场通信装置、存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5439858B2 (ja) 2009-02-26 2014-03-12 日本電気株式会社 認証システム、認証装置、認証方法及び認証プログラム
KR20150114765A (ko) * 2014-04-02 2015-10-13 삼성전자주식회사 근거리 무선 통신(nfc) 기능을 지원하는 화상형성장치 및 화상형성장치의 nfc 동작 모드를 설정하는 방법
WO2013184128A1 (en) * 2012-06-08 2013-12-12 Hewlett-Packard Development Company, L.P. Secure wireless peer-peer connection using near-field communication
JP5958254B2 (ja) * 2012-09-28 2016-07-27 ブラザー工業株式会社 特定のサーバ及び通信装置
KR20140079195A (ko) 2012-12-18 2014-06-26 삼성전자주식회사 근거리 무선 통신(nfc) 기능을 지원하는 화상형성장치 및 화상형성장치에서 nfc 디바이스의 인증을 수행하는 방법
EP2816825B1 (en) * 2013-02-13 2019-04-24 Nxp B.V. NFC-enabled Mobile Device, NFC reader and NFC system for Supporting a Plurality of Proximity Services
KR102039522B1 (ko) * 2013-06-03 2019-11-26 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 근거리 무선 통신(nfc)을 이용한 nfc 태그의 기록방법 및 장치
KR20150014316A (ko) * 2013-07-29 2015-02-06 삼성전자주식회사 근거리 무선 통신(nfc) 기능을 지원하는 화상형성장치 및 nfc 디바이스, 화상형성장치 및 nfc 디바이스에서 인증을 수행하는 방법
JP6156024B2 (ja) 2013-09-30 2017-07-05 ブラザー工業株式会社 機能実行装置
JP6349783B2 (ja) * 2014-02-28 2018-07-04 富士通株式会社 端末装置、サーバ装置、デバイスドライバプログラム及び外部周辺機器制御方法
JP6402494B2 (ja) * 2014-05-30 2018-10-10 ブラザー工業株式会社 機能実行システム、機能実行装置、及び、通信端末
JP6634931B2 (ja) * 2016-03-31 2020-01-22 ブラザー工業株式会社 通信装置
JP6668890B2 (ja) * 2016-03-31 2020-03-18 ブラザー工業株式会社 通信装置

Also Published As

Publication number Publication date
CN107425975B (zh) 2022-03-11
US20170289402A1 (en) 2017-10-05
CN107425975A (zh) 2017-12-01
US10051155B2 (en) 2018-08-14
JP2017184134A (ja) 2017-10-05

Similar Documents

Publication Publication Date Title
US20230300585A1 (en) Function Execution Device and Communication Terminal
US9678693B2 (en) Method of setting wireless connection via near field communication function and image forming apparatus for performing the method
JP6668890B2 (ja) 通信装置
JP5991193B2 (ja) 情報処理プログラム、情報処理装置および情報処理装置の制御方法
CN108696847A (zh) 通信设备、非暂时性计算机可读记录介质、和由通信设备执行的方法
US10455634B2 (en) Communication device and a non-transitory computer-readable recording medium
JP6743634B2 (ja) 通信装置及び端末装置
JP6798226B2 (ja) 通信装置
JP7380770B2 (ja) 端末装置のためのコンピュータプログラムと端末装置
US10278072B2 (en) Communication device and terminal device
CN107426668B (zh) 通信装置
JP6645323B2 (ja) 通信装置
JP6658221B2 (ja) 通信装置
JP6766645B2 (ja) 通信装置
US10218875B2 (en) Communication device capable of performing wireless communication according to NFC standard
JP6210139B2 (ja) 情報処理プログラム、情報処理装置および情報処理装置の制御方法
JP2019159570A (ja) 端末装置のためのコンピュータプログラムと端末装置
JP2019125866A (ja) 通信装置
JP2019102923A (ja) 通信装置
JP7293704B2 (ja) 機能実行装置及び端末装置のためのコンピュータプログラム
JP6406405B2 (ja) 情報処理プログラム、情報処理装置および情報処理装置の制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191029

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191219

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200120

R150 Certificate of patent or registration of utility model

Ref document number: 6658221

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150