(57)【特許請求の範囲】
【請求項１】
電源供給が遮断された後も記憶内容が保持される書換可能な不揮発性メモリと、この不揮発性メモリをアクセスするための制御装置と、を有し、
前記不揮発性メモリは、記憶領域上にそれぞれ個々の単位領域が定義されており、特定の単位領域に対する書き込みを行う際には、当該単位領域内のビットをすべて第１の論理状態とする消去処理を行った後、書き込むべきデータに応じた所望のビットの論理状態を前記第１の論理状態から第２の論理状態に変更する処理を行う必要があるメモリであり、
前記不揮発性メモリには、所定の暗証コードと、この暗証コードによる照合を必要とするか否かを示す照合要否フラグと、が書き込まれており、
前記制御装置は、前記照合要否フラグが「要」状態を示していた場合には、外部から入力された暗証コードと前記不揮発性メモリに書き込まれていた暗証コードとの照合処理により一致が得られることを条件として所定の処理を実行する機能を有し、前記照合要否フラグが「否」状態を示していた場合には、前記照合処理を行うことなしに前記所定の処理を実行する機能を有し、
前記制御装置は、前記不揮発性メモリにデータを書き込む際には、このデータに所定のエラーチェックコードを付加して書き込む処理を行い、前記不揮発性メモリからデータを読み出す際には、付加されていたエラーチェックコードが正しいか否かを判定する処理を行い、正しい判定結果が得られることを条件として、読み出したデータを正しいデータとして取り扱う機能を有する携帯型情報処理装置において、
前記照合要否フラグを構成するビットが、前記第１の論理状態であった場合には「要」状態を示すものとして取り扱い、前記第２の論理状態であった場合には「否」状態を示すものとして取り扱うようにし、かつ、前記照合要否フラグを書き込む際にはエラーチェックコードを付加しないようにし、前記照合要否フラグを読み出す際にはエラーチェックコードの判定を行うことなしに常に正しいフラグとして取り扱うようにする処理機能を、前記制御装置が備えていることを特徴とする暗証コード照合機能をもった携帯型情報処理装置。
【請求項２】
電源供給が遮断された後も記憶内容が保持される書換可能な不揮発性メモリと、この不揮発性メモリをアクセスするための制御装置と、を有し、
前記不揮発性メモリは、記憶領域上にそれぞれ個々の単位領域が定義されており、特定の単位領域に対する書き込みを行う際には、当該単位領域内のビットをすべて第１の論理状態とする消去処理を行った後、書き込むべきデータに応じた所望のビットの論理状態を前記第１の論理状態から第２の論理状態に変更する処理を行う必要があるメモリであり、
前記不揮発性メモリには、所定の暗証コードと、この暗証コードによる照合を必要とするか否かを示す照合要否フラグと、が書き込まれており、
前記制御装置は、前記照合要否フラグが「要」状態を示していた場合には、外部から入力された暗証コードと前記不揮発性メモリに書き込まれていた暗証コードとの照合処理により一致が得られることを条件として所定の処理を実行する機能を有し、前記照合要否フラグが「否」状態を示していた場合には、前記照合処理を行うことなしに前記所定の処理を実行する機能を有し、
前記制御装置は、前記不揮発性メモリにデータを書き込む際には、このデータに所定のエラーチェックコードを付加して書き込む処理を行い、前記不揮発性メモリからデータを読み出す際には、付加されていたエラーチェックコードが正しいか否かを判定する処理を行い、正しい判定結果が得られることを条件として、読み出したデータを正しいデータとして取り扱う機能を有する携帯型情報処理装置において、
前記照合要否フラグを構成するビットが、前記第１の論理状態であった場合には「要」状態を示すものとして取り扱い、前記第２の論理状態であった場合には「否」状態を示すものとして取り扱うようにし、かつ、前記照合要否フラグについてのエラーチェックコードの判定結果に誤りが生じていた場合には、前記照合要否フラグを構成するビットの論理状態にかかわらず、常に前記照合要否フラグが「要」状態を示しているものとして取り扱うようにする処理機能を、前記制御装置が備えていることを特徴とする暗証コード照合機能をもった携帯型情報処理装置。
【請求項３】
請求項１または２に記載の携帯型情報処理装置において、
照合要否フラグを書き込むための専用単位領域が設けられ、当該専用単位領域には、照合要否フラグに関連したデータ以外のデータの書き込みが行われないように構成されていることを特徴とする暗証コード照合機能をもった携帯型情報処理装置。
【請求項４】
請求項１〜３のいずれかに記載の携帯型情報処理装置において、
照合要否フラグを設定する権限を示す設定権限コードが不揮発性メモリに書き込まれており、外部から照合要否フラグを設定するために前記設定権限コードを含む照合要否設定コマンドが入力された場合に、制御装置が、外部から入力された設定権限コードと前記不揮発性メモリに書き込まれていた設定権限コードとの一致を条件として照合要否フラグ設定のための書込処理を実行する機能を有することを特徴とする暗証コード照合機能をもった携帯型情報処理装置。
【請求項５】
請求項１〜４のいずれかに記載の携帯型情報処理装置において、
制御装置が、照合要否フラグの書換処理を行う場合に、前記照合要否フラグを含む単位領域を構成するｎ桁のビットをすべて第１の論理状態とする消去処理を行った後、書換後の新たな論理状態を示す照合要否フラグを含むｎ桁のビットデータをレジスタに用意し、このレジスタ内のビットデータを前記単位領域内に書き込む処理を行うことを特徴とする暗証コード照合機能をもった携帯型情報処理装置。
【請求項６】
請求項１〜５のいずれかに記載の携帯型情報処理装置において、
不揮発性メモリをアクセスする機能をもったＣＰＵと、このＣＰＵを動作させるプログラムを格納および実行するためのプログラム用メモリとを内蔵したＩＣカードによって携帯型情報処理装置を構成し、前記ＣＰＵと前記プログラム用メモリとによって制御装置を構成したことを特徴とする暗証コード照合機能をもった携帯型情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は暗証コード照合機能をもった携帯型情報処理装置に関し、特に、利用に際して暗証コードの照合を必要とする設定と、必要としない設定とを切り替えることが可能な暗証コード照合機能をもった携帯型情報処理装置に関する。
【０００２】
【従来の技術】
半導体集積回路の集積度が向上するに従って、高機能の小型情報処理装置を実現する技術が確立され、現在では、様々な分野において携帯型情報処理装置が普及しはじめている。たとえば、ＩＣカード、携帯電話、ＰＤＡ（Personal Degital Assistants ）といった携帯型情報処理装置は、個人ユーザが１台ずつ所有する程度まで一般化しつつある。このように、携帯型情報処理装置は、各ユーザごとの個人レベルの情報処理を行う装置であるため、内部にはプライバシーに関わる種々の個人情報が格納されており、十分なセキュリティ対策が必要になる。したがって、一般的な携帯型情報処理装置には、暗証コード照合機能が備わっており、予め内部に登録されている暗証コードと、利用時に外部から入力された暗証コードとを照合し、両者が一致した場合にのみ、利用が可能となるようなセキュリティ対策が施されている。
【０００３】
【発明が解決しようとする課題】
上述したように、一般的な携帯型情報処理装置には、暗証コード照合機能が備わっているが、装置の利用頻度が高まれば高まるほど、利用時に、暗証コードを毎回入力する操作が煩わしくなってくる。このため、利用時に暗証コードの照合を必要とする設定と、必要としない設定とを切り替えることが可能な携帯型情報処理装置が提案されている。しかしながら、従来提案されている切替機能付きの携帯型情報処理装置には、十分なセキュリティを確保することができないという問題がある。すなわち、このような切替機能をもたせるためには、装置内部に、照合が必要か否かを示す情報を格納しておく必要があるが、この情報が不正なアクセスによって書き換えられたり、あるいは、正当な使用状態においても何らかの影響で書き換わってしまったりすると、ユーザが暗証コードの照合を必要とする設定をしていたつもりでも、暗証コードの照合なしにアクセスが可能になるおそれがある。
【０００４】
そこで本発明は、十分なセキュリティを確保しつつ、利用時の暗証コードの照合の要否を切り替えることが可能な暗証コード照合機能をもった携帯型情報処理装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
(1)   本発明の第１の態様は、電源供給が遮断された後も記憶内容が保持される書換可能な不揮発性メモリと、この不揮発性メモリをアクセスするための制御装置と、を有する携帯型情報処理装置において、
不揮発性メモリとして、記憶領域上にそれぞれ個々の単位領域が定義されており、特定の単位領域に対する書き込みを行う際には、当該単位領域内のビットをすべて第１の論理状態とする消去処理を行った後、書き込むべきデータに応じた所望のビットの論理状態を第１の論理状態から第２の論理状態に変更する処理を行う必要があるメモリが用いられ、
この不揮発性メモリには、所定の暗証コードと、この暗証コードによる照合を必要とするか否かを示す照合要否フラグと、が書き込まれており、
制御装置は、照合要否フラグが「要」状態を示していた場合には、外部から入力された暗証コードと不揮発性メモリに書き込まれていた暗証コードとの照合処理により一致が得られることを条件として所定の処理を実行する機能を有し、照合要否フラグが「否」状態を示していた場合には、照合処理を行うことなしに所定の処理を実行する機能を有し、
制御装置は、不揮発性メモリにデータを書き込む際には、このデータに所定のエラーチェックコードを付加して書き込む処理を行い、不揮発性メモリからデータを読み出す際には、付加されていたエラーチェックコードが正しいか否かを判定する処理を行い、正しい判定結果が得られることを条件として、読み出したデータを正しいデータとして取り扱う機能を有している場合に、
照合要否フラグを構成するビットが、第１の論理状態であった場合には「要」状態を示すものとして取り扱い、第２の論理状態であった場合には「否」状態を示すものとして取り扱うようにし、かつ、照合要否フラグを書き込む際にはエラーチェックコードを付加しないようにし、照合要否フラグを読み出す際にはエラーチェックコードの判定を行うことなしに常に正しいフラグとして取り扱うようにする処理機能をもたせるようにしたものである。
【０００６】
(2)   本発明の第２の態様は、電源供給が遮断された後も記憶内容が保持される書換可能な不揮発性メモリと、この不揮発性メモリをアクセスするための制御装置と、を有する携帯型情報処理装置において、
不揮発性メモリとして、記憶領域上にそれぞれ個々の単位領域が定義されており、特定の単位領域に対する書き込みを行う際には、当該単位領域内のビットをすべて第１の論理状態とする消去処理を行った後、書き込むべきデータに応じた所望のビットの論理状態を第１の論理状態から第２の論理状態に変更する処理を行う必要があるメモリが用いられ、
この不揮発性メモリには、所定の暗証コードと、この暗証コードによる照合を必要とするか否かを示す照合要否フラグと、が書き込まれており、
制御装置は、照合要否フラグが「要」状態を示していた場合には、外部から入力された暗証コードと不揮発性メモリに書き込まれていた暗証コードとの照合処理により一致が得られることを条件として所定の処理を実行する機能を有し、照合要否フラグが「否」状態を示していた場合には、照合処理を行うことなしに所定の処理を実行する機能を有し、
制御装置は、不揮発性メモリにデータを書き込む際には、このデータに所定のエラーチェックコードを付加して書き込む処理を行い、不揮発性メモリからデータを読み出す際には、付加されていたエラーチェックコードが正しいか否かを判定する処理を行い、正しい判定結果が得られることを条件として、読み出したデータを正しいデータとして取り扱う機能を有している場合に、
照合要否フラグを構成するビットが、第１の論理状態であった場合には「要」状態を示すものとして取り扱い、第２の論理状態であった場合には「否」状態を示すものとして取り扱うようにし、かつ、照合要否フラグについてのエラーチェックコードの判定結果に誤りが生じていた場合には、照合要否フラグを構成するビットの論理状態にかかわらず、常に照合要否フラグが「要」状態を示しているものとして取り扱うようにする処理機能をもたせるようにしたものである。
【０００７】
(3)   本発明の第３の態様は、上述の第１または第２の態様に係る暗証コード照合機能をもった携帯型情報処理装置において、
照合要否フラグを書き込むために専用単位領域を設け、当該専用単位領域には、照合要否フラグに関連したデータ以外のデータの書き込みが行われないようにしたものである。
【０００８】
(4)   本発明の第４の態様は、上述の第１〜第３の態様に係る暗証コード照合機能をもった携帯型情報処理装置において、
照合要否フラグを設定する権限を示す設定権限コードを不揮発性メモリに書き込むようにし、外部から照合要否フラグを設定するために設定権限コードを含む照合要否設定コマンドが入力された場合に、制御装置が、外部から入力された設定権限コードと不揮発性メモリに書き込まれていた設定権限コードとの一致を条件として照合要否フラグ設定のための書込処理を実行するようにしたものである。
【０００９】
(5)   本発明の第５の態様は、上述の第１〜第４の態様に係る暗証コード照合機能をもった携帯型情報処理装置において、
制御装置が、照合要否フラグの書換処理を行う場合に、照合要否フラグを含む単位領域を構成するｎ桁のビットをすべて第１の論理状態とする消去処理を行った後、書換後の新たな論理状態を示す照合要否フラグを含むｎ桁のビットデータをレジスタに用意し、このレジスタ内のビットデータを単位領域内に書き込む処理を行うようにしたものである。
【００１０】
(6)   本発明の第６の態様は、上述の第１〜第５の態様に係る暗証コード照合機能をもった携帯型情報処理装置において、
不揮発性メモリをアクセスする機能をもったＣＰＵと、このＣＰＵを動作させるプログラムを格納および実行するためのプログラム用メモリとを内蔵したＩＣカードによって携帯型情報処理装置を構成し、ＣＰＵとプログラム用メモリとによって制御装置を構成したものである。
【００１１】
【発明の実施の形態】
以下、本発明を図示する実施形態に基づいて説明する。図１は、携帯電話１００に装着されたＩＣカード１０について本発明を適用した実施形態を示す図である。このようなＩＣカード１０（いわゆるフラッシュメモリ）を携帯電話１００内に装着すると、携帯電話１００側からＩＣカード１０に対して電源供給が行われ、ＩＣカード１０は、この電源供給を受けて動作する。携帯電話１００用のプッシュボタンや液晶ディスプレイは、ＩＣカード１０に対する入出力インターフェイスとして機能し、ユーザは携帯電話１００のプッシュボタンを操作することによりＩＣカード１０に対してコマンドやデータを送信することができ、これに対するＩＣカード１０側からの応答を、携帯電話１００の液晶ディスプレイ上で確認することができる。
【００１２】
ＩＣカード１０は、書換可能な不揮発性メモリ１１と、この不揮発性メモリ１１をアクセスするための制御装置１２とを内蔵している。不揮発性メモリ１１は、具体的には、ＥＥＰＲＯＭから構成され、携帯電話１００側からの電源供給が遮断された後も、その記憶内容は保持される。したがって、不揮発性メモリ１１内のデータは、ＩＣカード１０を携帯電話１００から取り外した場合でも失われることはない。制御装置１２は、具体的には、ＣＰＵ，ＲＯＭ，ＲＡＭによって構成される。ＣＰＵは、ＥＥＰＲＯＭをアクセスする処理、携帯電話１００との送受信を行う処理、その他、種々の演算処理を行う機能を有する。ＲＯＭは、ＣＰＵを動作させるプログラムを格納したプログラム格納用メモリとして機能する。このプログラムには、主として、携帯電話１００側から特定のコマンドが送信されてきたときに、どのような処理を実行し、どのようなレスポンスを携帯電話１００側に返すか、という手順が記述されており、ＣＰＵはこの手順に従って種々の処理を実行する。ＲＡＭは、携帯電話１００側から電源供給が行われているときにのみ記憶内容が保持される揮発性メモリであり、ＣＰＵが実行するプログラムの作業領域を提供するプログラム実行用メモリとして機能する。なお、ここに示す例では、ＲＯＭをプログラム格納用メモリとして用いているが、ＥＥＰＲＯＭ内に所定のプログラムをロードし、このＥＥＰＲＯＭの一部をプログラム格納用メモリとして利用することも可能である。
【００１３】
ＥＥＰＲＯＭは、電源供給が遮断された後も、その記憶内容が保持されるという機能をもったメモリであるが、書込処理を行う際には、ＲＡＭに比べていくつかの制約がある。すなわち、▲１▼所定の書込電圧を供給する必要があること、▲２▼ＲＡＭに比べて書込時間が長く必要であること、▲３▼所定の単位領域ごとに消去処理を行った後に書込みを行う必要があること、である。図２は、上記制約▲３▼を説明するためのメモリマップである。図２(a) に示す例は、２バイトごとに１単位領域を構成するＥＥＰＲＯＭ１１のメモリマップを示している。この例では、図のように、それぞれ２バイトの長さをもった複数の単位領域Ｕ１，Ｕ２，Ｕ３，…が定義されており、書込処理はこの個々の単位領域ごとに行われることになる。この単位領域は、あくまでも物理的な書込みを行う際の１単位として取り扱われる領域であり、１つのデータが１つの単位領域に書き込まれるわけではない。図２(b) は、図２(a) に示すメモリ領域に、具体的なデータＡ，Ｂ，Ｃ，Ｄを書き込んだ状態を示すメモリマップである。各データＡ，Ｂ，Ｃ，Ｄは、それぞれデータ長が異なっており、必要に応じて、複数の単位領域に跨がるようにして書き込まれている。たとえば、データＣは、単位領域Ｕ４の第９ビット目〜単位領域Ｕ５の第１４ビット目までを占めており、このデータＣを書込むためには、単位領域Ｕ４に対する書込処理と、単位領域Ｕ５に対する書込処理とが必要になる。
【００１４】
上述した制約▲３▼によれば、特定の単位領域に対する書込みを行う際には、当該単位領域内のビットをすべて第１の論理状態とする消去処理を行った後、書き込むべきデータに応じた所望のビットの論理状態を第１の論理状態から第２の論理状態に変更する処理を行う必要がある。ここでは、より具体的に、第１の論理状態を“１”、第２の論理状態を“０”とした場合の例を説明する（もちろん、論理状態を逆にしてもかまわない）。特定の単位領域に対する書込みを行う際には、まず、当該単位領域内のビットをすべて“１”にする消去処理を行った後、書き込むべきデータに応じた所望のビットを“０”に変更する処理を行う必要がある。これは、ビット“１”をビット“０”に変える電気的な処理よりも、ビット“０”をビット“１”に変える電気的な処理の方が大きな負担を要するというＥＥＰＲＯＭの特性に基づく制約である。
【００１５】
このような制約があるため、たとえば、図２(b) に示すデータＣを新たなデータで上書きする場合、具体的には、図３に示すようなＥＥＰＲＯＭへの書込処理を行う必要がある。いま、書込処理前の単位領域Ｕ４の状態が、図３にビット列Ｕ４（１）として示したような状態であったとしよう。この場合、まず、この単位領域Ｕ４（１）の内容を、レジスタＲに退避する。レジスタＲは、単位領域と同様に２バイト分の長さをもった格納場所であり、このレジスタＲ内には、図３にビット列Ｒ（１）として示すようなビット列（ビット列Ｕ４（１）と同一のビット列）が格納された状態となる。ここで、このレジスタＲ（１）の前半８ビット分はデータＢの一部であり、後半８ビット分はデータＣの一部ということになる。
【００１６】
続いて、単位領域Ｕ４に対する消去処理が行われる。すなわち、単位領域Ｕ４を構成する全ビットが“１”の状態になる。図３に示す単位領域Ｕ４（２）は、このように、消去処理が行われた後のビット構成を示している。一方、レジスタＲには、書込対象となる新たなビット列が用意される。この例の場合、データＣについての書き換えが行われるので、レジスタＲの後半８ビット分が新たなデータＣの一部に置き換えられ、レジスタＲは、図３のレジスタＲ（２）に示すような状態になる。続いて、このレジスタＲ（２）の内容を、単位領域Ｕ４（２）に書き込むことになるが、実際には、レジスタＲ（２）内の各ビットのうちのビット“０”について、単位領域Ｕ４（２）内の対応ビット位置を“０”に変更する処理が行われることになる。このような変更処理により、単位領域Ｕ４（３）には、レジスタＲ（２）と同様のビット列が書き込まれたことになる。以上、単位領域Ｕ４についての書込処理を説明したが、単位領域Ｕ５についても同様の書込処理が行われ、図２(b) に示すデータＣの書き換えが完了する。
【００１７】
図４は、ＥＥＰＲＯＭ１１に書き込まれるデータの通常のデータフォーマットの一例を示す図である。ここに示す例では、各データの先頭１バイトには、データ長を示す数値が付加され、末尾１バイトには、エラーチェックコードＥＣＣが付加されている。実際のデータの長さは任意のバイトでかまわないが、このデータのバイト数を先頭にデータ長として付加し、このデータに基づく所定のアルゴリズムで生成されたエラーチェックコードＥＣＣを末尾に付加した状態で、ＥＥＰＲＯＭ１１への書き込みが行われることになる。図２(b) に示すデータＡ，Ｂ，Ｃ，Ｄは、いずれもこのようなデータフォーマットで記述されたデータであり、いずれも先頭１バイトがデータ長、末尾１バイトがエラーチェックコードＥＣＣを構成している。ＣＰＵがデータをＥＥＰＲＯＭ１１に書き込む際には、このデータの先頭にデータ長を付加するとともに、末尾にエラーチェックコードＥＣＣを付加する処理を行うことになる。逆に、ＣＰＵがＥＥＰＲＯＭ１１からデータを読み出す際には、付加されていたエラーチェックコードＥＣＣが正しいか否かを判定する処理を行い、正しい判定結果が得られた場合にだけ、読み出したデータを正しいデータとして取り扱う処理が行われる。もし、エラーチェックコードＥＣＣが誤っているという判定結果が得られた場合には、読み出されたデータは正しいデータとは取り扱われず、必要に応じてエラー処理が実行されることになる。
【００１８】
ここに示すＩＣカード１０は、暗証コード照合機能を有しており、この機能が有効となっている間は、このＩＣカード１０を利用するたびに（携帯電話１００のスイッチをＯＮにして電源供給を開始し、ＩＣカード１０内のＣＰＵがリセットされるたびに）、所定の暗証コードの入力が要求される。この暗証コードは、予め、ＥＥＰＲＯＭ１１内にデータとして格納されており（図４に示すデータフォーマットで格納されている）、携帯電話１００を介して外部から暗証コードが入力されると、ＩＣカード１０内のＣＰＵは、ＥＥＰＲＯＭ１１内に予め格納されていた暗証コードと、外部から入力された暗証コードとの照合を行い、両者の一致が得られることを条件として、以後の処理を実行することになる。照合の結果、暗証コードが不一致となった場合、ＣＰＵは以後のアクセスを拒絶する旨のレスポンスを携帯電話１００側に返すことになり、ユーザは、携帯電話１００の液晶ディスプレイ上で、アクセスが拒絶されたことを認識することができる。
【００１９】
このように、暗証コード照合機能が常に有効であるとすると、ユーザは携帯電話１００のスイッチをＯＮにするたびに毎回、暗証コードを入力する操作を行わねばならず、非常に煩雑な操作を強いられることになる。実用上は、携帯電話１００を携行している最中は、最初に１回だけ暗証コードを入力すれば、以後は、毎回暗証コードを入力せずに継続して利用できるような設定ができれば便利である。
【００２０】
本発明に係るＩＣカード１０の特徴は、上述した暗証コード照合機能を有効にしたり、無効にしたりする切り替えが可能である点にあり、特に、この切替機能を十分なセキュリティの下に実現した点にある。ユーザは、暗証コード照合機能が煩わしいと感じた場合には、この機能を無効にする設定ができ、必要だと感じた場合には、この機能を有効にする設定ができる。このような設定の切り替えを自由に行うことができるようにするために、本発明では、ＥＥＰＲＯＭ１１内に、暗証コードによる照合を必要とするか否かを示す照合要否フラグを書き込むようにしている。図５に、この照合要否フラグのフォーマットの一例を示す。この例では、照合要否フラグ自体は１ビットのデータから構成されているが、その格納領域としては、２バイトの領域が確保されている。具体的には、この２バイト（１６ビット）の領域のうちのＭＳＢ（Most Significant Bit）が照合要否フラグとして利用され、残りの１５ビットは全く利用されない意味のないビットとなる（図では、φで示してある）。そして、照合要否フラグが“１”の場合には、照合「要」を示し、“０”の場合には、照合「否」を示すものと定めている。しかも、この照合要否フラグを含む２バイトのデータは、専用の単位領域に書き込まれる。図６は、この専用の単位領域Ｕｘに、照合要否フラグを含む２バイトのデータを書き込んだ状態を示す図である。専用単位領域Ｕｘ内には１６ビットのデータが存在するが、その中のＭＳＢのみが意味をもった照合要否フラグとして機能し、残りの１５ビットは何ら意味をもたない。図示の例では、ＭＳＢが“１”であるから、照合「要」の状態が示されていることになる。
【００２１】
ＩＣカード１０の内蔵ＣＰＵは、携帯電話１００の電源ＯＮと同時にリセットされることになるが、このリセット後の手順において、専用単位領域ＵｘのＭＳＢとして格納されている照合要否フラグを読み出し、暗証コード照合処理の要否設定を認識する。そして、この照合要否フラグが「要」状態を示していた場合（この例では、“１”の場合）には、上述した暗証コード照合機能が有効であると認識し、暗証コードの入力を要求する処理を行い、外部から入力された暗証コードとＥＥＰＲＯＭ１１に予め書き込まれていた暗証コードとの照合処理により一致が得られることを条件として、以後の処理を実行することになる。一方、この照合要否フラグが「否」状態を示していた場合（この例では、“０”の場合）には、上述のような照合処理を行うことなしに、以後の処理を実行する。
【００２２】
ユーザは、図７に示すようなフォーマットをもった照合要否設定コマンドを、携帯電話１００側からＩＣカード１０に対して与えることにより、要否設定を変えることができる。図７に示す例では、最初の２バイトがコマンドコードであり、たとえば、“００２６”なるコマンドコードは、照合「要」なる設定を行う旨のコマンドを示し、“００２８”なるコマンドコードは、照合「否」なる設定を行う旨のコマンドを示している。次の２バイトは、コマンドコードに対するパラメータであるが、この照合要否設定コマンドにはパラメータは不要であるため未使用である（たとえば、“００００”などの任意のパラメータ値を入れておけばよい）。次の１バイトはデータ長を示し、その次に任意バイトのデータが続くことになる。データ長は、この任意バイトのデータの長さを示している。任意バイトのデータは、照合要否フラグを設定する権限を示す設定権限コードであり、ユーザが携帯電話１００から入力したコードである。この設定権限コードも、予め、ＥＥＰＲＯＭ１１内にデータとして格納されており、ＣＰＵは、図７に示すようなフォーマットをもった照合要否設定コマンドが外部から入力された場合には、この外部から入力された設定権限コードと、ＥＥＰＲＯＭ１１内に予め書き込まれていた設定権限コードとの一致を条件として、照合要否フラグ設定のための書込処理を実行することになる。結局、照合要否フラグの設定変更は、設定権限コードを知っている者でなければ行うことができないことになる。通常は、ＩＣカードを利用するために必要な暗証コードと、照合要否フラグを設定する権限を示す設定権限コードとを同一のコードとしておけばよい。この場合、ユーザのみが照合要否フラグの設定変更を行うことができるようになる。
【００２３】
図８は、照合要否設定コマンドを受信したときのＣＰＵの処理手順を示す流れ図である。まず、ステップＳ１において、このコマンドに含まれる設定権限コードを、ＥＥＰＲＯＭ１１内に予め書き込まれていた設定権限コードと照合する処理が行われる。照合の結果、不一致となった場合には、そこでこの処理は中断し、照合要否フラグの設定処理は行われない。照合の結果、一致が得られた場合には、ステップＳ２からステップＳ３へと進み、照合要否フラグを含む専用の単位領域Ｕｘを消去する処理（全ビットを“１”にする処理）を行い、更に、ステップＳ４において、レジスタに用意した設定対象データを、単位領域Ｕｘに書込む処理が行われる。コマンドコード“００２６”なる照合要否設定コマンドが与えられた場合であれば、照合「要」なる設定を行う必要があるので、たとえば、“１１１１１１１１  １１１１１１１１”なるレジスタ内の設定対象データの書込処理が行われる（実際には、この場合は、ステップＳ３で消去処理が行われた状態のままでよい）。一方、コマンドコード“００２８”なる照合要否設定コマンドが与えられた場合であれば、照合「否」なる設定を行う必要があるので、たとえば、“０１１１１１１１  １１１１１１１１”なるレジスタ内の設定対象データの書込処理が行われる（実際には、この場合は、ＭＳＢのみを“１”から“０”に変更する処理を行えばよい）。
【００２４】
このように、ＥＥＰＲＯＭ１１内に照合要否フラグを設け、この照合要否フラグの設定状態に応じて照合処理を行うか否かが判断されるようにしておき、照合要否設定コマンドを用いて、照合要否フラグの状態を書き換えることができるようにしておけば、ユーザは必要に応じて、暗証コード照合機能を有効にしたり無効にしたりする切り替えができる。しかも、上述した実施形態で述べた切り替え方法は、次のような３つの特徴を有しているため、十分なセキュリティを確保することができる。
【００２５】
まず、第１の特徴は、照合要否フラグを構成するビットが、第１の論理状態“１”（消去処理後の論理状態）であった場合には「要」状態を示すものとして取り扱い、第２の論理状態“０”であった場合には「否」状態を示すものとして取り扱うようにする点である。既に述べたように、ＥＥＰＲＯＭ１１に対する書込みを行う際には、まず、単位領域内の全ビットを第１の論理状態“１”にする消去処理を行った後、必要なビットを第２の論理状態“０”に変更する処理を行う必要がある。ところが、何らかの事情で、この書込処理に途中で失敗し、全ビットが第１の論理状態“１”になったまま、この処理が中断してしまったとしよう。具体的には、図８に示す処理手順の場合、ステップＳ３の処理まで進行したが、何らかの事情でステップＳ４が実行されなかったようなケースがこれに該当する。このような事故が生じた場合であっても、本発明では、照合要否フラグの第１の論理状態“１”を「要」状態を示すものとして取り扱うようにしてあるので、事故が生じた場合には、常に、照合要否フラグは「要」状態（セキュリティー上、より安全な状態）に設定されることになる。別言すれば、何らかの書込事故が生じたとしても、セキュリティー上、常に安全サイドへ倒れるような工夫が施されたことになる。もちろん、ユーザが、照合「否」の状態を望んでいたのであれば、再度、照合「否」の状態にするための照合要否設定コマンドを入力すれば、照合要否フラグを「否」状態にすることができる。
【００２６】
第２の特徴は、照合要否フラグには、エラーチェックコードを付加しないようにし、この照合要否フラグを読み出す際にはエラーチェックコードの判定を行うことなしに常に正しいフラグとして取り扱うようにする点である。図４に示すように、通常のデータの場合、必ず末尾にエラーチェックコードＥＣＣが付加されて、ＥＥＰＲＯＭ１１に書き込まれることになり、読み出し時には、このエラーチェックコードＥＣＣのチェックが行われる。ところが、照合要否フラグに関しては、図５に示すように、エラーチェックコードＥＣＣの付加は行われず、読み出し時にエラーチェックコードＥＣＣがチェックされることはない。このように、照合要否フラグについてのエラーチェックを行わないことは重要である。読み出したデータに関するエラーチェックによりエラーが検出されると、当該データは正しいデータとしては取り扱われず、エラー処理手順が実行されることになる。ところが、そもそも照合要否フラグを読み出す処理においてエラーが生じてしまうと、暗証コードの照合機能が有効な設定になっているのか、無効な設定になっているのかを判断することができず、ＩＣカードへのアクセスの初期段階において処理が中断してしまうことになり、当該ＩＣカードはもはや正常動作を行うことができなくなる（メンテナンスの担当部署で修理を受ける必要がある）。本発明では、照合要否フラグについてのエラーチェックを行わないので、たとえば、図６に示すＥＥＰＲＯＭ１１内の専用単位領域Ｕｘに書き込まれている任意の１ビットがデータ化けを生じた場合であっても、ＭＳＢに書き込まれた本来の照合要否フラグさえ正常であれば、動作には何ら支障は生じない。
【００２７】
第３の特徴は、図６に示すように、ＥＥＰＲＯＭ１１内に、照合要否フラグを書き込むための専用単位領域Ｕｘが設けられ、当該専用単位領域Ｕｘには、照合要否フラグ以外のデータの書き込みが行われないようにしている点である。このように、照合要否フラグのために、専用単位領域Ｕｘを設けるようにしておけば、この専用単位領域Ｕｘに対する書き込みが行われるのは、図７に示す照合要否設定コマンドが与えられた場合だけということになる。したがって、他のコマンドの実行によって、照合要否フラグが書き換えられてしまうおそれがなくなる。これは特に、ＩＣカード１０を不正に入手した犯罪者などが、照合要否フラグを照合「否」の状態に書き換えようとする試みを防止する上で効果的である。照合要否フラグを書き換えるためには、図７に示す照合要否設定コマンドを与える以外には方法がない。ところが、この照合要否設定コマンドを実行させるためには、設定権限コードが必要になるので、不正な手段によって、照合要否フラグを書き換えようとする試みは極めて困難になる。
【００２８】
最後に、本発明の変形例を述べておく。上述の実施形態では、その第２の特徴として述べたように、「照合要否フラグには、エラーチェックコードを付加しないようにし、この照合要否フラグを読み出す際にはエラーチェックコードの判定を行うことなしに常に正しいフラグとして取り扱う」という処理を行っていた。これに対して、ここで述べる変形例では、「照合要否フラグにもエラーチェックコードを付加するようにし、この照合要否フラグについてのエラーチェックコードの判定結果に誤りが生じていた場合には、照合要否フラグを構成するビットの論理状態にかかわらず、常に照合要否フラグが『要』状態を示しているものとして取り扱う」という処理を行うようにする。
【００２９】
たとえば、図６に示した前述の実施形態の場合、照合要否フラグを記録するために２バイトからなる専用単位領域Ｕｘを設け、そのＭＳＢのみが意味をもつフラグとして利用していたが、ここで述べる変形例を実施するのであれば、たとえば、下位１バイト分をエラーチェックコードＥＣＣ（上位１バイトに基づく所定の論理演算で得られるコード）を記録する領域として用いるようにすればよい。照合要否フラグのビット値を参照する際には、この専用単位領域Ｕｘの２バイトのデータを読み出し、１バイト目のデータ（照合要否フラグを含むデータ）が正しいか否かを、２バイト目のエラーチェックコードＥＣＣに基づいて判定する処理を行うようにする。この場合、エラーチェックコードの判定結果が正しければ、そのまま１バイト目のＭＳＢを照合要否フラグの値として認識した処理を実行するが、エラーチェックコードの判定結果に誤りが生じていた場合には、照合要否フラグを構成するビット（専用単位領域ＵｘのＭＳＢ）の論理状態にかかわらず、常に照合要否フラグが「要」状態を示しているものとして取り扱うのである。このような取り扱いをするようにしておけば、照合要否フラグの書き込み時あるいは読み出し時に何らかのエラーが生じたとしても、常に安全サイド、すなわち、照合「要」の状態として認識されることになるので、十分なセキュリティを確保することができる。
【００３０】
以上、本発明を図示する実施形態に基づいて説明したが、本発明はこの実施形態に限定されるものではなく、この他にも種々の形態で実施可能である。たとえば、上述の実施形態では、携帯電話１００に装填して用いられるＩＣカード１０について本発明を適用した例を示したが、本発明は、その他のＩＣカードにも勿論適用できる。また、本発明の適用は、ＩＣカードのみに限定されるものではなく、携帯電話自身や、その他の暗証コード照合機能をもった携帯型情報処理装置に広く及ぶものである。更に、上述の実施形態では、照合要否フラグを１ビットのデータで構成しているが、より冗長度を高めるために、数ビットのデータによって照合要否フラグを構成するようにしてもかまわない（たとえば、３ビットからなるフラグ“１１１”は照合「要」、フラグ“０００”は照合「否」というような冗長性をもった定義も可能である）。
【００３１】
【発明の効果】
以上のとおり本発明に係る暗証コード照合機能をもった携帯型情報処理装置によれば、十分なセキュリティを確保しつつ、利用時の暗証コードの照合の要否を切り替えることが可能になる。
【図面の簡単な説明】
【図１】携帯電話１００に内蔵されたＩＣカード１０について本発明を適用した実施形態を示す図である。
【図２】ＥＥＰＲＯＭに定義された各単位領域を示すメモリマップである。
【図３】ＥＥＰＲＯＭ内の単位領域への書込処理手順を示す図である。
【図４】ＥＥＰＲＯＭに書き込まれるデータの通常のデータフォーマットの一例を示す図である。
【図５】本発明に用いられる照合要否フラグのフォーマットの一例を示す図である。
【図６】本発明に用いられる専用単位領域Ｕｘに、照合要否フラグを含む２バイトのデータを書き込んだ状態を示す図である。
【図７】本発明に用いられる照合要否設定コマンドのフォーマットの一例を示す図である。
【図８】図７に示すようなフォーマットをもった照合要否設定コマンドが与えられたときの処理手順を示す流れ図である。
【符号の説明】
１０…ＩＣカード
１１…不揮発性メモリ（ＥＥＰＲＯＭ）
１２…制御装置（ＣＰＵ，ＲＯＭ，ＲＡＭ）
１００…携帯電話
ＥＣＣ…エラーチェックコード
Ｒ…レジスタ
Ｕ１〜Ｕ６…単位領域
Ｕｘ…照合要否フラグのための専用単位領域
【図１】
0004489915.tif 000002
【図２】
0004489915.tif 000003
【図３】
0004489915.tif 000004
【図４】
0004489915.tif 000005
【図５】
0004489915.tif 000006
【図６】
0004489915.tif 000007
【図７】
0004489915.tif 000008
【図８】
0004489915.tif 000009